/** * Anthropic provider implementation for structured LLM client. * Uses the Anthropic SDK directly with manual agent loop. */ import Anthropic from "@anthropic-ai/sdk"; import type { MessageParam } from "@anthropic-ai/sdk/resources/messages"; import { BaseStructuredLLMProvider } from "./base-provider"; import type { BaseZodToolDefinition, ToolCall, ToolResult, AgentRunOptions, ProviderResponse } from "./types"; import { modelByProvider } from "../provider-and-models"; export type AnthropicModel = (typeof modelByProvider.anthropic)[number]; /** * Conversation state for Anthropic provider. * Stores the message history in Anthropic's format. */ interface AnthropicConversationState { messages: MessageParam[]; } /** * Anthropic-specific response type. */ type AnthropicResponse = ProviderResponse; /** * Anthropic provider implementation. * Migrated from the original structured-llm-client.ts implementation. */ export declare class AnthropicStructuredProvider extends BaseStructuredLLMProvider { protected readonly providerName = "anthropic"; protected initializeConversation(prompt: string): AnthropicConversationState; protected callAPI(state: AnthropicConversationState, tools: BaseZodToolDefinition[], options: AgentRunOptions): Promise; protected extractSubmitOutput(response: AnthropicResponse): unknown; protected extractToolCalls(response: AnthropicResponse): ToolCall[]; protected appendToConversation(state: AnthropicConversationState, response: AnthropicResponse, results: ToolResult[]): void; } export {}; //# sourceMappingURL=anthropic-provider.d.ts.map