UNPKG

@aaswe/codebase-ai

Version:

AI-Assisted Software Engineering (AASWE) - Rich codebase context for IDE LLMs

57 lines 1.82 kB
/** * Neo4j Storage Layer * * Implements the Neo4j storage interface for the Hybrid Storage Manager * with optimized graph operations and health monitoring. */ import { EventEmitter } from 'events'; import { StorageInterface, StorageLayer, StorageLayerHealth, QueryContext, QueryResult, Neo4jStorageConfig } from './types'; export declare class Neo4jStorageLayer extends EventEmitter implements StorageInterface { private config; readonly layer = StorageLayer.NEO4J; private driver; private isInitialized; private healthMetrics; constructor(config: Neo4jStorageConfig); /** * Initialize the Neo4j storage layer */ initialize(): Promise<void>; /** * Execute a query against Neo4j */ query<T = any>(query: string, params?: Record<string, any>, context?: QueryContext): Promise<QueryResult<T>>; /** * Create a new entity in Neo4j */ create(data: any, context?: QueryContext): Promise<QueryResult<any>>; /** * Update an entity in Neo4j */ update(id: string, data: any, context?: QueryContext): Promise<QueryResult<any>>; /** * Delete an entity from Neo4j */ delete(id: string, context?: QueryContext): Promise<QueryResult<boolean>>; /** * Perform health check */ healthCheck(): Promise<StorageLayerHealth>; /** * Get storage metrics */ getMetrics(): Promise<Record<string, any>>; /** * Shutdown the Neo4j storage layer */ shutdown(): Promise<void>; private verifyConnectivity; private determineAccessMode; private convertNeo4jValue; private convertNeo4jProperties; private buildCreateQuery; private buildUpdateQuery; private updateMetrics; } export default Neo4jStorageLayer; //# sourceMappingURL=Neo4jStorageLayer.d.ts.map