import { ExtractPropTypes, HTMLAttributes, PropType, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { VueNode } from '../../_util/type';
export declare const baseOptionsProps: {
    value: StringConstructor;
    disabled: BooleanConstructor;
    payload: {
        type: PropType<Record<string, any>>;
        default: Record<string, any>;
    };
};
export declare const optionProps: {
    label: {
        default: VueNode | ((o: BaseOptionsProps) => VueNode);
        type: PropType<VueNode | ((o: BaseOptionsProps) => VueNode)>;
    };
    value: StringConstructor;
    disabled: BooleanConstructor;
    payload: {
        type: PropType<Record<string, any>>;
        default: Record<string, any>;
    };
};
export type BaseOptionsProps = Partial<ExtractPropTypes<typeof baseOptionsProps>> & Partial<HTMLAttributes>;
export type OptionProps = Partial<ExtractPropTypes<typeof optionProps>> & Partial<HTMLAttributes>;
export declare const optionOptions: {
    name: string;
    props: {
        label: {
            default: VueNode | ((o: BaseOptionsProps) => VueNode);
            type: PropType<VueNode | ((o: BaseOptionsProps) => VueNode)>;
        };
        value: StringConstructor;
        disabled: BooleanConstructor;
        payload: {
            type: PropType<Record<string, any>>;
            default: Record<string, any>;
        };
    };
    render(_props: any, { slots }: any): any;
};
declare const _default: DefineComponent<ExtractPropTypes<{
    label: {
        default: VueNode | ((o: BaseOptionsProps) => VueNode);
        type: PropType<VueNode | ((o: BaseOptionsProps) => VueNode)>;
    };
    value: StringConstructor;
    disabled: BooleanConstructor;
    payload: {
        type: PropType<Record<string, any>>;
        default: Record<string, any>;
    };
}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ExtractPropTypes<{
    label: {
        default: VueNode | ((o: BaseOptionsProps) => VueNode);
        type: PropType<VueNode | ((o: BaseOptionsProps) => VueNode)>;
    };
    value: StringConstructor;
    disabled: BooleanConstructor;
    payload: {
        type: PropType<Record<string, any>>;
        default: Record<string, any>;
    };
}>> & Readonly<{}>, {
    label: VueNode | ((o: BaseOptionsProps) => VueNode);
    disabled: boolean;
    payload: Record<string, any>;
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
export default _default;
