import { type ActiveRecord, type RuntimeModelField } from '@oinone/kunlun-engine';
import { ModalWidth } from '@oinone/kunlun-vue-ui-common';
import { RadioGroup as ARadioGroup } from 'ant-design-vue';
import { type PropType } from 'vue';
import { QuickFillType, type TableFieldOption } from './type';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    type: {
        type: PropType<QuickFillType>;
    };
    onTypeChange: {
        type: PropType<(val: QuickFillType) => void>;
    };
    showModal: {
        type: BooleanConstructor;
        required: false;
    };
    editableModelFields: {
        type: PropType<RuntimeModelField[]>;
        default: () => never[];
    };
    onToggleModal: {
        type: FunctionConstructor;
        required: true;
    };
    onSure: {
        type: FunctionConstructor;
        required: true;
    };
    onSubmit: {
        type: FunctionConstructor;
        required: true;
    };
    onStepChange: {
        type: FunctionConstructor;
        required: true;
    };
    dataSource: {
        type: PropType<ActiveRecord[]>;
        default: () => never[];
    };
    fillValueByDataSource: {
        type: FunctionConstructor;
        required: true;
    };
    step: {
        type: NumberConstructor;
        default: number;
    };
}>, {
    ModalWidth: typeof ModalWidth;
    excelRef: import("vue").Ref<any, any>;
    loading: import("vue").Ref<boolean, boolean>;
    type: import("vue").WritableComputedRef<QuickFillType, QuickFillType>;
    tableFields: import("vue").ComputedRef<TableFieldOption[]>;
    rowCount: import("vue").Ref<number, number>;
    onChangeRadio: (val: any) => void;
    onHandlerSure: () => Promise<void>;
    addRowCount: (addNumber?: number) => void;
    handleCancel: () => any;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    type: {
        type: PropType<QuickFillType>;
    };
    onTypeChange: {
        type: PropType<(val: QuickFillType) => void>;
    };
    showModal: {
        type: BooleanConstructor;
        required: false;
    };
    editableModelFields: {
        type: PropType<RuntimeModelField[]>;
        default: () => never[];
    };
    onToggleModal: {
        type: FunctionConstructor;
        required: true;
    };
    onSure: {
        type: FunctionConstructor;
        required: true;
    };
    onSubmit: {
        type: FunctionConstructor;
        required: true;
    };
    onStepChange: {
        type: FunctionConstructor;
        required: true;
    };
    dataSource: {
        type: PropType<ActiveRecord[]>;
        default: () => never[];
    };
    fillValueByDataSource: {
        type: FunctionConstructor;
        required: true;
    };
    step: {
        type: NumberConstructor;
        default: number;
    };
}>> & Readonly<{}>, {
    showModal: boolean;
    editableModelFields: RuntimeModelField[];
    dataSource: ActiveRecord[];
    step: number;
}, {}, {
    OioIcon: any;
    OioModal: any;
    OioButton: any;
    ARadioGroup: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        prefixCls: StringConstructor;
        value: import("vue-types").VueTypeValidableDef<any>;
        size: {
            type: import("vue").PropType<"default" | "small" | "large">;
            default: "default" | "small" | "large";
        };
        options: {
            type: import("vue").PropType<(string | number | import("ant-design-vue/es/radio/Group").RadioGroupChildOption)[]>;
            default: (string | number | import("ant-design-vue/es/radio/Group").RadioGroupChildOption)[];
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        name: StringConstructor;
        buttonStyle: {
            type: import("vue").PropType<import("ant-design-vue/es/radio/interface").RadioGroupButtonStyle>;
            default: import("ant-design-vue/es/radio/interface").RadioGroupButtonStyle;
        };
        id: StringConstructor;
        optionType: {
            type: import("vue").PropType<import("ant-design-vue/es/radio/interface").RadioGroupOptionType>;
            default: import("ant-design-vue/es/radio/interface").RadioGroupOptionType;
        };
        onChange: {
            type: import("vue").PropType<(e: import("ant-design-vue").RadioChangeEvent) => void>;
            default: (e: import("ant-design-vue").RadioChangeEvent) => void;
        };
        'onUpdate:value': {
            type: import("vue").PropType<(val: any) => void>;
            default: (val: any) => void;
        };
    }>, () => import("ant-design-vue/es/_util/type").VueNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        prefixCls: StringConstructor;
        value: import("vue-types").VueTypeValidableDef<any>;
        size: {
            type: import("vue").PropType<"default" | "small" | "large">;
            default: "default" | "small" | "large";
        };
        options: {
            type: import("vue").PropType<(string | number | import("ant-design-vue/es/radio/Group").RadioGroupChildOption)[]>;
            default: (string | number | import("ant-design-vue/es/radio/Group").RadioGroupChildOption)[];
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        name: StringConstructor;
        buttonStyle: {
            type: import("vue").PropType<import("ant-design-vue/es/radio/interface").RadioGroupButtonStyle>;
            default: import("ant-design-vue/es/radio/interface").RadioGroupButtonStyle;
        };
        id: StringConstructor;
        optionType: {
            type: import("vue").PropType<import("ant-design-vue/es/radio/interface").RadioGroupOptionType>;
            default: import("ant-design-vue/es/radio/interface").RadioGroupOptionType;
        };
        onChange: {
            type: import("vue").PropType<(e: import("ant-design-vue").RadioChangeEvent) => void>;
            default: (e: import("ant-design-vue").RadioChangeEvent) => void;
        };
        'onUpdate:value': {
            type: import("vue").PropType<(val: any) => void>;
            default: (val: any) => void;
        };
    }>> & Readonly<{}>, {
        size: "default" | "small" | "large";
        onChange: (e: import("ant-design-vue").RadioChangeEvent) => void;
        disabled: boolean;
        'onUpdate:value': (val: any) => void;
        options: (string | number | import("ant-design-vue/es/radio/Group").RadioGroupChildOption)[];
        buttonStyle: import("ant-design-vue/es/radio/interface").RadioGroupButtonStyle;
        optionType: import("ant-design-vue/es/radio/interface").RadioGroupOptionType;
    }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
    ARadio: {
        new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
            prefixCls: StringConstructor;
            checked: {
                type: BooleanConstructor;
                default: boolean;
            };
            disabled: {
                type: BooleanConstructor;
                default: boolean;
            };
            isGroup: {
                type: BooleanConstructor;
                default: boolean;
            };
            value: import("vue-types").VueTypeValidableDef<any>;
            name: StringConstructor;
            id: StringConstructor;
            autofocus: {
                type: BooleanConstructor;
                default: boolean;
            };
            onChange: {
                type: import("vue").PropType<(event: import("ant-design-vue").RadioChangeEvent) => void>;
                default: (event: import("ant-design-vue").RadioChangeEvent) => void;
            };
            onFocus: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            };
            onBlur: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            };
            onClick: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
            };
            "onUpdate:checked": {
                type: import("vue").PropType<(checked: boolean) => void>;
                default: (checked: boolean) => void;
            };
            "onUpdate:value": {
                type: import("vue").PropType<(checked: boolean) => void>;
                default: (checked: boolean) => void;
            };
        }>> & Readonly<{}>, () => import("ant-design-vue/es/_util/type").VueNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
            onClick: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
            onFocus: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            onBlur: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            onChange: (event: import("ant-design-vue").RadioChangeEvent) => void;
            disabled: boolean;
            autofocus: boolean;
            checked: boolean;
            isGroup: boolean;
            "onUpdate:checked": (checked: boolean) => void;
            "onUpdate:value": (checked: boolean) => void;
        }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import("vue").ExtractPropTypes<{
            prefixCls: StringConstructor;
            checked: {
                type: BooleanConstructor;
                default: boolean;
            };
            disabled: {
                type: BooleanConstructor;
                default: boolean;
            };
            isGroup: {
                type: BooleanConstructor;
                default: boolean;
            };
            value: import("vue-types").VueTypeValidableDef<any>;
            name: StringConstructor;
            id: StringConstructor;
            autofocus: {
                type: BooleanConstructor;
                default: boolean;
            };
            onChange: {
                type: import("vue").PropType<(event: import("ant-design-vue").RadioChangeEvent) => void>;
                default: (event: import("ant-design-vue").RadioChangeEvent) => void;
            };
            onFocus: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            };
            onBlur: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            };
            onClick: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
            };
            "onUpdate:checked": {
                type: import("vue").PropType<(checked: boolean) => void>;
                default: (checked: boolean) => void;
            };
            "onUpdate:value": {
                type: import("vue").PropType<(checked: boolean) => void>;
                default: (checked: boolean) => void;
            };
        }>> & Readonly<{}>, () => import("ant-design-vue/es/_util/type").VueNode, {}, {}, {}, {
            onClick: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
            onFocus: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            onBlur: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            onChange: (event: import("ant-design-vue").RadioChangeEvent) => void;
            disabled: boolean;
            autofocus: boolean;
            checked: boolean;
            isGroup: boolean;
            "onUpdate:checked": (checked: boolean) => void;
            "onUpdate:value": (checked: boolean) => void;
        }>;
        __isFragment?: never;
        __isTeleport?: never;
        __isSuspense?: never;
    } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
        prefixCls: StringConstructor;
        checked: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        isGroup: {
            type: BooleanConstructor;
            default: boolean;
        };
        value: import("vue-types").VueTypeValidableDef<any>;
        name: StringConstructor;
        id: StringConstructor;
        autofocus: {
            type: BooleanConstructor;
            default: boolean;
        };
        onChange: {
            type: import("vue").PropType<(event: import("ant-design-vue").RadioChangeEvent) => void>;
            default: (event: import("ant-design-vue").RadioChangeEvent) => void;
        };
        onFocus: {
            type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
            default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
        };
        onBlur: {
            type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
            default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
        };
        onClick: {
            type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler>;
            default: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
        };
        'onUpdate:checked': {
            type: import("vue").PropType<(checked: boolean) => void>;
            default: (checked: boolean) => void;
        };
        'onUpdate:value': {
            type: import("vue").PropType<(checked: boolean) => void>;
            default: (checked: boolean) => void;
        };
    }>> & Readonly<{}>, () => import("ant-design-vue/es/_util/type").VueNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
        onClick: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
        onFocus: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
        onBlur: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
        onChange: (event: import("ant-design-vue").RadioChangeEvent) => void;
        disabled: boolean;
        autofocus: boolean;
        checked: boolean;
        isGroup: boolean;
        'onUpdate:checked': (checked: boolean) => void;
        'onUpdate:value': (checked: boolean) => void;
    }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & (import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (import("vue").Plugin<any[]> & {
        readonly Group: typeof ARadioGroup;
        readonly Button: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
            prefixCls: StringConstructor;
            checked: {
                type: BooleanConstructor;
                default: boolean;
            };
            disabled: {
                type: BooleanConstructor;
                default: boolean;
            };
            isGroup: {
                type: BooleanConstructor;
                default: boolean;
            };
            value: import("vue-types").VueTypeValidableDef<any>;
            name: StringConstructor;
            id: StringConstructor;
            autofocus: {
                type: BooleanConstructor;
                default: boolean;
            };
            onChange: {
                type: import("vue").PropType<(event: import("ant-design-vue").RadioChangeEvent) => void>;
                default: (event: import("ant-design-vue").RadioChangeEvent) => void;
            };
            onFocus: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            };
            onBlur: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            };
            onClick: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
            };
            'onUpdate:checked': {
                type: import("vue").PropType<(checked: boolean) => void>;
                default: (checked: boolean) => void;
            };
            'onUpdate:value': {
                type: import("vue").PropType<(checked: boolean) => void>;
                default: (checked: boolean) => void;
            };
        }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
            prefixCls: StringConstructor;
            checked: {
                type: BooleanConstructor;
                default: boolean;
            };
            disabled: {
                type: BooleanConstructor;
                default: boolean;
            };
            isGroup: {
                type: BooleanConstructor;
                default: boolean;
            };
            value: import("vue-types").VueTypeValidableDef<any>;
            name: StringConstructor;
            id: StringConstructor;
            autofocus: {
                type: BooleanConstructor;
                default: boolean;
            };
            onChange: {
                type: import("vue").PropType<(event: import("ant-design-vue").RadioChangeEvent) => void>;
                default: (event: import("ant-design-vue").RadioChangeEvent) => void;
            };
            onFocus: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            };
            onBlur: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").FocusEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            };
            onClick: {
                type: import("vue").PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler>;
                default: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
            };
            'onUpdate:checked': {
                type: import("vue").PropType<(checked: boolean) => void>;
                default: (checked: boolean) => void;
            };
            'onUpdate:value': {
                type: import("vue").PropType<(checked: boolean) => void>;
                default: (checked: boolean) => void;
            };
        }>> & Readonly<{}>, {
            onClick: import("ant-design-vue/es/_util/EventInterface").MouseEventHandler;
            onFocus: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            onBlur: import("ant-design-vue/es/_util/EventInterface").FocusEventHandler;
            onChange: (event: import("ant-design-vue").RadioChangeEvent) => void;
            disabled: boolean;
            autofocus: boolean;
            checked: boolean;
            isGroup: boolean;
            'onUpdate:checked': (checked: boolean) => void;
            'onUpdate:value': (checked: boolean) => void;
        }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
    }));
    Excel: any;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
