Assert
Helper functions that have to do with asserting.
Functions
Section titled “Functions”assertArray()
Section titled “assertArray()”function assertArray<T>( value, ...__namedParameters): asserts value is T & unknown[];Defined in: functions/assert.ts:17
Helper function to throw an error if the provided value is not an array.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [readonly unknown[]] ? ["The assertion is useless because the provided value is already an array."] : [string] |
Returns
Section titled “Returns”asserts value is T & unknown[]
assertArrayBoolean()
Section titled “assertArrayBoolean()”function assertArrayBoolean<T>( value, ...__namedParameters): asserts value is T & boolean[];Defined in: functions/assert.ts:34
Helper function to throw an error if the provided value is not an array with every element being a boolean.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [readonly boolean[]] ? ["The assertion is useless because the provided value is already a boolean array."] : [string] |
Returns
Section titled “Returns”asserts value is T & boolean[]
assertArrayLength()
Section titled “assertArrayLength()”Call Signature
Section titled “Call Signature”function assertArrayLength<E, N>( value, length, msg,): asserts value is Tuple<E, N>;Defined in: functions/assert.ts:55
Helper function to throw an error if the provided array does not have the specified length. Will also type narrow the array into a tuple of the specified length.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
E |
N extends number |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
E[] |
length |
N |
msg |
string |
Returns
Section titled “Returns”asserts value is Tuple<E, N>
Call Signature
Section titled “Call Signature”function assertArrayLength<E, N>( value, length, msg,): asserts value is Readonly<Tuple<E, N>>;Defined in: functions/assert.ts:60
Helper function to throw an error if the provided array does not have the specified length. Will also type narrow the array into a tuple of the specified length.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
E |
N extends number |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
readonly E[] |
length |
N |
msg |
string |
Returns
Section titled “Returns”asserts value is Readonly<Tuple<E, N>>
assertArrayNonEmpty()
Section titled “assertArrayNonEmpty()”function assertArrayNonEmpty<T>( value, ...__namedParameters): asserts value is T & (T extends readonly E[] ? [E, ...E[]] : [unknown, ...unknown[]]);Defined in: functions/assert.ts:76
Helper function to throw an error if the provided value is not an array or is an empty array.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [readonly [unknown, unknown]] ? ["The assertion is useless because the provided value is already a non-empty array."] : [string] |
Returns
Section titled “Returns”asserts value is T & (T extends readonly E[] ? [E, ...E[]] : [unknown, ...unknown[]])
assertArrayNumber()
Section titled “assertArrayNumber()”function assertArrayNumber<T>( value, ...__namedParameters): asserts value is T & number[];Defined in: functions/assert.ts:98
Helper function to throw an error if the provided value is not an array with every element being a number.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [readonly number[]] ? ["The assertion is useless because the provided value is already a number array."] : [string] |
Returns
Section titled “Returns”asserts value is T & number[]
assertArrayObject()
Section titled “assertArrayObject()”function assertArrayObject<T>( value, ...__namedParameters): asserts value is T & Record<string, unknown>[];Defined in: functions/assert.ts:119
Helper function to throw an error if the provided value is not an array with every element being an object (i.e., a TypeScript record).
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [readonly Record<string, unknown>[]] ? ["The assertion is useless because the provided value is already an object array."] : [string] |
Returns
Section titled “Returns”asserts value is T & Record<string, unknown>[]
assertArrayString()
Section titled “assertArrayString()”function assertArrayString<T>( value, ...__namedParameters): asserts value is T & string[];Defined in: functions/assert.ts:140
Helper function to throw an error if the provided value is not an array with every element being a string.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [readonly string[]] ? ["The assertion is useless because the provided value is already a string array."] : [string] |
Returns
Section titled “Returns”asserts value is T & string[]
assertBoolean()
Section titled “assertBoolean()”function assertBoolean<T>( value, ...__namedParameters): asserts value is T & boolean;Defined in: functions/assert.ts:158
Helper function to throw an error if the provided value is not a boolean.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [boolean] ? ["The assertion is useless because the provided value is already a boolean."] : [string] |
Returns
Section titled “Returns”asserts value is T & boolean
assertDefined()
Section titled “assertDefined()”function assertDefined<T>( value, ...__namedParameters): asserts value is Exclude<T, undefined>;Defined in: functions/assert.ts:176
Helper function to throw an error if the provided value is equal to undefined.
This is useful to have TypeScript narrow a T | undefined value to T in a
concise way.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[undefined] extends [T] ? [string] : ["The assertion is useless because the provided value does not contain undefined."] |
Returns
Section titled “Returns”asserts value is Exclude<T, undefined>
assertEnumValue()
Section titled “assertEnumValue()”function assertEnumValue<T>( value, transpiledEnum, msg, set?,): asserts value is T[keyof T];Defined in: functions/assert.ts:199
Helper function to throw an error if the provided value is not contained within an enum.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T extends TranspiledEnum |
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
value |
string | number |
The value to check. |
transpiledEnum |
T |
The enum to check against. |
msg |
string |
The error message to throw if the check fails. |
set? |
ReadonlySet<string | number> |
Optional. A set that contains all of the values of an enum. If provided, this function will check for existence using the set (instead of the enum itself). Using a set should be more performant for enums with around 52 or more elements. |
Returns
Section titled “Returns”asserts value is T[keyof T]
assertInteger()
Section titled “assertInteger()”function assertInteger(value, msg): asserts value is number;Defined in: functions/assert.ts:211
Helper function to throw an error if the provided value is not an integer.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
unknown |
msg |
string |
Returns
Section titled “Returns”asserts value is number
assertIs()
Section titled “assertIs()”function assertIs<T>(value, constructor, msg): asserts value is InstanceType<T>;Defined in: functions/assert.ts:227
Helper function to throw an error if the provided value is not an instance of the expected class.
This is useful to have TypeScript narrow a value to a specific type in a concise way.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T extends (…args) => unknown |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
unknown |
constructor |
T |
msg |
string |
Returns
Section titled “Returns”asserts value is InstanceType<T>
assertNotNull()
Section titled “assertNotNull()”function assertNotNull<T>( value, ...__namedParameters): asserts value is Exclude<T, null>;Defined in: functions/assert.ts:244
Helper function to throw an error if the provided value is equal to null.
This is useful to have TypeScript narrow a T | null value to T in a concise
way.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[null] extends [T] ? [string] : ["The assertion is useless because the provided value does not contain null."] |
Returns
Section titled “Returns”asserts value is Exclude<T, null>
assertNumber()
Section titled “assertNumber()”function assertNumber<T>( value, ...__namedParameters): asserts value is T & number;Defined in: functions/assert.ts:258
Helper function to throw an error if the provided value is not a number.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [number] ? ["The assertion is useless because the provided value is already a number."] : [string] |
Returns
Section titled “Returns”asserts value is T & number
assertObject()
Section titled “assertObject()”function assertObject<T>( value, ...__namedParameters): asserts value is T & Record<string, unknown>;Defined in: functions/assert.ts:280
Helper function to throw an error if the provided value is not an object (i.e., a TypeScript record).
This is useful to have TypeScript narrow a Record<string, unknown> | undefined
value to Record<string, unknown> in a concise way.
Under the hood, this function uses the isObject helper function.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [Record<string, unknown>] ? ["The assertion is useless because the provided value is already an object."] : [string] |
Returns
Section titled “Returns”asserts value is T & Record<string, unknown>
assertPositiveInteger()
Section titled “assertPositiveInteger()”function assertPositiveInteger(value, msg): asserts value is number;Defined in: functions/assert.ts:294
Helper function to throw an error if the provided value is not a positive integer.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
unknown |
msg |
string |
Returns
Section titled “Returns”asserts value is number
assertString()
Section titled “assertString()”function assertString<T>( value, ...__namedParameters): asserts value is T & string;Defined in: functions/assert.ts:306
Helper function to throw an error if the provided value is not a string.
Type Parameters
Section titled “Type Parameters”| Type Parameter |
|---|
T |
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
T |
…__namedParameters |
[T] extends [string] ? ["The assertion is useless because the provided value is already a string."] : [string] |
Returns
Section titled “Returns”asserts value is T & string
assertStringNotEmpty()
Section titled “assertStringNotEmpty()”function assertStringNotEmpty(value, msg): asserts value is string;Defined in: functions/assert.ts:320
Helper function to throw an error if the provided value is not a string or an empty string.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
value |
unknown |
msg |
string |
Returns
Section titled “Returns”asserts value is string
