13 lines
374 B
TypeScript
13 lines
374 B
TypeScript
const disposers = new Set<(directory: string) => Promise<void>>()
|
|
|
|
export function registerDisposer(disposer: (directory: string) => Promise<void>) {
|
|
disposers.add(disposer)
|
|
return () => {
|
|
disposers.delete(disposer)
|
|
}
|
|
}
|
|
|
|
export async function disposeInstance(directory: string) {
|
|
await Promise.allSettled([...disposers].map((disposer) => disposer(directory)))
|
|
}
|