import type { NamePath } from 'ant-design-vue/lib/form/interface'; import type { ComputedRef, Ref } from 'vue'; import type { FormActionType, FormEmitType, FormProps, FormSchema } from '../types/form'; declare type Recordable = Record; interface Fn { (...arg: T[]): R; } interface UseFormActionContext { emit: FormEmitType; getProps: ComputedRef; getSchema: ComputedRef; formModel: Recordable; defaultValueRef: Ref; formElRef: Ref; schemaRef: Ref; handleFormValues: Fn; } export declare function useFormEvents({ emit, getProps, formModel, getSchema, defaultValueRef, formElRef, schemaRef, handleFormValues, }: UseFormActionContext): { handleSubmit: (e?: Event | undefined) => Promise; clearValidate: (name?: string | string[] | undefined) => Promise; validate: (nameList?: NamePath[] | undefined) => Promise>; validateFields: (nameList?: NamePath[] | undefined) => Promise; getFieldsValue: () => Recordable; updateSchema: (data: Partial | Partial[]) => Promise; resetSchema: (data: Partial | Partial[]) => Promise; appendSchemaByField: (schema: FormSchema, prefixField?: string | undefined, first?: boolean) => Promise; removeSchemaByFiled: (fields: string | string[]) => Promise; resetFields: () => Promise; setFieldsValue: (values: Recordable, useValidate?: boolean) => Promise; scrollToField: (name: NamePath, options?: ScrollOptions | undefined) => Promise; }; export {};