File size: 357 Bytes
3833190 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
type allowedHooks = "overlayClick";
let registeredHooks: Partial<{ [key in allowedHooks]: () => void }> = {};
export function register(hook: allowedHooks, callback: () => void) {
registeredHooks[hook] = callback;
}
export function trigger(hook: allowedHooks) {
registeredHooks[hook]?.();
}
export function destroyHooks() {
registeredHooks = {};
}
|