import { FormHTMLAttributes } from 'react'; import { DirectionType, ShapeType, SizeType, ThemeType } from '../const/types.js'; import { ColProps, FormRule, FormRules } from './types.js'; export interface FormSubmitEvent { valid: boolean; } type FormChangeHandler = { bivarianceHack(model: Record): void; }["bivarianceHack"]; export interface FormItemHandle { prop: string; rules?: FormRule | FormRule[]; validate: (rules?: FormRule | FormRule[], trigger?: import('./types.js').FormValidateTrigger) => Promise; reset: (value?: unknown) => void; } export interface FormExpose { validate: (callback?: (result: FormSubmitEvent) => void) => Promise; reset: () => void; test: (key: string, trigger?: import('./types.js').FormValidateTrigger) => Promise | undefined; submit: () => Promise; } export interface FormProps extends Omit, "onSubmit" | "onReset" | "onChange" | "defaultValue" | "defaultChecked"> { layout?: DirectionType; model?: Record; name?: string; labelCol?: ColProps; wrapperCol?: ColProps; rules?: FormRules; size?: SizeType; theme?: ThemeType; shape?: ShapeType; disabled?: boolean; readOnly?: boolean; colon?: boolean; onSubmit?: (event: FormSubmitEvent) => void; onReset?: () => void; onChange?: FormChangeHandler; } declare const Form: import('react').ForwardRefExoticComponent>; export default Form;