import { type Ref } from 'vue'; import type { CProps, DProps, RProps, UProps, KV, NFormItem } from './types'; export declare function useForm(done: UProps['done'], currentRow: Ref | undefined, onSuccess: (formData: KV) => void, onFail: (error?: string) => void, onReset?: () => void): { nFormRef: Ref {}; }; formProps: { type: null; required: false; }; items: { type: FunctionConstructor; required: true; }; }, { props: { modelValue: KV; formProps?: Partial; labelCol: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; sm: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; md: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; lg: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; xl: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; xxl: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; xxxl: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; prefixCls: StringConstructor; flex: (StringConstructor | NumberConstructor)[]; }>> & import("vue").HTMLAttributes>; }; wrapperCol: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; sm: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; md: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; lg: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; xl: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; xxl: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; xxxl: { type: import("vue").PropType; default: string | number | import("ant-design-vue/lib/grid").ColSize; }; prefixCls: StringConstructor; flex: (StringConstructor | NumberConstructor)[]; }>> & import("vue").HTMLAttributes>; }; colon: { type: BooleanConstructor; default: any; }; labelAlign: import("vue-types").VueTypeDef<"left" | "right">; labelWrap: { type: BooleanConstructor; default: any; }; prefixCls: StringConstructor; requiredMark: { type: import("vue").PropType<"" | import("ant-design-vue/lib/form/Form").RequiredMark>; default: any; }; hideRequiredMark: { type: BooleanConstructor; default: any; }; model: import("vue-types").VueTypeValidableDef<{ [key: string]: any; }> & { default: () => { [key: string]: any; }; }; rules: { type: import("vue").PropType<{ [k: string]: import("ant-design-vue/lib/form").RuleObject | import("ant-design-vue/lib/form").RuleObject[]; }>; }; validateMessages: { type: import("vue").PropType; default: import("ant-design-vue/lib/form/interface").ValidateMessages; }; validateOnRuleChange: { type: BooleanConstructor; default: any; }; scrollToFirstError: { type: import("vue").PropType>; }; onSubmit: import("vue").PropType<(e: Event) => void>; name: StringConstructor; validateTrigger: { type: import("vue").PropType; }; size: { type: import("vue").PropType; }; onValuesChange: { type: import("vue").PropType<(changedValues: any, values: any) => void>; }; onFieldsChange: { type: import("vue").PropType<(changedFields: import("ant-design-vue/lib/form/interface").FieldData[], allFields: import("ant-design-vue/lib/form/interface").FieldData[]) => void>; }; onFinish: { type: import("vue").PropType<(values: any) => void>; }; onFinishFailed: { type: import("vue").PropType<(errorInfo: import("ant-design-vue/lib/form/interface").ValidateErrorEntity) => void>; }; onValidate: { type: import("vue").PropType<(name: string | number | string[] | number[], status: boolean, errors: string[]) => void>; }; }>> | undefined; items: (formData: KV) => NFormItem[]; }; isLoading: Ref; formData: Ref>; formDataBackup: Ref>; defaultValueMap: KV; formItems: import("vue").ComputedRef; labelCol: import("vue").ComputedRef<{ span: number; }>; calcStringSize: (inputString: string) => number; formItemNamesMap: Ref>; formRef: Ref; getVModelName: (item: NFormItem) => string; reset: () => Promise; isShowFormItem: Ref; toggleItem: () => Promise; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly {}; }; formProps: { type: null; required: false; }; items: { type: FunctionConstructor; required: true; }; }>>, { modelValue: any; }> | undefined>; isShow: Ref; isSubmitting: Ref; save: () => Promise; reset: () => void; formData: Ref>; setDefault: (newFormData: KV) => void; }; export declare function walkTree(nodes: Node[], each: (node: Node) => void): void; export declare function _warn(...message: any): void; export declare function defineC(config: CProps): CProps; export declare function defineU(config: UProps): UProps; export declare function defineR(config: RProps): RProps; export declare function defineD(config: DProps): DProps; export declare function defineF(formItems: T[]): () => T[];