import { TdSwiperProps, SwiperChangeSource } from './type';
import './style';
export * from './type';
export interface SwiperToOptions {
    immediate?: boolean;
}
export interface SwiperInstance {
    swipeTo: (index: number, options?: SwiperToOptions) => void;
    goPrev: (source: SwiperChangeSource) => void;
    goNext: (source: SwiperChangeSource) => void;
    setOffset: (offset: number, direction?: 'X' | 'Y') => void;
    swiperContainer: HTMLElement | null;
}
export type SwiperProps = TdSwiperProps;
export declare const Swiper: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        animation: {
            type: import("vue").PropType<TdSwiperProps['animation']>;
            default: TdSwiperProps['animation'];
            validator(val: TdSwiperProps['animation']): boolean;
        };
        autoplay: {
            type: BooleanConstructor;
            default: boolean;
        };
        current: {
            type: NumberConstructor;
            default: any;
        };
        modelValue: {
            type: NumberConstructor;
            default: any;
        };
        defaultCurrent: {
            type: NumberConstructor;
            default: number;
        };
        direction: {
            type: import("vue").PropType<TdSwiperProps['direction']>;
            default: TdSwiperProps['direction'];
            validator(val: TdSwiperProps['direction']): boolean;
        };
        duration: {
            type: NumberConstructor;
            default: number;
        };
        height: {
            type: import("vue").PropType<TdSwiperProps['height']>;
        };
        interval: {
            type: NumberConstructor;
            default: number;
        };
        loop: {
            type: BooleanConstructor;
            default: boolean;
        };
        navigation: {
            type: import("vue").PropType<TdSwiperProps['navigation']>;
        };
        nextMargin: {
            type: import("vue").PropType<TdSwiperProps['nextMargin']>;
            default: TdSwiperProps['nextMargin'];
        };
        previousMargin: {
            type: import("vue").PropType<TdSwiperProps['previousMargin']>;
            default: TdSwiperProps['previousMargin'];
        };
        onChange: import("vue").PropType<TdSwiperProps['onChange']>;
        onClick: import("vue").PropType<TdSwiperProps['onClick']>;
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>> & Readonly<{
        onChange?: (...args: any[]) => any;
        onTransitionenter?: (...args: any[]) => any;
        onTransitionleave?: (...args: any[]) => any;
        "onUpdate:current"?: (...args: any[]) => any;
        "onUpdate:modelValue"?: (...args: any[]) => any;
    }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "transitionenter" | "transitionleave" | "update:current" | "update:modelValue")[], import("vue").PublicProps, {
        animation: "slide";
        autoplay: boolean;
        current: number;
        modelValue: number;
        defaultCurrent: number;
        direction: "horizontal" | "vertical";
        duration: number;
        interval: number;
        loop: boolean;
        nextMargin: string | number;
        previousMargin: string | number;
        disabled: boolean;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        animation: {
            type: import("vue").PropType<TdSwiperProps['animation']>;
            default: TdSwiperProps['animation'];
            validator(val: TdSwiperProps['animation']): boolean;
        };
        autoplay: {
            type: BooleanConstructor;
            default: boolean;
        };
        current: {
            type: NumberConstructor;
            default: any;
        };
        modelValue: {
            type: NumberConstructor;
            default: any;
        };
        defaultCurrent: {
            type: NumberConstructor;
            default: number;
        };
        direction: {
            type: import("vue").PropType<TdSwiperProps['direction']>;
            default: TdSwiperProps['direction'];
            validator(val: TdSwiperProps['direction']): boolean;
        };
        duration: {
            type: NumberConstructor;
            default: number;
        };
        height: {
            type: import("vue").PropType<TdSwiperProps['height']>;
        };
        interval: {
            type: NumberConstructor;
            default: number;
        };
        loop: {
            type: BooleanConstructor;
            default: boolean;
        };
        navigation: {
            type: import("vue").PropType<TdSwiperProps['navigation']>;
        };
        nextMargin: {
            type: import("vue").PropType<TdSwiperProps['nextMargin']>;
            default: TdSwiperProps['nextMargin'];
        };
        previousMargin: {
            type: import("vue").PropType<TdSwiperProps['previousMargin']>;
            default: TdSwiperProps['previousMargin'];
        };
        onChange: import("vue").PropType<TdSwiperProps['onChange']>;
        onClick: import("vue").PropType<TdSwiperProps['onClick']>;
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>> & Readonly<{
        onChange?: (...args: any[]) => any;
        onTransitionenter?: (...args: any[]) => any;
        onTransitionleave?: (...args: any[]) => any;
        "onUpdate:current"?: (...args: any[]) => any;
        "onUpdate:modelValue"?: (...args: any[]) => any;
    }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {
        animation: "slide";
        autoplay: boolean;
        current: number;
        modelValue: number;
        defaultCurrent: number;
        direction: "horizontal" | "vertical";
        duration: number;
        interval: number;
        loop: boolean;
        nextMargin: string | number;
        previousMargin: string | number;
        disabled: boolean;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    animation: {
        type: import("vue").PropType<TdSwiperProps['animation']>;
        default: TdSwiperProps['animation'];
        validator(val: TdSwiperProps['animation']): boolean;
    };
    autoplay: {
        type: BooleanConstructor;
        default: boolean;
    };
    current: {
        type: NumberConstructor;
        default: any;
    };
    modelValue: {
        type: NumberConstructor;
        default: any;
    };
    defaultCurrent: {
        type: NumberConstructor;
        default: number;
    };
    direction: {
        type: import("vue").PropType<TdSwiperProps['direction']>;
        default: TdSwiperProps['direction'];
        validator(val: TdSwiperProps['direction']): boolean;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    height: {
        type: import("vue").PropType<TdSwiperProps['height']>;
    };
    interval: {
        type: NumberConstructor;
        default: number;
    };
    loop: {
        type: BooleanConstructor;
        default: boolean;
    };
    navigation: {
        type: import("vue").PropType<TdSwiperProps['navigation']>;
    };
    nextMargin: {
        type: import("vue").PropType<TdSwiperProps['nextMargin']>;
        default: TdSwiperProps['nextMargin'];
    };
    previousMargin: {
        type: import("vue").PropType<TdSwiperProps['previousMargin']>;
        default: TdSwiperProps['previousMargin'];
    };
    onChange: import("vue").PropType<TdSwiperProps['onChange']>;
    onClick: import("vue").PropType<TdSwiperProps['onClick']>;
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    onChange?: (...args: any[]) => any;
    onTransitionenter?: (...args: any[]) => any;
    onTransitionleave?: (...args: any[]) => any;
    "onUpdate:current"?: (...args: any[]) => any;
    "onUpdate:modelValue"?: (...args: any[]) => any;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "transitionenter" | "transitionleave" | "update:current" | "update:modelValue")[], "change" | "transitionenter" | "transitionleave" | "update:current" | "update:modelValue", {
    animation: "slide";
    autoplay: boolean;
    current: number;
    modelValue: number;
    defaultCurrent: number;
    direction: "horizontal" | "vertical";
    duration: number;
    interval: number;
    loop: boolean;
    nextMargin: string | number;
    previousMargin: string | number;
    disabled: boolean;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin;
export declare const SwiperItem: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{}> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<{}> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, {}>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<{}> & Readonly<{}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin;
export default Swiper;
