UNPKG

knowledgegraph-mcp

Version:

MCP server for enabling persistent knowledge storage for Claude through a knowledge graph with multiple storage backends

39 lines 1.83 kB
import { Entity } from '../../core.js'; import { SearchStrategy, SearchConfig } from '../types.js'; /** * Base class for search strategies with common functionality */ export declare abstract class BaseSearchStrategy implements SearchStrategy { protected config: SearchConfig; constructor(config: SearchConfig); abstract canUseDatabase(): boolean; abstract searchDatabase(query: string | string[], threshold: number, project?: string): Promise<Entity[]>; abstract searchClientSide(entities: Entity[], query: string | string[]): Entity[]; abstract getAllEntities(project?: string): Promise<Entity[]>; /** * Exact search implementation for backward compatibility */ protected exactSearch(query: string, entities: Entity[]): Entity[]; /** * Filter entities by exact tags */ protected filterByExactTags(entities: Entity[], exactTags: string[], tagMatchMode?: 'any' | 'all'): Entity[]; /** * Helper method to handle multiple queries with deduplication */ protected searchMultipleDatabase(queries: string[], threshold: number, project?: string): Promise<Entity[]>; /** * Helper method to handle multiple queries for client-side search with deduplication */ protected searchMultipleClientSide(entities: Entity[], queries: string[]): Entity[]; /** * Chunked client-side search for large entity sets * Processes entities in chunks to improve performance and memory usage */ protected searchClientSideChunked(entities: Entity[], query: string | string[], chunkSize: number): Entity[]; /** * Chunked client-side search for multiple queries */ protected searchMultipleClientSideChunked(entities: Entity[], queries: string[], chunkSize: number): Entity[]; } //# sourceMappingURL=base-strategy.d.ts.map