/** * Version comparison utilities for checking tool compatibility */ export interface ParsedVersion { major: number; minor: number; patch: number; original: string; } /** * Parse a version string into its components * Handles versions like "17.0.9", "1.9.21", "34.0.0", "v20.10.0" */ export declare function parseVersion(version: string): ParsedVersion; /** * Compare two version strings * Returns: * - Negative number if v1 < v2 * - Zero if v1 === v2 * - Positive number if v1 > v2 */ export declare function compareVersions(v1: string, v2: string): number; /** * Check if a version satisfies a requirement string * Supports operators: >=, <=, >, <, =, ^, ~ * * Examples: * - isVersionCompatible('17.0.9', '>=17') -> true * - isVersionCompatible('16.0.0', '>=17') -> false * - isVersionCompatible('1.9.21', '^1.9.0') -> true (same major, >= minor) * - isVersionCompatible('1.8.0', '^1.9.0') -> false * - isVersionCompatible('34.0.1', '~34.0.0') -> true (same major.minor, >= patch) */ export declare function isVersionCompatible(version: string, requirement: string): boolean; /** * Format a version for display */ export declare function formatVersion(version: ParsedVersion | string): string; /** * Check if version is within a range * Range format: ">=min <=max" or "min - max" */ export declare function isVersionInRange(version: string, range: string): boolean; //# sourceMappingURL=version-compare.d.ts.map