///
import { Page } from './page';
import { CdpHeaderEntry, CdpHeaders, CdpRequest, CdpResponse } from './types';
/**
* Manages Page networking layer.
*
* This class exposes useful network-related functionality such as:
*
* - waiting for "network silence" (i.e. no new requests fired for specified duration)
* - accessing request/response information on current target (since last page load event,
* similar to DevTools)
* - obtaining request/response body of selected requests (with same limitations as in DevTools)
*/
export declare class NetworkManager {
page: Page;
pendingRequestIds: Set;
collectedResources: NetworkResource[];
lastNetworkEventAt: number;
constructor(page: Page);
get logger(): import("./logger").Logger;
isSilent(): boolean;
isSilentFor(duration: number): boolean;
invalidate(): void;
getCollectedResources(): NetworkResource[];
getPendingRequests(): NetworkResource[];
getResourceById(requestId: string): NetworkResource | null;
getResponseBody(requestId: string): Promise;
waitForFinish(requestId: string, timeout?: number): Promise;
private onRequestWillBeSent;
private onResponseReceived;
private onLoadingFinished;
private onLoadingFailed;
private logFailedRequest;
private logHttpError;
/**
* @deprecated
*/
static headersObjectToEntries(cdpHeaders: CdpHeaders): CdpHeaderEntry[];
/**
* @deprecated
*/
static headerEntriesToObject(cdpHeaderEntries: CdpHeaderEntry[]): CdpHeaders;
}
export interface NetworkResource {
requestId: string;
frameId: string;
type: string;
status: 'requestWillBeSent' | 'responseReceived' | 'loadingFinished' | 'loadingFailed';
localSendTimestamp: number;
request: CdpRequest;
response?: CdpResponse;
errorText?: string;
}
//# sourceMappingURL=network-manager.d.ts.map