UNPKG

ts-toolbelt

Version:

TypeScript's largest utility library

85 lines (84 loc) • 4.8 kB
/** @ignore */ /** */ import { Function } from '../../Function'; import { Await } from '../../../Any/Await'; import { Curry } from '../../Curry'; /** *@hidden */ export declare type ComposeMultiAsync = { <R0, P extends any[]>(...fns: [ Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R0>>>; <R0, R1, P extends any[]>(...fns: [ Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R1>>>; <R0, R1, R2, P extends any[]>(...fns: [ Function<[Await<R1>], R2> | Curry<Function<[Await<R1>], R2>>, Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R2>>>; <R0, R1, R2, R3, P extends any[]>(...fns: [ Function<[Await<R2>], R3> | Curry<Function<[Await<R2>], R3>>, Function<[Await<R1>], R2> | Curry<Function<[Await<R1>], R2>>, Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R3>>>; <R0, R1, R2, R3, R4, P extends any[]>(...fns: [ Function<[Await<R3>], R4> | Curry<Function<[Await<R3>], R4>>, Function<[Await<R2>], R3> | Curry<Function<[Await<R2>], R3>>, Function<[Await<R1>], R2> | Curry<Function<[Await<R1>], R2>>, Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R4>>>; <R0, R1, R2, R3, R4, R5, P extends any[]>(...fns: [ Function<[Await<R4>], R5> | Curry<Function<[Await<R4>], R5>>, Function<[Await<R3>], R4> | Curry<Function<[Await<R3>], R4>>, Function<[Await<R2>], R3> | Curry<Function<[Await<R2>], R3>>, Function<[Await<R1>], R2> | Curry<Function<[Await<R1>], R2>>, Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R5>>>; <R0, R1, R2, R3, R4, R5, R6, P extends any[]>(...fns: [ Function<[Await<R5>], R6> | Curry<Function<[Await<R5>], R6>>, Function<[Await<R4>], R5> | Curry<Function<[Await<R4>], R5>>, Function<[Await<R3>], R4> | Curry<Function<[Await<R3>], R4>>, Function<[Await<R2>], R3> | Curry<Function<[Await<R2>], R3>>, Function<[Await<R1>], R2> | Curry<Function<[Await<R1>], R2>>, Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R6>>>; <R0, R1, R2, R3, R4, R5, R6, R7, P extends any[]>(...fns: [ Function<[Await<R6>], R7> | Curry<Function<[Await<R6>], R7>>, Function<[Await<R5>], R6> | Curry<Function<[Await<R5>], R6>>, Function<[Await<R4>], R5> | Curry<Function<[Await<R4>], R5>>, Function<[Await<R3>], R4> | Curry<Function<[Await<R3>], R4>>, Function<[Await<R2>], R3> | Curry<Function<[Await<R2>], R3>>, Function<[Await<R1>], R2> | Curry<Function<[Await<R1>], R2>>, Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R7>>>; <R0, R1, R2, R3, R4, R5, R6, R7, R8, P extends any[]>(...fns: [ Function<[Await<R7>], R8> | Curry<Function<[Await<R7>], R8>>, Function<[Await<R6>], R7> | Curry<Function<[Await<R6>], R7>>, Function<[Await<R5>], R6> | Curry<Function<[Await<R5>], R6>>, Function<[Await<R4>], R5> | Curry<Function<[Await<R4>], R5>>, Function<[Await<R3>], R4> | Curry<Function<[Await<R3>], R4>>, Function<[Await<R2>], R3> | Curry<Function<[Await<R2>], R3>>, Function<[Await<R1>], R2> | Curry<Function<[Await<R1>], R2>>, Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R8>>>; <R0, R1, R2, R3, R4, R5, R6, R7, R8, R9, P extends any[]>(...fns: [ Function<[Await<R8>], R9> | Curry<Function<[Await<R8>], R9>>, Function<[Await<R7>], R8> | Curry<Function<[Await<R7>], R8>>, Function<[Await<R6>], R7> | Curry<Function<[Await<R6>], R7>>, Function<[Await<R5>], R6> | Curry<Function<[Await<R5>], R6>>, Function<[Await<R4>], R5> | Curry<Function<[Await<R4>], R5>>, Function<[Await<R3>], R4> | Curry<Function<[Await<R3>], R4>>, Function<[Await<R2>], R3> | Curry<Function<[Await<R2>], R3>>, Function<[Await<R1>], R2> | Curry<Function<[Await<R1>], R2>>, Function<[Await<R0>], R1> | Curry<Function<[Await<R0>], R1>>, Function<P, R0> | Curry<Function<P, R0>> ]): Function<P, Promise<Await<R9>>>; };