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; export interface TextureResourceData { imageUrl?: string; overrideImageUrl?: string; atlasUrl?: string; tileSet?: TileSetOptions; texture?: TextureOptionClasses[]; frameBasedAnimations?: FrameBasedAnimationsDataMap; } export interface TextureStoreData { defaultTextureClasses: TextureOptionClasses[]; items: Record; } export {}; //# sourceMappingURL=types.d.ts.map