/**
 * Fuzzy Search for MCP Tools
 * Uses Fuse.js for semantic-like matching
 */
import type { ToolDefinition, ToolSearchResult } from '../types.js';
interface FuzzyOptions {
    threshold?: number;
    keys?: string[];
}
export declare class ToolSearchIndex {
    private tools;
    private options;
    private pathIndex;
    constructor(options?: FuzzyOptions);
    addTools(tools: ToolDefinition[]): void;
    clear(): void;
    search(query: string, limit?: number): ToolSearchResult[];
    searchByServer(serverName: string, limit?: number): ToolSearchResult[];
    getAllTools(): ToolDefinition[];
    getToolByPath(path: string): ToolDefinition | undefined;
    getStats(): {
        servers: number;
        tools: number;
    };
}
export {};
//# sourceMappingURL=fuzzy.d.ts.map