import { ApFormItemProps, ApFormItemSlots } from '../interface';
import { ComponentInternalInstance, ExtractPropTypes, PropType, HTMLAttributes, VNodeProps, AllowedComponentProps, ComponentCustomProps, Attrs, ComponentPublicInstance, ComponentOptionsBase, ComponentOptionsMixin, GlobalComponents, GlobalDirectives, ComponentProvideOptions, DebuggerEvent, nextTick, WatchOptions, WatchStopHandle, ComponentCustomProperties, DefineComponent, PublicProps } from 'vue';
import { ColSize } from '@aplus-frontend/antdv/es/grid';
import { FormLabelAlign } from '@aplus-frontend/antdv/es/form/interface';
import { RuleObject } from '@aplus-frontend/antdv/es/form';
import { VueTypeValidableDef, VueTypeDef } from '../../../node_modules/vue-types';
import { CustomSlotsType } from '@aplus-frontend/antdv/es/_util/type';
import { OnCleanup } from '@vue/reactivity';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Readonly<ApFormItemSlots> & ApFormItemSlots;
    refs: {
        formItemRef: ({
            $: ComponentInternalInstance;
            $data: {};
            $props: Partial<{
                required: boolean;
                hidden: boolean;
                colon: boolean;
                validateFirst: boolean;
                autoLink: boolean;
                hasFeedback: boolean;
                noStyle: boolean;
            }> & Omit<{
                readonly hidden: boolean;
                readonly hasFeedback: boolean;
                readonly autoLink: boolean;
                readonly noStyle: boolean;
                readonly label?: any;
                readonly help?: any;
                readonly tooltip?: string | undefined;
                readonly prefixCls?: string | undefined;
                readonly name?: string | number | (string | number)[] | undefined;
                readonly required?: 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 rules?: RuleObject | RuleObject[] | undefined;
                readonly validateTrigger?: string | string[] | undefined;
                readonly extra?: any;
                readonly htmlFor?: string | undefined;
                readonly prop?: string | number | (string | number)[] | undefined;
                readonly validateFirst?: boolean | undefined;
                readonly validateStatus?: string | undefined;
                readonly messageVariables?: Record<string, string> | undefined;
            } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "hidden" | "required" | "colon" | "hasFeedback" | "autoLink" | "validateFirst" | "noStyle">;
            $attrs: Attrs;
            $refs: {
                [x: string]: unknown;
            };
            $slots: Readonly<{
                help: any;
                label: any;
                extra: any;
                default: any;
                tooltip: any;
            }>;
            $root: ComponentPublicInstance | null;
            $parent: ComponentPublicInstance | null;
            $host: Element | null;
            $emit: (event: string, ...args: any[]) => void;
            $el: any;
            $options: ComponentOptionsBase<Readonly< ExtractPropTypes<{
                htmlFor: StringConstructor;
                prefixCls: StringConstructor;
                label: VueTypeValidableDef<any>;
                help: VueTypeValidableDef<any>;
                extra: VueTypeValidableDef<any>;
                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>;
                };
                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>;
                };
                hasFeedback: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                colon: {
                    type: BooleanConstructor;
                    default: any;
                };
                labelAlign: PropType<FormLabelAlign>;
                prop: {
                    type: PropType<string | number | (string | number)[]>;
                };
                name: {
                    type: PropType<string | number | (string | number)[]>;
                };
                rules: PropType< RuleObject | RuleObject[]>;
                autoLink: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                required: {
                    type: BooleanConstructor;
                    default: any;
                };
                validateFirst: {
                    type: BooleanConstructor;
                    default: any;
                };
                validateStatus: VueTypeDef<string>;
                validateTrigger: {
                    type: PropType<string | string[]>;
                };
                messageVariables: {
                    type: PropType<Record<string, string>>;
                };
                hidden: BooleanConstructor;
                noStyle: BooleanConstructor;
                tooltip: StringConstructor;
            }>> & Readonly<{}>, () => any, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
                required: boolean;
                hidden: boolean;
                colon: boolean;
                validateFirst: boolean;
                autoLink: boolean;
                hasFeedback: boolean;
                noStyle: boolean;
            }, {}, string, CustomSlotsType<{
                help: any;
                label: any;
                extra: any;
                default: any;
                tooltip: any;
            }>, 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<{
            required: boolean;
            hidden: boolean;
            colon: boolean;
            validateFirst: boolean;
            autoLink: boolean;
            hasFeedback: boolean;
            noStyle: boolean;
        }> & Omit<Readonly< ExtractPropTypes<{
            htmlFor: StringConstructor;
            prefixCls: StringConstructor;
            label: VueTypeValidableDef<any>;
            help: VueTypeValidableDef<any>;
            extra: VueTypeValidableDef<any>;
            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>;
            };
            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>;
            };
            hasFeedback: {
                type: BooleanConstructor;
                default: boolean;
            };
            colon: {
                type: BooleanConstructor;
                default: any;
            };
            labelAlign: PropType<FormLabelAlign>;
            prop: {
                type: PropType<string | number | (string | number)[]>;
            };
            name: {
                type: PropType<string | number | (string | number)[]>;
            };
            rules: PropType< RuleObject | RuleObject[]>;
            autoLink: {
                type: BooleanConstructor;
                default: boolean;
            };
            required: {
                type: BooleanConstructor;
                default: any;
            };
            validateFirst: {
                type: BooleanConstructor;
                default: any;
            };
            validateStatus: VueTypeDef<string>;
            validateTrigger: {
                type: PropType<string | string[]>;
            };
            messageVariables: {
                type: PropType<Record<string, string>>;
            };
            hidden: BooleanConstructor;
            noStyle: BooleanConstructor;
            tooltip: StringConstructor;
        }>> & Readonly<{}>, "hidden" | "required" | "colon" | "hasFeedback" | "autoLink" | "validateFirst" | "noStyle"> & {} & {} & ComponentCustomProperties & {} & {
            $: ComponentInternalInstance;
            $data: {};
            $props: Partial<{
                required: boolean;
                hidden: boolean;
                colon: boolean;
                validateFirst: boolean;
                autoLink: boolean;
                hasFeedback: boolean;
                noStyle: boolean;
            }> & Omit<{
                readonly hidden: boolean;
                readonly hasFeedback: boolean;
                readonly autoLink: boolean;
                readonly noStyle: boolean;
                readonly label?: any;
                readonly help?: any;
                readonly tooltip?: string | undefined;
                readonly prefixCls?: string | undefined;
                readonly name?: string | number | (string | number)[] | undefined;
                readonly required?: 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 rules?: RuleObject | RuleObject[] | undefined;
                readonly validateTrigger?: string | string[] | undefined;
                readonly extra?: any;
                readonly htmlFor?: string | undefined;
                readonly prop?: string | number | (string | number)[] | undefined;
                readonly validateFirst?: boolean | undefined;
                readonly validateStatus?: string | undefined;
                readonly messageVariables?: Record<string, string> | undefined;
            } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "hidden" | "required" | "colon" | "hasFeedback" | "autoLink" | "validateFirst" | "noStyle">;
            $attrs: Attrs;
            $refs: {
                [x: string]: unknown;
            };
            $slots: Readonly<{
                help: any;
                label: any;
                extra: any;
                default: any;
                tooltip: any;
            }>;
            $root: ComponentPublicInstance | null;
            $parent: ComponentPublicInstance | null;
            $host: Element | null;
            $emit: (event: string, ...args: any[]) => void;
            $el: any;
            $options: ComponentOptionsBase<Readonly< ExtractPropTypes<{
                htmlFor: StringConstructor;
                prefixCls: StringConstructor;
                label: VueTypeValidableDef<any>;
                help: VueTypeValidableDef<any>;
                extra: VueTypeValidableDef<any>;
                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>;
                };
                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>;
                };
                hasFeedback: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                colon: {
                    type: BooleanConstructor;
                    default: any;
                };
                labelAlign: PropType<FormLabelAlign>;
                prop: {
                    type: PropType<string | number | (string | number)[]>;
                };
                name: {
                    type: PropType<string | number | (string | number)[]>;
                };
                rules: PropType< RuleObject | RuleObject[]>;
                autoLink: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                required: {
                    type: BooleanConstructor;
                    default: any;
                };
                validateFirst: {
                    type: BooleanConstructor;
                    default: any;
                };
                validateStatus: VueTypeDef<string>;
                validateTrigger: {
                    type: PropType<string | string[]>;
                };
                messageVariables: {
                    type: PropType<Record<string, string>>;
                };
                hidden: BooleanConstructor;
                noStyle: BooleanConstructor;
                tooltip: StringConstructor;
            }>> & Readonly<{}>, () => any, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
                required: boolean;
                hidden: boolean;
                colon: boolean;
                validateFirst: boolean;
                autoLink: boolean;
                hasFeedback: boolean;
                noStyle: boolean;
            }, {}, string, CustomSlotsType<{
                help: any;
                label: any;
                extra: any;
                default: any;
                tooltip: any;
            }>, 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<{
            required: boolean;
            hidden: boolean;
            colon: boolean;
            validateFirst: boolean;
            autoLink: boolean;
            hasFeedback: boolean;
            noStyle: boolean;
        }> & Omit<Readonly< ExtractPropTypes<{
            htmlFor: StringConstructor;
            prefixCls: StringConstructor;
            label: VueTypeValidableDef<any>;
            help: VueTypeValidableDef<any>;
            extra: VueTypeValidableDef<any>;
            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>;
            };
            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>;
            };
            hasFeedback: {
                type: BooleanConstructor;
                default: boolean;
            };
            colon: {
                type: BooleanConstructor;
                default: any;
            };
            labelAlign: PropType<FormLabelAlign>;
            prop: {
                type: PropType<string | number | (string | number)[]>;
            };
            name: {
                type: PropType<string | number | (string | number)[]>;
            };
            rules: PropType< RuleObject | RuleObject[]>;
            autoLink: {
                type: BooleanConstructor;
                default: boolean;
            };
            required: {
                type: BooleanConstructor;
                default: any;
            };
            validateFirst: {
                type: BooleanConstructor;
                default: any;
            };
            validateStatus: VueTypeDef<string>;
            validateTrigger: {
                type: PropType<string | string[]>;
            };
            messageVariables: {
                type: PropType<Record<string, string>>;
            };
            hidden: BooleanConstructor;
            noStyle: BooleanConstructor;
            tooltip: StringConstructor;
        }>> & Readonly<{}>, "hidden" | "required" | "colon" | "hasFeedback" | "autoLink" | "validateFirst" | "noStyle"> & {}) | null;
    };
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: DefineComponent<ApFormItemProps, {
    onFieldBlur: () => void;
    onFieldChange: () => void;
    clearValidate: () => void;
    resetField: () => void;
    getFieldValue: (shouldFormat?: boolean) => any;
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ApFormItemProps> & Readonly<{}>, {
    bordered: boolean;
    required: boolean;
    colon: boolean;
    hasFeedback: boolean;
    autoLink: boolean;
    validateFirst: boolean;
    autoFocus: boolean;
    valuePropName: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
    formItemRef: ({
        $: ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            required: boolean;
            hidden: boolean;
            colon: boolean;
            validateFirst: boolean;
            autoLink: boolean;
            hasFeedback: boolean;
            noStyle: boolean;
        }> & Omit<{
            readonly hidden: boolean;
            readonly hasFeedback: boolean;
            readonly autoLink: boolean;
            readonly noStyle: boolean;
            readonly label?: any;
            readonly help?: any;
            readonly tooltip?: string | undefined;
            readonly prefixCls?: string | undefined;
            readonly name?: string | number | (string | number)[] | undefined;
            readonly required?: 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 rules?: RuleObject | RuleObject[] | undefined;
            readonly validateTrigger?: string | string[] | undefined;
            readonly extra?: any;
            readonly htmlFor?: string | undefined;
            readonly prop?: string | number | (string | number)[] | undefined;
            readonly validateFirst?: boolean | undefined;
            readonly validateStatus?: string | undefined;
            readonly messageVariables?: Record<string, string> | undefined;
        } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "hidden" | "required" | "colon" | "hasFeedback" | "autoLink" | "validateFirst" | "noStyle">;
        $attrs: Attrs;
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            help: any;
            label: any;
            extra: any;
            default: any;
            tooltip: any;
        }>;
        $root: ComponentPublicInstance | null;
        $parent: ComponentPublicInstance | null;
        $host: Element | null;
        $emit: (event: string, ...args: any[]) => void;
        $el: any;
        $options: ComponentOptionsBase<Readonly< ExtractPropTypes<{
            htmlFor: StringConstructor;
            prefixCls: StringConstructor;
            label: VueTypeValidableDef<any>;
            help: VueTypeValidableDef<any>;
            extra: VueTypeValidableDef<any>;
            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>;
            };
            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>;
            };
            hasFeedback: {
                type: BooleanConstructor;
                default: boolean;
            };
            colon: {
                type: BooleanConstructor;
                default: any;
            };
            labelAlign: PropType<FormLabelAlign>;
            prop: {
                type: PropType<string | number | (string | number)[]>;
            };
            name: {
                type: PropType<string | number | (string | number)[]>;
            };
            rules: PropType< RuleObject | RuleObject[]>;
            autoLink: {
                type: BooleanConstructor;
                default: boolean;
            };
            required: {
                type: BooleanConstructor;
                default: any;
            };
            validateFirst: {
                type: BooleanConstructor;
                default: any;
            };
            validateStatus: VueTypeDef<string>;
            validateTrigger: {
                type: PropType<string | string[]>;
            };
            messageVariables: {
                type: PropType<Record<string, string>>;
            };
            hidden: BooleanConstructor;
            noStyle: BooleanConstructor;
            tooltip: StringConstructor;
        }>> & Readonly<{}>, () => any, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
            required: boolean;
            hidden: boolean;
            colon: boolean;
            validateFirst: boolean;
            autoLink: boolean;
            hasFeedback: boolean;
            noStyle: boolean;
        }, {}, string, CustomSlotsType<{
            help: any;
            label: any;
            extra: any;
            default: any;
            tooltip: any;
        }>, 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<{
        required: boolean;
        hidden: boolean;
        colon: boolean;
        validateFirst: boolean;
        autoLink: boolean;
        hasFeedback: boolean;
        noStyle: boolean;
    }> & Omit<Readonly< ExtractPropTypes<{
        htmlFor: StringConstructor;
        prefixCls: StringConstructor;
        label: VueTypeValidableDef<any>;
        help: VueTypeValidableDef<any>;
        extra: VueTypeValidableDef<any>;
        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>;
        };
        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>;
        };
        hasFeedback: {
            type: BooleanConstructor;
            default: boolean;
        };
        colon: {
            type: BooleanConstructor;
            default: any;
        };
        labelAlign: PropType<FormLabelAlign>;
        prop: {
            type: PropType<string | number | (string | number)[]>;
        };
        name: {
            type: PropType<string | number | (string | number)[]>;
        };
        rules: PropType< RuleObject | RuleObject[]>;
        autoLink: {
            type: BooleanConstructor;
            default: boolean;
        };
        required: {
            type: BooleanConstructor;
            default: any;
        };
        validateFirst: {
            type: BooleanConstructor;
            default: any;
        };
        validateStatus: VueTypeDef<string>;
        validateTrigger: {
            type: PropType<string | string[]>;
        };
        messageVariables: {
            type: PropType<Record<string, string>>;
        };
        hidden: BooleanConstructor;
        noStyle: BooleanConstructor;
        tooltip: StringConstructor;
    }>> & Readonly<{}>, "hidden" | "required" | "colon" | "hasFeedback" | "autoLink" | "validateFirst" | "noStyle"> & {} & {} & ComponentCustomProperties & {} & {
        $: ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            required: boolean;
            hidden: boolean;
            colon: boolean;
            validateFirst: boolean;
            autoLink: boolean;
            hasFeedback: boolean;
            noStyle: boolean;
        }> & Omit<{
            readonly hidden: boolean;
            readonly hasFeedback: boolean;
            readonly autoLink: boolean;
            readonly noStyle: boolean;
            readonly label?: any;
            readonly help?: any;
            readonly tooltip?: string | undefined;
            readonly prefixCls?: string | undefined;
            readonly name?: string | number | (string | number)[] | undefined;
            readonly required?: 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 rules?: RuleObject | RuleObject[] | undefined;
            readonly validateTrigger?: string | string[] | undefined;
            readonly extra?: any;
            readonly htmlFor?: string | undefined;
            readonly prop?: string | number | (string | number)[] | undefined;
            readonly validateFirst?: boolean | undefined;
            readonly validateStatus?: string | undefined;
            readonly messageVariables?: Record<string, string> | undefined;
        } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "hidden" | "required" | "colon" | "hasFeedback" | "autoLink" | "validateFirst" | "noStyle">;
        $attrs: Attrs;
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            help: any;
            label: any;
            extra: any;
            default: any;
            tooltip: any;
        }>;
        $root: ComponentPublicInstance | null;
        $parent: ComponentPublicInstance | null;
        $host: Element | null;
        $emit: (event: string, ...args: any[]) => void;
        $el: any;
        $options: ComponentOptionsBase<Readonly< ExtractPropTypes<{
            htmlFor: StringConstructor;
            prefixCls: StringConstructor;
            label: VueTypeValidableDef<any>;
            help: VueTypeValidableDef<any>;
            extra: VueTypeValidableDef<any>;
            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>;
            };
            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>;
            };
            hasFeedback: {
                type: BooleanConstructor;
                default: boolean;
            };
            colon: {
                type: BooleanConstructor;
                default: any;
            };
            labelAlign: PropType<FormLabelAlign>;
            prop: {
                type: PropType<string | number | (string | number)[]>;
            };
            name: {
                type: PropType<string | number | (string | number)[]>;
            };
            rules: PropType< RuleObject | RuleObject[]>;
            autoLink: {
                type: BooleanConstructor;
                default: boolean;
            };
            required: {
                type: BooleanConstructor;
                default: any;
            };
            validateFirst: {
                type: BooleanConstructor;
                default: any;
            };
            validateStatus: VueTypeDef<string>;
            validateTrigger: {
                type: PropType<string | string[]>;
            };
            messageVariables: {
                type: PropType<Record<string, string>>;
            };
            hidden: BooleanConstructor;
            noStyle: BooleanConstructor;
            tooltip: StringConstructor;
        }>> & Readonly<{}>, () => any, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
            required: boolean;
            hidden: boolean;
            colon: boolean;
            validateFirst: boolean;
            autoLink: boolean;
            hasFeedback: boolean;
            noStyle: boolean;
        }, {}, string, CustomSlotsType<{
            help: any;
            label: any;
            extra: any;
            default: any;
            tooltip: any;
        }>, 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<{
        required: boolean;
        hidden: boolean;
        colon: boolean;
        validateFirst: boolean;
        autoLink: boolean;
        hasFeedback: boolean;
        noStyle: boolean;
    }> & Omit<Readonly< ExtractPropTypes<{
        htmlFor: StringConstructor;
        prefixCls: StringConstructor;
        label: VueTypeValidableDef<any>;
        help: VueTypeValidableDef<any>;
        extra: VueTypeValidableDef<any>;
        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>;
        };
        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>;
        };
        hasFeedback: {
            type: BooleanConstructor;
            default: boolean;
        };
        colon: {
            type: BooleanConstructor;
            default: any;
        };
        labelAlign: PropType<FormLabelAlign>;
        prop: {
            type: PropType<string | number | (string | number)[]>;
        };
        name: {
            type: PropType<string | number | (string | number)[]>;
        };
        rules: PropType< RuleObject | RuleObject[]>;
        autoLink: {
            type: BooleanConstructor;
            default: boolean;
        };
        required: {
            type: BooleanConstructor;
            default: any;
        };
        validateFirst: {
            type: BooleanConstructor;
            default: any;
        };
        validateStatus: VueTypeDef<string>;
        validateTrigger: {
            type: PropType<string | string[]>;
        };
        messageVariables: {
            type: PropType<Record<string, string>>;
        };
        hidden: BooleanConstructor;
        noStyle: BooleanConstructor;
        tooltip: StringConstructor;
    }>> & Readonly<{}>, "hidden" | "required" | "colon" | "hasFeedback" | "autoLink" | "validateFirst" | "noStyle"> & {}) | null;
}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
