import type { execaCommand } from 'execa'; import { Injector, commonTokens, PluginContext } from '@stryker-mutator/api/plugin'; import { StrykerOptions } from '@stryker-mutator/api/core'; import { Reporter } from '@stryker-mutator/api/report'; import { I } from '@stryker-mutator/util'; import { coreTokens, PluginCreator } from '../di/index.js'; import { Timer } from '../utils/timer.js'; import { TemporaryDirectory } from '../utils/temporary-directory.js'; import { UnexpectedExitHandler } from '../unexpected-exit-handler.js'; import { FileSystem, Project } from '../fs/index.js'; import { DryRunContext } from './3-dry-run-executor.js'; export interface MutantInstrumenterContext extends PluginContext { [commonTokens.options]: StrykerOptions; [coreTokens.project]: Project; [coreTokens.reporter]: Required; [coreTokens.timer]: I; [coreTokens.temporaryDirectory]: I; [coreTokens.execa]: typeof execaCommand; [coreTokens.process]: NodeJS.Process; [coreTokens.unexpectedExitRegistry]: I; [coreTokens.pluginModulePaths]: readonly string[]; [coreTokens.fs]: I; [coreTokens.pluginCreator]: PluginCreator; [coreTokens.loggingServerAddress]: { port: number; }; } export declare class MutantInstrumenterExecutor { private readonly injector; private readonly project; private readonly options; private readonly pluginCreator; static readonly inject: ["$injector", "project", "options", "pluginCreator"]; constructor(injector: Injector, project: Project, options: StrykerOptions, pluginCreator: PluginCreator); execute(): Promise>; private readFilesToMutate; private writeInstrumentedFiles; } //# sourceMappingURL=2-mutant-instrumenter-executor.d.ts.map