import type { JournalEntry } from "../../experiment-loop/dist/index.js"; import type { TaskCompletion, TaskProgress } from "../../pipeline/dist/index.js"; import type { BraintrustClient } from "./client.js"; type SuperintendentRole = "builder" | "inspector" | "superintendent" | "owner"; interface BraintrustLogEvent { input?: unknown; output?: unknown; scores?: Record; metrics?: Record; metadata?: Record; } export declare function makePipelineRowState(client: BraintrustClient): { start(progress: TaskProgress): void; complete(progress: TaskCompletion): void; }; export declare function logSuperintendentRole(client: BraintrustClient, role: SuperintendentRole, result: unknown): Promise; export declare function makeExperimentIterationState(client: BraintrustClient, experimentName: string): { start(index: number, agent: string): Promise; baseline(b: Record): void; metric(name: string, value: number): void; commit(hash: string): void; reset(hash: string): void; complete(index: number, entry: JournalEntry): Promise; }; export declare function buildSuperintendentLog(role: SuperintendentRole, result: unknown): BraintrustLogEvent; export {};