import { ApFormProps, UpdateModelOptimizeFn, ApFormInternalInstance, WatchFunc } from '../../../ap-form';
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions, ComponentInternalInstance, ExtractPropTypes, PropType, HTMLAttributes, VNodeProps, AllowedComponentProps, ComponentCustomProps, CreateComponentPublicInstanceWithMixins, GlobalComponents, GlobalDirectives, Slot, ComponentPublicInstance, ComponentOptionsBase, DebuggerEvent, nextTick, WatchOptions, WatchStopHandle, ShallowUnwrapRef, ComponentCustomProperties } from 'vue';
import { ColSize } from '@aplus-frontend/antdv/es/grid';
import { FormLabelAlign, ValidateMessages, FieldData, ValidateErrorEntity, NamePath, ValidateOptions, InternalNamePath } from '@aplus-frontend/antdv/es/form/interface';
import { RequiredMark } from '@aplus-frontend/antdv/es/form/Form';
import { RuleObject } from '@aplus-frontend/antdv/es/form';
import { Options } from '../../../../node_modules/scroll-into-view-if-needed';
import { Recordable } from '../../../type';
import { VueTypeDef, VueTypeValidableDef } from '../../../../node_modules/vue-types';
import { SizeType } from '@aplus-frontend/antdv/es/button';
import { VueNode } from '@aplus-frontend/antdv/es/_util/type';
import { OnCleanup } from '@vue/reactivity';
type __VLS_Props = {
    maxViewNum: number;
};
declare const _default: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
    formRef: ({
        $: ComponentInternalInstance;
        $data: {};
        $props: {
            readonly size?: "small" | "large" | "middle" | undefined;
            readonly onSubmit?: ((e: Event) => void) | undefined;
            readonly layout?: string | undefined;
            readonly disabled?: boolean | undefined;
            readonly labelCol?: (Partial< ExtractPropTypes<{
                span: (StringConstructor | NumberConstructor)[];
                order: (StringConstructor | NumberConstructor)[];
                offset: (StringConstructor | NumberConstructor)[];
                push: (StringConstructor | NumberConstructor)[];
                pull: (StringConstructor | NumberConstructor)[];
                xs: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                sm: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                md: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                lg: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                xl: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                xxl: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                prefixCls: StringConstructor;
                flex: (StringConstructor | NumberConstructor)[];
            }>> & HTMLAttributes) | undefined;
            readonly wrapperCol?: (Partial< ExtractPropTypes<{
                span: (StringConstructor | NumberConstructor)[];
                order: (StringConstructor | NumberConstructor)[];
                offset: (StringConstructor | NumberConstructor)[];
                push: (StringConstructor | NumberConstructor)[];
                pull: (StringConstructor | NumberConstructor)[];
                xs: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                sm: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                md: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                lg: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                xl: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                xxl: {
                    type: PropType<string | number | ColSize>;
                    default: string | number | ColSize;
                };
                prefixCls: StringConstructor;
                flex: (StringConstructor | NumberConstructor)[];
            }>> & HTMLAttributes) | undefined;
            readonly colon?: boolean | undefined;
            readonly labelAlign?: FormLabelAlign | undefined;
            readonly labelWrap?: boolean | undefined;
            readonly prefixCls?: string | undefined;
            readonly requiredMark?: "" | RequiredMark | undefined;
            readonly hideRequiredMark?: boolean | undefined;
            readonly rules?: {
                [k: string]: RuleObject | RuleObject[];
            } | undefined;
            readonly validateMessages?: ValidateMessages | undefined;
            readonly validateOnRuleChange?: boolean | undefined;
            readonly scrollToFirstError?: boolean | Options<any> | undefined;
            readonly name?: string | undefined;
            readonly validateTrigger?: string | string[] | undefined;
            readonly onFieldsChange?: ((changedFields: FieldData[], allFields: FieldData[]) => void) | undefined;
            readonly onFinish?: ((values: any) => void) | undefined;
            readonly onFinishFailed?: ((errorInfo: ValidateErrorEntity<any>) => void) | undefined;
            readonly onValidate?: ((name: string | number | string[] | number[], status: boolean, errors: string[]) => void) | undefined;
            readonly variant?: "filled" | "outlined" | "borderless" | "underlined" | undefined;
            readonly initialValues?: Recordable | undefined;
            readonly onValuesChange?: ((changedValues: Recordable, allValues: Recordable, fieldName: NamePath) => void) | undefined;
            readonly syncToUrl?: boolean | ((values: Recordable, type: "get" | "set") => Recordable) | undefined;
            readonly syncToUrlPriority?: boolean | undefined;
        } & VNodeProps & AllowedComponentProps & ComponentCustomProps;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        } & {
            formRef: CreateComponentPublicInstanceWithMixins<Readonly< ExtractPropTypes<{
                layout: VueTypeDef<string>;
                labelCol: {
                    type: PropType<Partial< ExtractPropTypes<{
                        span: (StringConstructor | NumberConstructor)[];
                        order: (StringConstructor | NumberConstructor)[];
                        offset: (StringConstructor | NumberConstructor)[];
                        push: (StringConstructor | NumberConstructor)[];
                        pull: (StringConstructor | NumberConstructor)[];
                        xs: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        sm: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        md: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        lg: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xxl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        prefixCls: StringConstructor;
                        flex: (StringConstructor | NumberConstructor)[];
                    }>> & HTMLAttributes>;
                    default: Partial< ExtractPropTypes<{
                        span: (StringConstructor | NumberConstructor)[];
                        order: (StringConstructor | NumberConstructor)[];
                        offset: (StringConstructor | NumberConstructor)[];
                        push: (StringConstructor | NumberConstructor)[];
                        pull: (StringConstructor | NumberConstructor)[];
                        xs: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        sm: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        md: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        lg: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xxl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        prefixCls: StringConstructor;
                        flex: (StringConstructor | NumberConstructor)[];
                    }>> & HTMLAttributes;
                };
                wrapperCol: {
                    type: PropType<Partial< ExtractPropTypes<{
                        span: (StringConstructor | NumberConstructor)[];
                        order: (StringConstructor | NumberConstructor)[];
                        offset: (StringConstructor | NumberConstructor)[];
                        push: (StringConstructor | NumberConstructor)[];
                        pull: (StringConstructor | NumberConstructor)[];
                        xs: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        sm: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        md: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        lg: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xxl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        prefixCls: StringConstructor;
                        flex: (StringConstructor | NumberConstructor)[];
                    }>> & HTMLAttributes>;
                    default: Partial< ExtractPropTypes<{
                        span: (StringConstructor | NumberConstructor)[];
                        order: (StringConstructor | NumberConstructor)[];
                        offset: (StringConstructor | NumberConstructor)[];
                        push: (StringConstructor | NumberConstructor)[];
                        pull: (StringConstructor | NumberConstructor)[];
                        xs: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        sm: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        md: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        lg: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xxl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        prefixCls: StringConstructor;
                        flex: (StringConstructor | NumberConstructor)[];
                    }>> & HTMLAttributes;
                };
                colon: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                labelAlign: {
                    type: PropType<FormLabelAlign>;
                    default: FormLabelAlign;
                };
                labelWrap: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                prefixCls: StringConstructor;
                requiredMark: {
                    type: PropType<"" | RequiredMark>;
                    default: "" | RequiredMark;
                };
                hideRequiredMark: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                model: VueTypeValidableDef<{
                    [key: string]: any;
                }> & {
                    default: () => {
                        [key: string]: any;
                    };
                };
                rules: {
                    type: PropType<{
                        [k: string]: RuleObject | RuleObject[];
                    }>;
                    default: {
                        [k: string]: RuleObject | RuleObject[];
                    };
                };
                validateMessages: {
                    type: PropType<ValidateMessages>;
                    default: ValidateMessages;
                };
                validateOnRuleChange: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                scrollToFirstError: {
                    default: boolean | Options<any>;
                    type: PropType<boolean | Options<any>>;
                };
                onSubmit: {
                    type: PropType<(e: Event) => void>;
                    default: (e: Event) => void;
                };
                name: StringConstructor;
                validateTrigger: {
                    type: PropType<string | string[]>;
                    default: string | string[];
                };
                size: {
                    type: PropType<SizeType>;
                    default: SizeType;
                };
                disabled: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                onValuesChange: {
                    type: PropType<(changedValues: any, values: any) => void>;
                    default: (changedValues: any, values: any) => void;
                };
                onFieldsChange: {
                    type: PropType<(changedFields: FieldData[], allFields: FieldData[]) => void>;
                    default: (changedFields: FieldData[], allFields: FieldData[]) => void;
                };
                onFinish: {
                    type: PropType<(values: any) => void>;
                    default: (values: any) => void;
                };
                onFinishFailed: {
                    type: PropType<(errorInfo: ValidateErrorEntity<any>) => void>;
                    default: (errorInfo: ValidateErrorEntity<any>) => void;
                };
                onValidate: {
                    type: PropType<(name: string | number | string[] | number[], status: boolean, errors: string[]) => void>;
                    default: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
                };
                variant: {
                    type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
                    default: "filled" | "outlined" | "borderless" | "underlined";
                };
            }>> & Readonly<{}>, () => VueNode, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {
                size: SizeType;
                onSubmit: (e: Event) => void;
                disabled: boolean;
                validateTrigger: string | string[];
                onValuesChange: (changedValues: any, values: any) => void;
                onFieldsChange: (changedFields: FieldData[], allFields: FieldData[]) => void;
                onFinish: (values: any) => void;
                onFinishFailed: (errorInfo: ValidateErrorEntity<any>) => void;
                onValidate: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
                labelCol: Partial< ExtractPropTypes<{
                    span: (StringConstructor | NumberConstructor)[];
                    order: (StringConstructor | NumberConstructor)[];
                    offset: (StringConstructor | NumberConstructor)[];
                    push: (StringConstructor | NumberConstructor)[];
                    pull: (StringConstructor | NumberConstructor)[];
                    xs: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    sm: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    md: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    lg: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    xl: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    xxl: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    prefixCls: StringConstructor;
                    flex: (StringConstructor | NumberConstructor)[];
                }>> & HTMLAttributes;
                wrapperCol: Partial< ExtractPropTypes<{
                    span: (StringConstructor | NumberConstructor)[];
                    order: (StringConstructor | NumberConstructor)[];
                    offset: (StringConstructor | NumberConstructor)[];
                    push: (StringConstructor | NumberConstructor)[];
                    pull: (StringConstructor | NumberConstructor)[];
                    xs: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    sm: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    md: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    lg: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    xl: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    xxl: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    prefixCls: StringConstructor;
                    flex: (StringConstructor | NumberConstructor)[];
                }>> & HTMLAttributes;
                colon: boolean;
                labelAlign: FormLabelAlign;
                labelWrap: boolean;
                requiredMark: "" | RequiredMark;
                hideRequiredMark: boolean;
                model: {
                    [key: string]: any;
                };
                rules: {
                    [k: string]: RuleObject | RuleObject[];
                };
                validateMessages: ValidateMessages;
                validateOnRuleChange: boolean;
                scrollToFirstError: boolean | Options<any>;
                variant: "filled" | "outlined" | "borderless" | "underlined";
            }, true, {}, {}, GlobalComponents, GlobalDirectives, string, {}, any, ComponentProvideOptions, {
                P: {};
                B: {};
                D: {};
                C: {};
                M: {};
                Defaults: {};
            }, Readonly< ExtractPropTypes<{
                layout: VueTypeDef<string>;
                labelCol: {
                    type: PropType<Partial< ExtractPropTypes<{
                        span: (StringConstructor | NumberConstructor)[];
                        order: (StringConstructor | NumberConstructor)[];
                        offset: (StringConstructor | NumberConstructor)[];
                        push: (StringConstructor | NumberConstructor)[];
                        pull: (StringConstructor | NumberConstructor)[];
                        xs: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        sm: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        md: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        lg: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xxl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        prefixCls: StringConstructor;
                        flex: (StringConstructor | NumberConstructor)[];
                    }>> & HTMLAttributes>;
                    default: Partial< ExtractPropTypes<{
                        span: (StringConstructor | NumberConstructor)[];
                        order: (StringConstructor | NumberConstructor)[];
                        offset: (StringConstructor | NumberConstructor)[];
                        push: (StringConstructor | NumberConstructor)[];
                        pull: (StringConstructor | NumberConstructor)[];
                        xs: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        sm: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        md: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        lg: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xxl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        prefixCls: StringConstructor;
                        flex: (StringConstructor | NumberConstructor)[];
                    }>> & HTMLAttributes;
                };
                wrapperCol: {
                    type: PropType<Partial< ExtractPropTypes<{
                        span: (StringConstructor | NumberConstructor)[];
                        order: (StringConstructor | NumberConstructor)[];
                        offset: (StringConstructor | NumberConstructor)[];
                        push: (StringConstructor | NumberConstructor)[];
                        pull: (StringConstructor | NumberConstructor)[];
                        xs: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        sm: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        md: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        lg: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xxl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        prefixCls: StringConstructor;
                        flex: (StringConstructor | NumberConstructor)[];
                    }>> & HTMLAttributes>;
                    default: Partial< ExtractPropTypes<{
                        span: (StringConstructor | NumberConstructor)[];
                        order: (StringConstructor | NumberConstructor)[];
                        offset: (StringConstructor | NumberConstructor)[];
                        push: (StringConstructor | NumberConstructor)[];
                        pull: (StringConstructor | NumberConstructor)[];
                        xs: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        sm: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        md: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        lg: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        xxl: {
                            type: PropType<string | number | ColSize>;
                            default: string | number | ColSize;
                        };
                        prefixCls: StringConstructor;
                        flex: (StringConstructor | NumberConstructor)[];
                    }>> & HTMLAttributes;
                };
                colon: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                labelAlign: {
                    type: PropType<FormLabelAlign>;
                    default: FormLabelAlign;
                };
                labelWrap: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                prefixCls: StringConstructor;
                requiredMark: {
                    type: PropType<"" | RequiredMark>;
                    default: "" | RequiredMark;
                };
                hideRequiredMark: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                model: VueTypeValidableDef<{
                    [key: string]: any;
                }> & {
                    default: () => {
                        [key: string]: any;
                    };
                };
                rules: {
                    type: PropType<{
                        [k: string]: RuleObject | RuleObject[];
                    }>;
                    default: {
                        [k: string]: RuleObject | RuleObject[];
                    };
                };
                validateMessages: {
                    type: PropType<ValidateMessages>;
                    default: ValidateMessages;
                };
                validateOnRuleChange: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                scrollToFirstError: {
                    default: boolean | Options<any>;
                    type: PropType<boolean | Options<any>>;
                };
                onSubmit: {
                    type: PropType<(e: Event) => void>;
                    default: (e: Event) => void;
                };
                name: StringConstructor;
                validateTrigger: {
                    type: PropType<string | string[]>;
                    default: string | string[];
                };
                size: {
                    type: PropType<SizeType>;
                    default: SizeType;
                };
                disabled: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                onValuesChange: {
                    type: PropType<(changedValues: any, values: any) => void>;
                    default: (changedValues: any, values: any) => void;
                };
                onFieldsChange: {
                    type: PropType<(changedFields: FieldData[], allFields: FieldData[]) => void>;
                    default: (changedFields: FieldData[], allFields: FieldData[]) => void;
                };
                onFinish: {
                    type: PropType<(values: any) => void>;
                    default: (values: any) => void;
                };
                onFinishFailed: {
                    type: PropType<(errorInfo: ValidateErrorEntity<any>) => void>;
                    default: (errorInfo: ValidateErrorEntity<any>) => void;
                };
                onValidate: {
                    type: PropType<(name: string | number | string[] | number[], status: boolean, errors: string[]) => void>;
                    default: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
                };
                variant: {
                    type: PropType<"filled" | "outlined" | "borderless" | "underlined">;
                    default: "filled" | "outlined" | "borderless" | "underlined";
                };
            }>> & Readonly<{}>, () => VueNode, {}, {}, {}, {
                size: SizeType;
                onSubmit: (e: Event) => void;
                disabled: boolean;
                validateTrigger: string | string[];
                onValuesChange: (changedValues: any, values: any) => void;
                onFieldsChange: (changedFields: FieldData[], allFields: FieldData[]) => void;
                onFinish: (values: any) => void;
                onFinishFailed: (errorInfo: ValidateErrorEntity<any>) => void;
                onValidate: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
                labelCol: Partial< ExtractPropTypes<{
                    span: (StringConstructor | NumberConstructor)[];
                    order: (StringConstructor | NumberConstructor)[];
                    offset: (StringConstructor | NumberConstructor)[];
                    push: (StringConstructor | NumberConstructor)[];
                    pull: (StringConstructor | NumberConstructor)[];
                    xs: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    sm: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    md: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    lg: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    xl: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    xxl: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    prefixCls: StringConstructor;
                    flex: (StringConstructor | NumberConstructor)[];
                }>> & HTMLAttributes;
                wrapperCol: Partial< ExtractPropTypes<{
                    span: (StringConstructor | NumberConstructor)[];
                    order: (StringConstructor | NumberConstructor)[];
                    offset: (StringConstructor | NumberConstructor)[];
                    push: (StringConstructor | NumberConstructor)[];
                    pull: (StringConstructor | NumberConstructor)[];
                    xs: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    sm: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    md: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    lg: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    xl: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    xxl: {
                        type: PropType<string | number | ColSize>;
                        default: string | number | ColSize;
                    };
                    prefixCls: StringConstructor;
                    flex: (StringConstructor | NumberConstructor)[];
                }>> & HTMLAttributes;
                colon: boolean;
                labelAlign: FormLabelAlign;
                labelWrap: boolean;
                requiredMark: "" | RequiredMark;
                hideRequiredMark: boolean;
                model: {
                    [key: string]: any;
                };
                rules: {
                    [k: string]: RuleObject | RuleObject[];
                };
                validateMessages: ValidateMessages;
                validateOnRuleChange: boolean;
                scrollToFirstError: boolean | Options<any>;
                variant: "filled" | "outlined" | "borderless" | "underlined";
            }> | null;
        };
        $slots: Readonly<{
            [name: string]: Slot<any> | undefined;
        }>;
        $root: ComponentPublicInstance | null;
        $parent: ComponentPublicInstance | null;
        $host: Element | null;
        $emit: (event: string, ...args: any[]) => void;
        $el: any;
        $options: ComponentOptionsBase<Readonly<ApFormProps> & Readonly<{}>, {
            setFieldsValue: (fields: Partial<any>) => void;
            setFieldValue: (name: NamePath, value: any, triggerChange?: boolean, optimizeFn?: UpdateModelOptimizeFn) => void;
            resetFields: () => Promise<void>;
            clearValidate: (name?: NamePath) => void;
            validateFields: (nameList?: NamePath[] | string, options?: ValidateOptions) => Promise<Partial<any>> | undefined;
            getFieldsValue: (nameList?: true | InternalNamePath[]) => Partial<any> | undefined;
            validate: (nameList?: NamePath[] | string, options?: ValidateOptions) => Promise<Partial<any>> | undefined;
            scrollToField: (name: NamePath, options?: any) => void;
            getInternalInstance: (mark: string) => ApFormInternalInstance | undefined;
            validateFieldsReturnTransformed: (nameList?: NamePath[] | string, options?: ValidateOptions) => Promise<Partial<any>> | undefined;
            getFieldsValueTransformed: (nameList?: true | InternalNamePath[]) => Partial<any> | undefined;
            registerWatch: (callback: WatchFunc, inner: boolean) => () => void;
        }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
            layout: string;
            colon: boolean;
            labelAlign: FormLabelAlign;
            hideRequiredMark: boolean;
            validateOnRuleChange: boolean;
            validateTrigger: string | string[];
            syncToUrl: boolean | ((values: Recordable, type: "get" | "set") => Recordable);
        }, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
            beforeCreate?: (() => void) | (() => void)[];
            created?: (() => void) | (() => void)[];
            beforeMount?: (() => void) | (() => void)[];
            mounted?: (() => void) | (() => void)[];
            beforeUpdate?: (() => void) | (() => void)[];
            updated?: (() => void) | (() => void)[];
            activated?: (() => void) | (() => void)[];
            deactivated?: (() => void) | (() => void)[];
            beforeDestroy?: (() => void) | (() => void)[];
            beforeUnmount?: (() => void) | (() => void)[];
            destroyed?: (() => void) | (() => void)[];
            unmounted?: (() => void) | (() => void)[];
            renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
            renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
            errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
        };
        $forceUpdate: () => void;
        $nextTick: nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
    } & Readonly<{
        layout: string;
        colon: boolean;
        labelAlign: FormLabelAlign;
        hideRequiredMark: boolean;
        validateOnRuleChange: boolean;
        validateTrigger: string | string[];
        syncToUrl: boolean | ((values: Recordable, type: "get" | "set") => Recordable);
    }> & Omit<Readonly<ApFormProps> & Readonly<{}>, "validate" | "registerWatch" | "setFieldsValue" | "setFieldValue" | "resetFields" | "clearValidate" | "validateFields" | "getFieldsValue" | "scrollToField" | "getInternalInstance" | "validateFieldsReturnTransformed" | "getFieldsValueTransformed" | ("layout" | "colon" | "labelAlign" | "hideRequiredMark" | "validateOnRuleChange" | "validateTrigger" | "syncToUrl")> & ShallowUnwrapRef<{
        setFieldsValue: (fields: Partial<any>) => void;
        setFieldValue: (name: NamePath, value: any, triggerChange?: boolean, optimizeFn?: UpdateModelOptimizeFn) => void;
        resetFields: () => Promise<void>;
        clearValidate: (name?: NamePath) => void;
        validateFields: (nameList?: NamePath[] | string, options?: ValidateOptions) => Promise<Partial<any>> | undefined;
        getFieldsValue: (nameList?: true | InternalNamePath[]) => Partial<any> | undefined;
        validate: (nameList?: NamePath[] | string, options?: ValidateOptions) => Promise<Partial<any>> | undefined;
        scrollToField: (name: NamePath, options?: any) => void;
        getInternalInstance: (mark: string) => ApFormInternalInstance | undefined;
        validateFieldsReturnTransformed: (nameList?: NamePath[] | string, options?: ValidateOptions) => Promise<Partial<any>> | undefined;
        getFieldsValueTransformed: (nameList?: true | InternalNamePath[]) => Partial<any> | undefined;
        registerWatch: (callback: WatchFunc, inner: boolean) => () => void;
    }> & {} & ComponentCustomProperties & {} & {
        $slots: {
            default?(_: {}): any;
        };
    }) | null;
}, any>;
export default _default;
