import type { ToolDefinition } from "../registry.js"; interface MetaToolConfig { /** Meta tool name (e.g. "app", "screen") */ name: string; /** Human-readable description */ description: string; /** Underlying tool definitions whose handlers are dispatched by action */ tools: ToolDefinition[]; /** Prefix stripped from tool names to derive action names (e.g. "app_") */ prefix: string; /** Additional inputSchema properties merged into the meta tool schema */ extraSchema?: Record; /** * Custom action name overrides: original tool name -> action name. * Used when stripping the prefix alone is not enough * (e.g. "clipboard_get_android" -> "clipboard_get"). */ actionOverrides?: Record; } export interface MetaToolResult { meta: ToolDefinition; aliases: Record; }>; } /** * Creates a meta tool that dispatches to underlying tools based on an `action` parameter. * * Eliminates boilerplate: each meta file previously repeated the same pattern of * building a handler map, defining an inputSchema with an action enum, and writing * a switch/dispatch handler. This factory encapsulates all of that. */ export declare function createMetaTool(config: MetaToolConfig): MetaToolResult; export {}; //# sourceMappingURL=create-meta-tool.d.ts.map