UNPKG

@sethdouglasford/claude-flow

Version:

Claude Code Flow - Advanced AI-powered development workflows with SPARC methodology

57 lines 1.88 kB
/** * Async File Manager * Handles non-blocking file operations with queuing */ import { Readable } from "node:stream"; export interface FileOperationResult { path: string; operation: "read" | "write" | "delete" | "mkdir"; success: boolean; duration: number; size?: number; error?: Error; } export declare class AsyncFileManager { private concurrency; private writeQueue; private readQueue; private logger; private metrics; constructor(concurrency?: { write: number; read: number; }); writeFile(path: string, data: string | Buffer | Readable, options?: { encoding?: BufferEncoding; mode?: number; }): Promise<FileOperationResult>; readFile(path: string, encoding?: BufferEncoding): Promise<FileOperationResult & { data?: string; }>; writeJSON(path: string, data: any, pretty?: boolean): Promise<FileOperationResult>; readJSON(path: string): Promise<FileOperationResult & { data?: any; }>; deleteFile(path: string): Promise<FileOperationResult>; ensureDirectory(path: string): Promise<FileOperationResult>; ensureDirectories(paths: string[]): Promise<FileOperationResult[]>; private streamWrite; streamRead(path: string): Promise<NodeJS.ReadableStream>; copyFile(source: string, destination: string): Promise<FileOperationResult>; moveFile(source: string, destination: string): Promise<FileOperationResult>; private trackOperation; getMetrics(): { operations: { [k: string]: number; }; totalBytes: number; errors: number; writeQueueSize: any; readQueueSize: any; writeQueuePending: any; readQueuePending: any; }; waitForPendingOperations(): Promise<void>; clearQueues(): void; } //# sourceMappingURL=async-file-manager.d.ts.map