import { TraceClient } from "@empiricalrun/llm"; import { IChatModel } from "@empiricalrun/llm/chat"; import { CanonicalMessage, PendingToolCall, ReporterFunction, StreamingMessageReporterFunc, SupportedChatModels, ToolsForLLM } from "@empiricalrun/shared-types/chat-agent"; type AgentLoopParams = { chatModel: IChatModel; reporter: ReporterFunction; streamingMessageReporter?: StreamingMessageReporterFunc; trace?: TraceClient; signal?: AbortSignal; featureFlags: string[]; tools: ToolsForLLM; onPendingToolCall: (toolCalls: PendingToolCall[]) => Promise; onLLMResponse?: (response: T, selectedModel: SupportedChatModels) => Promise; systemPrompt: string; }; export declare function chatAgentLoop({ chatModel, reporter, streamingMessageReporter, trace, signal, featureFlags, tools, onPendingToolCall, onLLMResponse, systemPrompt, }: AgentLoopParams): Promise; export {}; //# sourceMappingURL=agent-loop.d.ts.map