import { IButtonProps } from '../../Button'; import { ICalloutProps } from '../../Callout'; import { IPanelTitleProps } from '../../Panel'; export interface ICustomDialogProps extends Pick { /** * CSS className that should be applied to the top level callout element. */ calloutClassName?: string; /** * CSS className that should be applied to the callout's content element. */ calloutContentClassName?: string; /** * An optional className to pass to the root dialog element. */ className?: string; /** * Element selector of the first focusable element. If no selector is supplied, a hidden * element will be created and focus given to the CommandBarFlyout through this element. */ defaultActiveElement?: string | (() => string); /** * Aria-label for the default focusable element if defaultActiveElement isn't provided. */ defaultFocusableElementAriaLabel?: string; /** * Method that is called when the dialog is dismissed. */ onDismiss: () => void; /** * If set, the content of the dialog will be overlaid with a transparent div with a spinner. */ overlay?: { spinnerLabel?: string; spinnerAriaLabel?: string; }; /** * If true, the dialog will have a gripper in the corner that can be used to resize. */ resizable?: boolean; /** * The dialog will handle keyboard events and when the enter key is pressed the * dialog will behave as if the primary key was pressed if the event * hasnt had the defaultPrevented. */ enterPrimary?: boolean; /** * Primary button props. */ primaryButtonProps?: IButtonProps; /** * If true, while tabbing through dialog elements if ends up on input element than text * will be selected automatically. This is a default input behavior. */ selectInputTextOnFocus?: boolean; } export interface IDialogProps extends ICustomDialogProps { /** * An optional list of props to render as buttons in the footer. */ footerButtonProps?: IButtonProps[]; /** * Properties to configure how the dialog title looks. */ titleProps: IPanelTitleProps; /** * Shows a close button in the top right corner of the dialog. Using a cancel button in * the footer or lightDismiss are preferred over this. */ showCloseButton?: boolean; } export declare type ICornerDialogProps = Pick>;