/** * Monomind-owned hooks in .claude/settings.json: find them, add the ones an * older install is missing, and fix timeouts written in milliseconds. * * A hook is monomind-owned when its command runs a script under * `.claude/helpers/` (hook-handler.cjs, handlers/capture-handler.cjs, * auto-memory-hook.mjs, standalone helpers). Every other hook is the user's * and is never touched. * * Claude Code reads a hook `timeout` in SECONDS. Installs before 2.17 wrote * milliseconds (4000, 10000, ...), which Claude Code reads as hours. No real * hook timeout is over 600 s, so a monomind-owned timeout above 600 is a * millisecond value. */ /** A single hook command entry inside a hook group's `hooks` array. */ export interface HookEntry { type?: string; command?: string; timeout?: number; [key: string]: unknown; } /** A hook group as it appears in settings.json's `hooks.` arrays. */ export interface HookGroup { matcher?: string; hooks?: HookEntry[]; [key: string]: unknown; } export type HooksByEvent = Record; /** Largest timeout (seconds) treated as already in seconds. */ export declare const MAX_SECONDS_TIMEOUT = 600; /** * `