type DialogContextContent = { open: boolean; setOpen: (open: boolean) => void; }; type DialogOptionalProps = { dialogProps?: Partial; loading?: boolean; openInitially?: boolean; }; type DialogProps = DialogOptionalProps; type DialogForwardedRefContent = DialogContextContent; /** DialogHeader */ type DialogHeaderOptionalProps = { showClose?: boolean; }; type DialogHeaderProps = DialogHeaderOptionalProps; /** DialogActionGroup */ type ButtonClickEventHandler = Exclude< ContainedButtonProps['onClick'], undefined >; type DialogActionGroupOptionalProps = { cancelChildren?: ContainedButtonProps['children']; cancelProps?: Partial; closeOnProceed?: boolean; loading?: boolean; onCancel?: ExtendableEventHandler; onProceed?: ExtendableEventHandler; proceedChildren?: ContainedButtonProps['children']; proceedColour?: ContainedButtonProps['background']; proceedProps?: Partial; }; type DialogActionGroupProps = DialogActionGroupOptionalProps;