UNPKG

@minecraft/creator-tools

Version:

Minecraft Creator Tools command line and libraries.

44 lines (43 loc) 1.89 kB
import ProjectInfoItem from "../info/ProjectInfoItem"; import Project from "../app/Project"; import IProjectInfoGenerator from "../info/IProjectInfoGenerator"; import IProjectUpdater from "../updates/IProjectUpdater"; import ProjectUpdateResult from "../updates/ProjectUpdateResult"; import { IProjectInfoTopicData } from "../info/IProjectInfoGeneratorBase"; import ProjectInfoSet from "../info/ProjectInfoSet"; import ContentIndex from "../core/ContentIndex"; export declare enum ItemTypeUpdate { UpdateFormatVersionToLatest = 1 } export declare enum ItemTypeInfo { identifier = 53, metadata = 54, category = 55, formatVersionDefined = 100, formatVersionMajorVersionLowerThanCurrent = 110, formatVersionMajorVersionHigherThanCurrent = 111, formatVersionMinorVersionLowerThanCurrent = 120, formatVersionMinorVersionHigherThanCurrent = 121, formatVersionPatchVersionLowerThanCurrent = 130, formatVersionPatchVersionHigherThanCurrent = 131, failedToRetrieveLatestMinecraftVersion = 500, failedToParseLatestMinecraftVersion = 501 } /** * Validates and updates item type definitions, including format version management. * * @see {@link ../../../public/data/forms/mctoolsval/itemtype.form.json} for topic definitions */ export default class ItemTypeManager implements IProjectInfoGenerator, IProjectUpdater { id: string; title: string; getTopicData(topicId: number): IProjectInfoTopicData | undefined; getUpdaterData(updaterId: number): { title: string; }; summarize(info: any, infoSet: ProjectInfoSet): void; generate(project: Project, contentIndex: ContentIndex): Promise<ProjectInfoItem[]>; update(project: Project, updateId: number): Promise<ProjectUpdateResult[]>; getUpdateIds(): ItemTypeUpdate[]; updateFormatVersionToLatestVersion(project: Project): Promise<ProjectUpdateResult[]>; }