import type { Detection, TraceSummary } from '../../shared/types/index.js'; export interface ReplayHarnessOptions { name: string; includeAllDetections?: boolean; includePerformanceMeasurement?: boolean; title?: string; } export interface ReplayHarnessResult { html: string; filePath?: string; includedDetectionTypes: string[]; summary: string; } export interface IssueReproduction { type: 'layout_thrashing' | 'gpu_stall' | 'long_task' | 'heavy_paint'; description: string; styles: string; markup: string; script: string; comments: string[]; } export interface IReplayHarnessService { generateHarness(detections: Detection[], summary: TraceSummary, options: ReplayHarnessOptions): ReplayHarnessResult; generateAndSaveHarness(detections: Detection[], summary: TraceSummary, options: ReplayHarnessOptions): Promise; generateReproduction(detection: Detection): IssueReproduction; }