import type { Plugin } from 'vue';
import Form, { formProps } from './Form';
import FormItem, { formItemProps } from './FormItem';
import useForm from './useForm';
import FormItemRest, { useInjectFormItemContext } from './FormItemContext';
export type { Rule, RuleObject } from './interface';
export type { FormProps } from './Form';
export type { FormItemProps } from './FormItem';
export { FormItem, formItemProps, formProps, FormItemRest, useForm, useInjectFormItemContext };
declare const _default: {
    new (...args: any[]): {
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            prefixCls: string;
            onSubmit: (...args: any[]) => any;
            name: string;
            requiredMark: "" | import("./Form").RequiredMark;
            model: {
                [key: string]: any;
            };
            validateMessages: {
                [key: string]: any;
            };
        }> & Omit<Readonly<{
            layout?: unknown;
            labelCol?: unknown;
            wrapperCol?: unknown;
            colon?: unknown;
            labelAlign?: unknown;
            prefixCls?: unknown;
            requiredMark?: unknown;
            hideRequiredMark?: unknown;
            model?: unknown;
            rules?: unknown;
            validateMessages?: unknown;
            validateOnRuleChange?: unknown;
            scrollToFirstError?: unknown;
            onSubmit?: unknown;
            name?: unknown;
            validateTrigger?: unknown;
            size?: unknown;
            onValuesChange?: unknown;
            onFieldsChange?: unknown;
            onFinish?: unknown;
            onFinishFailed?: unknown;
            onValidate?: unknown;
        } & {
            prefixCls: string;
            name: string;
            model: {
                [key: string]: any;
            };
            validateMessages: {
                [key: string]: any;
            };
        } & {
            onSubmit?: (...args: any[]) => any;
            validateTrigger?: string | string[];
            layout?: "inline" | "horizontal" | "vertical";
            size?: import("../config-provider").SizeType;
            labelCol?: unknown;
            labelAlign?: "left" | "right";
            colon?: boolean;
            requiredMark?: "" | import("./Form").RequiredMark;
            wrapperCol?: unknown;
            rules?: {
                [k: string]: import("./Form").ValidationRule | import("./Form").ValidationRule[];
            };
            onValidate?: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
            onValuesChange?: (changedValues: any, values: any) => void;
            onFieldsChange?: (changedFields: import("./interface").FieldData[], allFields: import("./interface").FieldData[]) => void;
            onFinish?: (values: any) => void;
            onFinishFailed?: (errorInfo: import("./interface").ValidateErrorEntity<any>) => void;
            hideRequiredMark?: boolean;
            validateOnRuleChange?: boolean;
            scrollToFirstError?: unknown;
        }> & {
            onSubmit?: (...args: any[]) => any;
            onValidate?: (...args: any[]) => any;
            onFinish?: (...args: any[]) => any;
            onFinishFailed?: (...args: any[]) => any;
        } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "prefixCls" | "onSubmit" | "name" | "requiredMark" | "model" | "validateMessages">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import("vue").Slot;
        }>;
        $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>>;
        $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>>;
        $emit: (event: "submit" | "finishFailed" | "finish" | "validate", ...args: any[]) => void;
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<{
            layout?: unknown;
            labelCol?: unknown;
            wrapperCol?: unknown;
            colon?: unknown;
            labelAlign?: unknown;
            prefixCls?: unknown;
            requiredMark?: unknown;
            hideRequiredMark?: unknown;
            model?: unknown;
            rules?: unknown;
            validateMessages?: unknown;
            validateOnRuleChange?: unknown;
            scrollToFirstError?: unknown;
            onSubmit?: unknown;
            name?: unknown;
            validateTrigger?: unknown;
            size?: unknown;
            onValuesChange?: unknown;
            onFieldsChange?: unknown;
            onFinish?: unknown;
            onFinishFailed?: unknown;
            onValidate?: unknown;
        } & {
            prefixCls: string;
            name: string;
            model: {
                [key: string]: any;
            };
            validateMessages: {
                [key: string]: any;
            };
        } & {
            onSubmit?: (...args: any[]) => any;
            validateTrigger?: string | string[];
            layout?: "inline" | "horizontal" | "vertical";
            size?: import("../config-provider").SizeType;
            labelCol?: unknown;
            labelAlign?: "left" | "right";
            colon?: boolean;
            requiredMark?: "" | import("./Form").RequiredMark;
            wrapperCol?: unknown;
            rules?: {
                [k: string]: import("./Form").ValidationRule | import("./Form").ValidationRule[];
            };
            onValidate?: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
            onValuesChange?: (changedValues: any, values: any) => void;
            onFieldsChange?: (changedFields: import("./interface").FieldData[], allFields: import("./interface").FieldData[]) => void;
            onFinish?: (values: any) => void;
            onFinishFailed?: (errorInfo: import("./interface").ValidateErrorEntity<any>) => void;
            hideRequiredMark?: boolean;
            validateOnRuleChange?: boolean;
            scrollToFirstError?: unknown;
        }> & {
            onSubmit?: (...args: any[]) => any;
            onValidate?: (...args: any[]) => any;
            onFinish?: (...args: any[]) => any;
            onFinishFailed?: (...args: any[]) => any;
        }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("submit" | "finishFailed" | "finish" | "validate")[], string, {
            prefixCls: string;
            onSubmit: (...args: any[]) => any;
            name: string;
            requiredMark: "" | import("./Form").RequiredMark;
            model: {
                [key: string]: any;
            };
            validateMessages: {
                [key: string]: any;
            };
        }> & {
            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: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[];
            renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[];
            errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>>, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>>, info: string) => boolean | void)[];
        };
        $forceUpdate: () => void;
        $nextTick: typeof import("vue").nextTick;
        $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean>): import("vue").WatchStopHandle;
    } & Readonly<{
        layout?: unknown;
        labelCol?: unknown;
        wrapperCol?: unknown;
        colon?: unknown;
        labelAlign?: unknown;
        prefixCls?: unknown;
        requiredMark?: unknown;
        hideRequiredMark?: unknown;
        model?: unknown;
        rules?: unknown;
        validateMessages?: unknown;
        validateOnRuleChange?: unknown;
        scrollToFirstError?: unknown;
        onSubmit?: unknown;
        name?: unknown;
        validateTrigger?: unknown;
        size?: unknown;
        onValuesChange?: unknown;
        onFieldsChange?: unknown;
        onFinish?: unknown;
        onFinishFailed?: unknown;
        onValidate?: unknown;
    } & {
        prefixCls: string;
        name: string;
        model: {
            [key: string]: any;
        };
        validateMessages: {
            [key: string]: any;
        };
    } & {
        onSubmit?: (...args: any[]) => any;
        validateTrigger?: string | string[];
        layout?: "inline" | "horizontal" | "vertical";
        size?: import("../config-provider").SizeType;
        labelCol?: unknown;
        labelAlign?: "left" | "right";
        colon?: boolean;
        requiredMark?: "" | import("./Form").RequiredMark;
        wrapperCol?: unknown;
        rules?: {
            [k: string]: import("./Form").ValidationRule | import("./Form").ValidationRule[];
        };
        onValidate?: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
        onValuesChange?: (changedValues: any, values: any) => void;
        onFieldsChange?: (changedFields: import("./interface").FieldData[], allFields: import("./interface").FieldData[]) => void;
        onFinish?: (values: any) => void;
        onFinishFailed?: (errorInfo: import("./interface").ValidateErrorEntity<any>) => void;
        hideRequiredMark?: boolean;
        validateOnRuleChange?: boolean;
        scrollToFirstError?: unknown;
    }> & {
        onSubmit?: (...args: any[]) => any;
        onValidate?: (...args: any[]) => any;
        onFinish?: (...args: any[]) => any;
        onFinishFailed?: (...args: any[]) => any;
    } & import("vue").ShallowUnwrapRef<() => JSX.Element> & {} & import("vue").ComponentCustomProperties;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<{
    layout?: unknown;
    labelCol?: unknown;
    wrapperCol?: unknown;
    colon?: unknown;
    labelAlign?: unknown;
    prefixCls?: unknown;
    requiredMark?: unknown;
    hideRequiredMark?: unknown;
    model?: unknown;
    rules?: unknown;
    validateMessages?: unknown;
    validateOnRuleChange?: unknown;
    scrollToFirstError?: unknown;
    onSubmit?: unknown;
    name?: unknown;
    validateTrigger?: unknown;
    size?: unknown;
    onValuesChange?: unknown;
    onFieldsChange?: unknown;
    onFinish?: unknown;
    onFinishFailed?: unknown;
    onValidate?: unknown;
} & {
    prefixCls: string;
    name: string;
    model: {
        [key: string]: any;
    };
    validateMessages: {
        [key: string]: any;
    };
} & {
    onSubmit?: (...args: any[]) => any;
    validateTrigger?: string | string[];
    layout?: "inline" | "horizontal" | "vertical";
    size?: import("../config-provider").SizeType;
    labelCol?: unknown;
    labelAlign?: "left" | "right";
    colon?: boolean;
    requiredMark?: "" | import("./Form").RequiredMark;
    wrapperCol?: unknown;
    rules?: {
        [k: string]: import("./Form").ValidationRule | import("./Form").ValidationRule[];
    };
    onValidate?: (name: string | number | string[] | number[], status: boolean, errors: string[]) => void;
    onValuesChange?: (changedValues: any, values: any) => void;
    onFieldsChange?: (changedFields: import("./interface").FieldData[], allFields: import("./interface").FieldData[]) => void;
    onFinish?: (values: any) => void;
    onFinishFailed?: (errorInfo: import("./interface").ValidateErrorEntity<any>) => void;
    hideRequiredMark?: boolean;
    validateOnRuleChange?: boolean;
    scrollToFirstError?: unknown;
}> & {
    onSubmit?: (...args: any[]) => any;
    onValidate?: (...args: any[]) => any;
    onFinish?: (...args: any[]) => any;
    onFinishFailed?: (...args: any[]) => any;
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("submit" | "finishFailed" | "finish" | "validate")[], "submit" | "finishFailed" | "finish" | "validate", {
    prefixCls: string;
    onSubmit: (...args: any[]) => any;
    name: string;
    requiredMark: "" | import("./Form").RequiredMark;
    model: {
        [key: string]: any;
    };
    validateMessages: {
        [key: string]: any;
    };
}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
    readonly Item: import("vue").DefineComponent<{
        htmlFor: import("vue-types").VueTypeValidableDef<string> & {
            default: string;
        };
        prefixCls: import("vue-types").VueTypeValidableDef<string> & {
            default: string;
        };
        label: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
        help: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
        extra: import("vue-types").VueTypeValidableDef<import("../_util/type").VueNode>;
        labelCol: {
            type: import("vue").PropType<Partial<{
                span?: unknown;
                order?: unknown;
                offset?: unknown;
                push?: unknown;
                pull?: unknown;
                xs?: unknown;
                sm?: unknown;
                md?: unknown;
                lg?: unknown;
                xl?: unknown;
                xxl?: unknown;
                prefixCls?: unknown;
                flex?: unknown;
            } & {
                prefixCls: string;
            } & {
                xxl?: string | number | import("../grid").ColSize;
                xl?: string | number | import("../grid").ColSize;
                lg?: string | number | import("../grid").ColSize;
                md?: string | number | import("../grid").ColSize;
                sm?: string | number | import("../grid").ColSize;
                xs?: string | number | import("../grid").ColSize;
                flex?: string | number;
                span?: string | number;
                order?: string | number;
                offset?: string | number;
                push?: string | number;
                pull?: string | number;
            }>>;
        };
        wrapperCol: {
            type: import("vue").PropType<Partial<{
                span?: unknown;
                order?: unknown;
                offset?: unknown;
                push?: unknown;
                pull?: unknown;
                xs?: unknown;
                sm?: unknown;
                md?: unknown;
                lg?: unknown;
                xl?: unknown;
                xxl?: unknown;
                prefixCls?: unknown;
                flex?: unknown;
            } & {
                prefixCls: string;
            } & {
                xxl?: string | number | import("../grid").ColSize;
                xl?: string | number | import("../grid").ColSize;
                lg?: string | number | import("../grid").ColSize;
                md?: string | number | import("../grid").ColSize;
                sm?: string | number | import("../grid").ColSize;
                xs?: string | number | import("../grid").ColSize;
                flex?: string | number;
                span?: string | number;
                order?: string | number;
                offset?: string | number;
                push?: string | number;
                pull?: string | number;
            }>>;
        };
        hasFeedback: import("vue-types").VueTypeValidableDef<boolean> & {
            default: boolean;
        };
        colon: import("vue-types").VueTypeValidableDef<boolean>;
        labelAlign: import("vue-types").VueTypeDef<"left" | "right">;
        prop: {
            type: import("vue").PropType<string | number | string[] | number[]>;
        };
        name: {
            type: import("vue").PropType<string | number | string[] | number[]>;
        };
        rules: import("vue-types").VueTypeDef<unknown[] | {
            [key: string]: any;
        }>;
        autoLink: import("vue-types").VueTypeValidableDef<boolean> & {
            default: boolean;
        };
        required: import("vue-types").VueTypeValidableDef<boolean>;
        validateFirst: import("vue-types").VueTypeValidableDef<boolean>;
        validateStatus: import("vue-types").VueTypeDef<"" | "validating" | "success" | "warning" | "error">;
        validateTrigger: {
            type: import("vue").PropType<string | string[]>;
        };
        messageVariables: {
            type: import("vue").PropType<Record<string, string>>;
        };
        hidden: BooleanConstructor;
    }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
        htmlFor?: unknown;
        prefixCls?: unknown;
        label?: unknown;
        help?: unknown;
        extra?: unknown;
        labelCol?: unknown;
        wrapperCol?: unknown;
        hasFeedback?: unknown;
        colon?: unknown;
        labelAlign?: unknown;
        prop?: unknown;
        name?: unknown;
        rules?: unknown;
        autoLink?: unknown;
        required?: unknown;
        validateFirst?: unknown;
        validateStatus?: unknown;
        validateTrigger?: unknown;
        messageVariables?: unknown;
        hidden?: unknown;
    } & {
        prefixCls: string;
        hidden: boolean;
        htmlFor: string;
        hasFeedback: boolean;
        autoLink: boolean;
    } & {
        label?: import("../_util/type").VueNode;
        name?: string | number | string[] | number[];
        required?: boolean;
        validateTrigger?: string | string[];
        help?: import("../_util/type").VueNode;
        labelCol?: unknown;
        labelAlign?: "left" | "right";
        colon?: boolean;
        extra?: import("../_util/type").VueNode;
        validateStatus?: "" | "validating" | "success" | "warning" | "error";
        wrapperCol?: unknown;
        prop?: string | number | string[] | number[];
        rules?: unknown[] | {
            [key: string]: any;
        };
        validateFirst?: boolean;
        messageVariables?: Record<string, string>;
    }>, {
        prefixCls: string;
        hidden: boolean;
        htmlFor: string;
        hasFeedback: boolean;
        autoLink: boolean;
    }>;
    readonly useForm: typeof useForm;
} & Plugin & {
    readonly Item: typeof Form.Item;
    readonly ItemRest: typeof FormItemRest;
    readonly useForm: typeof useForm;
    readonly useInjectFormItemContext: typeof useInjectFormItemContext;
};
export default _default;
