import * as ts from "../../_namespaces/ts.js"; import { BaselineBase, CommandLineProgram, TscWatchSystem } from "./baseline.js"; import { TestServerHost } from "./virtualFileSystemWithWatch.js"; export type WatchOrSolution = void | ts.SolutionBuilder | ts.WatchOfConfigFile | ts.WatchOfFilesAndCompilerOptions; export interface TscWatchCompileChange { caption: string; edit: (sys: TscWatchSystem) => void; timeouts: (sys: TscWatchSystem, programs: readonly CommandLineProgram[], watchOrSolution: WatchOrSolution) => void; } export interface TscWatchCheckOptions { baselineSourceMap?: boolean; baselineDependencies?: boolean; } export interface TscWatchCompileBase extends TscWatchCheckOptions { scenario: string; subScenario: string; commandLineArgs: readonly string[]; edits?: readonly TscWatchCompileChange[]; } export interface TscWatchCompile extends TscWatchCompileBase { sys: () => TestServerHost; } export declare const noopChange: TscWatchCompileChange; export declare function createSolutionBuilderWithWatchHostForBaseline(sys: TestServerHost, cb: ts.ExecuteCommandLineCallbacks): ts.SolutionBuilderWithWatchHost; interface CreateWatchCompilerHostOfConfigFileForBaseline extends ts.CreateWatchCompilerHostOfConfigFileInput { system: TestServerHost; cb: ts.ExecuteCommandLineCallbacks; } export declare function createWatchCompilerHostOfConfigFileForBaseline(input: CreateWatchCompilerHostOfConfigFileForBaseline): ts.WatchCompilerHostOfConfigFile; interface CreateWatchCompilerHostOfFilesAndCompilerOptionsForBaseline extends ts.CreateWatchCompilerHostOfFilesAndCompilerOptionsInput { system: TestServerHost; cb: ts.ExecuteCommandLineCallbacks; } export declare function createWatchCompilerHostOfFilesAndCompilerOptionsForBaseline(input: CreateWatchCompilerHostOfFilesAndCompilerOptionsForBaseline): ts.WatchCompilerHostOfFilesAndCompilerOptions; export interface RunWatchBaseline extends BaselineBase, TscWatchCompileBase { sys: TscWatchSystem; getPrograms: () => readonly CommandLineProgram[]; watchOrSolution: WatchOrSolution; useSourceOfProjectReferenceRedirect?: () => boolean; } export declare function runWatchBaseline({ scenario, subScenario, commandLineArgs, getPrograms, sys, baseline, baselineSourceMap, baselineDependencies, edits, watchOrSolution, useSourceOfProjectReferenceRedirect, }: RunWatchBaseline): void; export interface WatchBaseline extends BaselineBase, TscWatchCheckOptions { oldPrograms: readonly (CommandLineProgram | undefined)[]; getPrograms: () => readonly CommandLineProgram[]; caption?: string; resolutionCache?: ts.ResolutionCache; useSourceOfProjectReferenceRedirect?: () => boolean; } export declare function watchBaseline({ baseline, getPrograms, oldPrograms, sys, baselineSourceMap, baselineDependencies, caption, resolutionCache, useSourceOfProjectReferenceRedirect, }: WatchBaseline): readonly CommandLineProgram[]; export interface VerifyTscWatch extends TscWatchCompile { baselineIncremental?: boolean; } export declare function verifyTscWatch(input: VerifyTscWatch): void; export {}; //# sourceMappingURL=tscWatch.d.ts.map