import type { ExtractPropTypes } from 'vue';
import type SelectGroup from './select-group.vue';
export interface ISelectGroupItem {
    name?: string;
    value?: any;
    [key: string]: any;
}
export declare const selectGroupFormType: readonly ["input", "select", "range-picker", "treeSelect"];
export declare const selectGroupData: {
    readonly placeholder: {
        readonly type: import("vue").PropType<string>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly name: {
        readonly type: import("vue").PropType<string>;
        readonly required: true;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly value: {
        readonly type: import("vue").PropType<string>;
        readonly required: true;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly showFormType: {
        readonly type: import("vue").PropType<import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "input" | "select" | "range-picker" | "treeSelect", unknown>>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly fieldNames: {
        readonly type: import("vue").PropType<object>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly options: {
        readonly type: import("vue").PropType<any[]>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly list: {
        readonly type: import("vue").PropType<ISelectGroupItem[]>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly noFirstAddAll: {
        readonly type: import("vue").PropType<import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
};
export declare const selectGroupProps: {
    readonly selectValue: {
        readonly type: import("vue").PropType<string>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly value: {
        readonly type: import("vue").PropType<import("ll-plus/es/utils").EpPropMergeType<readonly [ArrayConstructor, StringConstructor, NumberConstructor, BooleanConstructor, ObjectConstructor], unknown, unknown>>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly data: import("ll-plus/es/utils").EpPropFinalized<import("vue").PropType<SelectGroupData[]>, unknown, unknown, () => any[], boolean>;
};
export declare const selectGroupEmits: {
    change: (selectV: string, value?: any) => boolean;
    onSelectChange: (selectV: string, item: SelectGroupData) => boolean;
};
export declare const LEFT_SELECT_MIN_WIDTH = 84;
export type SelectGroupProps = ExtractPropTypes<typeof selectGroupProps>;
export type SelectGroupData = ExtractPropTypes<typeof selectGroupData>;
export type SelectGroupFormType = SelectGroupData['showFormType'];
export type SelectGroupEmits = typeof selectGroupEmits;
export type SelectGroupInstance = InstanceType<typeof SelectGroup>;
