import { type UseFormProps, type UseFormReturn } from 'react-hook-form'; import { type FieldValues } from '../../types'; /** * Custom hook to manage the entire form. * * @remarks * [API](https://react-hook-form.com/api/useform) • [Demo](https://codesandbox.io/s/react-hook-form-get-started-ts-5ksmm) • [Video](https://www.youtube.com/watch?v=RkXv4AXXC_4) * * @param props - form configuration and validation parameters. * * @returns methods - individual functions to manage the form state. {@link UseFormReturn} * * @example * ```tsx * function App() { * const { register, handleSubmit, watch, formState: { errors } } = useForm(); * const onSubmit = data => console.log(data); * * console.log(watch("example")); * * return ( *
* * * {errors.exampleRequired && This field is required} * *
* ); * } * ``` */ export declare const useForm: ({ mode, ...params }?: Partial<{ mode: "all" | "onChange" | "onBlur" | "onSubmit" | "onTouched"; disabled: boolean; reValidateMode: "onChange" | "onBlur" | "onSubmit"; defaultValues: ((payload?: unknown) => Promise) | import("react-hook-form").DefaultValues; values: TFieldValues; errors: import("react-hook-form").FieldErrors; resetOptions: Partial<{ keepDirtyValues: boolean; keepErrors: boolean; keepDirty: boolean; keepValues: boolean; keepDefaultValues: boolean; keepIsSubmitted: boolean; keepIsSubmitSuccessful: boolean; keepTouched: boolean; keepIsValid: boolean; keepSubmitCount: boolean; }> | undefined; resolver: import("react-hook-form").Resolver; context: TContext; shouldFocusError: boolean; shouldUnregister: boolean; shouldUseNativeValidation: boolean; progressive: boolean; criteriaMode: import("react-hook-form").CriteriaMode; delayError: number; }>) => UseFormReturn; export type { UseFormProps, UseFormReturn };