/**
* Visual Test Studio — Interactive HTML test dashboard.
*
* Generates a self-contained HTML dashboard with:
* - Test list with pass/fail/flaky status
* - Trace viewer with step-by-step execution
* - Cost & latency charts over time
* - Coverage heatmap
* - Test builder (create tests visually)
*
* @example
* ```bash
* agentprobe studio --port 3000
* ```
*/
import type { SuiteResult, AgentTrace } from './types';
export interface StudioConfig {
port: number;
reportDir: string;
traceDir?: string;
title?: string;
theme?: 'light' | 'dark';
autoRefresh?: boolean;
refreshIntervalMs?: number;
}
export interface StudioTestEntry {
name: string;
status: 'pass' | 'fail' | 'flaky' | 'skipped';
duration_ms: number;
attempts?: number;
tags?: string[];
trace?: AgentTrace;
cost?: number;
timestamp?: string;
}
export interface StudioData {
title: string;
generated: string;
tests: StudioTestEntry[];
summary: {
total: number;
passed: number;
failed: number;
flaky: number;
skipped: number;
totalDuration: number;
totalCost: number;
};
costHistory: Array<{
date: string;
cost: number;
}>;
latencyHistory: Array<{
date: string;
avg_ms: number;
p95_ms: number;
}>;
coverageMap: Record;
}
/**
* Load test results from report directory.
*/
export declare function loadStudioData(config: StudioConfig): StudioData;
/**
* Generate a self-contained HTML dashboard.
*/
export declare function generateStudioHTML(data: StudioData): string;
/**
* Write studio HTML to a file.
*/
export declare function writeStudio(outputPath: string, data: StudioData): void;
/**
* Generate studio data from a suite result directly.
*/
export declare function studioFromSuiteResult(result: SuiteResult, title?: string): StudioData;
//# sourceMappingURL=studio.d.ts.map