@knightburton/react-use-form
Version:
React hook to handle form change and validation.
17 lines (16 loc) • 1.42 kB
TypeScript
import type { Schema, ValidatorRule, ValidatorError, SchemaField, Fields, Actions, Validator, ValidationResult } from './types';
export declare const extractFieldValues: <FieldTypes extends {
[key: string]: any;
}>(fields: Fields<FieldTypes>) => FieldTypes;
export declare const getIsValueExists: <Value>(value: Value) => boolean;
export declare const getFieldValidatorError: <Value, FieldTypes>(value: Value, fields: FieldTypes, error?: ValidatorError<Value, FieldTypes> | undefined) => string;
export declare const getFieldValidatorResult: <Value, FieldTypes>(rule: ValidatorRule<Value, FieldTypes>, value: Value, fields: FieldTypes) => boolean;
export declare const executeFieldValidatorsOnValue: <Value, FieldTypes>(value: Value, fields: FieldTypes, validators: Validator<Value, FieldTypes>[]) => string;
export declare const validateFieldValue: <Key, Value, FieldTypes>(value: Value, schemaField: SchemaField<Key, Value, FieldTypes>, fields: FieldTypes) => string;
export declare const validateFields: <FieldTypes extends {
[key: string]: any;
}>(fields: Fields<FieldTypes>, schema: Schema<FieldTypes>) => ValidationResult<FieldTypes>;
export declare const initializer: <FieldTypes>(schema: Schema<FieldTypes>) => Fields<FieldTypes>;
export declare const reducer: <FieldTypes extends {
[key: string]: any;
}>(fields: Fields<FieldTypes>, action: Actions<FieldTypes>) => Fields<FieldTypes>;