type Segment = { readonly kind: "text" | "thinking" | "tool_call" | "tool_result" | "compaction"; readonly text?: string; readonly jsonContent?: Record; }; type TranscriptMessage = { readonly role: "user" | "assistant"; readonly text: string; readonly occurredAt?: string; readonly segments?: readonly Segment[]; }; type BenchmarkRun = { readonly benchmark: string; readonly taskId: string; readonly role: "seed" | "target"; readonly trialId: string; readonly condition: "off" | "incognito"; readonly reward: number | null; readonly tokens: { readonly input: number | null; readonly cachedInput: number | null; readonly output: number | null; readonly reasoning: number | null; readonly total: number | null; }; readonly costUsd: number | null; readonly durationMs: number | null; }; type ParsedTranscript = { readonly sessionId: string; readonly agent: "claude-code" | "codex" | "cursor" | "pi"; readonly cwd: string | undefined; readonly branch: string | undefined; readonly model: string | undefined; readonly messages: readonly TranscriptMessage[]; readonly format?: "harbor-atif"; readonly agentVersion?: string; readonly repoName?: string; readonly commit?: string; readonly remoteUrl?: string; readonly benchmarkRun?: BenchmarkRun; }; type TranscriptTurn = readonly { readonly role: "user" | "assistant"; readonly content: string; readonly occurredAt?: string; readonly segments?: readonly Segment[]; }[]; declare const buildTranscriptTurns: (messages: readonly TranscriptMessage[]) => TranscriptTurn[]; export { buildTranscriptTurns }; export type { BenchmarkRun, TranscriptMessage, ParsedTranscript, TranscriptTurn, Segment, };