UNPKG

@xmcl/installer

Version:

The installers of Minecraft/Forge/Fabric/Liteloader/Quilt

100 lines 3.18 kB
import { MinecraftLocation } from '@xmcl/core'; import { FetchOptions, InstallOptions } from './utils'; export interface FabricArtifactVersion { gameVersion?: string; separator?: string; build?: number; maven: string; version: string; stable: boolean; } export interface FabricArtifacts { mappings: FabricArtifactVersion[]; loader: FabricArtifactVersion[]; } export interface FabricLoaderArtifact { loader: FabricArtifactVersion; intermediary: FabricArtifactVersion; launcherMeta: { version: number; libraries: { client: { name: string; url: string; }[]; common: { name: string; url: string; }[]; server: { name: string; url: string; }[]; }; mainClass: { client: string; server: string; }; }; } /** * Get supported fabric game versions */ export declare function getFabricGames(options?: FetchOptions): Promise<string[]>; /** * Get fabric-loader artifact list */ export declare function getFabricLoaders(options?: FetchOptions): Promise<FabricArtifactVersion[]>; /** * Get fabric-loader artifact list by Minecraft version * @param minecraft The minecraft version */ export declare function getLoaderArtifactListFor(minecraft: string, options?: FetchOptions): Promise<FabricLoaderArtifact[]>; /** * Get fabric-loader artifact list by Minecraft version * @param minecraft The minecraft version * @param loader The yarn-loader version */ export declare function getFabricLoaderArtifact(minecraft: string, loader: string, options?: FetchOptions): Promise<FabricLoaderArtifact>; export interface FabricInstallOptions extends InstallOptions { side?: 'client' | 'server'; } /** * Generate fabric version json from loader artifact. * @param loader The fabric loader artifact * @param side The side of the fabric * @param options * @returns The generated version json */ export declare function getVersionJsonFromLoaderArtifact(loader: FabricLoaderArtifact, side: 'client' | 'server', options?: FabricInstallOptions): { id: string; inheritsFrom: string; mainClass: string; libraries: { name: string; url: string; }[]; arguments: { game: never[]; jvm: never[]; }; releaseTime: string; time: string; }; /** * Install fabric version json. * * If side is `server`, it requires the Minecraft version json to be installed. * * @returns The installed version id */ export declare function installFabricByLoaderArtifact(loader: FabricLoaderArtifact, minecraft: MinecraftLocation, options?: FabricInstallOptions): Promise<string>; export interface InstallFabricVersionOptions extends FetchOptions { minecraftVersion: string; version: string; minecraft: MinecraftLocation; side?: 'client' | 'server'; } export declare const DEFAULT_META_URL_FABRIC = "https://meta.fabricmc.net"; export declare function installFabric(options: InstallFabricVersionOptions): Promise<string>; //# sourceMappingURL=fabric.d.ts.map