/// /// /// declare module "babylonjs-loaders"{ export=BABYLON;} // Generated by dts-bundle v0.7.3 // Dependencies for this module: // ../../Tools/Gulp/babylonjs // ../../Tools/Gulp/babylonjs-loaders declare module 'babylonjs-viewer' { import { mapperManager } from 'babylonjs-viewer/configuration/mappers'; import { viewerGlobals } from 'babylonjs-viewer/configuration/globals'; import { viewerManager } from 'babylonjs-viewer/viewer/viewerManager'; import { DefaultViewer } from 'babylonjs-viewer/viewer/defaultViewer'; import { AbstractViewer } from 'babylonjs-viewer/viewer/viewer'; import { telemetryManager } from 'babylonjs-viewer/telemetryManager'; import { ModelLoader } from 'babylonjs-viewer/loader/modelLoader'; import { ViewerModel, ModelState } from 'babylonjs-viewer/model/viewerModel'; import { AnimationPlayMode, AnimationState } from 'babylonjs-viewer/model/modelAnimation'; import { ILoaderPlugin } from 'babylonjs-viewer/loader/plugins/loaderPlugin'; /** * BabylonJS Viewer * * An HTML-Based viewer for 3D models, based on BabylonJS and its extensions. */ import * as BABYLON from 'babylonjs'; import 'babylonjs-loaders'; import 'pep'; import { InitTags } from 'babylonjs-viewer/initializer'; let disableInit: boolean; /** * Dispose all viewers currently registered */ function disposeAll(): void; const Version: string; export { BABYLON, Version, InitTags, DefaultViewer, AbstractViewer, viewerGlobals, telemetryManager, disableInit, viewerManager, mapperManager, disposeAll, ModelLoader, ViewerModel, AnimationPlayMode, AnimationState, ModelState, ILoaderPlugin }; } declare module 'babylonjs-viewer/configuration/mappers' { import { ViewerConfiguration } from 'babylonjs-viewer/configuration/configuration'; /** * This is the mapper's interface. Implement this function to create your own mapper and register it at the mapper manager */ export interface IMapper { map(rawSource: any): ViewerConfiguration; } /** * The MapperManager manages the different implemented mappers. * It allows the user to register new mappers as well and use them to parse their own configuration data */ export class MapperManager { /** * The default mapper is the JSON mapper. */ static DefaultMapper: string; constructor(); /** * Get a specific configuration mapper. * * @param type the name of the mapper to load */ getMapper(type: string): IMapper; /** * Use this functio to register your own configuration mapper. * After a mapper is registered, it can be used to parse the specific type fo configuration to the standard ViewerConfiguration. * @param type the name of the mapper. This will be used to define the configuration type and/or to get the mapper * @param mapper The implemented mapper */ registerMapper(type: string, mapper: IMapper): void; /** * Dispose the mapper manager and all of its mappers. */ dispose(): void; } /** * mapperManager is a singleton of the type MapperManager. * The mapperManager can be disposed directly with calling mapperManager.dispose() * or indirectly with using BabylonViewer.disposeAll() */ export let mapperManager: MapperManager; } declare module 'babylonjs-viewer/configuration/globals' { export class ViewerGlobals { disableInit: boolean; disableWebGL2Support: boolean; } export let viewerGlobals: ViewerGlobals; } declare module 'babylonjs-viewer/viewer/viewerManager' { import { Observable } from 'babylonjs'; import { AbstractViewer } from 'babylonjs-viewer/viewer/viewer'; /** * The viewer manager is the container for all viewers currently registered on this page. * It is possible to have more than one viewer on a single page. */ export class ViewerManager { /** * A callback that will be triggered when a new viewer was added */ onViewerAdded: (viewer: AbstractViewer) => void; /** * Will notify when a new viewer was added */ onViewerAddedObservable: Observable; /** * Will notify when a viewer was removed (disposed) */ onViewerRemovedObservable: Observable; constructor(); /** * Adding a new viewer to the viewer manager and start tracking it. * @param viewer the viewer to add */ addViewer(viewer: AbstractViewer): void; /** * remove a viewer from the viewer manager * @param viewer the viewer to remove */ removeViewer(viewer: AbstractViewer): void; /** * Get a viewer by its baseId (if the container element has an ID, it is the this is. if not, a random id was assigned) * @param id the id of the HTMl element (or the viewer's, if none provided) */ getViewerById(id: string): AbstractViewer; /** * Get a viewer using a container element * @param element the HTML element to search viewers associated with */ getViewerByHTMLElement(element: HTMLElement): AbstractViewer | undefined; /** * Get a promise that will fullfil when this viewer was initialized. * Since viewer initialization and template injection is asynchronous, using the promise will guaranty that * you will get the viewer after everything was already configured. * @param id the viewer id to find */ getViewerPromiseById(id: string): Promise; /** * dispose the manager and all of its associated viewers */ dispose(): void; } export let viewerManager: ViewerManager; } declare module 'babylonjs-viewer/viewer/defaultViewer' { import { ViewerConfiguration, IModelConfiguration } from 'babylonjs-viewer/configuration/configuration'; import { Template } from 'babylonjs-viewer/templateManager'; import { AbstractViewer } from 'babylonjs-viewer/viewer/viewer'; import { ViewerModel } from 'babylonjs-viewer/model/viewerModel'; /** * The Default viewer is the default implementation of the AbstractViewer. * It uses the templating system to render a new canvas and controls. */ export class DefaultViewer extends AbstractViewer { containerElement: HTMLElement; /** * Create a new default viewer * @param containerElement the element in which the templates will be rendered * @param initialConfiguration the initial configuration. Defaults to extending the default configuration */ constructor(containerElement: HTMLElement, initialConfiguration?: ViewerConfiguration); /** * This will be executed when the templates initialize. */ protected _onTemplatesLoaded(): Promise; /** * Toggle fullscreen of the entire viewer */ toggleFullscreen: () => void; /** * Preparing the container element to present the viewer */ protected _prepareContainerElement(): void; /** * This function will configure the templates and update them after a model was loaded * It is mainly responsible to changing the title and subtitle etc'. * @param model the model to be used to configure the templates by */ protected _configureTemplate(model: ViewerModel): void; /** * This will load a new model to the default viewer * overriding the AbstractViewer's loadModel. * The scene will automatically be cleared of the old models, if exist. * @param model the configuration object (or URL) to load. */ loadModel(model?: string | IModelConfiguration): Promise; /** * Show the overlay and the defined sub-screen. * Mainly used for help and errors * @param subScreen the name of the subScreen. Those can be defined in the configuration object */ showOverlayScreen(subScreen: string): Promise | Promise