@log4brains/core
Version:
Log4brains architecture knowledge base core API
29 lines • 1.01 kB
TypeScript
import { Log4brainsConfig } from "../config";
export declare type FileWatcherEventType = "add" | "addDir" | "change" | "unlink" | "unlinkDir";
export declare type FileWatcherEvent = {
type: FileWatcherEventType;
relativePath: string;
};
export declare type FileWatcherObserver = (event: FileWatcherEvent) => void;
export declare type FileWatcherUnsubscribeCb = () => void;
declare type Deps = {
config: Log4brainsConfig;
workdir: string;
};
/**
* Watch files located in the main ADR folder, and in each package's ADR folder.
* Useful for Hot Reloading.
* The caller is responsible for starting and stopping it!
*/
export declare class FileWatcher {
private readonly config;
private readonly workdir;
private chokidar;
private observers;
constructor({ config, workdir }: Deps);
subscribe(cb: FileWatcherObserver): FileWatcherUnsubscribeCb;
start(): void;
stop(): Promise<void>;
}
export {};
//# sourceMappingURL=FileWatcher.d.ts.map