interface Props { modelValue?: boolean; open?: boolean; title?: string; description?: string; showCloseButton?: boolean; closeOnOverlayClick?: boolean; closeOnEscape?: boolean; size?: 'sm' | 'default' | 'lg' | 'xl' | 'full'; maxWidth?: string; maxHeight?: string; persistent?: boolean; fullscreen?: boolean; class?: string; contentClass?: string; overlayClass?: string; } declare function __VLS_template(): { attrs: Partial<{}>; slots: { trigger?(_: { open: boolean; toggle: () => boolean; }): any; default?(_: {}): any; title?(_: {}): any; description?(_: {}): any; header?(_: {}): any; actions?(_: {}): any; footer?(_: {}): any; }; refs: { triggerRef: HTMLButtonElement; }; rootEl: any; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue').DefineComponent any; close: () => any; open: () => any; "update:open": (value: boolean) => any; }, string, import('vue').PublicProps, Readonly & Readonly<{ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; onClose?: (() => any) | undefined; onOpen?: (() => any) | undefined; "onUpdate:open"?: ((value: boolean) => any) | undefined; }>, { size: "sm" | "default" | "lg" | "xl" | "full"; showCloseButton: boolean; closeOnOverlayClick: boolean; closeOnEscape: boolean; persistent: boolean; fullscreen: boolean; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, { triggerRef: HTMLButtonElement; }, any>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };