Skip to content

promiseObject

The promiseObject() function transforms an object of promises (or values) into a promise of a resolved object, keeping keys and precise typing.

Interactive example

Syntax

typescript
type AwaitedPromiseObject<
	GenericObject extends Record<string, MaybePromise<unknown>>
> = {
	[Prop in keyof GenericObject]: Awaited<GenericObject[Prop]>;
};

function promiseObject<
	GenericInput extends AnyValue,
	GenericObject extends Record<string, MaybePromise<GenericInput>>
>(
	object: GenericObject
): Promise<SimplifyTopLevel<AwaitedPromiseObject<GenericObject>>>;

Parameters

  • object : Object whose values are promises or direct values.

Return value

A promise resolved with a typed object containing the resolved values.

See also

Released under the MIT license.