@minecraft/creator-tools
Version:
Minecraft Creator Tools command line and libraries.
72 lines (71 loc) • 3.42 kB
TypeScript
import IFile from "../storage/IFile";
import { IEventHandler } from "ste-events";
import IAddonManifest, { IAddonDependency, IAddonManifestHeader, IAddonMetadata, IAddonModule } from "./IAddonManifest";
import Project from "../app/Project";
import IDefinition from "./IDefinition";
export default class BehaviorManifestDefinition implements IDefinition {
private _file?;
private _id?;
private _isLoaded;
private _loadedWithComments;
definition?: IAddonManifest;
private _onLoaded;
get isLoaded(): boolean;
get file(): IFile | undefined;
set file(newFile: IFile | undefined);
get onLoaded(): import("ste-events").IEvent<BehaviorManifestDefinition, BehaviorManifestDefinition>;
get productType(): "" | "addon" | undefined;
set productType(value: "" | "addon" | undefined);
get description(): string | undefined;
set description(newDescription: string | undefined);
get name(): string | undefined;
set name(newName: string | undefined);
get capabilities(): string[];
get id(): string | undefined;
set id(newId: string | undefined);
setUuid(newId: string | undefined, project?: Project): Promise<void>;
static setNewBehaviorPackId(project: Project, newBehaviorPackId: string, oldBehaviorPackId: string): Promise<void>;
hasAddonProperties(): boolean;
setAddonProperties(): Promise<void>;
randomizeModuleUuids(newScriptModuleId?: string, oldScriptModuleId?: string): void;
getNonScriptModuleDependencyCount(): number;
getFirstNonScriptModuleDependency(): IAddonDependency;
static ensureOnFile(file: IFile, loadHandler?: IEventHandler<BehaviorManifestDefinition, BehaviorManifestDefinition>): Promise<BehaviorManifestDefinition>;
get version(): string | number[];
get minEngineVersion(): string | number[];
setMinEngineVersion(versionArray: number[], project: Project): void;
setModuleVersion(moduleName: string, version: string): boolean;
persist(): boolean;
ensureDefinition(name: string, description: string): void;
ensureHeaderForProject(project: Project): IAddonManifestHeader;
ensureMetadata(): IAddonMetadata | undefined;
ensureGeneratedWith(toolName: string, versionString: string): void;
ensureHeader(name: string, description: string): IAddonManifestHeader;
getDefaultHeader(name: string, description: string): {
name: string;
description: string;
version: number[];
min_engine_version: number[];
uuid: string;
};
getScriptModule(): IAddonModule | undefined;
ensureScriptModule(name: string, description: string): IAddonModule;
save(): Promise<void>;
/**
* Loads the definition from the file.
* @param preserveComments If true, uses comment-preserving JSON parsing for edit/save cycles.
* If false (default), uses efficient standard JSON parsing.
* Can be called again with true to "upgrade" a read-only load to read/write.
*/
load(preserveComments?: boolean): Promise<void>;
static getContent(project: Project, contentOnlyUpdate?: boolean): Promise<string>;
static validatePackReferenceVersion(version: any): {
isValid: boolean;
versionArray?: number[];
errorMessage?: string;
};
static validatePackId(packId: any): {
isValid: boolean;
errorMessage?: string;
};
}