pure-effect 0.14.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +50 -0
- package/README.md +372 -120
- package/examples/opentelemetry-example.js +173 -0
- package/examples/recording-example.js +170 -0
- package/index.d.ts +1067 -1089
- package/index.js +835 -698
- package/package.json +7 -4
package/index.d.ts
CHANGED
|
@@ -11,27 +11,20 @@ export type FailureState<E = unknown> = {
|
|
|
11
11
|
};
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
|
-
* Metadata
|
|
15
|
-
*
|
|
16
|
-
* untouched for `onBeforeCommand`.
|
|
14
|
+
* Metadata for a Command. `name` is its name in traces, replays and spans; other keys reach `onBeforeCommand` as they
|
|
15
|
+
* are.
|
|
17
16
|
*/
|
|
18
17
|
export type CommandMeta = { name?: string } & Record<string, unknown>;
|
|
19
18
|
|
|
20
19
|
export type CommandState<R, T, E = unknown, Ctx = unknown> = {
|
|
21
20
|
type: 'Command';
|
|
22
21
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* the work cancelled in flight. Ignoring it is fine and is what every thunk written before this did:
|
|
26
|
-
* the interpreter still refuses to start any *later* Command in a cancelled branch. Outside a
|
|
27
|
-
* `Parallel` no argument is passed at all.
|
|
22
|
+
* Makes the call. Inside a `Parallel` it gets an `AbortSignal` that fires when a sibling branch fails; pass it on
|
|
23
|
+
* to cancel the work.
|
|
28
24
|
*/
|
|
29
25
|
cmd: (signal?: AbortSignal) => Promise<R> | R;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
* checks a property's parameter contravariantly, which made a `CommandState<never, ...>` (a `cmd`
|
|
33
|
-
* that only throws) unassignable to `Effect`. Method parameters are bivariant, so it is accepted.
|
|
34
|
-
*/
|
|
26
|
+
// A method rather than a function property, so a `cmd` that only throws still fits `Effect`.
|
|
27
|
+
/** Receives `cmd`'s result and returns the next step. */
|
|
35
28
|
next(result: R): Effect<T, E, Ctx>;
|
|
36
29
|
meta?: CommandMeta;
|
|
37
30
|
initialInput?: unknown;
|
|
@@ -44,34 +37,31 @@ export type AskState<T, E = unknown, Ctx = unknown> = {
|
|
|
44
37
|
};
|
|
45
38
|
|
|
46
39
|
export type RetryOptions = {
|
|
40
|
+
/** Tries after the first, so `2` makes at most 3 calls. A positive integer, 3 by default. */
|
|
47
41
|
attempts?: number;
|
|
42
|
+
/** Milliseconds before the first retry, 100 by default. */
|
|
48
43
|
delay?: number;
|
|
44
|
+
/** Multiplies the wait before each later retry, so `2` doubles it. 1 by default, the same wait each time. */
|
|
49
45
|
backoff?: number;
|
|
50
46
|
};
|
|
51
47
|
|
|
52
48
|
/**
|
|
53
|
-
* `E` is the
|
|
54
|
-
*
|
|
55
|
-
* follows an I/O fault the retry loop could not get past.
|
|
49
|
+
* `E` is what the Retry can fail with: an abort from the steps it wraps, or the exhaustion after its last attempt. `R`
|
|
50
|
+
* is what the retried steps succeed with, which `next` receives; it differs from `T` once a pipeline continues past it.
|
|
56
51
|
*/
|
|
57
|
-
export type RetryState<T, E = unknown, Ctx = unknown> = {
|
|
52
|
+
export type RetryState<T, E = unknown, Ctx = unknown, R = T> = {
|
|
58
53
|
type: 'Retry';
|
|
59
|
-
effect: Effect<
|
|
60
|
-
options: RetryOptions & { onExhausted?: (error: RetryExhaustedError) => Effect<
|
|
61
|
-
next(value:
|
|
54
|
+
effect: Effect<R, any, Ctx>;
|
|
55
|
+
options: RetryOptions & { onExhausted?: (error: RetryExhaustedError) => Effect<R, any, Ctx> };
|
|
56
|
+
next(value: R): Effect<T, E, Ctx>;
|
|
62
57
|
initialInput?: unknown;
|
|
63
58
|
};
|
|
64
59
|
|
|
65
|
-
/**
|
|
66
|
-
* The error a `Retry` fails with once every attempt has hit an I/O fault. `lastError` is what the last
|
|
67
|
-
* attempt threw: a Command's function throwing, or a nested `Retry` running out. It is never a `Failure`
|
|
68
|
-
* a step returned, since that is an abort and is not retried, so the wrapped tree's error type cannot
|
|
69
|
-
* reach it. Nothing declares what a function throws, so `Retry` leaves `Thrown` as `unknown`; pass it
|
|
70
|
-
* only to annotate a value whose thrown type you already know.
|
|
71
|
-
*/
|
|
60
|
+
/** The error a `Retry` fails with once every attempt has thrown. `lastError` is what the last attempt threw. */
|
|
72
61
|
export type RetryExhaustedError<Thrown = unknown> = {
|
|
73
62
|
retryExhausted: true;
|
|
74
63
|
lastError: Thrown;
|
|
64
|
+
/** The `attempts` option: tries after the first, so the retried steps ran one more time than this. */
|
|
75
65
|
attempts: number;
|
|
76
66
|
};
|
|
77
67
|
|
|
@@ -82,24 +72,17 @@ export type ParallelOptions = {
|
|
|
82
72
|
settled?: boolean;
|
|
83
73
|
};
|
|
84
74
|
|
|
85
|
-
/**
|
|
86
|
-
export type ParallelOutcomes<T extends readonly unknown[], E> = {
|
|
87
|
-
[K in keyof T]: SuccessState<T[K]> | FailureState<E>;
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* `V` is what `next` receives, which is the branch values normally and the branch outcomes under
|
|
92
|
-
* `settled`. It defaults to `T`, so every non-settled use reads as it always did.
|
|
93
|
-
*/
|
|
75
|
+
/** `V` is what `next` receives: the branch values, or their outcomes under `settled`. `BranchError` types `effects`. */
|
|
94
76
|
export type ParallelState<
|
|
95
77
|
T extends readonly unknown[],
|
|
96
78
|
R,
|
|
97
79
|
E = unknown,
|
|
98
80
|
Ctx = unknown,
|
|
99
|
-
V extends readonly unknown[] = T
|
|
81
|
+
V extends readonly unknown[] = T,
|
|
82
|
+
BranchError = E
|
|
100
83
|
> = {
|
|
101
84
|
type: 'Parallel';
|
|
102
|
-
effects: { [K in keyof T]: Effect<T[K],
|
|
85
|
+
effects: { [K in keyof T]: Effect<T[K], BranchError, Ctx> };
|
|
103
86
|
next(values: [...V]): Effect<R, E, Ctx>;
|
|
104
87
|
options?: ParallelOptions;
|
|
105
88
|
initialInput?: unknown;
|
|
@@ -110,1100 +93,1160 @@ export type Effect<T, E = unknown, Ctx = unknown> =
|
|
|
110
93
|
| FailureState<E>
|
|
111
94
|
| CommandState<any, T, E, Ctx>
|
|
112
95
|
| AskState<T, E, Ctx>
|
|
113
|
-
| RetryState<T, E, Ctx>
|
|
114
|
-
| ParallelState<any, T, E, Ctx>;
|
|
96
|
+
| RetryState<T, E, Ctx, any>
|
|
97
|
+
| ParallelState<any, T, E, Ctx, any, any>;
|
|
98
|
+
|
|
99
|
+
// No type parameters, so as the constraint on a callback's return it gives a call written inline there nothing to infer.
|
|
100
|
+
/** Any Effect: a `Success`, `Failure`, `Command`, `Ask`, `Retry` or `Parallel`. */
|
|
101
|
+
export type AnyEffect = { readonly type: 'Success' | 'Failure' | 'Command' | 'Ask' | 'Retry' | 'Parallel' };
|
|
102
|
+
|
|
103
|
+
/** The value an Effect succeeds with. */
|
|
104
|
+
export type EffectValue<X> =
|
|
105
|
+
X extends SuccessState<infer T>
|
|
106
|
+
? T
|
|
107
|
+
: X extends CommandState<any, infer T, any, any>
|
|
108
|
+
? T
|
|
109
|
+
: X extends AskState<infer T, any, any>
|
|
110
|
+
? T
|
|
111
|
+
: X extends RetryState<infer T, any, any, any>
|
|
112
|
+
? T
|
|
113
|
+
: X extends ParallelState<any, infer T, any, any, any, any>
|
|
114
|
+
? T
|
|
115
|
+
: never;
|
|
116
|
+
|
|
117
|
+
/** The error an Effect can fail with: what it returns as a `Failure`, not what a Command's function throws. */
|
|
118
|
+
export type EffectError<X> =
|
|
119
|
+
X extends FailureState<infer E>
|
|
120
|
+
? E
|
|
121
|
+
: X extends CommandState<any, any, infer E, any>
|
|
122
|
+
? E
|
|
123
|
+
: X extends AskState<any, infer E, any>
|
|
124
|
+
? E
|
|
125
|
+
: X extends RetryState<any, infer E, any, any>
|
|
126
|
+
? E
|
|
127
|
+
: X extends ParallelState<any, any, infer E, any, any, any>
|
|
128
|
+
? E
|
|
129
|
+
: never;
|
|
130
|
+
|
|
131
|
+
/** The context an Effect reads, which is `unknown` for a `Success` or `Failure`, since they read none. */
|
|
132
|
+
export type EffectContext<X> = [X] extends [SuccessState<any> | FailureState<any>]
|
|
133
|
+
? unknown
|
|
134
|
+
: X extends CommandState<any, any, any, infer C>
|
|
135
|
+
? C
|
|
136
|
+
: X extends AskState<any, any, infer C>
|
|
137
|
+
? C
|
|
138
|
+
: X extends RetryState<any, any, infer C, any>
|
|
139
|
+
? C
|
|
140
|
+
: X extends ParallelState<any, any, any, infer C, any, any>
|
|
141
|
+
? C
|
|
142
|
+
: never;
|
|
143
|
+
|
|
144
|
+
// Checked by a conditional, not a constraint: a constraint types an inline Ask's or Retry's error as any.
|
|
145
|
+
/** The branches `Parallel` accepts: each one an Effect. */
|
|
146
|
+
export type ParallelBranches<B> = B &
|
|
147
|
+
(B extends readonly Effect<any, any, any>[] ? unknown : readonly Effect<any, any, any>[]);
|
|
148
|
+
|
|
149
|
+
/** The value of each branch, in array order: what `next` receives. */
|
|
150
|
+
export type ParallelValues<B extends readonly unknown[]> = { -readonly [K in keyof B]: EffectValue<B[K]> };
|
|
151
|
+
|
|
152
|
+
/** What a settled `Parallel` hands to `next`: one outcome per branch, in array order, with that branch's error. */
|
|
153
|
+
export type ParallelOutcomes<B extends readonly unknown[]> = {
|
|
154
|
+
-readonly [K in keyof B]: SuccessState<EffectValue<B[K]>> | FailureState<EffectError<B[K]>>;
|
|
155
|
+
};
|
|
115
156
|
|
|
157
|
+
/** Every branch's context together, which is what `runEffect` needs for a `Parallel`. */
|
|
158
|
+
export type ParallelContext<B extends readonly unknown[]> = {
|
|
159
|
+
[K in keyof B]: (context: EffectContext<B[K]>) => void;
|
|
160
|
+
}[number] extends (context: infer Ctx) => void
|
|
161
|
+
? Ctx
|
|
162
|
+
: unknown;
|
|
163
|
+
|
|
164
|
+
/** Wraps a value for the next step. */
|
|
116
165
|
export declare function Success<T>(value: T): SuccessState<T>;
|
|
117
166
|
|
|
118
|
-
|
|
167
|
+
/** Stops the pipeline with `error`. A literal keeps its exact type, and an object or array error is readonly. */
|
|
168
|
+
export declare function Failure<const E = unknown>(error: E, initialInput?: unknown): FailureState<E>;
|
|
119
169
|
|
|
120
170
|
/**
|
|
121
|
-
* `
|
|
122
|
-
*
|
|
123
|
-
* A `meta.name` becomes this Command's identity, which keeps it independent of how `cmd` was declared
|
|
124
|
-
* and immune to minification. Without one the identity falls back to `cmd.name`, then to 'anonymous'.
|
|
125
|
-
*
|
|
126
|
-
* The first overload is the default `next`, where the value is the function's result. Without it, a
|
|
127
|
-
* `Command(fn)` inside a step with an annotated return type had its value type inferred from the
|
|
128
|
-
* annotation, as `unknown`, rather than from `fn`, and `Retry(Command(fn))` failed to compile there.
|
|
171
|
+
* Defers a side effect: `cmd` makes the call and `next` decides what follows; without `next` the result passes through.
|
|
172
|
+
* `meta.name` names it, else `cmd.name`.
|
|
129
173
|
*/
|
|
130
|
-
export declare function Command<R
|
|
174
|
+
export declare function Command<R>(
|
|
131
175
|
cmd: (signal?: AbortSignal) => Promise<R> | R,
|
|
132
176
|
next?: undefined,
|
|
133
177
|
meta?: CommandMeta
|
|
134
|
-
): CommandState<R, R,
|
|
178
|
+
): CommandState<R, R, never>;
|
|
135
179
|
|
|
180
|
+
// `N` is what `next` returns, whole, so Failures of different shapes join; given explicitly, `T`, `E` and `Ctx` build it.
|
|
181
|
+
export declare function Command<R, T = never, E = never, Ctx = unknown, N extends AnyEffect = Effect<T, E, Ctx>>(
|
|
182
|
+
cmd: (signal?: AbortSignal) => Promise<R> | R,
|
|
183
|
+
next?: (result: R) => N,
|
|
184
|
+
meta?: CommandMeta
|
|
185
|
+
): CommandState<R, EffectValue<N>, EffectError<N>, EffectContext<N>>;
|
|
186
|
+
|
|
187
|
+
/** For `Command<User | null>(fetchJson, next)`: given some type arguments, TypeScript infers none of the rest. */
|
|
136
188
|
export declare function Command<R, T = R, E = unknown, Ctx = unknown>(
|
|
137
189
|
cmd: (signal?: AbortSignal) => Promise<R> | R,
|
|
138
190
|
next?: (result: R) => Effect<T, E, Ctx>,
|
|
139
191
|
meta?: CommandMeta
|
|
140
192
|
): CommandState<R, T, E, Ctx>;
|
|
141
193
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
194
|
+
/** The name a Command is known by in traces, replays and spans: `meta.name`, else `cmd.name`, else `'anonymous'`. */
|
|
195
|
+
export declare function commandName(command: CommandState<any, any, any, any>): string;
|
|
196
|
+
|
|
197
|
+
/** Reads the context passed to `runEffect`. Give the value, error and context types, or none. */
|
|
198
|
+
export declare function Ask<T = never, E = never, Ctx = unknown, N extends AnyEffect = Effect<T, E, Ctx>>(
|
|
199
|
+
next: (context: Ctx) => N
|
|
200
|
+
): AskState<EffectValue<N>, EffectError<N>, Ctx & EffectContext<N>>;
|
|
145
201
|
|
|
146
202
|
/**
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
* fallback's own error type alongside `E`, since an abort the wrapped tree returned reaches neither
|
|
150
|
-
* the retry loop nor the fallback and leaves as itself. `onExhausted` is a per-use option, and so is every other retry
|
|
151
|
-
* option: there are no configured defaults for one to be carried by.
|
|
203
|
+
* Runs `effect` again when a Command in it throws, then runs `onExhausted` once the attempts run out. Give every type
|
|
204
|
+
* argument or none.
|
|
152
205
|
*/
|
|
153
|
-
export declare function Retry<T, E =
|
|
206
|
+
export declare function Retry<T, E = never, E2 = never, Ctx = unknown, N extends AnyEffect = Effect<T, E2, Ctx>>(
|
|
154
207
|
effect: Effect<T, E, Ctx>,
|
|
155
|
-
options: RetryOptions & { onExhausted: (error: RetryExhaustedError) =>
|
|
156
|
-
): RetryState<T
|
|
208
|
+
options: RetryOptions & { onExhausted: (error: RetryExhaustedError) => N }
|
|
209
|
+
): RetryState<T | EffectValue<N>, E | EffectError<N>, Ctx & EffectContext<N>>;
|
|
157
210
|
|
|
158
211
|
/**
|
|
159
|
-
*
|
|
160
|
-
*
|
|
161
|
-
* An abort the wrapped tree returned is not retried and is not wrapped, so `E` reaches the pipeline
|
|
162
|
-
* as itself and never as `lastError`.
|
|
212
|
+
* Runs `effect` again when a Command in it throws, and fails with `RetryExhaustedError` once the attempts run out. Give
|
|
213
|
+
* every type argument or none.
|
|
163
214
|
*/
|
|
164
|
-
export declare function Retry<T, E =
|
|
215
|
+
export declare function Retry<T, E = never, Ctx = unknown>(
|
|
165
216
|
effect: Effect<T, E, Ctx>,
|
|
166
217
|
options?: RetryOptions
|
|
167
218
|
): RetryState<T, E | RetryExhaustedError, Ctx>;
|
|
168
219
|
|
|
220
|
+
// `settled?: false` keeps a `settled` known only as boolean from matching; `| []` infers tuples on TypeScript 5.1.
|
|
169
221
|
/**
|
|
170
|
-
* `next`
|
|
171
|
-
*
|
|
172
|
-
* is `next` or the options, whichever it looks like.
|
|
173
|
-
*
|
|
174
|
-
* The non-settled overloads accept only `settled?: false`. A `settled` known only as a `boolean`, from a
|
|
175
|
-
* shared options object or a caller's `ParallelOptions`, could be `true` at runtime, and matching it to
|
|
176
|
-
* an overload that types `next` as the values let a batch compile while it read outcome objects as
|
|
177
|
-
* values. It matches no overload instead: write `settled: true` inline, or add `as const`.
|
|
222
|
+
* Runs the branches at the same time and hands `next` their values in order. The first to fail cancels the rest, unless
|
|
223
|
+
* `settled`, which hands `next` every outcome.
|
|
178
224
|
*/
|
|
179
|
-
export declare function Parallel<
|
|
180
|
-
effects:
|
|
225
|
+
export declare function Parallel<B extends readonly unknown[] | []>(
|
|
226
|
+
effects: ParallelBranches<B>,
|
|
181
227
|
options: ParallelOptions & { settled: true }
|
|
182
|
-
): ParallelState<
|
|
228
|
+
): ParallelState<
|
|
229
|
+
ParallelValues<B>,
|
|
230
|
+
ParallelOutcomes<B>,
|
|
231
|
+
never,
|
|
232
|
+
ParallelContext<B>,
|
|
233
|
+
ParallelOutcomes<B>,
|
|
234
|
+
EffectError<B[number]>
|
|
235
|
+
>;
|
|
183
236
|
|
|
184
|
-
export declare function Parallel<
|
|
185
|
-
effects:
|
|
186
|
-
next: (
|
|
237
|
+
export declare function Parallel<B extends readonly unknown[] | [], N extends AnyEffect = never>(
|
|
238
|
+
effects: ParallelBranches<B>,
|
|
239
|
+
next: (outcomes: ParallelOutcomes<B>) => N,
|
|
187
240
|
options: ParallelOptions & { settled: true }
|
|
188
|
-
): ParallelState<
|
|
241
|
+
): ParallelState<
|
|
242
|
+
ParallelValues<B>,
|
|
243
|
+
EffectValue<N>,
|
|
244
|
+
EffectError<N>,
|
|
245
|
+
ParallelContext<B> & EffectContext<N>,
|
|
246
|
+
ParallelOutcomes<B>,
|
|
247
|
+
EffectError<B[number]>
|
|
248
|
+
>;
|
|
189
249
|
|
|
190
|
-
export declare function Parallel<
|
|
191
|
-
effects:
|
|
250
|
+
export declare function Parallel<B extends readonly unknown[] | []>(
|
|
251
|
+
effects: ParallelBranches<B>,
|
|
192
252
|
options?: ParallelOptions & { settled?: false }
|
|
193
|
-
): ParallelState<
|
|
253
|
+
): ParallelState<ParallelValues<B>, ParallelValues<B>, EffectError<B[number]>, ParallelContext<B>>;
|
|
194
254
|
|
|
195
|
-
export declare function Parallel<
|
|
196
|
-
effects:
|
|
197
|
-
next: (values:
|
|
255
|
+
export declare function Parallel<B extends readonly unknown[] | [], N extends AnyEffect = never>(
|
|
256
|
+
effects: ParallelBranches<B>,
|
|
257
|
+
next: (values: ParallelValues<B>) => N,
|
|
198
258
|
options?: ParallelOptions & { settled?: false }
|
|
199
|
-
): ParallelState<
|
|
259
|
+
): ParallelState<
|
|
260
|
+
ParallelValues<B>,
|
|
261
|
+
EffectValue<N>,
|
|
262
|
+
EffectError<B[number]> | EffectError<N>,
|
|
263
|
+
ParallelContext<B> & EffectContext<N>
|
|
264
|
+
>;
|
|
200
265
|
|
|
266
|
+
// BEGIN effectPipe overloads, generated by scripts/effect-pipe-overloads.js: edit it, then npm run generate.
|
|
201
267
|
/**
|
|
202
|
-
* Composes steps into a pipeline: each step
|
|
203
|
-
*
|
|
204
|
-
* pipeline is itself a step, so a longer one nests: `effectPipe(effectPipe(s1, s2), effectPipe(s3, s4))`.
|
|
205
|
-
* Each step's context type is its own, and the pipeline's is all of them together, so a step that reads
|
|
206
|
-
* no context does not erase a later step's, and `runEffect` asks for every context a step reads.
|
|
268
|
+
* Composes steps into a pipeline: each step gets the previous step's value, and a `Failure` stops it.
|
|
269
|
+
* Typed for up to 20 steps; nest pipelines for more.
|
|
207
270
|
*/
|
|
208
|
-
export declare function effectPipe<T0,
|
|
209
|
-
f1: (value: T0) =>
|
|
210
|
-
): (start: T0) => Effect<
|
|
271
|
+
export declare function effectPipe<T0, R1 extends AnyEffect = never>(
|
|
272
|
+
f1: (value: T0) => R1
|
|
273
|
+
): (start: T0) => Effect<EffectValue<R1>, EffectError<R1>, EffectContext<R1>>;
|
|
211
274
|
|
|
212
|
-
export declare function effectPipe<T0,
|
|
213
|
-
f1: (value: T0) =>
|
|
214
|
-
f2: (value:
|
|
215
|
-
): (start: T0) => Effect<
|
|
275
|
+
export declare function effectPipe<T0, R1 extends AnyEffect = never, R2 extends AnyEffect = never>(
|
|
276
|
+
f1: (value: T0) => R1,
|
|
277
|
+
f2: (value: EffectValue<R1>) => R2
|
|
278
|
+
): (start: T0) => Effect<EffectValue<R2>, EffectError<R1> | EffectError<R2>, EffectContext<R1> & EffectContext<R2>>;
|
|
216
279
|
|
|
217
280
|
export declare function effectPipe<
|
|
218
281
|
T0,
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
E1 = unknown,
|
|
223
|
-
E2 = unknown,
|
|
224
|
-
E3 = unknown,
|
|
225
|
-
C1 = unknown,
|
|
226
|
-
C2 = unknown,
|
|
227
|
-
C3 = unknown
|
|
282
|
+
R1 extends AnyEffect = never,
|
|
283
|
+
R2 extends AnyEffect = never,
|
|
284
|
+
R3 extends AnyEffect = never
|
|
228
285
|
>(
|
|
229
|
-
f1: (value: T0) =>
|
|
230
|
-
f2: (value:
|
|
231
|
-
f3: (value:
|
|
232
|
-
): (
|
|
286
|
+
f1: (value: T0) => R1,
|
|
287
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
288
|
+
f3: (value: EffectValue<R2>) => R3
|
|
289
|
+
): (
|
|
290
|
+
start: T0
|
|
291
|
+
) => Effect<
|
|
292
|
+
EffectValue<R3>,
|
|
293
|
+
EffectError<R1> | EffectError<R2> | EffectError<R3>,
|
|
294
|
+
EffectContext<R1> & EffectContext<R2> & EffectContext<R3>
|
|
295
|
+
>;
|
|
233
296
|
|
|
234
297
|
export declare function effectPipe<
|
|
235
298
|
T0,
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
E1 = unknown,
|
|
241
|
-
E2 = unknown,
|
|
242
|
-
E3 = unknown,
|
|
243
|
-
E4 = unknown,
|
|
244
|
-
C1 = unknown,
|
|
245
|
-
C2 = unknown,
|
|
246
|
-
C3 = unknown,
|
|
247
|
-
C4 = unknown
|
|
299
|
+
R1 extends AnyEffect = never,
|
|
300
|
+
R2 extends AnyEffect = never,
|
|
301
|
+
R3 extends AnyEffect = never,
|
|
302
|
+
R4 extends AnyEffect = never
|
|
248
303
|
>(
|
|
249
|
-
f1: (value: T0) =>
|
|
250
|
-
f2: (value:
|
|
251
|
-
f3: (value:
|
|
252
|
-
f4: (value:
|
|
253
|
-
): (
|
|
304
|
+
f1: (value: T0) => R1,
|
|
305
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
306
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
307
|
+
f4: (value: EffectValue<R3>) => R4
|
|
308
|
+
): (
|
|
309
|
+
start: T0
|
|
310
|
+
) => Effect<
|
|
311
|
+
EffectValue<R4>,
|
|
312
|
+
EffectError<R1> | EffectError<R2> | EffectError<R3> | EffectError<R4>,
|
|
313
|
+
EffectContext<R1> & EffectContext<R2> & EffectContext<R3> & EffectContext<R4>
|
|
314
|
+
>;
|
|
254
315
|
|
|
255
316
|
export declare function effectPipe<
|
|
256
317
|
T0,
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
E1 = unknown,
|
|
263
|
-
E2 = unknown,
|
|
264
|
-
E3 = unknown,
|
|
265
|
-
E4 = unknown,
|
|
266
|
-
E5 = unknown,
|
|
267
|
-
C1 = unknown,
|
|
268
|
-
C2 = unknown,
|
|
269
|
-
C3 = unknown,
|
|
270
|
-
C4 = unknown,
|
|
271
|
-
C5 = unknown
|
|
318
|
+
R1 extends AnyEffect = never,
|
|
319
|
+
R2 extends AnyEffect = never,
|
|
320
|
+
R3 extends AnyEffect = never,
|
|
321
|
+
R4 extends AnyEffect = never,
|
|
322
|
+
R5 extends AnyEffect = never
|
|
272
323
|
>(
|
|
273
|
-
f1: (value: T0) =>
|
|
274
|
-
f2: (value:
|
|
275
|
-
f3: (value:
|
|
276
|
-
f4: (value:
|
|
277
|
-
f5: (value:
|
|
278
|
-
): (
|
|
324
|
+
f1: (value: T0) => R1,
|
|
325
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
326
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
327
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
328
|
+
f5: (value: EffectValue<R4>) => R5
|
|
329
|
+
): (
|
|
330
|
+
start: T0
|
|
331
|
+
) => Effect<
|
|
332
|
+
EffectValue<R5>,
|
|
333
|
+
EffectError<R1> | EffectError<R2> | EffectError<R3> | EffectError<R4> | EffectError<R5>,
|
|
334
|
+
EffectContext<R1> & EffectContext<R2> & EffectContext<R3> & EffectContext<R4> & EffectContext<R5>
|
|
335
|
+
>;
|
|
279
336
|
|
|
280
337
|
export declare function effectPipe<
|
|
281
338
|
T0,
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
E1 = unknown,
|
|
289
|
-
E2 = unknown,
|
|
290
|
-
E3 = unknown,
|
|
291
|
-
E4 = unknown,
|
|
292
|
-
E5 = unknown,
|
|
293
|
-
E6 = unknown,
|
|
294
|
-
C1 = unknown,
|
|
295
|
-
C2 = unknown,
|
|
296
|
-
C3 = unknown,
|
|
297
|
-
C4 = unknown,
|
|
298
|
-
C5 = unknown,
|
|
299
|
-
C6 = unknown
|
|
339
|
+
R1 extends AnyEffect = never,
|
|
340
|
+
R2 extends AnyEffect = never,
|
|
341
|
+
R3 extends AnyEffect = never,
|
|
342
|
+
R4 extends AnyEffect = never,
|
|
343
|
+
R5 extends AnyEffect = never,
|
|
344
|
+
R6 extends AnyEffect = never
|
|
300
345
|
>(
|
|
301
|
-
f1: (value: T0) =>
|
|
302
|
-
f2: (value:
|
|
303
|
-
f3: (value:
|
|
304
|
-
f4: (value:
|
|
305
|
-
f5: (value:
|
|
306
|
-
f6: (value:
|
|
307
|
-
): (
|
|
346
|
+
f1: (value: T0) => R1,
|
|
347
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
348
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
349
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
350
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
351
|
+
f6: (value: EffectValue<R5>) => R6
|
|
352
|
+
): (
|
|
353
|
+
start: T0
|
|
354
|
+
) => Effect<
|
|
355
|
+
EffectValue<R6>,
|
|
356
|
+
EffectError<R1> | EffectError<R2> | EffectError<R3> | EffectError<R4> | EffectError<R5> | EffectError<R6>,
|
|
357
|
+
EffectContext<R1> &
|
|
358
|
+
EffectContext<R2> &
|
|
359
|
+
EffectContext<R3> &
|
|
360
|
+
EffectContext<R4> &
|
|
361
|
+
EffectContext<R5> &
|
|
362
|
+
EffectContext<R6>
|
|
363
|
+
>;
|
|
308
364
|
|
|
309
365
|
export declare function effectPipe<
|
|
310
366
|
T0,
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
E1 = unknown,
|
|
319
|
-
E2 = unknown,
|
|
320
|
-
E3 = unknown,
|
|
321
|
-
E4 = unknown,
|
|
322
|
-
E5 = unknown,
|
|
323
|
-
E6 = unknown,
|
|
324
|
-
E7 = unknown,
|
|
325
|
-
C1 = unknown,
|
|
326
|
-
C2 = unknown,
|
|
327
|
-
C3 = unknown,
|
|
328
|
-
C4 = unknown,
|
|
329
|
-
C5 = unknown,
|
|
330
|
-
C6 = unknown,
|
|
331
|
-
C7 = unknown
|
|
367
|
+
R1 extends AnyEffect = never,
|
|
368
|
+
R2 extends AnyEffect = never,
|
|
369
|
+
R3 extends AnyEffect = never,
|
|
370
|
+
R4 extends AnyEffect = never,
|
|
371
|
+
R5 extends AnyEffect = never,
|
|
372
|
+
R6 extends AnyEffect = never,
|
|
373
|
+
R7 extends AnyEffect = never
|
|
332
374
|
>(
|
|
333
|
-
f1: (value: T0) =>
|
|
334
|
-
f2: (value:
|
|
335
|
-
f3: (value:
|
|
336
|
-
f4: (value:
|
|
337
|
-
f5: (value:
|
|
338
|
-
f6: (value:
|
|
339
|
-
f7: (value:
|
|
340
|
-
): (
|
|
375
|
+
f1: (value: T0) => R1,
|
|
376
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
377
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
378
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
379
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
380
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
381
|
+
f7: (value: EffectValue<R6>) => R7
|
|
382
|
+
): (
|
|
383
|
+
start: T0
|
|
384
|
+
) => Effect<
|
|
385
|
+
EffectValue<R7>,
|
|
386
|
+
| EffectError<R1>
|
|
387
|
+
| EffectError<R2>
|
|
388
|
+
| EffectError<R3>
|
|
389
|
+
| EffectError<R4>
|
|
390
|
+
| EffectError<R5>
|
|
391
|
+
| EffectError<R6>
|
|
392
|
+
| EffectError<R7>,
|
|
393
|
+
EffectContext<R1> &
|
|
394
|
+
EffectContext<R2> &
|
|
395
|
+
EffectContext<R3> &
|
|
396
|
+
EffectContext<R4> &
|
|
397
|
+
EffectContext<R5> &
|
|
398
|
+
EffectContext<R6> &
|
|
399
|
+
EffectContext<R7>
|
|
400
|
+
>;
|
|
341
401
|
|
|
342
402
|
export declare function effectPipe<
|
|
343
403
|
T0,
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
E1 = unknown,
|
|
353
|
-
E2 = unknown,
|
|
354
|
-
E3 = unknown,
|
|
355
|
-
E4 = unknown,
|
|
356
|
-
E5 = unknown,
|
|
357
|
-
E6 = unknown,
|
|
358
|
-
E7 = unknown,
|
|
359
|
-
E8 = unknown,
|
|
360
|
-
C1 = unknown,
|
|
361
|
-
C2 = unknown,
|
|
362
|
-
C3 = unknown,
|
|
363
|
-
C4 = unknown,
|
|
364
|
-
C5 = unknown,
|
|
365
|
-
C6 = unknown,
|
|
366
|
-
C7 = unknown,
|
|
367
|
-
C8 = unknown
|
|
404
|
+
R1 extends AnyEffect = never,
|
|
405
|
+
R2 extends AnyEffect = never,
|
|
406
|
+
R3 extends AnyEffect = never,
|
|
407
|
+
R4 extends AnyEffect = never,
|
|
408
|
+
R5 extends AnyEffect = never,
|
|
409
|
+
R6 extends AnyEffect = never,
|
|
410
|
+
R7 extends AnyEffect = never,
|
|
411
|
+
R8 extends AnyEffect = never
|
|
368
412
|
>(
|
|
369
|
-
f1: (value: T0) =>
|
|
370
|
-
f2: (value:
|
|
371
|
-
f3: (value:
|
|
372
|
-
f4: (value:
|
|
373
|
-
f5: (value:
|
|
374
|
-
f6: (value:
|
|
375
|
-
f7: (value:
|
|
376
|
-
f8: (value:
|
|
377
|
-
): (
|
|
413
|
+
f1: (value: T0) => R1,
|
|
414
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
415
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
416
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
417
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
418
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
419
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
420
|
+
f8: (value: EffectValue<R7>) => R8
|
|
421
|
+
): (
|
|
422
|
+
start: T0
|
|
423
|
+
) => Effect<
|
|
424
|
+
EffectValue<R8>,
|
|
425
|
+
| EffectError<R1>
|
|
426
|
+
| EffectError<R2>
|
|
427
|
+
| EffectError<R3>
|
|
428
|
+
| EffectError<R4>
|
|
429
|
+
| EffectError<R5>
|
|
430
|
+
| EffectError<R6>
|
|
431
|
+
| EffectError<R7>
|
|
432
|
+
| EffectError<R8>,
|
|
433
|
+
EffectContext<R1> &
|
|
434
|
+
EffectContext<R2> &
|
|
435
|
+
EffectContext<R3> &
|
|
436
|
+
EffectContext<R4> &
|
|
437
|
+
EffectContext<R5> &
|
|
438
|
+
EffectContext<R6> &
|
|
439
|
+
EffectContext<R7> &
|
|
440
|
+
EffectContext<R8>
|
|
441
|
+
>;
|
|
378
442
|
|
|
379
443
|
export declare function effectPipe<
|
|
380
444
|
T0,
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
E1 = unknown,
|
|
391
|
-
E2 = unknown,
|
|
392
|
-
E3 = unknown,
|
|
393
|
-
E4 = unknown,
|
|
394
|
-
E5 = unknown,
|
|
395
|
-
E6 = unknown,
|
|
396
|
-
E7 = unknown,
|
|
397
|
-
E8 = unknown,
|
|
398
|
-
E9 = unknown,
|
|
399
|
-
C1 = unknown,
|
|
400
|
-
C2 = unknown,
|
|
401
|
-
C3 = unknown,
|
|
402
|
-
C4 = unknown,
|
|
403
|
-
C5 = unknown,
|
|
404
|
-
C6 = unknown,
|
|
405
|
-
C7 = unknown,
|
|
406
|
-
C8 = unknown,
|
|
407
|
-
C9 = unknown
|
|
445
|
+
R1 extends AnyEffect = never,
|
|
446
|
+
R2 extends AnyEffect = never,
|
|
447
|
+
R3 extends AnyEffect = never,
|
|
448
|
+
R4 extends AnyEffect = never,
|
|
449
|
+
R5 extends AnyEffect = never,
|
|
450
|
+
R6 extends AnyEffect = never,
|
|
451
|
+
R7 extends AnyEffect = never,
|
|
452
|
+
R8 extends AnyEffect = never,
|
|
453
|
+
R9 extends AnyEffect = never
|
|
408
454
|
>(
|
|
409
|
-
f1: (value: T0) =>
|
|
410
|
-
f2: (value:
|
|
411
|
-
f3: (value:
|
|
412
|
-
f4: (value:
|
|
413
|
-
f5: (value:
|
|
414
|
-
f6: (value:
|
|
415
|
-
f7: (value:
|
|
416
|
-
f8: (value:
|
|
417
|
-
f9: (value:
|
|
418
|
-
): (
|
|
455
|
+
f1: (value: T0) => R1,
|
|
456
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
457
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
458
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
459
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
460
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
461
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
462
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
463
|
+
f9: (value: EffectValue<R8>) => R9
|
|
464
|
+
): (
|
|
465
|
+
start: T0
|
|
466
|
+
) => Effect<
|
|
467
|
+
EffectValue<R9>,
|
|
468
|
+
| EffectError<R1>
|
|
469
|
+
| EffectError<R2>
|
|
470
|
+
| EffectError<R3>
|
|
471
|
+
| EffectError<R4>
|
|
472
|
+
| EffectError<R5>
|
|
473
|
+
| EffectError<R6>
|
|
474
|
+
| EffectError<R7>
|
|
475
|
+
| EffectError<R8>
|
|
476
|
+
| EffectError<R9>,
|
|
477
|
+
EffectContext<R1> &
|
|
478
|
+
EffectContext<R2> &
|
|
479
|
+
EffectContext<R3> &
|
|
480
|
+
EffectContext<R4> &
|
|
481
|
+
EffectContext<R5> &
|
|
482
|
+
EffectContext<R6> &
|
|
483
|
+
EffectContext<R7> &
|
|
484
|
+
EffectContext<R8> &
|
|
485
|
+
EffectContext<R9>
|
|
486
|
+
>;
|
|
419
487
|
|
|
420
488
|
export declare function effectPipe<
|
|
421
489
|
T0,
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
E1 = unknown,
|
|
433
|
-
E2 = unknown,
|
|
434
|
-
E3 = unknown,
|
|
435
|
-
E4 = unknown,
|
|
436
|
-
E5 = unknown,
|
|
437
|
-
E6 = unknown,
|
|
438
|
-
E7 = unknown,
|
|
439
|
-
E8 = unknown,
|
|
440
|
-
E9 = unknown,
|
|
441
|
-
E10 = unknown,
|
|
442
|
-
C1 = unknown,
|
|
443
|
-
C2 = unknown,
|
|
444
|
-
C3 = unknown,
|
|
445
|
-
C4 = unknown,
|
|
446
|
-
C5 = unknown,
|
|
447
|
-
C6 = unknown,
|
|
448
|
-
C7 = unknown,
|
|
449
|
-
C8 = unknown,
|
|
450
|
-
C9 = unknown,
|
|
451
|
-
C10 = unknown
|
|
490
|
+
R1 extends AnyEffect = never,
|
|
491
|
+
R2 extends AnyEffect = never,
|
|
492
|
+
R3 extends AnyEffect = never,
|
|
493
|
+
R4 extends AnyEffect = never,
|
|
494
|
+
R5 extends AnyEffect = never,
|
|
495
|
+
R6 extends AnyEffect = never,
|
|
496
|
+
R7 extends AnyEffect = never,
|
|
497
|
+
R8 extends AnyEffect = never,
|
|
498
|
+
R9 extends AnyEffect = never,
|
|
499
|
+
R10 extends AnyEffect = never
|
|
452
500
|
>(
|
|
453
|
-
f1: (value: T0) =>
|
|
454
|
-
f2: (value:
|
|
455
|
-
f3: (value:
|
|
456
|
-
f4: (value:
|
|
457
|
-
f5: (value:
|
|
458
|
-
f6: (value:
|
|
459
|
-
f7: (value:
|
|
460
|
-
f8: (value:
|
|
461
|
-
f9: (value:
|
|
462
|
-
f10: (value:
|
|
501
|
+
f1: (value: T0) => R1,
|
|
502
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
503
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
504
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
505
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
506
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
507
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
508
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
509
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
510
|
+
f10: (value: EffectValue<R9>) => R10
|
|
463
511
|
): (
|
|
464
512
|
start: T0
|
|
465
|
-
) => Effect<
|
|
513
|
+
) => Effect<
|
|
514
|
+
EffectValue<R10>,
|
|
515
|
+
| EffectError<R1>
|
|
516
|
+
| EffectError<R2>
|
|
517
|
+
| EffectError<R3>
|
|
518
|
+
| EffectError<R4>
|
|
519
|
+
| EffectError<R5>
|
|
520
|
+
| EffectError<R6>
|
|
521
|
+
| EffectError<R7>
|
|
522
|
+
| EffectError<R8>
|
|
523
|
+
| EffectError<R9>
|
|
524
|
+
| EffectError<R10>,
|
|
525
|
+
EffectContext<R1> &
|
|
526
|
+
EffectContext<R2> &
|
|
527
|
+
EffectContext<R3> &
|
|
528
|
+
EffectContext<R4> &
|
|
529
|
+
EffectContext<R5> &
|
|
530
|
+
EffectContext<R6> &
|
|
531
|
+
EffectContext<R7> &
|
|
532
|
+
EffectContext<R8> &
|
|
533
|
+
EffectContext<R9> &
|
|
534
|
+
EffectContext<R10>
|
|
535
|
+
>;
|
|
466
536
|
|
|
467
537
|
export declare function effectPipe<
|
|
468
538
|
T0,
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
E1 = unknown,
|
|
481
|
-
E2 = unknown,
|
|
482
|
-
E3 = unknown,
|
|
483
|
-
E4 = unknown,
|
|
484
|
-
E5 = unknown,
|
|
485
|
-
E6 = unknown,
|
|
486
|
-
E7 = unknown,
|
|
487
|
-
E8 = unknown,
|
|
488
|
-
E9 = unknown,
|
|
489
|
-
E10 = unknown,
|
|
490
|
-
E11 = unknown,
|
|
491
|
-
C1 = unknown,
|
|
492
|
-
C2 = unknown,
|
|
493
|
-
C3 = unknown,
|
|
494
|
-
C4 = unknown,
|
|
495
|
-
C5 = unknown,
|
|
496
|
-
C6 = unknown,
|
|
497
|
-
C7 = unknown,
|
|
498
|
-
C8 = unknown,
|
|
499
|
-
C9 = unknown,
|
|
500
|
-
C10 = unknown,
|
|
501
|
-
C11 = unknown
|
|
539
|
+
R1 extends AnyEffect = never,
|
|
540
|
+
R2 extends AnyEffect = never,
|
|
541
|
+
R3 extends AnyEffect = never,
|
|
542
|
+
R4 extends AnyEffect = never,
|
|
543
|
+
R5 extends AnyEffect = never,
|
|
544
|
+
R6 extends AnyEffect = never,
|
|
545
|
+
R7 extends AnyEffect = never,
|
|
546
|
+
R8 extends AnyEffect = never,
|
|
547
|
+
R9 extends AnyEffect = never,
|
|
548
|
+
R10 extends AnyEffect = never,
|
|
549
|
+
R11 extends AnyEffect = never
|
|
502
550
|
>(
|
|
503
|
-
f1: (value: T0) =>
|
|
504
|
-
f2: (value:
|
|
505
|
-
f3: (value:
|
|
506
|
-
f4: (value:
|
|
507
|
-
f5: (value:
|
|
508
|
-
f6: (value:
|
|
509
|
-
f7: (value:
|
|
510
|
-
f8: (value:
|
|
511
|
-
f9: (value:
|
|
512
|
-
f10: (value:
|
|
513
|
-
f11: (value:
|
|
551
|
+
f1: (value: T0) => R1,
|
|
552
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
553
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
554
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
555
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
556
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
557
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
558
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
559
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
560
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
561
|
+
f11: (value: EffectValue<R10>) => R11
|
|
514
562
|
): (
|
|
515
563
|
start: T0
|
|
516
564
|
) => Effect<
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
565
|
+
EffectValue<R11>,
|
|
566
|
+
| EffectError<R1>
|
|
567
|
+
| EffectError<R2>
|
|
568
|
+
| EffectError<R3>
|
|
569
|
+
| EffectError<R4>
|
|
570
|
+
| EffectError<R5>
|
|
571
|
+
| EffectError<R6>
|
|
572
|
+
| EffectError<R7>
|
|
573
|
+
| EffectError<R8>
|
|
574
|
+
| EffectError<R9>
|
|
575
|
+
| EffectError<R10>
|
|
576
|
+
| EffectError<R11>,
|
|
577
|
+
EffectContext<R1> &
|
|
578
|
+
EffectContext<R2> &
|
|
579
|
+
EffectContext<R3> &
|
|
580
|
+
EffectContext<R4> &
|
|
581
|
+
EffectContext<R5> &
|
|
582
|
+
EffectContext<R6> &
|
|
583
|
+
EffectContext<R7> &
|
|
584
|
+
EffectContext<R8> &
|
|
585
|
+
EffectContext<R9> &
|
|
586
|
+
EffectContext<R10> &
|
|
587
|
+
EffectContext<R11>
|
|
520
588
|
>;
|
|
521
589
|
|
|
522
590
|
export declare function effectPipe<
|
|
523
591
|
T0,
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
E1 = unknown,
|
|
537
|
-
E2 = unknown,
|
|
538
|
-
E3 = unknown,
|
|
539
|
-
E4 = unknown,
|
|
540
|
-
E5 = unknown,
|
|
541
|
-
E6 = unknown,
|
|
542
|
-
E7 = unknown,
|
|
543
|
-
E8 = unknown,
|
|
544
|
-
E9 = unknown,
|
|
545
|
-
E10 = unknown,
|
|
546
|
-
E11 = unknown,
|
|
547
|
-
E12 = unknown,
|
|
548
|
-
C1 = unknown,
|
|
549
|
-
C2 = unknown,
|
|
550
|
-
C3 = unknown,
|
|
551
|
-
C4 = unknown,
|
|
552
|
-
C5 = unknown,
|
|
553
|
-
C6 = unknown,
|
|
554
|
-
C7 = unknown,
|
|
555
|
-
C8 = unknown,
|
|
556
|
-
C9 = unknown,
|
|
557
|
-
C10 = unknown,
|
|
558
|
-
C11 = unknown,
|
|
559
|
-
C12 = unknown
|
|
592
|
+
R1 extends AnyEffect = never,
|
|
593
|
+
R2 extends AnyEffect = never,
|
|
594
|
+
R3 extends AnyEffect = never,
|
|
595
|
+
R4 extends AnyEffect = never,
|
|
596
|
+
R5 extends AnyEffect = never,
|
|
597
|
+
R6 extends AnyEffect = never,
|
|
598
|
+
R7 extends AnyEffect = never,
|
|
599
|
+
R8 extends AnyEffect = never,
|
|
600
|
+
R9 extends AnyEffect = never,
|
|
601
|
+
R10 extends AnyEffect = never,
|
|
602
|
+
R11 extends AnyEffect = never,
|
|
603
|
+
R12 extends AnyEffect = never
|
|
560
604
|
>(
|
|
561
|
-
f1: (value: T0) =>
|
|
562
|
-
f2: (value:
|
|
563
|
-
f3: (value:
|
|
564
|
-
f4: (value:
|
|
565
|
-
f5: (value:
|
|
566
|
-
f6: (value:
|
|
567
|
-
f7: (value:
|
|
568
|
-
f8: (value:
|
|
569
|
-
f9: (value:
|
|
570
|
-
f10: (value:
|
|
571
|
-
f11: (value:
|
|
572
|
-
f12: (value:
|
|
605
|
+
f1: (value: T0) => R1,
|
|
606
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
607
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
608
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
609
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
610
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
611
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
612
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
613
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
614
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
615
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
616
|
+
f12: (value: EffectValue<R11>) => R12
|
|
573
617
|
): (
|
|
574
618
|
start: T0
|
|
575
619
|
) => Effect<
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
620
|
+
EffectValue<R12>,
|
|
621
|
+
| EffectError<R1>
|
|
622
|
+
| EffectError<R2>
|
|
623
|
+
| EffectError<R3>
|
|
624
|
+
| EffectError<R4>
|
|
625
|
+
| EffectError<R5>
|
|
626
|
+
| EffectError<R6>
|
|
627
|
+
| EffectError<R7>
|
|
628
|
+
| EffectError<R8>
|
|
629
|
+
| EffectError<R9>
|
|
630
|
+
| EffectError<R10>
|
|
631
|
+
| EffectError<R11>
|
|
632
|
+
| EffectError<R12>,
|
|
633
|
+
EffectContext<R1> &
|
|
634
|
+
EffectContext<R2> &
|
|
635
|
+
EffectContext<R3> &
|
|
636
|
+
EffectContext<R4> &
|
|
637
|
+
EffectContext<R5> &
|
|
638
|
+
EffectContext<R6> &
|
|
639
|
+
EffectContext<R7> &
|
|
640
|
+
EffectContext<R8> &
|
|
641
|
+
EffectContext<R9> &
|
|
642
|
+
EffectContext<R10> &
|
|
643
|
+
EffectContext<R11> &
|
|
644
|
+
EffectContext<R12>
|
|
579
645
|
>;
|
|
580
646
|
|
|
581
647
|
export declare function effectPipe<
|
|
582
648
|
T0,
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
E1 = unknown,
|
|
597
|
-
E2 = unknown,
|
|
598
|
-
E3 = unknown,
|
|
599
|
-
E4 = unknown,
|
|
600
|
-
E5 = unknown,
|
|
601
|
-
E6 = unknown,
|
|
602
|
-
E7 = unknown,
|
|
603
|
-
E8 = unknown,
|
|
604
|
-
E9 = unknown,
|
|
605
|
-
E10 = unknown,
|
|
606
|
-
E11 = unknown,
|
|
607
|
-
E12 = unknown,
|
|
608
|
-
E13 = unknown,
|
|
609
|
-
C1 = unknown,
|
|
610
|
-
C2 = unknown,
|
|
611
|
-
C3 = unknown,
|
|
612
|
-
C4 = unknown,
|
|
613
|
-
C5 = unknown,
|
|
614
|
-
C6 = unknown,
|
|
615
|
-
C7 = unknown,
|
|
616
|
-
C8 = unknown,
|
|
617
|
-
C9 = unknown,
|
|
618
|
-
C10 = unknown,
|
|
619
|
-
C11 = unknown,
|
|
620
|
-
C12 = unknown,
|
|
621
|
-
C13 = unknown
|
|
649
|
+
R1 extends AnyEffect = never,
|
|
650
|
+
R2 extends AnyEffect = never,
|
|
651
|
+
R3 extends AnyEffect = never,
|
|
652
|
+
R4 extends AnyEffect = never,
|
|
653
|
+
R5 extends AnyEffect = never,
|
|
654
|
+
R6 extends AnyEffect = never,
|
|
655
|
+
R7 extends AnyEffect = never,
|
|
656
|
+
R8 extends AnyEffect = never,
|
|
657
|
+
R9 extends AnyEffect = never,
|
|
658
|
+
R10 extends AnyEffect = never,
|
|
659
|
+
R11 extends AnyEffect = never,
|
|
660
|
+
R12 extends AnyEffect = never,
|
|
661
|
+
R13 extends AnyEffect = never
|
|
622
662
|
>(
|
|
623
|
-
f1: (value: T0) =>
|
|
624
|
-
f2: (value:
|
|
625
|
-
f3: (value:
|
|
626
|
-
f4: (value:
|
|
627
|
-
f5: (value:
|
|
628
|
-
f6: (value:
|
|
629
|
-
f7: (value:
|
|
630
|
-
f8: (value:
|
|
631
|
-
f9: (value:
|
|
632
|
-
f10: (value:
|
|
633
|
-
f11: (value:
|
|
634
|
-
f12: (value:
|
|
635
|
-
f13: (value:
|
|
663
|
+
f1: (value: T0) => R1,
|
|
664
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
665
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
666
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
667
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
668
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
669
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
670
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
671
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
672
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
673
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
674
|
+
f12: (value: EffectValue<R11>) => R12,
|
|
675
|
+
f13: (value: EffectValue<R12>) => R13
|
|
636
676
|
): (
|
|
637
677
|
start: T0
|
|
638
678
|
) => Effect<
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
679
|
+
EffectValue<R13>,
|
|
680
|
+
| EffectError<R1>
|
|
681
|
+
| EffectError<R2>
|
|
682
|
+
| EffectError<R3>
|
|
683
|
+
| EffectError<R4>
|
|
684
|
+
| EffectError<R5>
|
|
685
|
+
| EffectError<R6>
|
|
686
|
+
| EffectError<R7>
|
|
687
|
+
| EffectError<R8>
|
|
688
|
+
| EffectError<R9>
|
|
689
|
+
| EffectError<R10>
|
|
690
|
+
| EffectError<R11>
|
|
691
|
+
| EffectError<R12>
|
|
692
|
+
| EffectError<R13>,
|
|
693
|
+
EffectContext<R1> &
|
|
694
|
+
EffectContext<R2> &
|
|
695
|
+
EffectContext<R3> &
|
|
696
|
+
EffectContext<R4> &
|
|
697
|
+
EffectContext<R5> &
|
|
698
|
+
EffectContext<R6> &
|
|
699
|
+
EffectContext<R7> &
|
|
700
|
+
EffectContext<R8> &
|
|
701
|
+
EffectContext<R9> &
|
|
702
|
+
EffectContext<R10> &
|
|
703
|
+
EffectContext<R11> &
|
|
704
|
+
EffectContext<R12> &
|
|
705
|
+
EffectContext<R13>
|
|
642
706
|
>;
|
|
643
707
|
|
|
644
708
|
export declare function effectPipe<
|
|
645
709
|
T0,
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
E1 = unknown,
|
|
661
|
-
E2 = unknown,
|
|
662
|
-
E3 = unknown,
|
|
663
|
-
E4 = unknown,
|
|
664
|
-
E5 = unknown,
|
|
665
|
-
E6 = unknown,
|
|
666
|
-
E7 = unknown,
|
|
667
|
-
E8 = unknown,
|
|
668
|
-
E9 = unknown,
|
|
669
|
-
E10 = unknown,
|
|
670
|
-
E11 = unknown,
|
|
671
|
-
E12 = unknown,
|
|
672
|
-
E13 = unknown,
|
|
673
|
-
E14 = unknown,
|
|
674
|
-
C1 = unknown,
|
|
675
|
-
C2 = unknown,
|
|
676
|
-
C3 = unknown,
|
|
677
|
-
C4 = unknown,
|
|
678
|
-
C5 = unknown,
|
|
679
|
-
C6 = unknown,
|
|
680
|
-
C7 = unknown,
|
|
681
|
-
C8 = unknown,
|
|
682
|
-
C9 = unknown,
|
|
683
|
-
C10 = unknown,
|
|
684
|
-
C11 = unknown,
|
|
685
|
-
C12 = unknown,
|
|
686
|
-
C13 = unknown,
|
|
687
|
-
C14 = unknown
|
|
710
|
+
R1 extends AnyEffect = never,
|
|
711
|
+
R2 extends AnyEffect = never,
|
|
712
|
+
R3 extends AnyEffect = never,
|
|
713
|
+
R4 extends AnyEffect = never,
|
|
714
|
+
R5 extends AnyEffect = never,
|
|
715
|
+
R6 extends AnyEffect = never,
|
|
716
|
+
R7 extends AnyEffect = never,
|
|
717
|
+
R8 extends AnyEffect = never,
|
|
718
|
+
R9 extends AnyEffect = never,
|
|
719
|
+
R10 extends AnyEffect = never,
|
|
720
|
+
R11 extends AnyEffect = never,
|
|
721
|
+
R12 extends AnyEffect = never,
|
|
722
|
+
R13 extends AnyEffect = never,
|
|
723
|
+
R14 extends AnyEffect = never
|
|
688
724
|
>(
|
|
689
|
-
f1: (value: T0) =>
|
|
690
|
-
f2: (value:
|
|
691
|
-
f3: (value:
|
|
692
|
-
f4: (value:
|
|
693
|
-
f5: (value:
|
|
694
|
-
f6: (value:
|
|
695
|
-
f7: (value:
|
|
696
|
-
f8: (value:
|
|
697
|
-
f9: (value:
|
|
698
|
-
f10: (value:
|
|
699
|
-
f11: (value:
|
|
700
|
-
f12: (value:
|
|
701
|
-
f13: (value:
|
|
702
|
-
f14: (value:
|
|
725
|
+
f1: (value: T0) => R1,
|
|
726
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
727
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
728
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
729
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
730
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
731
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
732
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
733
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
734
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
735
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
736
|
+
f12: (value: EffectValue<R11>) => R12,
|
|
737
|
+
f13: (value: EffectValue<R12>) => R13,
|
|
738
|
+
f14: (value: EffectValue<R13>) => R14
|
|
703
739
|
): (
|
|
704
740
|
start: T0
|
|
705
741
|
) => Effect<
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
742
|
+
EffectValue<R14>,
|
|
743
|
+
| EffectError<R1>
|
|
744
|
+
| EffectError<R2>
|
|
745
|
+
| EffectError<R3>
|
|
746
|
+
| EffectError<R4>
|
|
747
|
+
| EffectError<R5>
|
|
748
|
+
| EffectError<R6>
|
|
749
|
+
| EffectError<R7>
|
|
750
|
+
| EffectError<R8>
|
|
751
|
+
| EffectError<R9>
|
|
752
|
+
| EffectError<R10>
|
|
753
|
+
| EffectError<R11>
|
|
754
|
+
| EffectError<R12>
|
|
755
|
+
| EffectError<R13>
|
|
756
|
+
| EffectError<R14>,
|
|
757
|
+
EffectContext<R1> &
|
|
758
|
+
EffectContext<R2> &
|
|
759
|
+
EffectContext<R3> &
|
|
760
|
+
EffectContext<R4> &
|
|
761
|
+
EffectContext<R5> &
|
|
762
|
+
EffectContext<R6> &
|
|
763
|
+
EffectContext<R7> &
|
|
764
|
+
EffectContext<R8> &
|
|
765
|
+
EffectContext<R9> &
|
|
766
|
+
EffectContext<R10> &
|
|
767
|
+
EffectContext<R11> &
|
|
768
|
+
EffectContext<R12> &
|
|
769
|
+
EffectContext<R13> &
|
|
770
|
+
EffectContext<R14>
|
|
709
771
|
>;
|
|
710
772
|
|
|
711
773
|
export declare function effectPipe<
|
|
712
774
|
T0,
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
E1 = unknown,
|
|
729
|
-
E2 = unknown,
|
|
730
|
-
E3 = unknown,
|
|
731
|
-
E4 = unknown,
|
|
732
|
-
E5 = unknown,
|
|
733
|
-
E6 = unknown,
|
|
734
|
-
E7 = unknown,
|
|
735
|
-
E8 = unknown,
|
|
736
|
-
E9 = unknown,
|
|
737
|
-
E10 = unknown,
|
|
738
|
-
E11 = unknown,
|
|
739
|
-
E12 = unknown,
|
|
740
|
-
E13 = unknown,
|
|
741
|
-
E14 = unknown,
|
|
742
|
-
E15 = unknown,
|
|
743
|
-
C1 = unknown,
|
|
744
|
-
C2 = unknown,
|
|
745
|
-
C3 = unknown,
|
|
746
|
-
C4 = unknown,
|
|
747
|
-
C5 = unknown,
|
|
748
|
-
C6 = unknown,
|
|
749
|
-
C7 = unknown,
|
|
750
|
-
C8 = unknown,
|
|
751
|
-
C9 = unknown,
|
|
752
|
-
C10 = unknown,
|
|
753
|
-
C11 = unknown,
|
|
754
|
-
C12 = unknown,
|
|
755
|
-
C13 = unknown,
|
|
756
|
-
C14 = unknown,
|
|
757
|
-
C15 = unknown
|
|
775
|
+
R1 extends AnyEffect = never,
|
|
776
|
+
R2 extends AnyEffect = never,
|
|
777
|
+
R3 extends AnyEffect = never,
|
|
778
|
+
R4 extends AnyEffect = never,
|
|
779
|
+
R5 extends AnyEffect = never,
|
|
780
|
+
R6 extends AnyEffect = never,
|
|
781
|
+
R7 extends AnyEffect = never,
|
|
782
|
+
R8 extends AnyEffect = never,
|
|
783
|
+
R9 extends AnyEffect = never,
|
|
784
|
+
R10 extends AnyEffect = never,
|
|
785
|
+
R11 extends AnyEffect = never,
|
|
786
|
+
R12 extends AnyEffect = never,
|
|
787
|
+
R13 extends AnyEffect = never,
|
|
788
|
+
R14 extends AnyEffect = never,
|
|
789
|
+
R15 extends AnyEffect = never
|
|
758
790
|
>(
|
|
759
|
-
f1: (value: T0) =>
|
|
760
|
-
f2: (value:
|
|
761
|
-
f3: (value:
|
|
762
|
-
f4: (value:
|
|
763
|
-
f5: (value:
|
|
764
|
-
f6: (value:
|
|
765
|
-
f7: (value:
|
|
766
|
-
f8: (value:
|
|
767
|
-
f9: (value:
|
|
768
|
-
f10: (value:
|
|
769
|
-
f11: (value:
|
|
770
|
-
f12: (value:
|
|
771
|
-
f13: (value:
|
|
772
|
-
f14: (value:
|
|
773
|
-
f15: (value:
|
|
791
|
+
f1: (value: T0) => R1,
|
|
792
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
793
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
794
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
795
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
796
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
797
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
798
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
799
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
800
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
801
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
802
|
+
f12: (value: EffectValue<R11>) => R12,
|
|
803
|
+
f13: (value: EffectValue<R12>) => R13,
|
|
804
|
+
f14: (value: EffectValue<R13>) => R14,
|
|
805
|
+
f15: (value: EffectValue<R14>) => R15
|
|
774
806
|
): (
|
|
775
807
|
start: T0
|
|
776
808
|
) => Effect<
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
809
|
+
EffectValue<R15>,
|
|
810
|
+
| EffectError<R1>
|
|
811
|
+
| EffectError<R2>
|
|
812
|
+
| EffectError<R3>
|
|
813
|
+
| EffectError<R4>
|
|
814
|
+
| EffectError<R5>
|
|
815
|
+
| EffectError<R6>
|
|
816
|
+
| EffectError<R7>
|
|
817
|
+
| EffectError<R8>
|
|
818
|
+
| EffectError<R9>
|
|
819
|
+
| EffectError<R10>
|
|
820
|
+
| EffectError<R11>
|
|
821
|
+
| EffectError<R12>
|
|
822
|
+
| EffectError<R13>
|
|
823
|
+
| EffectError<R14>
|
|
824
|
+
| EffectError<R15>,
|
|
825
|
+
EffectContext<R1> &
|
|
826
|
+
EffectContext<R2> &
|
|
827
|
+
EffectContext<R3> &
|
|
828
|
+
EffectContext<R4> &
|
|
829
|
+
EffectContext<R5> &
|
|
830
|
+
EffectContext<R6> &
|
|
831
|
+
EffectContext<R7> &
|
|
832
|
+
EffectContext<R8> &
|
|
833
|
+
EffectContext<R9> &
|
|
834
|
+
EffectContext<R10> &
|
|
835
|
+
EffectContext<R11> &
|
|
836
|
+
EffectContext<R12> &
|
|
837
|
+
EffectContext<R13> &
|
|
838
|
+
EffectContext<R14> &
|
|
839
|
+
EffectContext<R15>
|
|
780
840
|
>;
|
|
781
841
|
|
|
782
842
|
export declare function effectPipe<
|
|
783
843
|
T0,
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
E1 = unknown,
|
|
801
|
-
E2 = unknown,
|
|
802
|
-
E3 = unknown,
|
|
803
|
-
E4 = unknown,
|
|
804
|
-
E5 = unknown,
|
|
805
|
-
E6 = unknown,
|
|
806
|
-
E7 = unknown,
|
|
807
|
-
E8 = unknown,
|
|
808
|
-
E9 = unknown,
|
|
809
|
-
E10 = unknown,
|
|
810
|
-
E11 = unknown,
|
|
811
|
-
E12 = unknown,
|
|
812
|
-
E13 = unknown,
|
|
813
|
-
E14 = unknown,
|
|
814
|
-
E15 = unknown,
|
|
815
|
-
E16 = unknown,
|
|
816
|
-
C1 = unknown,
|
|
817
|
-
C2 = unknown,
|
|
818
|
-
C3 = unknown,
|
|
819
|
-
C4 = unknown,
|
|
820
|
-
C5 = unknown,
|
|
821
|
-
C6 = unknown,
|
|
822
|
-
C7 = unknown,
|
|
823
|
-
C8 = unknown,
|
|
824
|
-
C9 = unknown,
|
|
825
|
-
C10 = unknown,
|
|
826
|
-
C11 = unknown,
|
|
827
|
-
C12 = unknown,
|
|
828
|
-
C13 = unknown,
|
|
829
|
-
C14 = unknown,
|
|
830
|
-
C15 = unknown,
|
|
831
|
-
C16 = unknown
|
|
844
|
+
R1 extends AnyEffect = never,
|
|
845
|
+
R2 extends AnyEffect = never,
|
|
846
|
+
R3 extends AnyEffect = never,
|
|
847
|
+
R4 extends AnyEffect = never,
|
|
848
|
+
R5 extends AnyEffect = never,
|
|
849
|
+
R6 extends AnyEffect = never,
|
|
850
|
+
R7 extends AnyEffect = never,
|
|
851
|
+
R8 extends AnyEffect = never,
|
|
852
|
+
R9 extends AnyEffect = never,
|
|
853
|
+
R10 extends AnyEffect = never,
|
|
854
|
+
R11 extends AnyEffect = never,
|
|
855
|
+
R12 extends AnyEffect = never,
|
|
856
|
+
R13 extends AnyEffect = never,
|
|
857
|
+
R14 extends AnyEffect = never,
|
|
858
|
+
R15 extends AnyEffect = never,
|
|
859
|
+
R16 extends AnyEffect = never
|
|
832
860
|
>(
|
|
833
|
-
f1: (value: T0) =>
|
|
834
|
-
f2: (value:
|
|
835
|
-
f3: (value:
|
|
836
|
-
f4: (value:
|
|
837
|
-
f5: (value:
|
|
838
|
-
f6: (value:
|
|
839
|
-
f7: (value:
|
|
840
|
-
f8: (value:
|
|
841
|
-
f9: (value:
|
|
842
|
-
f10: (value:
|
|
843
|
-
f11: (value:
|
|
844
|
-
f12: (value:
|
|
845
|
-
f13: (value:
|
|
846
|
-
f14: (value:
|
|
847
|
-
f15: (value:
|
|
848
|
-
f16: (value:
|
|
861
|
+
f1: (value: T0) => R1,
|
|
862
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
863
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
864
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
865
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
866
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
867
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
868
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
869
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
870
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
871
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
872
|
+
f12: (value: EffectValue<R11>) => R12,
|
|
873
|
+
f13: (value: EffectValue<R12>) => R13,
|
|
874
|
+
f14: (value: EffectValue<R13>) => R14,
|
|
875
|
+
f15: (value: EffectValue<R14>) => R15,
|
|
876
|
+
f16: (value: EffectValue<R15>) => R16
|
|
849
877
|
): (
|
|
850
878
|
start: T0
|
|
851
879
|
) => Effect<
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
880
|
+
EffectValue<R16>,
|
|
881
|
+
| EffectError<R1>
|
|
882
|
+
| EffectError<R2>
|
|
883
|
+
| EffectError<R3>
|
|
884
|
+
| EffectError<R4>
|
|
885
|
+
| EffectError<R5>
|
|
886
|
+
| EffectError<R6>
|
|
887
|
+
| EffectError<R7>
|
|
888
|
+
| EffectError<R8>
|
|
889
|
+
| EffectError<R9>
|
|
890
|
+
| EffectError<R10>
|
|
891
|
+
| EffectError<R11>
|
|
892
|
+
| EffectError<R12>
|
|
893
|
+
| EffectError<R13>
|
|
894
|
+
| EffectError<R14>
|
|
895
|
+
| EffectError<R15>
|
|
896
|
+
| EffectError<R16>,
|
|
897
|
+
EffectContext<R1> &
|
|
898
|
+
EffectContext<R2> &
|
|
899
|
+
EffectContext<R3> &
|
|
900
|
+
EffectContext<R4> &
|
|
901
|
+
EffectContext<R5> &
|
|
902
|
+
EffectContext<R6> &
|
|
903
|
+
EffectContext<R7> &
|
|
904
|
+
EffectContext<R8> &
|
|
905
|
+
EffectContext<R9> &
|
|
906
|
+
EffectContext<R10> &
|
|
907
|
+
EffectContext<R11> &
|
|
908
|
+
EffectContext<R12> &
|
|
909
|
+
EffectContext<R13> &
|
|
910
|
+
EffectContext<R14> &
|
|
911
|
+
EffectContext<R15> &
|
|
912
|
+
EffectContext<R16>
|
|
855
913
|
>;
|
|
856
914
|
|
|
857
915
|
export declare function effectPipe<
|
|
858
916
|
T0,
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
E1 = unknown,
|
|
877
|
-
E2 = unknown,
|
|
878
|
-
E3 = unknown,
|
|
879
|
-
E4 = unknown,
|
|
880
|
-
E5 = unknown,
|
|
881
|
-
E6 = unknown,
|
|
882
|
-
E7 = unknown,
|
|
883
|
-
E8 = unknown,
|
|
884
|
-
E9 = unknown,
|
|
885
|
-
E10 = unknown,
|
|
886
|
-
E11 = unknown,
|
|
887
|
-
E12 = unknown,
|
|
888
|
-
E13 = unknown,
|
|
889
|
-
E14 = unknown,
|
|
890
|
-
E15 = unknown,
|
|
891
|
-
E16 = unknown,
|
|
892
|
-
E17 = unknown,
|
|
893
|
-
C1 = unknown,
|
|
894
|
-
C2 = unknown,
|
|
895
|
-
C3 = unknown,
|
|
896
|
-
C4 = unknown,
|
|
897
|
-
C5 = unknown,
|
|
898
|
-
C6 = unknown,
|
|
899
|
-
C7 = unknown,
|
|
900
|
-
C8 = unknown,
|
|
901
|
-
C9 = unknown,
|
|
902
|
-
C10 = unknown,
|
|
903
|
-
C11 = unknown,
|
|
904
|
-
C12 = unknown,
|
|
905
|
-
C13 = unknown,
|
|
906
|
-
C14 = unknown,
|
|
907
|
-
C15 = unknown,
|
|
908
|
-
C16 = unknown,
|
|
909
|
-
C17 = unknown
|
|
917
|
+
R1 extends AnyEffect = never,
|
|
918
|
+
R2 extends AnyEffect = never,
|
|
919
|
+
R3 extends AnyEffect = never,
|
|
920
|
+
R4 extends AnyEffect = never,
|
|
921
|
+
R5 extends AnyEffect = never,
|
|
922
|
+
R6 extends AnyEffect = never,
|
|
923
|
+
R7 extends AnyEffect = never,
|
|
924
|
+
R8 extends AnyEffect = never,
|
|
925
|
+
R9 extends AnyEffect = never,
|
|
926
|
+
R10 extends AnyEffect = never,
|
|
927
|
+
R11 extends AnyEffect = never,
|
|
928
|
+
R12 extends AnyEffect = never,
|
|
929
|
+
R13 extends AnyEffect = never,
|
|
930
|
+
R14 extends AnyEffect = never,
|
|
931
|
+
R15 extends AnyEffect = never,
|
|
932
|
+
R16 extends AnyEffect = never,
|
|
933
|
+
R17 extends AnyEffect = never
|
|
910
934
|
>(
|
|
911
|
-
f1: (value: T0) =>
|
|
912
|
-
f2: (value:
|
|
913
|
-
f3: (value:
|
|
914
|
-
f4: (value:
|
|
915
|
-
f5: (value:
|
|
916
|
-
f6: (value:
|
|
917
|
-
f7: (value:
|
|
918
|
-
f8: (value:
|
|
919
|
-
f9: (value:
|
|
920
|
-
f10: (value:
|
|
921
|
-
f11: (value:
|
|
922
|
-
f12: (value:
|
|
923
|
-
f13: (value:
|
|
924
|
-
f14: (value:
|
|
925
|
-
f15: (value:
|
|
926
|
-
f16: (value:
|
|
927
|
-
f17: (value:
|
|
935
|
+
f1: (value: T0) => R1,
|
|
936
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
937
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
938
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
939
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
940
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
941
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
942
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
943
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
944
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
945
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
946
|
+
f12: (value: EffectValue<R11>) => R12,
|
|
947
|
+
f13: (value: EffectValue<R12>) => R13,
|
|
948
|
+
f14: (value: EffectValue<R13>) => R14,
|
|
949
|
+
f15: (value: EffectValue<R14>) => R15,
|
|
950
|
+
f16: (value: EffectValue<R15>) => R16,
|
|
951
|
+
f17: (value: EffectValue<R16>) => R17
|
|
928
952
|
): (
|
|
929
953
|
start: T0
|
|
930
954
|
) => Effect<
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
955
|
+
EffectValue<R17>,
|
|
956
|
+
| EffectError<R1>
|
|
957
|
+
| EffectError<R2>
|
|
958
|
+
| EffectError<R3>
|
|
959
|
+
| EffectError<R4>
|
|
960
|
+
| EffectError<R5>
|
|
961
|
+
| EffectError<R6>
|
|
962
|
+
| EffectError<R7>
|
|
963
|
+
| EffectError<R8>
|
|
964
|
+
| EffectError<R9>
|
|
965
|
+
| EffectError<R10>
|
|
966
|
+
| EffectError<R11>
|
|
967
|
+
| EffectError<R12>
|
|
968
|
+
| EffectError<R13>
|
|
969
|
+
| EffectError<R14>
|
|
970
|
+
| EffectError<R15>
|
|
971
|
+
| EffectError<R16>
|
|
972
|
+
| EffectError<R17>,
|
|
973
|
+
EffectContext<R1> &
|
|
974
|
+
EffectContext<R2> &
|
|
975
|
+
EffectContext<R3> &
|
|
976
|
+
EffectContext<R4> &
|
|
977
|
+
EffectContext<R5> &
|
|
978
|
+
EffectContext<R6> &
|
|
979
|
+
EffectContext<R7> &
|
|
980
|
+
EffectContext<R8> &
|
|
981
|
+
EffectContext<R9> &
|
|
982
|
+
EffectContext<R10> &
|
|
983
|
+
EffectContext<R11> &
|
|
984
|
+
EffectContext<R12> &
|
|
985
|
+
EffectContext<R13> &
|
|
986
|
+
EffectContext<R14> &
|
|
987
|
+
EffectContext<R15> &
|
|
988
|
+
EffectContext<R16> &
|
|
989
|
+
EffectContext<R17>
|
|
934
990
|
>;
|
|
935
991
|
|
|
936
992
|
export declare function effectPipe<
|
|
937
993
|
T0,
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
E1 = unknown,
|
|
957
|
-
E2 = unknown,
|
|
958
|
-
E3 = unknown,
|
|
959
|
-
E4 = unknown,
|
|
960
|
-
E5 = unknown,
|
|
961
|
-
E6 = unknown,
|
|
962
|
-
E7 = unknown,
|
|
963
|
-
E8 = unknown,
|
|
964
|
-
E9 = unknown,
|
|
965
|
-
E10 = unknown,
|
|
966
|
-
E11 = unknown,
|
|
967
|
-
E12 = unknown,
|
|
968
|
-
E13 = unknown,
|
|
969
|
-
E14 = unknown,
|
|
970
|
-
E15 = unknown,
|
|
971
|
-
E16 = unknown,
|
|
972
|
-
E17 = unknown,
|
|
973
|
-
E18 = unknown,
|
|
974
|
-
C1 = unknown,
|
|
975
|
-
C2 = unknown,
|
|
976
|
-
C3 = unknown,
|
|
977
|
-
C4 = unknown,
|
|
978
|
-
C5 = unknown,
|
|
979
|
-
C6 = unknown,
|
|
980
|
-
C7 = unknown,
|
|
981
|
-
C8 = unknown,
|
|
982
|
-
C9 = unknown,
|
|
983
|
-
C10 = unknown,
|
|
984
|
-
C11 = unknown,
|
|
985
|
-
C12 = unknown,
|
|
986
|
-
C13 = unknown,
|
|
987
|
-
C14 = unknown,
|
|
988
|
-
C15 = unknown,
|
|
989
|
-
C16 = unknown,
|
|
990
|
-
C17 = unknown,
|
|
991
|
-
C18 = unknown
|
|
994
|
+
R1 extends AnyEffect = never,
|
|
995
|
+
R2 extends AnyEffect = never,
|
|
996
|
+
R3 extends AnyEffect = never,
|
|
997
|
+
R4 extends AnyEffect = never,
|
|
998
|
+
R5 extends AnyEffect = never,
|
|
999
|
+
R6 extends AnyEffect = never,
|
|
1000
|
+
R7 extends AnyEffect = never,
|
|
1001
|
+
R8 extends AnyEffect = never,
|
|
1002
|
+
R9 extends AnyEffect = never,
|
|
1003
|
+
R10 extends AnyEffect = never,
|
|
1004
|
+
R11 extends AnyEffect = never,
|
|
1005
|
+
R12 extends AnyEffect = never,
|
|
1006
|
+
R13 extends AnyEffect = never,
|
|
1007
|
+
R14 extends AnyEffect = never,
|
|
1008
|
+
R15 extends AnyEffect = never,
|
|
1009
|
+
R16 extends AnyEffect = never,
|
|
1010
|
+
R17 extends AnyEffect = never,
|
|
1011
|
+
R18 extends AnyEffect = never
|
|
992
1012
|
>(
|
|
993
|
-
f1: (value: T0) =>
|
|
994
|
-
f2: (value:
|
|
995
|
-
f3: (value:
|
|
996
|
-
f4: (value:
|
|
997
|
-
f5: (value:
|
|
998
|
-
f6: (value:
|
|
999
|
-
f7: (value:
|
|
1000
|
-
f8: (value:
|
|
1001
|
-
f9: (value:
|
|
1002
|
-
f10: (value:
|
|
1003
|
-
f11: (value:
|
|
1004
|
-
f12: (value:
|
|
1005
|
-
f13: (value:
|
|
1006
|
-
f14: (value:
|
|
1007
|
-
f15: (value:
|
|
1008
|
-
f16: (value:
|
|
1009
|
-
f17: (value:
|
|
1010
|
-
f18: (value:
|
|
1013
|
+
f1: (value: T0) => R1,
|
|
1014
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
1015
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
1016
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
1017
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
1018
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
1019
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
1020
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
1021
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
1022
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
1023
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
1024
|
+
f12: (value: EffectValue<R11>) => R12,
|
|
1025
|
+
f13: (value: EffectValue<R12>) => R13,
|
|
1026
|
+
f14: (value: EffectValue<R13>) => R14,
|
|
1027
|
+
f15: (value: EffectValue<R14>) => R15,
|
|
1028
|
+
f16: (value: EffectValue<R15>) => R16,
|
|
1029
|
+
f17: (value: EffectValue<R16>) => R17,
|
|
1030
|
+
f18: (value: EffectValue<R17>) => R18
|
|
1011
1031
|
): (
|
|
1012
1032
|
start: T0
|
|
1013
1033
|
) => Effect<
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1034
|
+
EffectValue<R18>,
|
|
1035
|
+
| EffectError<R1>
|
|
1036
|
+
| EffectError<R2>
|
|
1037
|
+
| EffectError<R3>
|
|
1038
|
+
| EffectError<R4>
|
|
1039
|
+
| EffectError<R5>
|
|
1040
|
+
| EffectError<R6>
|
|
1041
|
+
| EffectError<R7>
|
|
1042
|
+
| EffectError<R8>
|
|
1043
|
+
| EffectError<R9>
|
|
1044
|
+
| EffectError<R10>
|
|
1045
|
+
| EffectError<R11>
|
|
1046
|
+
| EffectError<R12>
|
|
1047
|
+
| EffectError<R13>
|
|
1048
|
+
| EffectError<R14>
|
|
1049
|
+
| EffectError<R15>
|
|
1050
|
+
| EffectError<R16>
|
|
1051
|
+
| EffectError<R17>
|
|
1052
|
+
| EffectError<R18>,
|
|
1053
|
+
EffectContext<R1> &
|
|
1054
|
+
EffectContext<R2> &
|
|
1055
|
+
EffectContext<R3> &
|
|
1056
|
+
EffectContext<R4> &
|
|
1057
|
+
EffectContext<R5> &
|
|
1058
|
+
EffectContext<R6> &
|
|
1059
|
+
EffectContext<R7> &
|
|
1060
|
+
EffectContext<R8> &
|
|
1061
|
+
EffectContext<R9> &
|
|
1062
|
+
EffectContext<R10> &
|
|
1063
|
+
EffectContext<R11> &
|
|
1064
|
+
EffectContext<R12> &
|
|
1065
|
+
EffectContext<R13> &
|
|
1066
|
+
EffectContext<R14> &
|
|
1067
|
+
EffectContext<R15> &
|
|
1068
|
+
EffectContext<R16> &
|
|
1069
|
+
EffectContext<R17> &
|
|
1070
|
+
EffectContext<R18>
|
|
1017
1071
|
>;
|
|
1018
1072
|
|
|
1019
1073
|
export declare function effectPipe<
|
|
1020
1074
|
T0,
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
E1 = unknown,
|
|
1041
|
-
E2 = unknown,
|
|
1042
|
-
E3 = unknown,
|
|
1043
|
-
E4 = unknown,
|
|
1044
|
-
E5 = unknown,
|
|
1045
|
-
E6 = unknown,
|
|
1046
|
-
E7 = unknown,
|
|
1047
|
-
E8 = unknown,
|
|
1048
|
-
E9 = unknown,
|
|
1049
|
-
E10 = unknown,
|
|
1050
|
-
E11 = unknown,
|
|
1051
|
-
E12 = unknown,
|
|
1052
|
-
E13 = unknown,
|
|
1053
|
-
E14 = unknown,
|
|
1054
|
-
E15 = unknown,
|
|
1055
|
-
E16 = unknown,
|
|
1056
|
-
E17 = unknown,
|
|
1057
|
-
E18 = unknown,
|
|
1058
|
-
E19 = unknown,
|
|
1059
|
-
C1 = unknown,
|
|
1060
|
-
C2 = unknown,
|
|
1061
|
-
C3 = unknown,
|
|
1062
|
-
C4 = unknown,
|
|
1063
|
-
C5 = unknown,
|
|
1064
|
-
C6 = unknown,
|
|
1065
|
-
C7 = unknown,
|
|
1066
|
-
C8 = unknown,
|
|
1067
|
-
C9 = unknown,
|
|
1068
|
-
C10 = unknown,
|
|
1069
|
-
C11 = unknown,
|
|
1070
|
-
C12 = unknown,
|
|
1071
|
-
C13 = unknown,
|
|
1072
|
-
C14 = unknown,
|
|
1073
|
-
C15 = unknown,
|
|
1074
|
-
C16 = unknown,
|
|
1075
|
-
C17 = unknown,
|
|
1076
|
-
C18 = unknown,
|
|
1077
|
-
C19 = unknown
|
|
1075
|
+
R1 extends AnyEffect = never,
|
|
1076
|
+
R2 extends AnyEffect = never,
|
|
1077
|
+
R3 extends AnyEffect = never,
|
|
1078
|
+
R4 extends AnyEffect = never,
|
|
1079
|
+
R5 extends AnyEffect = never,
|
|
1080
|
+
R6 extends AnyEffect = never,
|
|
1081
|
+
R7 extends AnyEffect = never,
|
|
1082
|
+
R8 extends AnyEffect = never,
|
|
1083
|
+
R9 extends AnyEffect = never,
|
|
1084
|
+
R10 extends AnyEffect = never,
|
|
1085
|
+
R11 extends AnyEffect = never,
|
|
1086
|
+
R12 extends AnyEffect = never,
|
|
1087
|
+
R13 extends AnyEffect = never,
|
|
1088
|
+
R14 extends AnyEffect = never,
|
|
1089
|
+
R15 extends AnyEffect = never,
|
|
1090
|
+
R16 extends AnyEffect = never,
|
|
1091
|
+
R17 extends AnyEffect = never,
|
|
1092
|
+
R18 extends AnyEffect = never,
|
|
1093
|
+
R19 extends AnyEffect = never
|
|
1078
1094
|
>(
|
|
1079
|
-
f1: (value: T0) =>
|
|
1080
|
-
f2: (value:
|
|
1081
|
-
f3: (value:
|
|
1082
|
-
f4: (value:
|
|
1083
|
-
f5: (value:
|
|
1084
|
-
f6: (value:
|
|
1085
|
-
f7: (value:
|
|
1086
|
-
f8: (value:
|
|
1087
|
-
f9: (value:
|
|
1088
|
-
f10: (value:
|
|
1089
|
-
f11: (value:
|
|
1090
|
-
f12: (value:
|
|
1091
|
-
f13: (value:
|
|
1092
|
-
f14: (value:
|
|
1093
|
-
f15: (value:
|
|
1094
|
-
f16: (value:
|
|
1095
|
-
f17: (value:
|
|
1096
|
-
f18: (value:
|
|
1097
|
-
f19: (value:
|
|
1095
|
+
f1: (value: T0) => R1,
|
|
1096
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
1097
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
1098
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
1099
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
1100
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
1101
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
1102
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
1103
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
1104
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
1105
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
1106
|
+
f12: (value: EffectValue<R11>) => R12,
|
|
1107
|
+
f13: (value: EffectValue<R12>) => R13,
|
|
1108
|
+
f14: (value: EffectValue<R13>) => R14,
|
|
1109
|
+
f15: (value: EffectValue<R14>) => R15,
|
|
1110
|
+
f16: (value: EffectValue<R15>) => R16,
|
|
1111
|
+
f17: (value: EffectValue<R16>) => R17,
|
|
1112
|
+
f18: (value: EffectValue<R17>) => R18,
|
|
1113
|
+
f19: (value: EffectValue<R18>) => R19
|
|
1098
1114
|
): (
|
|
1099
1115
|
start: T0
|
|
1100
1116
|
) => Effect<
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1117
|
+
EffectValue<R19>,
|
|
1118
|
+
| EffectError<R1>
|
|
1119
|
+
| EffectError<R2>
|
|
1120
|
+
| EffectError<R3>
|
|
1121
|
+
| EffectError<R4>
|
|
1122
|
+
| EffectError<R5>
|
|
1123
|
+
| EffectError<R6>
|
|
1124
|
+
| EffectError<R7>
|
|
1125
|
+
| EffectError<R8>
|
|
1126
|
+
| EffectError<R9>
|
|
1127
|
+
| EffectError<R10>
|
|
1128
|
+
| EffectError<R11>
|
|
1129
|
+
| EffectError<R12>
|
|
1130
|
+
| EffectError<R13>
|
|
1131
|
+
| EffectError<R14>
|
|
1132
|
+
| EffectError<R15>
|
|
1133
|
+
| EffectError<R16>
|
|
1134
|
+
| EffectError<R17>
|
|
1135
|
+
| EffectError<R18>
|
|
1136
|
+
| EffectError<R19>,
|
|
1137
|
+
EffectContext<R1> &
|
|
1138
|
+
EffectContext<R2> &
|
|
1139
|
+
EffectContext<R3> &
|
|
1140
|
+
EffectContext<R4> &
|
|
1141
|
+
EffectContext<R5> &
|
|
1142
|
+
EffectContext<R6> &
|
|
1143
|
+
EffectContext<R7> &
|
|
1144
|
+
EffectContext<R8> &
|
|
1145
|
+
EffectContext<R9> &
|
|
1146
|
+
EffectContext<R10> &
|
|
1147
|
+
EffectContext<R11> &
|
|
1148
|
+
EffectContext<R12> &
|
|
1149
|
+
EffectContext<R13> &
|
|
1150
|
+
EffectContext<R14> &
|
|
1151
|
+
EffectContext<R15> &
|
|
1152
|
+
EffectContext<R16> &
|
|
1153
|
+
EffectContext<R17> &
|
|
1154
|
+
EffectContext<R18> &
|
|
1155
|
+
EffectContext<R19>
|
|
1104
1156
|
>;
|
|
1105
1157
|
|
|
1106
1158
|
export declare function effectPipe<
|
|
1107
1159
|
T0,
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
E1 = unknown,
|
|
1129
|
-
E2 = unknown,
|
|
1130
|
-
E3 = unknown,
|
|
1131
|
-
E4 = unknown,
|
|
1132
|
-
E5 = unknown,
|
|
1133
|
-
E6 = unknown,
|
|
1134
|
-
E7 = unknown,
|
|
1135
|
-
E8 = unknown,
|
|
1136
|
-
E9 = unknown,
|
|
1137
|
-
E10 = unknown,
|
|
1138
|
-
E11 = unknown,
|
|
1139
|
-
E12 = unknown,
|
|
1140
|
-
E13 = unknown,
|
|
1141
|
-
E14 = unknown,
|
|
1142
|
-
E15 = unknown,
|
|
1143
|
-
E16 = unknown,
|
|
1144
|
-
E17 = unknown,
|
|
1145
|
-
E18 = unknown,
|
|
1146
|
-
E19 = unknown,
|
|
1147
|
-
E20 = unknown,
|
|
1148
|
-
C1 = unknown,
|
|
1149
|
-
C2 = unknown,
|
|
1150
|
-
C3 = unknown,
|
|
1151
|
-
C4 = unknown,
|
|
1152
|
-
C5 = unknown,
|
|
1153
|
-
C6 = unknown,
|
|
1154
|
-
C7 = unknown,
|
|
1155
|
-
C8 = unknown,
|
|
1156
|
-
C9 = unknown,
|
|
1157
|
-
C10 = unknown,
|
|
1158
|
-
C11 = unknown,
|
|
1159
|
-
C12 = unknown,
|
|
1160
|
-
C13 = unknown,
|
|
1161
|
-
C14 = unknown,
|
|
1162
|
-
C15 = unknown,
|
|
1163
|
-
C16 = unknown,
|
|
1164
|
-
C17 = unknown,
|
|
1165
|
-
C18 = unknown,
|
|
1166
|
-
C19 = unknown,
|
|
1167
|
-
C20 = unknown
|
|
1160
|
+
R1 extends AnyEffect = never,
|
|
1161
|
+
R2 extends AnyEffect = never,
|
|
1162
|
+
R3 extends AnyEffect = never,
|
|
1163
|
+
R4 extends AnyEffect = never,
|
|
1164
|
+
R5 extends AnyEffect = never,
|
|
1165
|
+
R6 extends AnyEffect = never,
|
|
1166
|
+
R7 extends AnyEffect = never,
|
|
1167
|
+
R8 extends AnyEffect = never,
|
|
1168
|
+
R9 extends AnyEffect = never,
|
|
1169
|
+
R10 extends AnyEffect = never,
|
|
1170
|
+
R11 extends AnyEffect = never,
|
|
1171
|
+
R12 extends AnyEffect = never,
|
|
1172
|
+
R13 extends AnyEffect = never,
|
|
1173
|
+
R14 extends AnyEffect = never,
|
|
1174
|
+
R15 extends AnyEffect = never,
|
|
1175
|
+
R16 extends AnyEffect = never,
|
|
1176
|
+
R17 extends AnyEffect = never,
|
|
1177
|
+
R18 extends AnyEffect = never,
|
|
1178
|
+
R19 extends AnyEffect = never,
|
|
1179
|
+
R20 extends AnyEffect = never
|
|
1168
1180
|
>(
|
|
1169
|
-
f1: (value: T0) =>
|
|
1170
|
-
f2: (value:
|
|
1171
|
-
f3: (value:
|
|
1172
|
-
f4: (value:
|
|
1173
|
-
f5: (value:
|
|
1174
|
-
f6: (value:
|
|
1175
|
-
f7: (value:
|
|
1176
|
-
f8: (value:
|
|
1177
|
-
f9: (value:
|
|
1178
|
-
f10: (value:
|
|
1179
|
-
f11: (value:
|
|
1180
|
-
f12: (value:
|
|
1181
|
-
f13: (value:
|
|
1182
|
-
f14: (value:
|
|
1183
|
-
f15: (value:
|
|
1184
|
-
f16: (value:
|
|
1185
|
-
f17: (value:
|
|
1186
|
-
f18: (value:
|
|
1187
|
-
f19: (value:
|
|
1188
|
-
f20: (value:
|
|
1181
|
+
f1: (value: T0) => R1,
|
|
1182
|
+
f2: (value: EffectValue<R1>) => R2,
|
|
1183
|
+
f3: (value: EffectValue<R2>) => R3,
|
|
1184
|
+
f4: (value: EffectValue<R3>) => R4,
|
|
1185
|
+
f5: (value: EffectValue<R4>) => R5,
|
|
1186
|
+
f6: (value: EffectValue<R5>) => R6,
|
|
1187
|
+
f7: (value: EffectValue<R6>) => R7,
|
|
1188
|
+
f8: (value: EffectValue<R7>) => R8,
|
|
1189
|
+
f9: (value: EffectValue<R8>) => R9,
|
|
1190
|
+
f10: (value: EffectValue<R9>) => R10,
|
|
1191
|
+
f11: (value: EffectValue<R10>) => R11,
|
|
1192
|
+
f12: (value: EffectValue<R11>) => R12,
|
|
1193
|
+
f13: (value: EffectValue<R12>) => R13,
|
|
1194
|
+
f14: (value: EffectValue<R13>) => R14,
|
|
1195
|
+
f15: (value: EffectValue<R14>) => R15,
|
|
1196
|
+
f16: (value: EffectValue<R15>) => R16,
|
|
1197
|
+
f17: (value: EffectValue<R16>) => R17,
|
|
1198
|
+
f18: (value: EffectValue<R17>) => R18,
|
|
1199
|
+
f19: (value: EffectValue<R18>) => R19,
|
|
1200
|
+
f20: (value: EffectValue<R19>) => R20
|
|
1189
1201
|
): (
|
|
1190
1202
|
start: T0
|
|
1191
1203
|
) => Effect<
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1204
|
+
EffectValue<R20>,
|
|
1205
|
+
| EffectError<R1>
|
|
1206
|
+
| EffectError<R2>
|
|
1207
|
+
| EffectError<R3>
|
|
1208
|
+
| EffectError<R4>
|
|
1209
|
+
| EffectError<R5>
|
|
1210
|
+
| EffectError<R6>
|
|
1211
|
+
| EffectError<R7>
|
|
1212
|
+
| EffectError<R8>
|
|
1213
|
+
| EffectError<R9>
|
|
1214
|
+
| EffectError<R10>
|
|
1215
|
+
| EffectError<R11>
|
|
1216
|
+
| EffectError<R12>
|
|
1217
|
+
| EffectError<R13>
|
|
1218
|
+
| EffectError<R14>
|
|
1219
|
+
| EffectError<R15>
|
|
1220
|
+
| EffectError<R16>
|
|
1221
|
+
| EffectError<R17>
|
|
1222
|
+
| EffectError<R18>
|
|
1223
|
+
| EffectError<R19>
|
|
1224
|
+
| EffectError<R20>,
|
|
1225
|
+
EffectContext<R1> &
|
|
1226
|
+
EffectContext<R2> &
|
|
1227
|
+
EffectContext<R3> &
|
|
1228
|
+
EffectContext<R4> &
|
|
1229
|
+
EffectContext<R5> &
|
|
1230
|
+
EffectContext<R6> &
|
|
1231
|
+
EffectContext<R7> &
|
|
1232
|
+
EffectContext<R8> &
|
|
1233
|
+
EffectContext<R9> &
|
|
1234
|
+
EffectContext<R10> &
|
|
1235
|
+
EffectContext<R11> &
|
|
1236
|
+
EffectContext<R12> &
|
|
1237
|
+
EffectContext<R13> &
|
|
1238
|
+
EffectContext<R14> &
|
|
1239
|
+
EffectContext<R15> &
|
|
1240
|
+
EffectContext<R16> &
|
|
1241
|
+
EffectContext<R17> &
|
|
1242
|
+
EffectContext<R18> &
|
|
1243
|
+
EffectContext<R19> &
|
|
1244
|
+
EffectContext<R20>
|
|
1195
1245
|
>;
|
|
1246
|
+
// END effectPipe overloads.
|
|
1196
1247
|
|
|
1197
1248
|
/**
|
|
1198
|
-
* Wraps
|
|
1199
|
-
* runs its branches and returns its decision, even when a branch threw: the run rejects with the throw
|
|
1200
|
-
* once the hook has returned. A hook must call `op` for a `Parallel`; returning without
|
|
1201
|
-
* calling it is legitimate only for a Command, which is how replay works. Only a replay passes `op` an
|
|
1202
|
-
* argument, the recorded decision. `path` is the step's position in the Effect tree rather than its
|
|
1203
|
-
* position in completion order, so it is the same in a replay as in the recorded run even when
|
|
1204
|
-
* `Parallel` branches finish in a different order. Hooks that take three parameters are unaffected. The
|
|
1205
|
-
* interpreter always passes `path`, so it is declared as present, and a wrapper that calls another
|
|
1206
|
-
* `StepRunner` has to pass it on: a trace recorded without paths cannot replay a `Parallel`.
|
|
1249
|
+
* Wraps each Command, and each `Parallel`. Call `op` and return its result; a hook that calls another passes `path` on.
|
|
1207
1250
|
*/
|
|
1208
1251
|
export type StepRunner = (
|
|
1209
1252
|
name: string,
|
|
@@ -1212,11 +1255,7 @@ export type StepRunner = (
|
|
|
1212
1255
|
path: string
|
|
1213
1256
|
) => Promise<unknown>;
|
|
1214
1257
|
|
|
1215
|
-
/**
|
|
1216
|
-
* Which branch, if any, cancelled a `Parallel`: what a `Parallel`'s step returns and what its trace entry
|
|
1217
|
-
* records, so a replay reproduces the decision rather than recomputing it from timing. `branch: null`
|
|
1218
|
-
* means an enclosing `Parallel` cancelled it.
|
|
1219
|
-
*/
|
|
1258
|
+
/** Which branch, if any, cancelled a `Parallel`; `branch: null` means an enclosing one did. */
|
|
1220
1259
|
export type ParallelDecision = { cancelled: false } | { cancelled: true; branch: number | null };
|
|
1221
1260
|
|
|
1222
1261
|
/** `flowName` is `context.flowName`, or `''` when the context has none; the interpreter always passes it. */
|
|
@@ -1226,12 +1265,8 @@ export type RunWrapper = (
|
|
|
1226
1265
|
flowName: string
|
|
1227
1266
|
) => Promise<SuccessState<unknown> | FailureState<unknown>>;
|
|
1228
1267
|
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
* async. A union of two function types rather than one returning `Promise<void> | void`: in a JavaScript
|
|
1232
|
-
* file, a JSDoc `@type` on an async function is its declared signature, and an async function's declared
|
|
1233
|
-
* return type has to be a `Promise`, so the single signature broke every JSDoc-annotated async interceptor.
|
|
1234
|
-
*/
|
|
1268
|
+
// A union, so a JSDoc `@type` on an async function fits it too.
|
|
1269
|
+
/** Runs before each Command; throw to stop it. It need not be async. */
|
|
1235
1270
|
export type CommandInterceptor =
|
|
1236
1271
|
| ((command: CommandState<unknown, unknown>, context?: any) => Promise<void>)
|
|
1237
1272
|
| ((command: CommandState<unknown, unknown>, context?: any) => void);
|
|
@@ -1242,110 +1277,68 @@ export interface EffectConfiguration {
|
|
|
1242
1277
|
onBeforeCommand?: CommandInterceptor;
|
|
1243
1278
|
}
|
|
1244
1279
|
|
|
1245
|
-
/**
|
|
1246
|
-
* Adds a layer to the global runner's wiring and returns a function that removes it. Layers merge:
|
|
1247
|
-
* `onStep` and `onRun` nest with the earliest layer outermost, `onBeforeCommand` interceptors all run
|
|
1248
|
-
* in the order installed. Several configurations passed
|
|
1249
|
-
* to one call form one layer, which is the same as installing them in separate calls. Calling with no
|
|
1250
|
-
* arguments at all removes every layer; a call whose arguments are all `undefined` adds and removes nothing.
|
|
1251
|
-
*
|
|
1252
|
-
* A `retry` key throws a `TypeError`: retry options are per-use, passed to `Retry(effect, options)`.
|
|
1253
|
-
*/
|
|
1280
|
+
/** Adds a layer of hooks and returns a function that removes it. With no arguments, removes every layer. */
|
|
1254
1281
|
export declare function configureEffect(...configs: (EffectConfiguration | undefined)[]): () => void;
|
|
1255
1282
|
|
|
1256
|
-
/**
|
|
1257
|
-
* A per-call configuration for `runEffect`. With `inherit: true` (default) the call's hooks are added to
|
|
1258
|
-
* the wiring `configureEffect` installed: where both define a hook the two nest, global outermost. With
|
|
1259
|
-
* `inherit: false` the global wiring is ignored, so an unset hook falls back to the library default.
|
|
1260
|
-
* A `retry` key throws a `TypeError`, as it does for `configureEffect`.
|
|
1261
|
-
*/
|
|
1283
|
+
/** Hooks for one `runEffect` call, inside the installed ones; `inherit: false` leaves those out. */
|
|
1262
1284
|
export type CallConfiguration = EffectConfiguration & { inherit?: boolean };
|
|
1263
1285
|
|
|
1264
|
-
/**
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
*/
|
|
1286
|
+
/** The context a run is given: what the flow reads, and a `flowName` naming the run in traces and spans. */
|
|
1287
|
+
export type RunContext<Ctx> = unknown extends Ctx ? Ctx : Ctx extends object ? Ctx & { flowName?: string } : Ctx;
|
|
1288
|
+
|
|
1289
|
+
/** Runs a flow and returns its `Success` or `Failure`. A flow that reads a context requires one. */
|
|
1268
1290
|
export declare function runEffect<T, E = unknown, Ctx = unknown>(
|
|
1269
1291
|
effect: Effect<T, E, Ctx>,
|
|
1270
1292
|
...args: unknown extends Ctx
|
|
1271
1293
|
? [context?: Ctx, callConfig?: CallConfiguration]
|
|
1272
|
-
: [context: Ctx
|
|
1294
|
+
: [context: RunContext<Ctx>, callConfig?: CallConfiguration]
|
|
1273
1295
|
): Promise<SuccessState<T> | FailureState<E>>;
|
|
1274
1296
|
|
|
1275
1297
|
export type ReplayStep = {
|
|
1276
|
-
/**
|
|
1277
|
-
* Zero-based position in this run's completion order. Not stable for a flow containing `Parallel`,
|
|
1278
|
-
* whose branches finish in whatever order they finish in. Prefer `path`.
|
|
1279
|
-
*/
|
|
1298
|
+
/** Position in completion order, which varies with a `Parallel`; prefer `path`. */
|
|
1280
1299
|
index: number;
|
|
1281
1300
|
/** `meta.name`, `cmd.name`, or 'anonymous'; 'Parallel' for a `Parallel`'s step. */
|
|
1282
1301
|
name: string;
|
|
1283
|
-
/**
|
|
1284
|
-
* 'Command', or 'Parallel' for the step a `Parallel` records its decision under. A Resolver that
|
|
1285
|
-
* answers a 'Parallel' step with `{ result: ParallelDecision }` has it reproduced; anything else
|
|
1286
|
-
* replays that `Parallel` under timing. A 'Parallel' step does not advance `index`.
|
|
1287
|
-
*/
|
|
1302
|
+
/** `'Command'`, or `'Parallel'` for a `Parallel`'s decision. */
|
|
1288
1303
|
type: string;
|
|
1289
|
-
/**
|
|
1290
|
-
* The Command's position in the Effect tree, stable across runs: steps are numbered within a
|
|
1291
|
-
* subtree, and each `Parallel` branch and `Retry` attempt opens its own prefix. This is what a
|
|
1292
|
-
* replay matches on, and what a Resolver should key off. Every step has one; it is a recorded
|
|
1293
|
-
* `TraceEntry` that can lack a path, when it was written by hand or recorded before paths existed.
|
|
1294
|
-
*/
|
|
1304
|
+
/** The step's position in the flow, the same in every run; a Resolver should key off it. */
|
|
1295
1305
|
path: string;
|
|
1296
1306
|
};
|
|
1297
1307
|
|
|
1298
1308
|
/**
|
|
1299
|
-
* What production
|
|
1300
|
-
*
|
|
1301
|
-
* `undefined` means "not recorded", which is distinct from `{ result: undefined }`.
|
|
1309
|
+
* What production got for a step: `{ result }` or `{ error }`. A Resolver returns `undefined` for a step it has no
|
|
1310
|
+
* record of.
|
|
1302
1311
|
*/
|
|
1303
1312
|
export type ReplayOutcome = { result: unknown } | { error: unknown };
|
|
1304
1313
|
|
|
1305
1314
|
export type Resolver = (step: ReplayStep) => ReplayOutcome | undefined;
|
|
1306
1315
|
|
|
1307
|
-
/**
|
|
1308
|
-
* A recorded step: a Command's result or error, or a `Parallel`'s decision, whose `command` is
|
|
1309
|
-
* 'Parallel', whose `path` ends in the `Parallel`'s `p` marker, and whose `result` is a `ParallelDecision`.
|
|
1310
|
-
*/
|
|
1316
|
+
/** One recorded step: a Command's result or error, or a `Parallel`'s decision. */
|
|
1311
1317
|
export type TraceEntry = {
|
|
1312
1318
|
command: string;
|
|
1313
|
-
/**
|
|
1314
|
-
* The Command's position in the Effect tree. Order-independent, so a replay lines a recorded step
|
|
1315
|
-
* up with the step that asked for it even when `Parallel` branches finish out of order.
|
|
1316
|
-
*/
|
|
1319
|
+
/** The step's position in the flow, which a replay matches on. */
|
|
1317
1320
|
path?: string;
|
|
1318
1321
|
result?: unknown;
|
|
1319
|
-
/**
|
|
1320
|
-
|
|
1321
|
-
* `undefined`, as it is for `reject()` with no argument. An entry with an `error` and no `threw`, as
|
|
1322
|
-
* older traces have, still replays as a throw.
|
|
1323
|
-
*/
|
|
1324
|
-
threw?: true;
|
|
1322
|
+
/** Marks a step that threw; `false` is the same as leaving it out. */
|
|
1323
|
+
threw?: boolean;
|
|
1325
1324
|
error?: unknown;
|
|
1326
1325
|
/** How long the Command took in production, rounded to microseconds. */
|
|
1327
1326
|
durationMs?: number;
|
|
1328
1327
|
};
|
|
1329
1328
|
|
|
1330
|
-
/** The reference trace format
|
|
1331
|
-
export type TraceLog = {
|
|
1329
|
+
/** The reference trace format; for any other, write a Resolver. `I` and `C` are the input and context types. */
|
|
1330
|
+
export type TraceLog<I = unknown, C = unknown> = {
|
|
1332
1331
|
flowName?: string;
|
|
1333
1332
|
version?: string;
|
|
1334
|
-
initialInput?:
|
|
1335
|
-
context?:
|
|
1333
|
+
initialInput?: I;
|
|
1334
|
+
context?: C;
|
|
1336
1335
|
dropped?: number;
|
|
1337
1336
|
trace: TraceEntry[];
|
|
1338
1337
|
};
|
|
1339
1338
|
|
|
1340
1339
|
export interface RecorderOptions {
|
|
1341
1340
|
/**
|
|
1342
|
-
* Scrubs
|
|
1343
|
-
* `initialInput` and `context` stored on the trace itself. `kind` is `'result'`, `'error'`,
|
|
1344
|
-
* `'initialInput'`, or `'context'`; `name` is the Command's name for the first two and the kind for
|
|
1345
|
-
* the last two. This is the single place PII is kept out of a trace, which is why it sees all four.
|
|
1346
|
-
* It is handed a copy, so changing the value in place never reaches the run.
|
|
1347
|
-
* `value` is `any` rather than `unknown` because a redact nearly always spreads or reads it, as in
|
|
1348
|
-
* `{ ...value, password: '[redacted]' }`, and it can be any value a flow handles.
|
|
1341
|
+
* Scrubs each value before it enters a trace; `kind` says which. It gets a copy, so editing it in place is safe.
|
|
1349
1342
|
*/
|
|
1350
1343
|
redact?: (value: any, name: string, kind: 'result' | 'error' | 'initialInput' | 'context') => unknown;
|
|
1351
1344
|
/** Cap trace length; further steps are counted in `dropped`, not stored. */
|
|
@@ -1354,75 +1347,59 @@ export interface RecorderOptions {
|
|
|
1354
1347
|
stack?: boolean;
|
|
1355
1348
|
}
|
|
1356
1349
|
|
|
1357
|
-
|
|
1358
|
-
|
|
1350
|
+
/** The trace's own fields, as `toTrace` takes them; the returned trace keeps the input's and context's types. */
|
|
1351
|
+
export interface TraceMeta<I = unknown, C = unknown> {
|
|
1352
|
+
initialInput?: I;
|
|
1359
1353
|
flowName?: string;
|
|
1360
|
-
context?:
|
|
1354
|
+
context?: C;
|
|
1361
1355
|
/** Accepts `undefined`, so `process.env.BUILD_ID` passes under `exactOptionalPropertyTypes`. */
|
|
1362
1356
|
version?: string | undefined;
|
|
1363
1357
|
}
|
|
1364
1358
|
|
|
1359
|
+
/** An `onStep` hook that records each step, and `toTrace` to package the recording as a trace. */
|
|
1365
1360
|
export declare function recorder(options?: RecorderOptions): {
|
|
1366
1361
|
onStep: StepRunner;
|
|
1367
1362
|
entries: TraceEntry[];
|
|
1368
|
-
toTrace(meta?: TraceMeta): TraceLog
|
|
1363
|
+
toTrace<I = unknown, C = unknown>(meta?: TraceMeta<I, C>): TraceLog<I, C>;
|
|
1369
1364
|
};
|
|
1370
1365
|
|
|
1371
1366
|
/** `recordEffect`'s options: recorder options, plus the context the run gets and a build id. */
|
|
1372
|
-
export type RecordOptions<Ctx = unknown> = RecorderOptions & {
|
|
1367
|
+
export type RecordOptions<Ctx = unknown> = RecorderOptions & {
|
|
1368
|
+
context?: RunContext<Ctx>;
|
|
1369
|
+
version?: string | undefined;
|
|
1370
|
+
};
|
|
1373
1371
|
|
|
1374
|
-
/**
|
|
1375
|
-
* The input is checked against what the flow takes. A flow whose context type is not `unknown` reads
|
|
1376
|
-
* one through `Ask`, so recording it requires `options.context`.
|
|
1377
|
-
*/
|
|
1372
|
+
/** Runs a flow for real and returns its outcome with a trace, which keeps the input's type for the replay. */
|
|
1378
1373
|
export declare function recordEffect<I, T, E = unknown, Ctx = unknown>(
|
|
1379
1374
|
flowFn: (input: I) => Effect<T, E, Ctx>,
|
|
1380
1375
|
initialInput: I,
|
|
1381
|
-
...options: unknown extends Ctx
|
|
1382
|
-
|
|
1376
|
+
...options: unknown extends Ctx
|
|
1377
|
+
? [options?: RecordOptions<Ctx>]
|
|
1378
|
+
: [options: RecordOptions<Ctx> & { context: RunContext<Ctx> }]
|
|
1379
|
+
): Promise<{ result: SuccessState<T> | FailureState<E>; trace: TraceLog<I, Ctx> & { initialInput: I } }>;
|
|
1383
1380
|
|
|
1384
1381
|
export interface ReplayOptions<Ctx = unknown> {
|
|
1385
|
-
/**
|
|
1386
|
-
|
|
1387
|
-
* replay with a different one. A Resolver has no recorded context, so pass it one if the flow reads `Ask`.
|
|
1388
|
-
*/
|
|
1389
|
-
context?: Ctx;
|
|
1382
|
+
/** Context for `Ask`; defaults to the one the trace recorded. */
|
|
1383
|
+
context?: RunContext<Ctx>;
|
|
1390
1384
|
/** Strip `Retry` delays so a replay does not wait out production backoff (default `true`). */
|
|
1391
1385
|
fastRetry?: boolean;
|
|
1392
|
-
/**
|
|
1393
|
-
* Run the replay inside the global hooks, resolver innermost, so configured hooks observe it
|
|
1394
|
-
* (default `false`, which ignores the global hooks). Retry options are per-use, so a replay reads the
|
|
1395
|
-
* same ones the recorded run did.
|
|
1396
|
-
*/
|
|
1386
|
+
/** Runs the replay inside the installed hooks, so they see it. Off by default. */
|
|
1397
1387
|
hooks?: boolean;
|
|
1398
1388
|
/**
|
|
1399
|
-
*
|
|
1400
|
-
*
|
|
1401
|
-
* `'execute'` runs the real Command: recorded prefix, live tail.
|
|
1389
|
+
* `'throw'` (default) fails on a step the trace lacks. `'execute'` runs it for real: use it only against test
|
|
1390
|
+
* doubles.
|
|
1402
1391
|
*/
|
|
1403
1392
|
onMissing?: 'throw' | 'execute';
|
|
1404
1393
|
onResolved?: (step: ReplayStep, outcome: ReplayOutcome | undefined) => void;
|
|
1405
1394
|
}
|
|
1406
1395
|
|
|
1407
|
-
/**
|
|
1408
|
-
* What a replay returns: the flow's own outcome and, for a trace, the recorded entries the flow
|
|
1409
|
-
* never asked for. A flow that stops issuing Commands early mismatches nothing, so `result` can be a
|
|
1410
|
-
* `Success` with steps left over; `unreached` is where that shows. It is absent for a Resolver,
|
|
1411
|
-
* since only a trace knows what it holds.
|
|
1412
|
-
*/
|
|
1396
|
+
/** The replay's outcome and, for a trace, the recorded steps the flow never asked for. */
|
|
1413
1397
|
export interface Replay<T, E = unknown> {
|
|
1414
1398
|
result: SuccessState<T> | FailureState<E>;
|
|
1415
1399
|
unreached: TraceEntry[];
|
|
1416
1400
|
}
|
|
1417
1401
|
|
|
1418
|
-
/**
|
|
1419
|
-
* Pass a trace to replay it directly, or a Resolver when traces are stored in some other
|
|
1420
|
-
* shape. To observe a replay rather than change how it resolves, use `onResolved`.
|
|
1421
|
-
* A malformed trace rejects with a `ReplayError`.
|
|
1422
|
-
*
|
|
1423
|
-
* Three overloads: a trace yields `unreached`, a Resolver yields none, and a source only known
|
|
1424
|
-
* as the union of the two (a wrapper forwarding whatever it was handed) yields it as optional.
|
|
1425
|
-
*/
|
|
1402
|
+
/** Replays a flow from a trace, or from a Resolver for other storage, with no I/O. */
|
|
1426
1403
|
export declare function replayEffect<T, E = unknown, Ctx = unknown>(
|
|
1427
1404
|
effect: Effect<T, E, Ctx>,
|
|
1428
1405
|
trace: TraceLog | TraceEntry[],
|
|
@@ -1439,8 +1416,9 @@ export declare function replayEffect<T, E = unknown, Ctx = unknown>(
|
|
|
1439
1416
|
options?: ReplayOptions<Ctx>
|
|
1440
1417
|
): Promise<Omit<Replay<T, E>, 'unreached'> & { unreached?: TraceEntry[] }>;
|
|
1441
1418
|
|
|
1419
|
+
/** Replays a trace and logs each step with its recorded timing, warning about what will not replay as recorded. */
|
|
1442
1420
|
export declare function timeTravel<T, E = unknown, Ctx = unknown>(
|
|
1443
1421
|
flowFn: (input: any) => Effect<T, E, Ctx>,
|
|
1444
1422
|
traceLog: TraceLog,
|
|
1445
|
-
options?: { log?: (...args: any[]) => void; context?: Ctx
|
|
1423
|
+
options?: { log?: (...args: any[]) => void; context?: RunContext<Ctx>; version?: string | undefined }
|
|
1446
1424
|
): Promise<SuccessState<T> | FailureState<E>>;
|