import { Components, EdgesClipper, Fragments, OrthoPerspectiveCamera, SimpleDimensions, SimpleGrid } from 'openbim-components'; import { Observable } from 'rxjs'; import { ElementData, PickedObject, Tool, ViewerSettings } from './bim-viewer.interfaces'; import * as i0 from "@angular/core"; export declare class BimViewerService { private sceneReadyPromiseResolve; sceneReady: Promise; private container?; settings?: ViewerSettings; components: Components; fragments?: Fragments; private dimensions?; private grid?; private clipper?; private camera?; private fragmentIdToModelIdxMap; idMap: { [globalId: string]: ElementData; }; private hoveredElement; private hoveredElement$; private lastPicked?; private fragmentTypeMap; private loadedFragments; private loadedFragments$; private currentTool; private currentTool$; private loadedModels; private loadedElements$; private selection; private selection$; constructor(); init(canvas: HTMLElement, settings?: ViewerSettings): void; getClipper(): EdgesClipper; getGrid(): SimpleGrid; getDimensions(): SimpleDimensions; getCamera(): OrthoPerspectiveCamera; clearScene(): Promise; loadModel(file: File): Promise; getHoveredElement(): Observable; getSelection(): Observable; getLoadedFragments(): Observable; getLoadedElements(): Observable; getCurrentTool(): Observable; setCurrentTool(tool: Tool): void; updatePostProduction(): void; forceLoadElements(globalIds: string[]): Promise; forceLoadElementsOfType(type: string): Promise; private addLights; private addClipperComponent; private addDimensionsComponent; private addEvents; private addGridComponent; private initFragments; private loadFragments; private getPickedObject; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }