Skip to main content

types (object)

The types namespace object contains various functions which can be used to identify the type of a value at runtime. It is based on pheno, with some yavascript-specific extensions.

Usage

To check that a value is of a type, use is. To assert that a value is of a type, use assert.type:

is("hi", types.string); // true
is("hi", types.number); // false
is({ blah: 42 }, types.objectWithProperties({ blah: types.number })); // true

assert.type("hi", types.string);
assert.type("hi", types.number); // throws
assert.type({ blah: 42 }, types.objectWithProperties({ blah: types.number }));

In many cases, you can use a "normal" JavaScript value for the type instead of something from the types namespace. For instance, the following code block is equivalent to the previous one:

is("hi", String); // true
is("hi", Number); // false
is({ blah: 42 }, { blah: Number }); // true

assert.type("hi", String);
assert.type("hi", Number); // throws
assert.type({ blah: 42 }, { blah: Number });

For more info about using "normal" values, see the "Coercion" heading below.

Explanation

There are two kinds of function properties found on the types namespace: those which return a boolean, and those which return a function. Functions which return a boolean are called "type validators", and can be used to check the type of a value. For example, types.number is a type validator:

is(42, types.number); // returns true

The other kind of function is a function which returns a function. These are called "type validator constructors", because the function they return is a type validator. They are used to construct complex type validators. For example, types.exactString is a type validator constructor:

const myType = types.exactString("potato");
// myType is a function which returns true or false

is("eggplant", myType); // returns false
is("potato", myType); // returns true

List of Functions

Type Validators

Here is a list of all the type validators:

  • any
  • anyArray
  • anyFunction
  • anyMap
  • anyObject
  • anySet
  • anyTypeValidator
  • array (alias of arrayOfUnknown)
  • arrayOfAny
  • arrayOfUnknown
  • Array (alias of arrayOfUnknown)
  • bigint
  • BigInt (alias of bigint)
  • boolean
  • Boolean (alias of boolean)
  • Date
  • Error
  • false
  • falsy
  • Function (alias of unknownFunction)
  • Infinity
  • integer
  • map (alias of unknownMap)
  • Map (alias of unknownMap)
  • NaN
  • NegativeInfinity
  • never
  • nonNullOrUndefined
  • null
  • nullish
  • void (alias of nullish)
  • number (doesn't include NaN, Infinity, or -Infinity)
  • Number (alias of number)
  • numberIncludingNanAndInfinities
  • object (alias of unknownObject)
  • Object (alias of unknownObject)
  • objectOrNull
  • RegExp
  • set (alias of unknownSet)
  • Set (alias of unknownSet)
  • string
  • String (alias of string)
  • Symbol
  • symbol (alias of Symbol)
  • true
  • truthy
  • undefined
  • unknown
  • unknownFunction
  • unknownMap
  • unknownObject
  • unknownSet
  • unknownTypeValidator
  • ArrayBuffer
  • SharedArrayBuffer
  • DataView
  • TypedArray
  • Int8Array
  • Uint8Array
  • Uint8ClampedArray
  • Int16Array
  • Uint16Array
  • Int32Array
  • Uint32Array
  • Float32Array
  • Float64Array
  • FILE
  • Path
  • JSX.Element (alias of JSX.unknownElement)
  • JSX.unknownElement
  • JSX.anyElement
  • JSX.Fragment

Type Validator Constructors

And all the type validator constructors:

  • and
  • arrayOf
  • exactBigInt
  • exactNumber
  • exactString
  • exactSymbol
  • hasClassName
  • hasToStringTag
  • instanceOf
  • intersection
  • mapOf
  • mappingObjectOf
  • maybe
  • objectWithOnlyTheseProperties
  • objectWithProperties
  • or
  • optional
  • partialObjectWithProperties
  • record
  • setOf
  • stringMatching
  • symbolFor
  • union

Coercion

There is also a function, types.coerce, which returns an appropriate type validator value for a given input value, using the following logic:

Input valueOutput validator
String or string globaltypes.string
Number or number globaltypes.number
Boolean or boolean globaltypes.boolean
BigInt or bigint globaltypes.bigint
Symbol globaltypes.Symbol
RegExp globaltypes.RegExp
Array globaltypes.arrayOfUnknown
Set globaltypes.unknownSet
Map globaltypes.unknownMap
Object globaltypes.unknownObject
Date globaltypes.Date
Function globaltypes.unknownFunction
ArrayBuffer globaltypes.ArrayBuffer
SharedArrayBuffer globaltypes.SharedArrayBuffer
DataView globaltypes.DataView
Int8Array globaltypes.Int8Array
Uint8Array globaltypes.Uint8Array
Uint8ClampedArray globaltypes.Uint8ClampedArray
Int16Array globaltypes.Int16Array
Uint16Array globaltypes.Uint16Array
Int32Array globaltypes.Int32Array
Uint32Array globaltypes.Uint32Array
Float32Array globaltypes.Float32Array
Float64Array globaltypes.Float64Array
Path globaltypes.Path
Any RegExp valueValidator for matching strings
Empty arrayValidator for empty arrays
Array with one itemValidator for array of that item
Array with multiple itemsValidator for tuple of those types
Class constructor functionValidator for instances of it
Any Object valueValidator for same-shaped object
nulltypes.null
undefinedtypes.undefined
truetypes.true
falsetypes.false
NaNtypes.NaN
Infinitytypes.Infinity
-Infinitytypes.NegativeInfinity
Any string valuetypes.exactString(<the value>)
Any 'normal' number valuetypes.exactNumber(<the value>)
Any Symbol valuetypes.exactSymbol(<the value>)
Any BigInt valuetypes.exactBigInt(<the value>)

All type constructors, as well as is and assert.type, do coercion automatically! This means that in many cases, you do not need to access properties from the types namespace.

const types: {
any: TypeValidator<any>;
unknown: TypeValidator<unknown>;
[key: string | number | symbol]: any;
}>;
arrayOfAny: TypeValidator<Array<any>>;
arrayOfUnknown: TypeValidator<Array<unknown>>;
array: TypeValidator<Array<unknown>>;
Array: TypeValidator<unknown[]>;
anyArray: TypeValidator<Array<any>>;
boolean: TypeValidator<boolean>;
string: TypeValidator<string>;
String: TypeValidator<string>;
null: TypeValidator<null>;
undefined: TypeValidator<undefined>;
nullish: TypeValidator<null | undefined>;
void: TypeValidator<null | undefined>;
number: TypeValidator<number>;
NaN: TypeValidator<number>;
bigint: TypeValidator<bigint>;
never: TypeValidator<never>;
anyFunction: TypeValidator<(...args: any) => any>;
unknownFunction: TypeValidator<(...args: Array<unknown>) => unknown>;
Function: TypeValidator<(...args: Array<unknown>) => unknown>;
falsy: TypeValidator<false | null | undefined | "" | 0>;
truthy: <T>(target: false | "" | 0 | T | null | undefined) => target is T;
nonNullOrUndefined: <T>(target: T | null | undefined) => target is T;
symbol: TypeValidator<symbol>;
anyMap: TypeValidator<Map<any, any>>;
unknownMap: TypeValidator<Map<unknown, unknown>>;
map: TypeValidator<Map<unknown, unknown>>;
Map: TypeValidator<Map<unknown, unknown>>;
set: TypeValidator<Set<unknown>>;
Set: TypeValidator<Set<unknown>>;
>;
exactString<T extends string>(str: T): TypeValidator<T>;
exactNumber<T extends number>(num: T): TypeValidator<T>;
exactBigInt<T extends bigint>(num: T): TypeValidator<T>;
exactSymbol<T extends symbol>(sym: T): TypeValidator<T>;
hasClassName<Name extends string>(
name: Name,
constructor: Function & {
name: Name;
};
}>;
hasToStringTag(name: string): TypeValidator<any>;
Klass extends Function & {
prototype: any;
},
>(
klass: Klass,
): TypeValidator<Klass["prototype"]>;
stringMatching(regexp: RegExp): TypeValidator<string>;
symbolFor(key: string): TypeValidator<symbol>;
arrayOf<T extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(
typeValidator: T,
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
tenth: Tenth,
>;
};
and: {
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
tenth: Tenth,
>;
};
union: {
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
tenth: Tenth,
>;
};
or: {
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
tenth: Tenth,
>;
};
K extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
V extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
keyType: K,
valueType: V,
Map<
>
>;
setOf<T extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(
itemType: T,
maybe<T extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(
itemType: T,
T extends {
[key: string | number | symbol]:
},
>(
properties: T,
[key in keyof T]: UnwrapTypeFromCoerceableOrValidator<T[key]>;
}>;
T extends {
[key: string | number | symbol]:
},
>(
properties: T,
[key in keyof T]: UnwrapTypeFromCoerceableOrValidator<T[key]>;
}>;
Values extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Keys extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
keyType: Keys,
valueType: Values,
Record<
UnwrapTypeFromCoerceableOrValidator<Keys> extends string | number | symbol
: never,
>
>;
Values extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Keys extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
keyType: Keys,
valueType: Values,
Record<
UnwrapTypeFromCoerceableOrValidator<Keys> extends string | number | symbol
: never,
>
>;
T extends {
[key: string | number | symbol]:
},
>(
properties: T,
[key in keyof T]:
UnwrapTypeFromCoerceableOrValidator<T[key]> | null | undefined;
}>;
tuple: {
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
[
]
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
[
]
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
[
]
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
[
]
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
[
]
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
[
]
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
[
]
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
[
]
>;
<
First extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown,
>(
first: First,
second: Second,
third: Third,
fourth: Fourth,
fifth: Fifth,
sixth: Sixth,
seventh: Seventh,
eighth: Eighth,
ninth: Ninth,
tenth: Tenth,
[
]
>;
};
coerce: <V extends CoerceableToTypeValidator | TypeValidator<any> | unknown>(
value: V,
JSX: {
JSX.Element<
{
[key: string | symbol | number]: unknown;
},
unknown
>
>;
anyElement: TypeValidator<JSX.Element<any, any>>;
JSX.Element<
{
[key: string | symbol | number]: unknown;
},
unknown
>
>;
};
};

types.any (property)

any: TypeValidator<any>;

types.unknown (property)

unknown: TypeValidator<unknown>;

types.anyObject (property)

[key: string | number | symbol]: any;
}>;

types.unknownObject (property)

types.object (property)

types.Object (property)

types.arrayOfAny (property)

types.arrayOfUnknown (property)

arrayOfUnknown: TypeValidator<Array<unknown>>;

types.array (property)

array: TypeValidator<Array<unknown>>;

types.Array (property)

Array: TypeValidator<unknown[]>;

types.anyArray (property)

anyArray: TypeValidator<Array<any>>;

types.boolean (property)

boolean: TypeValidator<boolean>;

types.Boolean (property)

types.string (property)

string: TypeValidator<string>;

types.String (property)

String: TypeValidator<string>;

types.null (property)

null: TypeValidator<null>;

types.undefined (property)

undefined: TypeValidator<undefined>;

types.nullish (property)

nullish: TypeValidator<null | undefined>;

types.void (property)

void: TypeValidator<null | undefined>;

types.numberIncludingNanAndInfinities (property)

types.number (property)

number: TypeValidator<number>;

types.Number (property)

types.NaN (property)

NaN: TypeValidator<number>;

types.Infinity (property)

types.NegativeInfinity (property)

types.integer (property)

types.bigint (property)

bigint: TypeValidator<bigint>;

types.BigInt (property)

types.never (property)

never: TypeValidator<never>;

types.anyFunction (property)

anyFunction: TypeValidator<(...args: any) => any>;

types.unknownFunction (property)

unknownFunction: TypeValidator<(...args: Array<unknown>) => unknown>;

types.Function (property)

Function: TypeValidator<(...args: Array<unknown>) => unknown>;

types.false (property)

types.true (property)

types.falsy (property)

falsy: TypeValidator<false | null | undefined | "" | 0>;

types.truthy (function property)

truthy: <T>(target: false | "" | 0 | T | null | undefined) => target is T;

types.nonNullOrUndefined (function property)

nonNullOrUndefined: <T>(target: T | null | undefined) => target is T;

types.Error (property)

types.Symbol (property)

types.symbol (property)

symbol: TypeValidator<symbol>;

types.RegExp (property)

types.Date (property)

types.anyMap (property)

anyMap: TypeValidator<Map<any, any>>;

types.unknownMap (property)

unknownMap: TypeValidator<Map<unknown, unknown>>;

types.map (property)

map: TypeValidator<Map<unknown, unknown>>;

types.Map (property)

Map: TypeValidator<Map<unknown, unknown>>;

types.anySet (property)

types.unknownSet (property)

types.set (property)

set: TypeValidator<Set<unknown>>;

types.Set (property)

Set: TypeValidator<Set<unknown>>;

types.ArrayBuffer (property)

types.SharedArrayBuffer (property)

types.DataView (property)

types.TypedArray (property)

types.Int8Array (property)

types.Uint8Array (property)

types.Uint8ClampedArray (property)

types.Int16Array (property)

types.Uint16Array (property)

types.Int32Array (property)

types.Uint32Array (property)

types.Float32Array (property)

types.Float64Array (property)

types.exactString (method)

exactString<T extends string>(str: T): TypeValidator<T>;

types.exactNumber (method)

exactNumber<T extends number>(num: T): TypeValidator<T>;

types.exactBigInt (method)

exactBigInt<T extends bigint>(num: T): TypeValidator<T>;

types.exactSymbol (method)

exactSymbol<T extends symbol>(sym: T): TypeValidator<T>;

types.hasClassName (method)

hasClassName<Name extends string>(name: Name): TypeValidator<{
constructor: Function & {
name: Name;
};
}>;

types.hasToStringTag (method)

hasToStringTag(name: string): TypeValidator<any>;

types.instanceOf (method)

instanceOf<Klass extends Function & {
prototype: any;
}>(klass: Klass): TypeValidator<Klass["prototype"]>;

types.stringMatching (method)

stringMatching(regexp: RegExp): TypeValidator<string>;

types.symbolFor (method)

symbolFor(key: string): TypeValidator<symbol>;

types.arrayOf (method)

arrayOf<T extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(typeValidator: T): TypeValidator<Array<UnwrapTypeFromCoerceableOrValidator<T>>>;

types.intersection (function property)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth> & UnwrapTypeFromCoerceableOrValidator<Ninth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth> & UnwrapTypeFromCoerceableOrValidator<Ninth> & UnwrapTypeFromCoerceableOrValidator<Tenth>>;
};

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second>>;

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third>>;

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth>>;

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth>>;

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth>>;

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh>>;

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth>>;

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth> & UnwrapTypeFromCoerceableOrValidator<Ninth>>;

types.intersection(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth> & UnwrapTypeFromCoerceableOrValidator<Ninth> & UnwrapTypeFromCoerceableOrValidator<Tenth>>;

types.and (function property)

and: {
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth> & UnwrapTypeFromCoerceableOrValidator<Ninth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth> & UnwrapTypeFromCoerceableOrValidator<Ninth> & UnwrapTypeFromCoerceableOrValidator<Tenth>>;
};

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second>>;

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third>>;

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth>>;

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth>>;

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth>>;

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh>>;

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth>>;

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth> & UnwrapTypeFromCoerceableOrValidator<Ninth>>;

types.and(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> & UnwrapTypeFromCoerceableOrValidator<Second> & UnwrapTypeFromCoerceableOrValidator<Third> & UnwrapTypeFromCoerceableOrValidator<Fourth> & UnwrapTypeFromCoerceableOrValidator<Fifth> & UnwrapTypeFromCoerceableOrValidator<Sixth> & UnwrapTypeFromCoerceableOrValidator<Seventh> & UnwrapTypeFromCoerceableOrValidator<Eighth> & UnwrapTypeFromCoerceableOrValidator<Ninth> & UnwrapTypeFromCoerceableOrValidator<Tenth>>;

types.union (function property)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth> | UnwrapTypeFromCoerceableOrValidator<Ninth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth> | UnwrapTypeFromCoerceableOrValidator<Ninth> | UnwrapTypeFromCoerceableOrValidator<Tenth>>;
};

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second>>;

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third>>;

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth>>;

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth>>;

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth>>;

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh>>;

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth>>;

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth> | UnwrapTypeFromCoerceableOrValidator<Ninth>>;

types.union(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth> | UnwrapTypeFromCoerceableOrValidator<Ninth> | UnwrapTypeFromCoerceableOrValidator<Tenth>>;

types.or (function property)

or: {
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth> | UnwrapTypeFromCoerceableOrValidator<Ninth>>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth> | UnwrapTypeFromCoerceableOrValidator<Ninth> | UnwrapTypeFromCoerceableOrValidator<Tenth>>;
};

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second>>;

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third>>;

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth>>;

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth>>;

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth>>;

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh>>;

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth>>;

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth> | UnwrapTypeFromCoerceableOrValidator<Ninth>>;

types.or(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<UnwrapTypeFromCoerceableOrValidator<First> | UnwrapTypeFromCoerceableOrValidator<Second> | UnwrapTypeFromCoerceableOrValidator<Third> | UnwrapTypeFromCoerceableOrValidator<Fourth> | UnwrapTypeFromCoerceableOrValidator<Fifth> | UnwrapTypeFromCoerceableOrValidator<Sixth> | UnwrapTypeFromCoerceableOrValidator<Seventh> | UnwrapTypeFromCoerceableOrValidator<Eighth> | UnwrapTypeFromCoerceableOrValidator<Ninth> | UnwrapTypeFromCoerceableOrValidator<Tenth>>;

types.mapOf (method)

types.setOf (method)

types.maybe (method)

maybe<T extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(itemType: T): TypeValidator<UnwrapTypeFromCoerceableOrValidator<T> | undefined | null>;

types.objectWithProperties (method)

[key: string | number | symbol]: TypeValidator<any> | CoerceableToTypeValidator | unknown;
}>(properties: T): TypeValidator<{ [key in keyof T]: UnwrapTypeFromCoerceableOrValidator<T[key]> }>;

types.objectWithOnlyTheseProperties (method)

[key: string | number | symbol]: TypeValidator<any> | CoerceableToTypeValidator | unknown;
}>(properties: T): TypeValidator<{ [key in keyof T]: UnwrapTypeFromCoerceableOrValidator<T[key]> }>;

types.mappingObjectOf (method)

mappingObjectOf<Values extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Keys extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(keyType: Keys, valueType: Values): TypeValidator<Record<UnwrapTypeFromCoerceableOrValidator<Keys> extends string | number | symbol ? UnwrapTypeFromCoerceableOrValidator<Keys> : never, UnwrapTypeFromCoerceableOrValidator<Values>>>;

types.record (method)

record<Values extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Keys extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(keyType: Keys, valueType: Values): TypeValidator<Record<UnwrapTypeFromCoerceableOrValidator<Keys> extends string | number | symbol ? UnwrapTypeFromCoerceableOrValidator<Keys> : never, UnwrapTypeFromCoerceableOrValidator<Values>>>;

types.partialObjectWithProperties (method)

[key: string | number | symbol]: TypeValidator<any> | CoerceableToTypeValidator | unknown;
}>(properties: T): TypeValidator<{ [key in keyof T]: UnwrapTypeFromCoerceableOrValidator<T[key]> | null | undefined }>;

types.tuple (function property)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>]>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>]>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>]>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>]>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>]>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>, UnwrapTypeFromCoerceableOrValidator<Seventh>]>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>, UnwrapTypeFromCoerceableOrValidator<Seventh>, UnwrapTypeFromCoerceableOrValidator<Eighth>]>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>, UnwrapTypeFromCoerceableOrValidator<Seventh>, UnwrapTypeFromCoerceableOrValidator<Eighth>, UnwrapTypeFromCoerceableOrValidator<Ninth>]>;
<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>, UnwrapTypeFromCoerceableOrValidator<Seventh>, UnwrapTypeFromCoerceableOrValidator<Eighth>, UnwrapTypeFromCoerceableOrValidator<Ninth>, UnwrapTypeFromCoerceableOrValidator<Tenth>]>;
};

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>]>;

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>]>;

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>]>;

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>]>;

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>]>;

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>, UnwrapTypeFromCoerceableOrValidator<Seventh>]>;

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>, UnwrapTypeFromCoerceableOrValidator<Seventh>, UnwrapTypeFromCoerceableOrValidator<Eighth>]>;

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>, UnwrapTypeFromCoerceableOrValidator<Seventh>, UnwrapTypeFromCoerceableOrValidator<Eighth>, UnwrapTypeFromCoerceableOrValidator<Ninth>]>;

types.tuple(...) (call signature)

<First extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Second extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Third extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fourth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Fifth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Sixth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Seventh extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Eighth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Ninth extends TypeValidator<any> | CoerceableToTypeValidator | unknown, Tenth extends TypeValidator<any> | CoerceableToTypeValidator | unknown>(first: First, second: Second, third: Third, fourth: Fourth, fifth: Fifth, sixth: Sixth, seventh: Seventh, eighth: Eighth, ninth: Ninth, tenth: Tenth): TypeValidator<[UnwrapTypeFromCoerceableOrValidator<First>, UnwrapTypeFromCoerceableOrValidator<Second>, UnwrapTypeFromCoerceableOrValidator<Third>, UnwrapTypeFromCoerceableOrValidator<Fourth>, UnwrapTypeFromCoerceableOrValidator<Fifth>, UnwrapTypeFromCoerceableOrValidator<Sixth>, UnwrapTypeFromCoerceableOrValidator<Seventh>, UnwrapTypeFromCoerceableOrValidator<Eighth>, UnwrapTypeFromCoerceableOrValidator<Ninth>, UnwrapTypeFromCoerceableOrValidator<Tenth>]>;

types.coerce (function property)

types.FILE (property)

types.Path (property)

types.JSX (object property)

JSX: {
JSX.Element<
{
[key: string | symbol | number]: unknown;
},
unknown
>
>;
anyElement: TypeValidator<JSX.Element<any, any>>;
JSX.Element<
{
[key: string | symbol | number]: unknown;
},
unknown
>
>;
}

