export declare const ENV_VAR = "CLAUDE_CONFIG_DIR"; export interface DaemonInstallAccount { name: string; dir: string; priority: number; } export interface DaemonInstallDeps { configHome: string; accounts: () => DaemonInstallAccount[]; getActive: () => string | null; setActive: (name: string) => void; setJunction: (linkPath: string, targetDir: string) => void; setUserEnvVar: (name: string, value: string) => void; unsetUserEnvVar: (name: string) => void; removeJunction: (linkPath: string) => void; log: (message: string) => void; } export interface InstallResult { ok: boolean; active?: string; linkPath?: string; } /** The `active` junction path inside the config home. */ export declare function activeLinkPath(configHome: string): string; /** * Point the OS-level CLAUDE_CONFIG_DIR at a junction that targets the active * account, so every Claude client (terminal, extension, cron) follows it. Pure * orchestration: every side effect is injected, so it is fully testable. */ export declare function installDaemon(deps: DaemonInstallDeps): InstallResult; /** Reverse install: unset the env var and remove the junction (never touches ~/.claude). */ export declare function uninstallDaemon(deps: DaemonInstallDeps): InstallResult;