37 lines
1.8 KiB
TypeScript
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;
|