@step-forge/step-forge 0.0.14 → 0.0.16
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/dist/analyzer-QH03uejK.js.map +1 -1
- package/dist/step-forge.cjs +61 -18
- package/dist/step-forge.cjs.map +1 -1
- package/dist/step-forge.d.cts +265 -7
- package/dist/step-forge.d.ts +265 -7
- package/dist/step-forge.js +58 -19
- package/dist/step-forge.js.map +1 -1
- package/package.json +1 -1
package/dist/step-forge.d.cts
CHANGED
|
@@ -8,6 +8,31 @@ type EmptyDependencies = {
|
|
|
8
8
|
then: EmptyObject;
|
|
9
9
|
};
|
|
10
10
|
//#endregion
|
|
11
|
+
//#region src/parsers.d.ts
|
|
12
|
+
/**
|
|
13
|
+
* A Parser maps a Cucumber expression placeholder to a typed value.
|
|
14
|
+
*
|
|
15
|
+
* `gherkin` is the Cucumber Expression placeholder used when registering the
|
|
16
|
+
* step (e.g. `{int}`). `parse` converts the raw value Cucumber captures into
|
|
17
|
+
* the desired TypeScript type.
|
|
18
|
+
*
|
|
19
|
+
* Note: Cucumber Expressions already transform `{int}`/`{float}` captures into
|
|
20
|
+
* JS numbers before the step function runs, so `parse` receives an `unknown`
|
|
21
|
+
* and must tolerate both the pre-transformed value and a raw string.
|
|
22
|
+
*/
|
|
23
|
+
type Parser<T> = {
|
|
24
|
+
parse: (value: unknown) => T;
|
|
25
|
+
gherkin: string;
|
|
26
|
+
};
|
|
27
|
+
/** Matches a quoted string (`{string}`) and passes the unquoted contents through. */
|
|
28
|
+
declare const stringParser: Parser<string>;
|
|
29
|
+
/** Matches an unquoted integer (`{int}`). */
|
|
30
|
+
declare const intParser: Parser<number>;
|
|
31
|
+
/** Matches an unquoted floating point number (`{float}`). */
|
|
32
|
+
declare const numberParser: Parser<number>;
|
|
33
|
+
/** Matches an unquoted `true`/`false` word (`{word}`) and parses it to a boolean. */
|
|
34
|
+
declare const booleanParser: Parser<boolean>;
|
|
35
|
+
//#endregion
|
|
11
36
|
//#region src/given.d.ts
|
|
12
37
|
declare const givenBuilder: <GivenState>() => {
|
|
13
38
|
statement: <Statement extends ((...args: [...any]) => string) | string>(statement: Statement) => {
|
|
@@ -21,6 +46,7 @@ declare const givenBuilder: <GivenState>() => {
|
|
|
21
46
|
then: never;
|
|
22
47
|
}) => Partial<GivenState> | Promise<Partial<GivenState>>) => {
|
|
23
48
|
statement: Statement extends string ? () => string : Statement;
|
|
49
|
+
expression: string;
|
|
24
50
|
dependencies: {
|
|
25
51
|
given: GivenDeps;
|
|
26
52
|
} & {
|
|
@@ -36,6 +62,7 @@ declare const givenBuilder: <GivenState>() => {
|
|
|
36
62
|
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
37
63
|
register: () => {
|
|
38
64
|
stepType: "given";
|
|
65
|
+
expression: string;
|
|
39
66
|
dependencies: {
|
|
40
67
|
given: GivenDeps;
|
|
41
68
|
} & {
|
|
@@ -52,6 +79,80 @@ declare const givenBuilder: <GivenState>() => {
|
|
|
52
79
|
};
|
|
53
80
|
};
|
|
54
81
|
};
|
|
82
|
+
parsers: <Parsers extends ((Statement extends string ? [] : GetFunctionArgs<Statement>) extends infer T ? { [K in keyof T]: Parser<(Statement extends string ? [] : GetFunctionArgs<Statement>)[K]> } : never)>(parsers: Parsers) => {
|
|
83
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>>(dependencies: {
|
|
84
|
+
given: GivenDeps;
|
|
85
|
+
}) => {
|
|
86
|
+
step: (stepFunction: (input: {
|
|
87
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
88
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
89
|
+
when: never;
|
|
90
|
+
then: never;
|
|
91
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>) => {
|
|
92
|
+
statement: Statement extends string ? () => string : Statement;
|
|
93
|
+
expression: string;
|
|
94
|
+
dependencies: {
|
|
95
|
+
given: GivenDeps;
|
|
96
|
+
} & {
|
|
97
|
+
when: EmptyObject;
|
|
98
|
+
then: EmptyObject;
|
|
99
|
+
};
|
|
100
|
+
stepType: "given";
|
|
101
|
+
stepFunction: (input: {
|
|
102
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
103
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
104
|
+
when: never;
|
|
105
|
+
then: never;
|
|
106
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
107
|
+
register: () => {
|
|
108
|
+
stepType: "given";
|
|
109
|
+
expression: string;
|
|
110
|
+
dependencies: {
|
|
111
|
+
given: GivenDeps;
|
|
112
|
+
} & {
|
|
113
|
+
when: EmptyObject;
|
|
114
|
+
then: EmptyObject;
|
|
115
|
+
};
|
|
116
|
+
statement: Statement extends string ? () => string : Statement;
|
|
117
|
+
stepFunction: (input: {
|
|
118
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
119
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
120
|
+
when: never;
|
|
121
|
+
then: never;
|
|
122
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
};
|
|
126
|
+
step: (stepFunction: (input: {
|
|
127
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
128
|
+
given: never;
|
|
129
|
+
when: never;
|
|
130
|
+
then: never;
|
|
131
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>) => {
|
|
132
|
+
statement: Statement extends string ? () => string : Statement;
|
|
133
|
+
expression: string;
|
|
134
|
+
dependencies: EmptyDependencies;
|
|
135
|
+
stepType: "given";
|
|
136
|
+
stepFunction: (input: {
|
|
137
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
138
|
+
given: never;
|
|
139
|
+
when: never;
|
|
140
|
+
then: never;
|
|
141
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
142
|
+
register: () => {
|
|
143
|
+
stepType: "given";
|
|
144
|
+
expression: string;
|
|
145
|
+
dependencies: EmptyDependencies;
|
|
146
|
+
statement: Statement extends string ? () => string : Statement;
|
|
147
|
+
stepFunction: (input: {
|
|
148
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
149
|
+
given: never;
|
|
150
|
+
when: never;
|
|
151
|
+
then: never;
|
|
152
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
153
|
+
};
|
|
154
|
+
};
|
|
155
|
+
};
|
|
55
156
|
step: (stepFunction: (input: {
|
|
56
157
|
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
57
158
|
given: never;
|
|
@@ -59,6 +160,7 @@ declare const givenBuilder: <GivenState>() => {
|
|
|
59
160
|
then: never;
|
|
60
161
|
}) => Partial<GivenState> | Promise<Partial<GivenState>>) => {
|
|
61
162
|
statement: Statement extends string ? () => string : Statement;
|
|
163
|
+
expression: string;
|
|
62
164
|
dependencies: EmptyDependencies;
|
|
63
165
|
stepType: "given";
|
|
64
166
|
stepFunction: (input: {
|
|
@@ -69,6 +171,7 @@ declare const givenBuilder: <GivenState>() => {
|
|
|
69
171
|
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
70
172
|
register: () => {
|
|
71
173
|
stepType: "given";
|
|
174
|
+
expression: string;
|
|
72
175
|
dependencies: EmptyDependencies;
|
|
73
176
|
statement: Statement extends string ? () => string : Statement;
|
|
74
177
|
stepFunction: (input: {
|
|
@@ -96,6 +199,7 @@ declare const whenBuilder: <GivenState, WhenState>() => {
|
|
|
96
199
|
then: never;
|
|
97
200
|
}) => Partial<WhenState> | Promise<Partial<WhenState>>) => {
|
|
98
201
|
statement: Statement extends string ? () => string : Statement;
|
|
202
|
+
expression: string;
|
|
99
203
|
dependencies: {
|
|
100
204
|
given: GivenDeps;
|
|
101
205
|
when: WhenDeps;
|
|
@@ -110,6 +214,7 @@ declare const whenBuilder: <GivenState, WhenState>() => {
|
|
|
110
214
|
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
111
215
|
register: () => {
|
|
112
216
|
stepType: "when";
|
|
217
|
+
expression: string;
|
|
113
218
|
dependencies: {
|
|
114
219
|
given: GivenDeps;
|
|
115
220
|
when: WhenDeps;
|
|
@@ -125,6 +230,79 @@ declare const whenBuilder: <GivenState, WhenState>() => {
|
|
|
125
230
|
};
|
|
126
231
|
};
|
|
127
232
|
};
|
|
233
|
+
parsers: <Parsers extends ((Statement extends string ? [] : GetFunctionArgs<Statement>) extends infer T ? { [K in keyof T]: Parser<(Statement extends string ? [] : GetFunctionArgs<Statement>)[K]> } : never)>(parsers: Parsers) => {
|
|
234
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>, WhenDeps extends RequiredOrOptional<WhenState>>(dependencies: {
|
|
235
|
+
given?: GivenDeps | undefined;
|
|
236
|
+
when?: WhenDeps | undefined;
|
|
237
|
+
}) => {
|
|
238
|
+
step: (stepFunction: (input: {
|
|
239
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
240
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
241
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
242
|
+
then: never;
|
|
243
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>) => {
|
|
244
|
+
statement: Statement extends string ? () => string : Statement;
|
|
245
|
+
expression: string;
|
|
246
|
+
dependencies: {
|
|
247
|
+
given: GivenDeps;
|
|
248
|
+
when: WhenDeps;
|
|
249
|
+
then: EmptyObject;
|
|
250
|
+
};
|
|
251
|
+
stepType: "when";
|
|
252
|
+
stepFunction: (input: {
|
|
253
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
254
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
255
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
256
|
+
then: never;
|
|
257
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
258
|
+
register: () => {
|
|
259
|
+
stepType: "when";
|
|
260
|
+
expression: string;
|
|
261
|
+
dependencies: {
|
|
262
|
+
given: GivenDeps;
|
|
263
|
+
when: WhenDeps;
|
|
264
|
+
then: EmptyObject;
|
|
265
|
+
};
|
|
266
|
+
statement: Statement extends string ? () => string : Statement;
|
|
267
|
+
stepFunction: (input: {
|
|
268
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
269
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
270
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
271
|
+
then: never;
|
|
272
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
273
|
+
};
|
|
274
|
+
};
|
|
275
|
+
};
|
|
276
|
+
step: (stepFunction: (input: {
|
|
277
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
278
|
+
given: never;
|
|
279
|
+
when: never;
|
|
280
|
+
then: never;
|
|
281
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>) => {
|
|
282
|
+
statement: Statement extends string ? () => string : Statement;
|
|
283
|
+
expression: string;
|
|
284
|
+
dependencies: EmptyDependencies;
|
|
285
|
+
stepType: "when";
|
|
286
|
+
stepFunction: (input: {
|
|
287
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
288
|
+
given: never;
|
|
289
|
+
when: never;
|
|
290
|
+
then: never;
|
|
291
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
292
|
+
register: () => {
|
|
293
|
+
stepType: "when";
|
|
294
|
+
expression: string;
|
|
295
|
+
dependencies: EmptyDependencies;
|
|
296
|
+
statement: Statement extends string ? () => string : Statement;
|
|
297
|
+
stepFunction: (input: {
|
|
298
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
299
|
+
given: never;
|
|
300
|
+
when: never;
|
|
301
|
+
then: never;
|
|
302
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
303
|
+
};
|
|
304
|
+
};
|
|
305
|
+
};
|
|
128
306
|
step: (stepFunction: (input: {
|
|
129
307
|
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
130
308
|
given: never;
|
|
@@ -132,6 +310,7 @@ declare const whenBuilder: <GivenState, WhenState>() => {
|
|
|
132
310
|
then: never;
|
|
133
311
|
}) => Partial<WhenState> | Promise<Partial<WhenState>>) => {
|
|
134
312
|
statement: Statement extends string ? () => string : Statement;
|
|
313
|
+
expression: string;
|
|
135
314
|
dependencies: EmptyDependencies;
|
|
136
315
|
stepType: "when";
|
|
137
316
|
stepFunction: (input: {
|
|
@@ -142,6 +321,7 @@ declare const whenBuilder: <GivenState, WhenState>() => {
|
|
|
142
321
|
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
143
322
|
register: () => {
|
|
144
323
|
stepType: "when";
|
|
324
|
+
expression: string;
|
|
145
325
|
dependencies: EmptyDependencies;
|
|
146
326
|
statement: Statement extends string ? () => string : Statement;
|
|
147
327
|
stepFunction: (input: {
|
|
@@ -168,8 +348,9 @@ declare const thenBuilder: <GivenState, WhenState, ThenState>() => {
|
|
|
168
348
|
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
169
349
|
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps ? K_1 : never]: WhenDeps[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
170
350
|
then: { [K_2 in keyof ThenState as K_2 extends keyof ThenDeps ? K_2 : never]: ThenDeps[K_2] extends "optional" ? ThenState[K_2] | undefined : ThenState[K_2] };
|
|
171
|
-
}) => void | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
351
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
172
352
|
statement: Statement extends string ? () => string : Statement;
|
|
353
|
+
expression: string;
|
|
173
354
|
dependencies: {
|
|
174
355
|
given: GivenDeps;
|
|
175
356
|
when: WhenDeps;
|
|
@@ -181,9 +362,10 @@ declare const thenBuilder: <GivenState, WhenState, ThenState>() => {
|
|
|
181
362
|
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
182
363
|
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps ? K_1 : never]: WhenDeps[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
183
364
|
then: { [K_2 in keyof ThenState as K_2 extends keyof ThenDeps ? K_2 : never]: ThenDeps[K_2] extends "optional" ? ThenState[K_2] | undefined : ThenState[K_2] };
|
|
184
|
-
}) => void | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
365
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
185
366
|
register: () => {
|
|
186
367
|
stepType: "then";
|
|
368
|
+
expression: string;
|
|
187
369
|
dependencies: {
|
|
188
370
|
given: GivenDeps;
|
|
189
371
|
when: WhenDeps;
|
|
@@ -195,7 +377,81 @@ declare const thenBuilder: <GivenState, WhenState, ThenState>() => {
|
|
|
195
377
|
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
196
378
|
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps ? K_1 : never]: WhenDeps[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
197
379
|
then: { [K_2 in keyof ThenState as K_2 extends keyof ThenDeps ? K_2 : never]: ThenDeps[K_2] extends "optional" ? ThenState[K_2] | undefined : ThenState[K_2] };
|
|
198
|
-
}) => void | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
380
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
381
|
+
};
|
|
382
|
+
};
|
|
383
|
+
};
|
|
384
|
+
parsers: <Parsers extends ((Statement extends string ? [] : GetFunctionArgs<Statement>) extends infer T ? { [K in keyof T]: Parser<(Statement extends string ? [] : GetFunctionArgs<Statement>)[K]> } : never)>(parsers: Parsers) => {
|
|
385
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>, WhenDeps extends RequiredOrOptional<WhenState>, ThenDeps extends RequiredOrOptional<ThenState>>(dependencies: {
|
|
386
|
+
given?: GivenDeps | undefined;
|
|
387
|
+
when?: WhenDeps | undefined;
|
|
388
|
+
then?: ThenDeps | undefined;
|
|
389
|
+
}) => {
|
|
390
|
+
step: (stepFunction: (input: {
|
|
391
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
392
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
393
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
394
|
+
then: { [K_3 in keyof ThenState as K_3 extends keyof ThenDeps ? K_3 : never]: ThenDeps[K_3] extends "optional" ? ThenState[K_3] | undefined : ThenState[K_3] };
|
|
395
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
396
|
+
statement: Statement extends string ? () => string : Statement;
|
|
397
|
+
expression: string;
|
|
398
|
+
dependencies: {
|
|
399
|
+
given: GivenDeps;
|
|
400
|
+
when: WhenDeps;
|
|
401
|
+
then: ThenDeps;
|
|
402
|
+
};
|
|
403
|
+
stepType: "then";
|
|
404
|
+
stepFunction: (input: {
|
|
405
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
406
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
407
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
408
|
+
then: { [K_3 in keyof ThenState as K_3 extends keyof ThenDeps ? K_3 : never]: ThenDeps[K_3] extends "optional" ? ThenState[K_3] | undefined : ThenState[K_3] };
|
|
409
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
410
|
+
register: () => {
|
|
411
|
+
stepType: "then";
|
|
412
|
+
expression: string;
|
|
413
|
+
dependencies: {
|
|
414
|
+
given: GivenDeps;
|
|
415
|
+
when: WhenDeps;
|
|
416
|
+
then: ThenDeps;
|
|
417
|
+
};
|
|
418
|
+
statement: Statement extends string ? () => string : Statement;
|
|
419
|
+
stepFunction: (input: {
|
|
420
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
421
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
422
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
423
|
+
then: { [K_3 in keyof ThenState as K_3 extends keyof ThenDeps ? K_3 : never]: ThenDeps[K_3] extends "optional" ? ThenState[K_3] | undefined : ThenState[K_3] };
|
|
424
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
425
|
+
};
|
|
426
|
+
};
|
|
427
|
+
};
|
|
428
|
+
step: (stepFunction: (input: {
|
|
429
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
430
|
+
given: never;
|
|
431
|
+
when: never;
|
|
432
|
+
then: never;
|
|
433
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
434
|
+
statement: Statement extends string ? () => string : Statement;
|
|
435
|
+
expression: string;
|
|
436
|
+
dependencies: EmptyDependencies;
|
|
437
|
+
stepType: "then";
|
|
438
|
+
stepFunction: (input: {
|
|
439
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
440
|
+
given: never;
|
|
441
|
+
when: never;
|
|
442
|
+
then: never;
|
|
443
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
444
|
+
register: () => {
|
|
445
|
+
stepType: "then";
|
|
446
|
+
expression: string;
|
|
447
|
+
dependencies: EmptyDependencies;
|
|
448
|
+
statement: Statement extends string ? () => string : Statement;
|
|
449
|
+
stepFunction: (input: {
|
|
450
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
451
|
+
given: never;
|
|
452
|
+
when: never;
|
|
453
|
+
then: never;
|
|
454
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
199
455
|
};
|
|
200
456
|
};
|
|
201
457
|
};
|
|
@@ -204,8 +460,9 @@ declare const thenBuilder: <GivenState, WhenState, ThenState>() => {
|
|
|
204
460
|
given: never;
|
|
205
461
|
when: never;
|
|
206
462
|
then: never;
|
|
207
|
-
}) => void | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
463
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
208
464
|
statement: Statement extends string ? () => string : Statement;
|
|
465
|
+
expression: string;
|
|
209
466
|
dependencies: EmptyDependencies;
|
|
210
467
|
stepType: "then";
|
|
211
468
|
stepFunction: (input: {
|
|
@@ -213,9 +470,10 @@ declare const thenBuilder: <GivenState, WhenState, ThenState>() => {
|
|
|
213
470
|
given: never;
|
|
214
471
|
when: never;
|
|
215
472
|
then: never;
|
|
216
|
-
}) => void | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
473
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
217
474
|
register: () => {
|
|
218
475
|
stepType: "then";
|
|
476
|
+
expression: string;
|
|
219
477
|
dependencies: EmptyDependencies;
|
|
220
478
|
statement: Statement extends string ? () => string : Statement;
|
|
221
479
|
stepFunction: (input: {
|
|
@@ -223,7 +481,7 @@ declare const thenBuilder: <GivenState, WhenState, ThenState>() => {
|
|
|
223
481
|
given: never;
|
|
224
482
|
when: never;
|
|
225
483
|
then: never;
|
|
226
|
-
}) => void | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
484
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
227
485
|
};
|
|
228
486
|
};
|
|
229
487
|
};
|
|
@@ -322,5 +580,5 @@ declare const analyzer: {
|
|
|
322
580
|
defaultRules: AnalysisRule[];
|
|
323
581
|
};
|
|
324
582
|
//#endregion
|
|
325
|
-
export { type AnalysisRule, type AnalyzeOptions, type AnalyzerConfig, BasicWorld, type Diagnostic, type MatchedStep, type ParsedScenario, type ParsedStep, type StepDefinitionMeta, analyzer, givenBuilder, thenBuilder, whenBuilder };
|
|
583
|
+
export { type AnalysisRule, type AnalyzeOptions, type AnalyzerConfig, BasicWorld, type Diagnostic, type MatchedStep, type ParsedScenario, type ParsedStep, type Parser, type StepDefinitionMeta, analyzer, booleanParser, givenBuilder, intParser, numberParser, stringParser, thenBuilder, whenBuilder };
|
|
326
584
|
//# sourceMappingURL=step-forge.d.cts.map
|