import { Color } from '@ionic/core';
/**
 * Button configuration for confirmation dialog.
 */
export interface ConfirmationButton {
    /** Button text */
    text: string;
    /** Button role */
    role?: 'cancel' | 'destructive' | 'confirm';
    /** Button color (Ionic color) */
    color?: Color;
    /** CSS class for the button */
    cssClass?: string;
    /** Handler function called when button is clicked */
    handler?: () => void | Promise<void> | boolean | Promise<boolean>;
}
/**
 * Metadata for the confirmation dialog.
 */
export interface ConfirmationDialogMetadata {
    /** Dialog title */
    title: string;
    /** Dialog message/content */
    message: string;
    /** Confirm button configuration */
    confirmButton?: ConfirmationButton;
    /** Cancel button configuration */
    cancelButton?: ConfirmationButton;
    /** Additional buttons (between cancel and confirm) */
    extraButtons?: ConfirmationButton[];
    /** Allow dismissing by clicking backdrop */
    backdropDismiss?: boolean;
    /** CSS class(es) for the alert */
    cssClass?: string | string[];
    /** Alert mode */
    mode?: 'ios' | 'md';
    /** Unique token identifier */
    token?: string;
    /** Translucent backdrop */
    translucent?: boolean;
    /** Animated transitions */
    animated?: boolean;
    /** Header subtitle */
    subHeader?: string;
}
/**
 * Result from confirmation dialog.
 */
export interface ConfirmationResult {
    /** Whether the dialog was confirmed */
    confirmed: boolean;
    /** The role of the button clicked */
    role?: string;
    /** Any data returned */
    data?: any;
}
/**
 * Default confirmation dialog options.
 */
export declare const DEFAULT_CONFIRM_BUTTON: ConfirmationButton;
export declare const DEFAULT_CANCEL_BUTTON: ConfirmationButton;
