/**
 * EvidenceRecorder — persists AttemptRecord + EvidenceResult to JSONL files.
 *
 * Storage structure:
 *   .omk/runs/<runId>/attempts.jsonl   — attempt records
 *   .omk/runs/<runId>/evidence.jsonl   — evidence results (per gate)
 *   .omk/runs/<runId>/context-capsules/<nodeId>-<attemptId>.json
 */
import type { AttemptRecord, EvidenceResult } from "./attempt-record.js";
export interface EvidenceRecorderOptions {
    runsDir?: string;
}
export interface EvidenceRecorder {
    ensureRunDir(runId: string): void;
    recordAttempt(record: AttemptRecord): void;
    recordEvidence(runId: string, nodeId: string, attemptId: string, results: readonly EvidenceResult[]): void;
    saveContextSnapshot(runId: string, nodeId: string, attemptId: string, capsule: unknown): void;
}
export declare function createEvidenceRecorder(options?: EvidenceRecorderOptions): EvidenceRecorder;
