UNPKG

@types/tiny-async-pool

Version:
25 lines (23 loc) 944 B
/** * This declaration specifies that the function is the exported object from the file */ export = asyncPool; /** * Runs multiple promise-returning & async functions in a limited concurrency pool. * It rejects immediately as soon as one of the promises rejects. * It resolves when all the promises completes. * It calls the iterator function as soon as possible (under concurrency limit). * * @param poolLimit The pool limit number (>= 1). * @param array Input array. * @param iteratorFn Iterator function that takes two arguments (array item and the array itself). * The iterator function should either return a promise or be an async function. * * @template IN Type of the input array * @template OUT Type of the resolves of the promises */ declare function asyncPool<IN, OUT>( poolLimit: number, array: readonly IN[], iteratorFn: (generator: IN) => Promise<OUT>, ): AsyncIterableIterator<OUT>;