@spearwolf/twopoint5d
Version:
Create 2.5D realtime graphics and pixelart with WebGL and three.js
36 lines • 1.35 kB
TypeScript
import type { TextureOptionClasses } from './TextureFactory.js';
import type { TileSetOptions } from './TileSet.js';
export type TextureSource = HTMLImageElement | HTMLCanvasElement | HTMLVideoElement;
type FrameBasedAnimationsTimingData = {
duration: number;
frameRate?: never;
} | {
duration?: never;
frameRate: number;
};
export type FrameBasedAnimationsDataByTileIds = FrameBasedAnimationsTimingData & {
tileIds: number[];
};
export type FrameBasedAnimationsDataByTileCount = FrameBasedAnimationsTimingData & {
firstTileId: number;
tileCount: number;
};
export type FrameBasedAnimationsDataByAtlas = FrameBasedAnimationsTimingData & {
frameNameQuery: string;
};
export type FrameBasedAnimationsData = FrameBasedAnimationsDataByTileIds | FrameBasedAnimationsDataByTileCount | FrameBasedAnimationsDataByAtlas;
export type FrameBasedAnimationsDataMap = Record<string, FrameBasedAnimationsData>;
export interface TextureResourceData {
imageUrl?: string;
overrideImageUrl?: string;
atlasUrl?: string;
tileSet?: TileSetOptions;
texture?: TextureOptionClasses[];
frameBasedAnimations?: FrameBasedAnimationsDataMap;
}
export interface TextureStoreData {
defaultTextureClasses: TextureOptionClasses[];
items: Record<string, TextureResourceData>;
}
export {};
//# sourceMappingURL=types.d.ts.map