UNPKG

n8n

Version:

n8n Workflow Automation Tool

46 lines (45 loc) 2.56 kB
import type { BuiltMemory, BuiltProviderTool, BuiltTool, CredentialProvider, FetchFn, McpClient, ModelConfig, ToolDescriptor, Agent as RuntimeAgent } from '@n8n/agents'; import type { AgentSkill, AgentJsonConfig, AgentJsonMcpServerConfig, AgentJsonMemoryConfig, AgentJsonToolConfig } from '@n8n/api-types'; import { z } from 'zod'; import { type ManagedEmbeddingProviderOptions, type ManagedEmbeddingProviderOptionsResolver } from './embedding-credential'; export type { ManagedEmbeddingProviderOptions, ManagedEmbeddingProviderOptionsResolver }; declare const WEB_SEARCH_INPUT_SCHEMA: z.ZodObject<{ query: z.ZodString; maxResults: z.ZodOptional<z.ZodNumber>; includeDomains: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; excludeDomains: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { query: string; maxResults?: number | undefined; includeDomains?: string[] | undefined; excludeDomains?: string[] | undefined; }, { query: string; maxResults?: number | undefined; includeDomains?: string[] | undefined; excludeDomains?: string[] | undefined; }>; export type FallbackWebSearchArgs = z.infer<typeof WEB_SEARCH_INPUT_SCHEMA>; export type FallbackWebSearchHandler = (args: FallbackWebSearchArgs) => Promise<unknown>; export type ToolResolver = (toolSchema: AgentJsonToolConfig) => Promise<BuiltTool | null | undefined>; export interface ToolExecutor { executeTool(toolName: string, input: unknown, ctx: unknown): Promise<unknown>; executeToMessageSync?(toolName: string, output: unknown): unknown; } export type MemoryFactory = (params: AgentJsonMemoryConfig) => BuiltMemory | Promise<BuiltMemory>; export type McpClientBuilder = (server: AgentJsonMcpServerConfig) => Promise<McpClient>; export interface BuildFromJsonOptions { toolExecutor: ToolExecutor; credentialProvider: CredentialProvider; resolveTool?: ToolResolver; skills?: Record<string, AgentSkill>; memoryFactory: MemoryFactory; buildMcpClient?: McpClientBuilder; resolveManagedEmbeddingProviderOptions?: ManagedEmbeddingProviderOptionsResolver; modelFetch?: FetchFn; webSearchFetch?: FetchFn; fallbackWebSearch?: FallbackWebSearchHandler; attachAuthPendingMcpServers?: boolean; } export declare function buildFromJson(config: AgentJsonConfig, toolDescriptors: Record<string, ToolDescriptor>, options: BuildFromJsonOptions): Promise<RuntimeAgent>; export declare function buildProviderToolsForModel(config: AgentJsonConfig, modelConfig: ModelConfig): BuiltProviderTool[];