/** * @license * Copyright 2023 Nuraly, Laabidi Aymen * SPDX-License-Identifier: MIT */ /** * Modal size options */ export declare enum ModalSize { Small = "small", Medium = "medium", Large = "large", ExtraLarge = "xl" } /** * Modal position options */ export declare enum ModalPosition { Center = "center", Top = "top", Bottom = "bottom" } /** * Modal animation types */ export declare enum ModalAnimation { Fade = "fade", Zoom = "zoom", SlideUp = "slide-up", SlideDown = "slide-down", None = "none" } /** * Modal backdrop behavior */ export declare enum ModalBackdrop { Static = "static",// clicking backdrop doesn't close modal Closable = "closable",// clicking backdrop closes modal None = "none" } /** * Modal events */ export interface ModalEvents { 'modal-open': CustomEvent; 'modal-close': CustomEvent; 'modal-before-close': CustomEvent<{ cancel: () => void; }>; 'modal-after-open': CustomEvent; 'modal-escape': CustomEvent; } /** * Modal configuration interface */ export interface ModalConfig { size?: ModalSize; position?: ModalPosition; animation?: ModalAnimation; backdrop?: ModalBackdrop; closable?: boolean; draggable?: boolean; resizable?: boolean; fullscreen?: boolean; destroyOnClose?: boolean; zIndex?: number; } /** * Modal header configuration */ export interface ModalHeader { title?: string; showCloseButton?: boolean; icon?: string; draggable?: boolean; } /** * Modal footer configuration */ export interface ModalFooter { showCancelButton?: boolean; showOkButton?: boolean; cancelText?: string; okText?: string; okType?: 'primary' | 'secondary' | 'danger'; } /** * Constants */ export declare const EMPTY_STRING = ""; export declare const DEFAULT_Z_INDEX = 1000; /** * Type guards */ export declare const isModalSize: (value: string) => value is ModalSize; export declare const isModalPosition: (value: string) => value is ModalPosition; export declare const isModalAnimation: (value: string) => value is ModalAnimation; export declare const isModalBackdrop: (value: string) => value is ModalBackdrop; /** * Default configurations */ export declare const DEFAULT_MODAL_CONFIG: Required; export declare const DEFAULT_MODAL_HEADER: Required; export declare const DEFAULT_MODAL_FOOTER: Required; //# sourceMappingURL=modal.types.d.ts.map