import { UiDialogContentMaxWidth } from '../UiDialog/types';
/**
 * Common prop inside the sub-components.
 */
export type UiAlertSubComponentCommonProps = {
    /** Render as a child element instead of wrapping. */
    asChild?: boolean;
};
/**
 * Root alert dialog. Uses core **`Dialog`** (`components/core/dialog/Dialog.vue` → **`DialogRoot`**) with **`modal: true`**
 * Root uses core **`Dialog`** with modal enabled. Subcomponents use **`UiAlertDialog*`** / alert **`DialogContent`** for **`alertdialog`** semantics.
 * Use **`v-model:model`** for controlled mode (unlike **`UiDialog`**, which uses **`v-model:open`**).
 */
export type UiAlertDialogProps = {
    /** Controlled visibility (`v-model:model`); forwarded to **`DialogRoot`** as **`open`**. */
    model?: boolean;
};
/**
 * A modal dialog for confirmations that interrupt the user. Use for
 * destructive actions, important decisions, or critical confirmations.
 * @category Overlays
 * @useCases confirm delete, destructive action, important confirmation, warning
 * @keywords alert, dialog, modal, confirm, warning, destructive, popup
 * @related UiPopover
 */
export type UiAlertDialogContentProps = UiAlertSubComponentCommonProps & {
    /**
     * Prop to disable pointer events outside the dialog
     * @default false
     */
    disableOutsidePointerEvents?: boolean;
    /**
     * Tailwind max-width utility for the panel (e.g. `max-w-lg` for compact confirmation dialogs).
     * Omit for full width within horizontal margins.
     */
    maxWidth?: UiDialogContentMaxWidth;
};
/**
 * Emit options inside the UiAlertDialogContent
 */
export type UiAlertDialogContentEmits = {
    /**
     * Event handler called when focus moves to the destructive action after opening.
     */
    (e: 'openAutoFocus', event: Event): void;
    /**
     * Event handler called when focus moves to the trigger after closing.
     */
    (e: 'closeAutoFocus', event: Event): void;
    /**
     * Event handler called when interacted outside the component.
     */
    (e: 'interactOutside', event: Event): void;
    /**
     * Event handler called when focus goes outside the component.
     */
    (e: 'focusOutside', event: Event): void;
    /**
     * Event handler called when pointer down the component.
     */
    (e: 'pointerDownOutside', event: Event): void;
    /**
     * Event handler called when the escape key is down.
     */
    (e: 'escapeKeydown', event: KeyboardEvent): void;
};
/**
 * Props for UiAlertDialogTrigger component.
 */
export type UiAlertDialogTriggerProps = UiAlertSubComponentCommonProps & {};
/**
 * Props for UiAlertDialogCancel component.
 */
export type UiAlertDialogCancelProps = UiAlertSubComponentCommonProps & {};
/**
 * Props for UiAlertDialogAction component.
 */
export type UiAlertDialogActionProps = UiAlertSubComponentCommonProps & {};
/**
 * Props for UiAlertDialogHeader component.
 */
export type UiAlertDialogHeaderProps = UiAlertSubComponentCommonProps & {};
/**
 * Props for UiAlertDialogTitle component.
 */
export type UiAlertDialogTitleProps = UiAlertSubComponentCommonProps & {};
/**
 * Props for UiAlertDialogDescription component.
 */
export type UiAlertDialogDescriptionProps = UiAlertSubComponentCommonProps & {};
