import { EventDispatcher, ImageLoader, LoadingManager, TextureLoader, WebGLRenderer } from 'three'; import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader.js'; import { DRACOLoader } from 'three/examples/jsm/loaders/DRACOLoader.js'; import { EXRLoader } from 'three/examples/jsm/loaders/EXRLoader'; import { KTX2Loader } from 'three/examples/jsm/loaders/KTX2Loader.js'; import { OBJLoader } from 'three/examples/jsm/loaders/OBJLoader.js'; import { RGBELoader } from 'three/examples/jsm/loaders/RGBELoader.js'; export declare enum ASSET_TYPE { GLTF = "GLTF", OBJ = "OBJ", TEXTURE = "TEXTURE", IMAGE = "IMAGE", RGBE = "RGBE", EXR = "EXR", KTX2 = "KTX2", AUDIO = "AUDIO" } export interface AssetDescriptor { url: string; type: ASSET_TYPE; callback: (asset: any) => void; } interface LoadEventData { type: 'load'; } interface ProgressEventData { type: 'progress'; url: string; loaded: number; total: number; } interface ErrorEventData { type: 'error'; url: string; } declare type AssetManagerEventMap = { load: LoadEventData; progress: ProgressEventData; error: ErrorEventData; }; export declare const PRIVATE: unique symbol; export declare class AssetManager extends EventDispatcher { /** @ignore */ [PRIVATE]: { loadingManager: LoadingManager; dracoLoader: DRACOLoader; ktx2Loader: KTX2Loader; rgbEloader: RGBELoader; exrLoader: EXRLoader; gtlfLoader: GLTFLoader; objLoader: OBJLoader; textureLoader: TextureLoader; imageLoader: ImageLoader; initialAssetIds: string[]; assetMap: Map; }; constructor(renderer: WebGLRenderer, initialAssets: Record); loadAsset(id: string, descriptor: AssetDescriptor): any; getAsset(id: string): any; get initialAssetsLoaded(): boolean; private setAsset; private loadGLTF; private loadOBJ; private loadTexture; private loadImage; private loadRGBE; private loadEXR; private loadKTX2; } export {}; //# sourceMappingURL=AssetManager.d.ts.map