import { SearchResult, SearchFilters, CallGraphHierarchy } from './types'; import { DatabaseNode, DatabaseRelationship } from '../database/types'; import { CodeGraphDatabase } from '../database/Database'; export declare class GraphSearch { private database; private queryBuilder; constructor(database: CodeGraphDatabase); findCallers(symbolId: string, maxDepth?: number, filters?: SearchFilters): Promise; findCallees(symbolId: string, maxDepth?: number, filters?: SearchFilters): Promise; findReferences(symbolId: string, filters?: SearchFilters): Promise; findImplementations(interfaceId: string, filters?: SearchFilters): Promise; findDependencies(nodeId: string, direction?: 'inbound' | 'outbound', filters?: SearchFilters): Promise; buildCallGraph(symbolId: string, direction: 'callers' | 'callees', maxDepth?: number): Promise<{ nodes: DatabaseNode[]; relationships: DatabaseRelationship[]; hierarchy: CallGraphHierarchy; }>; findInheritanceChain(classId: string, direction?: 'ancestors' | 'descendants'): Promise; findUsages(symbolId: string, includeTransitive?: boolean): Promise; findModuleDependencies(moduleId: string): Promise<{ imports: SearchResult[]; exports: SearchResult[]; dependents: SearchResult[]; }>; analyzeImpact(symbolId: string, maxDepth?: number): Promise<{ directImpact: SearchResult[]; transitiveImpact: SearchResult[]; impactScore: number; }>; private traverseGraph; private findRelatedNodes; private findTransitiveUsages; private findTransitiveImpact; private getCallRelationships; private buildHierarchy; private convertNodesToResults; private applyFilters; private calculateGraphScore; private calculateImpactScore; private deduplicateNodes; private parseNodeFromRow; } //# sourceMappingURL=GraphSearch.d.ts.map