UNPKG

@minecraft/creator-tools

Version:

Minecraft Creator Tools command line and libraries.

155 lines (154 loc) 4.15 kB
/** * ScriptModuleInfo - Minecraft Script API module information * * Contains version information, API documentation, and metadata for * Minecraft Script API modules. */ /** * Script module stability level */ export declare enum ModuleStability { Stable = "stable", Beta = "beta", Internal = "internal" } /** * Information about a script module */ export interface IScriptModuleInfo { /** Module name (e.g., "@minecraft/server") */ name: string; /** Latest stable version */ latestStableVersion: string; /** Latest beta version */ latestBetaVersion: string; /** Minimum supported Minecraft version */ minMinecraftVersion: string; /** Short description */ description: string; /** Stability level */ stability: ModuleStability; /** NPM package name for type definitions */ typesPackage: string; /** Documentation URL */ docsUrl: string; } /** * Known Minecraft Script API modules */ export declare const SCRIPT_MODULES: IScriptModuleInfo[]; /** * Utility class for script module information */ export declare class ScriptModuleInfoProvider { private static moduleMap; /** * Get module map (lazy initialization) */ private static getModuleMap; /** * Get info for a specific module */ static getModuleInfo(moduleName: string): IScriptModuleInfo | undefined; /** * Gets the latest version for a Minecraft module. * @param moduleName Module name (with or without @minecraft/ prefix) * @param preferBeta If true, returns the latest beta version; otherwise returns stable * @returns The version string, or undefined if module is not known */ static getLatestVersion(moduleName: string, preferBeta?: boolean): string | undefined; /** * Gets version info for a Minecraft module. * @param moduleName Module name (with or without @minecraft/ prefix) * @returns Version info object, or undefined if module is not known */ static getVersionInfo(moduleName: string): { latestStableVersion: string; latestBetaVersion: string; minMinecraftVersion: string; } | undefined; /** * Get all module names */ static getAllModuleNames(): string[]; /** * Check if a module name is a valid Minecraft module */ static isMinecraftModule(moduleName: string): boolean; /** * Parse a module version from package.json dependency */ static parseModuleVersion(versionSpec: string): { version: string; isBeta: boolean; }; /** * Check if a module version is outdated */ static isVersionOutdated(moduleName: string, currentVersion: string): { isOutdated: boolean; latestVersion: string; isBetaAvailable: boolean; }; /** * Compare two semver versions * Returns: -1 if a < b, 0 if a == b, 1 if a > b */ static compareVersions(a: string, b: string): number; /** * Get recommended dependency entries for manifest.json */ static getRecommendedDependency(moduleName: string, useBeta?: boolean): { module_name: string; version: string; } | null; } /** * Common Script API types that need special handling */ export declare const COMMON_SCRIPT_TYPES: { world: { module: string; description: string; }; system: { module: string; description: string; }; Entity: { module: string; description: string; }; Player: { module: string; description: string; }; Block: { module: string; description: string; }; Dimension: { module: string; description: string; }; ItemStack: { module: string; description: string; }; Vector3: { module: string; description: string; }; ActionFormData: { module: string; description: string; }; MessageFormData: { module: string; description: string; }; ModalFormData: { module: string; description: string; }; };