UNPKG

vibe-coder-mcp

Version:

Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.

88 lines 2.48 kB
export type SearchStrategy = 'fuzzy' | 'exact' | 'regex' | 'glob' | 'content'; export interface FileSearchOptions { pattern?: string; glob?: string; content?: string; fileTypes?: string[]; maxResults?: number; includeContent?: boolean; searchStrategy?: SearchStrategy; cacheResults?: boolean; maxFileSize?: number; excludeDirs?: string[]; caseSensitive?: boolean; minScore?: number; } export interface FileSearchResult { filePath: string; score: number; matchType: 'name' | 'content' | 'glob' | 'fuzzy' | 'exact'; preview?: string; lineNumbers?: number[]; relevanceFactors: string[]; metadata?: { size: number; lastModified: Date; extension: string; }; } export interface SearchMetrics { searchTime: number; filesScanned: number; resultsFound: number; cacheHitRate: number; memoryUsage: number; strategy: SearchStrategy; } export interface CacheEntry { query: string; options: FileSearchOptions; results: FileSearchResult[]; timestamp: Date; ttl: number; hitCount: number; } export interface CacheStats { totalEntries: number; hitRate: number; memoryUsage: number; evictions: number; avgQueryTime: number; } export interface FileIteratorOptions { excludeDirs: Set<string>; fileTypes: Set<string> | null; maxDepth?: number; securityCheckFn?: (path: string) => Promise<boolean>; } export interface FileEvaluation { matches: boolean; result?: FileSearchResult; } export interface StreamingOptions extends FileSearchOptions { streamingEnabled?: boolean; onResult?: (result: FileSearchResult) => void; memoryLimit?: number; } export declare class FuzzyMatcher { static calculateScore(query: string, target: string, caseSensitive?: boolean): number; private static levenshteinDistance; } export declare class GlobMatcher { static globToRegex(pattern: string): RegExp; private static escapeAndConvert; static matches(pattern: string, path: string): boolean; } export declare class PriorityQueue<T> { private items; private compareFn; private maxSize; constructor(compareFn: (a: T, b: T) => number, maxSize: number); add(item: T): void; toArray(): T[]; get size(): number; get isFull(): boolean; getMinScore(scoreFn: (item: T) => number): number | undefined; clear(): void; } //# sourceMappingURL=search-strategies.d.ts.map