import { EventEmitter } from 'events'; import { PlaywrightConfig } from './types'; import { FileHandler } from './file-handler'; import { AuthConfig } from './auth-config'; import { LLMProvider } from './llm-provider'; import { ProgressReporter } from './progress-reporter'; import { AgentConfig, SiteLearnings } from './orchestrator'; /** * Service for processing scenarios using LLM + Playwright */ export declare class ScenarioService extends EventEmitter { private workers; private jobQueue; private busyWorkers; private maxWorkers; private fileHandler; private authConfig; private backendUrl?; private creditUsageService; private logger?; private llmProvider?; private progressReporter?; private orchestratorConfig?; private debugMode; private outputChannel?; constructor(maxWorkers?: number, fileHandler?: FileHandler, llmProvider?: LLMProvider, progressReporter?: ProgressReporter, authConfig?: AuthConfig, backendUrl?: string, options?: { orchestratorConfig?: Partial; debugMode?: boolean; }); /** * Set a logger callback for capturing execution logs */ setLogger(logger: (message: string, level?: 'log' | 'error' | 'warn') => void): void; /** * Set output channel for worker logs (VS Code OutputChannel) */ setOutputChannel(outputChannel: any): void; /** * Log a message using the configured logger */ private log; private initializeWorkers; private createWorker; initialize(): Promise; processScenario(scenario: string, testName?: string, config?: PlaywrightConfig, model?: string, scenarioFileName?: string, existingBrowser?: any, existingContext?: any, existingPage?: any, existingSiteLearnings?: SiteLearnings, providedJobId?: string, // Optional jobId from caller headless?: boolean, // defaults to false (headed mode) steps?: Array<{ description: string; code?: string; }>, // Predefined steps (skip LLM breakdown) initialUrl?: string): string; private processNextJob; private handleJobResult; private handleJobError; /** * Execute exploration mode using orchestrator * Note: Orchestrator is always enabled in modern runner-core */ executeExploration(page: any, explorationConfig: any, jobId: string, existingSiteLearnings?: SiteLearnings): Promise; shutdown(): Promise; } //# sourceMappingURL=scenario-service.d.ts.map