import type { FormInstance } from 'antd/es/form'; import type { FieldValueType } from './helper'; export type UnknownObject = Record; export type SearchValue = string | string[]; export interface UseFormFetchOption { /** * 请求数据,在该函数进行中业务方维护返回的数据 */ request: (d: any) => Promise; /** * 表单实例 */ form?: FormInstance; /** * 是否手动执行,页面初始化好后不自动请求数据 * @description 在一些搜索页面需要先输入关键词 * @default false */ manual?: boolean; /** * 表单里面特别数据转换,例如数字、数字数组、dayjs */ formValuesTypeMap?: Record; /** * 重置表单时忽略的字段 */ resetFieldsIgnores?: string[]; /** * 参数是否同步到 search * @default true */ formValues2search?: boolean; /** * search 是否同步到参数,适合用于对话框中不改变 URL 的分页 * @default true */ search2formValues?: boolean; } declare const useFormFetch: ({ request, form, manual, formValuesTypeMap, resetFieldsIgnores, formValues2search, search2formValues, }: UseFormFetchOption) => { loading: boolean; searchObject: Record; submit: () => void; submitWidthCurrentFormValue: (value?: UnknownObject) => void; reset: () => void; refresh: () => void; setFormValues: (values: UnknownObject) => Promise; }; export default useFormFetch;