/**
 * Network Interceptor module
 * Intercepts and tracks all network requests and responses
 */
import { Page } from 'playwright';
import { ResourcesData } from '../types';
declare class NetworkInterceptor {
    private resources;
    private startTime;
    private endTime;
    constructor();
    /**
     * Setup network interception on a Playwright page
     * @param {Page} page - Playwright page object
     */
    setupInterception(page: Page): Promise<void>;
    /**
     * Handle request events
     * @param {Request} request - Playwright request object
     */
    private onRequest;
    /**
     * Handle response events
     * @param {Response} response - Playwright response object
     */
    private onResponse;
    /**
     * Handle request finished events
     * @param {Request} request - Playwright request object
     */
    private onRequestFinished;
    /**
     * Handle request failed events
     * @param {Request} request - Playwright request object
     */
    private onRequestFailed;
    /**
     * Determine if a response was served from browser cache
     * @param {Response} response - Playwright response object
     * @returns {boolean} - Whether the response was cached
     */
    private isResponseCached;
    /**
     * Process the collected resources data into a structured format
     * @returns {ResourcesData} - Processed resources data
     */
    processResourcesData(): ResourcesData;
}
export default NetworkInterceptor;
