cs-element
Version:
Advanced reactive data management library with state machines, blueprints, persistence, compression, networking, and multithreading support
56 lines • 1.86 kB
TypeScript
/**
* Утилиты для работы с версиями в формате semver
*/
import { IVersionUtils } from '../types/migration-interfaces';
/**
* Реализация утилит для работы с версиями
*/
export declare class VersionUtils implements IVersionUtils {
private static readonly VERSION_REGEX;
/**
* Сравнение версий
* @returns -1 если version1 < version2, 0 если равны, 1 если version1 > version2
*/
compare(version1: string, version2: string): number;
/**
* Проверка валидности версии
*/
isValid(version: string): boolean;
/**
* Получение следующей версии
*/
getNext(version: string, type?: 'major' | 'minor' | 'patch'): string;
/**
* Парсинг версии
*/
parse(version: string): {
major: number;
minor: number;
patch: number;
};
/**
* Форматирование версии
*/
format(major: number, minor: number, patch: number): string;
/**
* Получение диапазона версий
*/
getRange(fromVersion: string, toVersion: string): string[];
/**
* Проверка, находится ли версия в диапазоне
*/
isInRange(version: string, fromVersion: string, toVersion: string): boolean;
/**
* Получение максимальной версии из списка
*/
getMax(versions: string[]): string;
/**
* Получение минимальной версии из списка
*/
getMin(versions: string[]): string;
/**
* Сортировка версий
*/
sort(versions: string[], ascending?: boolean): string[];
}
//# sourceMappingURL=VersionUtils.d.ts.map