UNPKG

@matthew.ngo/reform

Version:

A flexible and powerful React form management library with advanced validation, state observation, and multi-group support

27 lines (26 loc) 1.08 kB
import { UseFormStateReturn } from 'react-hook-form'; import { FormStateObserverOptions, FormStateObserverReturn } from './types'; import { FormGroup } from '../../core/form/form-groups'; /** * Hook for observing form state changes without causing unnecessary re-renders * * @template T - Form data type * @param formState - React Hook Form formState object * @param options - Configuration options * @returns Object with form state observer utilities * * @example * const form = useReform(config); * const { formState } = form.formMethods; * const stateObserver = useFormStateObserver(formState, { * onDirtyChange: (isDirty) => { * if (isDirty) saveFormDraft(form.getValues()); * }, * onErrorsChange: (hasErrors, errors) => { * if (hasErrors) console.log('Form has errors:', errors); * } * }); */ export declare const useFormStateObserver: <T extends Record<string, any>>(formState: import("react-hook-form").FormState<{ groups: FormGroup<T>[]; }>, options?: FormStateObserverOptions<T>) => FormStateObserverReturn<T>;