export interface PackageUpdateCheckOptions { packageName: string; currentVersion: string; distTag?: "latest" | "beta"; cacheDir?: string; now?: Date; fetchLatestVersion?: (packageName: string, distTag: "latest" | "beta") => Promise; cacheTtlMs?: number; env?: NodeJS.ProcessEnv; } export interface PackageUpdateCheckResult { packageName: string; currentVersion: string; distTag: "latest" | "beta"; latestVersion: string; isOutdated: boolean; checkedAt: string; updateCommand: string; } export interface InstalledPackageUpgradePlan { packageName: string; currentVersion: string; targetVersionOrTag: string; installCommand: string; rollbackCommand: string; smokeCommand: string; rollbackSmokeCommand: string; migrationCheckCommand: string; postUpgradeCommands: string[]; } export declare function checkPackageUpdate(options: PackageUpdateCheckOptions): Promise; export declare function renderPackageUpdateWarning(result: PackageUpdateCheckResult): string; export declare function compareVersions(left: string, right: string): number; export declare function canonicalInstallCommand(packageName: string | undefined, versionOrTag: string): string; export declare function postInstallSmokeCommand(binaryName?: string): string; export declare function configMigrationCheckCommand(binaryName?: string): string; export declare function buildInstalledPackageUpgradePlan(options: { packageName?: string; currentVersion: string; targetVersionOrTag: string; binaryName?: string; }): InstalledPackageUpgradePlan;