/** * Adapter that wraps a Vercel AI SDK `LanguageModel` into the framework's * `AgentLLM` interface (v0.11). * * Lives in a subpath export (`wa-agent/ai-sdk`) so the AI SDK peerDep is * only pulled by apps that actually use tool calling. The core framework * remains provider-neutral and dep-free. * * USAGE * import { google } from '@ai-sdk/google'; * import { AgentLoop, ConversationMemory, ToolRegistry } from '@emerleite/wa-agent'; * import { createAISDKAgentLLM } from '@emerleite/wa-agent/ai-sdk'; * * const loop = new AgentLoop({ * llm: createAISDKAgentLLM(google('gemini-2.5-flash')), * tools: new ToolRegistry([...]), * memory: new ConversationMemory({ db: env.DB }), * }); * * We intentionally run the AI SDK with `stopWhen: stepCountIs(1)` so the * SDK never runs its own tool loop — the framework's `AgentLoop` owns tool * dispatch, argument validation (via Zod), and audit trail. The SDK is used * as a stateless "one LLM call in, one LLM call out" primitive. */ import { type LanguageModel } from 'ai'; import type { AgentLLM } from '../agent_loop/types.js'; export { AISDKSummarizer } from './summarizer.js'; export type { AISDKSummarizerOptions } from './summarizer.js'; export { AISDKTranscriber } from './transcriber.js'; export type { AISDKTranscriberOptions, TranscriberProviderOptions } from './transcriber.js'; export interface CreateAISDKAgentLLMOptions { /** Adapter name reported on `AgentLLMResult.provider`. Default `'ai-sdk'`. */ name?: string; /** Default `maxOutputTokens` when the caller doesn't pass `maxTokens`. */ defaultMaxTokens?: number; /** Default `temperature` when the caller doesn't pass `temperature`. */ defaultTemperature?: number; } export declare function createAISDKAgentLLM(model: LanguageModel, opts?: CreateAISDKAgentLLMOptions): AgentLLM; //# sourceMappingURL=index.d.ts.map