import { ReactNode, FormHTMLAttributes } from 'react'; import { FormData, FormError } from './FormContext'; export { useForm, FormData } from './FormContext'; export { FormControl, FormControlProps, withFromControl } from './FormControl'; export { default as FormSubmitError } from './FormSubmitError'; export declare type FormStates = { data: FormData; errors: FormError; isSubmitting: boolean; isSubmitted: boolean; isSuccessful: boolean; submitTimes: number; isError: boolean; }; declare type FormProps = Omit, 'onSubmit' | 'defaultValue'> & Partial<{ defaultValue: FormData; readOnly: boolean; debounce: boolean; className: string; successMessage: string; errorMessage: string; onSubmit: (state: FormStates) => Promise; onSubmitted: (state: FormStates & { reset(): void; response: T; }) => void; children: ReactNode; }>; export default function Form({ defaultValue, readOnly, successMessage, errorMessage, debounce, className, children, onSubmit, onSubmitted, ...rest }: FormProps): JSX.Element;