export interface LLMConfig { model: string; temperature?: number; maxTokens?: number; apiKey?: string; baseURL?: string; } export interface LLMResponse { text: string; usage?: { promptTokens: number; completionTokens: number; totalTokens: number; }; metadata?: Record; } export interface LLM { config: LLMConfig; generate(prompt: string): Promise; generateStream(prompt: string): AsyncGenerator; } export declare class BaseLLM implements LLM { config: LLMConfig; constructor(config: LLMConfig); generate(prompt: string): Promise; generateStream(prompt: string): AsyncGenerator; } export { resolveBackend, resolveBackendSync, isAISDKAvailable, resetAISDKAvailabilityCache, getPreferredBackend, getDefaultModel, parseModelString, type BackendResolutionResult, type BackendSource, type ResolveBackendOptions, } from './backend-resolver'; export { embed, embedMany, createEmbeddingProvider, getDefaultEmbeddingModel, parseEmbeddingModel, cosineSimilarity, euclideanDistance, type EmbeddingOptions, type EmbeddingResult, type EmbeddingBatchResult, } from './embeddings';