export type HookCommand = { type: 'command'; command: string; }; export type HookEntry = { matcher: string; hooks: HookCommand[]; }; export type ClaudeSettingsJson = { [key: string]: unknown; permissions?: { allow?: string[]; }; hooks?: { [key: string]: HookEntry[] | undefined; UserPromptSubmit?: HookEntry[]; }; _setupAgentsVersion?: string; }; /** * Pure function that merges hook entries into an existing settings object. * If a hook with `sa-fast` in its command already exists, it is updated in place. * Otherwise the new hook is appended. */ export declare function mergeHooks(existing: ClaudeSettingsJson, hooks: HookEntry[]): ClaudeSettingsJson; /** * Generates or merges `.claude/settings.json` with the UserPromptSubmit hook * that injects task/workflow state into Claude sessions. */ export declare function writeClaudeSettings(opts: { cwd: string; version: string; }): void;