import { Scene } from "@babylonjs/core/scene"; import { ScriptMap } from "../loader"; /** * Defines the cache of all preloaded assets for scripts. * Used to populate decorated properties in scripts using @visibleAsAsset. */ export declare const scriptAssetsCache: Map; /** * Defines the map of all parsers available to parse script assets. * Some assets may not be needed by the game directly such as navmeshes which require @recast-navigation packages to be included. * This map allows to register parsers only when needed to profit from tree shaking. */ export declare const scriptAssetsParsers: Map Promise>; export interface IScriptAssetParserParameters { key: string; rootUrl: string; scene: Scene; } /** * * @param extension defines the extension supported by the parser. ie: "navmesh" * @param parser defines the parser function to parse the asset. */ export declare function registerScriptAssetParser(extension: string, parser: (parameters: IScriptAssetParserParameters) => Promise): void; /** * @internal */ export declare function _preloadScriptsAssets(rootUrl: string, scene: Scene, scriptsMap: ScriptMap): Promise;