import { type ChannelSetupResult } from "./channel-setup.js"; interface ToolContent { content: Array<{ type: "text"; text: string; }>; } interface ToolDefinition { name: string; description: string; parameters: unknown; execute: (id: string, params: Record) => Promise; } interface ToolContext { senderIsOwner?: boolean; sessionKey?: string; config?: unknown; cfg?: unknown; runtimeConfig?: unknown; } type ToolFactory = (ctx: ToolContext) => ToolDefinition | null | undefined; interface ToolApi { registerTool(tool: ToolDefinition | ToolFactory, opts?: { optional?: boolean; name?: string; names?: string[]; }): void; } export declare const OPENCLAW_HOST_FLOOR: string; export declare function _resetToolsForTesting(): void; export declare function ownerRefusalText(reason: "known-non-owner" | "ambiguous" | "concurrent"): string; export declare function connectionTargetRefusalText(targetHandle: string): string; export declare function cardWriteRefusalText(reason: "known-non-owner" | "ambiguous" | "concurrent"): string; export declare function formatChannelSetupResult(result: ChannelSetupResult): string; export declare function registerTools(api: ToolApi): void; export {}; //# sourceMappingURL=tools.d.ts.map