@hookform/resolvers
Version:
React Hook Form validation resolvers: Yup, Joi, Superstruct, Zod, Vest, Class Validator, io-ts, Nope, computed-types, TypeBox, arktype, Typanion, Effect-TS and VineJS
31 lines (27 loc) • 754 B
text/typescript
import {
FieldName,
FieldValues,
ResolverOptions,
ResolverResult,
} from 'react-hook-form';
import * as Vest from 'vest';
export type ICreateResult<
TValues extends FieldValues = FieldValues,
TContext = any,
> = ReturnType<
typeof Vest.create<
any,
any,
(values: TValues, names?: FieldName<TValues>[], context?: TContext) => void
>
>;
export type Resolver = <TValues extends FieldValues, TContext>(
schema: ICreateResult<TValues, TContext>,
schemaOptions?: never,
factoryOptions?: { mode?: 'async' | 'sync'; rawValues?: boolean },
) => (
values: TValues,
context: TContext | undefined,
options: ResolverOptions<TValues>,
) => Promise<ResolverResult<TValues>>;
export type VestErrors = Record<string, string[]>;