import type { DetailedReport, CombinedReport } from '../core/types';
export interface IGetSessionReportUseCase {
    execute(sessionLabel: string): DetailedReport | null;
}
export interface IWaitForSessionReportUseCase {
    execute(sessionLabel: string, timeoutMs?: number): Promise<DetailedReport>;
}
export interface IWatchSessionReportUseCase {
    execute(sessionLabel: string, callback: (report: DetailedReport) => void): () => void;
}
export interface IGenerateDetailedCombinedReportUseCase {
    execute(): CombinedReport;
}
export interface IExportReportsUseCase {
    execute(format: 'json' | 'html'): Promise<string>;
}
export interface IGetReportSummaryUseCase {
    execute(): ReportSummary;
}
export interface ReportSummary {
    totalReports: number;
    totalTests: number;
    totalPasses: number;
    totalFailures: number;
    reportSizes: Record<string, number>;
    oldestReport?: Date;
    newestReport?: Date;
    averageTestDuration?: number;
}
//# sourceMappingURL=report-use-cases.d.ts.map