Skip to content

Class: TimeoutPromise<T>

Defined in: packages/promise/dist/index.d.ts:958

Utility class used by PromisE.timeout().

Extends

  • PromisEBase<T>

Type Parameters

T

T

Implements

  • IPromisE_Timeout<T>

Constructors

Constructor

new TimeoutPromise<T>(data, timeout, options, _signals?): TimeoutPromise<T>

Defined in: packages/promise/dist/index.d.ts:964

Parameters

data

IPromisE<T>

timeout

IPromisE_Delay<T>

options

TimeoutOptions

_signals?

AbortSignal[]

Returns

TimeoutPromise<T>

Overrides

PromisEBase<T>.constructor

Properties

[toStringTag]

readonly [toStringTag]: string

Defined in: node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts:176

Implementation of

IPromisE_Timeout.[toStringTag]

Inherited from

PromisEBase.[toStringTag]


data

readonly data: IPromisE<T>

Defined in: packages/promise/dist/index.d.ts:959

The underlying data promise. If multiple promises were passed to timeout, this represents the combined result (defaulting to PromisE.all).

Implementation of

IPromisE_Timeout.data


onEarlyFinalize

onEarlyFinalize: OnEarlyFinalize<T>[]

Defined in: packages/promise/dist/index.d.ts:223

Callbacks to be invoked whenever promise is finalized externally using resolve()/reject() methods

Implementation of

IPromisE_Timeout.onEarlyFinalize

Inherited from

PromisEBase.onEarlyFinalize


onFinalize

onFinalize: OnFinalize<T>[]

Defined in: packages/promise/dist/index.d.ts:225

Callback to be invoked after promise is resolved or rejected

Implementation of

IPromisE_Timeout.onFinalize

Inherited from

PromisEBase.onFinalize


options

readonly options: TimeoutOptions

Defined in: packages/promise/dist/index.d.ts:960


reject

reject: (reason) => void

Defined in: packages/promise/dist/index.d.ts:267

Reject pending promise early.

Parameters

reason

unknown

Returns

void

Implementation of

IPromisE_Timeout.reject

Inherited from

PromisEBase.reject


resolve

resolve: (value) => void

Defined in: packages/promise/dist/index.d.ts:265

Resovle pending promise early.

Parameters

value

T | PromiseLike<T>

Returns

void

Implementation of

IPromisE_Timeout.resolve

Inherited from

PromisEBase.resolve


started

readonly started: Date

Defined in: packages/promise/dist/index.d.ts:962


timeout

readonly timeout: IPromisE_Delay<T>

Defined in: packages/promise/dist/index.d.ts:961

The internal promise that handles the timeout logic. It rejects when the duration expires.

Implementation of

IPromisE_Timeout.timeout


[species]

readonly static [species]: PromiseConstructor

Defined in: node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts:180

Inherited from

PromisEBase.[species]


all

static all: <T_1>(values) => IPromisE<{ -readonly [P in string | number | symbol]: Awaited<T_1[P]> }>

Defined in: packages/promise/dist/index.d.ts:269

Sugar for new PromisE(Promise.all(...))

Type Parameters

T_1

T_1 extends unknown[]

Parameters

values

T_1

Returns

IPromisE<{ -readonly [P in string | number | symbol]: Awaited<T_1[P]> }>

Inherited from

PromisEBase.all


allSettled

static allSettled: <T_1>(values) => IPromisE<PromiseSettledResult<Awaited<T_1[number]>>[]>

Defined in: packages/promise/dist/index.d.ts:271

Sugar for new PromisE(Promise.allSettled(...))

Type Parameters

T_1

T_1 extends unknown[]

Parameters

values

T_1

Returns

IPromisE<PromiseSettledResult<Awaited<T_1[number]>>[]>

Inherited from

PromisEBase.allSettled


any

static any: <T_1>(values) => IPromisE<Awaited<T_1[number]>>

Defined in: packages/promise/dist/index.d.ts:273

Sugar for new PromisE(Promise.any(...))

Type Parameters

T_1

T_1 extends unknown[]

Parameters

values

T_1

Returns

IPromisE<Awaited<T_1[number]>>

Inherited from

PromisEBase.any


race

static race: <T_1>(values) => IPromisE<Awaited<T_1[number]>>

Defined in: packages/promise/dist/index.d.ts:275

Sugar for new PromisE(Promise.race(..))

Type Parameters

T_1

T_1 extends unknown[]

Parameters

values

T_1

Returns

IPromisE<Awaited<T_1[number]>>

Inherited from

PromisEBase.race


reject

static reject: <T_1>(reason) => PromisEBase<T_1>

Defined in: packages/promise/dist/index.d.ts:277

Extends Promise.reject

Type Parameters

T_1

T_1 = never

Parameters

reason

unknown

Returns

PromisEBase<T_1>

Inherited from

PromisEBase.reject


resolve

static resolve: <T_1>(value?) => IPromisE<T_1>

Defined in: packages/promise/dist/index.d.ts:279

Sugar for new PromisE(Promise.resolve(...))

Type Parameters

T_1

T_1

Parameters

value?

T_1 | PromiseLike<T_1>

Returns

IPromisE<T_1>

Inherited from

PromisEBase.resolve


try

static try: <T_1, U>(callbackFn, ...args) => IPromisE<Awaited<T_1>>

Defined in: packages/promise/dist/index.d.ts:281

Sugar for new PromisE(Promise.try(...))

Type Parameters

T_1

