UNPKG

apollo-form

Version:
54 lines (53 loc) 2.53 kB
import { FormState, FieldValidator, FormErrors, FormManagerParams, FormTouches } from '../types'; import StateManipulator from './StateManipulator'; import BaseManager from '../managers/BaseManager'; declare class FormManager<S extends object> { name: string; protected manager: BaseManager<S>; readonly manipulator: StateManipulator<S>; protected customValidators: { [key: string]: FieldValidator<any>; }; protected validateHandler: FormManagerParams<S>['validate']; protected validationSchema: FormManagerParams<S>['validationSchema']; protected onSubmit: FormManagerParams<S>['onSubmit']; protected onChange: FormManagerParams<S>['onChange']; protected resetOnSubmit: FormManagerParams<S>['resetOnSubmit']; protected formatState: FormManagerParams<S>['formatState']; protected validateOnMount: FormManagerParams<S>['validateOnMount']; protected initialState: S; protected initialErrors: FormErrors<S>; protected initialTouches: FormTouches<S>; protected timeouts: number[]; constructor(props: FormManagerParams<S>); set(state: FormState<S>): void; get(): FormState<S>; exists(): boolean; useState<P = FormState<S>>(selector?: (state: FormState<S>) => P, dependencies?: any[]): P; watch<P = FormState<S>>(selector: ((state: FormState<S>) => P) | null, handler: (next: P, prev: P) => void): () => void; useValue(key: string): any; useTouched(key: string): any; useError(key: string): any; setValues(values: S): void; setErrors(errors: FormErrors<S>): void; setTouches(touches: FormTouches<S>): void; setFieldValue(key: string, newValue: any): FormState<S>; setFieldError(key: string, error: string | undefined): void; setFieldTouched(key: string, value: boolean): void; setFieldFocused(key: string | null): void; setIsValid(value: boolean): void; setIsSubmitted(value: boolean): void; setExistsChanges(value: boolean): void; setLoading(value: boolean): void; validate(allTouched?: boolean): void; addFieldValidator<Value>(key: string, func: FieldValidator<Value>): void; removeFieldValidator(key: string): void; submit(): Promise<void | Error>; reset(getState?: S | ((state: S) => S)): void; responseMessage(message: string): void; getInitialState(): S; renewOnChange(handler: FormManagerParams<S>['onChange']): void; renewOnSubmit(handler: FormManagerParams<S>['onSubmit']): void; stopTimeouts(): void; } export default FormManager;