import type { CompleteEmission, ModelCallContext, ModelTurnResult, RunOutputSink, RunServices, SuspendEmission } from './run-output-sink'; import type { ExecutionOptions, TokenUsage } from '../../types/sdk/agent'; import type { AgentMessage } from '../../types/sdk/message'; import type { StreamWriterGuard } from '../streaming/stream-writer-guard'; import type { ToolCallBatchResult } from '../tools/tool-call-executor'; export declare class StreamSink implements RunOutputSink { private readonly guard; private readonly services; private readonly options; private lastUsage; private rawUsageReader; private partialText; private rawErrorReader; constructor(guard: StreamWriterGuard, services: RunServices, options: ExecutionOptions | undefined); reportUsage(usage: TokenUsage | undefined): void; onTurnFolded(): void; getTerminalFinish(): { usage?: TokenUsage; model: string; }; getAbortSnapshot(): AgentMessage | undefined; private buildSmoothStreamTransformOptions; callModel(ctx: ModelCallContext): Promise; private streamModelTurn; emitToolBatch(batch: ToolCallBatchResult): Promise; finishSuspended(emission: SuspendEmission): Promise; finishComplete(emission: CompleteEmission): Promise; }