/** * [WHO]: wrapRegisteredTool() * [FROM]: Depends on agent-core, extensions/runner, extensions/types * [TO]: Consumed by core/extensions-host/index.ts * [HERE]: core/extensions-host/wrapper.ts - wraps RegisteredTool into AgentTool */ import type { AgentTool } from "@catui/agent-core"; import type { ExtensionRunner } from "./runner.js"; import type { RegisteredTool } from "./types.js"; /** * Wrap a RegisteredTool into an AgentTool. * Uses the runner's createContext() for consistent context across tools and event handlers. */ export declare function wrapRegisteredTool(registeredTool: RegisteredTool, runner: ExtensionRunner): AgentTool; /** * Wrap all registered tools into AgentTools. * Uses the runner's createContext() for consistent context across tools and event handlers. */ export declare function wrapRegisteredTools(registeredTools: RegisteredTool[], runner: ExtensionRunner): AgentTool[]; /** * Wrap a tool with extension callbacks for interception. * - Emits tool_call event before execution (can block) * - Emits tool_result event after execution (can modify result) */ export declare function wrapToolWithExtensions(tool: AgentTool, runner: ExtensionRunner): AgentTool; /** * Wrap all tools with extension callbacks. */ export declare function wrapToolsWithExtensions(tools: AgentTool[], runner: ExtensionRunner): AgentTool[];