/**
 * Tool Similarity Service
 *
 * Groups tool spans by name + configurable key arguments.
 * This allows users to see "similar" tool invocations grouped together.
 */
import { CategorizedSpan, ToolSimilarityConfig, ToolGroup } from '../../types/index.js';
/**
 * Extract all unique argument keys from tool spans.
 * Used to populate the config UI with available options.
 */
export declare function extractCommonArgKeys(spans: CategorizedSpan[]): string[];
/**
 * Group tool spans by name + key argument values.
 * Non-tool spans are returned ungrouped.
 */
export declare function groupToolSpans(spans: CategorizedSpan[], config: ToolSimilarityConfig): {
    groupedSpans: CategorizedSpan[];
    toolGroups: ToolGroup[];
};
/**
 * Calculate similarity score between two tool spans (0-1).
 * Used for comparison view to identify matching tools.
 */
export declare function calculateToolSimilarity(left: CategorizedSpan, right: CategorizedSpan, config: ToolSimilarityConfig): number;
/**
 * Get summary statistics for tool groups
 */
export declare function getToolGroupStats(groups: ToolGroup[]): {
    totalTools: number;
    uniqueTools: number;
    mostFrequent: ToolGroup | null;
    longestDuration: ToolGroup | null;
};
//# sourceMappingURL=toolSimilarity.d.ts.map