/** * Host capability snapshot — what local tooling is available on the * current machine. Doctor and setup inject a capabilities object directly * so tests don't have to mock `which`. */ export interface HostCapabilities { /** True when the `safehouse` binary is on PATH. */ hasSafehouse: boolean; /** True when the `sbx` (Docker Sandboxes) binary is on PATH. */ hasSbx: boolean; /** True when the `cmux` binary is on PATH. */ hasCmux: boolean; /** True when the `tmux` binary is on PATH. */ hasTmux: boolean; /** True when the `zellij` binary is on PATH. */ hasZellij: boolean; /** True when the host platform is macOS. Safehouse is macOS-only. */ isMacOS: boolean; /** True when the host platform is Linux. */ isLinux: boolean; /** * True when the host platform is one Safehouse supports. Safehouse is * macOS-only at time of writing; local setup uses this to reject Linux * or WSL before creating a worktree. */ isSafehouseSupported: boolean; /** * True when sdx (Docker Sandboxes) is supportable on this platform — * sbx is published for both macOS and Linux, so this stays in sync with * "macOS || Linux". WSL inherits Linux capabilities transparently. */ isSdxSupported: boolean; } /** * Resolves a binary on PATH the same way `which` does. Returns the first * matching absolute path, or `undefined` if missing. Shared with `doctor` * so both the host detector and the user-facing report use one probe. */ export declare function which(cmd: string, signal?: AbortSignal): Promise; export declare function detectHostCapabilities(signal?: AbortSignal): Promise; //# sourceMappingURL=host.d.ts.map