import { type SetupCommandResult, type SetupCommandSpec } from "./commands.js"; type PrerequisiteMode = "setup" | "doctor" | "update"; type PythonLauncherCandidate = { command: string; args: string[]; label: string; }; type PythonDiscoveryAttempt = { label: string; version?: string; }; export type PythonLauncher = PythonLauncherCandidate & { version: string; }; export type PrerequisiteCheckResult = { label: string; ok: boolean; detail: string; }; export type PythonPrerequisiteCheckResult = PrerequisiteCheckResult & { attempts: PythonDiscoveryAttempt[]; selectedLauncher?: PythonLauncher; supportedLaunchers: PythonLauncher[]; }; export declare function isSupportedPythonVersion(version: string): boolean; export declare function buildPythonCommandSpec(launcher: Pick, args: string[], extra?: Omit): SetupCommandSpec; export declare function discoverPythonLaunchers(dependencies?: { platform?: NodeJS.Platform; runCommand?: (spec: SetupCommandSpec) => Promise; }): Promise>; export declare function checkNodePrerequisite(dependencies?: { mode?: PrerequisiteMode; nodeVersion?: string; platform?: NodeJS.Platform; }): PrerequisiteCheckResult; export declare function checkGitPrerequisite(dependencies?: { mode?: PrerequisiteMode; runCommand?: (spec: SetupCommandSpec) => Promise; }): Promise; export declare function checkPythonPrerequisite(dependencies?: { mode?: PrerequisiteMode; platform?: NodeJS.Platform; runCommand?: (spec: SetupCommandSpec) => Promise; }): Promise; export {};