import type { PlatformInfo } from "./platform.js"; export type DepStatus = "installed" | "just-installed" | "missing" | "skipped"; export interface DepResult { name: string; required: boolean; recommended?: boolean; status: DepStatus; version?: string; installHint: string; } export interface InstallCommands { brew?: string; apt?: string; dnf?: string; pacman?: string; npm?: string; winget?: string; choco?: string; } export interface Dep { name: string; command: string; /** Blocks the scaffold when missing. Only node + git qualify. */ required: boolean; /** * Not needed to create an HQ, but needed to use it. Missing recommended * deps are reported as next steps instead of blocking (DEF-001). */ recommended?: boolean; installHint: string; autoInstallable: boolean; installCommands: InstallCommands; } /** * Pick the best install command for a dep given the detected platform. * Prefers the system package manager, falls back to npm if available. * Returns null when no suitable command exists (e.g. Node.js — manual install). */ export declare function getInstallCommand(dep: Dep, platform: PlatformInfo): string | null; export interface DepCheckResult { allRequired: boolean; /** Recommended-but-missing deps, for the "install these next" report. */ missingRecommended: DepResult[]; } export declare function checkDeps(): Promise; //# sourceMappingURL=deps.d.ts.map