import { LightboxUiProps, LightboxItem } from '../types'; type __VLS_Props = { /** Object to overwrite the default UI components. */ ui?: LightboxUiProps; /** Array of items to display in the lightbox. */ items: LightboxItem[]; }; type __VLS_PublicProps = { 'open'?: boolean; 'index'?: number; } & __VLS_Props; declare function __VLS_template(): { attrs: Partial<{}>; slots: Readonly<{ /** Custom image index rendering */ index?: (props: { /** The current item index (0-based) */ current: number; /** The total number of items */ total: number; /** The text to display including divider */ text: string; }) => void; /** Custom close button rendering */ close?: (props: { /** Function to call when the close button is clicked */ click: () => void; }) => void; /** Close button icon */ closeIcon?: () => void; /** Custom prev button rendering */ prev?: (props: { /** Whether the prev button is visible */ visible: boolean; /** Function to call when the prev button is clicked */ click: () => void; }) => void; /** Prev button icon */ prevIcon?: () => void; /** Custom next button rendering */ next?: (props: { /** Whether the next button is visible */ visible: boolean; /** Function to call when the next button is clicked */ click: () => void; }) => void; /** Next button icon */ nextIcon?: () => void; /** Custom caption rendering */ caption?: (props: { /** The caption text for the current item */ text: string; }) => void; /** Custom item rendering */ item?: (props: { /** The current item being displayed */ item: LightboxItem; /** The index of the current item */ index: number; }) => void; }> & { /** Custom image index rendering */ index?: (props: { /** The current item index (0-based) */ current: number; /** The total number of items */ total: number; /** The text to display including divider */ text: string; }) => void; /** Custom close button rendering */ close?: (props: { /** Function to call when the close button is clicked */ click: () => void; }) => void; /** Close button icon */ closeIcon?: () => void; /** Custom prev button rendering */ prev?: (props: { /** Whether the prev button is visible */ visible: boolean; /** Function to call when the prev button is clicked */ click: () => void; }) => void; /** Prev button icon */ prevIcon?: () => void; /** Custom next button rendering */ next?: (props: { /** Whether the next button is visible */ visible: boolean; /** Function to call when the next button is clicked */ click: () => void; }) => void; /** Next button icon */ nextIcon?: () => void; /** Custom caption rendering */ caption?: (props: { /** The caption text for the current item */ text: string; }) => void; /** Custom item rendering */ item?: (props: { /** The current item being displayed */ item: LightboxItem; /** The index of the current item */ index: number; }) => void; }; refs: { content: ({ $: import('vue').ComponentInternalInstance; $data: {}; $props: { readonly index: number; readonly ui?: LightboxUiProps | undefined; readonly items: LightboxItem[]; readonly onClose?: ((payload: MouseEvent) => any) | undefined; readonly "onUpdate:index"?: ((value: number) => any) | undefined; } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps; $attrs: { [x: string]: unknown; }; $refs: { [x: string]: unknown; } & { scroller: HTMLDivElement; }; $slots: Readonly<{ [name: string]: import('vue').Slot | undefined; }>; $root: import('vue').ComponentPublicInstance | null; $parent: import('vue').ComponentPublicInstance | null; $host: Element | null; $emit: ((event: "close", payload: MouseEvent) => void) & ((event: "update:index", value: number) => void); $el: HTMLDivElement; $options: import('vue').ComponentOptionsBase & Readonly<{ onClose?: ((payload: MouseEvent) => any) | undefined; "onUpdate:index"?: ((value: number) => any) | undefined; }>, { handlePrev: () => void; handleNext: () => void; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { "update:index": (value: number) => any; } & { close: (payload: MouseEvent) => any; }, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & { beforeCreate?: (() => void) | (() => void)[]; created?: (() => void) | (() => void)[]; beforeMount?: (() => void) | (() => void)[]; mounted?: (() => void) | (() => void)[]; beforeUpdate?: (() => void) | (() => void)[]; updated?: (() => void) | (() => void)[]; activated?: (() => void) | (() => void)[]; deactivated?: (() => void) | (() => void)[]; beforeDestroy?: (() => void) | (() => void)[]; beforeUnmount?: (() => void) | (() => void)[]; destroyed?: (() => void) | (() => void)[]; unmounted?: (() => void) | (() => void)[]; renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[]; renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[]; errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[]; }; $forceUpdate: () => void; $nextTick: typeof import('vue').nextTick; $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle; } & Readonly<{}> & Omit & Readonly<{ onClose?: ((payload: MouseEvent) => any) | undefined; "onUpdate:index"?: ((value: number) => any) | undefined; }>, "handlePrev" | "handleNext"> & import('vue').ShallowUnwrapRef<{ handlePrev: () => void; handleNext: () => void; }> & {} & import('vue').ComponentCustomProperties & {} & { $slots: Readonly<{ item?: (props: { item: LightboxItem; index: number; }) => void; caption?: (props: { text: string; }) => void; }> & { item?: (props: { item: LightboxItem; index: number; }) => void; caption?: (props: { text: string; }) => void; }; }) | null; }; rootEl: any; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { "update:index": (value: number) => any; "update:open": (value: boolean) => any; }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{ "onUpdate:index"?: ((value: number) => any) | undefined; "onUpdate:open"?: ((value: boolean) => any) | undefined; }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, { content: ({ $: import('vue').ComponentInternalInstance; $data: {}; $props: { readonly index: number; readonly ui?: LightboxUiProps | undefined; readonly items: LightboxItem[]; readonly onClose?: ((payload: MouseEvent) => any) | undefined; readonly "onUpdate:index"?: ((value: number) => any) | undefined; } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps; $attrs: { [x: string]: unknown; }; $refs: { [x: string]: unknown; } & { scroller: HTMLDivElement; }; $slots: Readonly<{ [name: string]: import('vue').Slot | undefined; }>; $root: import('vue').ComponentPublicInstance | null; $parent: import('vue').ComponentPublicInstance | null; $host: Element | null; $emit: ((event: "close", payload: MouseEvent) => void) & ((event: "update:index", value: number) => void); $el: HTMLDivElement; $options: import('vue').ComponentOptionsBase & Readonly<{ onClose?: ((payload: MouseEvent) => any) | undefined; "onUpdate:index"?: ((value: number) => any) | undefined; }>, { handlePrev: () => void; handleNext: () => void; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { "update:index": (value: number) => any; } & { close: (payload: MouseEvent) => any; }, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & { beforeCreate?: (() => void) | (() => void)[]; created?: (() => void) | (() => void)[]; beforeMount?: (() => void) | (() => void)[]; mounted?: (() => void) | (() => void)[]; beforeUpdate?: (() => void) | (() => void)[]; updated?: (() => void) | (() => void)[]; activated?: (() => void) | (() => void)[]; deactivated?: (() => void) | (() => void)[]; beforeDestroy?: (() => void) | (() => void)[]; beforeUnmount?: (() => void) | (() => void)[]; destroyed?: (() => void) | (() => void)[]; unmounted?: (() => void) | (() => void)[]; renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[]; renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[]; errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[]; }; $forceUpdate: () => void; $nextTick: typeof import('vue').nextTick; $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle; } & Readonly<{}> & Omit & Readonly<{ onClose?: ((payload: MouseEvent) => any) | undefined; "onUpdate:index"?: ((value: number) => any) | undefined; }>, "handlePrev" | "handleNext"> & import('vue').ShallowUnwrapRef<{ handlePrev: () => void; handleNext: () => void; }> & {} & import('vue').ComponentCustomProperties & {} & { $slots: Readonly<{ item?: (props: { item: LightboxItem; index: number; }) => void; caption?: (props: { text: string; }) => void; }> & { item?: (props: { item: LightboxItem; index: number; }) => void; caption?: (props: { text: string; }) => void; }; }) | null; }, any>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; }; //# sourceMappingURL=lightbox.vue.d.ts.map