import { PropType } from "vue";
import type { sourceItemType } from "../utils";
export interface OptionSourceItem extends sourceItemType {
    title: string | number;
    source: any[];
}
declare const _default: import("vue").DefineComponent<{
    styles: {
        type: ObjectConstructor;
        default: () => {};
    };
    modelValue: {
        type: PropType<any[]>;
        default: () => never[];
    };
    keyConfig: {
        type: PropType<import("../utils").keyConfigType>;
        default: () => {
            labelKey: string;
            valueKey: string;
            disabledKey: string;
            childrenKey: string;
        };
    };
    source: {
        type: PropType<OptionSourceItem[]>;
        default: () => never[];
    };
    multiple: {
        type: BooleanConstructor;
        default: boolean;
    };
    showCheckBox: {
        type: BooleanConstructor;
        default: boolean;
    };
}, {
    valueChangeEvt: () => Promise<void>;
    groupSelectedValue: import("vue").Ref<any[]>;
    selectEvt: (index: number, { item }: {
        item: unknown;
    }) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "select")[], "update:modelValue" | "change" | "select", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    styles?: unknown;
    modelValue?: unknown;
    keyConfig?: unknown;
    source?: unknown;
    multiple?: unknown;
    showCheckBox?: unknown;
} & {
    styles: Record<string, any>;
    modelValue: any[];
    source: OptionSourceItem[];
    keyConfig: import("../utils").keyConfigType;
    multiple: boolean;
    showCheckBox: boolean;
} & {}> & {
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
    onChange?: ((...args: any[]) => any) | undefined;
    onSelect?: ((...args: any[]) => any) | undefined;
}, {
    styles: Record<string, any>;
    modelValue: any[];
    source: OptionSourceItem[];
    keyConfig: import("../utils").keyConfigType;
    multiple: boolean;
    showCheckBox: boolean;
}>;
export default _default;
