Package: effect
Module: Effect
Computes the return type for Effect.all when collecting a tuple.
Signature
type Effect<Discard extends true ? void : T[number] extends never ? [] : { -readonly [K in keyof T]: T[K] extends Effect<infer _A, infer _E, infer _R> ? Mode extends true ? Result.Result<_A, _E> : _A : never; }, Mode extends true ? never : T[number] extends never ? never : T[number] extends Effect<infer _A, infer _E, infer _R> ? _E : never, T[number] extends never ? never : T[number] extends Effect<infer _A, infer _E, infer _R> ? _R : never> = Effect<
Discard extends true ? void
: T[number] extends never ? []
: {
-readonly [K in keyof T]: T[K] extends Effect<
infer _A,
infer _E,
infer _R
> ? Mode extends true ? Result.Result<_A, _E> : _A
: never
},
Mode extends true ? never
: T[number] extends never ? never
: T[number] extends Effect<infer _A, infer _E, infer _R> ? _E
: never,
T[number] extends never ? never
: T[number] extends Effect<infer _A, infer _E, infer _R> ? _R
: never
> extends infer X ? X
: never
Since v2.0.0