Skip to main content

Namespace: Result

@sapphire/result.Result

Type Aliases

Err

Ƭ Err<E>: Err<E>

Type parameters

Name
E

Defined in

projects/utilities/packages/result/src/lib/Result.ts:97


Ok

Ƭ Ok<T>: Ok<T>

Type parameters

Name
T

Defined in

projects/utilities/packages/result/src/lib/Result.ts:98


Resolvable

Ƭ Resolvable<T, E>: T | Result<T, E>

Type parameters

Name
T
E

Defined in

projects/utilities/packages/result/src/lib/Result.ts:17


UnwrapErr

Ƭ UnwrapErr<T>: T extends Err<infer S> ? S : never

Type parameters

NameType
Textends Result<any, any>

Defined in

projects/utilities/packages/result/src/lib/Result.ts:101


UnwrapErrArray

Ƭ UnwrapErrArray<T>: { -readonly [P in keyof T]: UnwrapErr<T[P]> }

Type parameters

NameType
Textends readonly Result<any, any>[] | []

Defined in

projects/utilities/packages/result/src/lib/Result.ts:106


UnwrapOk

Ƭ UnwrapOk<T>: T extends Ok<infer S> ? S : never

Type parameters

NameType
Textends Result<any, any>

Defined in

projects/utilities/packages/result/src/lib/Result.ts:100


UnwrapOkArray

Ƭ UnwrapOkArray<T>: { -readonly [P in keyof T]: UnwrapOk<T[P]> }

Type parameters

NameType
Textends readonly Result<any, any>[] | []

Defined in

projects/utilities/packages/result/src/lib/Result.ts:103

Functions

all

all<T>(results): Result<UnwrapOkArray<T>, UnwrapErrArray<T>[number]>

Creates an Ok that is the combination of all collected Ok values as an array, or the first Err encountered.

Type parameters

NameType
Textends readonly Result<any, any>[]

Parameters

NameTypeDescription
results[...T[]]An array of Results.

Returns

Result<UnwrapOkArray<T>, UnwrapErrArray<T>[number]>

A new Result.

Defined in

projects/utilities/packages/result/src/lib/Result.ts:63


any

any<T>(results): Result<UnwrapOkArray<T>[number], UnwrapErrArray<T>>

Returns the first encountered Ok, or an Err that is the combination of all collected error values.

Type parameters

NameType
Textends readonly Result<any, any>[]

Parameters

NameTypeDescription
results[...T[]]An array of Results.

Returns

Result<UnwrapOkArray<T>[number], UnwrapErrArray<T>>

A new Result.

Defined in

projects/utilities/packages/result/src/lib/Result.ts:81


err

err(): Err<unknown>

Creates an Err with no error.

Returns

Err<unknown>

An erroneous Result.

Defined in

projects/utilities/packages/result/src/lib/Result.ts:94

err<E>(x): Err<E>

Creates an Err.

Type parameters

Name
E

Parameters

NameTypeDescription
xEValue to use.

Returns

Err<E>

An erroneous Result.

Typeparam

E The error's type.

Defined in

projects/utilities/packages/result/src/lib/Result.ts:94


from

from<T, E>(op): Result<T, E>

Creates a Result out of a callback.

Type parameters

NameType
TT
Eunknown

Parameters

NameType
opResolvable<T, E> | () => Resolvable<T, E>

Returns

Result<T, E>

Typeparam

T The result's type.

Typeparam

E The error's type.

Defined in

projects/utilities/packages/result/src/lib/Result.ts:34


fromAsync

fromAsync<T, E>(op): Promise<Result<T, E>>

Creates a Result out of a promise or async callback.

Type parameters

NameType
TT
Eunknown

Parameters

NameType
opAwaitable<Resolvable<T, E>> | () => Awaitable<Resolvable<T, E>>

Returns

Promise<Result<T, E>>

Typeparam

T The result's type.

Typeparam

E The error's type.

Defined in

projects/utilities/packages/result/src/lib/Result.ts:49


is

is<T, E>(value): true

Type parameters

Name
T
E

Parameters

NameType
valueResult<T, E>

Returns

true

Defined in

projects/utilities/packages/result/src/lib/Result.ts:23

is(value): value is Result<unknown, unknown>

Parameters

NameType
valueany

Returns

value is Result<unknown, unknown>

Defined in

projects/utilities/packages/result/src/lib/Result.ts:24


ok

ok(): Ok<unknown>

Creates an Ok with no value.

Returns

Ok<unknown>

A successful Result.

Defined in

projects/utilities/packages/result/src/lib/Result.ts:95

ok<T>(x): Ok<T>

Creates an Ok.

Type parameters

Name
T

Parameters

NameTypeDescription
xTValue to use.

Returns

Ok<T>

A successful Result.

Typeparam

T The result's type.

Defined in

projects/utilities/packages/result/src/lib/Result.ts:95