import type { PropType } from 'vue'; export interface srcObject { src?: string; srcset?: string; lazySrc?: string; aspect: number; } export type VImgSlots = { default: never; placeholder: never; error: never; sources: never; }; export declare const makeVImgProps: (defaults?: Defaults | undefined) => { class: unknown extends Defaults["class"] ? PropType : { type: PropType; default: unknown extends Defaults["class"] ? any : any; }; style: unknown extends Defaults["style"] ? { type: PropType; default: null; } : Omit<{ type: PropType; default: null; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["style"] ? import("vue").StyleValue : Defaults["style"] | NonNullable; }; rounded: unknown extends Defaults["rounded"] ? { type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; default: undefined; } : Omit<{ type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; default: undefined; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["rounded"] ? string | number | boolean : Defaults["rounded"] | NonNullable; }; tile: unknown extends Defaults["tile"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["tile"] ? boolean : boolean | Defaults["tile"]; }; height: unknown extends Defaults["height"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["height"] ? string | number : Defaults["height"] | NonNullable; }; maxHeight: unknown extends Defaults["maxHeight"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["maxHeight"] ? string | number : Defaults["maxHeight"] | NonNullable; }; maxWidth: unknown extends Defaults["maxWidth"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["maxWidth"] ? string | number : Defaults["maxWidth"] | NonNullable; }; minHeight: unknown extends Defaults["minHeight"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["minHeight"] ? string | number : Defaults["minHeight"] | NonNullable; }; minWidth: unknown extends Defaults["minWidth"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["minWidth"] ? string | number : Defaults["minWidth"] | NonNullable; }; width: unknown extends Defaults["width"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["width"] ? string | number : Defaults["width"] | NonNullable; }; transition: unknown extends Defaults["transition"] ? import("vue").Prop : { type: PropType; default: unknown extends Defaults["transition"] ? string | boolean | (import("vue").TransitionProps & { component?: import("vue").Component; }) | null : Defaults["transition"] | NonNullable; }; aspectRatio: unknown extends Defaults["aspectRatio"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["aspectRatio"] ? string | number : Defaults["aspectRatio"] | NonNullable; }; contentClass: unknown extends Defaults["contentClass"] ? null : { type: PropType; default: unknown extends Defaults["contentClass"] ? any : any; }; inline: unknown extends Defaults["inline"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["inline"] ? boolean : boolean | Defaults["inline"]; }; absolute: unknown extends Defaults["absolute"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["absolute"] ? boolean : boolean | Defaults["absolute"]; }; alt: unknown extends Defaults["alt"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["alt"] ? string : string | Defaults["alt"]; }; cover: unknown extends Defaults["cover"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["cover"] ? boolean : boolean | Defaults["cover"]; }; color: unknown extends Defaults["color"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["color"] ? string : string | Defaults["color"]; }; draggable: unknown extends Defaults["draggable"] ? { type: PropType; default: undefined; } : Omit<{ type: PropType; default: undefined; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["draggable"] ? "false" | "true" | boolean : Defaults["draggable"] | NonNullable<"false" | "true" | boolean>; }; eager: unknown extends Defaults["eager"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["eager"] ? boolean : boolean | Defaults["eager"]; }; gradient: unknown extends Defaults["gradient"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["gradient"] ? string : string | Defaults["gradient"]; }; imageClass: unknown extends Defaults["imageClass"] ? null : { type: PropType; default: unknown extends Defaults["imageClass"] ? any : any; }; lazySrc: unknown extends Defaults["lazySrc"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["lazySrc"] ? string : string | Defaults["lazySrc"]; }; options: unknown extends Defaults["options"] ? { type: PropType; default: () => { root: undefined; rootMargin: undefined; threshold: undefined; }; } : Omit<{ type: PropType; default: () => { root: undefined; rootMargin: undefined; threshold: undefined; }; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["options"] ? IntersectionObserverInit : IntersectionObserverInit | Defaults["options"]; }; sizes: unknown extends Defaults["sizes"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["sizes"] ? string : string | Defaults["sizes"]; }; src: unknown extends Defaults["src"] ? { type: PropType; default: string; } : Omit<{ type: PropType; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["src"] ? string | srcObject : Defaults["src"] | NonNullable; }; crossorigin: unknown extends Defaults["crossorigin"] ? PropType<"" | "anonymous" | "use-credentials"> : { type: PropType; default: unknown extends Defaults["crossorigin"] ? "" | "anonymous" | "use-credentials" : Defaults["crossorigin"] | NonNullable<"" | "anonymous" | "use-credentials">; }; referrerpolicy: unknown extends Defaults["referrerpolicy"] ? PropType<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url"> : { type: PropType; default: unknown extends Defaults["referrerpolicy"] ? "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" : Defaults["referrerpolicy"] | NonNullable<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url">; }; srcset: unknown extends Defaults["srcset"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["srcset"] ? string : string | Defaults["srcset"]; }; position: unknown extends Defaults["position"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["position"] ? string : string | Defaults["position"]; }; }; export declare const VImg: { new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{ style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; tile: boolean; inline: boolean; absolute: boolean; cover: boolean; eager: boolean; options: IntersectionObserverInit; src: string | srcObject; } & { class?: any; rounded?: string | number | boolean | undefined; height?: string | number | undefined; maxHeight?: string | number | undefined; maxWidth?: string | number | undefined; minHeight?: string | number | undefined; minWidth?: string | number | undefined; width?: string | number | undefined; transition?: string | boolean | (import("vue").TransitionProps & { component?: import("vue").Component; }) | null | undefined; aspectRatio?: string | number | undefined; contentClass?: any; alt?: string | undefined; color?: string | undefined; draggable?: "false" | "true" | boolean | undefined; gradient?: string | undefined; imageClass?: any; lazySrc?: string | undefined; sizes?: string | undefined; crossorigin?: "" | "anonymous" | "use-credentials" | undefined; referrerpolicy?: "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined; srcset?: string | undefined; position?: string | undefined; } & { $children?: { default?: (() => import("vue").VNodeChild) | undefined; placeholder?: (() => import("vue").VNodeChild) | undefined; error?: (() => import("vue").VNodeChild) | undefined; sources?: (() => import("vue").VNodeChild) | undefined; } | { $stable?: boolean; } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; 'v-slots'?: { default?: false | (() => import("vue").VNodeChild) | undefined; placeholder?: false | (() => import("vue").VNodeChild) | undefined; error?: false | (() => import("vue").VNodeChild) | undefined; sources?: false | (() => import("vue").VNodeChild) | undefined; } | undefined; } & { "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:error"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:placeholder"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:sources"?: false | (() => import("vue").VNodeChild) | undefined; } & { onError?: ((value: string | undefined) => any) | undefined; onLoad?: ((value: string | undefined) => any) | undefined; onLoadstart?: ((value: string | undefined) => any) | undefined; }, { currentSrc: import("vue").ShallowRef; image: import("vue").Ref; state: import("vue").ShallowRef<"error" | "idle" | "loaded" | "loading", "error" | "idle" | "loaded" | "loading">; naturalWidth: import("vue").ShallowRef; naturalHeight: import("vue").ShallowRef; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { loadstart: (value: string | undefined) => true; load: (value: string | undefined) => true; error: (value: string | undefined) => true; }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, { style: import("vue").StyleValue; rounded: string | number | boolean; tile: boolean; inline: boolean; absolute: boolean; cover: boolean; draggable: "false" | "true" | boolean; eager: boolean; options: IntersectionObserverInit; src: string | srcObject; }, true, {}, import("vue").SlotsType import("vue").VNode[]; placeholder: () => import("vue").VNode[]; error: () => import("vue").VNode[]; sources: () => import("vue").VNode[]; }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, { style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; tile: boolean; inline: boolean; absolute: boolean; cover: boolean; eager: boolean; options: IntersectionObserverInit; src: string | srcObject; } & { class?: any; rounded?: string | number | boolean | undefined; height?: string | number | undefined; maxHeight?: string | number | undefined; maxWidth?: string | number | undefined; minHeight?: string | number | undefined; minWidth?: string | number | undefined; width?: string | number | undefined; transition?: string | boolean | (import("vue").TransitionProps & { component?: import("vue").Component; }) | null | undefined; aspectRatio?: string | number | undefined; contentClass?: any; alt?: string | undefined; color?: string | undefined; draggable?: "false" | "true" | boolean | undefined; gradient?: string | undefined; imageClass?: any; lazySrc?: string | undefined; sizes?: string | undefined; crossorigin?: "" | "anonymous" | "use-credentials" | undefined; referrerpolicy?: "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined; srcset?: string | undefined; position?: string | undefined; } & { $children?: { default?: (() => import("vue").VNodeChild) | undefined; placeholder?: (() => import("vue").VNodeChild) | undefined; error?: (() => import("vue").VNodeChild) | undefined; sources?: (() => import("vue").VNodeChild) | undefined; } | { $stable?: boolean; } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; 'v-slots'?: { default?: false | (() => import("vue").VNodeChild) | undefined; placeholder?: false | (() => import("vue").VNodeChild) | undefined; error?: false | (() => import("vue").VNodeChild) | undefined; sources?: false | (() => import("vue").VNodeChild) | undefined; } | undefined; } & { "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:error"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:placeholder"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:sources"?: false | (() => import("vue").VNodeChild) | undefined; } & { onError?: ((value: string | undefined) => any) | undefined; onLoad?: ((value: string | undefined) => any) | undefined; onLoadstart?: ((value: string | undefined) => any) | undefined; }, { currentSrc: import("vue").ShallowRef; image: import("vue").Ref; state: import("vue").ShallowRef<"error" | "idle" | "loaded" | "loading", "error" | "idle" | "loaded" | "loading">; naturalWidth: import("vue").ShallowRef; naturalHeight: import("vue").ShallowRef; }, {}, {}, {}, { style: import("vue").StyleValue; rounded: string | number | boolean; tile: boolean; inline: boolean; absolute: boolean; cover: boolean; draggable: "false" | "true" | boolean; eager: boolean; options: IntersectionObserverInit; src: string | srcObject; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & import("vue").ComponentOptionsBase<{ style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; tile: boolean; inline: boolean; absolute: boolean; cover: boolean; eager: boolean; options: IntersectionObserverInit; src: string | srcObject; } & { class?: any; rounded?: string | number | boolean | undefined; height?: string | number | undefined; maxHeight?: string | number | undefined; maxWidth?: string | number | undefined; minHeight?: string | number | undefined; minWidth?: string | number | undefined; width?: string | number | undefined; transition?: string | boolean | (import("vue").TransitionProps & { component?: import("vue").Component; }) | null | undefined; aspectRatio?: string | number | undefined; contentClass?: any; alt?: string | undefined; color?: string | undefined; draggable?: "false" | "true" | boolean | undefined; gradient?: string | undefined; imageClass?: any; lazySrc?: string | undefined; sizes?: string | undefined; crossorigin?: "" | "anonymous" | "use-credentials" | undefined; referrerpolicy?: "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined; srcset?: string | undefined; position?: string | undefined; } & { $children?: { default?: (() => import("vue").VNodeChild) | undefined; placeholder?: (() => import("vue").VNodeChild) | undefined; error?: (() => import("vue").VNodeChild) | undefined; sources?: (() => import("vue").VNodeChild) | undefined; } | { $stable?: boolean; } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; 'v-slots'?: { default?: false | (() => import("vue").VNodeChild) | undefined; placeholder?: false | (() => import("vue").VNodeChild) | undefined; error?: false | (() => import("vue").VNodeChild) | undefined; sources?: false | (() => import("vue").VNodeChild) | undefined; } | undefined; } & { "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:error"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:placeholder"?: false | (() => import("vue").VNodeChild) | undefined; "v-slot:sources"?: false | (() => import("vue").VNodeChild) | undefined; } & { onError?: ((value: string | undefined) => any) | undefined; onLoad?: ((value: string | undefined) => any) | undefined; onLoadstart?: ((value: string | undefined) => any) | undefined; }, { currentSrc: import("vue").ShallowRef; image: import("vue").Ref; state: import("vue").ShallowRef<"error" | "idle" | "loaded" | "loading", "error" | "idle" | "loaded" | "loading">; naturalWidth: import("vue").ShallowRef; naturalHeight: import("vue").ShallowRef; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { loadstart: (value: string | undefined) => true; load: (value: string | undefined) => true; error: (value: string | undefined) => true; }, string, { style: import("vue").StyleValue; rounded: string | number | boolean; tile: boolean; inline: boolean; absolute: boolean; cover: boolean; draggable: "false" | "true" | boolean; eager: boolean; options: IntersectionObserverInit; src: string | srcObject; }, {}, string, import("vue").SlotsType import("vue").VNode[]; placeholder: () => import("vue").VNode[]; error: () => import("vue").VNode[]; sources: () => import("vue").VNode[]; }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("../../util/index.js").FilterPropsOptions<{ class: PropType; style: { type: PropType; default: null; }; rounded: { type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; default: undefined; }; tile: BooleanConstructor; height: (NumberConstructor | StringConstructor)[]; maxHeight: (NumberConstructor | StringConstructor)[]; maxWidth: (NumberConstructor | StringConstructor)[]; minHeight: (NumberConstructor | StringConstructor)[]; minWidth: (NumberConstructor | StringConstructor)[]; width: (NumberConstructor | StringConstructor)[]; transition: import("vue").Prop; aspectRatio: (NumberConstructor | StringConstructor)[]; contentClass: null; inline: BooleanConstructor; absolute: BooleanConstructor; alt: StringConstructor; cover: BooleanConstructor; color: StringConstructor; draggable: { type: PropType; default: undefined; }; eager: BooleanConstructor; gradient: StringConstructor; imageClass: null; lazySrc: StringConstructor; options: { type: PropType; default: () => { root: undefined; rootMargin: undefined; threshold: undefined; }; }; sizes: StringConstructor; src: { type: PropType; default: string; }; crossorigin: PropType<'' | 'anonymous' | 'use-credentials'>; referrerpolicy: PropType<'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url'>; srcset: StringConstructor; position: StringConstructor; }, import("vue").ExtractPropTypes<{ class: PropType; style: { type: PropType; default: null; }; rounded: { type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; default: undefined; }; tile: BooleanConstructor; height: (NumberConstructor | StringConstructor)[]; maxHeight: (NumberConstructor | StringConstructor)[]; maxWidth: (NumberConstructor | StringConstructor)[]; minHeight: (NumberConstructor | StringConstructor)[]; minWidth: (NumberConstructor | StringConstructor)[]; width: (NumberConstructor | StringConstructor)[]; transition: import("vue").Prop; aspectRatio: (NumberConstructor | StringConstructor)[]; contentClass: null; inline: BooleanConstructor; absolute: BooleanConstructor; alt: StringConstructor; cover: BooleanConstructor; color: StringConstructor; draggable: { type: PropType; default: undefined; }; eager: BooleanConstructor; gradient: StringConstructor; imageClass: null; lazySrc: StringConstructor; options: { type: PropType; default: () => { root: undefined; rootMargin: undefined; threshold: undefined; }; }; sizes: StringConstructor; src: { type: PropType; default: string; }; crossorigin: PropType<'' | 'anonymous' | 'use-credentials'>; referrerpolicy: PropType<'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url'>; srcset: StringConstructor; position: StringConstructor; }>>; export type VImg = InstanceType;