import { DropdownValue } from './type';
import { KeysType } from '../common';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    disabled: BooleanConstructor;
    footer: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue>;
    };
    icon: {
        type: import("vue").PropType<((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue)[] | ((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue)>;
        default: ((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue)[] | ((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue);
    };
    keys: {
        type: import("vue").PropType<KeysType>;
    };
    label: {
        type: StringConstructor;
        default: string;
    };
    multiple: BooleanConstructor;
    options: {
        type: import("vue").PropType<import("@/components").DropdownOption[]>;
        default: () => import("@/components").DropdownOption[];
    };
    optionsColumns: {
        type: import("vue").PropType<string | number>;
        default: string | number;
    };
    placement: {
        type: import("vue").PropType<"left" | "right">;
        default: "left" | "right";
        validator(val: "left" | "right"): boolean;
    };
    value: {
        type: import("vue").PropType<DropdownValue>;
        default: DropdownValue;
    };
    modelValue: {
        type: import("vue").PropType<DropdownValue>;
        default: DropdownValue;
    };
    defaultValue: {
        type: import("vue").PropType<DropdownValue>;
        default: DropdownValue;
    };
    onChange: import("vue").PropType<(value: DropdownValue) => void>;
    onClose: import("vue").PropType<() => void>;
    onClosed: import("vue").PropType<() => void>;
    onConfirm: import("vue").PropType<(value: DropdownValue) => void>;
    onOpen: import("vue").PropType<() => void>;
    onOpened: import("vue").PropType<() => void>;
    onReset: import("vue").PropType<(value: DropdownValue) => void>;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "close" | "closed" | "open" | "opened" | "update:modelValue" | "update:value")[], "change" | "close" | "closed" | "open" | "opened" | "update:modelValue" | "update:value", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    disabled: BooleanConstructor;
    footer: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue>;
    };
    icon: {
        type: import("vue").PropType<((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue)[] | ((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue)>;
        default: ((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue)[] | ((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue);
    };
    keys: {
        type: import("vue").PropType<KeysType>;
    };
    label: {
        type: StringConstructor;
        default: string;
    };
    multiple: BooleanConstructor;
    options: {
        type: import("vue").PropType<import("@/components").DropdownOption[]>;
        default: () => import("@/components").DropdownOption[];
    };
    optionsColumns: {
        type: import("vue").PropType<string | number>;
        default: string | number;
    };
    placement: {
        type: import("vue").PropType<"left" | "right">;
        default: "left" | "right";
        validator(val: "left" | "right"): boolean;
    };
    value: {
        type: import("vue").PropType<DropdownValue>;
        default: DropdownValue;
    };
    modelValue: {
        type: import("vue").PropType<DropdownValue>;
        default: DropdownValue;
    };
    defaultValue: {
        type: import("vue").PropType<DropdownValue>;
        default: DropdownValue;
    };
    onChange: import("vue").PropType<(value: DropdownValue) => void>;
    onClose: import("vue").PropType<() => void>;
    onClosed: import("vue").PropType<() => void>;
    onConfirm: import("vue").PropType<(value: DropdownValue) => void>;
    onOpen: import("vue").PropType<() => void>;
    onOpened: import("vue").PropType<() => void>;
    onReset: import("vue").PropType<(value: DropdownValue) => void>;
}>> & Readonly<{
    onChange?: (...args: any[]) => any;
    onClose?: (...args: any[]) => any;
    onClosed?: (...args: any[]) => any;
    onOpen?: (...args: any[]) => any;
    onOpened?: (...args: any[]) => any;
    "onUpdate:modelValue"?: (...args: any[]) => any;
    "onUpdate:value"?: (...args: any[]) => any;
}>, {
    disabled: boolean;
    icon: ((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue)[] | ((h: typeof import("vue").h) => import("@/index-lib").SlotReturnValue);
    label: string;
    multiple: boolean;
    options: import("@/components").DropdownOption[];
    optionsColumns: string | number;
    placement: "left" | "right";
    value: DropdownValue;
    modelValue: DropdownValue;
    defaultValue: DropdownValue;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
