export type GameMakerVersionParsed = [
    year: number,
    month: number,
    major: number,
    minor: number
];
/** Utility class for GameMaker version strings, allowing easy comparison etc */
export declare class GameMakerVersionString {
    #private;
    readonly version: string;
    constructor(version: string);
    /** Get an array of integer values making up the version (returns a cloned array) */
    get parsed(): GameMakerVersionParsed;
    compare(other: GameMakerVersionString | string): 0 | 1 | -1;
    gt(other: GameMakerVersionString | string): boolean;
    gte(other: GameMakerVersionString | string): boolean;
    eq(other: GameMakerVersionString | string): boolean;
    lt(other: GameMakerVersionString | string): boolean;
    lte(other: GameMakerVersionString | string): boolean;
    toString(): string;
    toJSON(): string;
    static from<T extends string[] | string>(versions: T): T extends string[] ? GameMakerVersionString[] : GameMakerVersionString;
    /**
     * A function that can be used for sorting GameMaker IDE/Runtime version
     * strings, which are in the format "W.X.Y.Z" where W, X, Y, and Z
     * are all integers.
     * Note that comparisons across branches (lts, public, dev, beta)
     * are messy, so mileage will vary for those.
     * @returns -1 if a < b, 0 if a === b, 1 if a > b
     */
    static compare(a: string | GameMakerVersionString, b: string | GameMakerVersionString): -1 | 0 | 1;
    static gt(a: string | GameMakerVersionString, b: string | GameMakerVersionString): boolean;
    static gte(a: string | GameMakerVersionString, b: string | GameMakerVersionString): boolean;
    static eq(a: string | GameMakerVersionString, b: string | GameMakerVersionString): boolean;
    static lt(a: string | GameMakerVersionString, b: string | GameMakerVersionString): boolean;
    static lte(a: string | GameMakerVersionString, b: string | GameMakerVersionString): boolean;
    static parse(version: string): [year: number, month: number, major: number, minor: number];
    static sort<T extends (string | GameMakerVersionString)[]>(versions: T): T;
}
//# sourceMappingURL=GameMakerVersionString.d.ts.map