types.JSX.unknownElement (property)

JSX.Element<
{
[key: string | symbol | number]: unknown;
},
unknown
>
>;

types.JSX.anyElement (property)

anyElement: TypeValidator<JSX.Element<any, any>>;

types.JSX.Element (property)

JSX.Element<
{
[key: string | symbol | number]: unknown;
},
unknown
>
>;

types.JSX.Fragment (property)

TypeValidator (type)

declare type TypeValidator<T> = (value: any) => value is T;

CoerceToTypeValidator (type)

V extends StringConstructor
? TypeValidator<string>
: V extends NumberConstructor
? TypeValidator<number>
: V extends BooleanConstructor
? TypeValidator<boolean>
: V extends BigIntConstructor
: V extends SymbolConstructor
: V extends RegExpConstructor
: V extends ArrayConstructor
? TypeValidator<Array<unknown>>
: V extends SetConstructor
? TypeValidator<Set<unknown>>
: V extends MapConstructor
? TypeValidator<Map<unknown, unknown>>
: V extends ObjectConstructor
[key: string | number | symbol]: unknown;
}>
: V extends DateConstructor
: V extends FunctionConstructor
? TypeValidator<Function>
: V extends ArrayBufferConstructor
: V extends SharedArrayBufferConstructor
: V extends DataViewConstructor
: V extends Int8ArrayConstructor
: V extends Uint8ArrayConstructor
: V extends Uint8ClampedArrayConstructor
: V extends Int16ArrayConstructor
: V extends Uint16ArrayConstructor
: V extends Int32ArrayConstructor
: V extends Uint32ArrayConstructor
: V extends Float32ArrayConstructor
: V extends Float64ArrayConstructor
: V extends RegExp
? TypeValidator<string>
: V extends {}
[
key in keyof V
V[key]
>;
}>
: V extends []
: V extends [any]
Array<
V[0]
>
>
>
: V extends Array<any>
Array<unknown>
>
: V extends {
new (
...args: any
): any;
}
InstanceType<V>
>

CoerceableToTypeValidator (type)

| boolean
| number
| string
| bigint
| undefined
| null
| StringConstructor
| NumberConstructor
| BooleanConstructor
| SymbolConstructor
| ArrayConstructor
| SetConstructor
| MapConstructor
| DateConstructor
| FunctionConstructor
| ArrayBufferConstructor
| SharedArrayBufferConstructor
| DataViewConstructor
| Int8ArrayConstructor
| Uint8ArrayConstructor
| Uint8ClampedArrayConstructor
| Int16ArrayConstructor
| Uint16ArrayConstructor
| Int32ArrayConstructor
| Uint32ArrayConstructor
| Float32ArrayConstructor
| Float64ArrayConstructor
| {}
| []
| [any]
| Array<any>
| {
new (...args: any): any;
};

UnwrapTypeFromCoerceableOrValidator (type)

V extends CoerceableToTypeValidator | TypeValidator<any> | unknown,
> =
V extends TypeValidator<infer T>
? T
? CoerceToTypeValidator<V> extends TypeValidator<infer T>
? T
: never
: unknown;