import type { PuppeteerLifeCycleEvent } from 'puppeteer';
export interface ScreenshotOptions {
    fullPage?: boolean;
    viewportWidth?: number;
    viewportHeight?: number;
    outputPath?: string;
    mobile?: boolean;
    timeout?: number;
    verbose?: boolean;
    retries?: number;
    onProgress?: (step: string, percent: number, message?: string) => void;
    extractStyles?: boolean;
    stylePoints?: Array<{
        x: number;
        y: number;
    }>;
}
export interface RetryStrategy {
    name: string;
    waitTime: number;
    browserArgs?: string[];
    waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
}
export declare class EnhancedScreenshotCapture {
    private verbose;
    constructor(verbose?: boolean);
    private log;
    captureWithRetry(url: string, options?: ScreenshotOptions): Promise<string>;
    private captureScreenshot;
}
export default EnhancedScreenshotCapture;
