import { VirtualFileSystem } from './vfs.js'; import { AssetManager } from './manager.js'; import { BspEntity } from './bsp.js'; export interface MapDependencies { textures: string[]; models: string[]; sounds: string[]; } export declare class AssetCrossReference { private readonly vfs; private readonly assetManager; constructor(vfs: VirtualFileSystem, assetManager: AssetManager); /** * Find which models use this texture */ getModelsUsingTexture(texturePath: string): Promise; /** * Find which maps use this model */ getMapsUsingModel(modelPath: string): Promise; /** * Find which entities use this sound. * Scans all maps and returns entities that reference the sound. * Note: The BspEntity object doesn't inherently store its origin map, * so checking the context requires correlating with the map iteration if needed by the caller, * but the interface is just BspEntity[]. */ getEntitiesUsingSound(soundPath: string): Promise; /** * Get all assets referenced by this map */ getMapDependencies(mapPath: string): Promise; private extractEntityAssets; } //# sourceMappingURL=crossReference.d.ts.map