@loontail/minecraft-kit 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/index.cjs +1018 -715
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.mjs +1017 -713
- package/dist/cli/index.mjs.map +1 -1
- package/dist/index.cjs +1210 -663
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +341 -220
- package/dist/index.d.ts +341 -220
- package/dist/index.mjs +1202 -662
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cooperative pause primitive. Consumers call {@link waitWhilePaused} at safe
|
|
3
|
+
* checkpoints. Independent from `AbortSignal` — abort wins at the next signal
|
|
4
|
+
* check.
|
|
5
|
+
*/
|
|
6
|
+
declare class PauseController {
|
|
7
|
+
#private;
|
|
8
|
+
get paused(): boolean;
|
|
9
|
+
pause(): void;
|
|
10
|
+
resume(): void;
|
|
11
|
+
waitWhilePaused(): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
|
|
1
14
|
/** Pluggable in-memory cache for HTTP metadata responses. */
|
|
2
15
|
interface MetadataCache {
|
|
3
16
|
get<T>(key: string): T | undefined;
|
|
@@ -667,193 +680,6 @@ interface PlanStandaloneRuntimeInstallInput {
|
|
|
667
680
|
*/
|
|
668
681
|
declare function planStandaloneRuntimeInstall(input: PlanStandaloneRuntimeInstallInput): Promise<InstallPlan>;
|
|
669
682
|
|
|
670
|
-
/** Log levels accepted by the pluggable logger. */
|
|
671
|
-
declare const LogLevels: {
|
|
672
|
-
readonly DEBUG: "debug";
|
|
673
|
-
readonly INFO: "info";
|
|
674
|
-
readonly WARN: "warn";
|
|
675
|
-
readonly ERROR: "error";
|
|
676
|
-
};
|
|
677
|
-
/** Log-level literal. */
|
|
678
|
-
type LogLevel = (typeof LogLevels)[keyof typeof LogLevels];
|
|
679
|
-
/** Pluggable logger. Default implementation is a silent logger; pass your own to surface logs. */
|
|
680
|
-
interface Logger {
|
|
681
|
-
log(level: LogLevel, message: string, fields?: Readonly<Record<string, unknown>>): void;
|
|
682
|
-
}
|
|
683
|
-
|
|
684
|
-
/** Shared context passed to every resolver. */
|
|
685
|
-
interface ResolverContext {
|
|
686
|
-
readonly http: HttpClient;
|
|
687
|
-
readonly cache: MetadataCache;
|
|
688
|
-
readonly logger: Logger;
|
|
689
|
-
}
|
|
690
|
-
|
|
691
|
-
/** Inputs to {@link FabricVersionsApi.list}. */
|
|
692
|
-
interface FabricListInput {
|
|
693
|
-
readonly minecraftVersion?: string;
|
|
694
|
-
readonly signal?: AbortSignal;
|
|
695
|
-
}
|
|
696
|
-
/** Inputs to {@link FabricVersionsApi.resolve}. */
|
|
697
|
-
interface FabricResolveInput {
|
|
698
|
-
readonly minecraftVersion: string;
|
|
699
|
-
readonly preference?: VersionPreferenceKind;
|
|
700
|
-
readonly loaderVersion?: string;
|
|
701
|
-
readonly signal?: AbortSignal;
|
|
702
|
-
}
|
|
703
|
-
/** Public Fabric versions API surface. */
|
|
704
|
-
declare class FabricVersionsApi {
|
|
705
|
-
private readonly ctx;
|
|
706
|
-
constructor(ctx: ResolverContext);
|
|
707
|
-
/** List Fabric loader versions, optionally constrained to a Minecraft version. */
|
|
708
|
-
list(input?: FabricListInput): Promise<readonly FabricLoaderSummary[]>;
|
|
709
|
-
/** Resolve a Fabric loader version against a Minecraft version. */
|
|
710
|
-
resolve(input: FabricResolveInput): Promise<ResolvedFabricLoader>;
|
|
711
|
-
}
|
|
712
|
-
|
|
713
|
-
/** Inputs to {@link ForgeVersionsApi.list}. */
|
|
714
|
-
interface ForgeListInput {
|
|
715
|
-
readonly minecraftVersion?: string;
|
|
716
|
-
readonly signal?: AbortSignal;
|
|
717
|
-
}
|
|
718
|
-
/** Inputs to {@link ForgeVersionsApi.resolve}. */
|
|
719
|
-
interface ForgeResolveInput {
|
|
720
|
-
readonly minecraftVersion: string;
|
|
721
|
-
readonly preference?: VersionPreferenceKind;
|
|
722
|
-
readonly forgeVersion?: string;
|
|
723
|
-
readonly signal?: AbortSignal;
|
|
724
|
-
}
|
|
725
|
-
/** Public Forge versions API surface. */
|
|
726
|
-
declare class ForgeVersionsApi {
|
|
727
|
-
private readonly ctx;
|
|
728
|
-
constructor(ctx: ResolverContext);
|
|
729
|
-
/** List Forge builds (across all Minecraft versions, or filtered to one). */
|
|
730
|
-
list(input?: ForgeListInput): Promise<readonly ForgeBuildSummary[]>;
|
|
731
|
-
/** Resolve a Forge build for a Minecraft version. */
|
|
732
|
-
resolve(input: ForgeResolveInput): Promise<ResolvedForgeLoader>;
|
|
733
|
-
}
|
|
734
|
-
|
|
735
|
-
/** Inputs to {@link MinecraftVersionsApi.list}. */
|
|
736
|
-
interface MinecraftListInput {
|
|
737
|
-
readonly channel?: MinecraftChannel;
|
|
738
|
-
readonly signal?: AbortSignal;
|
|
739
|
-
}
|
|
740
|
-
/** Inputs to {@link MinecraftVersionsApi.latest}. */
|
|
741
|
-
interface MinecraftLatestInput {
|
|
742
|
-
readonly channel?: MinecraftChannel;
|
|
743
|
-
readonly signal?: AbortSignal;
|
|
744
|
-
}
|
|
745
|
-
/** Inputs to {@link MinecraftVersionsApi.get} / `.resolve`. */
|
|
746
|
-
interface MinecraftGetInput {
|
|
747
|
-
readonly version: string;
|
|
748
|
-
readonly signal?: AbortSignal;
|
|
749
|
-
}
|
|
750
|
-
/** Public Minecraft versions API surface. */
|
|
751
|
-
declare class MinecraftVersionsApi {
|
|
752
|
-
private readonly ctx;
|
|
753
|
-
constructor(ctx: ResolverContext);
|
|
754
|
-
/** List all Minecraft versions, optionally filtered by channel. */
|
|
755
|
-
list(input?: MinecraftListInput): Promise<readonly MinecraftVersionSummary[]>;
|
|
756
|
-
/** Return the latest version on the given channel (defaults to RELEASE). */
|
|
757
|
-
latest(input?: MinecraftLatestInput): Promise<MinecraftVersionSummary>;
|
|
758
|
-
/** Return a single version summary or throw `MANIFEST_NOT_FOUND`. */
|
|
759
|
-
get(input: MinecraftGetInput): Promise<MinecraftVersionSummary>;
|
|
760
|
-
/** Fetch and parse the per-version manifest in addition to the summary. */
|
|
761
|
-
resolve(input: MinecraftGetInput): Promise<ResolvedMinecraft>;
|
|
762
|
-
private fetchManifestRoot;
|
|
763
|
-
}
|
|
764
|
-
|
|
765
|
-
/** Inputs to {@link RuntimeVersionsApi.list}. */
|
|
766
|
-
interface RuntimeListInput {
|
|
767
|
-
readonly system: RuntimeSystem;
|
|
768
|
-
readonly minecraftVersion?: string;
|
|
769
|
-
readonly signal?: AbortSignal;
|
|
770
|
-
}
|
|
771
|
-
/** A summary entry for the list API. */
|
|
772
|
-
interface RuntimeListEntry {
|
|
773
|
-
readonly component: string;
|
|
774
|
-
readonly platformKey: string;
|
|
775
|
-
readonly versionName: string;
|
|
776
|
-
readonly released: string;
|
|
777
|
-
readonly manifestUrl: string;
|
|
778
|
-
}
|
|
779
|
-
/** Inputs to {@link RuntimeVersionsApi.resolve}. */
|
|
780
|
-
interface RuntimeResolveInput {
|
|
781
|
-
readonly system: RuntimeSystem;
|
|
782
|
-
readonly minecraftVersion?: string;
|
|
783
|
-
readonly component?: string;
|
|
784
|
-
readonly preference?: RuntimePreferenceKind;
|
|
785
|
-
readonly signal?: AbortSignal;
|
|
786
|
-
}
|
|
787
|
-
/** Public runtime versions API surface. */
|
|
788
|
-
declare class RuntimeVersionsApi {
|
|
789
|
-
private readonly ctx;
|
|
790
|
-
constructor(ctx: ResolverContext);
|
|
791
|
-
/** List available runtime entries for the host platform. */
|
|
792
|
-
list(input: RuntimeListInput): Promise<readonly RuntimeListEntry[]>;
|
|
793
|
-
/** Resolve a single runtime for the host platform and Minecraft version. */
|
|
794
|
-
resolve(input: RuntimeResolveInput): Promise<ResolvedRuntime>;
|
|
795
|
-
private fetchIndex;
|
|
796
|
-
}
|
|
797
|
-
|
|
798
|
-
/** Inputs to {@link TargetsApi.resolve}. */
|
|
799
|
-
interface TargetResolveInput {
|
|
800
|
-
readonly id: string;
|
|
801
|
-
readonly directory: string;
|
|
802
|
-
readonly minecraft: {
|
|
803
|
-
readonly version: string;
|
|
804
|
-
};
|
|
805
|
-
readonly loader: TargetLoaderInput;
|
|
806
|
-
readonly runtime?: {
|
|
807
|
-
readonly preference?: RuntimePreferenceKind;
|
|
808
|
-
/** Override the runtime component. Defaults to the Minecraft manifest's `javaVersion.component`. */
|
|
809
|
-
readonly component?: string;
|
|
810
|
-
/**
|
|
811
|
-
* Custom install root (absolute path) holding the component directories.
|
|
812
|
-
* When unset, runtime files live under `<directory>/runtime/`.
|
|
813
|
-
*/
|
|
814
|
-
readonly installRoot?: string;
|
|
815
|
-
};
|
|
816
|
-
readonly system?: RuntimeSystem;
|
|
817
|
-
readonly signal?: AbortSignal;
|
|
818
|
-
}
|
|
819
|
-
/** Loader input variants. */
|
|
820
|
-
type TargetLoaderInput = {
|
|
821
|
-
readonly type: typeof Loaders.VANILLA;
|
|
822
|
-
} | {
|
|
823
|
-
readonly type: typeof Loaders.FABRIC;
|
|
824
|
-
readonly preference?: VersionPreferenceKind;
|
|
825
|
-
readonly version?: string;
|
|
826
|
-
} | {
|
|
827
|
-
readonly type: typeof Loaders.FORGE;
|
|
828
|
-
readonly preference?: VersionPreferenceKind;
|
|
829
|
-
readonly version?: string;
|
|
830
|
-
};
|
|
831
|
-
/** Inputs to {@link TargetsApi.list}. */
|
|
832
|
-
interface TargetListInput {
|
|
833
|
-
readonly rootDir: string;
|
|
834
|
-
}
|
|
835
|
-
/** Constructor inputs for {@link TargetsApi}. */
|
|
836
|
-
interface TargetsApiContext {
|
|
837
|
-
readonly minecraft: MinecraftVersionsApi;
|
|
838
|
-
readonly fabric: FabricVersionsApi;
|
|
839
|
-
readonly forge: ForgeVersionsApi;
|
|
840
|
-
readonly runtime: RuntimeVersionsApi;
|
|
841
|
-
readonly system: RuntimeSystem;
|
|
842
|
-
}
|
|
843
|
-
/** Public Targets API surface. */
|
|
844
|
-
declare class TargetsApi {
|
|
845
|
-
private readonly ctx;
|
|
846
|
-
constructor(ctx: TargetsApiContext);
|
|
847
|
-
/** The detected host system used by `resolve()` when no `system` is supplied. */
|
|
848
|
-
get system(): RuntimeSystem;
|
|
849
|
-
/** Build a {@link Target} from already-resolved components. */
|
|
850
|
-
create(input: TargetCreateInput): Target;
|
|
851
|
-
/** Sugar API: resolve every component then assemble a target. */
|
|
852
|
-
resolve(input: TargetResolveInput): Promise<Target>;
|
|
853
|
-
/** Scan a root directory for Minecraft installations. Returns only what is on disk. */
|
|
854
|
-
list(input: TargetListInput): Promise<readonly DiscoveredTarget[]>;
|
|
855
|
-
}
|
|
856
|
-
|
|
857
683
|
/** Aspect of an installation a verification result describes. */
|
|
858
684
|
declare const VerificationKinds: {
|
|
859
685
|
readonly MINECRAFT: "minecraft";
|
|
@@ -1091,6 +917,243 @@ interface OperationOptions {
|
|
|
1091
917
|
readonly onEvent?: ProgressListener;
|
|
1092
918
|
}
|
|
1093
919
|
|
|
920
|
+
/** Stream-of-text channel exposed by spawned processes. */
|
|
921
|
+
interface ProcessStream {
|
|
922
|
+
on(event: "data", listener: (chunk: string) => void): void;
|
|
923
|
+
}
|
|
924
|
+
/** Live handle for a child process. */
|
|
925
|
+
interface SpawnedProcess {
|
|
926
|
+
readonly pid: number;
|
|
927
|
+
readonly stdout: ProcessStream;
|
|
928
|
+
readonly stderr: ProcessStream;
|
|
929
|
+
/** Resolves when the process exits with its exit info. */
|
|
930
|
+
readonly exited: Promise<{
|
|
931
|
+
readonly code: number | null;
|
|
932
|
+
readonly signal: NodeJS.Signals | null;
|
|
933
|
+
}>;
|
|
934
|
+
/** Send a termination signal. Returns true on success. */
|
|
935
|
+
kill(signal?: NodeJS.Signals): boolean;
|
|
936
|
+
}
|
|
937
|
+
/** Options accepted by the spawner. */
|
|
938
|
+
interface SpawnOptions {
|
|
939
|
+
readonly cwd: string;
|
|
940
|
+
readonly env?: Readonly<Record<string, string>>;
|
|
941
|
+
}
|
|
942
|
+
/**
|
|
943
|
+
* Pluggable process spawner. The default implementation uses `node:child_process`; tests
|
|
944
|
+
* inject a fake to avoid spawning real processes.
|
|
945
|
+
*/
|
|
946
|
+
interface Spawner {
|
|
947
|
+
spawn(command: string, args: readonly string[], options: SpawnOptions): SpawnedProcess;
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
interface RepairAllInput {
|
|
951
|
+
readonly target: Target;
|
|
952
|
+
readonly http: HttpClient;
|
|
953
|
+
readonly cache: MetadataCache;
|
|
954
|
+
readonly spawner: Spawner;
|
|
955
|
+
readonly signal?: AbortSignal;
|
|
956
|
+
readonly onEvent?: ProgressListener;
|
|
957
|
+
}
|
|
958
|
+
interface RepairAllReport {
|
|
959
|
+
readonly verifications: readonly VerificationResult[];
|
|
960
|
+
/** Present only for aspects that actually needed work. */
|
|
961
|
+
readonly repairs: ReadonlyMap<VerificationKind, RepairReport>;
|
|
962
|
+
readonly bytesDownloaded: number;
|
|
963
|
+
readonly durationMs: number;
|
|
964
|
+
}
|
|
965
|
+
/** Verify every applicable aspect and repair each broken one. */
|
|
966
|
+
declare function repairAll(input: RepairAllInput): Promise<RepairAllReport>;
|
|
967
|
+
|
|
968
|
+
/** Log levels accepted by the pluggable logger. */
|
|
969
|
+
declare const LogLevels: {
|
|
970
|
+
readonly DEBUG: "debug";
|
|
971
|
+
readonly INFO: "info";
|
|
972
|
+
readonly WARN: "warn";
|
|
973
|
+
readonly ERROR: "error";
|
|
974
|
+
};
|
|
975
|
+
/** Log-level literal. */
|
|
976
|
+
type LogLevel = (typeof LogLevels)[keyof typeof LogLevels];
|
|
977
|
+
/** Pluggable logger. Default implementation is a silent logger; pass your own to surface logs. */
|
|
978
|
+
interface Logger {
|
|
979
|
+
log(level: LogLevel, message: string, fields?: Readonly<Record<string, unknown>>): void;
|
|
980
|
+
}
|
|
981
|
+
|
|
982
|
+
/** Shared context passed to every resolver. */
|
|
983
|
+
interface ResolverContext {
|
|
984
|
+
readonly http: HttpClient;
|
|
985
|
+
readonly cache: MetadataCache;
|
|
986
|
+
readonly logger: Logger;
|
|
987
|
+
}
|
|
988
|
+
|
|
989
|
+
/** Inputs to {@link FabricVersionsApi.list}. */
|
|
990
|
+
interface FabricListInput {
|
|
991
|
+
readonly minecraftVersion?: string;
|
|
992
|
+
readonly signal?: AbortSignal;
|
|
993
|
+
}
|
|
994
|
+
/** Inputs to {@link FabricVersionsApi.resolve}. */
|
|
995
|
+
interface FabricResolveInput {
|
|
996
|
+
readonly minecraftVersion: string;
|
|
997
|
+
readonly preference?: VersionPreferenceKind;
|
|
998
|
+
readonly loaderVersion?: string;
|
|
999
|
+
readonly signal?: AbortSignal;
|
|
1000
|
+
}
|
|
1001
|
+
/** Public Fabric versions API surface. */
|
|
1002
|
+
declare class FabricVersionsApi {
|
|
1003
|
+
private readonly ctx;
|
|
1004
|
+
constructor(ctx: ResolverContext);
|
|
1005
|
+
/** List Fabric loader versions, optionally constrained to a Minecraft version. */
|
|
1006
|
+
list(input?: FabricListInput): Promise<readonly FabricLoaderSummary[]>;
|
|
1007
|
+
/** Resolve a Fabric loader version against a Minecraft version. */
|
|
1008
|
+
resolve(input: FabricResolveInput): Promise<ResolvedFabricLoader>;
|
|
1009
|
+
}
|
|
1010
|
+
|
|
1011
|
+
/** Inputs to {@link ForgeVersionsApi.list}. */
|
|
1012
|
+
interface ForgeListInput {
|
|
1013
|
+
readonly minecraftVersion?: string;
|
|
1014
|
+
readonly signal?: AbortSignal;
|
|
1015
|
+
}
|
|
1016
|
+
/** Inputs to {@link ForgeVersionsApi.resolve}. */
|
|
1017
|
+
interface ForgeResolveInput {
|
|
1018
|
+
readonly minecraftVersion: string;
|
|
1019
|
+
readonly preference?: VersionPreferenceKind;
|
|
1020
|
+
readonly forgeVersion?: string;
|
|
1021
|
+
readonly signal?: AbortSignal;
|
|
1022
|
+
}
|
|
1023
|
+
/** Public Forge versions API surface. */
|
|
1024
|
+
declare class ForgeVersionsApi {
|
|
1025
|
+
private readonly ctx;
|
|
1026
|
+
constructor(ctx: ResolverContext);
|
|
1027
|
+
/** List Forge builds (across all Minecraft versions, or filtered to one). */
|
|
1028
|
+
list(input?: ForgeListInput): Promise<readonly ForgeBuildSummary[]>;
|
|
1029
|
+
/** Resolve a Forge build for a Minecraft version. */
|
|
1030
|
+
resolve(input: ForgeResolveInput): Promise<ResolvedForgeLoader>;
|
|
1031
|
+
}
|
|
1032
|
+
|
|
1033
|
+
/** Inputs to {@link MinecraftVersionsApi.list}. */
|
|
1034
|
+
interface MinecraftListInput {
|
|
1035
|
+
readonly channel?: MinecraftChannel;
|
|
1036
|
+
readonly signal?: AbortSignal;
|
|
1037
|
+
}
|
|
1038
|
+
/** Inputs to {@link MinecraftVersionsApi.latest}. */
|
|
1039
|
+
interface MinecraftLatestInput {
|
|
1040
|
+
readonly channel?: MinecraftChannel;
|
|
1041
|
+
readonly signal?: AbortSignal;
|
|
1042
|
+
}
|
|
1043
|
+
/** Inputs to {@link MinecraftVersionsApi.get} / `.resolve`. */
|
|
1044
|
+
interface MinecraftGetInput {
|
|
1045
|
+
readonly version: string;
|
|
1046
|
+
readonly signal?: AbortSignal;
|
|
1047
|
+
}
|
|
1048
|
+
/** Public Minecraft versions API surface. */
|
|
1049
|
+
declare class MinecraftVersionsApi {
|
|
1050
|
+
private readonly ctx;
|
|
1051
|
+
constructor(ctx: ResolverContext);
|
|
1052
|
+
/** List all Minecraft versions, optionally filtered by channel. */
|
|
1053
|
+
list(input?: MinecraftListInput): Promise<readonly MinecraftVersionSummary[]>;
|
|
1054
|
+
/** Return the latest version on the given channel (defaults to RELEASE). */
|
|
1055
|
+
latest(input?: MinecraftLatestInput): Promise<MinecraftVersionSummary>;
|
|
1056
|
+
/** Return a single version summary or throw `MANIFEST_NOT_FOUND`. */
|
|
1057
|
+
get(input: MinecraftGetInput): Promise<MinecraftVersionSummary>;
|
|
1058
|
+
/** Fetch and parse the per-version manifest in addition to the summary. */
|
|
1059
|
+
resolve(input: MinecraftGetInput): Promise<ResolvedMinecraft>;
|
|
1060
|
+
private fetchManifestRoot;
|
|
1061
|
+
}
|
|
1062
|
+
|
|
1063
|
+
/** Inputs to {@link RuntimeVersionsApi.list}. */
|
|
1064
|
+
interface RuntimeListInput {
|
|
1065
|
+
readonly system: RuntimeSystem;
|
|
1066
|
+
readonly minecraftVersion?: string;
|
|
1067
|
+
readonly signal?: AbortSignal;
|
|
1068
|
+
}
|
|
1069
|
+
/** A summary entry for the list API. */
|
|
1070
|
+
interface RuntimeListEntry {
|
|
1071
|
+
readonly component: string;
|
|
1072
|
+
readonly platformKey: string;
|
|
1073
|
+
readonly versionName: string;
|
|
1074
|
+
readonly released: string;
|
|
1075
|
+
readonly manifestUrl: string;
|
|
1076
|
+
}
|
|
1077
|
+
/** Inputs to {@link RuntimeVersionsApi.resolve}. */
|
|
1078
|
+
interface RuntimeResolveInput {
|
|
1079
|
+
readonly system: RuntimeSystem;
|
|
1080
|
+
readonly minecraftVersion?: string;
|
|
1081
|
+
readonly component?: string;
|
|
1082
|
+
readonly preference?: RuntimePreferenceKind;
|
|
1083
|
+
readonly signal?: AbortSignal;
|
|
1084
|
+
}
|
|
1085
|
+
/** Public runtime versions API surface. */
|
|
1086
|
+
declare class RuntimeVersionsApi {
|
|
1087
|
+
private readonly ctx;
|
|
1088
|
+
constructor(ctx: ResolverContext);
|
|
1089
|
+
/** List available runtime entries for the host platform. */
|
|
1090
|
+
list(input: RuntimeListInput): Promise<readonly RuntimeListEntry[]>;
|
|
1091
|
+
/** Resolve a single runtime for the host platform and Minecraft version. */
|
|
1092
|
+
resolve(input: RuntimeResolveInput): Promise<ResolvedRuntime>;
|
|
1093
|
+
private fetchIndex;
|
|
1094
|
+
}
|
|
1095
|
+
/** Parse the leading integer from a runtime versionName (`"21.0.8"` → 21). */
|
|
1096
|
+
declare function parseMajorVersion(versionName: string): number | undefined;
|
|
1097
|
+
|
|
1098
|
+
/** Inputs to {@link TargetsApi.resolve}. */
|
|
1099
|
+
interface TargetResolveInput {
|
|
1100
|
+
readonly id: string;
|
|
1101
|
+
readonly directory: string;
|
|
1102
|
+
readonly minecraft: {
|
|
1103
|
+
readonly version: string;
|
|
1104
|
+
};
|
|
1105
|
+
readonly loader: TargetLoaderInput;
|
|
1106
|
+
readonly runtime?: {
|
|
1107
|
+
readonly preference?: RuntimePreferenceKind;
|
|
1108
|
+
/** Override the runtime component. Defaults to the Minecraft manifest's `javaVersion.component`. */
|
|
1109
|
+
readonly component?: string;
|
|
1110
|
+
/**
|
|
1111
|
+
* Custom install root (absolute path) holding the component directories.
|
|
1112
|
+
* When unset, runtime files live under `<directory>/runtime/`.
|
|
1113
|
+
*/
|
|
1114
|
+
readonly installRoot?: string;
|
|
1115
|
+
};
|
|
1116
|
+
readonly system?: RuntimeSystem;
|
|
1117
|
+
readonly signal?: AbortSignal;
|
|
1118
|
+
}
|
|
1119
|
+
/** Loader input variants. */
|
|
1120
|
+
type TargetLoaderInput = {
|
|
1121
|
+
readonly type: typeof Loaders.VANILLA;
|
|
1122
|
+
} | {
|
|
1123
|
+
readonly type: typeof Loaders.FABRIC;
|
|
1124
|
+
readonly preference?: VersionPreferenceKind;
|
|
1125
|
+
readonly version?: string;
|
|
1126
|
+
} | {
|
|
1127
|
+
readonly type: typeof Loaders.FORGE;
|
|
1128
|
+
readonly preference?: VersionPreferenceKind;
|
|
1129
|
+
readonly version?: string;
|
|
1130
|
+
};
|
|
1131
|
+
/** Inputs to {@link TargetsApi.list}. */
|
|
1132
|
+
interface TargetListInput {
|
|
1133
|
+
readonly rootDir: string;
|
|
1134
|
+
}
|
|
1135
|
+
/** Constructor inputs for {@link TargetsApi}. */
|
|
1136
|
+
interface TargetsApiContext {
|
|
1137
|
+
readonly minecraft: MinecraftVersionsApi;
|
|
1138
|
+
readonly fabric: FabricVersionsApi;
|
|
1139
|
+
readonly forge: ForgeVersionsApi;
|
|
1140
|
+
readonly runtime: RuntimeVersionsApi;
|
|
1141
|
+
readonly system: RuntimeSystem;
|
|
1142
|
+
}
|
|
1143
|
+
/** Public Targets API surface. */
|
|
1144
|
+
declare class TargetsApi {
|
|
1145
|
+
private readonly ctx;
|
|
1146
|
+
constructor(ctx: TargetsApiContext);
|
|
1147
|
+
/** The detected host system used by `resolve()` when no `system` is supplied. */
|
|
1148
|
+
get system(): RuntimeSystem;
|
|
1149
|
+
/** Build a {@link Target} from already-resolved components. */
|
|
1150
|
+
create(input: TargetCreateInput): Target;
|
|
1151
|
+
/** Sugar API: resolve every component then assemble a target. */
|
|
1152
|
+
resolve(input: TargetResolveInput): Promise<Target>;
|
|
1153
|
+
/** Scan a root directory for Minecraft installations. Returns only what is on disk. */
|
|
1154
|
+
list(input: TargetListInput): Promise<readonly DiscoveredTarget[]>;
|
|
1155
|
+
}
|
|
1156
|
+
|
|
1094
1157
|
/** Authentication modes accepted by the launch composer. */
|
|
1095
1158
|
declare const AuthModes: {
|
|
1096
1159
|
/** Offline-mode play with a chosen username and synthetic UUID. */
|
|
@@ -1186,36 +1249,6 @@ interface LaunchRunOptions {
|
|
|
1186
1249
|
readonly killGracePeriodMs?: number;
|
|
1187
1250
|
}
|
|
1188
1251
|
|
|
1189
|
-
/** Stream-of-text channel exposed by spawned processes. */
|
|
1190
|
-
interface ProcessStream {
|
|
1191
|
-
on(event: "data", listener: (chunk: string) => void): void;
|
|
1192
|
-
}
|
|
1193
|
-
/** Live handle for a child process. */
|
|
1194
|
-
interface SpawnedProcess {
|
|
1195
|
-
readonly pid: number;
|
|
1196
|
-
readonly stdout: ProcessStream;
|
|
1197
|
-
readonly stderr: ProcessStream;
|
|
1198
|
-
/** Resolves when the process exits with its exit info. */
|
|
1199
|
-
readonly exited: Promise<{
|
|
1200
|
-
readonly code: number | null;
|
|
1201
|
-
readonly signal: NodeJS.Signals | null;
|
|
1202
|
-
}>;
|
|
1203
|
-
/** Send a termination signal. Returns true on success. */
|
|
1204
|
-
kill(signal?: NodeJS.Signals): boolean;
|
|
1205
|
-
}
|
|
1206
|
-
/** Options accepted by the spawner. */
|
|
1207
|
-
interface SpawnOptions {
|
|
1208
|
-
readonly cwd: string;
|
|
1209
|
-
readonly env?: Readonly<Record<string, string>>;
|
|
1210
|
-
}
|
|
1211
|
-
/**
|
|
1212
|
-
* Pluggable process spawner. The default implementation uses `node:child_process`; tests
|
|
1213
|
-
* inject a fake to avoid spawning real processes.
|
|
1214
|
-
*/
|
|
1215
|
-
interface Spawner {
|
|
1216
|
-
spawn(command: string, args: readonly string[], options: SpawnOptions): SpawnedProcess;
|
|
1217
|
-
}
|
|
1218
|
-
|
|
1219
1252
|
/** Update plan — additive list of actions to bring an installation up to date. */
|
|
1220
1253
|
interface UpdatePlan {
|
|
1221
1254
|
readonly targetId: string;
|
|
@@ -1264,11 +1297,11 @@ declare class MinecraftKit {
|
|
|
1264
1297
|
readonly targets: TargetsApi;
|
|
1265
1298
|
readonly install: {
|
|
1266
1299
|
plan(target: Target, options?: OperationOptions): Promise<InstallPlan>;
|
|
1267
|
-
run(plan: InstallPlan, options?:
|
|
1300
|
+
run(plan: InstallPlan, options?: InstallRunOptions): Promise<InstallReport>;
|
|
1268
1301
|
/** Install only the Java runtime declared by `target.runtime` (honours `installRoot`). */
|
|
1269
1302
|
readonly runtime: {
|
|
1270
1303
|
plan(target: Target, options?: OperationOptions): Promise<InstallPlan>;
|
|
1271
|
-
run(plan: InstallPlan, options?:
|
|
1304
|
+
run(plan: InstallPlan, options?: InstallRunOptions): Promise<InstallReport>;
|
|
1272
1305
|
/**
|
|
1273
1306
|
* Plan a runtime-only install without an existing Minecraft Target. The caller
|
|
1274
1307
|
* supplies a {@link ResolvedRuntime} (typically from `kit.versions.runtime.resolve`)
|
|
@@ -1308,6 +1341,8 @@ declare class MinecraftKit {
|
|
|
1308
1341
|
readonly forge: RepairAspect;
|
|
1309
1342
|
/** Repair the Java runtime files. Honours `target.runtime.installRoot`. */
|
|
1310
1343
|
readonly runtime: RepairAspect;
|
|
1344
|
+
/** Verify every applicable aspect (Minecraft + Runtime + active loader) and repair each broken one. */
|
|
1345
|
+
all(target: Target, options?: OperationOptions): Promise<RepairAllReport>;
|
|
1311
1346
|
};
|
|
1312
1347
|
readonly launch: {
|
|
1313
1348
|
compose(target: Target, options: LaunchOptions): Promise<LaunchComposition>;
|
|
@@ -1317,6 +1352,11 @@ declare class MinecraftKit {
|
|
|
1317
1352
|
readonly cache: MetadataCache;
|
|
1318
1353
|
constructor(options?: MinecraftKitOptions);
|
|
1319
1354
|
}
|
|
1355
|
+
/** Options accepted by `install.run` (and `install.runtime.run`). */
|
|
1356
|
+
interface InstallRunOptions extends OperationOptions {
|
|
1357
|
+
readonly pauseController?: PauseController;
|
|
1358
|
+
readonly actionCategories?: ReadonlySet<DownloadAction["category"]>;
|
|
1359
|
+
}
|
|
1320
1360
|
/** Options accepted by every `verify.<kind>.run`. */
|
|
1321
1361
|
interface VerifyOperationOptions {
|
|
1322
1362
|
readonly signal?: AbortSignal;
|
|
@@ -1333,6 +1373,54 @@ interface RepairAspect {
|
|
|
1333
1373
|
run(plan: RepairPlan, options?: OperationOptions): Promise<RepairReport>;
|
|
1334
1374
|
}
|
|
1335
1375
|
|
|
1376
|
+
/** Result of resolving the on-disk version JSON for a target. */
|
|
1377
|
+
interface ResolvedLaunchVersion {
|
|
1378
|
+
/** Topmost version id (the one used as `${version_name}` and for the natives directory). */
|
|
1379
|
+
readonly versionId: string;
|
|
1380
|
+
/** Merged manifest with `inheritsFrom` chain folded together. */
|
|
1381
|
+
readonly merged: MinecraftVersionManifest;
|
|
1382
|
+
/** Inherits-from chain from top (`versionId`) down to the root vanilla version. */
|
|
1383
|
+
readonly chain: readonly string[];
|
|
1384
|
+
}
|
|
1385
|
+
/** Read the installed version JSON appropriate for a target's loader and merge inheritsFrom. */
|
|
1386
|
+
declare function resolveLaunchVersion(target: Target): Promise<ResolvedLaunchVersion>;
|
|
1387
|
+
/**
|
|
1388
|
+
* Pick the version id whose `versions/<id>/<id>.jar` should land on the launch classpath.
|
|
1389
|
+
* Walks the inherits-from chain from top to root and returns the first id whose jar exists
|
|
1390
|
+
* on disk. Falls back to the root id when nothing is materialised yet.
|
|
1391
|
+
*
|
|
1392
|
+
* Why: Fabric's profile id is `fabric-loader-0.14.21-1.20.1`, but Fabric does not produce a
|
|
1393
|
+
* matching `.jar`; the loader expects the **vanilla** client jar on the classpath and hooks
|
|
1394
|
+
* it via `KnotClient`. Modern Forge similarly leaves `versions/<forge-id>/<forge-id>.jar`
|
|
1395
|
+
* absent and routes the patched client jar through `libraries/`. Walking the chain picks
|
|
1396
|
+
* the right id for both shapes without special-casing.
|
|
1397
|
+
*/
|
|
1398
|
+
declare function pickClientJarVersionId(directory: string, chain: readonly string[]): Promise<string>;
|
|
1399
|
+
|
|
1400
|
+
/** Helpers for the per-target directory layout. */
|
|
1401
|
+
declare const targetPaths: {
|
|
1402
|
+
readonly versionsDir: (root: string) => string;
|
|
1403
|
+
readonly versionDir: (root: string, versionId: string) => string;
|
|
1404
|
+
readonly versionJar: (root: string, versionId: string) => string;
|
|
1405
|
+
readonly versionJson: (root: string, versionId: string) => string;
|
|
1406
|
+
readonly librariesDir: (root: string) => string;
|
|
1407
|
+
readonly libraryFile: (root: string, libraryPath: string) => string;
|
|
1408
|
+
readonly assetIndex: (root: string, indexId: string) => string;
|
|
1409
|
+
readonly assetObject: (root: string, hash: string) => string;
|
|
1410
|
+
readonly assetVirtual: (root: string, virtualPath: string) => string;
|
|
1411
|
+
readonly assetLegacy: (root: string, virtualPath: string) => string;
|
|
1412
|
+
readonly assetResource: (root: string, virtualPath: string) => string;
|
|
1413
|
+
readonly loggingConfig: (root: string, id: string) => string;
|
|
1414
|
+
readonly nativesDir: (root: string, versionId: string) => string;
|
|
1415
|
+
/**
|
|
1416
|
+
* Path to a runtime component's root directory. Honours `installRoot` (custom global
|
|
1417
|
+
* runtime location) when present; otherwise falls back to `<directory>/runtime/<component>`.
|
|
1418
|
+
*/
|
|
1419
|
+
readonly runtimeRoot: (directory: string, component: string, installRoot?: string) => string;
|
|
1420
|
+
readonly runtimeJavaExecutable: (directory: string, component: string, os: OperatingSystem, installRoot?: string) => string;
|
|
1421
|
+
readonly forgeInstaller: (root: string, mavenVersion: string) => string;
|
|
1422
|
+
};
|
|
1423
|
+
|
|
1336
1424
|
/** Inputs to {@link createMemoryCache}. */
|
|
1337
1425
|
interface MemoryCacheOptions {
|
|
1338
1426
|
readonly maxEntries?: number;
|
|
@@ -1455,6 +1543,39 @@ type PlanRuntimeRepairInput = AspectRepairInput;
|
|
|
1455
1543
|
*/
|
|
1456
1544
|
declare function planRuntimeRepair(input: PlanRuntimeRepairInput): Promise<RepairPlan>;
|
|
1457
1545
|
|
|
1546
|
+
/** UI-oriented coarse progress stages, identical across install and repair flows. */
|
|
1547
|
+
declare const InstallStages: {
|
|
1548
|
+
readonly PREPARE: "prepare";
|
|
1549
|
+
readonly RUNTIME: "runtime";
|
|
1550
|
+
readonly MINECRAFT: "minecraft";
|
|
1551
|
+
readonly LOADER: "loader";
|
|
1552
|
+
readonly FINALIZE: "finalize";
|
|
1553
|
+
};
|
|
1554
|
+
type InstallStage = (typeof InstallStages)[keyof typeof InstallStages];
|
|
1555
|
+
interface ProgressSnapshot {
|
|
1556
|
+
readonly stage: InstallStage;
|
|
1557
|
+
readonly stagePercent: number;
|
|
1558
|
+
readonly overallPercent: number;
|
|
1559
|
+
readonly bytesDownloaded: number;
|
|
1560
|
+
readonly totalBytes: number;
|
|
1561
|
+
readonly currentFile?: string;
|
|
1562
|
+
}
|
|
1563
|
+
interface ProgressTrackerOptions {
|
|
1564
|
+
/** Milliseconds between snapshot pushes. Defaults to 100ms. */
|
|
1565
|
+
readonly throttleMs?: number;
|
|
1566
|
+
}
|
|
1567
|
+
interface InstallProgressTracker {
|
|
1568
|
+
/** Pass directly as the `onEvent` callback to `install.run` / `repair.run`. */
|
|
1569
|
+
readonly onEvent: ProgressListener;
|
|
1570
|
+
snapshot(): ProgressSnapshot;
|
|
1571
|
+
/** First push fires immediately with the initial snapshot. */
|
|
1572
|
+
subscribe(listener: (snapshot: ProgressSnapshot) => void): () => void;
|
|
1573
|
+
/** Force-emit a final 100% snapshot and stop the throttle timer. */
|
|
1574
|
+
finish(): void;
|
|
1575
|
+
}
|
|
1576
|
+
/** Aggregate `ProgressEvent`s from one install/repair run into throttled UI snapshots. */
|
|
1577
|
+
declare function createInstallProgressTracker(plan: Pick<InstallPlan, "actions">, options?: ProgressTrackerOptions): InstallProgressTracker;
|
|
1578
|
+
|
|
1458
1579
|
/**
|
|
1459
1580
|
* Stable error code discriminator. Consumers can `switch (e.code)` exhaustively.
|
|
1460
1581
|
*
|
|
@@ -1711,4 +1832,4 @@ declare const RUNTIME_PLATFORM_KEYS: Readonly<Record<OperatingSystem, Readonly<R
|
|
|
1711
1832
|
*/
|
|
1712
1833
|
declare const FALLBACK_COMPONENT: string;
|
|
1713
1834
|
|
|
1714
|
-
export { ASSETS_DIR, ASSETS_INDEXES_DIR, ASSETS_LEGACY_DIR, ASSETS_LOG_CONFIGS_DIR, ASSETS_OBJECTS_DIR, ASSETS_RESOURCES_DIR, ASSETS_VIRTUAL_DIR, ApiEndpoints, type ApiEndpointsShape, type Architecture, Architectures, type ArgumentEntry, type ArtifactDownload, type AspectRepairInput, type AssetIndexDocument, type AssetIndexReference, type AssetObject, type AuthMode, AuthModes, BASE_JVM_ARGS, CACHE_MAX_ENTRIES, CACHE_TTL_MS, ChildProcessSpawner, DEFAULT_KILL_GRACE_MS, DEFAULT_LAUNCHER_NAME, DEFAULT_LAUNCHER_VERSION, DEFAULT_LIBRARY_REPOSITORY, DEFAULT_MAX_MB, DEFAULT_MIN_MB, DOWNLOAD_CONCURRENCY, type DetectSystemInput, type DiscoveredLoaderHint, type DiscoveredRuntimeHint, type DiscoveredTarget, type DownloadAction, EXTRACTION_MAX_COMPRESSION_RATIO, EXTRACTION_MAX_ENTRY_COUNT, EXTRACTION_MAX_FILE_SIZE, EXTRACTION_MAX_TOTAL_SIZE, type EventType, EventTypes, type ExtractNativeAction, FABRIC_MAVEN_BASE, FALLBACK_COMPONENT, FORGE_INSTALLERS_DIR, FORGE_INSTALLER_MAX_SIZE, FORGE_MAVEN_BASE, type FabricCompatibilityEntry, type FabricListInput, type FabricLoaderSummary, type FabricProfile, type FabricResolveInput, FabricVersionsApi, FetchHttpClient, type FileRef, type ForgeBuildSummary, type ForgeInstallProfile, type ForgeListInput, type ForgeProcessor, type ForgeProfileData, type ForgeResolveInput, type ForgeVersionJson, ForgeVersionsApi, HTTP_RETRY_BACKOFF_BASE_MS, HTTP_RETRY_BACKOFF_CAP_MS, HTTP_RETRY_MAX, HTTP_TIMEOUT_MS, type HttpClient, type HttpHeaders, type HttpRequestOptions, type HttpResponse, type InstallAction, type InstallActionKind, InstallActionKinds, type InstallPhase, InstallPhases, type InstallPlan, type InstallReport, JAVA_EXECUTABLE, LAUNCH_PLACEHOLDERS, LEGACY_JVM_ARGS, LIBRARIES_DIR, type LaunchAuth, type LaunchComposition, type LaunchExit, type LaunchMemoryOptions, type LaunchOptions, type LaunchPlaceholder, type LaunchResolutionOptions, type LaunchRunOptions, type LaunchSession, type LibraryArtifact, type LibraryRule, type Loader, type LoaderKind, Loaders, type LogLevel, LogLevels, type Logger, MACOS_JVM_ARGS, MAC_RUNTIME_PREFIX, MAX_PROCESSOR_STDERR_LINES, type MemoryCacheOptions, type MetadataCache, type MinecraftArguments, type MinecraftChannel, MinecraftChannels, type MinecraftDownloads, type MinecraftGetInput, type MinecraftJavaVersion, MinecraftKit, MinecraftKitError, type MinecraftKitErrorCode, type MinecraftKitErrorContext, type MinecraftKitOptions, type MinecraftLatestInput, type MinecraftLibrary, type MinecraftLibraryDownloads, type MinecraftListInput, type MinecraftLogging, type MinecraftVersionManifest, type MinecraftVersionSummary, MinecraftVersionsApi, NATIVES_DIR_NAME, NODE_ARCH_TO_MOJANG_ARCH, NODE_PLATFORM_TO_MOJANG_OS, type OfflineAuth, type OnlineAuth, type OperatingSystem, OperatingSystems, type OperationOptions, PROGRESS_EVENT_INTERVAL_MS, type PlanFabricRepairInput, type PlanForgeRepairInput, type PlanMinecraftRepairInput, type PlanRuntimeInstallInput, type PlanRuntimeRepairInput, type PlanStandaloneRuntimeInstallInput, type ProcessStream, type ProcessorRef, type ProgressEvent, type ProgressListener, RUNTIMES_DIR, RUNTIME_PLATFORM_KEYS, type RepairAspect, type RepairPhase, RepairPhases, type RepairPlan, type RepairPlanOptions, type RepairReport, type ResolvedFabricLoader, type ResolvedForgeLoader, type ResolvedMinecraft, type ResolvedRuntime, type ResolvedVanillaLoader, type ResolverContext, type RunForgeProcessorAction, type RunRepairInput, type RuntimeComponent, RuntimeComponents, type RuntimeFileDirectory, type RuntimeFileEntry, type RuntimeFileFile, type RuntimeFileLink, type RuntimeFilesManifest, type RuntimeIndex, type RuntimeIndexEntry, type RuntimeIndexPlatform, type RuntimeListEntry, type RuntimeListInput, RuntimePreference, type RuntimePreferenceKind, type RuntimeResolveInput, type RuntimeSystem, RuntimeVersionsApi, SPAWNER_MAX_LINE_BYTES, type SpawnOptions, type SpawnedProcess, type Spawner, type Target, type TargetCreateInput, type TargetListInput, type TargetLoaderInput, type TargetResolveInput, TargetsApi, type TargetsApiContext, USER_AGENT, type UpdatePlan, type UpdateReport, VERSIONS_DIR, type VerificationFileResult, type VerificationKind, VerificationKinds, type VerificationResult, type VerifyFabricInput, VerifyFileCategories, type VerifyFileCategory, type VerifyFileStatus, VerifyFileStatuses, type VerifyForgeInput, type VerifyMinecraftInput, type VerifyOperationOptions, type VerifyRuntimeInput, VersionPreference, type VersionPreferenceKind, type WriteLoggingConfigAction, type WriteVersionJsonAction, consoleLogger, createMemoryCache, detectSystem, isErrorCode, isMinecraftKitError, offlineUuidFor, planFabricRepair, planForgeRepair, planMinecraftRepair, planRuntimeInstall, planRuntimeRepair, planStandaloneRuntimeInstall, runRepair, silentLogger, stripUuidDashes, verifyFabric, verifyForge, verifyMinecraft, verifyRuntime };
|
|
1835
|
+
export { ASSETS_DIR, ASSETS_INDEXES_DIR, ASSETS_LEGACY_DIR, ASSETS_LOG_CONFIGS_DIR, ASSETS_OBJECTS_DIR, ASSETS_RESOURCES_DIR, ASSETS_VIRTUAL_DIR, ApiEndpoints, type ApiEndpointsShape, type Architecture, Architectures, type ArgumentEntry, type ArtifactDownload, type AspectRepairInput, type AssetIndexDocument, type AssetIndexReference, type AssetObject, type AuthMode, AuthModes, BASE_JVM_ARGS, CACHE_MAX_ENTRIES, CACHE_TTL_MS, ChildProcessSpawner, DEFAULT_KILL_GRACE_MS, DEFAULT_LAUNCHER_NAME, DEFAULT_LAUNCHER_VERSION, DEFAULT_LIBRARY_REPOSITORY, DEFAULT_MAX_MB, DEFAULT_MIN_MB, DOWNLOAD_CONCURRENCY, type DetectSystemInput, type DiscoveredLoaderHint, type DiscoveredRuntimeHint, type DiscoveredTarget, type DownloadAction, EXTRACTION_MAX_COMPRESSION_RATIO, EXTRACTION_MAX_ENTRY_COUNT, EXTRACTION_MAX_FILE_SIZE, EXTRACTION_MAX_TOTAL_SIZE, type EventType, EventTypes, type ExtractNativeAction, FABRIC_MAVEN_BASE, FALLBACK_COMPONENT, FORGE_INSTALLERS_DIR, FORGE_INSTALLER_MAX_SIZE, FORGE_MAVEN_BASE, type FabricCompatibilityEntry, type FabricListInput, type FabricLoaderSummary, type FabricProfile, type FabricResolveInput, FabricVersionsApi, FetchHttpClient, type FileRef, type ForgeBuildSummary, type ForgeInstallProfile, type ForgeListInput, type ForgeProcessor, type ForgeProfileData, type ForgeResolveInput, type ForgeVersionJson, ForgeVersionsApi, HTTP_RETRY_BACKOFF_BASE_MS, HTTP_RETRY_BACKOFF_CAP_MS, HTTP_RETRY_MAX, HTTP_TIMEOUT_MS, type HttpClient, type HttpHeaders, type HttpRequestOptions, type HttpResponse, type InstallAction, type InstallActionKind, InstallActionKinds, type InstallPhase, InstallPhases, type InstallPlan, type InstallProgressTracker, type InstallReport, type InstallRunOptions, type InstallStage, InstallStages, JAVA_EXECUTABLE, LAUNCH_PLACEHOLDERS, LEGACY_JVM_ARGS, LIBRARIES_DIR, type LaunchAuth, type LaunchComposition, type LaunchExit, type LaunchMemoryOptions, type LaunchOptions, type LaunchPlaceholder, type LaunchResolutionOptions, type LaunchRunOptions, type LaunchSession, type LibraryArtifact, type LibraryRule, type Loader, type LoaderKind, Loaders, type LogLevel, LogLevels, type Logger, MACOS_JVM_ARGS, MAC_RUNTIME_PREFIX, MAX_PROCESSOR_STDERR_LINES, type MemoryCacheOptions, type MetadataCache, type MinecraftArguments, type MinecraftChannel, MinecraftChannels, type MinecraftDownloads, type MinecraftGetInput, type MinecraftJavaVersion, MinecraftKit, MinecraftKitError, type MinecraftKitErrorCode, type MinecraftKitErrorContext, type MinecraftKitOptions, type MinecraftLatestInput, type MinecraftLibrary, type MinecraftLibraryDownloads, type MinecraftListInput, type MinecraftLogging, type MinecraftVersionManifest, type MinecraftVersionSummary, MinecraftVersionsApi, NATIVES_DIR_NAME, NODE_ARCH_TO_MOJANG_ARCH, NODE_PLATFORM_TO_MOJANG_OS, type OfflineAuth, type OnlineAuth, type OperatingSystem, OperatingSystems, type OperationOptions, PROGRESS_EVENT_INTERVAL_MS, PauseController, type PlanFabricRepairInput, type PlanForgeRepairInput, type PlanMinecraftRepairInput, type PlanRuntimeInstallInput, type PlanRuntimeRepairInput, type PlanStandaloneRuntimeInstallInput, type ProcessStream, type ProcessorRef, type ProgressEvent, type ProgressListener, type ProgressSnapshot, type ProgressTrackerOptions, RUNTIMES_DIR, RUNTIME_PLATFORM_KEYS, type RepairAllInput, type RepairAllReport, type RepairAspect, type RepairPhase, RepairPhases, type RepairPlan, type RepairPlanOptions, type RepairReport, type ResolvedFabricLoader, type ResolvedForgeLoader, type ResolvedLaunchVersion, type ResolvedMinecraft, type ResolvedRuntime, type ResolvedVanillaLoader, type ResolverContext, type RunForgeProcessorAction, type RunRepairInput, type RuntimeComponent, RuntimeComponents, type RuntimeFileDirectory, type RuntimeFileEntry, type RuntimeFileFile, type RuntimeFileLink, type RuntimeFilesManifest, type RuntimeIndex, type RuntimeIndexEntry, type RuntimeIndexPlatform, type RuntimeListEntry, type RuntimeListInput, RuntimePreference, type RuntimePreferenceKind, type RuntimeResolveInput, type RuntimeSystem, RuntimeVersionsApi, SPAWNER_MAX_LINE_BYTES, type SpawnOptions, type SpawnedProcess, type Spawner, type Target, type TargetCreateInput, type TargetListInput, type TargetLoaderInput, type TargetResolveInput, TargetsApi, type TargetsApiContext, USER_AGENT, type UpdatePlan, type UpdateReport, VERSIONS_DIR, type VerificationFileResult, type VerificationKind, VerificationKinds, type VerificationResult, type VerifyFabricInput, VerifyFileCategories, type VerifyFileCategory, type VerifyFileStatus, VerifyFileStatuses, type VerifyForgeInput, type VerifyMinecraftInput, type VerifyOperationOptions, type VerifyRuntimeInput, VersionPreference, type VersionPreferenceKind, type WriteLoggingConfigAction, type WriteVersionJsonAction, consoleLogger, createInstallProgressTracker, createMemoryCache, detectSystem, isErrorCode, isMinecraftKitError, offlineUuidFor, parseMajorVersion, pickClientJarVersionId, planFabricRepair, planForgeRepair, planMinecraftRepair, planRuntimeInstall, planRuntimeRepair, planStandaloneRuntimeInstall, repairAll, resolveLaunchVersion, runRepair, silentLogger, stripUuidDashes, targetPaths, verifyFabric, verifyForge, verifyMinecraft, verifyRuntime };
|