import { DropdownOption } from '../..';
type __VLS_Props = {
    /** 选项列表 */
    options: DropdownOption[];
    /** 选中值（支持多选） */
    modelValue?: string | number | Array<string | number>;
    /** 是否多选 */
    multiple?: boolean;
    /** 自定义主键字段（默认 'value'） */
    valueKey?: string;
    /** 自定义 label 字段（默认 'label'） */
    labelKey?: string;
    placeholder?: string;
    /** 下拉框宽度 */
    popperWidth?: number;
    dropdownExtraProps?: Record<string, any>;
    /** 选择项额外的 class */
    class?: string;
    /** 是否只读 */
    readonly?: boolean;
    /** 不显示右侧箭头 */
    noArrow?: boolean;
    /** 是否需要分组展示 */
    grouped?: boolean;
};
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        option?(_: {
            option: DropdownOption;
        }): any;
        option?(_: {
            option: DropdownOption;
        }): any;
        'option-icon'?(_: {
            option: DropdownOption;
        }): any;
        'option-icon'?(_: {
            option: DropdownOption;
        }): any;
    };
    refs: {
        dropdownRef: import('vue').CreateComponentPublicInstanceWithMixins<Record<string, any> & {}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, false, {}, {}, {}, {}, string, {}, any, import('vue').ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Record<string, any> & {}, {}, {}, {}, {}, {}> | null;
        triggerRef: HTMLDivElement;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
    getRef: import('vue').Ref<any, any>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    change: (val: string | number | (string | number)[], item?: DropdownOption | undefined) => any;
    edit: (option: DropdownOption) => any;
    "update:modelValue": (val: string | number | (string | number)[]) => any;
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
    onChange?: ((val: string | number | (string | number)[], item?: DropdownOption | undefined) => any) | undefined;
    onEdit?: ((option: DropdownOption) => any) | undefined;
    "onUpdate:modelValue"?: ((val: string | number | (string | number)[]) => any) | undefined;
}>, {
    options: DropdownOption[];
    placeholder: string;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    dropdownRef: import('vue').CreateComponentPublicInstanceWithMixins<Record<string, any> & {}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, false, {}, {}, {}, {}, string, {}, any, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Record<string, any> & {}, {}, {}, {}, {}, {}> | null;
    triggerRef: HTMLDivElement;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
