formik
Version:
Forms in React, without tears
43 lines (42 loc) • 2.42 kB
TypeScript
import * as React from 'react';
import { FormikConfig, FormikErrors, FormikState, FormikTouched, FormikValues, FieldMetaProps, FieldInputProps } from './types';
export declare function useFormik<Values = object>({ validateOnChange, validateOnBlur, isInitialValid, enableReinitialize, onSubmit, ...rest }: FormikConfig<Values>): {
initialValues: Values;
initialErrors: {};
initialTouched: {};
initialStatus: any;
handleBlur: (eventOrString: any) => void | ((e: any) => void);
handleChange: (eventOrPath: string | React.ChangeEvent<any>) => void | ((eventOrTextValue: string | React.ChangeEvent<any>) => void);
handleReset: () => void;
handleSubmit: (e?: React.FormEvent<HTMLFormElement> | undefined) => void;
resetForm: (nextState?: FormikState<Values> | undefined) => void;
setErrors: (errors: FormikErrors<Values>) => void;
setFormikState: (stateOrCb: FormikState<Values> | ((state: FormikState<Values>) => FormikState<Values>)) => void;
setFieldTouched: (field: string, touched?: boolean) => void;
setFieldValue: (field: string, value: any) => void;
setFieldError: (field: string, value: string | undefined) => void;
setStatus: (status: any) => void;
setSubmitting: (isSubmitting: boolean) => void;
setTouched: (touched: FormikTouched<Values>) => void;
setValues: (values: Values) => void;
submitForm: () => Promise<void>;
validateForm: (values?: Values) => Promise<{}>;
validateField: (name: string) => Promise<void> | Promise<string | undefined>;
isValid: boolean;
dirty: boolean;
unregisterField: (name: string) => void;
registerField: (name: string, { validate }: any) => void;
getFieldProps: (name: string, type: string) => [FieldInputProps<any>, FieldMetaProps<any>];
validateOnBlur: boolean;
validateOnChange: boolean;
values: Values;
errors: FormikErrors<Values>;
touched: FormikTouched<Values>;
isSubmitting: boolean;
isValidating: boolean;
status?: any;
submitCount: number;
};
export declare function Formik<Values = object, ExtraProps = {}>(props: FormikConfig<Values> & ExtraProps): JSX.Element;
export declare function yupToFormErrors<Values>(yupError: any): FormikErrors<Values>;
export declare function validateYupSchema<T extends FormikValues>(values: T, schema: any, sync?: boolean, context?: any): Promise<Partial<T>>;