Form.d.ts 1.0 KB

12345678910111213141516171819202122
  1. import * as React from 'react';
  2. import type { Store, FormInstance, FieldData, ValidateMessages, Callbacks, FormRef } from './interface';
  3. type BaseFormProps = Omit<React.FormHTMLAttributes<HTMLFormElement>, 'onSubmit' | 'children'>;
  4. type RenderProps = (values: Store, form: FormInstance) => JSX.Element | React.ReactNode;
  5. export interface FormProps<Values = any> extends BaseFormProps {
  6. initialValues?: Store;
  7. form?: FormInstance<Values>;
  8. children?: RenderProps | React.ReactNode;
  9. component?: false | string | React.FC<any> | React.ComponentClass<any>;
  10. fields?: FieldData[];
  11. name?: string;
  12. validateMessages?: ValidateMessages;
  13. onValuesChange?: Callbacks<Values>['onValuesChange'];
  14. onFieldsChange?: Callbacks<Values>['onFieldsChange'];
  15. onFinish?: Callbacks<Values>['onFinish'];
  16. onFinishFailed?: Callbacks<Values>['onFinishFailed'];
  17. validateTrigger?: string | string[] | false;
  18. preserve?: boolean;
  19. clearOnDestroy?: boolean;
  20. }
  21. declare const Form: React.ForwardRefRenderFunction<FormRef, FormProps>;
  22. export default Form;