import { CDPConnectionService } from '../cdp/cdp-connection.service.js'; import { TracingService } from '../cdp/tracing.service.js'; import { ScenarioRunnerService } from './scenario-runner.service.js'; import { StorageService } from '../services/storage.service.js'; import { ConfigService } from '../services/config.service.js'; import type { TraceData, TraceSummary, ScenarioResult } from '../shared/types/index.js'; export interface ProfileOptions { url: string; scenario: string; browserPath?: string; duration: number; headless: boolean; fpsTarget: number; cdpPort?: number; outputPath?: string; } export interface ProfileResult { traceData: TraceData; summary: TraceSummary; scenarioResult: ScenarioResult; tracePath: string; summaryPath: string; exitCode: number; } export declare class RecorderService { private readonly cdpConnection; private readonly tracingService; private readonly scenarioRunner; private readonly storageService; private readonly configService; constructor(cdpConnection: CDPConnectionService, tracingService: TracingService, scenarioRunner: ScenarioRunnerService, storageService: StorageService, configService: ConfigService); profile(options: ProfileOptions): Promise; private navigateToUrl; private runScenarioWithTimeout; private generateSummary; private calculateFrameMetrics; private calculatePhaseBreakdown; private writeTraceToPath; private generateRunId; private generateUniqueId; private isValidUrl; private delay; }