import { TdFormProps, TdFormItemProps } from './type';
import './style';
export * from './type';
export declare type FormProps = TdFormProps;
export declare type FormItemProps = TdFormItemProps;
export declare const Form: import("vue/types/vue").ExtendedVue<{
    classPrefix: string;
    componentName: string;
    commonSizeClassName: Record<string, string>;
    commonStatusClassName: Record<string, string>;
} & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & import("vue").default, {
    children: import("vue/types/vue").CombinedVueInstance<{
        errorList: any[];
        successList: any[];
        verifyStatus: import("./form-item").VALIDATE_STATUS;
        resetValidating: boolean;
        needResetField: boolean;
        initialValue: any;
        freeShowErrorMessage: any;
    } & {
        addWatch(): void;
        setChildrenDisabled(disabled: boolean, children: import("vue").default[]): void;
        setValidateMessage(validateMessage: import("./type").FormItemValidateMessage[]): void;
        validate<T>(trigger: import("./type").ValidateTriggerType, showErrorMessage?: boolean, source?: "submit-function" | "submit-event"): Promise<import("./form-item").FormItemValidateResult<T>>;
        validateOnly<T_1>(trigger: import("./type").ValidateTriggerType): Promise<import("./form-item").FormItemValidateResult<T_1>>;
        analysisValidateResult(trigger: import("./type").ValidateTriggerType): Promise<import("./const").AnalysisValidateResult>;
        getLabelContent(): import("vue/types/vnode").ScopedSlotReturnValue;
        getLabel(): import("vue/types/vnode").ScopedSlotReturnValue;
        getDefaultIcon(): import("vue/types/vnode").ScopedSlotReturnValue;
        getIcon(statusIcon: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue) | ((h: import("vue").CreateElement, props: TdFormItemProps) => import("vue/types/vnode").ScopedSlotReturnValue), slotStatusIcon: import("vue/types/vnode").NormalizedScopedSlot, props?: TdFormItemProps): import("vue/types/vnode").ScopedSlotReturnValue;
        getSuffixIcon(): import("vue/types/vnode").ScopedSlotReturnValue;
        getEmptyValue(): any;
        resetField(resetType?: "empty" | "initial"): void;
        resetHandler(): void;
    } & {
        needErrorMessage: Boolean;
        classes: import("..").ClassName;
        extraNode: JSX.Element;
        labelClasses: import("..").ClassName;
        errorClasses: string;
        disabled: boolean;
        contentClasses: import("..").ClassName;
        contentStyle: import("..").Styles;
        value: any;
        hasColon: boolean;
        needRequiredMark: boolean;
        requiredMarkPosition: string;
        innerRules: import("./type").FormRule[];
        errorMessages: import("./type").FormErrorMessage;
        statusClass: string;
    } & {
        for: string;
        help: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
        label: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
        labelAlign: "left" | "top" | "right";
        labelWidth: string | number;
        name: string;
        requiredMark: any;
        rules: import("./type").FormRule[];
        showErrorMessage: any;
        status: string;
        statusIcon: any;
        successBorder: boolean;
        tips: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    } & {
        useGlobalIcon(tdIcon: Record<string, any>): import("tdesign-icons-vue").GlobalIconConfig;
    } & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & import("vue").default & {
        t<T_2>(pattern: T_2, placement?: number | import("../config-provider/config-receiver").Placement): string;
    } & {
        global: import("..").FormConfig;
        classPrefix: string;
        componentName: string;
        commonSizeClassName: Record<string, string>;
        commonStatusClassName: Record<string, string>;
    } & import("./form-item").FormItemConstructor, object, object, object, Record<never, any>>[];
}, {
    getFirstError<T_3>(r: boolean | import("./form-item").FormItemValidateResult<T_3>): any;
    scrollTo(selector: string): void;
    isFunction(val: unknown): boolean;
    needValidate(name: string, fields: string[]): boolean;
    formatValidateResult<T_4>(arr: Awaited<import("./form-item").FormItemValidateResult<T_4>>[]): true | Awaited<import("./form-item").FormItemValidateResult<T_4>>;
    validate<T_5 = Record<string, any>>(param?: import("./type").FormValidateParams, source?: "submit-function" | "submit-event"): Promise<import("./type").FormValidateResult<T_5>>;
    validateOnly<T_6 = Record<string, any>>(param: Pick<import("./type").FormValidateParams, "fields" | "trigger">): Promise<import("./type").FormValidateResult<T_6>>;
    setValidateMessage(validateMessage: import("./type").FormValidateMessage<FormData>): void;
    submitHandler<T_7>(e?: Event): void;
    resetHandler(e?: Event): void;
    clearValidate(fields?: string[]): void;
    reset<T_8 = FormData>(params?: import("./type").FormResetParams<T_8>): void;
    submit<T_9 extends import("./type").Data = import("./type").Data>(params?: {
        showErrorMessage?: boolean;
    }): void;
}, {
    formClass: import("..").ClassName;
    formDataKeys: string[];
    controlledComponents: string[];
}, {
    colon: boolean;
    data: import("./type").Data;
    disabled: any;
    errorMessage: import("./type").FormErrorMessage;
    formControlledComponents: string[];
    id: any;
    labelAlign: "left" | "top" | "right";
    labelWidth: string | number;
    layout: "inline" | "vertical";
    preventSubmitDefault: boolean;
    requiredMark: any;
    requiredMarkPosition: "left" | "right";
    resetType: "empty" | "initial";
    rules: import("./type").FormRules<import("./type").Data>;
    scrollToFirstError: "" | "auto" | "smooth";
    showErrorMessage: boolean;
    statusIcon: any;
    submitWithWarningMessage: boolean;
    onReset: (context: {
        e?: Event;
    }) => void;
    onSubmit: (context: import("./type").SubmitContext<import("./type").Data>) => void;
    onValidate: (result: import("./type").ValidateResultContext<import("./type").Data>) => void;
}> & import("vue").PluginObject<import("vue/types/vue").ExtendedVue<{
    classPrefix: string;
    componentName: string;
    commonSizeClassName: Record<string, string>;
    commonStatusClassName: Record<string, string>;
} & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & import("vue").default, {
    children: import("vue/types/vue").CombinedVueInstance<{
        errorList: any[];
        successList: any[];
        verifyStatus: import("./form-item").VALIDATE_STATUS;
        resetValidating: boolean;
        needResetField: boolean;
        initialValue: any;
        freeShowErrorMessage: any;
    } & {
        addWatch(): void;
        setChildrenDisabled(disabled: boolean, children: import("vue").default[]): void;
        setValidateMessage(validateMessage: import("./type").FormItemValidateMessage[]): void;
        validate<T>(trigger: import("./type").ValidateTriggerType, showErrorMessage?: boolean, source?: "submit-function" | "submit-event"): Promise<import("./form-item").FormItemValidateResult<T>>;
        validateOnly<T_1>(trigger: import("./type").ValidateTriggerType): Promise<import("./form-item").FormItemValidateResult<T_1>>;
        analysisValidateResult(trigger: import("./type").ValidateTriggerType): Promise<import("./const").AnalysisValidateResult>;
        getLabelContent(): import("vue/types/vnode").ScopedSlotReturnValue;
        getLabel(): import("vue/types/vnode").ScopedSlotReturnValue;
        getDefaultIcon(): import("vue/types/vnode").ScopedSlotReturnValue;
        getIcon(statusIcon: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue) | ((h: import("vue").CreateElement, props: TdFormItemProps) => import("vue/types/vnode").ScopedSlotReturnValue), slotStatusIcon: import("vue/types/vnode").NormalizedScopedSlot, props?: TdFormItemProps): import("vue/types/vnode").ScopedSlotReturnValue;
        getSuffixIcon(): import("vue/types/vnode").ScopedSlotReturnValue;
        getEmptyValue(): any;
        resetField(resetType?: "empty" | "initial"): void;
        resetHandler(): void;
    } & {
        needErrorMessage: Boolean;
        classes: import("..").ClassName;
        extraNode: JSX.Element;
        labelClasses: import("..").ClassName;
        errorClasses: string;
        disabled: boolean;
        contentClasses: import("..").ClassName;
        contentStyle: import("..").Styles;
        value: any;
        hasColon: boolean;
        needRequiredMark: boolean;
        requiredMarkPosition: string;
        innerRules: import("./type").FormRule[];
        errorMessages: import("./type").FormErrorMessage;
        statusClass: string;
    } & {
        for: string;
        help: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
        label: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
        labelAlign: "left" | "top" | "right";
        labelWidth: string | number;
        name: string;
        requiredMark: any;
        rules: import("./type").FormRule[];
        showErrorMessage: any;
        status: string;
        statusIcon: any;
        successBorder: boolean;
        tips: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    } & {
        useGlobalIcon(tdIcon: Record<string, any>): import("tdesign-icons-vue").GlobalIconConfig;
    } & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & import("vue").default & {
        t<T_2>(pattern: T_2, placement?: number | import("../config-provider/config-receiver").Placement): string;
    } & {
        global: import("..").FormConfig;
        classPrefix: string;
        componentName: string;
        commonSizeClassName: Record<string, string>;
        commonStatusClassName: Record<string, string>;
    } & import("./form-item").FormItemConstructor, object, object, object, Record<never, any>>[];
}, {
    getFirstError<T_3>(r: boolean | import("./form-item").FormItemValidateResult<T_3>): any;
    scrollTo(selector: string): void;
    isFunction(val: unknown): boolean;
    needValidate(name: string, fields: string[]): boolean;
    formatValidateResult<T_4>(arr: Awaited<import("./form-item").FormItemValidateResult<T_4>>[]): true | Awaited<import("./form-item").FormItemValidateResult<T_4>>;
    validate<T_5 = Record<string, any>>(param?: import("./type").FormValidateParams, source?: "submit-function" | "submit-event"): Promise<import("./type").FormValidateResult<T_5>>;
    validateOnly<T_6 = Record<string, any>>(param: Pick<import("./type").FormValidateParams, "fields" | "trigger">): Promise<import("./type").FormValidateResult<T_6>>;
    setValidateMessage(validateMessage: import("./type").FormValidateMessage<FormData>): void;
    submitHandler<T_7>(e?: Event): void;
    resetHandler(e?: Event): void;
    clearValidate(fields?: string[]): void;
    reset<T_8 = FormData>(params?: import("./type").FormResetParams<T_8>): void;
    submit<T_9 extends import("./type").Data = import("./type").Data>(params?: {
        showErrorMessage?: boolean;
    }): void;
}, {
    formClass: import("..").ClassName;
    formDataKeys: string[];
    controlledComponents: string[];
}, {
    colon: boolean;
    data: import("./type").Data;
    disabled: any;
    errorMessage: import("./type").FormErrorMessage;
    formControlledComponents: string[];
    id: any;
    labelAlign: "left" | "top" | "right";
    labelWidth: string | number;
    layout: "inline" | "vertical";
    preventSubmitDefault: boolean;
    requiredMark: any;
    requiredMarkPosition: "left" | "right";
    resetType: "empty" | "initial";
    rules: import("./type").FormRules<import("./type").Data>;
    scrollToFirstError: "" | "auto" | "smooth";
    showErrorMessage: boolean;
    statusIcon: any;
    submitWithWarningMessage: boolean;
    onReset: (context: {
        e?: Event;
    }) => void;
    onSubmit: (context: import("./type").SubmitContext<import("./type").Data>) => void;
    onValidate: (result: import("./type").ValidateResultContext<import("./type").Data>) => void;
}>>;
export declare const FormItem: import("vue/types/vue").ExtendedVue<{
    useGlobalIcon(tdIcon: Record<string, any>): import("tdesign-icons-vue").GlobalIconConfig;
} & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & import("vue").default & {
    t<T>(pattern: T, placement?: number | import("../config-provider/config-receiver").Placement): string;
} & {
    global: import("..").FormConfig;
    classPrefix: string;
    componentName: string;
    commonSizeClassName: Record<string, string>;
    commonStatusClassName: Record<string, string>;
} & import("./form-item").FormItemConstructor, {
    errorList: any[];
    successList: any[];
    verifyStatus: import("./form-item").VALIDATE_STATUS;
    resetValidating: boolean;
    needResetField: boolean;
    initialValue: any;
    freeShowErrorMessage: any;
}, {
    addWatch(): void;
    setChildrenDisabled(disabled: boolean, children: import("vue").default[]): void;
    setValidateMessage(validateMessage: import("./type").FormItemValidateMessage[]): void;
    validate<T_1>(trigger: import("./type").ValidateTriggerType, showErrorMessage?: boolean, source?: "submit-function" | "submit-event"): Promise<import("./form-item").FormItemValidateResult<T_1>>;
    validateOnly<T_2>(trigger: import("./type").ValidateTriggerType): Promise<import("./form-item").FormItemValidateResult<T_2>>;
    analysisValidateResult(trigger: import("./type").ValidateTriggerType): Promise<import("./const").AnalysisValidateResult>;
    getLabelContent(): import("vue/types/vnode").ScopedSlotReturnValue;
    getLabel(): import("vue/types/vnode").ScopedSlotReturnValue;
    getDefaultIcon(): import("vue/types/vnode").ScopedSlotReturnValue;
    getIcon(statusIcon: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue) | ((h: import("vue").CreateElement, props: TdFormItemProps) => import("vue/types/vnode").ScopedSlotReturnValue), slotStatusIcon: import("vue/types/vnode").NormalizedScopedSlot, props?: TdFormItemProps): import("vue/types/vnode").ScopedSlotReturnValue;
    getSuffixIcon(): import("vue/types/vnode").ScopedSlotReturnValue;
    getEmptyValue(): any;
    resetField(resetType?: "empty" | "initial"): void;
    resetHandler(): void;
}, {
    needErrorMessage: Boolean;
    classes: import("..").ClassName;
    extraNode: JSX.Element;
    labelClasses: import("..").ClassName;
    errorClasses: string;
    disabled: boolean;
    contentClasses: import("..").ClassName;
    contentStyle: import("..").Styles;
    value: any;
    hasColon: boolean;
    needRequiredMark: boolean;
    requiredMarkPosition: string;
    innerRules: import("./type").FormRule[];
    errorMessages: import("./type").FormErrorMessage;
    statusClass: string;
}, {
    for: string;
    help: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    label: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    labelAlign: "left" | "top" | "right";
    labelWidth: string | number;
    name: string;
    requiredMark: any;
    rules: import("./type").FormRule[];
    showErrorMessage: any;
    status: string;
    statusIcon: any;
    successBorder: boolean;
    tips: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
}> & import("vue").PluginObject<import("vue/types/vue").ExtendedVue<{
    useGlobalIcon(tdIcon: Record<string, any>): import("tdesign-icons-vue").GlobalIconConfig;
} & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & import("vue").default & {
    t<T>(pattern: T, placement?: number | import("../config-provider/config-receiver").Placement): string;
} & {
    global: import("..").FormConfig;
    classPrefix: string;
    componentName: string;
    commonSizeClassName: Record<string, string>;
    commonStatusClassName: Record<string, string>;
} & import("./form-item").FormItemConstructor, {
    errorList: any[];
    successList: any[];
    verifyStatus: import("./form-item").VALIDATE_STATUS;
    resetValidating: boolean;
    needResetField: boolean;
    initialValue: any;
    freeShowErrorMessage: any;
}, {
    addWatch(): void;
    setChildrenDisabled(disabled: boolean, children: import("vue").default[]): void;
    setValidateMessage(validateMessage: import("./type").FormItemValidateMessage[]): void;
    validate<T_1>(trigger: import("./type").ValidateTriggerType, showErrorMessage?: boolean, source?: "submit-function" | "submit-event"): Promise<import("./form-item").FormItemValidateResult<T_1>>;
    validateOnly<T_2>(trigger: import("./type").ValidateTriggerType): Promise<import("./form-item").FormItemValidateResult<T_2>>;
    analysisValidateResult(trigger: import("./type").ValidateTriggerType): Promise<import("./const").AnalysisValidateResult>;
    getLabelContent(): import("vue/types/vnode").ScopedSlotReturnValue;
    getLabel(): import("vue/types/vnode").ScopedSlotReturnValue;
    getDefaultIcon(): import("vue/types/vnode").ScopedSlotReturnValue;
    getIcon(statusIcon: boolean | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue) | ((h: import("vue").CreateElement, props: TdFormItemProps) => import("vue/types/vnode").ScopedSlotReturnValue), slotStatusIcon: import("vue/types/vnode").NormalizedScopedSlot, props?: TdFormItemProps): import("vue/types/vnode").ScopedSlotReturnValue;
    getSuffixIcon(): import("vue/types/vnode").ScopedSlotReturnValue;
    getEmptyValue(): any;
    resetField(resetType?: "empty" | "initial"): void;
    resetHandler(): void;
}, {
    needErrorMessage: Boolean;
    classes: import("..").ClassName;
    extraNode: JSX.Element;
    labelClasses: import("..").ClassName;
    errorClasses: string;
    disabled: boolean;
    contentClasses: import("..").ClassName;
    contentStyle: import("..").Styles;
    value: any;
    hasColon: boolean;
    needRequiredMark: boolean;
    requiredMarkPosition: string;
    innerRules: import("./type").FormRule[];
    errorMessages: import("./type").FormErrorMessage;
    statusClass: string;
}, {
    for: string;
    help: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    label: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    labelAlign: "left" | "top" | "right";
    labelWidth: string | number;
    name: string;
    requiredMark: any;
    rules: import("./type").FormRule[];
    showErrorMessage: any;
    status: string;
    statusIcon: any;
    successBorder: boolean;
    tips: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
}>>;
export default Form;
