import { DNode } from '@dojo/framework/core/interfaces'; export interface DialogPropertiesBase { /** Custom aria attributes */ aria?: { [key: string]: string | null; }; /** Determines whether the dialog can be closed */ closeable?: boolean; /** Hidden text used by screen readers to display for the close button */ closeText?: string; /** Determines whether the dialog is open or closed */ open: boolean; /** Determines whether a semi-transparent background shows behind the dialog */ underlay?: boolean; /** Called when the dialog opens */ onOpen?(): void; /** Called when the dialog is closed */ onRequestClose(): void; } export interface DialogPropertiesDialogRole extends DialogPropertiesBase { /** Role of this dialog for accessibility, either 'alertdialog' or 'dialog' */ role?: 'dialog'; /** Determines whether the dialog can be closed by clicking outside its content. Only applicable when using "dialog" role */ modal?: boolean; } export interface DialogPropertiesAlertDialogRole extends DialogPropertiesBase { role: 'alertdialog'; } export declare type DialogProperties = DialogPropertiesDialogRole | DialogPropertiesAlertDialogRole; export interface DialogChild { title?: DNode; content?: DNode; actions?: DNode; } export interface DialogState { wasOpen: boolean; callFocus: boolean; titleId: string; contentId: string; } export declare const Dialog: import("@dojo/framework/core/interfaces").WNodeFactory<{ properties: (DialogPropertiesDialogRole & import("@dojo/framework/core/interfaces").WidgetProperties & { variant?: "default" | "inherit" | undefined; } & import("@dojo/framework/core/middleware/theme").ThemeProperties & import("@dojo/framework/core/interfaces").I18nProperties) | (DialogPropertiesAlertDialogRole & import("@dojo/framework/core/interfaces").WidgetProperties & { variant?: "default" | "inherit" | undefined; } & import("@dojo/framework/core/middleware/theme").ThemeProperties & import("@dojo/framework/core/interfaces").I18nProperties); children: DialogChild; }>; export default Dialog;