import type { SvelteComponent } from "svelte"; export interface ModalConfig { afterClosed?: () => void; beforeClosed?: () => void; closeAll?: boolean; fullscreen?: boolean; width?: 'sm' | 'md' | 'lg' | 'fluid'; } export interface ModalInstance { afterClosed?: () => void; index: number; modal: SvelteComponent; } export interface ModalOpen { component: typeof SvelteComponent; props?: any; } export interface ModalService { close(instance?: ModalInstance): void; open(modalComponent: ModalOpen, config?: ModalConfig): void; }