export interface DialogComponentProps { /** The size of dialog to display. */ size?: DialogSize; classes?: { containerClasses: string[]; contentClasses: string[]; }; } /** * If a dialog is animated it must implement these props. */ export interface DialogAnimationProps { /** * When set to true the dialog will start the animation to hide the dialog. */ hide: boolean; /** * Once the dialog has been hidden from view the onHidden function will be * invoked. The owner of the dialog component can then remove the component. */ onHidden: () => void; } /** * Implemented by dialogs that support dismiss functionality. */ export interface DialogDismissProps { /** * When any button in a dialog is clicked this handler should be invoked to * let dialog clients know a button was clicked. * @param action Which button was clicked. * @param data Any other information to return when the click happens. */ onDismiss?: (action: "affirmative" | "close" | "negative", data?: any) => void; } export declare type DialogSize = "mini" | "tiny" | "small" | "standard" | "long" | "longer" | "medium" | "large";