UNPKG

react-use-simple-form

Version:

A React hook which manages and validates form state.

22 lines (21 loc) 858 B
type BaseFormState = Record<string | number | symbol, any>; type SimpleFormFieldValidator = (value: any) => boolean; export type SimpleFormValidator<Form extends BaseFormState> = (value: any, fullForm: Form) => boolean; export type SimpleFormValidators<Form extends BaseFormState> = Partial<{ [K in keyof Form]: RegExp | SimpleFormValidator<Form> | undefined; }>; export type SimpleFormManager<Form extends BaseFormState> = { [K in keyof Form]: { value: Form[K]; set: (newValue: Form[K]) => void; isValid: boolean; validate: SimpleFormFieldValidator; }; }; export declare const useSimpleForm: <Form extends BaseFormState>(defaultState: Form, validators?: SimpleFormValidators<Form>) => { state: Form; manager: SimpleFormManager<Form>; isValid: boolean; set: (newState: Form) => void; }; export {};