import { type ChatStreamEvent } from "../../chat/protocol.js"; import { type ConversationRunEvent, ConversationRunEventEncoder } from "./run-events.js"; import { type ConversationRunMirror, type ConversationRunMirrorHighBacklogState, type ConversationRunMirrorRetryScheduledState, type ConversationRunMirrorSnapshot, type ConversationRunMirrorStoppedState } from "./run-mirror.js"; import { type ConversationRunEventQueueController } from "./durable.js"; /** Public API contract for conversation run stream mirror. */ export interface ConversationRunStreamMirror { handleStreamEvent(event: ChatStreamEvent): void; appendEvents(events: ConversationRunEvent[]): void; flush(): Promise; getSnapshot(): ReturnType; dispose(): void; } /** Create conversation run stream mirror. */ export declare function createConversationRunStreamMirror(input: { queueController: ConversationRunEventQueueController; immediateFlushEventCount: number; encoder?: ConversationRunEventEncoder; flushDelayMs?: number; getRetryDelayMs?: (consecutiveFailures: number) => number; highBacklogEventCount?: number; onHighBacklog?: (state: ConversationRunMirrorHighBacklogState) => Promise | void; onRetryScheduled?: (state: ConversationRunMirrorRetryScheduledState) => Promise | void; onStopped?: (state: ConversationRunMirrorStoppedState) => Promise | void; }): ConversationRunStreamMirror; //# sourceMappingURL=run-stream-mirror.d.ts.map