import { Animation, Frame, SpriteSheet } from "excalibur"; import { AsepriteSpriteSheet } from "./AsepriteSpriteSheet"; export declare const AnimationTypes: { Forward: number; Reverse: number; PingPong: number; PingPongReverse: number; }; export interface AnimationTag { name: string; from: number; to: number; type: number; repeat: number; } export interface LayerData { name: string; opacity: number; visible: boolean; } /** * Parses native aseprite file format * Format documented from https://github.com/aseprite/aseprite/blob/main/docs/ase-file-specs.md */ export declare class AsepriteNativeParser { arraybuffer: ArrayBuffer; private _cursor; private _colorDepth; private _transparentIndex; private _frames; private _dataView; private _exFrames; private _sprites; private _tags; private _canvasFrames; private _indexedColors; private _currentLayer; private _layerData; private _ignoreOldPaletteChunk; height: number; width: number; constructor(arraybuffer: ArrayBuffer); parse(): Promise; getAsepriteSheet(): AsepriteSpriteSheet; getFrames(): Frame[]; getSpriteSheet(): SpriteSheet; getAnimations(): Map; private _animationCache; /** * Optionally get an animation by name * @param name * @returns */ getAnimation(name?: string): Animation; private _parseFrame; private _parseChunk; private _parseHeader; private _transformImageDataToRGBA; private _readString; private _readBytes; private _readPixel; private _readFixed; private _readDWORD; private _readWORD; private _readSHORT; private _readBYTE; private _advanceBytes; }