watcher/dist_ts/watcher_handler.d.ts
2024-04-18 21:12:37 +02:00

37 lines
1.8 KiB
TypeScript

/// <reference types="node" resolution-mode="require"/>
/// <reference types="node" resolution-mode="require"/>
import { FSTargetEvent } from './enums.js';
import type Watcher from './watcher.js';
import type { Event, FSWatcher, Handler, HandlerBatched, Path, WatcherOptions, WatcherConfig } from './types.js';
declare class WatcherHandler {
base?: WatcherHandler;
watcher: Watcher;
handler: Handler;
handlerBatched: HandlerBatched;
fswatcher: FSWatcher;
options: WatcherOptions;
folderPath: Path;
filePath?: Path;
constructor(watcher: Watcher, config: WatcherConfig, base?: WatcherHandler);
_isSubRoot(targetPath: Path): boolean;
_makeHandlerBatched(delay?: number): (event: FSTargetEvent, targetPath?: Path, isInitial?: boolean) => Promise<void>;
eventsDeduplicate(events: Event[]): Event[];
eventsPopulate(targetPaths: Path[], events?: Event[], isInitial?: boolean): Promise<Event[]>;
eventsPopulateAddDir(targetPaths: Path[], targetPath: Path, events?: Event[], isInitial?: boolean): Promise<Event[]>;
eventsPopulateUnlinkDir(targetPaths: Path[], targetPath: Path, events?: Event[], isInitial?: boolean): Promise<Event[]>;
onTargetAdd(targetPath: Path): void;
onTargetAddDir(targetPath: Path): void;
onTargetChange(targetPath: Path): void;
onTargetUnlink(targetPath: Path): void;
onTargetUnlinkDir(targetPath: Path): void;
onTargetEvent(event: Event): void;
onTargetEvents(events: Event[]): void;
onWatcherEvent(event?: FSTargetEvent, targetPath?: Path, isInitial?: boolean): Promise<void>;
onWatcherChange(event?: FSTargetEvent, targetName?: string | null): void;
onWatcherError(error: NodeJS.ErrnoException): void;
init(): Promise<void>;
initWatcherEvents(): Promise<void>;
initInitialEvents(): Promise<void>;
}
export default WatcherHandler;