import type { JsonSchema } from "../extensions/schema/index.js"; import type { Tool, ToolConfig, ToolExecutionContext, ToolSet } from "./types.js"; type HostToolExecute = { bivarianceHack: (input: unknown, options?: ToolExecutionContext) => Promise | unknown; }["bivarianceHack"]; /** Definition for host tool. */ export type HostToolDefinition = { id?: string; type?: Tool["type"]; /** Owning agent id retained for owner-aware hosted tool selection. */ ownerAgentId?: string; /** Short selector accepted by the owning agent's `tools:` configuration. */ shortName?: string; title?: string; description?: string; inputSchema?: unknown; inputSchemaJson?: JsonSchema; parameters?: unknown; providerOptions?: unknown; execute?: Tool["execute"] | HostToolExecute; mcp?: ToolConfig["mcp"]; }; /** Public API contract for host tool set. */ export type HostToolSet = Record; /** Options accepted by host tool materialization. */ export interface HostToolMaterializationOptions { generateToolCallId?: (toolName: string) => string; } /** Create tools from host definitions. */ export declare function createToolsFromHostDefinitions(definitions: HostToolSet, options?: HostToolMaterializationOptions): ToolSet; /** Create tools from host definitions. */ export declare function createToolsFromHostDefinitions(definitions: Record, options?: HostToolMaterializationOptions): ToolSet; export {}; //# sourceMappingURL=host-tools.d.ts.map