gmll
Version:
A generic launcher core for building custom launchers
43 lines (42 loc) • 1.72 kB
TypeScript
import { Dir, File } from "gfsl";
import { Artifact, MCJarTypeVal, VersionJson, VersionManifest } from "../../types";
/**
* Version data is unique. Each version of the game will generate an unique version object.
* Take note however. GMLL,unlike the default launcher, will store version data in the same folder as the version it is based upon.
* If forge still works, but you cannot find the file connected to it...this is why.
*/
export default class Version {
json: VersionJson;
manifest: VersionManifest;
name: string;
folder: Dir;
file: File;
synced: boolean;
override?: Artifact;
private pre1d9;
private _mergeFailure;
/**Gets a set version based on a given manifest or version string. Either do not have to be contained within the manifest database. */
static get(manifest: string | VersionManifest): Promise<Version>;
/**
* DO NOT USE CONSTRUCTOR DIRECTLY. FOR INTERNAL USE ONLY!
* @see {@link get} : This is the method that should instead be used
*/
private constructor();
mergeFailure(): boolean;
/**
* @returns Gets the version json file.
* @see {@link json} for synchronous way to access this. The {@link get} method already calls this function and saves it accordingly.
*/
getJSON(): Promise<VersionJson>;
/**
* Installs the asset files for a set version
*/
getAssets(): Promise<void>;
getRuntime(): Promise<import("../../types").MCRuntimeVal>;
getLibs(): Promise<void>;
getJar(type: MCJarTypeVal, jarFile: File): Promise<File>;
getJarPath(): File;
install(): Promise<void>;
getJavaPath(): File;
getClassPath(mode?: "client" | "server", jarpath?: File): string[];
}