| 1433 | } |
| 1434 | |
| 1435 | export function registerHookCallbacks( |
| 1436 | hooks: Partial<Record<HookEvent, RegisteredHookMatcher[]>>, |
| 1437 | ): void { |
| 1438 | if (!STATE.registeredHooks) { |
| 1439 | STATE.registeredHooks = {} |
| 1440 | } |
| 1441 | |
| 1442 | // `registerHookCallbacks` may be called multiple times, so we need to merge (not overwrite) |
| 1443 | for (const [event, matchers] of Object.entries(hooks)) { |
| 1444 | const eventKey = event as HookEvent |
| 1445 | if (!STATE.registeredHooks[eventKey]) { |
| 1446 | STATE.registeredHooks[eventKey] = [] |
| 1447 | } |
| 1448 | STATE.registeredHooks[eventKey]!.push(...matchers) |
| 1449 | } |
| 1450 | } |
| 1451 | |
| 1452 | export function getRegisteredHooks(): Partial< |
| 1453 | Record<HookEvent, RegisteredHookMatcher[]> |