Installation
npm install --save @types/promise-queue
Summary
This package contains type definitions for promise-queue (https://github.com/azproduction/promise-queue).
Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/promise-queue.
index.d.ts
export = PromiseQueue;
declare class PromiseQueue {
/**
* @param maxPendingPromises [Infinity] Number of promises that can run at once.
* @param maxQueuedPromises [Infinity] Number of promises generators that can be in the queue at once.
* `add()` will return a rejected promise if this limit would be exceeded.
* @param options [{}] See QueueOptions
*/
constructor(maxPendingPromises?: number, maxQueuedPromises?: number, options?: PromiseQueue.QueueOptions);
/**
* Enqueue a promise generator. When the number of running promises is less than `maxPendingPromises`,
* this function will be called and the returned promise will be held as a running promise until it
* rejects or resolves.
*
* @throws If the global `Promise` is undefined and `Queue.configure` hasn't been called.
* @param promiseGenerator A function that returns a promise when called.
* @returns A promise that forwards the resolution/rejection of the promise returned by `promiseGenerator`,
* or immediately rejects if `maxQueuedPromise` is exceeded.
*/
add<T>(promiseGenerator: () => Promise<T>): Promise<T>;
/**
* Returns the number of promiseGenerators waiting in queue.
*/
getPendingLength(): number;
/**
* Returns the number of in-flight promises
*/
getQueueLength(): number;
/**
* Set which promise constructor to use for the value returned by PromiseQueue#add.
* If this isn't called, the global `Promise` constructor is used.
* @param GlobalPromise A constructor for Promises
*/
static configure(GlobalPromise: PromiseConstructor): void;
}
declare namespace PromiseQueue {
interface QueueOptions {
/**
* Callback that is called when the queue is empty and all pending promises have resolved
*/
onEmpty(): void;
}
}
Additional Details
- Last updated: Tue, 07 Nov 2023 09:09:39 GMT
- Dependencies: none
Credits
These definitions were written by Lachlan Stuart.