import type { PropType } from 'vue';
import type { CarouselArrowType, CarouselAutoPlayConfig, CarouselIndicatorPosition, CarouselIndicatorType, CarouselTriggerEvent } from './interface';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    current: {
        type: NumberConstructor;
    };
    defaultCurrent: {
        type: NumberConstructor;
        default: number;
    };
    autoPlay: {
        type: PropType<boolean | CarouselAutoPlayConfig>;
        default: boolean;
    };
    moveSpeed: {
        type: NumberConstructor;
        default: number;
    };
    animationName: {
        type: PropType<"slide" | "fade" | "card">;
        default: string;
    };
    trigger: {
        type: PropType<CarouselTriggerEvent>;
        default: string;
    };
    direction: {
        type: PropType<"horizontal" | "vertical">;
        default: string;
    };
    showArrow: {
        type: PropType<CarouselArrowType>;
        default: string;
    };
    arrowClass: {
        type: StringConstructor;
        default: string;
    };
    indicatorType: {
        type: PropType<CarouselIndicatorType>;
        default: string;
    };
    indicatorPosition: {
        type: PropType<CarouselIndicatorPosition>;
        default: string;
    };
    indicatorClass: {
        type: StringConstructor;
        default: string;
    };
    transitionTimingFunction: {
        type: StringConstructor;
        default: string;
    };
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:current': (index: number) => true;
    change: (index: number, prevIndex: number, isManual: boolean) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    current: {
        type: NumberConstructor;
    };
    defaultCurrent: {
        type: NumberConstructor;
        default: number;
    };
    autoPlay: {
        type: PropType<boolean | CarouselAutoPlayConfig>;
        default: boolean;
    };
    moveSpeed: {
        type: NumberConstructor;
        default: number;
    };
    animationName: {
        type: PropType<"slide" | "fade" | "card">;
        default: string;
    };
    trigger: {
        type: PropType<CarouselTriggerEvent>;
        default: string;
    };
    direction: {
        type: PropType<"horizontal" | "vertical">;
        default: string;
    };
    showArrow: {
        type: PropType<CarouselArrowType>;
        default: string;
    };
    arrowClass: {
        type: StringConstructor;
        default: string;
    };
    indicatorType: {
        type: PropType<CarouselIndicatorType>;
        default: string;
    };
    indicatorPosition: {
        type: PropType<CarouselIndicatorPosition>;
        default: string;
    };
    indicatorClass: {
        type: StringConstructor;
        default: string;
    };
    transitionTimingFunction: {
        type: StringConstructor;
        default: string;
    };
}>> & Readonly<{
    onChange?: ((index: number, prevIndex: number, isManual: boolean) => any) | undefined;
    "onUpdate:current"?: ((index: number) => any) | undefined;
}>, {
    direction: "horizontal" | "vertical";
    trigger: CarouselTriggerEvent;
    showArrow: CarouselArrowType;
    arrowClass: string;
    animationName: "slide" | "fade" | "card";
    transitionTimingFunction: string;
    defaultCurrent: number;
    autoPlay: boolean | CarouselAutoPlayConfig;
    moveSpeed: number;
    indicatorType: CarouselIndicatorType;
    indicatorPosition: CarouselIndicatorPosition;
    indicatorClass: string;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
