import type { ProxyBodyCaptureEntry, ProcessedProxyBodyCapture } from "../types/index.js";
/**
 * Split redacted text into byte-bounded OTLP chunks without splitting
 * encoded characters.
 */
export declare function splitUtf8StringByBytes(input: string, maxBytes: number): string[];
/** Shared pure redaction for replay; serving paths invoke it in the worker. */
export declare function prepareProxyBodyForLogging(body: unknown): {
    value?: string;
    bytes?: number;
    truncated: boolean;
    originalBytes?: number;
    unparseableFrames: number;
};
/**
 * Expose the same header-redaction policy to replay and metadata
 * consumers.
 */
export declare function redactProxyHeadersForLogging(headers: Record<string, string> | undefined): Record<string, string> | undefined;
/**
 * Process a capture in the worker and retain redacted output when artifact
 * persistence fails.
 */
export declare function processProxyBodyCapture(entry: ProxyBodyCaptureEntry, logDir: string | null): Promise<ProcessedProxyBodyCapture>;
