/** * Anthropic adapter for LLM integration * * Supports all Claude models including the latest Claude 4.5 family. * * @packageDocumentation */ import type { LLMProvider, AnthropicConfig, CompletionRequest, CompletionResponse } from '../../types/llm.js'; import { BaseLLMAdapter } from './base.js'; /** * Claude 4.5 Models (Latest - November 2025) * - Opus 4.5: Most intelligent, complex reasoning * - Sonnet 4.5: Best for coding & agents * - Haiku 4.5: Fast & cost-effective */ export declare const CLAUDE_4_5_MODELS: { readonly 'opus-4.5': "claude-opus-4-5-20251101"; readonly 'sonnet-4.5': "claude-sonnet-4-5-20250514"; readonly 'haiku-4.5': "claude-haiku-4-5-20251001"; }; /** * Claude 4 Models (May-August 2025) */ export declare const CLAUDE_4_MODELS: { readonly 'opus-4.1': "claude-opus-4-1-20250805"; readonly 'opus-4': "claude-opus-4-20250514"; readonly 'sonnet-4': "claude-sonnet-4-20250514"; }; /** * Claude 3.5 Models (Legacy - 2024) */ export declare const CLAUDE_3_5_MODELS: { readonly 'sonnet-3.5': "claude-3-5-sonnet-20241022"; readonly 'haiku-3.5': "claude-3-5-haiku-20241022"; }; /** * Claude 3 Models (Legacy - Early 2024) */ export declare const CLAUDE_3_MODELS: { readonly 'opus-3': "claude-3-opus-20240229"; readonly 'sonnet-3': "claude-3-sonnet-20240229"; readonly 'haiku-3': "claude-3-haiku-20240307"; }; /** * All available Claude models */ export declare const CLAUDE_MODELS: { readonly 'opus-3': "claude-3-opus-20240229"; readonly 'sonnet-3': "claude-3-sonnet-20240229"; readonly 'haiku-3': "claude-3-haiku-20240307"; readonly 'sonnet-3.5': "claude-3-5-sonnet-20241022"; readonly 'haiku-3.5': "claude-3-5-haiku-20241022"; readonly 'opus-4.1': "claude-opus-4-1-20250805"; readonly 'opus-4': "claude-opus-4-20250514"; readonly 'sonnet-4': "claude-sonnet-4-20250514"; readonly 'opus-4.5': "claude-opus-4-5-20251101"; readonly 'sonnet-4.5': "claude-sonnet-4-5-20250514"; readonly 'haiku-4.5': "claude-haiku-4-5-20251001"; }; /** * Model alias type for convenient model selection */ export type ClaudeModelAlias = keyof typeof CLAUDE_MODELS; /** * Resolve a model alias or ID to the full model ID */ export declare function resolveClaudeModel(modelOrAlias: string): string; /** * Anthropic adapter for Claude models */ export declare class AnthropicAdapter extends BaseLLMAdapter { private readonly baseUrl; constructor(config: AnthropicConfig); get provider(): LLMProvider; complete(request: CompletionRequest): Promise; } /** * Create an Anthropic adapter from environment variables * * @param model - Model ID or alias (e.g., 'sonnet-4.5', 'opus-4.5', 'haiku-4.5') * Use aliases for convenience or full model IDs for specific versions. * Any valid Claude model ID will work - not limited to the aliases. * * @example * ```typescript * // Using aliases (recommended) * const adapter = createAnthropicAdapter('sonnet-4.5'); * * // Using full model ID * const adapter = createAnthropicAdapter('claude-opus-4-5-20251101'); * * // Using a future model (when released) * const adapter = createAnthropicAdapter('claude-opus-5-20260101'); * ``` */ export declare function createAnthropicAdapter(model?: ClaudeModelAlias | string, overrides?: Partial): AnthropicAdapter; /** * List all available Claude model aliases */ export declare function listClaudeModels(): { alias: string; modelId: string; }[]; //# sourceMappingURL=anthropic.d.ts.map