declare const _default: __VLS_WithTemplateSlots & Omit<{ readonly size: import("../components.types.js").TJoyDrawerSizes; readonly closeLabel: string; readonly open: boolean; readonly preventBodyScroll: boolean; readonly teleport: string | import("vue").RendererElement | null; readonly disableTeleport: boolean; readonly demoMode: boolean; readonly buttonSize: import("../components.types.js").TJoyButtonSizes; readonly elevated: boolean; readonly id?: string | undefined; readonly cancelText?: string | undefined; readonly confirmText?: string | undefined; readonly onBeforeHide?: (() => boolean | Promise) | undefined; readonly "onDrawer:open"?: (() => any) | undefined; readonly "onDrawer:after-open"?: (() => any) | undefined; readonly "onDrawer:hide"?: (() => any) | undefined; readonly "onDrawer:after-hide"?: (() => any) | undefined; readonly "onDrawer:before-unmount"?: (() => any) | undefined; readonly "onDrawer:confirm"?: (() => any) | undefined; } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "size" | "closeLabel" | "open" | "preventBodyScroll" | "teleport" | "disableTeleport" | "demoMode" | "buttonSize" | "elevated">; $attrs: { [x: string]: unknown; }; $refs: { [x: string]: unknown; }; $slots: Readonly<{ [name: string]: import("vue").Slot | undefined; }>; $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; $host: Element | null; $emit: ((event: "drawer:open") => void) & ((event: "drawer:after-open") => void) & ((event: "drawer:hide") => void) & ((event: "drawer:after-hide") => void) & ((event: "drawer:before-unmount") => void) & ((event: "drawer:confirm") => void); $el: any; $options: import("vue").ComponentOptionsBase; default: string; }; teleport: { type: import("vue").PropType; default: string; }; open: { type: BooleanConstructor; default: boolean; }; elevated: { type: BooleanConstructor; default: boolean; }; preventBodyScroll: { type: BooleanConstructor; default: boolean; }; disableTeleport: { type: BooleanConstructor; default: boolean; }; demoMode: { type: BooleanConstructor; default: boolean; }; closeLabel: { type: StringConstructor; default: string; }; cancelText: { type: StringConstructor; }; confirmText: { type: StringConstructor; }; buttonSize: { type: import("vue").PropType; default: string; }; onBeforeHide: { type: import("vue").PropType<() => boolean | Promise>; }; }>> & Readonly<{ "onDrawer:open"?: (() => any) | undefined; "onDrawer:after-open"?: (() => any) | undefined; "onDrawer:hide"?: (() => any) | undefined; "onDrawer:after-hide"?: (() => any) | undefined; "onDrawer:before-unmount"?: (() => any) | undefined; "onDrawer:confirm"?: (() => any) | undefined; }>, { hasFooterSlots: import("vue").ComputedRef; hide: (options?: { fireHideEvent?: boolean | undefined; } | undefined) => Promise; isOpen: import("vue").Ref; show: () => Promise; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & { "drawer:open": () => any; "drawer:after-open": () => any; "drawer:hide": () => any; "drawer:after-hide": () => any; "drawer:before-unmount": () => any; "drawer:confirm": () => any; }, string, { size: import("../components.types.js").TJoyDrawerSizes; closeLabel: string; open: boolean; preventBodyScroll: boolean; teleport: string | import("vue").RendererElement | null | undefined; disableTeleport: boolean; demoMode: boolean; buttonSize: import("../components.types.js").TJoyButtonSizes; elevated: boolean; }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { beforeCreate?: ((() => void) | (() => void)[]) | undefined; created?: ((() => void) | (() => void)[]) | undefined; beforeMount?: ((() => void) | (() => void)[]) | undefined; mounted?: ((() => void) | (() => void)[]) | undefined; beforeUpdate?: ((() => void) | (() => void)[]) | undefined; updated?: ((() => void) | (() => void)[]) | undefined; activated?: ((() => void) | (() => void)[]) | undefined; deactivated?: ((() => void) | (() => void)[]) | undefined; beforeDestroy?: ((() => void) | (() => void)[]) | undefined; beforeUnmount?: ((() => void) | (() => void)[]) | undefined; destroyed?: ((() => void) | (() => void)[]) | undefined; unmounted?: ((() => void) | (() => void)[]) | undefined; renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined; renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined; errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => boolean | void)[]) | undefined; }; $forceUpdate: () => void; $nextTick: typeof import("vue").nextTick; $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; } & Readonly<{ size: import("../components.types.js").TJoyDrawerSizes; closeLabel: string; open: boolean; preventBodyScroll: boolean; teleport: string | import("vue").RendererElement | null | undefined; disableTeleport: boolean; demoMode: boolean; buttonSize: import("../components.types.js").TJoyButtonSizes; elevated: boolean; }> & Omit; default: string; }; teleport: { type: import("vue").PropType; default: string; }; open: { type: BooleanConstructor; default: boolean; }; elevated: { type: BooleanConstructor; default: boolean; }; preventBodyScroll: { type: BooleanConstructor; default: boolean; }; disableTeleport: { type: BooleanConstructor; default: boolean; }; demoMode: { type: BooleanConstructor; default: boolean; }; closeLabel: { type: StringConstructor; default: string; }; cancelText: { type: StringConstructor; }; confirmText: { type: StringConstructor; }; buttonSize: { type: import("vue").PropType; default: string; }; onBeforeHide: { type: import("vue").PropType<() => boolean | Promise>; }; }>> & Readonly<{ "onDrawer:open"?: (() => any) | undefined; "onDrawer:after-open"?: (() => any) | undefined; "onDrawer:hide"?: (() => any) | undefined; "onDrawer:after-hide"?: (() => any) | undefined; "onDrawer:before-unmount"?: (() => any) | undefined; "onDrawer:confirm"?: (() => any) | undefined; }>, "isOpen" | "hide" | "show" | "hasFooterSlots" | ("size" | "closeLabel" | "open" | "preventBodyScroll" | "teleport" | "disableTeleport" | "demoMode" | "buttonSize" | "elevated")> & import("vue").ShallowUnwrapRef<{ hasFooterSlots: import("vue").ComputedRef; hide: (options?: { fireHideEvent?: boolean | undefined; } | undefined) => Promise; isOpen: import("vue").Ref; show: () => Promise; }> & {} & import("vue").ComponentCustomProperties & {} & { $slots: Readonly<{ 'drawer-preheader': () => any; 'drawer-header': () => any; 'drawer-subheader': () => any; 'drawer-body': () => any; 'drawer-cancel': () => any; 'drawer-confirm': () => any; }> & { 'drawer-preheader': () => any; 'drawer-header': () => any; 'drawer-subheader': () => any; 'drawer-body': () => any; 'drawer-cancel': () => any; 'drawer-confirm': () => any; }; }) | null | undefined; }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & { click: () => any; }, string, import("vue").PublicProps, Readonly<{ /** VJoyDrawer ref. */ drawer: ({ $: import("vue").ComponentInternalInstance; $data: {}; $props: Partial<{ size: import("../components.types.js").TJoyDrawerSizes; closeLabel: string; open: boolean; preventBodyScroll: boolean; teleport: string | import("vue").RendererElement | null | undefined; disableTeleport: boolean; demoMode: boolean; buttonSize: import("../components.types.js").TJoyButtonSizes; elevated: boolean; }> & Omit<{ readonly size: import("../components.types.js").TJoyDrawerSizes; readonly closeLabel: string; readonly open: boolean; readonly preventBodyScroll: boolean; readonly teleport: string | import("vue").RendererElement | null; readonly disableTeleport: boolean; readonly demoMode: boolean; readonly buttonSize: import("../components.types.js").TJoyButtonSizes; readonly elevated: boolean; readonly id?: string | undefined; readonly cancelText?: string | undefined; readonly confirmText?: string | undefined; readonly onBeforeHide?: (() => boolean | Promise) | undefined; readonly "onDrawer:open"?: (() => any) | undefined; readonly "onDrawer:after-open"?: (() => any) | undefined; readonly "onDrawer:hide"?: (() => any) | undefined; readonly "onDrawer:after-hide"?: (() => any) | undefined; readonly "onDrawer:before-unmount"?: (() => any) | undefined; readonly "onDrawer:confirm"?: (() => any) | undefined; } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "size" | "closeLabel" | "open" | "preventBodyScroll" | "teleport" | "disableTeleport" | "demoMode" | "buttonSize" | "elevated">; $attrs: { [x: string]: unknown; }; $refs: { [x: string]: unknown; }; $slots: Readonly<{ [name: string]: import("vue").Slot | undefined; }>; $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; $host: Element | null; $emit: ((event: "drawer:open") => void) & ((event: "drawer:after-open") => void) & ((event: "drawer:hide") => void) & ((event: "drawer:after-hide") => void) & ((event: "drawer:before-unmount") => void) & ((event: "drawer:confirm") => void); $el: any; $options: import("vue").ComponentOptionsBase; default: string; }; teleport: { type: import("vue").PropType; default: string; }; open: { type: BooleanConstructor; default: boolean; }; elevated: { type: BooleanConstructor; default: boolean; }; preventBodyScroll: { type: BooleanConstructor; default: boolean; }; disableTeleport: { type: BooleanConstructor; default: boolean; }; demoMode: { type: BooleanConstructor; default: boolean; }; closeLabel: { type: StringConstructor; default: string; }; cancelText: { type: StringConstructor; }; confirmText: { type: StringConstructor; }; buttonSize: { type: import("vue").PropType; default: string; }; onBeforeHide: { type: import("vue").PropType<() => boolean | Promise>; }; }>> & Readonly<{ "onDrawer:open"?: (() => any) | undefined; "onDrawer:after-open"?: (() => any) | undefined; "onDrawer:hide"?: (() => any) | undefined; "onDrawer:after-hide"?: (() => any) | undefined; "onDrawer:before-unmount"?: (() => any) | undefined; "onDrawer:confirm"?: (() => any) | undefined; }>, { hasFooterSlots: import("vue").ComputedRef; hide: (options?: { fireHideEvent?: boolean | undefined; } | undefined) => Promise; isOpen: import("vue").Ref; show: () => Promise; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & { "drawer:open": () => any; "drawer:after-open": () => any; "drawer:hide": () => any; "drawer:after-hide": () => any; "drawer:before-unmount": () => any; "drawer:confirm": () => any; }, string, { size: import("../components.types.js").TJoyDrawerSizes; closeLabel: string; open: boolean; preventBodyScroll: boolean; teleport: string | import("vue").RendererElement | null | undefined; disableTeleport: boolean; demoMode: boolean; buttonSize: import("../components.types.js").TJoyButtonSizes; elevated: boolean; }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { beforeCreate?: ((() => void) | (() => void)[]) | undefined; created?: ((() => void) | (() => void)[]) | undefined; beforeMount?: ((() => void) | (() => void)[]) | undefined; mounted?: ((() => void) | (() => void)[]) | undefined; beforeUpdate?: ((() => void) | (() => void)[]) | undefined; updated?: ((() => void) | (() => void)[]) | undefined; activated?: ((() => void) | (() => void)[]) | undefined; deactivated?: ((() => void) | (() => void)[]) | undefined; beforeDestroy?: ((() => void) | (() => void)[]) | undefined; beforeUnmount?: ((() => void) | (() => void)[]) | undefined; destroyed?: ((() => void) | (() => void)[]) | undefined; unmounted?: ((() => void) | (() => void)[]) | undefined; renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined; renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined; errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => boolean | void)[]) | undefined; }; $forceUpdate: () => void; $nextTick: typeof import("vue").nextTick; $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; } & Readonly<{ size: import("../components.types.js").TJoyDrawerSizes; closeLabel: string; open: boolean; preventBodyScroll: boolean; teleport: string | import("vue").RendererElement | null | undefined; disableTeleport: boolean; demoMode: boolean; buttonSize: import("../components.types.js").TJoyButtonSizes; elevated: boolean; }> & Omit; default: string; }; teleport: { type: import("vue").PropType; default: string; }; open: { type: BooleanConstructor; default: boolean; }; elevated: { type: BooleanConstructor; default: boolean; }; preventBodyScroll: { type: BooleanConstructor; default: boolean; }; disableTeleport: { type: BooleanConstructor; default: boolean; }; demoMode: { type: BooleanConstructor; default: boolean; }; closeLabel: { type: StringConstructor; default: string; }; cancelText: { type: StringConstructor; }; confirmText: { type: StringConstructor; }; buttonSize: { type: import("vue").PropType; default: string; }; onBeforeHide: { type: import("vue").PropType<() => boolean | Promise>; }; }>> & Readonly<{ "onDrawer:open"?: (() => any) | undefined; "onDrawer:after-open"?: (() => any) | undefined; "onDrawer:hide"?: (() => any) | undefined; "onDrawer:after-hide"?: (() => any) | undefined; "onDrawer:before-unmount"?: (() => any) | undefined; "onDrawer:confirm"?: (() => any) | undefined; }>, "isOpen" | "hide" | "show" | "hasFooterSlots" | ("size" | "closeLabel" | "open" | "preventBodyScroll" | "teleport" | "disableTeleport" | "demoMode" | "buttonSize" | "elevated")> & import("vue").ShallowUnwrapRef<{ hasFooterSlots: import("vue").ComputedRef; hide: (options?: { fireHideEvent?: boolean | undefined; } | undefined) => Promise; isOpen: import("vue").Ref; show: () => Promise; }> & {} & import("vue").ComponentCustomProperties & {} & { $slots: Readonly<{ 'drawer-preheader': () => any; 'drawer-header': () => any; 'drawer-subheader': () => any; 'drawer-body': () => any; 'drawer-cancel': () => any; 'drawer-confirm': () => any; }> & { 'drawer-preheader': () => any; 'drawer-header': () => any; 'drawer-subheader': () => any; 'drawer-body': () => any; 'drawer-cancel': () => any; 'drawer-confirm': () => any; }; }) | null | undefined; }> & Readonly<{ onClick?: (() => any) | undefined; }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, Readonly<{ /** Default slot where you can render anything you need. */ default(): any; }> & { /** Default slot where you can render anything you need. */ default(): any; }>; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };