/** * Turns the fire-and-forget inspector channel into request/response for the * node side. The page answers a `tree` command with a `tree` message and a * `details` command with `details` or `gone`, but nothing correlates them, so * this resolves every waiter for that kind on the next matching message. * Bounded by a timeout: the null source never answers, and a page may be gone. */ import type { InspectorCommand, InspectorDetails, InspectorMessage, InspectorTreeNode } from '../../types/inspector.js'; import type { TimelineSource } from './source.js'; export interface InspectorRequester { /** Ask the page for its tree; `undefined` when nothing answered in time. */ tree(timeoutMs: number): Promise; /** * Ask the page for one element's details. `null` when the page reports it * gone; `undefined` when nothing answered in time. `command` replaces the * plain `details` ask with another one the page answers the same way, * such as `set-prop`. */ details(id: number, timeoutMs: number, command?: InspectorCommand): Promise; /** Feed every inbound page message through here before the cache sees it. */ resolve(message: InspectorMessage): void; } export declare const createInspectorRequester: (source: Pick) => InspectorRequester; //# sourceMappingURL=inspector-request.d.ts.map