15 lines
423 B
TypeScript
15 lines
423 B
TypeScript
import type { RelativePath } from "../persistence/database";
|
|
|
|
export class FileChangeNotifier {
|
|
private readonly listeners: ((filePath: RelativePath) => unknown)[] = [];
|
|
|
|
public addFileChangeListener(
|
|
listener: (filePath: RelativePath) => unknown
|
|
): void {
|
|
this.listeners.push(listener);
|
|
}
|
|
|
|
public notifyOfFileChange(filePath: RelativePath): void {
|
|
this.listeners.forEach((listener) => listener(filePath));
|
|
}
|
|
}
|