import { TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js'; import { TestSessionManager } from '../test-session/TestSessionManager.js'; import { TestSession, TestResultError } from '../test-session/TestSession.js'; import { BrowserLauncher } from '../browser-launcher/BrowserLauncher.js'; export declare class TestScheduler { private config; private sessions; private timeoutHandler; private browsers; private finishedBrowsers; private stopPromises; private browserStartTimeoutMsg; private testsStartTimeoutRetriesPerSession; private testsInterruptedRetriesPerSession; constructor(config: TestRunnerCoreConfig, sessions: TestSessionManager, browsers: BrowserLauncher[]); /** * Schedules a session for execution. Execution is batched, the session * will be queued until there is a browser page available. */ schedule(testRun: number, sessionsToSchedule: Iterable): void; stop(): Promise; /** Runs the next batch of scheduled sessions, if any. */ private runNextScheduled; private startSession; setSessionFailed(session: TestSession, ...errors: TestResultError[]): Promise | undefined; private stopSession; private getScheduledSessions; private getRunningSessions; private getUnfinishedSessions; } //# sourceMappingURL=TestScheduler.d.ts.map