@types/promise-queue
TypeScript icon, indicating that this package has built-in type declarations

2.2.3 • Public • Published

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.

Readme

Keywords

none

Package Sidebar

Install

npm i @types/promise-queue

Weekly Downloads

10,658

Version

2.2.3

License

MIT

Unpacked Size

6.46 kB

Total Files

5

Last publish

Collaborators

  • types