import type { IFileReader, IFileWriter } from "../../core/ports/filesystem.port.js"; import type { ILogger } from "../../core/ports/logger.port.js"; export type ClaudeHookScope = "project" | "user"; export type InstallClaudeHookArgs = { readonly cwd: string; readonly scope: ClaudeHookScope; readonly force: boolean; }; export type InstallClaudeHookDeps = { readonly reader: IFileReader; readonly writer: IFileWriter; readonly logger: ILogger; readonly homeDir: () => string; }; export type InstallClaudeHookResult = { readonly written: boolean; readonly targetPath: string; readonly alreadyInstalled: boolean; }; export declare class InstallClaudeHookUseCase { private readonly deps; constructor(deps: InstallClaudeHookDeps); execute(args: InstallClaudeHookArgs): Promise; private resolveTarget; }