import type { AuditEntry } from "./types.js"; /** * Appends structured audit entries to .bober/medical/audit-.jsonl. * * File is opened O_APPEND|O_CREAT with mode 0600. The date in the filename * is derived from the INJECTED tIso field of each entry — never the wall clock. * * PHI rule: entries hold IDs/enums ONLY (tIso, event, rulesetVersion?, * patternsetVersion?, ruleId?). NEVER serialize prompt text or health values. * * bober: single-process append; if multi-process concurrent writes are needed, * swap for a SQLite WAL or a locking file-writer. */ export declare class AuditLog { private readonly projectRoot; constructor(projectRoot: string); /** * Filename derives from the INJECTED tIso (YYYY-MM-DD slice). * Never Date.now(). */ private path; /** * Append one AuditEntry as a newline-terminated JSON line. * * Uses O_APPEND|O_CREAT with mode 0600 and an explicit fh.chmod(0600) * to guarantee the file mode even if umask would reduce it. * NEVER uses appendFile — it does not reliably honour the mode argument. */ append(entry: AuditEntry): Promise; } //# sourceMappingURL=audit.d.ts.map