yup

  • Version 1.6.1
  • Published
  • 260 kB
  • 4 dependencies
  • MIT license

Install

npm i yup
yarn add yup
pnpm add yup

Overview

Dead simple Object schema validation

Index

Variables

Functions

Classes

Interfaces

Type Aliases

Namespaces

Variables

variable defaultLocale

const defaultLocale: LocaleObject;

    Functions

    function addMethod

    addMethod: {
    <T extends ISchema<any, any, any, any>>(
    schemaType: (...arg: any[]) => T,
    name: string,
    fn: (this: T, ...args: any[]) => T
    ): void;
    <T extends abstract new (...args: any) => ISchema<any, any, any, any>>(
    schemaType: T,
    name: string,
    fn: (this: InstanceType<T>, ...args: any[]) => InstanceType<T>
    ): void;
    };

      function array

      array: typeof create$2;

        function bool

        bool: typeof create$7;

          function boolean

          boolean: typeof create$7;

            function date

            date: typeof create$4;

              function getIn

              getIn: <C = any>(
              schema: any,
              path: string,
              value?: any,
              context?: C
              ) => { schema: ISchema<any> | Reference<any>; parent: any; parentPath: string };

                function isSchema

                isSchema: (obj: any) => obj is ISchema<any, any, any, any>;

                  function lazy

                  lazy: <
                  TSchema extends ISchema<any, TContext, any, any>,
                  TContext extends AnyObject = AnyObject
                  >(
                  builder: (value: any, options: ResolveOptions<TContext>) => TSchema
                  ) => Lazy<InferType<TSchema>, TContext, any>;

                    function mixed

                    mixed: typeof create$8;

                      function number

                      number: typeof create$5;

                        function object

                        object: typeof create$3;

                          function printValue

                          printValue: (value: any, quoteStrings?: boolean) => any;

                            function reach

                            reach: <P extends string, S extends ISchema<any, any, any, any>>(
                            obj: S,
                            path: P,
                            value?: any,
                            context?: any
                            ) => Reference<Get<InferType<S>, P>> | ISchema<Get<InferType<S>, P>, S['__context']>;

                              function ref

                              ref: <TValue = unknown>(
                              key: string,
                              options?: ReferenceOptions<TValue>
                              ) => Reference<TValue>;

                                function setLocale

                                setLocale: (custom: LocaleObject) => void;

                                  function string

                                  string: typeof create$6;

                                    function tuple

                                    tuple: typeof create$1;

                                      Classes

                                      class ArraySchema

                                      class ArraySchema<
                                      TIn extends any[] | null | undefined,
                                      TContext,
                                      TDefault = undefined,
                                      TFlags extends Flags = ''
                                      > extends Schema<TIn, TContext, TDefault, TFlags> {}

                                        constructor

                                        constructor(type?: ISchema<InnerType<TIn>, TContext, any, any>);

                                          property innerType

                                          readonly innerType?: ISchema<InnerType<TIn>, TContext, any, any>;

                                            property spec

                                            spec: ArraySchemaSpec<TIn, TContext>;

                                              method clone

                                              clone: (spec?: SchemaSpec<any>) => this;

                                                method compact

                                                compact: (rejector?: RejectorFn) => this;

                                                  method concat

                                                  concat: {
                                                  <IIn extends any[], IC, ID, IF extends Flags>(
                                                  schema: ArraySchema<IIn, IC, ID, IF>
                                                  ): ArraySchema<
                                                  Concat<TIn, IIn>,
                                                  TContext & IC,
                                                  Extract<IF, 'd'> extends never ? TDefault : ID,
                                                  TFlags | IF
                                                  >;
                                                  (schema: this): this;
                                                  };

                                                    method describe

                                                    describe: (options?: ResolveOptions<TContext>) => SchemaInnerTypeDescription;

                                                      method ensure

                                                      ensure: () => ArraySchema<TIn, TContext, TIn, ToggleDefault<TFlags, TIn>>;

                                                        method json

                                                        json: () => this;
                                                        • Parse an input JSON string to an object

                                                        method length

                                                        length: (
                                                        length: number | Reference<number>,
                                                        message?: Message<{ length: number }>
                                                        ) => this;

                                                          method max

                                                          max: (
                                                          max: number | Reference<number>,
                                                          message?: Message<{ max: number }>
                                                          ) => this;

                                                            method min

                                                            min: (
                                                            min: number | Reference<number>,
                                                            message?: Message<{ min: number }>
                                                            ) => this;

                                                              method of

                                                              of: <U>(
                                                              schema: ISchema<U, TContext>
                                                              ) => ArraySchema<U[] | Optionals<TIn>, TContext, TFlags>;

                                                                class BooleanSchema

                                                                class BooleanSchema<
                                                                TType extends Maybe<boolean> = boolean | undefined,
                                                                TContext = AnyObject,
                                                                TDefault = undefined,
                                                                TFlags extends Flags = ''
                                                                > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                  constructor

                                                                  constructor();

                                                                    method default

                                                                    default: <D extends TType>(
                                                                    def: DefaultThunk<D, TContext>
                                                                    ) => BooleanSchema<TType, TContext, D, ToggleDefault<TFlags, D>>;

                                                                      method defined

                                                                      defined: (
                                                                      msg?: Message
                                                                      ) => BooleanSchema<Defined<TType>, TContext, TDefault, TFlags>;

                                                                        method isFalse

                                                                        isFalse: (
                                                                        message?: Message<any> | undefined
                                                                        ) => BooleanSchema<false | Optionals<TType>, TContext, TFlags>;

                                                                          method isTrue

                                                                          isTrue: (
                                                                          message?: Message<any> | undefined
                                                                          ) => BooleanSchema<true | Optionals<TType>, TContext, TFlags>;

                                                                            method nonNullable

                                                                            nonNullable: (
                                                                            msg?: Message
                                                                            ) => BooleanSchema<NotNull<TType>, TContext, TDefault, TFlags>;

                                                                              method notRequired

                                                                              notRequired: () => BooleanSchema<Maybe<TType>, TContext, TDefault, TFlags>;

                                                                                method nullable

                                                                                nullable: () => BooleanSchema<TType | null, TContext, TDefault, TFlags>;

                                                                                  method optional

                                                                                  optional: () => BooleanSchema<TType | undefined, TContext, TDefault, TFlags>;

                                                                                    method required

                                                                                    required: (
                                                                                    msg?: Message
                                                                                    ) => BooleanSchema<NonNullable<TType>, TContext, TDefault, TFlags>;

                                                                                      method strip

                                                                                      strip: {
                                                                                      (enabled: false): BooleanSchema<
                                                                                      TType,
                                                                                      TContext,
                                                                                      TDefault,
                                                                                      UnsetFlag<TFlags, 's'>
                                                                                      >;
                                                                                      (enabled?: true): BooleanSchema<
                                                                                      TType,
                                                                                      TContext,
                                                                                      TDefault,
                                                                                      SetFlag<TFlags, 's'>
                                                                                      >;
                                                                                      };

                                                                                        class DateSchema

                                                                                        class DateSchema<
                                                                                        TType extends Maybe<Date> = Date | undefined,
                                                                                        TContext = AnyObject,
                                                                                        TDefault = undefined,
                                                                                        TFlags extends Flags = ''
                                                                                        > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                          constructor

                                                                                          constructor();

                                                                                            property INVALID_DATE

                                                                                            static INVALID_DATE: Date;

                                                                                              method max

                                                                                              max: (
                                                                                              max: unknown | Reference,
                                                                                              message?: Message<{ max: string | Date }>
                                                                                              ) => this;

                                                                                                method min

                                                                                                min: (
                                                                                                min: unknown | Reference<Date>,
                                                                                                message?: Message<{ min: string | Date }>
                                                                                                ) => this;

                                                                                                  class Lazy

                                                                                                  class Lazy<T, TContext = AnyObject, TFlags extends Flags = any>
                                                                                                  implements ISchema<T, TContext, TFlags, undefined> {}

                                                                                                    constructor

                                                                                                    constructor(builder: any);

                                                                                                      property spec

                                                                                                      spec: LazySpec;

                                                                                                        property type

                                                                                                        type: string;

                                                                                                          method asNestedTest

                                                                                                          asNestedTest: (config: NestedTestConfig) => RunTest;

                                                                                                            method cast

                                                                                                            cast: {
                                                                                                            (value: any, options?: CastOptions$1<TContext>): T;
                                                                                                            (value: any, options?: CastOptionalityOptions<TContext>): T;
                                                                                                            };

                                                                                                              method clone

                                                                                                              clone: (spec?: Partial<LazySpec>) => Lazy<T, TContext, TFlags>;

                                                                                                                method describe

                                                                                                                describe: (
                                                                                                                options?: ResolveOptions<TContext>
                                                                                                                ) => SchemaLazyDescription | SchemaFieldDescription;

                                                                                                                  method isValid

                                                                                                                  isValid: (value: any, options?: ValidateOptions<TContext>) => Promise<boolean>;

                                                                                                                    method isValidSync

                                                                                                                    isValidSync: (value: any, options?: ValidateOptions<TContext>) => boolean;

                                                                                                                      method meta

                                                                                                                      meta: {
                                                                                                                      (): Record<string, unknown> | undefined;
                                                                                                                      (obj: Record<string, unknown>): Lazy<T, TContext, TFlags>;
                                                                                                                      };

                                                                                                                        method optional

                                                                                                                        optional: () => Lazy<T | undefined, TContext, TFlags>;

                                                                                                                          method resolve

                                                                                                                          resolve: (
                                                                                                                          options: ResolveOptions<TContext>
                                                                                                                          ) => Schema<T, TContext, undefined, TFlags>;

                                                                                                                            method validate

                                                                                                                            validate: (value: any, options?: ValidateOptions<TContext>) => Promise<T>;

                                                                                                                              method validateAt

                                                                                                                              validateAt: (
                                                                                                                              path: string,
                                                                                                                              value: any,
                                                                                                                              options?: ValidateOptions<TContext>
                                                                                                                              ) => any;

                                                                                                                                method validateSync

                                                                                                                                validateSync: (value: any, options?: ValidateOptions<TContext>) => T;

                                                                                                                                  method validateSyncAt

                                                                                                                                  validateSyncAt: (
                                                                                                                                  path: string,
                                                                                                                                  value: any,
                                                                                                                                  options?: ValidateOptions<TContext>
                                                                                                                                  ) => any;

                                                                                                                                    class LazySchema

                                                                                                                                    class Lazy<T, TContext = AnyObject, TFlags extends Flags = any>
                                                                                                                                    implements ISchema<T, TContext, TFlags, undefined> {}

                                                                                                                                      constructor

                                                                                                                                      constructor(builder: any);

                                                                                                                                        property spec

                                                                                                                                        spec: LazySpec;

                                                                                                                                          property type

                                                                                                                                          type: string;

                                                                                                                                            method asNestedTest

                                                                                                                                            asNestedTest: (config: NestedTestConfig) => RunTest;

                                                                                                                                              method cast

                                                                                                                                              cast: {
                                                                                                                                              (value: any, options?: CastOptions$1<TContext>): T;
                                                                                                                                              (value: any, options?: CastOptionalityOptions<TContext>): T;
                                                                                                                                              };

                                                                                                                                                method clone

                                                                                                                                                clone: (spec?: Partial<LazySpec>) => Lazy<T, TContext, TFlags>;

                                                                                                                                                  method describe

                                                                                                                                                  describe: (
                                                                                                                                                  options?: ResolveOptions<TContext>
                                                                                                                                                  ) => SchemaLazyDescription | SchemaFieldDescription;

                                                                                                                                                    method isValid

                                                                                                                                                    isValid: (value: any, options?: ValidateOptions<TContext>) => Promise<boolean>;

                                                                                                                                                      method isValidSync

                                                                                                                                                      isValidSync: (value: any, options?: ValidateOptions<TContext>) => boolean;

                                                                                                                                                        method meta

                                                                                                                                                        meta: {
                                                                                                                                                        (): Record<string, unknown> | undefined;
                                                                                                                                                        (obj: Record<string, unknown>): Lazy<T, TContext, TFlags>;
                                                                                                                                                        };

                                                                                                                                                          method optional

                                                                                                                                                          optional: () => Lazy<T | undefined, TContext, TFlags>;

                                                                                                                                                            method resolve

                                                                                                                                                            resolve: (
                                                                                                                                                            options: ResolveOptions<TContext>
                                                                                                                                                            ) => Schema<T, TContext, undefined, TFlags>;

                                                                                                                                                              method validate

                                                                                                                                                              validate: (value: any, options?: ValidateOptions<TContext>) => Promise<T>;

                                                                                                                                                                method validateAt

                                                                                                                                                                validateAt: (
                                                                                                                                                                path: string,
                                                                                                                                                                value: any,
                                                                                                                                                                options?: ValidateOptions<TContext>
                                                                                                                                                                ) => any;

                                                                                                                                                                  method validateSync

                                                                                                                                                                  validateSync: (value: any, options?: ValidateOptions<TContext>) => T;

                                                                                                                                                                    method validateSyncAt

                                                                                                                                                                    validateSyncAt: (
                                                                                                                                                                    path: string,
                                                                                                                                                                    value: any,
                                                                                                                                                                    options?: ValidateOptions<TContext>
                                                                                                                                                                    ) => any;

                                                                                                                                                                      class MixedSchema

                                                                                                                                                                      class MixedSchema<
                                                                                                                                                                      TType extends Maybe<AnyPresentValue> = AnyPresentValue | undefined,
                                                                                                                                                                      TContext = AnyObject,
                                                                                                                                                                      TDefault = undefined,
                                                                                                                                                                      TFlags extends Flags = ''
                                                                                                                                                                      > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                        constructor

                                                                                                                                                                        constructor(spec?: MixedOptions<TType> | TypeGuard<TType>);

                                                                                                                                                                          class NumberSchema

                                                                                                                                                                          class NumberSchema<
                                                                                                                                                                          TType extends Maybe<number> = number | undefined,
                                                                                                                                                                          TContext = AnyObject,
                                                                                                                                                                          TDefault = undefined,
                                                                                                                                                                          TFlags extends Flags = ''
                                                                                                                                                                          > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                            constructor

                                                                                                                                                                            constructor();

                                                                                                                                                                              method integer

                                                                                                                                                                              integer: (message?: Message<any>) => this;

                                                                                                                                                                                method lessThan

                                                                                                                                                                                lessThan: (
                                                                                                                                                                                less: number | Reference<number>,
                                                                                                                                                                                message?: Message<{ less: number }>
                                                                                                                                                                                ) => this;

                                                                                                                                                                                  method max

                                                                                                                                                                                  max: (
                                                                                                                                                                                  max: number | Reference<number>,
                                                                                                                                                                                  message?: Message<{ max: number }>
                                                                                                                                                                                  ) => this;

                                                                                                                                                                                    method min

                                                                                                                                                                                    min: (
                                                                                                                                                                                    min: number | Reference<number>,
                                                                                                                                                                                    message?: Message<{ min: number }>
                                                                                                                                                                                    ) => this;

                                                                                                                                                                                      method moreThan

                                                                                                                                                                                      moreThan: (
                                                                                                                                                                                      more: number | Reference<number>,
                                                                                                                                                                                      message?: Message<{ more: number }>
                                                                                                                                                                                      ) => this;

                                                                                                                                                                                        method negative

                                                                                                                                                                                        negative: (msg?: Message<{ less: number }>) => this;

                                                                                                                                                                                          method positive

                                                                                                                                                                                          positive: (msg?: Message<{ more: number }>) => this;

                                                                                                                                                                                            method round

                                                                                                                                                                                            round: (method?: 'ceil' | 'floor' | 'round' | 'trunc') => this;

                                                                                                                                                                                              method truncate

                                                                                                                                                                                              truncate: () => this;

                                                                                                                                                                                                class ObjectSchema

                                                                                                                                                                                                class ObjectSchema<
                                                                                                                                                                                                TIn extends Maybe<AnyObject>,
                                                                                                                                                                                                TContext = AnyObject,
                                                                                                                                                                                                TDefault = any,
                                                                                                                                                                                                TFlags extends Flags = ''
                                                                                                                                                                                                > extends Schema<MakeKeysOptional<TIn>, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                  constructor

                                                                                                                                                                                                  constructor(spec?: Shape<TIn, TContext>);

                                                                                                                                                                                                    property fields

                                                                                                                                                                                                    fields: Shape<NonNullable<TIn>, TContext>;

                                                                                                                                                                                                      property spec

                                                                                                                                                                                                      spec: ObjectSchemaSpec;

                                                                                                                                                                                                        method camelCase

                                                                                                                                                                                                        camelCase: () => this;

                                                                                                                                                                                                          method clone

                                                                                                                                                                                                          clone: (spec?: Partial<ObjectSchemaSpec>) => this;

                                                                                                                                                                                                            method concat

                                                                                                                                                                                                            concat: {
                                                                                                                                                                                                            <IIn extends AnyObject, IC, ID, IF extends Flags>(
                                                                                                                                                                                                            schema: ObjectSchema<IIn, IC, ID, IF>
                                                                                                                                                                                                            ): ObjectSchema<
                                                                                                                                                                                                            ConcatObjectTypes<TIn, IIn>,
                                                                                                                                                                                                            TContext & IC,
                                                                                                                                                                                                            Extract<IF, 'd'> extends never
                                                                                                                                                                                                            ? TDefault extends AnyObject
                                                                                                                                                                                                            ? ID extends AnyObject
                                                                                                                                                                                                            ? _<ConcatObjectTypes<TDefault, ID>>
                                                                                                                                                                                                            : ID
                                                                                                                                                                                                            : ID
                                                                                                                                                                                                            : ID,
                                                                                                                                                                                                            TFlags | IF
                                                                                                                                                                                                            >;
                                                                                                                                                                                                            (schema: this): this;
                                                                                                                                                                                                            };

                                                                                                                                                                                                              method constantCase

                                                                                                                                                                                                              constantCase: () => this;

                                                                                                                                                                                                                method deepPartial

                                                                                                                                                                                                                deepPartial: () => ObjectSchema<PartialDeep<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                  method describe

                                                                                                                                                                                                                  describe: (options?: ResolveOptions<TContext>) => SchemaObjectDescription;

                                                                                                                                                                                                                    method exact

                                                                                                                                                                                                                    exact: (message?: Message) => this;
                                                                                                                                                                                                                    • Similar to noUnknown but only validates that an object is the right shape without stripping the unknown keys

                                                                                                                                                                                                                    method from

                                                                                                                                                                                                                    from: (from: string, to: keyof TIn, alias?: boolean) => this;

                                                                                                                                                                                                                      method json

                                                                                                                                                                                                                      json: () => this;
                                                                                                                                                                                                                      • Parse an input JSON string to an object

                                                                                                                                                                                                                      method noUnknown

                                                                                                                                                                                                                      noUnknown: {
                                                                                                                                                                                                                      (message?: Message): this;
                                                                                                                                                                                                                      (noAllow: boolean, message?: Message<any>): this;
                                                                                                                                                                                                                      };

                                                                                                                                                                                                                        method omit

                                                                                                                                                                                                                        omit: <TKey extends keyof TIn>(
                                                                                                                                                                                                                        keys: readonly TKey[]
                                                                                                                                                                                                                        ) => ObjectSchema<
                                                                                                                                                                                                                        { [K in Exclude<keyof TIn, TKey>]: TIn[K] },
                                                                                                                                                                                                                        TContext,
                                                                                                                                                                                                                        TDefault,
                                                                                                                                                                                                                        TFlags
                                                                                                                                                                                                                        >;

                                                                                                                                                                                                                          method partial

                                                                                                                                                                                                                          partial: () => ObjectSchema<Partial<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                            method pick

                                                                                                                                                                                                                            pick: <TKey extends keyof TIn>(
                                                                                                                                                                                                                            keys: readonly TKey[]
                                                                                                                                                                                                                            ) => ObjectSchema<{ [K in TKey]: TIn[K] }, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                              method shape

                                                                                                                                                                                                                              shape: <U extends ObjectShape>(
                                                                                                                                                                                                                              additions: U,
                                                                                                                                                                                                                              excludes?: readonly [string, string][]
                                                                                                                                                                                                                              ) => ObjectSchema<
                                                                                                                                                                                                                              | _<
                                                                                                                                                                                                                              {
                                                                                                                                                                                                                              [P in keyof TIn]: P extends keyof U
                                                                                                                                                                                                                              ? TypeFromShape<U, TContext>[P]
                                                                                                                                                                                                                              : TIn[P];
                                                                                                                                                                                                                              } & TypeFromShape<U, TContext>
                                                                                                                                                                                                                              >
                                                                                                                                                                                                                              | _<Extract<TIn, null>>,
                                                                                                                                                                                                                              TContext,
                                                                                                                                                                                                                              Extract<TFlags, 'd'> extends never
                                                                                                                                                                                                                              ? _<TDefault & DefaultFromShape<U>>
                                                                                                                                                                                                                              : TDefault,
                                                                                                                                                                                                                              TFlags
                                                                                                                                                                                                                              >;

                                                                                                                                                                                                                                method snakeCase

                                                                                                                                                                                                                                snakeCase: () => this;

                                                                                                                                                                                                                                  method stripUnknown

                                                                                                                                                                                                                                  stripUnknown: () => this;

                                                                                                                                                                                                                                    method transformKeys

                                                                                                                                                                                                                                    transformKeys: (fn: (key: string) => string) => this;

                                                                                                                                                                                                                                      method unknown

                                                                                                                                                                                                                                      unknown: (allow?: boolean, message?: Message<{ unknown: string[] }>) => this;

                                                                                                                                                                                                                                        class Reference

                                                                                                                                                                                                                                        class Reference<TValue = unknown> {}

                                                                                                                                                                                                                                          constructor

                                                                                                                                                                                                                                          constructor(key: string, options?: ReferenceOptions<TValue>);

                                                                                                                                                                                                                                            property getter

                                                                                                                                                                                                                                            readonly getter: (data: unknown) => unknown;

                                                                                                                                                                                                                                              property isContext

                                                                                                                                                                                                                                              readonly isContext: boolean;

                                                                                                                                                                                                                                                property isSibling

                                                                                                                                                                                                                                                readonly isSibling: boolean;

                                                                                                                                                                                                                                                  property isValue

                                                                                                                                                                                                                                                  readonly isValue: boolean;

                                                                                                                                                                                                                                                    property key

                                                                                                                                                                                                                                                    readonly key: string;

                                                                                                                                                                                                                                                      property map

                                                                                                                                                                                                                                                      readonly map?: (value: unknown) => TValue;

                                                                                                                                                                                                                                                        property path

                                                                                                                                                                                                                                                        readonly path: any;

                                                                                                                                                                                                                                                          method cast

                                                                                                                                                                                                                                                          cast: (value: any, options?: { parent?: {}; context?: {} }) => TValue;
                                                                                                                                                                                                                                                          • Parameter value

                                                                                                                                                                                                                                                            Parameter options

                                                                                                                                                                                                                                                            Parameter

                                                                                                                                                                                                                                                            {Object=} options.context

                                                                                                                                                                                                                                                            Parameter

                                                                                                                                                                                                                                                            {Object=} options.parent

                                                                                                                                                                                                                                                          method describe

                                                                                                                                                                                                                                                          describe: () => SchemaRefDescription;

                                                                                                                                                                                                                                                            method getValue

                                                                                                                                                                                                                                                            getValue: (value: any, parent?: {}, context?: {}) => TValue;

                                                                                                                                                                                                                                                              method isRef

                                                                                                                                                                                                                                                              static isRef: (value: any) => value is Reference<unknown>;

                                                                                                                                                                                                                                                                method resolve

                                                                                                                                                                                                                                                                resolve: () => this;

                                                                                                                                                                                                                                                                  method toString

                                                                                                                                                                                                                                                                  toString: () => string;

                                                                                                                                                                                                                                                                    class Schema

                                                                                                                                                                                                                                                                    abstract class Schema<
                                                                                                                                                                                                                                                                    TType = any,
                                                                                                                                                                                                                                                                    TContext = any,
                                                                                                                                                                                                                                                                    TDefault = any,
                                                                                                                                                                                                                                                                    TFlags extends Flags = ''
                                                                                                                                                                                                                                                                    > implements ISchema<TType, TContext, TFlags, TDefault> {}

                                                                                                                                                                                                                                                                      constructor

                                                                                                                                                                                                                                                                      constructor(options: SchemaOptions<TType, any>);

                                                                                                                                                                                                                                                                        property deps

                                                                                                                                                                                                                                                                        readonly deps: readonly string[];

                                                                                                                                                                                                                                                                          property exclusiveTests

                                                                                                                                                                                                                                                                          protected exclusiveTests: Record<string, boolean>;

                                                                                                                                                                                                                                                                            property spec

                                                                                                                                                                                                                                                                            spec: SchemaSpec<any>;

                                                                                                                                                                                                                                                                              property tests

                                                                                                                                                                                                                                                                              tests: Test[];

                                                                                                                                                                                                                                                                                property transforms

                                                                                                                                                                                                                                                                                transforms: TransformFunction<AnySchema<any, any, any, Flags>>[];

                                                                                                                                                                                                                                                                                  property type

                                                                                                                                                                                                                                                                                  readonly type: string;

                                                                                                                                                                                                                                                                                    method asNestedTest

                                                                                                                                                                                                                                                                                    asNestedTest: ({
                                                                                                                                                                                                                                                                                    key,
                                                                                                                                                                                                                                                                                    index,
                                                                                                                                                                                                                                                                                    parent,
                                                                                                                                                                                                                                                                                    parentPath,
                                                                                                                                                                                                                                                                                    originalParent,
                                                                                                                                                                                                                                                                                    options,
                                                                                                                                                                                                                                                                                    }: NestedTestConfig) => RunTest;

                                                                                                                                                                                                                                                                                      method cast

                                                                                                                                                                                                                                                                                      cast: {
                                                                                                                                                                                                                                                                                      (value: any, options?: CastOptions$1<TContext>): this['__outputType'];
                                                                                                                                                                                                                                                                                      (
                                                                                                                                                                                                                                                                                      value: any,
                                                                                                                                                                                                                                                                                      options: CastOptionalityOptions<TContext>
                                                                                                                                                                                                                                                                                      ): this['__outputType'];
                                                                                                                                                                                                                                                                                      };
                                                                                                                                                                                                                                                                                      • Run the configured transform pipeline over an input value.

                                                                                                                                                                                                                                                                                      method clone

                                                                                                                                                                                                                                                                                      clone: (spec?: Partial<SchemaSpec<any>>) => this;

                                                                                                                                                                                                                                                                                        method concat

                                                                                                                                                                                                                                                                                        concat: {
                                                                                                                                                                                                                                                                                        (schema: this): this;
                                                                                                                                                                                                                                                                                        (schema: AnySchema<any, any, any, Flags>): AnySchema<any, any, any, Flags>;
                                                                                                                                                                                                                                                                                        };

                                                                                                                                                                                                                                                                                          method default

                                                                                                                                                                                                                                                                                          default: (def: DefaultThunk<any>) => any;

                                                                                                                                                                                                                                                                                            method defined

                                                                                                                                                                                                                                                                                            defined: (message?: Message<any>) => any;

                                                                                                                                                                                                                                                                                              method describe

                                                                                                                                                                                                                                                                                              describe: (options?: ResolveOptions<TContext>) => SchemaDescription;
                                                                                                                                                                                                                                                                                              • Return a serialized description of the schema including validations, flags, types etc.

                                                                                                                                                                                                                                                                                                Parameter options

                                                                                                                                                                                                                                                                                                Provide any needed context for resolving runtime schema alterations (lazy, when conditions, etc).

                                                                                                                                                                                                                                                                                              method getDefault

                                                                                                                                                                                                                                                                                              getDefault: (options?: ResolveOptions<TContext>) => TDefault;

                                                                                                                                                                                                                                                                                                method isType

                                                                                                                                                                                                                                                                                                isType: (v: unknown) => v is TType;

                                                                                                                                                                                                                                                                                                  method isValid

                                                                                                                                                                                                                                                                                                  isValid: (value: any, options?: ValidateOptions<TContext>) => Promise<boolean>;

                                                                                                                                                                                                                                                                                                    method isValidSync

                                                                                                                                                                                                                                                                                                    isValidSync: (
                                                                                                                                                                                                                                                                                                    value: any,
                                                                                                                                                                                                                                                                                                    options?: ValidateOptions<TContext>
                                                                                                                                                                                                                                                                                                    ) => value is this['__outputType'];

                                                                                                                                                                                                                                                                                                      method label

                                                                                                                                                                                                                                                                                                      label: (label: string) => this;

                                                                                                                                                                                                                                                                                                        method meta

                                                                                                                                                                                                                                                                                                        meta: { (): SchemaMetadata | undefined; (obj: Record<PropertyKey, any>): this };

                                                                                                                                                                                                                                                                                                          method nonNullable

                                                                                                                                                                                                                                                                                                          nonNullable: (message?: Message<any>) => any;

                                                                                                                                                                                                                                                                                                            method notOneOf

                                                                                                                                                                                                                                                                                                            notOneOf: <U extends TType>(
                                                                                                                                                                                                                                                                                                            enums: ReadonlyArray<Maybe<U> | Reference>,
                                                                                                                                                                                                                                                                                                            message?: Message<{ values: any }>
                                                                                                                                                                                                                                                                                                            ) => this;

                                                                                                                                                                                                                                                                                                              method notRequired

                                                                                                                                                                                                                                                                                                              notRequired: () => any;

                                                                                                                                                                                                                                                                                                                method nullability

                                                                                                                                                                                                                                                                                                                protected nullability: (nullable: boolean, message?: Message<any>) => this;

                                                                                                                                                                                                                                                                                                                  method nullable

                                                                                                                                                                                                                                                                                                                  nullable: () => any;

                                                                                                                                                                                                                                                                                                                    method oneOf

                                                                                                                                                                                                                                                                                                                    oneOf: {
                                                                                                                                                                                                                                                                                                                    <U extends TType>(
                                                                                                                                                                                                                                                                                                                    enums: ReadonlyArray<U | Reference>,
                                                                                                                                                                                                                                                                                                                    message?: Message<{ values: any }>
                                                                                                                                                                                                                                                                                                                    ): this;
                                                                                                                                                                                                                                                                                                                    (
                                                                                                                                                                                                                                                                                                                    enums: readonly (Reference<unknown> | TType)[],
                                                                                                                                                                                                                                                                                                                    message: Message<{ values: any }>
                                                                                                                                                                                                                                                                                                                    ): any;
                                                                                                                                                                                                                                                                                                                    };

                                                                                                                                                                                                                                                                                                                      method optional

                                                                                                                                                                                                                                                                                                                      optional: () => any;

                                                                                                                                                                                                                                                                                                                        method optionality

                                                                                                                                                                                                                                                                                                                        protected optionality: (optional: boolean, message?: Message<any>) => this;

                                                                                                                                                                                                                                                                                                                          method required

                                                                                                                                                                                                                                                                                                                          required: (message?: Message<any>) => any;

                                                                                                                                                                                                                                                                                                                            method resolve

                                                                                                                                                                                                                                                                                                                            resolve: (options: ResolveOptions<TContext>) => this;

                                                                                                                                                                                                                                                                                                                              method resolveOptions

                                                                                                                                                                                                                                                                                                                              protected resolveOptions: <T extends InternalOptions<any>>(options: T) => T;

                                                                                                                                                                                                                                                                                                                                method runTests

                                                                                                                                                                                                                                                                                                                                protected runTests: (
                                                                                                                                                                                                                                                                                                                                runOptions: TestRunOptions,
                                                                                                                                                                                                                                                                                                                                panic: (err: Error, value: unknown) => void,
                                                                                                                                                                                                                                                                                                                                next: (errors: ValidationError[], value: unknown) => void
                                                                                                                                                                                                                                                                                                                                ) => void;
                                                                                                                                                                                                                                                                                                                                • Executes a set of validations, either schema, produced Tests or a nested schema validate result.

                                                                                                                                                                                                                                                                                                                                method strict

                                                                                                                                                                                                                                                                                                                                strict: (isStrict?: boolean) => this;

                                                                                                                                                                                                                                                                                                                                  method strip

                                                                                                                                                                                                                                                                                                                                  strip: (strip?: boolean) => any;

                                                                                                                                                                                                                                                                                                                                    method test

                                                                                                                                                                                                                                                                                                                                    test: {
                                                                                                                                                                                                                                                                                                                                    (options: TestConfig<this['__outputType'], TContext>): this;
                                                                                                                                                                                                                                                                                                                                    (test: TestFunction<this['__outputType'], TContext>): this;
                                                                                                                                                                                                                                                                                                                                    (name: string, test: TestFunction<this['__outputType'], TContext>): this;
                                                                                                                                                                                                                                                                                                                                    (
                                                                                                                                                                                                                                                                                                                                    name: string,
                                                                                                                                                                                                                                                                                                                                    message: Message<any>,
                                                                                                                                                                                                                                                                                                                                    test: TestFunction<this['__outputType'], TContext>
                                                                                                                                                                                                                                                                                                                                    ): this;
                                                                                                                                                                                                                                                                                                                                    };
                                                                                                                                                                                                                                                                                                                                    • Adds a test function to the schema's queue of tests. tests can be exclusive or non-exclusive.

                                                                                                                                                                                                                                                                                                                                      - exclusive tests, will replace any existing tests of the same name. - non-exclusive: can be stacked

                                                                                                                                                                                                                                                                                                                                      If a non-exclusive test is added to a schema with an exclusive test of the same name the exclusive test is removed and further tests of the same name will be stacked.

                                                                                                                                                                                                                                                                                                                                      If an exclusive test is added to a schema with non-exclusive tests of the same name the previous tests are removed and further tests of the same name will replace each other.

                                                                                                                                                                                                                                                                                                                                    method transform

                                                                                                                                                                                                                                                                                                                                    transform: (fn: TransformFunction<this>) => this;

                                                                                                                                                                                                                                                                                                                                      method typeError

                                                                                                                                                                                                                                                                                                                                      typeError: (message: Message) => this;

                                                                                                                                                                                                                                                                                                                                        method validate

                                                                                                                                                                                                                                                                                                                                        validate: (
                                                                                                                                                                                                                                                                                                                                        value: any,
                                                                                                                                                                                                                                                                                                                                        options?: ValidateOptions<TContext>
                                                                                                                                                                                                                                                                                                                                        ) => Promise<this['__outputType']>;

                                                                                                                                                                                                                                                                                                                                          method validateSync

                                                                                                                                                                                                                                                                                                                                          validateSync: (
                                                                                                                                                                                                                                                                                                                                          value: any,
                                                                                                                                                                                                                                                                                                                                          options?: ValidateOptions<TContext>
                                                                                                                                                                                                                                                                                                                                          ) => this['__outputType'];

                                                                                                                                                                                                                                                                                                                                            method when

                                                                                                                                                                                                                                                                                                                                            when: {
                                                                                                                                                                                                                                                                                                                                            (builder: ConditionBuilder<this>): this;
                                                                                                                                                                                                                                                                                                                                            (keys: string | string[], builder: ConditionBuilder<this>): this;
                                                                                                                                                                                                                                                                                                                                            (options: ConditionConfig<this>): this;
                                                                                                                                                                                                                                                                                                                                            (keys: string | string[], options: ConditionConfig<this>): this;
                                                                                                                                                                                                                                                                                                                                            };

                                                                                                                                                                                                                                                                                                                                              method withMutation

                                                                                                                                                                                                                                                                                                                                              withMutation: <T>(fn: (schema: this) => T) => T;

                                                                                                                                                                                                                                                                                                                                                class StringSchema

                                                                                                                                                                                                                                                                                                                                                class StringSchema<
                                                                                                                                                                                                                                                                                                                                                TType extends Maybe<string> = string | undefined,
                                                                                                                                                                                                                                                                                                                                                TContext = AnyObject,
                                                                                                                                                                                                                                                                                                                                                TDefault = undefined,
                                                                                                                                                                                                                                                                                                                                                TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                  constructor

                                                                                                                                                                                                                                                                                                                                                  constructor();

                                                                                                                                                                                                                                                                                                                                                    method datetime

                                                                                                                                                                                                                                                                                                                                                    datetime: (options?: DateTimeOptions | DateTimeOptions['message']) => this;

                                                                                                                                                                                                                                                                                                                                                      method email

                                                                                                                                                                                                                                                                                                                                                      email: (message?: Message<{ regex: RegExp }>) => this;

                                                                                                                                                                                                                                                                                                                                                        method ensure

                                                                                                                                                                                                                                                                                                                                                        ensure: () => StringSchema<NonNullable<TType>>;

                                                                                                                                                                                                                                                                                                                                                          method length

                                                                                                                                                                                                                                                                                                                                                          length: (
                                                                                                                                                                                                                                                                                                                                                          length: number | Reference<number>,
                                                                                                                                                                                                                                                                                                                                                          message?: Message<{ length: number }>
                                                                                                                                                                                                                                                                                                                                                          ) => this;

                                                                                                                                                                                                                                                                                                                                                            method lowercase

                                                                                                                                                                                                                                                                                                                                                            lowercase: (message?: Message<any>) => this;

                                                                                                                                                                                                                                                                                                                                                              method matches

                                                                                                                                                                                                                                                                                                                                                              matches: (
                                                                                                                                                                                                                                                                                                                                                              regex: RegExp,
                                                                                                                                                                                                                                                                                                                                                              options?: MatchOptions | MatchOptions['message']
                                                                                                                                                                                                                                                                                                                                                              ) => this;

                                                                                                                                                                                                                                                                                                                                                                method max

                                                                                                                                                                                                                                                                                                                                                                max: (
                                                                                                                                                                                                                                                                                                                                                                max: number | Reference<number>,
                                                                                                                                                                                                                                                                                                                                                                message?: Message<{ max: number }>
                                                                                                                                                                                                                                                                                                                                                                ) => this;

                                                                                                                                                                                                                                                                                                                                                                  method min

                                                                                                                                                                                                                                                                                                                                                                  min: (
                                                                                                                                                                                                                                                                                                                                                                  min: number | Reference<number>,
                                                                                                                                                                                                                                                                                                                                                                  message?: Message<{ min: number }>
                                                                                                                                                                                                                                                                                                                                                                  ) => this;

                                                                                                                                                                                                                                                                                                                                                                    method trim

                                                                                                                                                                                                                                                                                                                                                                    trim: (message?: Message<any>) => this;

                                                                                                                                                                                                                                                                                                                                                                      method uppercase

                                                                                                                                                                                                                                                                                                                                                                      uppercase: (message?: Message<any>) => this;

                                                                                                                                                                                                                                                                                                                                                                        method url

                                                                                                                                                                                                                                                                                                                                                                        url: (message?: Message<{ regex: RegExp }>) => this;

                                                                                                                                                                                                                                                                                                                                                                          method uuid

                                                                                                                                                                                                                                                                                                                                                                          uuid: (message?: Message<{ regex: RegExp }>) => this;

                                                                                                                                                                                                                                                                                                                                                                            class TupleSchema

                                                                                                                                                                                                                                                                                                                                                                            class TupleSchema<
                                                                                                                                                                                                                                                                                                                                                                            TType extends Maybe<AnyTuple> = AnyTuple | undefined,
                                                                                                                                                                                                                                                                                                                                                                            TContext = AnyObject,
                                                                                                                                                                                                                                                                                                                                                                            TDefault = undefined,
                                                                                                                                                                                                                                                                                                                                                                            TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                            > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                                              constructor

                                                                                                                                                                                                                                                                                                                                                                              constructor(
                                                                                                                                                                                                                                                                                                                                                                              schemas: [ISchema<any, any, any, any>, ...ISchema<any, any, any, any>[]]
                                                                                                                                                                                                                                                                                                                                                                              );

                                                                                                                                                                                                                                                                                                                                                                                property spec

                                                                                                                                                                                                                                                                                                                                                                                spec: TupleSchemaSpec<TType>;

                                                                                                                                                                                                                                                                                                                                                                                  method describe

                                                                                                                                                                                                                                                                                                                                                                                  describe: (options?: ResolveOptions<TContext>) => SchemaInnerTypeDescription;

                                                                                                                                                                                                                                                                                                                                                                                    class ValidationError

                                                                                                                                                                                                                                                                                                                                                                                    class ValidationError extends Error {}

                                                                                                                                                                                                                                                                                                                                                                                      constructor

                                                                                                                                                                                                                                                                                                                                                                                      constructor(
                                                                                                                                                                                                                                                                                                                                                                                      errorOrErrors: string | ValidationError | readonly ValidationError[],
                                                                                                                                                                                                                                                                                                                                                                                      value?: any,
                                                                                                                                                                                                                                                                                                                                                                                      field?: string,
                                                                                                                                                                                                                                                                                                                                                                                      type?: string,
                                                                                                                                                                                                                                                                                                                                                                                      disableStack?: boolean
                                                                                                                                                                                                                                                                                                                                                                                      );

                                                                                                                                                                                                                                                                                                                                                                                        property [Symbol.toStringTag]

                                                                                                                                                                                                                                                                                                                                                                                        [Symbol.toStringTag]: string;

                                                                                                                                                                                                                                                                                                                                                                                          property errors

                                                                                                                                                                                                                                                                                                                                                                                          errors: string[];

                                                                                                                                                                                                                                                                                                                                                                                            property inner

                                                                                                                                                                                                                                                                                                                                                                                            inner: ValidationError[];

                                                                                                                                                                                                                                                                                                                                                                                              property params

                                                                                                                                                                                                                                                                                                                                                                                              params?: Params;

                                                                                                                                                                                                                                                                                                                                                                                                property path

                                                                                                                                                                                                                                                                                                                                                                                                path?: string;

                                                                                                                                                                                                                                                                                                                                                                                                  property type

                                                                                                                                                                                                                                                                                                                                                                                                  type?: string;

                                                                                                                                                                                                                                                                                                                                                                                                    property value

                                                                                                                                                                                                                                                                                                                                                                                                    value: any;

                                                                                                                                                                                                                                                                                                                                                                                                      method [Symbol.hasInstance]

                                                                                                                                                                                                                                                                                                                                                                                                      static [Symbol.hasInstance]: (inst: any) => boolean;

                                                                                                                                                                                                                                                                                                                                                                                                        method formatError

                                                                                                                                                                                                                                                                                                                                                                                                        static formatError: (message: unknown, params: Params) => any;

                                                                                                                                                                                                                                                                                                                                                                                                          method isError

                                                                                                                                                                                                                                                                                                                                                                                                          static isError: (err: any) => err is ValidationError;

                                                                                                                                                                                                                                                                                                                                                                                                            Interfaces

                                                                                                                                                                                                                                                                                                                                                                                                            interface ArraySchema

                                                                                                                                                                                                                                                                                                                                                                                                            interface ArraySchema<
                                                                                                                                                                                                                                                                                                                                                                                                            TIn extends any[] | null | undefined,
                                                                                                                                                                                                                                                                                                                                                                                                            TContext,
                                                                                                                                                                                                                                                                                                                                                                                                            TDefault = undefined,
                                                                                                                                                                                                                                                                                                                                                                                                            TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                                                            > extends Schema<TIn, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                                                                              method default

                                                                                                                                                                                                                                                                                                                                                                                                              default: <D extends TIn>(
                                                                                                                                                                                                                                                                                                                                                                                                              def: DefaultThunk<D, TContext>
                                                                                                                                                                                                                                                                                                                                                                                                              ) => ArraySchema<TIn, TContext, D, ToggleDefault<TFlags, D>>;

                                                                                                                                                                                                                                                                                                                                                                                                                method defined

                                                                                                                                                                                                                                                                                                                                                                                                                defined: (
                                                                                                                                                                                                                                                                                                                                                                                                                msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                ) => ArraySchema<Defined<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                  method nonNullable

                                                                                                                                                                                                                                                                                                                                                                                                                  nonNullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                  msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                  ) => ArraySchema<NotNull<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                    method notRequired

                                                                                                                                                                                                                                                                                                                                                                                                                    notRequired: () => ArraySchema<Maybe<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                      method nullable

                                                                                                                                                                                                                                                                                                                                                                                                                      nullable: (msg?: Message) => ArraySchema<TIn | null, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                        method optional

                                                                                                                                                                                                                                                                                                                                                                                                                        optional: () => ArraySchema<TIn | undefined, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                          method required

                                                                                                                                                                                                                                                                                                                                                                                                                          required: (
                                                                                                                                                                                                                                                                                                                                                                                                                          msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                          ) => ArraySchema<NonNullable<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                            method strip

                                                                                                                                                                                                                                                                                                                                                                                                                            strip: {
                                                                                                                                                                                                                                                                                                                                                                                                                            (enabled: false): ArraySchema<
                                                                                                                                                                                                                                                                                                                                                                                                                            TIn,
                                                                                                                                                                                                                                                                                                                                                                                                                            TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                            TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                            UnsetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                            >;
                                                                                                                                                                                                                                                                                                                                                                                                                            (enabled?: true): ArraySchema<TIn, TContext, TDefault, SetFlag<TFlags, 's'>>;
                                                                                                                                                                                                                                                                                                                                                                                                                            };

                                                                                                                                                                                                                                                                                                                                                                                                                              interface CustomSchemaMetadata

                                                                                                                                                                                                                                                                                                                                                                                                                              interface CustomSchemaMetadata {}

                                                                                                                                                                                                                                                                                                                                                                                                                                interface DateSchema

                                                                                                                                                                                                                                                                                                                                                                                                                                interface DateSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                TType extends Maybe<Date>,
                                                                                                                                                                                                                                                                                                                                                                                                                                TContext = AnyObject,
                                                                                                                                                                                                                                                                                                                                                                                                                                TDefault = undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                                                                                > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                  method concat

                                                                                                                                                                                                                                                                                                                                                                                                                                  concat: <TOther extends DateSchema<any, any, undefined, ''>>(
                                                                                                                                                                                                                                                                                                                                                                                                                                  schema: TOther
                                                                                                                                                                                                                                                                                                                                                                                                                                  ) => TOther;

                                                                                                                                                                                                                                                                                                                                                                                                                                    method default

                                                                                                                                                                                                                                                                                                                                                                                                                                    default: <D extends TType>(
                                                                                                                                                                                                                                                                                                                                                                                                                                    def: DefaultThunk<D, TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                    ) => DateSchema<TType, TContext, D, ToggleDefault<TFlags, D>>;

                                                                                                                                                                                                                                                                                                                                                                                                                                      method defined

                                                                                                                                                                                                                                                                                                                                                                                                                                      defined: (
                                                                                                                                                                                                                                                                                                                                                                                                                                      msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                      ) => DateSchema<Defined<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                        method nonNullable

                                                                                                                                                                                                                                                                                                                                                                                                                                        nonNullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                        msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                        ) => DateSchema<NotNull<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                          method notRequired

                                                                                                                                                                                                                                                                                                                                                                                                                                          notRequired: () => DateSchema<Maybe<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                            method nullable

                                                                                                                                                                                                                                                                                                                                                                                                                                            nullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                            msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                            ) => DateSchema<TType | null, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                              method optional

                                                                                                                                                                                                                                                                                                                                                                                                                                              optional: () => DateSchema<TType | undefined, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                method required

                                                                                                                                                                                                                                                                                                                                                                                                                                                required: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                ) => DateSchema<NonNullable<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                  method strip

                                                                                                                                                                                                                                                                                                                                                                                                                                                  strip: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                  (enabled: false): DateSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                  TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                  TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                  TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                  UnsetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                  >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                  (enabled?: true): DateSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                  TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                  TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                  TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                  SetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                  >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                  };

                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface ISchema

                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface ISchema<T, C = any, F extends Flags = any, D = any> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                      method asNestedTest

                                                                                                                                                                                                                                                                                                                                                                                                                                                      asNestedTest: (config: NestedTestConfig) => Test;

                                                                                                                                                                                                                                                                                                                                                                                                                                                        method cast

                                                                                                                                                                                                                                                                                                                                                                                                                                                        cast: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                        (value: any, options?: CastOptions$1<C>): T;
                                                                                                                                                                                                                                                                                                                                                                                                                                                        (value: any, options: CastOptionalityOptions<C>): T;
                                                                                                                                                                                                                                                                                                                                                                                                                                                        };

                                                                                                                                                                                                                                                                                                                                                                                                                                                          method describe

                                                                                                                                                                                                                                                                                                                                                                                                                                                          describe: (options?: ResolveOptions<C>) => SchemaFieldDescription;

                                                                                                                                                                                                                                                                                                                                                                                                                                                            method resolve

                                                                                                                                                                                                                                                                                                                                                                                                                                                            resolve: (options: ResolveOptions<C>) => ISchema<T, C, F>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                              method validate

                                                                                                                                                                                                                                                                                                                                                                                                                                                              validate: (value: any, options?: ValidateOptions<C>) => Promise<T>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface LocaleObject

                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface LocaleObject {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property array

                                                                                                                                                                                                                                                                                                                                                                                                                                                                  array?: ArrayLocale;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property boolean

                                                                                                                                                                                                                                                                                                                                                                                                                                                                    boolean?: BooleanLocale;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property date

                                                                                                                                                                                                                                                                                                                                                                                                                                                                      date?: DateLocale;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property mixed

                                                                                                                                                                                                                                                                                                                                                                                                                                                                        mixed?: MixedLocale;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property number

                                                                                                                                                                                                                                                                                                                                                                                                                                                                          number?: NumberLocale;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property object

                                                                                                                                                                                                                                                                                                                                                                                                                                                                            object?: ObjectLocale;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property string

                                                                                                                                                                                                                                                                                                                                                                                                                                                                              string?: StringLocale;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property tuple

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                tuple?: TupleLocale;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface MessageParams

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface MessageParams {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property label

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    label: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property originalPath

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      originalPath: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property originalValue

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        originalValue: any;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property path

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          path: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property spec

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            spec: SchemaSpec<any> & Record<string, unknown>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property value

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                value: any;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface MixedOptions

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface MixedOptions<TType> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property check

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    check?: TypeGuard<TType>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type?: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface MixedSchema

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface MixedSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        TType extends Maybe<AnyPresentValue> = AnyPresentValue | undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        TContext = AnyObject,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        TDefault = undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          method concat

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          concat: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          <IT, IC, ID, IF extends Flags>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          schema: MixedSchema<IT, IC, ID, IF>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ): MixedSchema<Concat<TType, IT>, TContext & IC, ID, TFlags | IF>;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          <IT, IC, ID, IF extends Flags>(schema: Schema<IT, IC, ID, IF>): MixedSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Concat<TType, IT>,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TContext & IC,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ID,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TFlags | IF
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (schema: this): this;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            method default

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            default: <D extends TType>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            def: DefaultThunk<D, TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ) => MixedSchema<TType, TContext, D, ToggleDefault<TFlags, D>>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              method defined

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              defined: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ) => MixedSchema<Defined<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                method nonNullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                nonNullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ) => MixedSchema<Exclude<TType, null>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  method notRequired

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  notRequired: () => MixedSchema<Maybe<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    method nullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    nullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ) => MixedSchema<TType | null, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      method optional

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      optional: () => MixedSchema<TType | undefined, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        method required

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        required: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ) => MixedSchema<NonNullable<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          method strip

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          strip: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (enabled: false): MixedSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          UnsetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          (enabled?: true): MixedSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          SetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface NumberSchema

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            interface NumberSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            TType extends Maybe<number> = number | undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            TContext = AnyObject,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            TDefault = undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              method concat

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              concat: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              <UType extends number, UContext, UFlags extends Flags, UDefault>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              schema: NumberSchema<UType, UContext, UDefault, UFlags>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ): NumberSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              Concat<TType, UType>,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TContext & UContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              UDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TFlags | UFlags
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (schema: this): this;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                method default

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                default: <D extends TType>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                def: DefaultThunk<D, TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ) => NumberSchema<TType, TContext, D, ToggleDefault<TFlags, D>>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  method defined

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  defined: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ) => NumberSchema<Defined<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    method nonNullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    nonNullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ) => NumberSchema<NotNull<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      method notRequired

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      notRequired: () => NumberSchema<Maybe<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        method nullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        nullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ) => NumberSchema<TType | null, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          method optional

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          optional: () => NumberSchema<TType | undefined, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            method required

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            required: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ) => NumberSchema<NonNullable<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              method strip

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              strip: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (enabled: false): NumberSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              UnsetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (enabled?: true): NumberSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              SetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface ObjectSchema

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface ObjectSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TIn extends Maybe<AnyObject>,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TContext = AnyObject,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TDefault = any,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                > extends Schema<MakeKeysOptional<TIn>, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  method default

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  default: <D extends AnyObject>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  def: DefaultThunk<D, TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ) => ObjectSchema<TIn, TContext, D, ToggleDefault<TFlags, 'd'>>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    method defined

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    defined: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ) => ObjectSchema<Defined<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      method nonNullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      nonNullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ) => ObjectSchema<NotNull<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        method notRequired

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        notRequired: () => ObjectSchema<Maybe<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          method nullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          nullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ) => ObjectSchema<TIn | null, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            method optional

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            optional: () => ObjectSchema<TIn | undefined, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              method required

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              required: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ) => ObjectSchema<NonNullable<TIn>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                method strip

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                strip: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                (enabled: false): ObjectSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TIn,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                UnsetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                (enabled?: true): ObjectSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TIn,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                SetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface Schema

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  interface Schema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TType = any,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TContext = any,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TDefault = any,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  > {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property equals

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    equals: Schema['oneOf'];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property is

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      is: Schema['oneOf'];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property nope

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        nope: Schema['notOneOf'];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property not

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          not: Schema['notOneOf'];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            method validateAt

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            validateAt: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            path: string,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            value: any,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            options?: ValidateOptions<TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ) => Promise<any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              method validateSyncAt

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              validateSyncAt: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              path: string,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              value: any,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              options?: ValidateOptions<TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ) => any;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface SchemaDescription

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface SchemaDescription {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property default

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  default?: unknown;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    property label

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    label?: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property meta

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      meta?: SchemaMetadata;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property notOneOf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        notOneOf: unknown[];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property nullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          nullable: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property oneOf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            oneOf: unknown[];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property optional

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              optional: boolean;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                property tests

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                tests: Array<{
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                name?: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                params: ExtraParams | undefined;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface SchemaInnerTypeDescription

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface SchemaInnerTypeDescription extends SchemaDescription {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property innerType

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      innerType?: SchemaFieldDescription | SchemaFieldDescription[];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface SchemaLazyDescription

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        interface SchemaLazyDescription {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          property label

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          label?: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            property meta

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            meta?: SchemaMetadata;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface SchemaObjectDescription

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface SchemaObjectDescription extends SchemaDescription {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  property fields

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  fields: Record<string, SchemaFieldDescription>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface SchemaRefDescription

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface SchemaRefDescription {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property key

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      key: string;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        property type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type: 'ref';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface StringSchema

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          interface StringSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TType extends Maybe<string> = string | undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TContext = AnyObject,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TDefault = undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            method concat

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            concat: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <UType extends string, UContext, UDefault, UFlags extends Flags>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            schema: StringSchema<UType, UContext, UDefault, UFlags>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ): StringSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            Concat<TType, UType>,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            TContext & UContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            UDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            TFlags | UFlags
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            (schema: this): this;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              method default

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              default: <D extends TType>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              def: DefaultThunk<D, TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ) => StringSchema<TType, TContext, D, ToggleDefault<TFlags, D>>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                method defined

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                defined: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ) => StringSchema<Defined<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  method nonNullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  nonNullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ) => StringSchema<NotNull<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    method notRequired

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    notRequired: () => StringSchema<Maybe<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      method nullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      nullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ) => StringSchema<TType | null, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        method oneOf

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        oneOf: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <U extends TType>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        arrayOfValues: ReadonlyArray<U | Reference<U>>,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        message?: MixedLocale['oneOf']
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ): StringSchema<U | Optionals<TType>, TContext, TDefault, TFlags>;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        enums: readonly (Reference<unknown> | TType)[],
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        message?: Message<{ values: any }>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ): this;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          method optional

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          optional: () => StringSchema<TType | undefined, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            method required

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            required: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ) => StringSchema<NonNullable<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              method strip

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              strip: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (enabled: false): StringSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              UnsetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              (enabled?: true): StringSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              SetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface TupleSchema

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                interface TupleSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TType extends Maybe<AnyTuple> = AnyTuple | undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TContext = AnyObject,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TDefault = undefined,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                TFlags extends Flags = ''
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                > extends Schema<TType, TContext, TDefault, TFlags> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  method concat

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  concat: <TOther extends TupleSchema<any, any, undefined, ''>>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  schema: TOther
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ) => TOther;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    method default

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    default: <D extends TType>(
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    def: DefaultThunk<D, TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ) => TupleSchema<TType, TContext, D, ToggleDefault<TFlags, D>>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      method defined

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      defined: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ) => TupleSchema<Defined<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        method nonNullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        nonNullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ) => TupleSchema<NotNull<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          method notRequired

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          notRequired: () => TupleSchema<Maybe<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            method nullable

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            nullable: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ) => TupleSchema<TType | null, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              method optional

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              optional: () => TupleSchema<TType | undefined, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                method required

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                required: (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                msg?: Message
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ) => TupleSchema<NonNullable<TType>, TContext, TDefault, TFlags>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  method strip

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  strip: {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  (enabled: false): TupleSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  UnsetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  (enabled?: true): TupleSchema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TContext,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  TDefault,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  SetFlag<TFlags, 's'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  >;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface ValidateOptions

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    interface ValidateOptions<TContext = {}> {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property abortEarly

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      abortEarly?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • Return from validation methods on the first error rather than after all validations run. Default - true

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property context

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      context?: TContext;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • Any context needed for validating schema conditions (see: when())

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property disableStackTrace

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      disableStackTrace?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • When true ValidationError instance won't include stack trace information. Default - false

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property recursive

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      recursive?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • When false validations will not descend into nested schema (relevant for objects or arrays). Default - true

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property strict

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      strict?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • Only validate the input, skipping type casting and transformation. Default - false

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      property stripUnknown

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      stripUnknown?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • Remove unspecified keys from objects. Default - false

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Type Aliases

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type AnyMessageParams

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type AnyMessageParams = MessageParams & ExtraParams;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type AnyObject

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type AnyObject = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        [k: string]: any;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type AnyObjectSchema

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type AnyObjectSchema = ObjectSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type AnySchema

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type AnySchema<TType = any, C = any, D = any, F extends Flags = Flags> = Schema<
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            TType,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            C,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            D,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            F
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            >;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type Asserts

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type InferType<T extends ISchema<any, any>> = T['__outputType'];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type CastOptions

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type CastOptions = Omit<CastOptions$1, 'path' | 'resolved'>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type CreateErrorOptions

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type CreateErrorOptions = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  path?: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  message?: Message<any>;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  params?: ExtraParams;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type?: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  disableStackTrace?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type DefaultFromShape

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type DefaultFromShape<Shape extends ObjectShape> = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    [K in keyof Shape]: Shape[K] extends ISchema<any>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ? Shape[K]['__default']
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    : undefined;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type DefaultThunk

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type DefaultThunk<T, C = any> = T | ((options?: ResolveOptions<C>) => T);

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type Defined

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type Defined<T> = T extends undefined ? never : T;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type Flags

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type Flags = 's' | 'd' | '';

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type InferType

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type InferType<T extends ISchema<any, any>> = T['__outputType'];

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type MakePartial

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type MakePartial<T extends object> = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              [k in OptionalKeys<T> as T[k] extends never ? never : k]?: T[k];
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              } & {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              [k in RequiredKeys<T> as T[k] extends never ? never : k]: T[k];
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type Maybe

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type Maybe<T> = T | null | undefined;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type Message

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type Message<Extra extends Record<string, unknown> = any> =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | string
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | ((params: Extra & MessageParams) => unknown)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Record<PropertyKey, unknown>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type MixedTypeGuard

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type TypeGuard<TType> = (value: any) => value is NonNullable<TType>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type NotNull

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type NotNull<T> = T extends null ? never : T;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type ObjectShape

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type ObjectShape = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        [k: string]: ISchema<any> | Reference;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type Optionals

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type Optionals<T> = Extract<T, null | undefined>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type SchemaFieldDescription

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type SchemaFieldDescription =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | SchemaDescription
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | SchemaRefDescription
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | SchemaObjectDescription
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | SchemaInnerTypeDescription
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | SchemaLazyDescription;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type SchemaMetadata

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type SchemaMetadata = keyof CustomSchemaMetadata extends never
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ? Record<PropertyKey, any>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              : CustomSchemaMetadata;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type SetFlag

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                type SetFlag<Old extends Flags, F extends Flags> = Exclude<Old, ''> | F;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type TestConfig

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  type TestConfig<TValue = unknown, TContext = {}> = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  name?: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  message?: Message<any>;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  test: TestFunction<TValue, TContext>;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  params?: ExtraParams;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  exclusive?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  skipAbsent?: boolean;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type TestContext

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    type TestContext<TContext = {}> = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    path: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    options: ValidateOptions<TContext>;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    originalValue: any;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    parent: any;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    from?: Array<{
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    schema: ISchema<any, TContext>;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    value: any;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    }>;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    schema: any;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    resolve: <T>(value: T | Reference<T>) => T;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    createError: (params?: CreateErrorOptions) => ValidationError;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type TestFunction

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      type TestFunction<T = unknown, TContext = {}> = (
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      this: TestContext<TContext>,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      value: T,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      context: TestContext<TContext>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ) => void | boolean | ValidationError | Promise<boolean | ValidationError>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type TestOptions

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        type TestOptions<TSchema extends AnySchema = AnySchema> = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        value: any;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        path?: string;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        options: InternalOptions;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        originalValue: any;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        schema: TSchema;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type ToggleDefault

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          type ToggleDefault<F extends Flags, D> = Preserve<D, undefined> extends never
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ? SetFlag<F, 'd'>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          : UnsetFlag<F, 'd'>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type TypeFromShape

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            type TypeFromShape<S extends ObjectShape, _C> = {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            [K in keyof S]: S[K] extends ISchema<any>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ? ResolveStrip<S[K]>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            : S[K] extends Reference<infer T>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ? T
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            : unknown;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            };

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type UnsetFlag

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              type UnsetFlag<Old extends Flags, F extends Flags> = Exclude<Old, F> extends never
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ? ''
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              : Exclude<Old, F>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Namespaces

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                namespace array

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                namespace array {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  var prototype: ArraySchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    namespace bool

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    namespace bool {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      var prototype: BooleanSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        namespace boolean

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        namespace boolean {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          var prototype: BooleanSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            namespace date

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            namespace date {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              variable INVALID_DATE

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              var INVALID_DATE: Date;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                var prototype: DateSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  namespace mixed

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  namespace mixed {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    var prototype: MixedSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      namespace number

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      namespace number {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        var prototype: NumberSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          namespace object

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          namespace object {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            var prototype: ObjectSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              namespace string

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              namespace string {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                var prototype: StringSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  namespace tuple

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  namespace tuple {}

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    variable prototype

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    var prototype: TupleSchema<any, any, any, any>;

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Package Files (1)

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Dependencies (4)

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Dev Dependencies (0)

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      No dev dependencies.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Peer Dependencies (0)

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      No peer dependencies.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Badge

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      To add a badge like this onejsDocs.io badgeto your package's README, use the codes available below.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/yup.

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • Markdown
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        [![jsDocs.io](https://img.shields.io/badge/jsDocs.io-reference-blue)](https://www.jsdocs.io/package/yup)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      • HTML
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <a href="https://www.jsdocs.io/package/yup"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>