meld-spec
Version:
Specification for the Meld scripting language
45 lines (44 loc) • 1.18 kB
TypeScript
/**
* Version information for the Meld specification
*/
export interface Version {
major: number;
minor: number;
patch: number;
}
export interface VersionRange {
min: Version;
max?: Version;
}
/**
* Current version of the Meld specification
*/
export declare const CURRENT_VERSION: Version;
/**
* Converts a version string to a Version object
*/
export declare function parseVersion(version: string): Version;
/**
* Converts a Version object to a string
*/
export declare function formatVersion(version: Version): string;
/**
* Checks if a version is compatible with a version range
*/
export declare function isCompatibleVersion(version: Version, range: VersionRange): boolean;
/**
* Checks if a breaking change is being introduced
*/
export declare function isBreakingChange(oldVersion: Version, newVersion: Version): boolean;
/**
* Gets the minimum compatible version for an implementation
*/
export declare function getMinCompatibleVersion(): Version;
/**
* Interface for implementation version requirements
*/
export interface ImplementationVersionRequirement {
name: string;
version: Version;
compatibleRange: VersionRange;
}