/**
 * Enhanced Console Capture
 *
 * Improves console log capture to provide detailed JavaScript error information
 * including stack traces, error context, and structured output.
 */
import { Page } from 'playwright';
export interface EnhancedConsoleLog {
    level: 'error' | 'warning' | 'info' | 'debug' | 'log';
    timestamp: number;
    text: string;
    location?: {
        url: string;
        lineNumber: number;
        columnNumber: number;
    };
    stackTrace?: string;
    args?: any[];
    category?: string;
    context?: any;
}
export interface ConsoleAnalysis {
    summary: {
        totalLogs: number;
        errorCount: number;
        warningCount: number;
        infoCount: number;
        categories: Record<string, number>;
    };
    criticalErrors: EnhancedConsoleLog[];
    recommendations: string[];
    patterns: string[];
}
export declare class EnhancedConsoleCapture {
    private logs;
    private page;
    private isCapturing;
    private consoleHandler?;
    private pageErrorHandler?;
    constructor(page: Page);
    /**
     * Start capturing console logs with enhanced detail
     */
    startCapture(): Promise<void>;
    /**
     * Stop capturing console logs
     */
    stopCapture(): void;
    /**
     * Get captured logs with optional filtering
     */
    getLogs(options?: {
        level?: 'all' | 'error' | 'warning' | 'info';
        limit?: number;
        includeStackTraces?: boolean;
    }): EnhancedConsoleLog[];
    /**
     * Analyze console logs for patterns and issues
     */
    analyze(): ConsoleAnalysis;
    /**
     * Get formatted report of console logs
     */
    getFormattedReport(options?: {
        format?: 'markdown' | 'json' | 'text';
        includeAnalysis?: boolean;
    }): string;
    /**
     * Inject enhanced error capture into the page
     */
    private injectEnhancedCapture;
    /**
     * Handle console messages from Playwright
     */
    private handleConsoleMessage;
    /**
     * Handle page errors
     */
    private handlePageError;
    /**
     * Map Playwright console types to our levels
     */
    private mapConsoleType;
    /**
     * Categorize log messages
     */
    private categorizeLog;
    /**
     * Extract error pattern for grouping
     */
    private extractErrorPattern;
    /**
     * Generate recommendations based on analysis
     */
    private generateRecommendations;
    /**
     * Format logs as markdown
     */
    private formatAsMarkdown;
    /**
     * Format logs as plain text
     */
    private formatAsText;
}
//# sourceMappingURL=enhanced-console-capture.d.ts.map