import type { RemoteDeploymentMode, RemoteRiskLevel } from './protocol.js'; export type RemoteAuditEventName = 'remote.session.registered' | 'remote.session.paired' | 'remote.session.disconnected' | 'remote.tool.requested' | 'remote.tool.dispatched' | 'remote.tool.completed' | 'remote.tool.failed' | 'remote.approval.requested' | 'remote.approval.resolved' | 'remote.identity.rejected'; export interface RemoteAuditEvent { event: RemoteAuditEventName; observedAt: string; mode: RemoteDeploymentMode; userId?: string; sessionId?: string; connectionId?: string; toolName?: string; riskLevel?: RemoteRiskLevel; inputHash?: string; status?: 'ok' | 'error' | 'rejected' | 'timeout'; durationMs?: number; errorCode?: string; } export declare function redactRemotePayload(value: unknown): unknown; export declare class RemoteAuditLog { private readonly maxEvents; private events; constructor(maxEvents?: number); record(event: Omit & { observedAt?: string; }): RemoteAuditEvent; recent(limit?: number): RemoteAuditEvent[]; clear(): void; }