import type { TaskOutcome as CoreTaskOutcome } from "@sema-agent/core"; /** The one write verb every outcome sink (TiDB/Pg ledger adapters + this File twin) exposes to main.ts, * plus the OPTIONAL read aggregate backing `GET /v1/outcomes` (P2) — present on the SQL ledgers (their * existing per-(signature, model) summary); absent here (the JSONL file IS the local dataset — a dashboard * reads the file, the endpoint 501s honestly). */ export interface OutcomeSink { recordCore(o: CoreTaskOutcome): Promise; summary?(opts?: { taskSignature?: string; includeAborted?: boolean; }): Promise>; } export declare class FileOutcomeSink implements OutcomeSink { private readonly path; constructor(root: string); recordCore(o: CoreTaskOutcome): Promise; } //# sourceMappingURL=file-outcome-sink.d.ts.map