@augment-vir/common
Version:
A collection of augments, helpers types, functions, and classes for any JavaScript environment.
24 lines (23 loc) • 1.01 kB
TypeScript
import { type MaybePromise } from '@augment-vir/core';
import { type AnyDuration } from '@date-vir/duration';
/**
* An error thrown by {@link wrapPromiseInTimeout} when the timeout is reached.
*
* @category Promise
* @category Package : @augment-vir/common
* @package [`@augment-vir/common`](https://www.npmjs.com/package/@augment-vir/common)
*/
export declare class PromiseTimeoutError extends Error {
readonly duration: AnyDuration;
readonly name = "PromiseTimeoutError";
constructor(duration: AnyDuration, failureMessage?: string | undefined);
}
/**
* Wraps an already-created Promise in a timeout, causing a rejection if the original Promise isn't
* resolved by then.
*
* @category Promise
* @category Package : @augment-vir/common
* @package [`@augment-vir/common`](https://www.npmjs.com/package/@augment-vir/common)
*/
export declare function wrapPromiseInTimeout<T>(duration: Readonly<AnyDuration>, originalPromise: MaybePromise<T>, failureMessage?: string | undefined): Promise<T>;