/** * Dialect-tolerant tool-name heal + role-based arg key folds. * * Cursor/Claude models emit TitleCase names (Bash, Read, StrReplace) and * snake_case args (file_path, old_string). OpenCode advertises lowercase * camelCase (bash/filePath). This module maps requested names onto the * client's advertised catalog and re-keys args toward schema-declared names. */ declare const fold: (s: string) => string; export declare function roleForToolName(name: string): string | null; /** Cursor/Claude aliases belonging to the same semantic role as a tool name. */ export declare function aliasesForToolName(name: string): readonly string[]; /** * Heal a requested tool name to one the client advertised. * Order: exact → unique fold match → role map → null (never guess on ambiguity). */ export declare function resolveAdvertisedToolName(name: string, advertisedNames: readonly string[]): string | null; export declare function rekeyArgsForSchema(toolName: string, args: Record, knownParams?: Set | null): Record; export declare function conflictingToolArgAliases(toolName: string, args: Record, knownParams?: Set | null): Array<{ target: string; keys: string[]; }>; /** Closest advertised names by shared fold prefix (for unknown-tool errors). */ export declare function closestToolNames(name: string, advertisedNames: readonly string[], limit?: number): string[]; export { fold as foldToolName };