import { SegmentedProps } from './src';
import { CreateComponentPublicInstanceWithMixins, ExtractPropTypes, PropType, ComponentOptionsMixin, PublicProps, GlobalComponents, GlobalDirectives, ComponentProvideOptions, ComponentOptionsBase, VNodeProps, AllowedComponentProps, ComponentCustomProps, Plugin } from 'vue';
import { SegmentedOption, segmentedSize, SegmentedValue, SegmentedBaseOption } from './src/segmented';
import { VueNode, CustomSlotsType } from '../_util/type';
declare const _default: {
    new (...args: any[]): CreateComponentPublicInstanceWithMixins<Readonly< ExtractPropTypes<{
        prefixCls: StringConstructor;
        options: {
            type: PropType<(string | number | SegmentedOption)[]>;
            default: (string | number | SegmentedOption)[];
        };
        block: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        size: {
            type: PropType<segmentedSize>;
            default: segmentedSize;
        };
        value: {
            required: boolean;
            type: PropType<SegmentedValue>;
            default: SegmentedValue;
        };
        motionName: StringConstructor;
        onChange: {
            type: PropType<(val: SegmentedValue) => void>;
            default: (val: SegmentedValue) => void;
        };
        'onUpdate:value': {
            type: PropType<(val: SegmentedValue) => void>;
            default: (val: SegmentedValue) => void;
        };
    }>> & Readonly<{}>, () => VueNode, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {
        size: segmentedSize;
        value: SegmentedValue;
        block: boolean;
        disabled: boolean;
        onChange: (val: SegmentedValue) => void;
        'onUpdate:value': (val: SegmentedValue) => void;
        options: (string | number | SegmentedOption)[];
    }, true, {}, CustomSlotsType<{
        label: SegmentedBaseOption;
    }>, GlobalComponents, GlobalDirectives, string, {}, any, ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly< ExtractPropTypes<{
        prefixCls: StringConstructor;
        options: {
            type: PropType<(string | number | SegmentedOption)[]>;
            default: (string | number | SegmentedOption)[];
        };
        block: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        size: {
            type: PropType<segmentedSize>;
            default: segmentedSize;
        };
        value: {
            required: boolean;
            type: PropType<SegmentedValue>;
            default: SegmentedValue;
        };
        motionName: StringConstructor;
        onChange: {
            type: PropType<(val: SegmentedValue) => void>;
            default: (val: SegmentedValue) => void;
        };
        'onUpdate:value': {
            type: PropType<(val: SegmentedValue) => void>;
            default: (val: SegmentedValue) => void;
        };
    }>> & Readonly<{}>, () => VueNode, {}, {}, {}, {
        size: segmentedSize;
        value: SegmentedValue;
        block: boolean;
        disabled: boolean;
        onChange: (val: SegmentedValue) => void;
        'onUpdate:value': (val: SegmentedValue) => void;
        options: (string | number | SegmentedOption)[];
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & ComponentOptionsBase<Readonly< ExtractPropTypes<{
    prefixCls: StringConstructor;
    options: {
        type: PropType<(string | number | SegmentedOption)[]>;
        default: (string | number | SegmentedOption)[];
    };
    block: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: PropType<segmentedSize>;
        default: segmentedSize;
    };
    value: {
        required: boolean;
        type: PropType<SegmentedValue>;
        default: SegmentedValue;
    };
    motionName: StringConstructor;
    onChange: {
        type: PropType<(val: SegmentedValue) => void>;
        default: (val: SegmentedValue) => void;
    };
    'onUpdate:value': {
        type: PropType<(val: SegmentedValue) => void>;
        default: (val: SegmentedValue) => void;
    };
}>> & Readonly<{}>, () => VueNode, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
    size: segmentedSize;
    value: SegmentedValue;
    block: boolean;
    disabled: boolean;
    onChange: (val: SegmentedValue) => void;
    'onUpdate:value': (val: SegmentedValue) => void;
    options: (string | number | SegmentedOption)[];
}, {}, string, CustomSlotsType<{
    label: SegmentedBaseOption;
}>, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & VNodeProps & AllowedComponentProps & ComponentCustomProps & Plugin;
export default _default;
export type { SegmentedProps };
