@aaswe/codebase-ai
Version:
AI-Assisted Software Engineering (AASWE) - Rich codebase context for IDE LLMs
49 lines • 1.46 kB
TypeScript
/**
* File Watcher Service
* Handles real-time file system monitoring for code changes and TTL file synchronization
*/
import { EventEmitter } from 'events';
import { FileStats, Repository, FileWatcherConfig } from './types';
export declare class FileWatcher extends EventEmitter {
private watchers;
private repositories;
private config;
constructor(config?: Partial<FileWatcherConfig>);
/**
* Initialize file watcher service
*/
initialize(): Promise<void>;
/**
* Start watching a repository
*/
startWatching(repository: Repository): Promise<void>;
/**
* Stop watching a repository
*/
stopWatching(watcherId: string): Promise<void>;
/**
* Get watched files for a repository
*/
getWatchedFiles(repositoryId: string): Promise<string[]>;
/**
* Check if a file should be watched based on repository configuration
*/
shouldWatchFile(repositoryId: string, filePath: string): boolean;
/**
* Get file statistics
*/
getFileStats(filePath: string): Promise<FileStats>;
/**
* Cleanup all watchers
*/
cleanup(): Promise<void>;
private createWatchPatterns;
private setupWatcherEvents;
private createFileWatchEvent;
private handleFileEvent;
private handleTTLFileChange;
private detectFileLanguage;
private setupErrorHandling;
}
export default FileWatcher;
//# sourceMappingURL=FileWatcher.d.ts.map