/** * Agency connection interface and factory. * Provides abstraction for connecting to Agency MCP. */ import type { Logger } from '@generacy-ai/workflow-engine'; /** * Agency connection mode */ export type AgencyMode = 'subprocess' | 'network'; /** * Tool call request */ export interface ToolCallRequest { /** Tool name */ name: string; /** Tool arguments */ arguments: Record; } /** * Tool call response */ export interface ToolCallResponse { /** Whether the call succeeded */ success: boolean; /** Result data if successful */ result?: unknown; /** Error message if failed */ error?: string; } /** * Agency connection interface */ export interface AgencyConnection { /** Connect to the agency */ connect(): Promise; /** Disconnect from the agency */ disconnect(): Promise; /** Check if connected */ isConnected(): boolean; /** List available tools */ listTools(): Promise; /** Call a tool */ callTool(request: ToolCallRequest): Promise; } /** * Agency connection options */ export interface AgencyConnectionOptions { /** Connection mode */ mode: AgencyMode; /** Logger instance */ logger: Logger; /** Agency URL for network mode */ url?: string; /** Agency command for subprocess mode */ command?: string; /** Connection timeout in milliseconds */ timeout?: number; } /** * Create an agency connection based on mode */ export declare function createAgencyConnection(options: AgencyConnectionOptions): Promise; export { SubprocessAgency } from './subprocess.js'; export type { SubprocessAgencyOptions } from './subprocess.js'; export { NetworkAgency } from './network.js'; export type { NetworkAgencyOptions } from './network.js'; //# sourceMappingURL=index.d.ts.map