AIDK API Reference / aidk/hooks / HookRegistry
Class: HookRegistry<THookName, TSelector, THookMiddleware> ​
Defined in: packages/core/src/hooks/hook-registry.ts:8
Generic hook registry that can be used for any hook system.
Type Parameters ​
| Type Parameter | Description |
|---|---|
THookName extends string | number | symbol | The hook name type (e.g., 'onMount', 'render', 'generate', etc.) |
TSelector | The selector type for scoping hooks (e.g., string, Function, object, etc.) |
THookMiddleware | The middleware type for hooks |
Constructors ​
Constructor ​
new HookRegistry<THookName, TSelector, THookMiddleware>(): HookRegistry<THookName, TSelector, THookMiddleware>;Returns ​
HookRegistry<THookName, TSelector, THookMiddleware>
Methods ​
clear() ​
clear(): void;Defined in: packages/core/src/hooks/hook-registry.ts:132
Clear all hooks.
Returns ​
void
clearHook() ​
clearHook(hookName: THookName): void;Defined in: packages/core/src/hooks/hook-registry.ts:125
Clear all hooks for a given hook name.
Parameters ​
| Parameter | Type |
|---|---|
hookName | THookName |
Returns ​
void
getHookMap() ​
getHookMap(hookName: THookName):
| Map<TSelector | undefined, THookMiddleware[]>
| undefined;Defined in: packages/core/src/hooks/hook-registry.ts:118
Get all registered hooks for a given hook name. Useful for debugging or introspection.
Parameters ​
| Parameter | Type |
|---|---|
hookName | THookName |
Returns ​
| Map<TSelector | undefined, THookMiddleware[]> | undefined
getMiddleware() ​
getMiddleware(hookName: THookName, resolveSelectors: (hookMap: Map<TSelector | undefined, THookMiddleware[]>) => TSelector[]): THookMiddleware[];Defined in: packages/core/src/hooks/hook-registry.ts:83
Get all middleware for a hook, ordered by selector specificity.
Parameters ​
| Parameter | Type | Description |
|---|---|---|
hookName | THookName | The name of the hook |
resolveSelectors | (hookMap: Map<TSelector | undefined, THookMiddleware[]>) => TSelector[] | Function to resolve which selectors match for this hook call |
Returns ​
THookMiddleware[]
Array of middleware in order of specificity (most specific first)
register() ​
Call Signature ​
register(
hookName: THookName,
selector: TSelector | undefined,
middleware: THookMiddleware): void;Defined in: packages/core/src/hooks/hook-registry.ts:20
Register middleware for a hook.
Overloads:
- register(hookName, selector, middleware) - specific hook, specific selector
- register(hookName, middleware) - specific hook, global selector
- register(selector, middleware) - all hooks, specific selector (requires getAllHookNames)
- register(middleware) - all hooks, global selector (requires getAllHookNames)
Parameters ​
| Parameter | Type |
|---|---|
hookName | THookName |
selector | TSelector | undefined |
middleware | THookMiddleware |
Returns ​
void
Call Signature ​
register(hookName: THookName, middleware: THookMiddleware): void;Defined in: packages/core/src/hooks/hook-registry.ts:21
Register middleware for a hook.
Overloads:
- register(hookName, selector, middleware) - specific hook, specific selector
- register(hookName, middleware) - specific hook, global selector
- register(selector, middleware) - all hooks, specific selector (requires getAllHookNames)
- register(middleware) - all hooks, global selector (requires getAllHookNames)
Parameters ​
| Parameter | Type |
|---|---|
hookName | THookName |
middleware | THookMiddleware |
Returns ​
void
Call Signature ​
register(selector: TSelector, middleware: THookMiddleware): void;Defined in: packages/core/src/hooks/hook-registry.ts:22
Register middleware for a hook.
Overloads:
- register(hookName, selector, middleware) - specific hook, specific selector
- register(hookName, middleware) - specific hook, global selector
- register(selector, middleware) - all hooks, specific selector (requires getAllHookNames)
- register(middleware) - all hooks, global selector (requires getAllHookNames)
Parameters ​
| Parameter | Type |
|---|---|
selector | TSelector |
middleware | THookMiddleware |
Returns ​
void
Call Signature ​
register(middleware: THookMiddleware): void;Defined in: packages/core/src/hooks/hook-registry.ts:23
Register middleware for a hook.
Overloads:
- register(hookName, selector, middleware) - specific hook, specific selector
- register(hookName, middleware) - specific hook, global selector
- register(selector, middleware) - all hooks, specific selector (requires getAllHookNames)
- register(middleware) - all hooks, global selector (requires getAllHookNames)
Parameters ​
| Parameter | Type |
|---|---|
middleware | THookMiddleware |
Returns ​
void