UNPKG

formguardian-react

Version:

A reusable, customizable Form Validator Widget for React with comprehensive validation, error handling, and micro-animations.

28 lines (27 loc) 1.35 kB
/** * Custom React hooks for form handling */ import type { FieldConfig, FormState } from '../lib/types'; /** * Hook for managing form state and validation */ export declare function useFormValidator(fields: FieldConfig[], validationMode?: 'onChange' | 'onBlur' | 'onSubmit', inputDebounceMs?: number): { formState: FormState; setFieldValue: (fieldName: string, value: unknown) => Promise<void>; setFieldTouched: (fieldName: string) => Promise<void>; validateFormFields: () => Promise<boolean>; validateSingleField: (fieldName: string, value: unknown) => Promise<string>; resetForm: () => void; setFieldValues: (values: Record<string, unknown>) => void; setFormState: import("react").Dispatch<import("react").SetStateAction<FormState>>; }; /** * Hook for managing form submission */ export declare function useFormSubmission(onSubmit: (values: Record<string, unknown>) => void | Promise<void>, validateForm: () => Promise<boolean>, currentValues: Record<string, unknown>, submitThrottleMs?: number, setFormState?: React.Dispatch<React.SetStateAction<FormState>>): { handleSubmit: (e?: React.FormEvent<HTMLFormElement>) => void; isSubmitting: boolean; isThrottled: boolean; submitError: string | null; setSubmitError: import("react").Dispatch<import("react").SetStateAction<string | null>>; };