T_1

U

U extends unknown[] = []

Parameters

callbackFn

(...args) => T_1 | PromiseLike<T_1>

args

...U

Returns

IPromisE<Awaited<T_1>>

Inherited from

PromisEBase.try


withResolvers

static withResolvers: <T_1>() => object

Defined in: packages/promise/dist/index.d.ts:307

Creates a PromisE instance and returns it in an object, along with its resolve and reject functions.

NB: this function is technically no longer needed because the PromisE class already comes with the resolvers.


Type Parameters

T_1

T_1 = unknown

Returns

object

promise

promise: IPromisE<T_1>

reject

reject: (reason) => void

Parameters
reason

unknown

Returns

void

resolve

resolve: (value) => void

Parameters
value

T_1 | PromiseLike<T_1>

Returns

void

Examples

Using PromisE directly: simply provide an empty function as the executor

typescript
import PromisE from '@superutils/promise'
const promisE = new PromisE<number>(() => {})
setTimeout(() => promisE.resolve(1), 1000)
promisE.then(console.log)

Using withResolvers

typescript
import PromisE from '@superutils/promise'
const pwr = PromisE.withResolvers<number>()
setTimeout(() => pwr.resolve(1), 1000)
pwr.promise.then(console.log)

Inherited from

PromisEBase.withResolvers

Accessors

abortCtrl

Get Signature

get abortCtrl(): AbortController | undefined

Defined in: packages/promise/dist/index.d.ts:965

Returns

AbortController | undefined

Implementation of

IPromisE_Timeout.abortCtrl


aborted

Get Signature

get aborted(): boolean

Defined in: packages/promise/dist/index.d.ts:966

Read-only property indicating if the promise rejected because of external abort.

Returns

boolean

Implementation of

IPromisE_Timeout.aborted


pending

Get Signature

get pending(): boolean

Defined in: packages/promise/dist/index.d.ts:251

Indicates if the promise is still pending/unfinalized

Returns

boolean

Implementation of

IPromisE_Timeout.pending

Inherited from

PromisEBase.pending


rejected

Get Signature

get rejected(): boolean

Defined in: packages/promise/dist/index.d.ts:253

Indicates if the promise has been rejected

Returns

boolean

Implementation of

IPromisE_Timeout.rejected

Inherited from

PromisEBase.rejected


resolved

Get Signature

get resolved(): boolean

Defined in: packages/promise/dist/index.d.ts:255

Indicates if the promise has been resolved

Returns

boolean

Implementation of

IPromisE_Timeout.resolved

Inherited from

PromisEBase.resolved


state

Get Signature

get state(): 0 | 1 | 2

Defined in: packages/promise/dist/index.d.ts:263

Get promise status code:

  • 0 = pending
  • 1 = resolved
  • 2 = rejected
Returns

0 | 1 | 2

Implementation of

IPromisE_Timeout.state

Inherited from

PromisEBase.state


timedout

Get Signature

get timedout(): boolean

Defined in: packages/promise/dist/index.d.ts:969

Read-only property indicating if the promise timed out. Equivalent to checking promise.timeout.rejected.

Returns

boolean

Implementation of

IPromisE_Timeout.timedout

Methods

cancelAbort()

cancelAbort(): void

Defined in: packages/promise/dist/index.d.ts:967

Removes abortCtrl/signal listeners, effectively disabling external cancellation via AbortController.

Returns

void

Implementation of

IPromisE_Timeout.cancelAbort


catch()

catch<TResult>(onrejected?): Promise<T | TResult>

Defined in: node_modules/typescript/lib/lib.es5.d.ts:1564

Attaches a callback for only the rejection of the Promise.

Type Parameters

TResult

TResult = never

Parameters

onrejected?

((reason) => TResult | PromiseLike<TResult>) | null

The callback to execute when the Promise is rejected.

Returns

Promise<T | TResult>

A Promise for the completion of the callback.

Implementation of

IPromisE_Timeout.catch

Inherited from

PromisEBase.catch


clearTimeout()

clearTimeout(): void

Defined in: packages/promise/dist/index.d.ts:968

Clears the timeout timer, preventing the promise from being rejected due to a timeout.

Returns

void

Implementation of

IPromisE_Timeout.clearTimeout


finally()

finally(onfinally?): Promise<T>

Defined in: node_modules/typescript/lib/lib.es2018.promise.d.ts:29

Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The resolved value cannot be modified from the callback.

Parameters

onfinally?

(() => void) | null

The callback to execute when the Promise is settled (fulfilled or rejected).

Returns

Promise<T>

A Promise for the completion of the callback.

Implementation of

IPromisE_Timeout.finally

Inherited from

PromisEBase.finally


then()

then<TResult1, TResult2>(onfulfilled?, onrejected?): Promise<TResult1 | TResult2>

Defined in: node_modules/typescript/lib/lib.es5.d.ts:1557

Attaches callbacks for the resolution and/or rejection of the Promise.

Type Parameters

TResult1

TResult1 = T

TResult2

TResult2 = never

Parameters

onfulfilled?

((value) => TResult1 | PromiseLike<TResult1>) | null

The callback to execute when the Promise is resolved.

onrejected?

((reason) => TResult2 | PromiseLike<TResult2>) | null

The callback to execute when the Promise is rejected.

Returns

Promise<TResult1 | TResult2>

A Promise for the completion of which ever callback is executed.

Implementation of

IPromisE_Timeout.then

Inherited from

PromisEBase.then