import type { InspectWebPageInput, WebPageInspection, } from "../domain/browserObservation.js"; import type { CdpCaptureCompleteness } from "./CdpCaptureCompleteness.js"; import type { CapturedScript, NetworkState } from "./CdpCaptureEventTypes.js"; export interface CdpCaptureEventsState { readonly input: InspectWebPageInput; readonly allowedOrigins: ReadonlySet; readonly scripts: Map; readonly executionContextFrames: Map; readonly network: Map; readonly networkRequestTimestamps: Map; readonly malformedRedirectRequestIds: Set; readonly allowedWebSockets: Set; console: WebPageInspection["console"]["events"]; websockets: WebPageInspection["network"]["websocket_events"]; responseMetadata: WebPageInspection["metadata"]["responses"]; agentHints: WebPageInspection["metadata"]["agent_hints"]; readonly completeness: CdpCaptureCompleteness; originViolation: boolean; navigationDuringCapture: boolean; mainFrameId: string | undefined; /** * Identity of the document last observed in the main frame. `frameNavigated` * re-fires for the same document, so this is what distinguishes a real * document change from a duplicate event. */ committedDocument: string | undefined; }