ts-toolbelt
Version:
TypeScript's largest utility library
85 lines (84 loc) • 4.8 kB
TypeScript
/** @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>>>;
};