@aaswe/codebase-ai
Version:
AI-Assisted Software Engineering (AASWE) - Rich codebase context for IDE LLMs
65 lines • 1.98 kB
TypeScript
/**
* RDF Files Storage Layer
*
* Implements RDF file-based storage for the Hybrid Storage Manager
* with file watching, backup capabilities, and TTL parsing.
*/
import { EventEmitter } from 'events';
import { StorageInterface, StorageLayer, StorageLayerHealth, QueryContext, QueryResult, RDFStorageConfig } from './types';
export declare class RDFStorageLayer extends EventEmitter implements StorageInterface {
private config;
readonly layer = StorageLayer.RDF_FILES;
private files;
private watcher;
private syncTimer;
private isInitialized;
private metrics;
constructor(config: RDFStorageConfig);
/**
* Initialize the RDF storage layer
*/
initialize(): Promise<void>;
/**
* Execute a query against RDF files
*/
query<T = any>(query: string, params?: Record<string, any>, context?: QueryContext): Promise<QueryResult<T>>;
/**
* Create a new RDF file
*/
create(data: any, _context?: QueryContext): Promise<QueryResult<any>>;
/**
* Update an RDF file
*/
update(filePath: string, data: any, _context?: QueryContext): Promise<QueryResult<any>>;
/**
* Delete an RDF file
*/
delete(filePath: string, _context?: QueryContext): Promise<QueryResult<boolean>>;
/**
* Perform health check
*/
healthCheck(): Promise<StorageLayerHealth>;
/**
* Get storage metrics
*/
getMetrics(): Promise<Record<string, any>>;
/**
* Shutdown the RDF storage layer
*/
shutdown(): Promise<void>;
private loadRDFFiles;
private setupFileWatcher;
private handleFileChange;
private setupSyncTimer;
private syncFiles;
private executeRDFQuery;
private matchesQuery;
private parseTTL;
private convertToTTL;
private generateFileName;
private createBackup;
private updateFileMetrics;
private updateMetrics;
}
export default RDFStorageLayer;
//# sourceMappingURL=RDFStorageLayer.d.ts.map