UNPKG

@bscotch/yy

Version:

Stringify, parse, read, and write GameMaker yy and yyp files.

40 lines 2.16 kB
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