import { TestResult, TestSuiteResult } from '../../types';
export interface HTMLReportOptions {
    outputDir?: string;
    title?: string;
    includeScreenshots?: boolean;
    includeConsoleLogs?: boolean;
    interactive?: boolean;
    theme?: 'light' | 'dark' | 'auto';
}
export declare class HTMLReportGenerator {
    private outputDir;
    private options;
    constructor(options?: HTMLReportOptions);
    /**
     * Generate interactive HTML report
     */
    generateReport(results: TestResult[] | TestSuiteResult): Promise<string>;
    /**
     * Generate summary report
     */
    generateSummaryReport(results: TestResult[] | TestSuiteResult): Promise<string>;
    /**
     * Open report in browser
     */
    openReport(reportPath?: string): Promise<void>;
    /**
     * Clean old reports
     */
    cleanupReports(daysToKeep?: number): Promise<void>;
    /**
     * Prepare report data
     */
    private prepareReportData;
    /**
     * Calculate summary statistics
     */
    private calculateSummary;
    /**
     * Generate main HTML content
     */
    private generateHTML;
    /**
     * Generate summary HTML content
     */
    private generateSummaryHTML;
    /**
     * Generate test row HTML
     */
    private generateTestRow;
    /**
     * Generate CSS styles
     */
    private generateCSS;
    /**
     * Generate summary CSS styles
     */
    private generateSummaryCSS;
    /**
     * Generate JavaScript for interactivity
     */
    private generateJavaScript;
    /**
     * Create full HTML document
     */
    private createFullHTML;
    /**
     * Format duration in milliseconds to human readable format
     */
    private formatDuration;
    /**
     * Calculate tests per minute
     */
    private calculateTestsPerMinute;
}
//# sourceMappingURL=HTMLReportGenerator.d.ts.map