import type { BaseLanguageModel, BaseLanguageModelCallOptions } from "@langchain/core/language_models/base"; import type { ReasoningEffort } from "./agentConfig.js"; export type ModelCreationOptions = { reasoningEffort?: ReasoningEffort; ownerLabel?: string; }; /** * Create a LangChain model from a model string * * Format: "provider:model-name" * Examples: * - "anthropic:claude-opus-4-5" * - "anthropic:claude-sonnet-4-5" * - "openai:gpt-4o" * - "openai:gpt-4-turbo" * - "codex:codex-mini-latest" * - "openrouter:openai/gpt-4o" * - "copilot:gpt-4o" */ export declare class ModelFactory { /** * Parse and create a model from a string specification */ static createModel(modelString: string, options?: ModelCreationOptions): string | BaseLanguageModel | undefined; /** * Validate model string format without creating the model */ static validateModelString(modelString: string): { valid: boolean; error?: string; }; private static createAnthropicModel; private static createOpenAIModel; private static createCodexModel; private static createOpenRouterModel; private static createCopilotModel; private static createXAIModel; private static createLMStudioModel; private static createOllamaModel; private static applyOpenAIReasoningEffort; private static applyAnthropicThinkingEffort; private static supportsOpenAIReasoningEffort; private static supportsAnthropicThinking; private static warnUnsupportedReasoningEffort; }