UNPKG

@minecraft/creator-tools

Version:

Minecraft Creator Tools command line and libraries.

64 lines (63 loc) 2.27 kB
import IFile from "../storage/IFile"; import { IEventHandler } from "ste-events"; import IDefinition from "./IDefinition"; import ProjectItem from "../app/ProjectItem"; import Project from "../app/Project"; export type ImageCoords = { x1: number; y1: number; x2: number; y2: number; }; export declare const VibrantVisualsFileExtensionVariants: string[]; export default class TextureDefinition implements IDefinition { private _file?; private _isLoaded; private _isContentProcessed; private _width; private _height; private _errorMessage; private _errorProcessing; private _imageData; private _onLoaded; id: string | undefined; get width(): number; get height(): number; get errorMessage(): string; get errorProcessing(): boolean; get imageData(): Uint8Array<ArrayBufferLike>; get data(): Uint8Array<ArrayBufferLike>; get isLoaded(): boolean; get file(): IFile | undefined; get onLoaded(): import("ste-events").IEvent<TextureDefinition, TextureDefinition>; set file(newFile: IFile | undefined); getPixel(x: number, y: number): { r: number; g: number; b: number; a: number; }; get isContentProcessed(): boolean; processContent(): Promise<void>; unloadContent(): void; /** * Decode image data (PNG or TGA) to raw RGBA pixels. * This is a shared utility method for use by Model2DRenderer, ModelMeshFactory, etc. * * @param data Raw image file bytes * @param fileType File extension ('png' or 'tga') * @returns Decoded pixels with width, height, and RGBA data, or undefined if decoding fails */ static decodeToPixels(data: Uint8Array, fileType: string): Promise<{ width: number; height: number; pixels: Uint8Array; } | undefined>; static ensureOnFile(file: IFile, loadHandler?: IEventHandler<TextureDefinition, TextureDefinition>): Promise<TextureDefinition>; getReferencePath(): string; static canonicalizeTexturePath(projectPath: string | undefined): string; static getTexturePath(projectPath: string): string; persist(): boolean; load(): Promise<void>; addChildItems(project: Project, item: ProjectItem): Promise<void>; }