/** * Pure, platform-agnostic helper that unmasks whole-token secret fields inside a * parsed CDP command frame, gating on the target tab's hostname via the existing * `SecretsPipeline` (no second masking implementation). * * Three CDP methods carry a single, whole masked token in one frame and are * the only ones unmasked here (D1 in the feature spec): * - `Runtime.callFunctionOn` → string entries in `params.arguments[].value` * - `Runtime.evaluate` → `params.expression` * - `Input.insertText` → `params.text` * * Per-frame domain gating reuses `SecretsPipeline.unmaskBody` semantics: * on a domain mismatch (or missing secret) the value is left verbatim (no * forbidden surface — masked values in conversation context are harmless). * * Returns `{ frame, changed }`. When nothing applies the original frame * reference is returned untouched (no clone, no mutation). */ import type { SecretsPipeline } from './secrets-pipeline.js'; export interface CdpFrame { method?: string; params?: unknown; [key: string]: unknown; } export interface UnmaskCdpFrameResult { frame: CdpFrame; changed: boolean; } export declare function unmaskCdpFrame(frame: CdpFrame, hostname: string, pipeline: SecretsPipeline): UnmaskCdpFrameResult; //# sourceMappingURL=cdp-frame-unmask.d.ts.map