import type { CSSProperties, ReactNode } from "react"; import type { PopupBackdropProps } from "../popup"; import type { ButtonProps } from "../button"; export type DialogActionsTheme = "round"; export type DialogActionsVariant = "rounded"; export type DialogMessageAlign = "left" | "center" | "right"; export interface DialogOptions { selector?: string; className?: string; style?: CSSProperties; backdrop?: boolean | Omit; title?: ReactNode; message?: ReactNode; messageAlign?: DialogMessageAlign; confirm?: ReactNode | ButtonProps; cancel?: ReactNode | ButtonProps; theme?: DialogActionsVariant; onConfirm?(): void; onCancel?(): void; onBeforeClose?(action: "confirm" | "cancel"): boolean | Promise; onClose?(opened: boolean): void; onTransitionExited?(): void; } export type DialogThemeVars = { dialogWidth?: string; dialogSmallScreenWidth?: string; dialogFontSize?: string; dialogTransition?: string; dialogBorderRadius?: string; dialogBackgroundColor?: string; dialogHeaderFontWeight?: string; dialogHeaderLineHeight?: string; dialogHeaderPaddingTop?: string; dialogHeaderIsolatedPadding?: string; dialogMessagePadding?: string; dialogMessageFontSize?: string; dialogMessageLineHeight?: string; dialogMessageFontWeight?: string; dialogMessageMaxHeight?: string; dialogHasTitleMessageColor?: string; dialogHasTitleMessagePaddingTop?: string; dialogHasTitleMessageFontWeight?: string; dialogButtonHeight?: string; dialogConfirmButtonColor?: string; dialogFooterRoundedPadding?: string; dialogRoundedButtonActiveColor?: string; dialogRoundedButtonFontSize?: string; dialogRoundedButtonHeight?: string; dialogRoundedButtonBorderRadius?: string; dialogRoundedConfirmButtonBackgroundColor?: string; dialogRoundedCancelButtonBackgroundColor?: string; }; export declare const dialogEvents: TaroGeneral.Events; export declare const dialogSelectorSet: Set;