import type { AuditRecord, ScanResult, ScanContext } from "../types.js"; import type { AuditStore } from "./types.js"; export interface AuditLoggerConfig { store: AuditStore; batchSize?: number; flushIntervalMs?: number; } export declare class AuditLogger { private store; private buffer; private batchSize; private flushTimer; constructor(config: AuditLoggerConfig); /** Log a scan result */ log(input: string, result: ScanResult, context?: ScanContext, extra?: { model?: string; outputTokenCount?: number; toolsCalled?: string[]; costUsd?: number; }): Promise; /** Flush buffered records to store */ flush(): Promise; /** Close the logger (flush + stop timer) */ close(): Promise; } export declare class ConsoleAuditStore implements AuditStore { write(record: AuditRecord): Promise; writeBatch(records: AuditRecord[]): Promise; flush(): Promise; close(): Promise; private print; } export declare class MemoryAuditStore implements AuditStore { records: AuditRecord[]; write(record: AuditRecord): Promise; writeBatch(records: AuditRecord[]): Promise; flush(): Promise; close(): Promise; } //# sourceMappingURL=logger.d.ts.map