import type { ExecutionContext } from '../../core/ExecutionContext.ts'; export interface AgentTraceArgs { role: string; model: string; usage: { promptTokens?: number; completionTokens?: number; totalTokens?: number; } | undefined; toolUsage: { promptTokens?: number; completionTokens?: number; totalTokens?: number; } | undefined; input: string; output: string; durationMs: number; error: unknown; context: ExecutionContext; } export interface RedactSafelyOptions { event: string; member: string; model: string; /** 'throw' fails closed (persisted traces/decisions); 'skip' returns undefined (best-effort signals). */ mode?: 'throw' | 'skip'; /** Rethrown instead of the redaction error when the run already failed ('throw' mode only). */ originalError?: unknown; } export declare function redactSafely(context: ExecutionContext, text: string, options: RedactSafelyOptions & { mode?: 'throw'; }): string; export declare function redactSafely(context: ExecutionContext, text: string, options: RedactSafelyOptions & { mode: 'skip'; }): string | undefined; /** Redacts, builds, and records the run trace; fails closed on redaction. */ export declare function recordAgentTrace(args: AgentTraceArgs): void; //# sourceMappingURL=agentTrace.d.ts.map