/** * Built-in programmatic hooks. Registered by id; invoked via HookDispatcher * when a registration has handler='builtin' and target=. */ import type { UnifiedHookPayload, UnifiedHookResult } from './hooks.js'; export type BuiltInHookFn = (payload: UnifiedHookPayload) => Promise | UnifiedHookResult; export interface BuiltInHookEntry { id: string; description: string; /** If set, only runs for this agent. '*' or undefined = any. */ agent?: string; fn: BuiltInHookFn; } /** Registry of programmatic built-in hooks. */ export declare class BuiltInHooksRegistry { private readonly entries; constructor(logPath?: string); register(entry: BuiltInHookEntry): void; get(id: string): BuiltInHookEntry | undefined; list(agent?: string): BuiltInHookEntry[]; run(id: string, payload: UnifiedHookPayload): Promise; } /** Process-wide default registry. */ export declare const builtInHooks: BuiltInHooksRegistry;