import React from "react"; import { type ViewStyle } from "react-native"; interface DialogProps { visible: boolean; onClose: () => void; title?: string; children: React.ReactNode; showCloseButton?: boolean; draggable?: boolean; maxWidth?: number; /** * When false, clicking the backdrop does NOT dismiss the dialog — * required for any dialog that holds an unrecoverable input * (master password, step-up confirmation, half-typed import). An * accidental drag-then-click on the backdrop otherwise loses the * user's typing with no undo. Defaults to true to keep the simple * "click outside to cancel" pattern for non-input dialogs. */ dismissOnBackdrop?: boolean; } export declare function Dialog({ visible, onClose, title, children, showCloseButton, draggable, maxWidth, dismissOnBackdrop, }: DialogProps): React.JSX.Element; interface DialogContentProps { children: React.ReactNode; className?: string; } export declare function DialogContent({ children, className }: DialogContentProps): React.JSX.Element; interface DialogFooterProps { children: React.ReactNode; className?: string; style?: ViewStyle; } export declare function DialogFooter({ children, className, style }: DialogFooterProps): React.JSX.Element; interface DialogButtonProps { onPress: () => void; variant?: "primary" | "secondary" | "ghost" | "destructive"; children: React.ReactNode; accessibilityLabel?: string; accessibilityRole?: "button" | "link" | "none"; } export declare function DialogButton({ onPress, variant, children, accessibilityLabel, accessibilityRole, }: DialogButtonProps): React.JSX.Element; interface ConfirmDialogProps { visible: boolean; title: string; message?: string; /** Confirm-button label. Defaults to "Confirm". */ confirmLabel?: string; /** Cancel-button label. Defaults to "Cancel". */ cancelLabel?: string; /** Render the confirm button in the destructive (red) style. */ destructive?: boolean; /** Hide the cancel button — useful for one-button info prompts. */ hideCancel?: boolean; onConfirm: () => void; onCancel: () => void; } export declare function ConfirmDialog({ visible, title, message, confirmLabel, cancelLabel, destructive, hideCancel, onConfirm, onCancel, }: ConfirmDialogProps): React.JSX.Element; export {}; //# sourceMappingURL=dialog.d.ts.map