export interface FileUpdate { path: string; diff?: string; } export interface SyncResult { updated: Array; skipped: Array; created: Array; deleted: Array; sourceFiles: Array; errors: Array; } export interface SyncOptions { deleteRemoved?: boolean; previousSourceFiles?: Set; } export declare class FileSyncer { sync(sourceDir: string, targetDir: string, options?: SyncOptions): Promise; private syncDirectory; private shouldUpdateFile; private calculateHash; private shouldSkipDirectory; private shouldSkipFile; private deleteRemovedFiles; }