import type { Database as DatabaseType } from 'better-sqlite3'; import type { Entity, EntityType, GraphStats, RelationType, Relationship } from './types.js'; export declare class GraphStorage { private db; constructor(db: DatabaseType); upsertEntity(entity: Omit): Entity; getEntity(canonicalId: string, type?: EntityType): Entity | null; getEntitiesByType(type: EntityType): Entity[]; getEntitiesBySource(sourcePath: string): Entity[]; deleteEntity(canonicalId: string, type?: EntityType): boolean; upsertRelationship(rel: Omit): Relationship; getRelationships(entityId: number, direction: 'outgoing' | 'incoming' | 'both'): Relationship[]; getRelationshipsByType(type: RelationType): Relationship[]; deleteRelationship(sourceId: number, targetId: number, type: RelationType): boolean; getNeighbors(entityId: number, relationType?: RelationType): Entity[]; getPath(fromId: number, toId: number, maxDepth: number, maxPaths?: number): Entity[][] | null; bulkUpsertEntities(entities: Entity[]): number; bulkUpsertRelationships(rels: Relationship[]): number; deleteEntitiesBySource(sourcePath: string): number; getStats(): GraphStats; searchEntities(query: string, limit: number): Entity[]; private getEntityById; } export declare function computeContentHash(content: string): string; export declare function hasChanged(storage: GraphStorage, sourcePath: string, currentHash: string): boolean; //# sourceMappingURL=storage.d.ts.map