import React, { ReactNode } from 'react'; import { ValidateError } from 'async-validator'; import useStore, { FormState } from './useStore'; export type RenderProps = (form: FormState) => ReactNode; export interface FormProps { /**表单名称,会作为表单字段 id 前缀使用 */ name?: string; /**表单默认值,只有初始化以及重置时生效 */ initialValues?: Record; children?: ReactNode | RenderProps; /**提交表单且数据验证成功后回调事件 */ onFinish?: (values: Record) => void; /**提交表单且数据验证失败后回调事件 */ onFinishFailed?: (values: Record, errors: Record) => void; } export type IFormContext = Pick, 'dispatch' | 'fields' | 'validateField'> & Pick; export type IFormRef = Omit, 'fields' | 'dispatch' | 'form'>; export declare const FormContext: React.Context; export declare const Form: React.ForwardRefExoticComponent>; export default Form;