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<"slide">;
            default: "slide";
            validator(val: "slide"): 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<"horizontal" | "vertical">;
            default: "horizontal" | "vertical";
            validator(val: "horizontal" | "vertical"): boolean;
        };
        duration: {
            type: NumberConstructor;
            default: number;
        };
        height: {
            type: import("vue").PropType<string | number>;
        };
        interval: {
            type: NumberConstructor;
            default: number;
        };
        loop: {
            type: BooleanConstructor;
            default: boolean;
        };
        navigation: {
            type: import("vue").PropType<import("@/components").SwiperNavigation | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        };
        nextMargin: {
            type: import("vue").PropType<string | number>;
            default: string | number;
        };
        previousMargin: {
            type: import("vue").PropType<string | number>;
            default: string | number;
        };
        onChange: import("vue").PropType<(current: number, context: {
            source: SwiperChangeSource;
        }) => void>;
        onClick: import("vue").PropType<(index: number) => void>;
        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<"slide">;
            default: "slide";
            validator(val: "slide"): 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<"horizontal" | "vertical">;
            default: "horizontal" | "vertical";
            validator(val: "horizontal" | "vertical"): boolean;
        };
        duration: {
            type: NumberConstructor;
            default: number;
        };
        height: {
            type: import("vue").PropType<string | number>;
        };
        interval: {
            type: NumberConstructor;
            default: number;
        };
        loop: {
            type: BooleanConstructor;
            default: boolean;
        };
        navigation: {
            type: import("vue").PropType<import("@/components").SwiperNavigation | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
        };
        nextMargin: {
            type: import("vue").PropType<string | number>;
            default: string | number;
        };
        previousMargin: {
            type: import("vue").PropType<string | number>;
            default: string | number;
        };
        onChange: import("vue").PropType<(current: number, context: {
            source: SwiperChangeSource;
        }) => void>;
        onClick: import("vue").PropType<(index: number) => void>;
        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<"slide">;
        default: "slide";
        validator(val: "slide"): 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<"horizontal" | "vertical">;
        default: "horizontal" | "vertical";
        validator(val: "horizontal" | "vertical"): boolean;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    height: {
        type: import("vue").PropType<string | number>;
    };
    interval: {
        type: NumberConstructor;
        default: number;
    };
    loop: {
        type: BooleanConstructor;
        default: boolean;
    };
    navigation: {
        type: import("vue").PropType<import("@/components").SwiperNavigation | ((h: typeof import("vue").h) => import("@/common").SlotReturnValue)>;
    };
    nextMargin: {
        type: import("vue").PropType<string | number>;
        default: string | number;
    };
    previousMargin: {
        type: import("vue").PropType<string | number>;
        default: string | number;
    };
    onChange: import("vue").PropType<(current: number, context: {
        source: SwiperChangeSource;
    }) => void>;
    onClick: import("vue").PropType<(index: number) => void>;
    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;
