import type { FilesystemChangeKind } from "@edenapp/types"; interface FilesystemWatcherOptions { resolveViewId: (webContentsId: number) => number | undefined; onViewRemoved: (listener: (viewId: number) => void) => () => void; notify: (viewId: number, event: { watchId: string; kind: FilesystemChangeKind; }) => void; } export declare class FilesystemWatcher { private readonly options; private readonly directoryWatches; private readonly viewWatches; private readonly stopViewRemovalListener; constructor(options: FilesystemWatcherOptions); watch(hostPath: string, callerWebContentsId: number | undefined): { watchId: string; }; unwatch(watchId: string, callerWebContentsId: number | undefined): void; invalidate(hostPath: string): void; dispose(): void; private resolveCallerView; private scheduleChange; private removeWatch; private removeViewWatches; } export {}; //# sourceMappingURL=FilesystemWatcher.d.ts.map