import * as plugins from './tstest.plugins.js'; import { TestDirectory } from './tstest.classes.testdirectory.js'; import { TestExecutionMode } from './index.js'; import { TsTestLogger } from './tstest.logging.js'; import type { LogOptions } from './tstest.logging.js'; import { RuntimeAdapterRegistry } from './tstest.classes.runtime.adapter.js'; import { DockerRuntimeAdapter } from './tstest.classes.runtime.docker.js'; export declare class TsTest { testDir: TestDirectory; executionMode: TestExecutionMode; logger: TsTestLogger; filterTags: string[]; startFromFile: number | null; stopAtFile: number | null; timeoutSeconds: number | null; smartshellInstance: plugins.smartshell.Smartshell; smartbrowserInstance: plugins.smartbrowser.SmartBrowser; tsbundleInstance: plugins.tsbundle.TsBundle; runtimeRegistry: RuntimeAdapterRegistry; dockerAdapter: DockerRuntimeAdapter | null; private beforeScripts; constructor(cwdArg: string, testPathArg: string, executionModeArg: TestExecutionMode, logOptions?: LogOptions, tags?: string[], startFromFile?: number | null, stopAtFile?: number | null, timeoutSeconds?: number | null); /** * Check and display available runtimes */ private checkEnvironment; run(): Promise; /** * Clean up all long-lived resources so the Node.js event loop can drain naturally. */ cleanup(): Promise; runWatch(ignorePatterns?: string[]): Promise; private runSingleTestOrSkip; private runSingleTest; /** * Execute a Docker test file */ private runDockerTest; private movePreviousLogFiles; }