export type MaActionSheetType = 'primary' | 'secondary';
export interface MaActionSheetOffset {
    top?: string | number;
    right?: string | number;
    bottom?: string | number;
    left?: string | number;
}
export interface MaActionSheetProps {
    /**
     * Sets the background variant of the action sheet.
     * - `'primary'` – dark navy background
     * - `'secondary'` – white background
     * @default 'primary'
     */
    type?: MaActionSheetType;
    /**
     * Whether to close the action sheet when the mask (area outside) is clicked.
     * @default false
     */
    maskClosable?: boolean;
    /**
     * Whether pressing the Escape key should close the action sheet.
     * @default false
     */
    closeOnEscape?: boolean;
    /**
     * Whether the close (cancel) button is visible.
     * @default true
     */
    showCloseButton?: boolean;
    /**
     * Whether to unmount the action sheet content when it is closed.
     * @default false
     */
    destroyOnClose?: boolean;
    /**
     * Specifies the z-index of the action sheet.
     * @default 90
     */
    zIndex?: number;
    /**
     * Specifies the offset (margin) of the action sheet from each edge of the viewport.
     * Accepts `top`, `right`, `bottom`, `left` — each accepts a CSS value (string) or a pixel number.
     * @example { bottom: '3rem', left: '50%' }
     */
    offset?: MaActionSheetOffset;
}
export interface MaActionSheetEvents {
    /**
     * Emitted when the action sheet's visibility changes (v-model binding).
     * @param open - Indicates whether the sheet is now open (`true`) or closed (`false`).
     */
    (e: 'update:visible', open: boolean): void;
    /**
     * Emitted when the action sheet begins entering — fired before the enter transition starts.
     * Useful for setup logic that must run before the sheet becomes visible.
     */
    (e: 'beforeEnter'): void;
    /**
     * Emitted after the action sheet has fully left — fired when the leave transition is complete.
     * Useful for cleanup logic that should run only after the sheet is no longer visible.
     */
    (e: 'afterLeave'): void;
}
export interface MaActionSheetSlots {
    /**
     * Slot for prefix content displayed at the start, separated by a vertical divider.
     */
    prefix?: () => unknown;
    /**
     * Default slot for the action options in the center.
     */
    default: () => unknown;
    /**
     * Slot for suffix content displayed to the left of the cancel button, separated by a vertical divider.
     */
    suffix?: () => unknown;
}
