import type { Ref } from 'vue-demi';
import type { SegmentedValue } from './segmented';
export interface MotionThumbInterface {
    value: SegmentedValue;
    getValueIndex: (value: SegmentedValue) => number;
    prefixCls: string;
    motionName: string;
    onMotionStart: VoidFunction;
    onMotionEnd: VoidFunction;
    direction?: 'ltr' | 'rtl';
}
declare const MotionThumb: import("vue-demi").DefineComponent<{
    value: {
        default: SegmentedValue;
        type: import("vue-demi").PropType<SegmentedValue>;
    };
    getValueIndex: {
        default: (value: SegmentedValue) => number;
        type: import("vue-demi").PropType<(value: SegmentedValue) => number>;
    };
    prefixCls: {
        default: string;
        type: import("vue-demi").PropType<string>;
    };
    motionName: {
        default: string;
        type: import("vue-demi").PropType<string>;
    };
    onMotionStart: {
        default: VoidFunction;
        type: import("vue-demi").PropType<VoidFunction>;
    };
    onMotionEnd: {
        default: VoidFunction;
        type: import("vue-demi").PropType<VoidFunction>;
    };
    direction: {
        default: "rtl" | "ltr";
        type: import("vue-demi").PropType<"rtl" | "ltr">;
    };
    containerRef: {
        default: Ref<HTMLDivElement>;
        type: import("vue-demi").PropType<Ref<HTMLDivElement>>;
    };
}, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, ("motionStart" | "motionEnd")[], "motionStart" | "motionEnd", import("vue-demi").PublicProps, Readonly<import("vue-demi").ExtractPropTypes<{
    value: {
        default: SegmentedValue;
        type: import("vue-demi").PropType<SegmentedValue>;
    };
    getValueIndex: {
        default: (value: SegmentedValue) => number;
        type: import("vue-demi").PropType<(value: SegmentedValue) => number>;
    };
    prefixCls: {
        default: string;
        type: import("vue-demi").PropType<string>;
    };
    motionName: {
        default: string;
        type: import("vue-demi").PropType<string>;
    };
    onMotionStart: {
        default: VoidFunction;
        type: import("vue-demi").PropType<VoidFunction>;
    };
    onMotionEnd: {
        default: VoidFunction;
        type: import("vue-demi").PropType<VoidFunction>;
    };
    direction: {
        default: "rtl" | "ltr";
        type: import("vue-demi").PropType<"rtl" | "ltr">;
    };
    containerRef: {
        default: Ref<HTMLDivElement>;
        type: import("vue-demi").PropType<Ref<HTMLDivElement>>;
    };
}>> & {
    onMotionStart?: (...args: any[]) => any;
    onMotionEnd?: (...args: any[]) => any;
}, {
    value: SegmentedValue;
    direction: "rtl" | "ltr";
    prefixCls: string;
    onMotionStart: VoidFunction;
    onMotionEnd: VoidFunction;
    motionName: string;
    getValueIndex: (value: SegmentedValue) => number;
    containerRef: Ref<HTMLDivElement>;
}, {}>;
export default MotionThumb;
