import { AtomicTask } from '../types/task.js'; import { FileOperationResult } from '../utils/file-utils.js'; import { VibeTaskManagerConfig } from '../utils/config-loader.js'; export interface BatchConfig { batchSize: number; concurrentOperations: number; enableCompression: boolean; retryAttempts: number; retryDelay: number; } export interface FileIndexEntry { id: string; filePath: string; size: number; lastModified: Date; compressed: boolean; checksum?: string; } export interface BatchOperationResult { success: boolean; results: T[]; errors: Array<{ id: string; error: string; }>; totalProcessed: number; duration: number; memoryUsage: number; } export interface LazyLoadConfig { enabled: boolean; pageSize: number; preloadPages: number; cacheSize: number; } export declare class TaskFileManager { private static instance; private config; private fileIndex; private loadedTasks; private lazyLoadCache; private memoryManager; private securityEngine; private indexFilePath; private dataDirectory; private constructor(); private validateSecurePath; static getInstance(config?: VibeTaskManagerConfig['taskManager']['performance']['fileSystem'], dataDirectory?: string): TaskFileManager; initialize(): Promise>; private loadFileIndex; private saveFileIndex; saveTask(task: AtomicTask): Promise>; loadTask(taskId: string): Promise>; batchSaveTasks(tasks: AtomicTask[]): Promise>; private getTaskFilePath; private updateFileIndex; private performCleanup; getStatistics(): { indexedFiles: number; memoryCache: number; lazyLoadCache: number; totalFileSize: number; compressionRatio: number; }; shutdown(): Promise; } export declare function getTaskFileManager(): TaskFileManager | null; //# sourceMappingURL=task-file-manager.d.ts.map