/**
 * A modal is a dialog window that appears on top of the main content, requiring user interaction before returning to the main interface. It is used to focus attention on a specific task, provide important information, or request confirmation for an action. Modals typically include a title, description, and primary/secondary actions and should be used for single, focused tasks to avoid disrupting the user experience.
 *
 * @slot icon - Use this slot to insert an icon next to the title of the modal.
 * @slot default - Use this slot to insert the content of the modal.
 * @slot link - Use this slot to insert a link in the footer.
 * @slot footer - Use this slot to insert buttons in the footer.
 * @event update:open {CustomEvent<boolean>} - Fired when the open state changes.
 */
interface Props {
    [key: string]: any;
    /**
     * if `true`, display the modal.
     */
    open?: boolean;
    /**
     * Title of the modal.
     */
    title: string;
    /**
     * Description of the modal.
     */
    description?: string;
    /**
     * if `true`, display the close button.
     */
    closable?: boolean;
    /**
     * Callback fired when the modal open state changes.
     */
    onUpdateOpen?: (open: boolean) => void;
}
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
    new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
        $$bindings?: Bindings;
    } & Exports;
    (internal: unknown, props: Props & {
        $$events?: Events;
        $$slots?: Slots;
    }): Exports & {
        $set?: any;
        $on?: any;
    };
    z_$$bindings?: Bindings;
}
type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
    default: any;
} ? Props extends Record<string, never> ? any : {
    children?: any;
} : {});
declare const Modal: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<Props, {
    icon: {};
    default: {};
    link: {};
    footer: {};
}>, {
    [evt: string]: CustomEvent<any>;
}, {
    icon: {};
    default: {};
    link: {};
    footer: {};
}, {}, "">;
type Modal = InstanceType<typeof Modal>;
export default Modal;
//# sourceMappingURL=Modal.svelte.d.ts.map