import type { Context as PiContext, Model, SimpleStreamOptions, StopReason, StreamFunction, ThinkingLevel } from '../../provider/pi-ai-types.js'; import type { MiniAgentEvent } from '../subagent/agent-events.js'; import type { ContentBlock, Message } from '../session/session-jsonl.js'; import type { Tool } from '../tools/tool-types.js'; export declare function resolveLlmFirstChunkTimeoutMs(): number; export declare class LlmFirstChunkTimeoutError extends Error { constructor(message: string); } export declare function pushMessageDeltaCatchup(stream: { push: (e: MiniAgentEvent) => void; }, text: string, signal: AbortSignal): Promise; export declare function pushThinkingDeltaCatchup(stream: { push: (e: MiniAgentEvent) => void; }, body: string, signal: AbortSignal): Promise; export declare function chainTopPOnPayload(topP: number, existing?: SimpleStreamOptions['onPayload']): SimpleStreamOptions['onPayload']; export interface AgentLoopLlmTurnParams { stream: { push: (event: MiniAgentEvent) => void; }; modelDef: Model; piContext: PiContext; streamFn: StreamFunction; apiKey?: string; temperature?: number; reasoning?: ThinkingLevel; maxLLMRetries?: number; topP?: number; abortSignal: AbortSignal; messagesForModel: Message[]; toolsForRun: Tool[]; sessionKey: string; turn: number; runStartMs: number; firstTokenMs: number | null; suppressVisibleDeltas?: boolean; logDebug: (message: string, meta?: Record) => void; } export interface AgentLoopLlmTurnResult { assistantContent: ContentBlock[]; messageThinkingChunks: string[]; toolCalls: { id: string; name: string; input: Record; }[]; turnTextParts: string[]; streamStopReason: StopReason | undefined; firstTokenMs: number | null; usage?: { inputTokens: number; outputTokens: number; cacheReadTokens: number; cacheCreationTokens: number; }; } export declare function runAgentLoopLlmTurn(params: AgentLoopLlmTurnParams): Promise; //# sourceMappingURL=agent-loop-stream-helpers.d.ts.map