cost-claude
Version:
Claude Code cost monitoring, analytics, and optimization toolkit
36 lines • 943 B
TypeScript
import { EventEmitter } from 'events';
export interface WatcherConfig {
paths: string[];
pollInterval?: number;
debounceDelay?: number;
ignoreInitial?: boolean;
}
export interface FileChange {
path: string;
type: 'add' | 'change';
timestamp: Date;
}
export declare class ClaudeFileWatcher extends EventEmitter {
private config;
private watcher?;
private filePositions;
private debounceTimers;
private stateFile;
constructor(config: WatcherConfig);
start(): Promise<void>;
stop(): Promise<void>;
private expandPaths;
private isDirectory;
private handleFileAdd;
private handleFileChange;
private debounce;
private readNewMessages;
private loadFilePositions;
private saveFilePositions;
getStats(): {
watchedFiles: number;
totalBytesRead: number;
};
resetPositions(): Promise<void>;
}
//# sourceMappingURL=file-watcher.d.ts.map