import FormItem from './src/form-item.vue';
import type { SFCWithInstall } from 'element-plus/es/utils/types';
declare const _Form: SFCWithInstall<import("vue").DefineComponent<{
    model: ObjectConstructor;
    rules: import("vue").PropType<import("./src/form.type").FormRulesMap>;
    labelPosition: StringConstructor;
    labelWidth: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    labelSuffix: {
        type: StringConstructor;
        default: string;
    };
    inline: BooleanConstructor;
    inlineMessage: BooleanConstructor;
    statusIcon: BooleanConstructor;
    showMessage: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: import("vue").PropType<import("element-plus/es/utils/types").ComponentSize>;
    disabled: BooleanConstructor;
    validateOnRuleChange: {
        type: BooleanConstructor;
        default: boolean;
    };
    hideRequiredAsterisk: {
        type: BooleanConstructor;
        default: boolean;
    };
}, {
    validate: (callback?: import("./src/form.vue").Callback) => Promise<boolean>;
    resetFields: () => void;
    clearValidate: (props?: string | string[]) => void;
    validateField: (props: string | string[], cb: import("../../tokens").ValidateFieldCallback) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "validate"[], "validate", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    model?: unknown;
    rules?: unknown;
    labelPosition?: unknown;
    labelWidth?: unknown;
    labelSuffix?: unknown;
    inline?: unknown;
    inlineMessage?: unknown;
    statusIcon?: unknown;
    showMessage?: unknown;
    size?: unknown;
    disabled?: unknown;
    validateOnRuleChange?: unknown;
    hideRequiredAsterisk?: unknown;
} & {
    disabled: boolean;
    inline: boolean;
    labelWidth: string | number;
    labelSuffix: string;
    inlineMessage: boolean;
    statusIcon: boolean;
    showMessage: boolean;
    validateOnRuleChange: boolean;
    hideRequiredAsterisk: boolean;
} & {
    size?: import("element-plus/es/utils/types").ComponentSize;
    model?: Record<string, any>;
    rules?: import("./src/form.type").FormRulesMap;
    labelPosition?: string;
}> & {
    onValidate?: (...args: any[]) => any;
}, {
    disabled: boolean;
    inline: boolean;
    labelWidth: string | number;
    labelSuffix: string;
    inlineMessage: boolean;
    statusIcon: boolean;
    showMessage: boolean;
    validateOnRuleChange: boolean;
    hideRequiredAsterisk: boolean;
}>> & {
    FormItem: typeof FormItem;
};
export default _Form;
export declare const ElForm: SFCWithInstall<import("vue").DefineComponent<{
    model: ObjectConstructor;
    rules: import("vue").PropType<import("./src/form.type").FormRulesMap>;
    labelPosition: StringConstructor;
    labelWidth: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    labelSuffix: {
        type: StringConstructor;
        default: string;
    };
    inline: BooleanConstructor;
    inlineMessage: BooleanConstructor;
    statusIcon: BooleanConstructor;
    showMessage: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: import("vue").PropType<import("element-plus/es/utils/types").ComponentSize>;
    disabled: BooleanConstructor;
    validateOnRuleChange: {
        type: BooleanConstructor;
        default: boolean;
    };
    hideRequiredAsterisk: {
        type: BooleanConstructor;
        default: boolean;
    };
}, {
    validate: (callback?: import("./src/form.vue").Callback) => Promise<boolean>;
    resetFields: () => void;
    clearValidate: (props?: string | string[]) => void;
    validateField: (props: string | string[], cb: import("../../tokens").ValidateFieldCallback) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "validate"[], "validate", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    model?: unknown;
    rules?: unknown;
    labelPosition?: unknown;
    labelWidth?: unknown;
    labelSuffix?: unknown;
    inline?: unknown;
    inlineMessage?: unknown;
    statusIcon?: unknown;
    showMessage?: unknown;
    size?: unknown;
    disabled?: unknown;
    validateOnRuleChange?: unknown;
    hideRequiredAsterisk?: unknown;
} & {
    disabled: boolean;
    inline: boolean;
    labelWidth: string | number;
    labelSuffix: string;
    inlineMessage: boolean;
    statusIcon: boolean;
    showMessage: boolean;
    validateOnRuleChange: boolean;
    hideRequiredAsterisk: boolean;
} & {
    size?: import("element-plus/es/utils/types").ComponentSize;
    model?: Record<string, any>;
    rules?: import("./src/form.type").FormRulesMap;
    labelPosition?: string;
}> & {
    onValidate?: (...args: any[]) => any;
}, {
    disabled: boolean;
    inline: boolean;
    labelWidth: string | number;
    labelSuffix: string;
    inlineMessage: boolean;
    statusIcon: boolean;
    showMessage: boolean;
    validateOnRuleChange: boolean;
    hideRequiredAsterisk: boolean;
}>> & {
    FormItem: typeof FormItem;
};
export declare const ElFormItem: import("vue").DefineComponent<{
    label: StringConstructor;
    labelWidth: {
        type: (NumberConstructor | StringConstructor)[];
        default: string;
    };
    prop: StringConstructor;
    required: {
        type: BooleanConstructor;
        default: any;
    };
    rules: import("vue").PropType<import("./src/form.type").FormItemRule | import("./src/form.type").FormItemRule[]>;
    error: StringConstructor;
    validateStatus: StringConstructor;
    for: StringConstructor;
    inlineMessage: {
        type: (StringConstructor | BooleanConstructor)[];
        default: string;
    };
    showMessage: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: import("vue").PropType<import("element-plus/es/utils/types").ComponentSize>;
        validator: (val: string) => boolean;
    };
}, {
    formItemClass: import("vue").ComputedRef<(string | {
        'el-form-item--feedback': boolean;
        'is-error': boolean;
        'is-validating': boolean;
        'is-success': boolean;
        'is-required': boolean;
        'is-no-asterisk': boolean;
    })[]>;
    shouldShowError: import("vue").ComputedRef<boolean>;
    elForm: import("../../tokens").ElFormContext;
    labelStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
    contentStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
    validateMessage: import("vue").Ref<string>;
    labelFor: import("vue").ComputedRef<string>;
    resetField: () => void;
    clearValidate: () => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    label?: unknown;
    labelWidth?: unknown;
    prop?: unknown;
    required?: unknown;
    rules?: unknown;
    error?: unknown;
    validateStatus?: unknown;
    for?: unknown;
    inlineMessage?: unknown;
    showMessage?: unknown;
    size?: unknown;
} & {
    labelWidth: string | number;
    inlineMessage: string | boolean;
    showMessage: boolean;
} & {
    error?: string;
    label?: string;
    size?: import("element-plus/es/utils/types").ComponentSize;
    rules?: unknown;
    required?: boolean;
    prop?: string;
    validateStatus?: string;
    for?: string;
}> & {}, {
    labelWidth: string | number;
    inlineMessage: string | boolean;
    showMessage: boolean;
    required: boolean;
}>;
