import { HelperLut } from './../../volume-rendering/helpers/helpers.lut'; import { EntityModel } from './../../model'; import { OnInit, OnDestroy, EventEmitter, AfterViewInit } from '@angular/core'; import { Scene, Object3D, Group } from 'three'; import { Subject } from 'rxjs'; import { SceneService } from '../scene.service'; import { RendererService } from '../renderer.service'; export interface ThreeCanvas { scene: Scene; render$: Subject; } export declare abstract class EntityComponent implements OnInit, OnDestroy, AfterViewInit { sceneService: SceneService; private rendererService; entity: Object3D | undefined | Group; private changeSubject; protected ef: any; protected lut: HelperLut; readonly changed$: import("rxjs").Observable; private _model; changed: EventEmitter; model: T; constructor(sceneService: SceneService, rendererService: RendererService); abstract createEntity(model: T): Object3D; abstract updateEntity(model: T, entity: Object3D): Object3D; abstract defaultModel(): T; readonly mesh: Object3D | Group; ngOnDestroy(): void; canvasReady(): void; ngOnInit(): void; ngAfterViewInit(): void; }