import type { FileSystem } from '@typescript/native/unstable/fs'; import { Mutant } from '@stryker-mutator/api/core'; import { Logger } from '@stryker-mutator/api/logging'; import { PositionConverter } from './position-converter.js'; /** * A simple overlay file system for the native TypeScript compiler (TypeScript 7). * * Files are read from disk, except for files that are overridden in-memory (mutated files and the adjusted tsconfig file) * * Writes are ignored, output should never be written to disk during mutation testing */ export declare class NativeFileSystem { #private; private readonly log; get projectFiles(): ReadonlyMap; static inject: ["logger"]; constructor(log: Logger); markProjectFile(fileName: string, content?: string): Promise; getPositionConverter(fileName: string | undefined): PositionConverter | undefined; /** * The file system callbacks to provide to the native TypeScript compiler. * Returning `undefined` from `readFile` makes the compiler fall back to the real file system. */ readonly tsFileSystem: FileSystem; /** * Applies a mutant to the original (on disk) content of its file */ mutate(mutant: Pick): void; /** * Removes the in-memory override of a file, so the original (on disk) content is used again */ restore(fileName: string): void; } //# sourceMappingURL=native-file-system.d.ts.map