Skip to content

asyncPipe

The asyncPipe() method chains asynchronous functions (promises or FutureEither) in series. Each step waits for the previous one to resolve and the last value is returned in a promise.

Interactive example

Syntax

typescript
function asyncPipe<Input, Output1>(
	input: PromiseLike<Input> | Input,
	pipe1: (input: Awaited<Input>) => PromiseLike<Output1> | Output1
): Promise<Awaited<Output1>>

function asyncPipe<Input, Output1, Output2>(
	input: PromiseLike<Input> | Input,
	pipe1: (input: Awaited<Input>) => PromiseLike<Output1> | Output1,
	pipe2: (input: Awaited<Output1>) => PromiseLike<Output2> | Output2
): Promise<Awaited<Output2>>

// ... additional overloads (up to 15 functions)

Parameters

  • input : An initial value or promise of a value.
  • pipe1, pipe2, ... : Functions that can return a value or a promise. Each step waits for the previous one.

Return value

A promise resolved with the final value of the pipeline, while preserving intermediate types.

See also

Released under the MIT license.