import type { DetailedReport, CombinedReport } from '../core/types';
import type { ReportSummary } from '../use-cases/report-use-cases';
export interface IReportService {
    getSessionReport(label: string): DetailedReport | null;
    waitForSessionReport(label: string, timeoutMs?: number): Promise<DetailedReport>;
    hasSessionReport(label: string): boolean;
    generateCombinedReport(): CombinedReport;
    getCombinedReportAsync(): Promise<CombinedReport>;
    watchSessionReport(label: string, callback: (report: DetailedReport) => void): () => void;
    watchAllReports(callback: (sessionLabel: string, report: DetailedReport) => void): () => void;
    getReportSummary(): ReportSummary;
    exportReports(format: 'json' | 'html'): Promise<string>;
    clearAllReports(): void;
    validateSessionReport(sessionLabel: string): boolean;
    getReportValidationErrors(sessionLabel: string): string[];
}
//# sourceMappingURL=report-service.d.ts.map