promise-settled-aggregate
Version:
Works like Promise.allSettled except it will reject with an AggregateError if some of the promises rejected, otherwise resolves with the fulfilled values.
22 lines (21 loc) • 932 B
TypeScript
/**
* Creates a Promise that is resolved after all of the input Promises have
* either fulfilled or rejected, with an array of the results if all of the
* provided Promises resolve, or rejected with an AggregateError if some
* Promises rejected.
* @param values An array of Promises.
* @returns A new Promise.
*/
declare function promiseSettledAggregate<T extends readonly unknown[] | readonly [unknown]>(values: T): Promise<{
-readonly [P in keyof T]: Awaited<T[P]>;
}>;
/**
* Creates a Promise that is resolved after all of the input Promises have
* either fulfilled or rejected, with an array of the results if all of the
* provided Promises resolve, or rejected with an AggregateError if some
* Promises rejected.
* @param values An array of Promises.
* @returns A new Promise.
*/
declare function promiseSettledAggregate<T>(values: Iterable<T>): Promise<Awaited<T>[]>;
export default promiseSettledAggregate;