import { EmbeddingModelV3, LanguageModelV3 } from '@ai-sdk/provider'; import { Provider } from '@nestjs/common'; import { TestingModule } from '@nestjs/testing'; import { A as AiModuleOptions } from './ai-module-options.interface-Dn9iORA7.js'; import './conversation-store.interface-CtQY-qcc.js'; import 'ai'; import 'zod'; /** * Builds a mock language model that returns the given text reply(ies). An array * yields one reply per successive call (multi-step); the last is reused after. */ declare function createMockModel(replies: string | string[]): LanguageModelV3; /** * Builds a mock embedding model whose vectors come from `embed(value)`. */ declare function createEmbeddingMock(embed: (value: string) => number[]): EmbeddingModelV3; interface TestingAiModuleOptions { /** Mock language model (default: replies "mock response"). */ model?: LanguageModelV3; /** Mock embedding model (default: zero vector). */ embedding?: EmbeddingModelV3; /** Extra providers (agents, tools, guardrails) to register. */ providers?: Provider[]; /** Extra modules to import. */ imports?: any[]; /** AiModule options (default: a dummy openai provider). */ aiOptions?: AiModuleOptions; } /** * Boots a NestJS testing module with `AiModule` and a `ProviderRegistry` * overridden to serve mock models — no API keys or network. Returns the * initialized module; `get()` your agents/services from it. * * @example * ```ts * const app = await createTestingAiModule({ * model: createMockModel('Hello!'), * providers: [MyAgent], * }); * const { text } = await app.get(MyAgent).run('hi'); * ``` */ declare function createTestingAiModule(options?: TestingAiModuleOptions): Promise; export { type TestingAiModuleOptions, createEmbeddingMock, createMockModel, createTestingAiModule };