import { buildAssistantMessage, type SteeredRunSegment } from "./thread-data-builder.js"; import type { RunEvent } from "./types.js"; interface BuildJournalAssistantMessageOptions { suppressInternalContinuation?: boolean; preserveUnknownToolOutcomes?: boolean; scope?: { type: string; id: string; } | null; runDurationMs?: number; } export declare class RunTranscriptJournalGapError extends Error { readonly runId: string; readonly missingSequences: number[]; constructor(runId: string, missingSequences: number[]); } /** Builds assistant content from the durable event journal and verifies that * every published nonterminal event reached that journal before projection. */ export declare function buildAssistantMessageFromRunJournal(input: Parameters[0]): Promise>; /** * The turn's reply from the journal, split where the user sent messages into * it. `assistant` is the reply the run's first output folds into; `steered` * holds this run's delivered messages and the replies after them. After an * earlier run of the turn delivered one, `parentId` is that message, since the * turn's reply continues below it. */ export declare function buildAssistantTurnFromRunJournal(input: { threadId: string; turnId: string; runId: string; runEvents: readonly RunEvent[]; options?: BuildJournalAssistantMessageOptions; }): Promise<{ assistant: ReturnType; steered: SteeredRunSegment[]; parentId?: string; }>; export {};