export declare const VaCarousel: {
    new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
        stateful: {
            type: BooleanConstructor;
            default: boolean;
        };
        modelValue: {
            type: NumberConstructor;
            default: number;
        };
        items: {
            type: import("vue").PropType<any[]>;
            required: true;
        };
        autoscroll: {
            type: BooleanConstructor;
            default: boolean;
        };
        autoscrollInterval: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        autoscrollPauseDuration: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        infinite: {
            type: BooleanConstructor;
            default: boolean;
        };
        fadeKeyframe: {
            type: StringConstructor;
            default: string;
        };
        arrows: {
            type: BooleanConstructor;
            default: boolean;
        };
        indicators: {
            type: BooleanConstructor;
            default: boolean;
        };
        indicatorTrigger: {
            type: import("vue").PropType<"click" | "hover" | "none">;
            default: string;
            validator: (value: string) => boolean;
        };
        vertical: {
            type: BooleanConstructor;
            default: boolean;
        };
        height: {
            type: StringConstructor;
            default: string;
        };
        effect: {
            type: import("vue").PropType<"fade" | "transition">;
            default: string;
            validator: (value: string) => boolean;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        ratio: {
            type: (StringConstructor | NumberConstructor)[];
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaPreviousLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaNextLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaGoToSlideLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaSlideOfLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        title: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        onError: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        preset: {
            type: import("vue").PropType<NonNullable<import("../../composables").PresetPropValue | undefined>>;
            required: true;
            default: import("../../composables").PresetPropValue | undefined;
        };
        maxWidth: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        onFallback: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        fallbackSrc: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackText: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackIcon: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackRender: {
            type: import("vue").PropType<() => any>;
            required: true;
            default: (() => any) | undefined;
        };
        loading: {
            type: import("vue").PropType<NonNullable<"lazy" | "eager" | undefined>>;
            required: true;
            default: "lazy" | "eager" | undefined;
        };
        lazy: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        onLoaded: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        fit: {
            type: import("vue").PropType<NonNullable<"fill" | "none" | "contain" | "cover" | "scale-down" | undefined>>;
            required: true;
            default: "fill" | "none" | "contain" | "cover" | "scale-down" | undefined;
        };
        placeholderSrc: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        sizes: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        srcset: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        draggable: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        crossorigin: {
            type: import("vue").PropType<NonNullable<"anonymous" | "use-credentials" | undefined>>;
            required: true;
            default: "anonymous" | "use-credentials" | undefined;
        };
        decoding: {
            type: import("vue").PropType<NonNullable<"auto" | "sync" | "async" | undefined>>;
            required: true;
            default: "auto" | "sync" | "async" | undefined;
        };
        fetchpriority: {
            type: import("vue").PropType<NonNullable<"auto" | "high" | "low" | undefined>>;
            required: true;
            default: "auto" | "high" | "low" | undefined;
        };
        referrerpolicy: {
            type: import("vue").PropType<NonNullable<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined>>;
            required: true;
            default: "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined;
        };
        swipable: {
            type: BooleanConstructor;
            default: boolean;
        };
        swipeDistance: {
            type: NumberConstructor;
            default: number;
        };
        swipeDirection: {
            type: import("vue").PropType<"all" | "horizontal" | "vertical" | ("" | "right" | "left" | "up" | "down")>;
            default: string;
        };
    }>> & {
        "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
    }, {
        currentSlide: import("../../composables").StatefulValue<number>;
        goTo: (index: number) => void;
        next: () => void;
        prev: () => void;
        goToWithPause: (index: number) => void;
        prevWithPause: () => void;
        nextWithPause: () => void;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        "update:modelValue": (...args: any[]) => void;
    }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
        stateful: {
            type: BooleanConstructor;
            default: boolean;
        };
        modelValue: {
            type: NumberConstructor;
            default: number;
        };
        items: {
            type: import("vue").PropType<any[]>;
            required: true;
        };
        autoscroll: {
            type: BooleanConstructor;
            default: boolean;
        };
        autoscrollInterval: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        autoscrollPauseDuration: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        infinite: {
            type: BooleanConstructor;
            default: boolean;
        };
        fadeKeyframe: {
            type: StringConstructor;
            default: string;
        };
        arrows: {
            type: BooleanConstructor;
            default: boolean;
        };
        indicators: {
            type: BooleanConstructor;
            default: boolean;
        };
        indicatorTrigger: {
            type: import("vue").PropType<"click" | "hover" | "none">;
            default: string;
            validator: (value: string) => boolean;
        };
        vertical: {
            type: BooleanConstructor;
            default: boolean;
        };
        height: {
            type: StringConstructor;
            default: string;
        };
        effect: {
            type: import("vue").PropType<"fade" | "transition">;
            default: string;
            validator: (value: string) => boolean;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        ratio: {
            type: (StringConstructor | NumberConstructor)[];
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaPreviousLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaNextLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaGoToSlideLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaSlideOfLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        title: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        onError: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        preset: {
            type: import("vue").PropType<NonNullable<import("../../composables").PresetPropValue | undefined>>;
            required: true;
            default: import("../../composables").PresetPropValue | undefined;
        };
        maxWidth: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        onFallback: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        fallbackSrc: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackText: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackIcon: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackRender: {
            type: import("vue").PropType<() => any>;
            required: true;
            default: (() => any) | undefined;
        };
        loading: {
            type: import("vue").PropType<NonNullable<"lazy" | "eager" | undefined>>;
            required: true;
            default: "lazy" | "eager" | undefined;
        };
        lazy: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        onLoaded: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        fit: {
            type: import("vue").PropType<NonNullable<"fill" | "none" | "contain" | "cover" | "scale-down" | undefined>>;
            required: true;
            default: "fill" | "none" | "contain" | "cover" | "scale-down" | undefined;
        };
        placeholderSrc: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        sizes: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        srcset: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        draggable: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        crossorigin: {
            type: import("vue").PropType<NonNullable<"anonymous" | "use-credentials" | undefined>>;
            required: true;
            default: "anonymous" | "use-credentials" | undefined;
        };
        decoding: {
            type: import("vue").PropType<NonNullable<"auto" | "sync" | "async" | undefined>>;
            required: true;
            default: "auto" | "sync" | "async" | undefined;
        };
        fetchpriority: {
            type: import("vue").PropType<NonNullable<"auto" | "high" | "low" | undefined>>;
            required: true;
            default: "auto" | "high" | "low" | undefined;
        };
        referrerpolicy: {
            type: import("vue").PropType<NonNullable<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined>>;
            required: true;
            default: "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined;
        };
        swipable: {
            type: BooleanConstructor;
            default: boolean;
        };
        swipeDistance: {
            type: NumberConstructor;
            default: number;
        };
        swipeDirection: {
            type: import("vue").PropType<"all" | "horizontal" | "vertical" | ("" | "right" | "left" | "up" | "down")>;
            default: string;
        };
    }>> & {
        "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
    }, {
        title: string;
        onError: (...args: any[]) => any;
        modelValue: number;
        stateful: boolean;
        preset: NonNullable<import("../../composables").PresetPropValue | undefined>;
        color: string;
        maxWidth: NonNullable<string | number | undefined>;
        vertical: boolean;
        onFallback: (...args: any[]) => any;
        fallbackSrc: string;
        fallbackText: string;
        fallbackIcon: string;
        fallbackRender: () => any;
        loading: NonNullable<"lazy" | "eager" | undefined>;
        ariaLabel: import("../../composables").TranslationProp;
        height: string;
        lazy: NonNullable<boolean | undefined>;
        onLoaded: (...args: any[]) => any;
        fit: NonNullable<"fill" | "none" | "contain" | "cover" | "scale-down" | undefined>;
        placeholderSrc: string;
        sizes: string;
        srcset: string;
        draggable: NonNullable<boolean | undefined>;
        crossorigin: NonNullable<"anonymous" | "use-credentials" | undefined>;
        decoding: NonNullable<"auto" | "sync" | "async" | undefined>;
        fetchpriority: NonNullable<"auto" | "high" | "low" | undefined>;
        referrerpolicy: NonNullable<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined>;
        autoscroll: boolean;
        autoscrollInterval: string | number;
        autoscrollPauseDuration: string | number;
        infinite: boolean;
        fadeKeyframe: string;
        arrows: boolean;
        indicators: boolean;
        indicatorTrigger: "click" | "hover" | "none";
        effect: "fade" | "transition";
        ariaPreviousLabel: import("../../composables").TranslationProp;
        ariaNextLabel: import("../../composables").TranslationProp;
        ariaGoToSlideLabel: import("../../composables").TranslationProp;
        ariaSlideOfLabel: import("../../composables").TranslationProp;
        swipable: boolean;
        swipeDistance: number;
        swipeDirection: "all" | "horizontal" | "vertical" | ("" | "right" | "left" | "up" | "down");
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        stateful: {
            type: BooleanConstructor;
            default: boolean;
        };
        modelValue: {
            type: NumberConstructor;
            default: number;
        };
        items: {
            type: import("vue").PropType<any[]>;
            required: true;
        };
        autoscroll: {
            type: BooleanConstructor;
            default: boolean;
        };
        autoscrollInterval: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        autoscrollPauseDuration: {
            type: (StringConstructor | NumberConstructor)[];
            default: number;
        };
        infinite: {
            type: BooleanConstructor;
            default: boolean;
        };
        fadeKeyframe: {
            type: StringConstructor;
            default: string;
        };
        arrows: {
            type: BooleanConstructor;
            default: boolean;
        };
        indicators: {
            type: BooleanConstructor;
            default: boolean;
        };
        indicatorTrigger: {
            type: import("vue").PropType<"click" | "hover" | "none">;
            default: string;
            validator: (value: string) => boolean;
        };
        vertical: {
            type: BooleanConstructor;
            default: boolean;
        };
        height: {
            type: StringConstructor;
            default: string;
        };
        effect: {
            type: import("vue").PropType<"fade" | "transition">;
            default: string;
            validator: (value: string) => boolean;
        };
        color: {
            type: StringConstructor;
            default: string;
        };
        ratio: {
            type: (StringConstructor | NumberConstructor)[];
        };
        ariaLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaPreviousLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaNextLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaGoToSlideLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        ariaSlideOfLabel: {
            type: import("vue").PropType<import("../../composables").TranslationProp>;
            default: import("../../composables").TranslationProp;
        };
        title: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        onError: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        preset: {
            type: import("vue").PropType<NonNullable<import("../../composables").PresetPropValue | undefined>>;
            required: true;
            default: import("../../composables").PresetPropValue | undefined;
        };
        maxWidth: {
            type: import("vue").PropType<NonNullable<string | number | undefined>>;
            required: true;
            default: string | number | undefined;
        };
        onFallback: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        fallbackSrc: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackText: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackIcon: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        fallbackRender: {
            type: import("vue").PropType<() => any>;
            required: true;
            default: (() => any) | undefined;
        };
        loading: {
            type: import("vue").PropType<NonNullable<"lazy" | "eager" | undefined>>;
            required: true;
            default: "lazy" | "eager" | undefined;
        };
        lazy: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        onLoaded: {
            type: import("vue").PropType<(...args: any[]) => any>;
            required: true;
            default: ((...args: any[]) => any) | undefined;
        };
        fit: {
            type: import("vue").PropType<NonNullable<"fill" | "none" | "contain" | "cover" | "scale-down" | undefined>>;
            required: true;
            default: "fill" | "none" | "contain" | "cover" | "scale-down" | undefined;
        };
        placeholderSrc: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        sizes: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        srcset: {
            type: import("vue").PropType<string>;
            required: true;
            default: string | undefined;
        };
        draggable: {
            type: import("vue").PropType<NonNullable<boolean | undefined>>;
            required: true;
            default: boolean | undefined;
        };
        crossorigin: {
            type: import("vue").PropType<NonNullable<"anonymous" | "use-credentials" | undefined>>;
            required: true;
            default: "anonymous" | "use-credentials" | undefined;
        };
        decoding: {
            type: import("vue").PropType<NonNullable<"auto" | "sync" | "async" | undefined>>;
            required: true;
            default: "auto" | "sync" | "async" | undefined;
        };
        fetchpriority: {
            type: import("vue").PropType<NonNullable<"auto" | "high" | "low" | undefined>>;
            required: true;
            default: "auto" | "high" | "low" | undefined;
        };
        referrerpolicy: {
            type: import("vue").PropType<NonNullable<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined>>;
            required: true;
            default: "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined;
        };
        swipable: {
            type: BooleanConstructor;
            default: boolean;
        };
        swipeDistance: {
            type: NumberConstructor;
            default: number;
        };
        swipeDirection: {
            type: import("vue").PropType<"all" | "horizontal" | "vertical" | ("" | "right" | "left" | "up" | "down")>;
            default: string;
        };
    }>> & {
        "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
    }, {
        currentSlide: import("../../composables").StatefulValue<number>;
        goTo: (index: number) => void;
        next: () => void;
        prev: () => void;
        goToWithPause: (index: number) => void;
        prevWithPause: () => void;
        nextWithPause: () => void;
    }, {}, {}, {}, {
        title: string;
        onError: (...args: any[]) => any;
        modelValue: number;
        stateful: boolean;
        preset: NonNullable<import("../../composables").PresetPropValue | undefined>;
        color: string;
        maxWidth: NonNullable<string | number | undefined>;
        vertical: boolean;
        onFallback: (...args: any[]) => any;
        fallbackSrc: string;
        fallbackText: string;
        fallbackIcon: string;
        fallbackRender: () => any;
        loading: NonNullable<"lazy" | "eager" | undefined>;
        ariaLabel: import("../../composables").TranslationProp;
        height: string;
        lazy: NonNullable<boolean | undefined>;
        onLoaded: (...args: any[]) => any;
        fit: NonNullable<"fill" | "none" | "contain" | "cover" | "scale-down" | undefined>;
        placeholderSrc: string;
        sizes: string;
        srcset: string;
        draggable: NonNullable<boolean | undefined>;
        crossorigin: NonNullable<"anonymous" | "use-credentials" | undefined>;
        decoding: NonNullable<"auto" | "sync" | "async" | undefined>;
        fetchpriority: NonNullable<"auto" | "high" | "low" | undefined>;
        referrerpolicy: NonNullable<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined>;
        autoscroll: boolean;
        autoscrollInterval: string | number;
        autoscrollPauseDuration: string | number;
        infinite: boolean;
        fadeKeyframe: string;
        arrows: boolean;
        indicators: boolean;
        indicatorTrigger: "click" | "hover" | "none";
        effect: "fade" | "transition";
        ariaPreviousLabel: import("../../composables").TranslationProp;
        ariaNextLabel: import("../../composables").TranslationProp;
        ariaGoToSlideLabel: import("../../composables").TranslationProp;
        ariaSlideOfLabel: import("../../composables").TranslationProp;
        swipable: boolean;
        swipeDistance: number;
        swipeDirection: "all" | "horizontal" | "vertical" | ("" | "right" | "left" | "up" | "down");
    }>;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    stateful: {
        type: BooleanConstructor;
        default: boolean;
    };
    modelValue: {
        type: NumberConstructor;
        default: number;
    };
    items: {
        type: import("vue").PropType<any[]>;
        required: true;
    };
    autoscroll: {
        type: BooleanConstructor;
        default: boolean;
    };
    autoscrollInterval: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    autoscrollPauseDuration: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    infinite: {
        type: BooleanConstructor;
        default: boolean;
    };
    fadeKeyframe: {
        type: StringConstructor;
        default: string;
    };
    arrows: {
        type: BooleanConstructor;
        default: boolean;
    };
    indicators: {
        type: BooleanConstructor;
        default: boolean;
    };
    indicatorTrigger: {
        type: import("vue").PropType<"click" | "hover" | "none">;
        default: string;
        validator: (value: string) => boolean;
    };
    vertical: {
        type: BooleanConstructor;
        default: boolean;
    };
    height: {
        type: StringConstructor;
        default: string;
    };
    effect: {
        type: import("vue").PropType<"fade" | "transition">;
        default: string;
        validator: (value: string) => boolean;
    };
    color: {
        type: StringConstructor;
        default: string;
    };
    ratio: {
        type: (StringConstructor | NumberConstructor)[];
    };
    ariaLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaPreviousLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaNextLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaGoToSlideLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaSlideOfLabel: {
        type: import("vue").PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    title: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    onError: {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    preset: {
        type: import("vue").PropType<NonNullable<import("../../composables").PresetPropValue | undefined>>;
        required: true;
        default: import("../../composables").PresetPropValue | undefined;
    };
    maxWidth: {
        type: import("vue").PropType<NonNullable<string | number | undefined>>;
        required: true;
        default: string | number | undefined;
    };
    onFallback: {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    fallbackSrc: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    fallbackText: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    fallbackIcon: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    fallbackRender: {
        type: import("vue").PropType<() => any>;
        required: true;
        default: (() => any) | undefined;
    };
    loading: {
        type: import("vue").PropType<NonNullable<"lazy" | "eager" | undefined>>;
        required: true;
        default: "lazy" | "eager" | undefined;
    };
    lazy: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    onLoaded: {
        type: import("vue").PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    fit: {
        type: import("vue").PropType<NonNullable<"fill" | "none" | "contain" | "cover" | "scale-down" | undefined>>;
        required: true;
        default: "fill" | "none" | "contain" | "cover" | "scale-down" | undefined;
    };
    placeholderSrc: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    sizes: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    srcset: {
        type: import("vue").PropType<string>;
        required: true;
        default: string | undefined;
    };
    draggable: {
        type: import("vue").PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    crossorigin: {
        type: import("vue").PropType<NonNullable<"anonymous" | "use-credentials" | undefined>>;
        required: true;
        default: "anonymous" | "use-credentials" | undefined;
    };
    decoding: {
        type: import("vue").PropType<NonNullable<"auto" | "sync" | "async" | undefined>>;
        required: true;
        default: "auto" | "sync" | "async" | undefined;
    };
    fetchpriority: {
        type: import("vue").PropType<NonNullable<"auto" | "high" | "low" | undefined>>;
        required: true;
        default: "auto" | "high" | "low" | undefined;
    };
    referrerpolicy: {
        type: import("vue").PropType<NonNullable<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined>>;
        required: true;
        default: "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined;
    };
    swipable: {
        type: BooleanConstructor;
        default: boolean;
    };
    swipeDistance: {
        type: NumberConstructor;
        default: number;
    };
    swipeDirection: {
        type: import("vue").PropType<"all" | "horizontal" | "vertical" | ("" | "right" | "left" | "up" | "down")>;
        default: string;
    };
}>> & {
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
}, {
    currentSlide: import("../../composables").StatefulValue<number>;
    goTo: (index: number) => void;
    next: () => void;
    prev: () => void;
    goToWithPause: (index: number) => void;
    prevWithPause: () => void;
    nextWithPause: () => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (...args: any[]) => void;
}, string, {
    title: string;
    onError: (...args: any[]) => any;
    modelValue: number;
    stateful: boolean;
    preset: NonNullable<import("../../composables").PresetPropValue | undefined>;
    color: string;
    maxWidth: NonNullable<string | number | undefined>;
    vertical: boolean;
    onFallback: (...args: any[]) => any;
    fallbackSrc: string;
    fallbackText: string;
    fallbackIcon: string;
    fallbackRender: () => any;
    loading: NonNullable<"lazy" | "eager" | undefined>;
    ariaLabel: import("../../composables").TranslationProp;
    height: string;
    lazy: NonNullable<boolean | undefined>;
    onLoaded: (...args: any[]) => any;
    fit: NonNullable<"fill" | "none" | "contain" | "cover" | "scale-down" | undefined>;
    placeholderSrc: string;
    sizes: string;
    srcset: string;
    draggable: NonNullable<boolean | undefined>;
    crossorigin: NonNullable<"anonymous" | "use-credentials" | undefined>;
    decoding: NonNullable<"auto" | "sync" | "async" | undefined>;
    fetchpriority: NonNullable<"auto" | "high" | "low" | undefined>;
    referrerpolicy: NonNullable<"no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined>;
    autoscroll: boolean;
    autoscrollInterval: string | number;
    autoscrollPauseDuration: string | number;
    infinite: boolean;
    fadeKeyframe: string;
    arrows: boolean;
    indicators: boolean;
    indicatorTrigger: "click" | "hover" | "none";
    effect: "fade" | "transition";
    ariaPreviousLabel: import("../../composables").TranslationProp;
    ariaNextLabel: import("../../composables").TranslationProp;
    ariaGoToSlideLabel: import("../../composables").TranslationProp;
    ariaSlideOfLabel: import("../../composables").TranslationProp;
    swipable: boolean;
    swipeDistance: number;
    swipeDirection: "all" | "horizontal" | "vertical" | ("" | "right" | "left" | "up" | "down");
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
    $slots: {
        "prev-arrow"?(_: {}): any;
        "next-arrow"?(_: {}): any;
        indicator?(_: {
            item: any;
            index: number;
            goTo: (index: number) => void;
            isActive: boolean;
        }): any;
        default?(_: {
            item: any;
            index: number;
            goTo: (index: number) => void;
            isActive: boolean;
        }): any;
    };
});
