UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

95 lines 2.5 kB
import { default as BinaryStream } from '../../../../jsbinaryutils/src/index.ts'; import { default as SkinAnimation } from './SkinAnimation'; import { default as SkinCape } from './SkinCape'; import { default as SkinImage } from './SkinImage'; import { default as SkinPersona } from './skin-persona/SkinPersona'; interface Image { ImageWidth: number; ImageHeight: number; Image: string; } interface AnimatedImageData extends Image { Frames: number; Type: number; AnimationExpression: number; } interface PersonaPiece { IsDefault: boolean; PackId: string; PieceId: string; PieceType: string; ProductId: string; } interface PieceTintColor { Colors: string[]; PieceType: string; } interface JWT { SkinId: string; CapeId: string; SkinResourcePatch: string; PlayFabId: string; SkinImageHeight: number; SkinImageWidth: number; SkinGeometryData: string; SkinAnimationData: string; CapeImageHeight: number; CapeImageWidth: number; CapeOnClassicSkin: boolean; SkinData: string; CapeData: string; PremiumSkin: boolean; PersonaSkin: boolean; SkinColor: string; ArmSize: string; AnimatedImageData: AnimatedImageData[]; PersonaPieces: PersonaPiece[]; PieceTintColors: PieceTintColor[]; } export default class Skin { private id; private playFabId; private resourcePatch; private image; private readonly animations; private cape; private geometry; private animationData; private premium; private persona; private capeOnClassicSkin; private color; private armSize; private personaData; /** * Full skin ID, computed because * not sent on JWT. */ fullId: string; isTrusted: boolean; /** * Loads a skin from a JSON file containing skin data * using minecraft bedrock login fields. * * (loads the skin persona) */ static fromJWT(jwt: JWT): Skin; networkSerialize(stream: BinaryStream): void; getId(): string; getFullId(): string; getPlayFabId(): string; getResourcePatch(): string; getImage(): SkinImage; getAnimations(): Set<SkinAnimation>; getAnimationData(): string; isPersona(): boolean; isPremium(): boolean; isCapeOnClassicSkin(): boolean; getColor(): string; getArmSize(): string; getPersonaData(): SkinPersona; getGeometry(): string; getCape(): SkinCape; } export {}; //# sourceMappingURL=Skin.d.ts.map