@systemfsoftware/stryker-js-plugin-interface 4.0.0 → 6.0.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/dist/index.d.mts CHANGED
@@ -1,108 +1,1212 @@
1
- import { CheckResultSchema, CheckerFailed, CheckerFailed as CheckerFailed$1, DryRunResultSchema, DryRunResultSchema as DryRunResultSchema$1, Mutant, MutantRunResultSchema, MutantRunResultSchema as MutantRunResultSchema$1, ReporterEventUnion, ReporterFailed, ReporterFailed as ReporterFailed$1, TestRunnerCapabilitiesSchema, TestRunnerCapabilitiesSchema as TestRunnerCapabilitiesSchema$1, TestRunnerFailed, TestRunnerFailed as TestRunnerFailed$1 } from "@systemfsoftware/stryker-js-language";
2
- import * as Rpc from "effect/unstable/rpc/Rpc";
3
- import * as RpcGroup from "effect/unstable/rpc/RpcGroup";
4
- import * as S from "effect/Schema";
5
- import * as Context from "effect/Context";
6
- import * as RpcMiddleware from "effect/unstable/rpc/RpcMiddleware";
7
- import * as Option from "effect/Option";
8
- import { Schema } from "effect";
9
- //#region src/Plugin.schema.d.ts
10
- export declare const WorkerPluginKind: S.Literals<readonly ["TestRunner", "Checker", "Reporter"]>;
11
- export type WorkerPluginKind = typeof WorkerPluginKind.Type;
12
- export declare const TestRunnerDryRunRequest: S.Struct<{
13
- readonly options: S.Struct<{
14
- readonly timeout: S.Finite;
15
- readonly disableBail: S.Boolean;
16
- readonly coverageAnalysis: S.Literals<readonly ["off", "all", "perTest"]>;
17
- readonly files: S.optionalKey<S.$Array<S.String>>;
18
- readonly testFiles: S.optionalKey<S.$Array<S.String>>;
19
- }>;
20
- }>;
21
- export type TestRunnerDryRunRequest = typeof TestRunnerDryRunRequest.Type;
22
- export declare const TestRunnerMutantRunRequest: S.Struct<{
23
- readonly options: S.Struct<{
24
- readonly timeout: S.Finite;
25
- readonly disableBail: S.Boolean;
26
- readonly activeMutant: typeof Mutant;
27
- readonly sandboxFileName: S.String;
28
- readonly mutantActivation: S.Literals<readonly ["runtime", "static"]>;
29
- readonly reloadEnvironment: S.Boolean;
30
- readonly testFilter: S.optionalKey<S.$Array<S.String>>;
31
- readonly hitLimit: S.optionalKey<S.Finite>;
32
- }>;
33
- }>;
34
- export type TestRunnerMutantRunRequest = typeof TestRunnerMutantRunRequest.Type;
35
- export declare const CheckerRequest: S.Struct<{
36
- readonly checkerName: S.String;
37
- readonly mutants: S.$Array<typeof Mutant>;
38
- }>;
39
- export type CheckerRequest = typeof CheckerRequest.Type;
40
- export declare const CheckerCheckResult: S.$Record<S.String, S.Union<readonly [S.Struct<{
41
- readonly status: S.Literal<"passed">;
42
- }>, S.Struct<{
43
- readonly status: S.Literal<"compileError">;
44
- readonly reason: S.String;
45
- }>]>>;
46
- export declare const CheckerGroupResult: S.$Array<S.$Array<S.String>>;
47
- export declare const ReporterInitOptions: S.Struct<{
48
- readonly traceparent: S.optionalKey<S.String>;
49
- readonly tracestate: S.optionalKey<S.String>;
50
- }>;
51
- export type ReporterInitOptions = typeof ReporterInitOptions.Type;
52
- export declare const ReporterEventBatch: S.$Array<S.Union<readonly [typeof import("@systemfsoftware/stryker-js-language").DryRunCompleted, typeof import("@systemfsoftware/stryker-js-language").MutationTestingPlanReady, typeof import("@systemfsoftware/stryker-js-language").MutantTested, typeof import("@systemfsoftware/stryker-js-language").MutationTestReportReady]>>;
53
- export type ReporterEventBatch = typeof ReporterEventBatch.Type;
54
- export declare const ReporterAck: S.Void;
55
- export declare const ReporterDrained: S.Void;
56
- declare const BoundaryPayloadRejected_base: S.Class<BoundaryPayloadRejected, S.TaggedStruct<"BoundaryPayloadRejected", {
57
- readonly pluginName: S.String;
58
- readonly method: S.String;
59
- readonly cause: S.String;
60
- }>, import("effect/Cause").YieldableError>;
61
- export declare class BoundaryPayloadRejected extends BoundaryPayloadRejected_base {}
62
- declare const BoundaryUnrecognizedSignal_base: S.Class<BoundaryUnrecognizedSignal, S.TaggedStruct<"BoundaryUnrecognizedSignal", {
63
- readonly pluginName: S.String;
64
- readonly method: S.String;
65
- readonly signal: S.String;
66
- }>, import("effect/Cause").YieldableError>;
67
- export declare class BoundaryUnrecognizedSignal extends BoundaryUnrecognizedSignal_base {}
68
- export declare const BoundaryErrorSchema: S.Union<readonly [typeof BoundaryPayloadRejected, typeof BoundaryUnrecognizedSignal, typeof TestRunnerFailed$1, typeof CheckerFailed$1, typeof ReporterFailed$1]>;
69
- type BoundaryError = typeof BoundaryErrorSchema.Type;
70
- export declare const WorkerEntryUrl: S.String;
71
- export type WorkerEntryUrl = typeof WorkerEntryUrl.Type;
72
- export declare const WorkerPluginSpawnSchema: S.Struct<{
73
- readonly kind: S.Literals<readonly ["TestRunner", "Checker", "Reporter"]>;
74
- readonly entrypoint: S.String;
75
- }>;
76
- type WorkerPluginSpawn = typeof WorkerPluginSpawnSchema.Type;
77
- //#endregion
78
- //#region src/TraceContext.schema.d.ts
79
- declare const Traceparent: S.String;
80
- type Traceparent = typeof Traceparent.Type;
81
- //#endregion
82
- //#region src/TraceContext.d.ts
83
- export declare const TRACEPARENT_HEADER = "traceparent";
84
- export declare const TRACESTATE_HEADER = "tracestate";
85
- interface TraceContextParts {
86
- readonly version: string;
87
- readonly traceId: string;
88
- readonly spanId: string;
89
- readonly traceFlags: number;
90
- readonly traceState?: string | undefined;
91
- }
92
- export declare const formatTraceparent: (parts: TraceContextParts) => Traceparent;
93
- export declare const parseTraceparent: (value: string) => Option.Option<TraceContextParts>;
94
- export declare const TraceContextReference: Context.Reference<Option.Option<TraceContextParts>>;
95
- //#endregion
96
- //#region src/TraceContextRpc.d.ts
97
- declare const PropagatedTrace_base: Context.ServiceClass<PropagatedTrace, "@systemfsoftware/stryker-js-plugin-interface/TraceContextRpc/PropagatedTrace", Option.Option<TraceContextParts>>;
98
- export declare class PropagatedTrace extends PropagatedTrace_base {}
99
- declare const TraceContextMiddleware_base: RpcMiddleware.ServiceClass<TraceContextMiddleware, "@systemfsoftware/stryker-js-plugin-interface/TraceContextMiddleware", typeof PropagatedTrace, Schema.Never, never, never, true>;
100
- export declare class TraceContextMiddleware extends TraceContextMiddleware_base {}
101
- type TracedRpc<Tag extends string, Payload extends Schema.Top = Schema.Void, Success extends Schema.Top = Schema.Void, Error extends Schema.Top = Schema.Never> = Rpc.Rpc<Tag, Payload, Success, Error, typeof TraceContextMiddleware, RpcMiddleware.ApplyServices<typeof TraceContextMiddleware['Identifier'], never>>;
102
- //#endregion
103
- //#region src/Plugin.d.ts
104
- export declare const TestRunnerRpcs: RpcGroup.RpcGroup<TracedRpc<'capabilities', Schema.Void, typeof TestRunnerCapabilitiesSchema$1, typeof TestRunnerFailed$1> | TracedRpc<'dryRun', typeof TestRunnerDryRunRequest, typeof DryRunResultSchema$1, typeof TestRunnerFailed$1> | TracedRpc<'mutantRun', typeof TestRunnerMutantRunRequest, typeof MutantRunResultSchema$1, typeof TestRunnerFailed$1>>;
105
- export declare const CheckerRpcs: RpcGroup.RpcGroup<TracedRpc<'check', typeof CheckerRequest, typeof CheckerCheckResult, typeof CheckerFailed$1> | TracedRpc<'group', typeof CheckerRequest, typeof CheckerGroupResult, typeof CheckerFailed$1>>;
106
- export declare const ReporterRpcs: RpcGroup.RpcGroup<TracedRpc<'init', typeof ReporterInitOptions, typeof ReporterAck, typeof ReporterFailed$1> | TracedRpc<'onEventBatch', typeof ReporterEventBatch, typeof ReporterAck, typeof ReporterFailed$1> | TracedRpc<'flush', Schema.Void, typeof ReporterDrained, typeof ReporterFailed$1>>;
107
- //#endregion
108
- export { type BoundaryError, CheckResultSchema, CheckerFailed, DryRunResultSchema, MutantRunResultSchema, ReporterEventUnion, ReporterFailed, TestRunnerCapabilitiesSchema, TestRunnerFailed, type TraceContextParts, type TracedRpc, type Traceparent, type WorkerPluginSpawn };
1
+ import * as Context from 'effect/Context';
2
+ import * as Effect$1 from 'effect/Effect';
3
+ import * as HashMap from 'effect/HashMap';
4
+ import { Location } from '@systemfsoftware/stryker-js-instrumenter/mutants';
5
+ import { LocationSchema } from '@systemfsoftware/stryker-js-instrumenter/mutants';
6
+ import { Mutant } from '@systemfsoftware/stryker-js-instrumenter/mutants';
7
+ import { MutantActivation } from '@systemfsoftware/stryker-js-instrumenter/mutants';
8
+ import { MutantActivationSchema } from '@systemfsoftware/stryker-js-instrumenter/mutants';
9
+ import { MutantCoverage } from '@systemfsoftware/stryker-js-instrumenter/mutants';
10
+ import { MutantRunOptions } from '@systemfsoftware/stryker-js-instrumenter/mutants';
11
+ import { MutantRunOptionsSchema } from '@systemfsoftware/stryker-js-instrumenter/mutants';
12
+ import { MutantStatus } from '@systemfsoftware/stryker-js-instrumenter/mutants';
13
+ import { MutantStatusSchema } from '@systemfsoftware/stryker-js-instrumenter/mutants';
14
+ import { OpenEndLocation } from '@systemfsoftware/stryker-js-instrumenter/mutants';
15
+ import { OpenEndLocationSchema } from '@systemfsoftware/stryker-js-instrumenter/mutants';
16
+ import * as Option from 'effect/Option';
17
+ import { Position } from '@systemfsoftware/stryker-js-instrumenter/mutants';
18
+ import { PositionSchema } from '@systemfsoftware/stryker-js-instrumenter/mutants';
19
+ import * as Rpc from 'effect/unstable/rpc/Rpc';
20
+ import * as RpcGroup from 'effect/unstable/rpc/RpcGroup';
21
+ import * as RpcMiddleware from 'effect/unstable/rpc/RpcMiddleware';
22
+ import { RunOptions } from '@systemfsoftware/stryker-js-instrumenter/mutants';
23
+ import * as S from 'effect/Schema';
24
+ import { Schema } from 'effect';
25
+ import { StandardSchemaV1 } from 'effect/StandardSchema';
26
+ import { YieldableError } from 'effect/Cause';
27
+
28
+ export declare interface BaseTestResult {
29
+ readonly id: string;
30
+ readonly name: string;
31
+ readonly timeSpentMs: number;
32
+ readonly fileName?: string;
33
+ readonly startPosition?: Position;
34
+ }
35
+
36
+ export declare type BoundaryError = typeof BoundaryErrorSchema.Type;
37
+
38
+ export declare const BoundaryErrorSchema: S.Union<readonly [typeof BoundaryPayloadRejected, typeof BoundaryUnrecognizedSignal, typeof TestRunnerFailed, typeof CheckerFailed, typeof ReporterFailed]>;
39
+
40
+ export declare class BoundaryPayloadRejected extends BoundaryPayloadRejected_base {}
41
+
42
+ declare const BoundaryPayloadRejected_base: S.Class<BoundaryPayloadRejected, S.TaggedStruct<"BoundaryPayloadRejected", {
43
+ readonly pluginName: S.String;
44
+ readonly method: S.String;
45
+ readonly cause: S.String;
46
+ }>, YieldableError>;
47
+
48
+ export declare class BoundaryUnrecognizedSignal extends BoundaryUnrecognizedSignal_base {}
49
+
50
+ declare const BoundaryUnrecognizedSignal_base: S.Class<BoundaryUnrecognizedSignal, S.TaggedStruct<"BoundaryUnrecognizedSignal", {
51
+ readonly pluginName: S.String;
52
+ readonly method: S.String;
53
+ readonly signal: S.String;
54
+ }>, YieldableError>;
55
+
56
+ export declare type BrandingInformation = typeof BrandingInformationSchema.Type;
57
+
58
+ export declare const BrandingInformationSchema: S.Struct<{
59
+ readonly homepageUrl: S.String;
60
+ readonly imageUrl: S.optional<S.String>;
61
+ }>;
62
+
63
+ export declare class Checker extends Checker_base {}
64
+
65
+ declare const Checker_base: Context.ServiceClass<Checker, "@systemfsoftware/stryker-js-plugin-interface/Checker", CheckerService>;
66
+
67
+ export declare const CheckerCheckResult: S.$Record<S.String, S.Union<readonly [S.Struct<{
68
+ readonly status: S.Literal<"passed">;
69
+ }>, S.Struct<{
70
+ readonly status: S.Literal<"compileError">;
71
+ readonly reason: S.String;
72
+ }>]>>;
73
+
74
+ export declare type CheckerCustomConfig = typeof CheckerCustomConfigSchema.Type;
75
+
76
+ export declare const CheckerCustomConfigSchema: S.Struct<{
77
+ readonly plugin: S.String;
78
+ readonly nodeArgs: S.optional<S.$Array<S.String>>;
79
+ readonly options: S.optional<S.$Record<S.String, S.Unknown>>;
80
+ }>;
81
+
82
+ export declare type CheckerEntryConfig = typeof CheckerEntryConfigSchema.Type;
83
+
84
+ export declare const CheckerEntryConfigSchema: S.Struct<{
85
+ readonly plugin: S.String;
86
+ readonly nodeArgs: S.optional<S.$Array<S.String>>;
87
+ readonly options: S.optional<S.$Record<S.String, S.Unknown>>;
88
+ }>;
89
+
90
+ export declare class CheckerFailed extends CheckerFailed_base {}
91
+
92
+ declare const CheckerFailed_base: S.Class<CheckerFailed, S.TaggedStruct<"CheckerFailed", {
93
+ readonly cause: S.String;
94
+ readonly checkerName: S.String;
95
+ readonly mutantIds: S.$Array<S.String>;
96
+ }>, YieldableError>;
97
+
98
+ export declare const CheckerGroupResult: S.$Array<S.$Array<S.String>>;
99
+
100
+ export declare const CheckerRequest: S.Struct<{
101
+ readonly checkerName: S.String;
102
+ readonly mutants: S.$Array<typeof Mutant>;
103
+ }>;
104
+
105
+ export declare type CheckerRequest = typeof CheckerRequest.Type;
106
+
107
+ export declare const CheckerRpcs: RpcGroup.RpcGroup<TracedRpc<'check', typeof CheckerRequest, typeof CheckerCheckResult, typeof CheckerFailed> | TracedRpc<'group', typeof CheckerRequest, typeof CheckerGroupResult, typeof CheckerFailed>>;
108
+
109
+ export declare interface CheckerService {
110
+ readonly init: Effect$1.Effect<void, CheckerFailed>;
111
+ readonly check: (mutants: readonly Mutant[]) => Effect$1.Effect<HashMap.HashMap<string, CheckResult>, CheckerFailed>;
112
+ readonly group: (mutants: readonly Mutant[]) => Effect$1.Effect<readonly (readonly string[])[], CheckerFailed>;
113
+ }
114
+
115
+ export declare type CheckResult = FailedCheckResult | PassedCheckResult;
116
+
117
+ export declare const CheckResultSchema: S.Union<readonly [S.Struct<{
118
+ readonly status: S.Literal<"passed">;
119
+ }>, S.Struct<{
120
+ readonly status: S.Literal<"compileError">;
121
+ readonly reason: S.String;
122
+ }>]>;
123
+
124
+ export declare const CheckStatus: S.Literals<readonly ["passed", "compileError"]>;
125
+
126
+ export declare type CheckStatus = typeof CheckStatus.Type;
127
+
128
+ export declare type CommandRunnerOptions = S.Schema.Type<typeof CommandRunnerOptionsSchema>;
129
+
130
+ export declare const CommandRunnerOptionsSchema: S.StructWithRest<S.Struct<{
131
+ readonly command: S.withDecodingDefaultKey<S.String, never>;
132
+ }>, readonly [S.$Record<S.String, S.Unknown>]>;
133
+
134
+ export declare interface CompleteDryRunResult {
135
+ readonly tests: readonly TestResult[];
136
+ readonly mutantCoverage?: MutantCoverage;
137
+ readonly status: 'complete';
138
+ }
139
+
140
+ export declare type CoverageAnalysis = 'off' | 'all' | 'perTest';
141
+
142
+ declare const CoverageAnalysisMode: S.Literals<readonly ["off", "all", "perTest"]>;
143
+
144
+ declare type CoverageAnalysisMode = typeof CoverageAnalysisMode.Type;
145
+ export { CoverageAnalysisMode }
146
+ export { CoverageAnalysisMode as CoverageAnalysisModeType }
147
+
148
+ export declare const CoverageAnalysisSchema: S.Literals<readonly ["off", "all", "perTest"]>;
149
+
150
+ /**
151
+ * Every option optional, all the way down, and mutable: this is the type a
152
+ * caller CONSTRUCTS by assignment, so `readonly` is stripped. The decoded
153
+ * `StrykerOptions` keeps it - that side is read, never built.
154
+ */
155
+ export declare type DeepOptional<T> = { -readonly [P in keyof T]?: T[P] extends Record<string, unknown> ? DeepOptional<T[P]> | undefined : T[P]; };
156
+
157
+ export declare type Dependencies = typeof DependenciesSchema.Type;
158
+
159
+ export declare const DependenciesSchema: S.$Record<S.String, S.String>;
160
+
161
+ export declare class DryRunCompleted extends DryRunCompleted_base {}
162
+
163
+ declare const DryRunCompleted_base: S.Class<DryRunCompleted, S.TaggedStruct<"dryRunCompleted", {
164
+ readonly timing: S.Struct<{
165
+ readonly net: S.Finite;
166
+ readonly overhead: S.Finite;
167
+ }>;
168
+ readonly capabilities: S.Struct<{
169
+ readonly reloadEnvironment: S.Boolean;
170
+ }>;
171
+ readonly testCount: S.Finite;
172
+ readonly tests: S.$Array<S.Union<readonly [S.Struct<{
173
+ readonly id: S.String;
174
+ readonly name: S.String;
175
+ readonly timeSpentMs: S.Finite;
176
+ readonly fileName: S.optionalKey<S.String>;
177
+ readonly startPosition: S.optionalKey<S.Struct<{
178
+ readonly line: S.Finite;
179
+ readonly column: S.Finite;
180
+ }>>;
181
+ readonly status: S.Literal<"failed">;
182
+ readonly failureMessage: S.String;
183
+ }>, S.Struct<{
184
+ readonly id: S.String;
185
+ readonly name: S.String;
186
+ readonly timeSpentMs: S.Finite;
187
+ readonly fileName: S.optionalKey<S.String>;
188
+ readonly startPosition: S.optionalKey<S.Struct<{
189
+ readonly line: S.Finite;
190
+ readonly column: S.Finite;
191
+ }>>;
192
+ readonly status: S.Literal<"skipped">;
193
+ }>, S.Struct<{
194
+ readonly id: S.String;
195
+ readonly name: S.String;
196
+ readonly timeSpentMs: S.Finite;
197
+ readonly fileName: S.optionalKey<S.String>;
198
+ readonly startPosition: S.optionalKey<S.Struct<{
199
+ readonly line: S.Finite;
200
+ readonly column: S.Finite;
201
+ }>>;
202
+ readonly status: S.Literal<"success">;
203
+ }>]>>;
204
+ }>, {}>;
205
+
206
+ export declare interface DryRunOptions extends RunOptions {
207
+ readonly coverageAnalysis: CoverageAnalysis;
208
+ readonly files?: readonly string[];
209
+ readonly testFiles?: readonly string[];
210
+ }
211
+
212
+ export declare const DryRunOptionsSchema: S.Struct<{
213
+ readonly timeout: S.Finite;
214
+ readonly disableBail: S.Boolean;
215
+ readonly coverageAnalysis: S.Literals<readonly ["off", "all", "perTest"]>;
216
+ readonly files: S.optionalKey<S.$Array<S.String>>;
217
+ readonly testFiles: S.optionalKey<S.$Array<S.String>>;
218
+ }>;
219
+
220
+ export declare type DryRunResult = CompleteDryRunResult | ErrorDryRunResult | TimeoutDryRunResult;
221
+
222
+ export declare const DryRunResultSchema: S.Union<readonly [S.Struct<{
223
+ readonly status: S.Literal<"complete">;
224
+ readonly tests: S.$Array<S.Union<readonly [S.Struct<{
225
+ readonly id: S.String;
226
+ readonly name: S.String;
227
+ readonly timeSpentMs: S.Finite;
228
+ readonly fileName: S.optionalKey<S.String>;
229
+ readonly startPosition: S.optionalKey<S.Struct<{
230
+ readonly line: S.Finite;
231
+ readonly column: S.Finite;
232
+ }>>;
233
+ readonly status: S.Literal<"failed">;
234
+ readonly failureMessage: S.String;
235
+ }>, S.Struct<{
236
+ readonly id: S.String;
237
+ readonly name: S.String;
238
+ readonly timeSpentMs: S.Finite;
239
+ readonly fileName: S.optionalKey<S.String>;
240
+ readonly startPosition: S.optionalKey<S.Struct<{
241
+ readonly line: S.Finite;
242
+ readonly column: S.Finite;
243
+ }>>;
244
+ readonly status: S.Literal<"skipped">;
245
+ }>, S.Struct<{
246
+ readonly id: S.String;
247
+ readonly name: S.String;
248
+ readonly timeSpentMs: S.Finite;
249
+ readonly fileName: S.optionalKey<S.String>;
250
+ readonly startPosition: S.optionalKey<S.Struct<{
251
+ readonly line: S.Finite;
252
+ readonly column: S.Finite;
253
+ }>>;
254
+ readonly status: S.Literal<"success">;
255
+ }>]>>;
256
+ readonly mutantCoverage: S.optionalKey<S.Struct<{
257
+ readonly perTest: S.$Record<S.String, S.$Record<S.String, S.Finite>>;
258
+ readonly static: S.$Record<S.String, S.Finite>;
259
+ }>>;
260
+ }>, S.Struct<{
261
+ readonly status: S.Literal<"timeout">;
262
+ readonly reason: S.optionalKey<S.String>;
263
+ }>, S.Struct<{
264
+ readonly status: S.Literal<"error">;
265
+ readonly errorMessage: S.String;
266
+ }>]>;
267
+
268
+ export declare const DryRunStatus: S.Literals<readonly ["complete", "error", "timeout"]>;
269
+
270
+ export declare type DryRunStatus = typeof DryRunStatus.Type;
271
+
272
+ export declare interface ErrorDryRunResult {
273
+ readonly status: 'error';
274
+ readonly errorMessage: string;
275
+ }
276
+
277
+ export declare interface ErrorMutantRunResult {
278
+ readonly status: 'error';
279
+ readonly errorMessage: string;
280
+ }
281
+
282
+ export declare class Evaluator extends Evaluator_base {}
283
+
284
+ declare const Evaluator_base: Context.ServiceClass<Evaluator, "@systemfsoftware/stryker-js-plugin-interface/Evaluator", EvaluatorService>;
285
+
286
+ export declare class EvaluatorFailed extends EvaluatorFailed_base {}
287
+
288
+ declare const EvaluatorFailed_base: S.Class<EvaluatorFailed, S.TaggedStruct<"EvaluatorFailed", {
289
+ readonly cause: S.Unknown;
290
+ }>, YieldableError>;
291
+
292
+ export declare interface EvaluatorService {
293
+ readonly evaluate: (report: MutationTestResult) => Effect$1.Effect<ExitClass | null, EvaluatorFailed>;
294
+ }
295
+
296
+ export declare const EXIT_CODE: Record<ExitClass, number>;
297
+
298
+ export declare const ExitClass: S.Literals<readonly ["VerdictFail", "ConfigError", "RuntimeError", "InternalError"]>;
299
+
300
+ export declare type ExitClass = typeof ExitClass.Type;
301
+
302
+ export declare interface FailedCheckResult {
303
+ readonly reason: string;
304
+ readonly status: 'compileError';
305
+ }
306
+
307
+ export declare interface FailedTestResult extends BaseTestResult {
308
+ readonly status: 'failed';
309
+ readonly failureMessage: string;
310
+ }
311
+
312
+ export declare type FileResult = typeof FileResultSchema.Type;
313
+
314
+ export declare type FileResultDictionary = typeof FileResultDictionarySchema.Type;
315
+
316
+ export declare const FileResultDictionarySchema: S.$Record<S.String, S.Struct<{
317
+ readonly language: S.String;
318
+ readonly source: S.String;
319
+ readonly mutants: S.$Array<S.Struct<{
320
+ readonly id: S.String;
321
+ readonly mutatorName: S.String;
322
+ readonly status: S.Literals<readonly ["Killed", "Survived", "NoCoverage", "CompileError", "RuntimeError", "Timeout", "Ignored", "Pending"]>;
323
+ readonly location: S.Struct<{
324
+ readonly start: S.Struct<{
325
+ readonly line: S.Finite;
326
+ readonly column: S.Finite;
327
+ }>;
328
+ readonly end: S.Struct<{
329
+ readonly line: S.Finite;
330
+ readonly column: S.Finite;
331
+ }>;
332
+ }>;
333
+ readonly replacement: S.optional<S.String>;
334
+ readonly description: S.optional<S.String>;
335
+ readonly statusReason: S.optional<S.String>;
336
+ readonly static: S.optional<S.Boolean>;
337
+ readonly coveredBy: S.optional<S.$Array<S.String>>;
338
+ readonly killedBy: S.optional<S.$Array<S.String>>;
339
+ readonly testsCompleted: S.optional<S.Finite>;
340
+ readonly duration: S.optional<S.Finite>;
341
+ }>>;
342
+ }>>;
343
+
344
+ export declare const FileResultSchema: S.Struct<{
345
+ readonly language: S.String;
346
+ readonly source: S.String;
347
+ readonly mutants: S.$Array<S.Struct<{
348
+ readonly id: S.String;
349
+ readonly mutatorName: S.String;
350
+ readonly status: S.Literals<readonly ["Killed", "Survived", "NoCoverage", "CompileError", "RuntimeError", "Timeout", "Ignored", "Pending"]>;
351
+ readonly location: S.Struct<{
352
+ readonly start: S.Struct<{
353
+ readonly line: S.Finite;
354
+ readonly column: S.Finite;
355
+ }>;
356
+ readonly end: S.Struct<{
357
+ readonly line: S.Finite;
358
+ readonly column: S.Finite;
359
+ }>;
360
+ }>;
361
+ readonly replacement: S.optional<S.String>;
362
+ readonly description: S.optional<S.String>;
363
+ readonly statusReason: S.optional<S.String>;
364
+ readonly static: S.optional<S.Boolean>;
365
+ readonly coveredBy: S.optional<S.$Array<S.String>>;
366
+ readonly killedBy: S.optional<S.$Array<S.String>>;
367
+ readonly testsCompleted: S.optional<S.Finite>;
368
+ readonly duration: S.optional<S.Finite>;
369
+ }>>;
370
+ }>;
371
+
372
+ export declare const formatTraceparent: (parts: TraceContextParts) => Traceparent;
373
+
374
+ export declare type FrameworkInformation = typeof FrameworkInformationSchema.Type;
375
+
376
+ export declare const FrameworkInformationSchema: S.Struct<{
377
+ readonly name: S.String;
378
+ readonly version: S.optional<S.String>;
379
+ readonly branding: S.optional<S.Struct<{
380
+ readonly homepageUrl: S.String;
381
+ readonly imageUrl: S.optional<S.String>;
382
+ }>>;
383
+ readonly dependencies: S.optional<S.$Record<S.String, S.String>>;
384
+ }>;
385
+
386
+ export declare const isCustomTestRunner: (value: TestRunnerConfig) => value is TestRunnerCustomConfig;
387
+
388
+ export declare interface KilledMutantRunResult {
389
+ readonly status: 'killed';
390
+ readonly killedBy: readonly string[];
391
+ readonly failureMessage: string;
392
+ readonly nrOfTests: number;
393
+ }
394
+
395
+ /**
396
+ * Known keys filters out the index signature from the keys of a type
397
+ * @see https://stackoverflow.com/questions/51465182/typescript-remove-index-signature-using-mapped-types
398
+ */
399
+ export declare type KnownKeys<T> = keyof { [P in keyof T as string extends P ? never : number extends P ? never : P]: T[P]; };
400
+
401
+ export { Location }
402
+
403
+ export { LocationSchema }
404
+
405
+ declare const LogLevel: S.Literals<readonly ["off", "fatal", "error", "warn", "info", "debug", "trace"]>;
406
+
407
+ /** The generated module exported these as TypeScript types; consumers still name them that way. */
408
+ declare type LogLevel = typeof LogLevel.Type;
409
+ export { LogLevel }
410
+ export { LogLevel as LogLevelType }
411
+
412
+ export declare type Metrics = typeof MetricsSchema.Type;
413
+
414
+ export declare interface MetricsResult {
415
+ readonly name: string;
416
+ readonly metrics: Metrics;
417
+ readonly childResults: readonly MetricsResult[];
418
+ }
419
+
420
+ export declare const MetricsResultSchema: S.Struct<{
421
+ readonly name: S.String;
422
+ readonly metrics: S.Struct<{
423
+ readonly pending: S.Finite;
424
+ readonly killed: S.Finite;
425
+ readonly timeout: S.Finite;
426
+ readonly survived: S.Finite;
427
+ readonly noCoverage: S.Finite;
428
+ readonly runtimeErrors: S.Finite;
429
+ readonly compileErrors: S.Finite;
430
+ readonly ignored: S.Finite;
431
+ readonly totalDetected: S.Finite;
432
+ readonly totalUndetected: S.Finite;
433
+ readonly totalInvalid: S.Finite;
434
+ readonly totalValid: S.Finite;
435
+ readonly totalMutants: S.Finite;
436
+ readonly totalCovered: S.Finite;
437
+ readonly mutationScore: S.Finite;
438
+ readonly mutationScoreBasedOnCoveredCode: S.Finite;
439
+ }>;
440
+ readonly childResults: S.$Array<S.suspend<S.Codec<MetricsResult, MetricsResult, never, never>>>;
441
+ }>;
442
+
443
+ export declare const MetricsSchema: S.Struct<{
444
+ readonly pending: S.Finite;
445
+ readonly killed: S.Finite;
446
+ readonly timeout: S.Finite;
447
+ readonly survived: S.Finite;
448
+ readonly noCoverage: S.Finite;
449
+ readonly runtimeErrors: S.Finite;
450
+ readonly compileErrors: S.Finite;
451
+ readonly ignored: S.Finite;
452
+ readonly totalDetected: S.Finite;
453
+ readonly totalUndetected: S.Finite;
454
+ readonly totalInvalid: S.Finite;
455
+ readonly totalValid: S.Finite;
456
+ readonly totalMutants: S.Finite;
457
+ readonly totalCovered: S.Finite;
458
+ readonly mutationScore: S.Finite;
459
+ readonly mutationScoreBasedOnCoveredCode: S.Finite;
460
+ }>;
461
+
462
+ export { MutantActivation }
463
+
464
+ export { MutantActivationSchema }
465
+
466
+ export { MutantCoverage }
467
+
468
+ export declare const MutantCoverageSchema: S.Struct<{
469
+ readonly perTest: S.$Record<S.String, S.$Record<S.String, S.Finite>>;
470
+ readonly static: S.$Record<S.String, S.Finite>;
471
+ }>;
472
+
473
+ export declare type MutantResult = typeof MutantResultSchema.Type;
474
+
475
+ export declare const MutantResultSchema: S.Struct<{
476
+ readonly id: S.String;
477
+ readonly mutatorName: S.String;
478
+ readonly status: S.Literals<readonly ["Killed", "Survived", "NoCoverage", "CompileError", "RuntimeError", "Timeout", "Ignored", "Pending"]>;
479
+ readonly location: S.Struct<{
480
+ readonly start: S.Struct<{
481
+ readonly line: S.Finite;
482
+ readonly column: S.Finite;
483
+ }>;
484
+ readonly end: S.Struct<{
485
+ readonly line: S.Finite;
486
+ readonly column: S.Finite;
487
+ }>;
488
+ }>;
489
+ readonly replacement: S.optional<S.String>;
490
+ readonly description: S.optional<S.String>;
491
+ readonly statusReason: S.optional<S.String>;
492
+ readonly static: S.optional<S.Boolean>;
493
+ readonly coveredBy: S.optional<S.$Array<S.String>>;
494
+ readonly killedBy: S.optional<S.$Array<S.String>>;
495
+ readonly testsCompleted: S.optional<S.Finite>;
496
+ readonly duration: S.optional<S.Finite>;
497
+ }>;
498
+
499
+ export { MutantRunOptions }
500
+
501
+ export { MutantRunOptionsSchema }
502
+
503
+ export declare type MutantRunResult = ErrorMutantRunResult | KilledMutantRunResult | SurvivedMutantRunResult | TimeoutMutantRunResult;
504
+
505
+ export declare const MutantRunResultSchema: S.Union<readonly [S.Struct<{
506
+ readonly status: S.Literal<"killed">;
507
+ readonly killedBy: S.$Array<S.String>;
508
+ readonly failureMessage: S.String;
509
+ readonly nrOfTests: S.Finite;
510
+ }>, S.Struct<{
511
+ readonly status: S.Literal<"survived">;
512
+ readonly nrOfTests: S.Finite;
513
+ }>, S.Struct<{
514
+ readonly status: S.Literal<"timeout">;
515
+ readonly reason: S.optionalKey<S.String>;
516
+ }>, S.Struct<{
517
+ readonly status: S.Literal<"error">;
518
+ readonly errorMessage: S.String;
519
+ }>]>;
520
+
521
+ export declare const MutantRunStatus: S.Literals<readonly ["killed", "survived", "timeout", "error"]>;
522
+
523
+ export declare type MutantRunStatus = typeof MutantRunStatus.Type;
524
+
525
+ export { MutantStatus }
526
+
527
+ export { MutantStatusSchema }
528
+
529
+ export declare class MutantTested extends MutantTested_base {}
530
+
531
+ declare const MutantTested_base: S.Class<MutantTested, S.TaggedStruct<"mutantTested", {
532
+ readonly id: S.String;
533
+ readonly status: S.Literals<readonly ["Killed", "Survived", "NoCoverage", "CompileError", "RuntimeError", "Timeout", "Ignored", "Pending"]>;
534
+ readonly file: S.String;
535
+ readonly location: S.Struct<{
536
+ readonly start: S.Struct<{
537
+ readonly line: S.Finite;
538
+ readonly column: S.Finite;
539
+ }>;
540
+ readonly end: S.Struct<{
541
+ readonly line: S.Finite;
542
+ readonly column: S.Finite;
543
+ }>;
544
+ }>;
545
+ readonly mutator: S.String;
546
+ readonly replacement: S.NullOr<S.String>;
547
+ readonly completed: S.Finite;
548
+ readonly total: S.Finite;
549
+ }>, {}>;
550
+
551
+ export declare type MutationScoreThresholds = typeof MutationScoreThresholdsSchema.Type;
552
+
553
+ export declare const MutationScoreThresholdsSchema: S.Struct<{
554
+ readonly high: S.withDecodingDefaultKey<S.Finite, never>;
555
+ readonly low: S.withDecodingDefaultKey<S.Finite, never>;
556
+ readonly break: S.withDecodingDefaultKey<S.NullOr<S.Finite>, never>;
557
+ }>;
558
+
559
+ export declare class MutationTestingPlanReady extends MutationTestingPlanReady_base {}
560
+
561
+ declare const MutationTestingPlanReady_base: S.Class<MutationTestingPlanReady, S.TaggedStruct<"mutationTestingPlanReady", {
562
+ readonly total: S.Finite;
563
+ readonly plans: S.$Array<S.Struct<{
564
+ readonly mutantId: S.String;
565
+ readonly plan: S.Literals<readonly ["EarlyResult", "Run"]>;
566
+ readonly netTime: S.Finite;
567
+ readonly reloadEnvironment: S.Boolean;
568
+ }>>;
569
+ }>, {}>;
570
+
571
+ export declare class MutationTestReportReady extends MutationTestReportReady_base {}
572
+
573
+ declare const MutationTestReportReady_base: S.Class<MutationTestReportReady, S.TaggedStruct<"mutationTestReportReady", {
574
+ readonly report: S.Struct<{
575
+ readonly schemaVersion: S.String;
576
+ readonly files: S.$Record<S.String, S.Struct<{
577
+ readonly language: S.String;
578
+ readonly source: S.String;
579
+ readonly mutants: S.$Array<S.Struct<{
580
+ readonly id: S.String;
581
+ readonly mutatorName: S.String;
582
+ readonly status: S.Literals<readonly ["Killed", "Survived", "NoCoverage", "CompileError", "RuntimeError", "Timeout", "Ignored", "Pending"]>;
583
+ readonly location: S.Struct<{
584
+ readonly start: S.Struct<{
585
+ readonly line: S.Finite;
586
+ readonly column: S.Finite;
587
+ }>;
588
+ readonly end: S.Struct<{
589
+ readonly line: S.Finite;
590
+ readonly column: S.Finite;
591
+ }>;
592
+ }>;
593
+ readonly replacement: S.optional<S.String>;
594
+ readonly description: S.optional<S.String>;
595
+ readonly statusReason: S.optional<S.String>;
596
+ readonly static: S.optional<S.Boolean>;
597
+ readonly coveredBy: S.optional<S.$Array<S.String>>;
598
+ readonly killedBy: S.optional<S.$Array<S.String>>;
599
+ readonly testsCompleted: S.optional<S.Finite>;
600
+ readonly duration: S.optional<S.Finite>;
601
+ }>>;
602
+ }>>;
603
+ readonly thresholds: S.Struct<{
604
+ readonly high: S.Finite;
605
+ readonly low: S.Finite;
606
+ }>;
607
+ readonly config: S.optional<S.$Record<S.String, S.Unknown>>;
608
+ readonly testFiles: S.optional<S.$Record<S.String, S.Struct<{
609
+ readonly source: S.optional<S.String>;
610
+ readonly tests: S.$Array<S.Struct<{
611
+ readonly id: S.String;
612
+ readonly name: S.String;
613
+ readonly location: S.optional<S.Struct<{
614
+ readonly start: S.Struct<{
615
+ readonly line: S.Finite;
616
+ readonly column: S.Finite;
617
+ }>;
618
+ readonly end: S.optional<S.Struct<{
619
+ readonly line: S.Finite;
620
+ readonly column: S.Finite;
621
+ }>>;
622
+ }>>;
623
+ }>>;
624
+ }>>>;
625
+ readonly projectRoot: S.optional<S.String>;
626
+ readonly framework: S.optional<S.Struct<{
627
+ readonly name: S.String;
628
+ readonly version: S.optional<S.String>;
629
+ readonly branding: S.optional<S.Struct<{
630
+ readonly homepageUrl: S.String;
631
+ readonly imageUrl: S.optional<S.String>;
632
+ }>>;
633
+ readonly dependencies: S.optional<S.$Record<S.String, S.String>>;
634
+ }>>;
635
+ }>;
636
+ readonly metrics: S.Struct<{
637
+ readonly name: S.String;
638
+ readonly metrics: S.Struct<{
639
+ readonly pending: S.Finite;
640
+ readonly killed: S.Finite;
641
+ readonly timeout: S.Finite;
642
+ readonly survived: S.Finite;
643
+ readonly noCoverage: S.Finite;
644
+ readonly runtimeErrors: S.Finite;
645
+ readonly compileErrors: S.Finite;
646
+ readonly ignored: S.Finite;
647
+ readonly totalDetected: S.Finite;
648
+ readonly totalUndetected: S.Finite;
649
+ readonly totalInvalid: S.Finite;
650
+ readonly totalValid: S.Finite;
651
+ readonly totalMutants: S.Finite;
652
+ readonly totalCovered: S.Finite;
653
+ readonly mutationScore: S.Finite;
654
+ readonly mutationScoreBasedOnCoveredCode: S.Finite;
655
+ }>;
656
+ readonly childResults: S.$Array<S.suspend<S.Codec<MetricsResult, MetricsResult, never, never>>>;
657
+ }>;
658
+ }>, {}>;
659
+
660
+ export declare type MutationTestResult = typeof MutationTestResultSchema.Type;
661
+
662
+ export declare const MutationTestResultSchema: S.Struct<{
663
+ readonly schemaVersion: S.String;
664
+ readonly files: S.$Record<S.String, S.Struct<{
665
+ readonly language: S.String;
666
+ readonly source: S.String;
667
+ readonly mutants: S.$Array<S.Struct<{
668
+ readonly id: S.String;
669
+ readonly mutatorName: S.String;
670
+ readonly status: S.Literals<readonly ["Killed", "Survived", "NoCoverage", "CompileError", "RuntimeError", "Timeout", "Ignored", "Pending"]>;
671
+ readonly location: S.Struct<{
672
+ readonly start: S.Struct<{
673
+ readonly line: S.Finite;
674
+ readonly column: S.Finite;
675
+ }>;
676
+ readonly end: S.Struct<{
677
+ readonly line: S.Finite;
678
+ readonly column: S.Finite;
679
+ }>;
680
+ }>;
681
+ readonly replacement: S.optional<S.String>;
682
+ readonly description: S.optional<S.String>;
683
+ readonly statusReason: S.optional<S.String>;
684
+ readonly static: S.optional<S.Boolean>;
685
+ readonly coveredBy: S.optional<S.$Array<S.String>>;
686
+ readonly killedBy: S.optional<S.$Array<S.String>>;
687
+ readonly testsCompleted: S.optional<S.Finite>;
688
+ readonly duration: S.optional<S.Finite>;
689
+ }>>;
690
+ }>>;
691
+ readonly thresholds: S.Struct<{
692
+ readonly high: S.Finite;
693
+ readonly low: S.Finite;
694
+ }>;
695
+ readonly config: S.optional<S.$Record<S.String, S.Unknown>>;
696
+ readonly testFiles: S.optional<S.$Record<S.String, S.Struct<{
697
+ readonly source: S.optional<S.String>;
698
+ readonly tests: S.$Array<S.Struct<{
699
+ readonly id: S.String;
700
+ readonly name: S.String;
701
+ readonly location: S.optional<S.Struct<{
702
+ readonly start: S.Struct<{
703
+ readonly line: S.Finite;
704
+ readonly column: S.Finite;
705
+ }>;
706
+ readonly end: S.optional<S.Struct<{
707
+ readonly line: S.Finite;
708
+ readonly column: S.Finite;
709
+ }>>;
710
+ }>>;
711
+ }>>;
712
+ }>>>;
713
+ readonly projectRoot: S.optional<S.String>;
714
+ readonly framework: S.optional<S.Struct<{
715
+ readonly name: S.String;
716
+ readonly version: S.optional<S.String>;
717
+ readonly branding: S.optional<S.Struct<{
718
+ readonly homepageUrl: S.String;
719
+ readonly imageUrl: S.optional<S.String>;
720
+ }>>;
721
+ readonly dependencies: S.optional<S.$Record<S.String, S.String>>;
722
+ }>>;
723
+ }>;
724
+
725
+ export declare type OnlyObject<T> = Exclude<T, Primitive>;
726
+
727
+ export { OpenEndLocation }
728
+
729
+ export { OpenEndLocationSchema }
730
+
731
+ declare const PackageManager: S.Literals<readonly ["npm", "yarn", "pnpm"]>;
732
+
733
+ declare type PackageManager = typeof PackageManager.Type;
734
+ export { PackageManager }
735
+ export { PackageManager as PackageManagerType }
736
+
737
+ export declare const parseTraceparent: (value: string) => Option.Option<TraceContextParts>;
738
+
739
+ /**
740
+ * The deep-partial input type: when configuring Stryker, every option is
741
+ * optional, including deep properties like `dashboard.project`.
742
+ */
743
+ export declare type PartialStrykerOptions = DeepOptional<StrykerOptions>;
744
+
745
+ export declare interface PassedCheckResult {
746
+ readonly status: 'passed';
747
+ }
748
+
749
+ export declare const PluginFileUrl: S.String;
750
+
751
+ export { Position }
752
+
753
+ export { PositionSchema }
754
+
755
+ export declare type Primitive = boolean | number | string | null | undefined;
756
+
757
+ export declare class PropagatedTrace extends PropagatedTrace_base {}
758
+
759
+ declare const PropagatedTrace_base: Context.ServiceClass<PropagatedTrace, "@systemfsoftware/stryker-js-plugin-interface/TraceContextRpc/PropagatedTrace", Option.Option<TraceContextParts>>;
760
+
761
+ /**
762
+ * Given a base type, allows type safe access to the name of a property.
763
+ * @param prop - The property name
764
+ */
765
+ export declare function propertyPath<T>(): PropertyPathOverloads<T>;
766
+
767
+ export declare interface PropertyPathOverloads<T> {
768
+ (key: KnownKeys<T>): string;
769
+ <TProp1 extends KnownKeys<T>>(key: TProp1, key2: KnownKeys<OnlyObject<T[TProp1]>>): string;
770
+ <TProp1 extends KnownKeys<T>, TProp2 extends KnownKeys<OnlyObject<T[TProp1]>>>(key: TProp1, key2: TProp2, key3: KnownKeys<OnlyObject<OnlyObject<T[TProp1]>[TProp2]>>): string;
771
+ }
772
+
773
+ /**
774
+ * The four option defaults a human reads about in help text.
775
+ *
776
+ * `Schema.schema.ts` declares every default, and a CLI that wants to
777
+ * name one in a `--help` description must read it from here rather than type
778
+ * the literal a second time: a restated default drifts the moment the schema
779
+ * moves, and no gate compares a help string against a schema annotation.
780
+ *
781
+ * Only these four are here because only these four are rendered. A default
782
+ * nobody prints has one declaration site already, which is the schema.
783
+ */
784
+ export declare const RENDERED_OPTION_DEFAULTS: {
785
+ readonly coverageAnalysis: 'perTest';
786
+ readonly fileLogLevel: 'off';
787
+ readonly logLevel: 'info';
788
+ readonly tempDirName: '.stryker-tmp';
789
+ };
790
+
791
+ export declare const ReporterAck: S.Void;
792
+
793
+ export declare const ReporterDrained: S.Void;
794
+
795
+ export declare type ReporterEvent = DryRunCompleted | MutationTestingPlanReady | MutantTested | MutationTestReportReady;
796
+
797
+ export declare const ReporterEventBatch: S.$Array<S.Union<readonly [typeof DryRunCompleted, typeof MutationTestingPlanReady, typeof MutantTested, typeof MutationTestReportReady]>>;
798
+
799
+ export declare type ReporterEventBatch = typeof ReporterEventBatch.Type;
800
+
801
+ export declare const ReporterEventKind: S.Literals<readonly ["dryRunCompleted", "mutationTestingPlanReady", "mutantTested", "mutationTestReportReady"]>;
802
+
803
+ export declare type ReporterEventKind = typeof ReporterEventKind.Type;
804
+
805
+ export declare const ReporterEventSchema: StandardSchemaV1<unknown, ReporterEvent>;
806
+
807
+ export declare const ReporterEventUnion: S.Union<readonly [typeof DryRunCompleted, typeof MutationTestingPlanReady, typeof MutantTested, typeof MutationTestReportReady]>;
808
+
809
+ export declare type ReporterFactory = (options: StrykerOptions, init: ReporterInit) => (events: AsyncIterable<ReporterEvent>) => Effect$1.Effect<void, ReporterFailed>;
810
+
811
+ export declare class ReporterFailed extends ReporterFailed_base {}
812
+
813
+ declare const ReporterFailed_base: S.Class<ReporterFailed, S.TaggedStruct<"ReporterFailed", {
814
+ readonly cause: S.String;
815
+ readonly event: S.Literals<readonly ["dryRunCompleted", "mutationTestingPlanReady", "mutantTested", "mutationTestReportReady"]>;
816
+ readonly reporterName: S.String;
817
+ }>, YieldableError>;
818
+
819
+ export declare interface ReporterInit {
820
+ readonly traceparent?: string | undefined;
821
+ readonly tracestate?: string | undefined;
822
+ }
823
+
824
+ export declare const ReporterInitOptions: S.Struct<{
825
+ readonly traceparent: S.optionalKey<S.String>;
826
+ readonly tracestate: S.optionalKey<S.String>;
827
+ }>;
828
+
829
+ export declare type ReporterInitOptions = typeof ReporterInitOptions.Type;
830
+
831
+ export declare type ReporterPlanDescriptor = typeof ReporterPlanDescriptorSchema.Type;
832
+
833
+ export declare const ReporterPlanDescriptorSchema: S.Struct<{
834
+ readonly mutantId: S.String;
835
+ readonly plan: S.Literals<readonly ["EarlyResult", "Run"]>;
836
+ readonly netTime: S.Finite;
837
+ readonly reloadEnvironment: S.Boolean;
838
+ }>;
839
+
840
+ export declare const ReporterPlanKind: S.Literals<readonly ["EarlyResult", "Run"]>;
841
+
842
+ export declare const ReporterRpcs: RpcGroup.RpcGroup<TracedRpc<'init', typeof ReporterInitOptions, typeof ReporterAck, typeof ReporterFailed> | TracedRpc<'onEventBatch', typeof ReporterEventBatch, typeof ReporterAck, typeof ReporterFailed> | TracedRpc<'flush', Schema.Void, typeof ReporterDrained, typeof ReporterFailed>>;
843
+
844
+ declare const ReportType: S.Literals<readonly ["full", "mutationScore"]>;
845
+
846
+ declare type ReportType = typeof ReportType.Type;
847
+ export { ReportType }
848
+ export { ReportType as ReportTypeType }
849
+
850
+ export { RunOptions }
851
+
852
+ export declare type RunTiming = typeof RunTimingSchema.Type;
853
+
854
+ export declare const RunTimingSchema: S.Struct<{
855
+ readonly net: S.Finite;
856
+ readonly overhead: S.Finite;
857
+ }>;
858
+
859
+ export declare interface SkippedTestResult extends BaseTestResult {
860
+ readonly status: 'skipped';
861
+ }
862
+
863
+ /**
864
+ * The JSON Schema document derived from `StrykerOptionsSchema`, self-contained.
865
+ *
866
+ * It lives beside the schema module rather than inside it because it is a *use*
867
+ * of that schema, not a declaration of one: `S.toJsonSchemaDocument` consumes a
868
+ * schema and returns a plain document. Keeping uses out of a `*.schema.ts` is
869
+ * what lets a tool read every exported schema in a package and trust that each
870
+ * one is a schema - the generated law suite does exactly that, and a document
871
+ * handed to `toEncoded` takes the whole suite down with it.
872
+ */
873
+ export declare const strykerCoreSchema: Record<string, unknown>;
874
+
875
+ /** The decoded type: every defaulted option is present. */
876
+ export declare type StrykerOptions = S.Schema.Type<typeof StrykerOptionsSchema>;
877
+
878
+ export declare const StrykerOptionsSchema: S.StructWithRest<S.Struct<{
879
+ readonly allowConsoleColors: S.withDecodingDefaultKey<S.Boolean, never>;
880
+ readonly buildCommand: S.optional<S.String>;
881
+ readonly checkers: S.withDecodingDefaultKey<S.$Array<S.Struct<{
882
+ readonly plugin: S.String;
883
+ readonly nodeArgs: S.optional<S.$Array<S.String>>;
884
+ readonly options: S.optional<S.$Record<S.String, S.Unknown>>;
885
+ }>>, never>;
886
+ readonly checkerNodeArgs: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
887
+ readonly concurrency: S.optional<S.Union<readonly [S.Finite, S.String]>>;
888
+ readonly commandRunner: S.withDecodingDefaultKey<S.StructWithRest<S.Struct<{
889
+ readonly command: S.withDecodingDefaultKey<S.String, never>;
890
+ }>, readonly [S.$Record<S.String, S.Unknown>]>, never>;
891
+ readonly coverageAnalysis: S.withDecodingDefaultKey<S.Literals<readonly ["off", "all", "perTest"]>, never>;
892
+ readonly clearTextReporter: S.withDecodingDefaultKey<S.StructWithRest<S.Struct<{
893
+ readonly allowColor: S.withDecodingDefaultKey<S.Boolean, never>;
894
+ readonly allowEmojis: S.withDecodingDefaultKey<S.Boolean, never>;
895
+ readonly logTests: S.withDecodingDefaultKey<S.Boolean, never>;
896
+ readonly maxTestsToLog: S.withDecodingDefaultKey<S.Finite, never>;
897
+ readonly reportTests: S.withDecodingDefaultKey<S.Boolean, never>;
898
+ readonly reportMutants: S.withDecodingDefaultKey<S.Boolean, never>;
899
+ readonly reportScoreTable: S.withDecodingDefaultKey<S.Boolean, never>;
900
+ readonly skipFull: S.withDecodingDefaultKey<S.Boolean, never>;
901
+ }>, readonly [S.$Record<S.String, S.Unknown>]>, never>;
902
+ readonly dryRunOnly: S.withDecodingDefaultKey<S.Boolean, never>;
903
+ readonly ignorePatterns: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
904
+ readonly ignoreStatic: S.withDecodingDefaultKey<S.Boolean, never>;
905
+ readonly incremental: S.withDecodingDefaultKey<S.Boolean, never>;
906
+ readonly incrementalFile: S.withDecodingDefaultKey<S.String, never>;
907
+ readonly progressStreamFile: S.withDecodingDefaultKey<S.String, never>;
908
+ readonly force: S.withDecodingDefaultKey<S.Boolean, never>;
909
+ readonly fileLogLevel: S.withDecodingDefaultKey<S.Literals<readonly ["off", "fatal", "error", "warn", "info", "debug", "trace"]>, never>;
910
+ readonly inPlace: S.withDecodingDefaultKey<S.Boolean, never>;
911
+ readonly logLevel: S.withDecodingDefaultKey<S.Literals<readonly ["off", "fatal", "error", "warn", "info", "debug", "trace"]>, never>;
912
+ readonly maxConcurrentTestRunners: S.withDecodingDefaultKey<S.Finite, never>;
913
+ readonly maxTestRunnerReuse: S.withDecodingDefaultKey<S.Finite, never>;
914
+ readonly mutate: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
915
+ readonly mutator: S.withDecodingDefaultKey<S.Struct<{
916
+ readonly excludedMutations: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
917
+ }>, never>;
918
+ readonly packageManager: S.optional<S.Literals<readonly ["npm", "yarn", "pnpm"]>>;
919
+ readonly plugins: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
920
+ readonly appendPlugins: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
921
+ readonly reporters: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
922
+ readonly htmlReporter: S.withDecodingDefaultKey<S.Struct<{
923
+ readonly fileName: S.withDecodingDefaultKey<S.String, never>;
924
+ }>, never>;
925
+ readonly jsonReporter: S.withDecodingDefaultKey<S.Struct<{
926
+ readonly fileName: S.withDecodingDefaultKey<S.String, never>;
927
+ }>, never>;
928
+ readonly disableTypeChecks: S.withDecodingDefaultKey<S.Union<readonly [S.Boolean, S.String]>, never>;
929
+ readonly symlinkNodeModules: S.withDecodingDefaultKey<S.Boolean, never>;
930
+ readonly tempDirName: S.withDecodingDefaultKey<S.String, never>;
931
+ readonly cleanTempDir: S.withDecodingDefaultKey<S.Literals<readonly ["always", false, true]>, never>;
932
+ readonly testRunner: S.withDecodingDefaultKey<S.Union<readonly [S.String, S.Struct<{
933
+ readonly plugin: S.String;
934
+ readonly nodeArgs: S.optional<S.$Array<S.String>>;
935
+ readonly options: S.optional<S.$Record<S.String, S.Unknown>>;
936
+ }>]>, never>;
937
+ readonly testRunnerNodeArgs: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
938
+ readonly thresholds: S.withDecodingDefaultKey<S.Struct<{
939
+ readonly high: S.withDecodingDefaultKey<S.Finite, never>;
940
+ readonly low: S.withDecodingDefaultKey<S.Finite, never>;
941
+ readonly break: S.withDecodingDefaultKey<S.NullOr<S.Finite>, never>;
942
+ }>, never>;
943
+ readonly timeoutFactor: S.withDecodingDefaultKey<S.Finite, never>;
944
+ readonly timeoutMS: S.withDecodingDefaultKey<S.Finite, never>;
945
+ readonly dryRunTimeoutMinutes: S.withDecodingDefaultKey<S.Finite, never>;
946
+ readonly tsconfigFile: S.withDecodingDefaultKey<S.String, never>;
947
+ readonly warnings: S.withDecodingDefaultKey<S.Union<readonly [S.Boolean, S.StructWithRest<S.Struct<{
948
+ readonly unknownOptions: S.withDecodingDefaultKey<S.Boolean, never>;
949
+ readonly preprocessorErrors: S.withDecodingDefaultKey<S.Boolean, never>;
950
+ readonly unserializableOptions: S.withDecodingDefaultKey<S.Boolean, never>;
951
+ readonly slow: S.withDecodingDefaultKey<S.Boolean, never>;
952
+ }>, readonly [S.$Record<S.String, S.Unknown>]>]>, never>;
953
+ readonly disableBail: S.withDecodingDefaultKey<S.Boolean, never>;
954
+ readonly allowEmpty: S.withDecodingDefaultKey<S.Boolean, never>;
955
+ readonly ignorers: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
956
+ readonly testFiles: S.withDecodingDefaultKey<S.$Array<S.String>, never>;
957
+ }>, readonly [S.$Record<S.String, S.Unknown>]>;
958
+
959
+ /**
960
+ * Creates a URL to the page where a consumer can report a bug against this
961
+ * project.
962
+ *
963
+ * The tracker is ours. The ported original addressed the upstream StrykerJS
964
+ * repository, along with its label and issue-template parameters, so every bug
965
+ * a consumer filed from a Stryker run arrived at a project that does not own
966
+ * this code (`REPO-O1`) and prefilled a template that does not exist here.
967
+ *
968
+ * @param titleSuggestion - The title to be prefilled in.
969
+ */
970
+ export declare function strykerReportBugUrl(titleSuggestion: string): string;
971
+
972
+ export declare interface SuccessTestResult extends BaseTestResult {
973
+ readonly status: 'success';
974
+ }
975
+
976
+ export declare interface SurvivedMutantRunResult {
977
+ readonly status: 'survived';
978
+ readonly nrOfTests: number;
979
+ }
980
+
981
+ export declare type TestDefinition = typeof TestDefinitionSchema.Type;
982
+
983
+ export declare const TestDefinitionSchema: S.Struct<{
984
+ readonly id: S.String;
985
+ readonly name: S.String;
986
+ readonly location: S.optional<S.Struct<{
987
+ readonly start: S.Struct<{
988
+ readonly line: S.Finite;
989
+ readonly column: S.Finite;
990
+ }>;
991
+ readonly end: S.optional<S.Struct<{
992
+ readonly line: S.Finite;
993
+ readonly column: S.Finite;
994
+ }>>;
995
+ }>>;
996
+ }>;
997
+
998
+ export declare type TestFile = typeof TestFileSchema.Type;
999
+
1000
+ export declare type TestFileDefinitionDictionary = typeof TestFileDefinitionDictionarySchema.Type;
1001
+
1002
+ export declare const TestFileDefinitionDictionarySchema: S.$Record<S.String, S.Struct<{
1003
+ readonly source: S.optional<S.String>;
1004
+ readonly tests: S.$Array<S.Struct<{
1005
+ readonly id: S.String;
1006
+ readonly name: S.String;
1007
+ readonly location: S.optional<S.Struct<{
1008
+ readonly start: S.Struct<{
1009
+ readonly line: S.Finite;
1010
+ readonly column: S.Finite;
1011
+ }>;
1012
+ readonly end: S.optional<S.Struct<{
1013
+ readonly line: S.Finite;
1014
+ readonly column: S.Finite;
1015
+ }>>;
1016
+ }>>;
1017
+ }>>;
1018
+ }>>;
1019
+
1020
+ export declare const TestFileSchema: S.Struct<{
1021
+ readonly source: S.optional<S.String>;
1022
+ readonly tests: S.$Array<S.Struct<{
1023
+ readonly id: S.String;
1024
+ readonly name: S.String;
1025
+ readonly location: S.optional<S.Struct<{
1026
+ readonly start: S.Struct<{
1027
+ readonly line: S.Finite;
1028
+ readonly column: S.Finite;
1029
+ }>;
1030
+ readonly end: S.optional<S.Struct<{
1031
+ readonly line: S.Finite;
1032
+ readonly column: S.Finite;
1033
+ }>>;
1034
+ }>>;
1035
+ }>>;
1036
+ }>;
1037
+
1038
+ export declare function testFilesProvided(options: {
1039
+ readonly testFiles?: readonly string[];
1040
+ }): boolean;
1041
+
1042
+ export declare type TestResult = FailedTestResult | SkippedTestResult | SuccessTestResult;
1043
+
1044
+ export declare const TestResultSchema: S.Union<readonly [S.Struct<{
1045
+ readonly id: S.String;
1046
+ readonly name: S.String;
1047
+ readonly timeSpentMs: S.Finite;
1048
+ readonly fileName: S.optionalKey<S.String>;
1049
+ readonly startPosition: S.optionalKey<S.Struct<{
1050
+ readonly line: S.Finite;
1051
+ readonly column: S.Finite;
1052
+ }>>;
1053
+ readonly status: S.Literal<"failed">;
1054
+ readonly failureMessage: S.String;
1055
+ }>, S.Struct<{
1056
+ readonly id: S.String;
1057
+ readonly name: S.String;
1058
+ readonly timeSpentMs: S.Finite;
1059
+ readonly fileName: S.optionalKey<S.String>;
1060
+ readonly startPosition: S.optionalKey<S.Struct<{
1061
+ readonly line: S.Finite;
1062
+ readonly column: S.Finite;
1063
+ }>>;
1064
+ readonly status: S.Literal<"skipped">;
1065
+ }>, S.Struct<{
1066
+ readonly id: S.String;
1067
+ readonly name: S.String;
1068
+ readonly timeSpentMs: S.Finite;
1069
+ readonly fileName: S.optionalKey<S.String>;
1070
+ readonly startPosition: S.optionalKey<S.Struct<{
1071
+ readonly line: S.Finite;
1072
+ readonly column: S.Finite;
1073
+ }>>;
1074
+ readonly status: S.Literal<"success">;
1075
+ }>]>;
1076
+
1077
+ export declare class TestRunner extends TestRunner_base {}
1078
+
1079
+ declare const TestRunner_base: Context.ServiceClass<TestRunner, "@systemfsoftware/stryker-js-plugin-interface/TestRunner", TestRunnerService>;
1080
+
1081
+ export declare interface TestRunnerCapabilities {
1082
+ readonly reloadEnvironment: boolean;
1083
+ }
1084
+
1085
+ export declare const TestRunnerCapabilitiesSchema: S.Struct<{
1086
+ readonly reloadEnvironment: S.Boolean;
1087
+ }>;
1088
+
1089
+ export declare type TestRunnerConfig = typeof TestRunnerConfigSchema.Type;
1090
+
1091
+ export declare const TestRunnerConfigSchema: S.Union<readonly [S.String, S.Struct<{
1092
+ readonly plugin: S.String;
1093
+ readonly nodeArgs: S.optional<S.$Array<S.String>>;
1094
+ readonly options: S.optional<S.$Record<S.String, S.Unknown>>;
1095
+ }>]>;
1096
+
1097
+ export declare type TestRunnerCustomConfig = typeof TestRunnerCustomConfigSchema.Type;
1098
+
1099
+ export declare const TestRunnerCustomConfigSchema: S.Struct<{
1100
+ readonly plugin: S.String;
1101
+ readonly nodeArgs: S.optional<S.$Array<S.String>>;
1102
+ readonly options: S.optional<S.$Record<S.String, S.Unknown>>;
1103
+ }>;
1104
+
1105
+ export declare const TestRunnerDryRunRequest: S.Struct<{
1106
+ readonly options: S.Struct<{
1107
+ readonly timeout: S.Finite;
1108
+ readonly disableBail: S.Boolean;
1109
+ readonly coverageAnalysis: S.Literals<readonly ["off", "all", "perTest"]>;
1110
+ readonly files: S.optionalKey<S.$Array<S.String>>;
1111
+ readonly testFiles: S.optionalKey<S.$Array<S.String>>;
1112
+ }>;
1113
+ }>;
1114
+
1115
+ export declare type TestRunnerDryRunRequest = typeof TestRunnerDryRunRequest.Type;
1116
+
1117
+ export declare class TestRunnerFailed extends TestRunnerFailed_base {}
1118
+
1119
+ declare const TestRunnerFailed_base: S.Class<TestRunnerFailed, S.TaggedStruct<"TestRunnerFailed", {
1120
+ readonly cause: S.String;
1121
+ readonly phase: S.Literals<readonly ["capabilities", "dispose", "dryRun", "init", "mutantRun"]>;
1122
+ readonly runnerName: S.String;
1123
+ }>, YieldableError>;
1124
+
1125
+ export declare const TestRunnerMutantRunRequest: S.Struct<{
1126
+ readonly options: S.Struct<{
1127
+ readonly timeout: S.Finite;
1128
+ readonly disableBail: S.Boolean;
1129
+ readonly activeMutant: typeof Mutant;
1130
+ readonly sandboxFileName: S.String;
1131
+ readonly mutantActivation: S.Literals<readonly ["runtime", "static"]>;
1132
+ readonly reloadEnvironment: S.Boolean;
1133
+ readonly testFilter: S.optionalKey<S.$Array<S.String>>;
1134
+ readonly hitLimit: S.optionalKey<S.Finite>;
1135
+ }>;
1136
+ }>;
1137
+
1138
+ export declare type TestRunnerMutantRunRequest = typeof TestRunnerMutantRunRequest.Type;
1139
+
1140
+ export declare const TestRunnerRpcs: RpcGroup.RpcGroup<TracedRpc<'capabilities', Schema.Void, typeof TestRunnerCapabilitiesSchema, typeof TestRunnerFailed> | TracedRpc<'dryRun', typeof TestRunnerDryRunRequest, typeof DryRunResultSchema, typeof TestRunnerFailed> | TracedRpc<'mutantRun', typeof TestRunnerMutantRunRequest, typeof MutantRunResultSchema, typeof TestRunnerFailed>>;
1141
+
1142
+ export declare interface TestRunnerService {
1143
+ readonly capabilities: Effect$1.Effect<TestRunnerCapabilities, TestRunnerFailed>;
1144
+ readonly init: Effect$1.Effect<void, TestRunnerFailed>;
1145
+ readonly dryRun: (options: DryRunOptions) => Effect$1.Effect<DryRunResult, TestRunnerFailed>;
1146
+ readonly mutantRun: (options: MutantRunOptions) => Effect$1.Effect<MutantRunResult, TestRunnerFailed>;
1147
+ readonly dispose: Effect$1.Effect<void, TestRunnerFailed>;
1148
+ }
1149
+
1150
+ export declare const TestStatus: S.Literals<readonly ["success", "failed", "skipped"]>;
1151
+
1152
+ export declare type TestStatus = typeof TestStatus.Type;
1153
+
1154
+ export declare type Thresholds = typeof ThresholdsSchema.Type;
1155
+
1156
+ export declare const ThresholdsSchema: S.Struct<{
1157
+ readonly high: S.Finite;
1158
+ readonly low: S.Finite;
1159
+ }>;
1160
+
1161
+ export declare interface TimeoutDryRunResult {
1162
+ readonly status: 'timeout';
1163
+ readonly reason?: string;
1164
+ }
1165
+
1166
+ export declare interface TimeoutMutantRunResult {
1167
+ readonly status: 'timeout';
1168
+ readonly reason?: string;
1169
+ }
1170
+
1171
+ export declare function toMutantRunResult(dryRunResult: DryRunResult, reportAllKillers: boolean): MutantRunResult;
1172
+
1173
+ export declare class TraceContextMiddleware extends TraceContextMiddleware_base {}
1174
+
1175
+ declare const TraceContextMiddleware_base: RpcMiddleware.ServiceClass<TraceContextMiddleware, "@systemfsoftware/stryker-js-plugin-interface/TraceContextMiddleware", typeof PropagatedTrace, Schema.Never, never, never, true>;
1176
+
1177
+ export declare interface TraceContextParts {
1178
+ readonly version: string;
1179
+ readonly traceId: string;
1180
+ readonly spanId: string;
1181
+ readonly traceFlags: number;
1182
+ readonly traceState?: string | undefined;
1183
+ }
1184
+
1185
+ export declare const TraceContextReference: Context.Reference<Option.Option<TraceContextParts>>;
1186
+
1187
+ export declare type TracedRpc<Tag extends string, Payload extends Schema.Top = Schema.Void, Success extends Schema.Top = Schema.Void, Error extends Schema.Top = Schema.Never> = Rpc.Rpc<Tag, Payload, Success, Error, typeof TraceContextMiddleware, RpcMiddleware.ApplyServices<typeof TraceContextMiddleware['Identifier'], never>>;
1188
+
1189
+ export declare const Traceparent: S.String;
1190
+
1191
+ export declare type Traceparent = typeof Traceparent.Type;
1192
+
1193
+ export declare const TRACEPARENT_HEADER = "traceparent";
1194
+
1195
+ export declare const TRACESTATE_HEADER = "tracestate";
1196
+
1197
+ export declare const WorkerEntryUrl: S.String;
1198
+
1199
+ export declare type WorkerEntryUrl = typeof WorkerEntryUrl.Type;
1200
+
1201
+ export declare const WorkerPluginKind: S.Literals<readonly ["TestRunner", "Checker", "Reporter"]>;
1202
+
1203
+ export declare type WorkerPluginKind = typeof WorkerPluginKind.Type;
1204
+
1205
+ export declare type WorkerPluginSpawn = typeof WorkerPluginSpawnSchema.Type;
1206
+
1207
+ export declare const WorkerPluginSpawnSchema: S.Struct<{
1208
+ readonly kind: S.Literals<readonly ["TestRunner", "Checker", "Reporter"]>;
1209
+ readonly entrypoint: S.String;
1210
+ }>;
1211
+
1212
+ export { }