@minecraft/creator-tools
Version:
Minecraft Creator Tools command line and libraries.
43 lines (42 loc) • 1.72 kB
TypeScript
import ProjectInfoItem from "../info/ProjectInfoItem";
import Project from "../app/Project";
import IProjectInfoGenerator from "../info/IProjectInfoGenerator";
import BehaviorManifestDefinition from "../minecraft/BehaviorManifestDefinition";
import NpmPackageDefinition from "../devproject/NpmPackageDefinition";
import ProjectItem from "../app/ProjectItem";
import IProjectUpdater from "../updates/IProjectUpdater";
import ProjectUpdateResult from "../updates/ProjectUpdateResult";
import ProjectInfoSet from "../info/ProjectInfoSet";
import ContentIndex from "../core/ContentIndex";
/**
* Validates and updates script module dependencies in behavior pack manifests and npm packages.
*
* @see {@link ../../../public/data/forms/mctoolsval/scriptmodule.form.json} for topic definitions
*/
export default class ScriptModuleManager implements IProjectInfoGenerator, IProjectUpdater {
id: string;
title: string;
modulesInUse: {
[name: string]: {
version: string;
manifest: BehaviorManifestDefinition;
item: ProjectItem;
}[];
};
packRegsInUse: {
[name: string]: {
package: NpmPackageDefinition;
isDevDependency: boolean;
version: string;
}[];
};
getUpdaterData(topicId: number): {
title: string;
};
summarize(info: any, infoSet: ProjectInfoSet): void;
private generateProjectState;
generate(project: Project, contentIndex: ContentIndex): Promise<ProjectInfoItem[]>;
update(project: Project, updateId: number): Promise<ProjectUpdateResult[]>;
getUpdateIds(): number[];
updateModulesToLatestVersion(project: Project): Promise<ProjectUpdateResult[]>;
}