import type IStackViewport from '../types/IStackViewport'; import type IVolumeViewport from '../types/IVolumeViewport'; import type * as EventTypes from '../types/EventTypes'; import type { PublicViewportInput, InternalViewportInput, NormalizedViewportInput, IViewport } from '../types/IViewport'; import type { VtkOffscreenMultiRenderWindow } from '../types'; export declare const VIEWPORT_MIN_SIZE = 2; declare abstract class BaseRenderingEngine { readonly id: string; hasBeenDestroyed: boolean; offscreenMultiRenderWindow: VtkOffscreenMultiRenderWindow; offScreenCanvasContainer: HTMLDivElement; protected _viewports: Map; protected _needsRender: Set; protected _animationFrameSet: boolean; protected _animationFrameHandle: number | null; protected useCPURendering: boolean; constructor(id?: string); enableElement(viewportInputEntry: PublicViewportInput): void; disableElement(viewportId: string): void; setViewports(publicViewportInputEntries: PublicViewportInput[]): void; resize(immediate?: boolean, keepCamera?: boolean): void; getViewport(viewportId: string): IViewport; getViewports(): IViewport[]; getStackViewport(viewportId: string): IStackViewport; getStackViewports(): IStackViewport[]; getVolumeViewports(): IVolumeViewport[]; render(): void; renderFrameOfReference: (FrameOfReferenceUID: string) => void; renderViewports(viewportIds: string[]): void; renderViewport(viewportId: string): void; destroy(): void; fillCanvasWithBackgroundColor(canvas: HTMLCanvasElement, backgroundColor: [number, number, number]): void; private _normalizeViewportInputEntry; private _normalizeViewportInputEntries; private _resizeUsingCustomResizeHandler; private _removeViewport; private addCustomViewport; getRenderer(viewportId: any): import("@kitware/vtk.js/Rendering/Core/Renderer").vtkRenderer; getOffscreenMultiRenderWindow(viewportId?: string): VtkOffscreenMultiRenderWindow; private setCustomViewports; protected _getViewportsAsArray(): IViewport[]; private _setViewportsToBeRenderedNextFrame; private _render; private _resetViewport; private _clearAnimationFrame; private _reset; protected _throwIfDestroyed(): void; protected abstract _resizeVTKViewports(vtkDrivenViewports: (IStackViewport | IVolumeViewport)[], keepCamera: boolean, immediate: boolean): void; protected abstract enableVTKjsDrivenViewport(viewportInputEntry: NormalizedViewportInput): void; protected abstract addVtkjsDrivenViewport(viewportInputEntry: InternalViewportInput, offscreenCanvasProperties?: unknown): void; protected abstract _renderFlaggedViewports(): void; protected abstract setVtkjsDrivenViewports(viewportInputEntries: NormalizedViewportInput[]): void; protected abstract _renderViewportFromVtkCanvasToOnscreenCanvas(viewport: IViewport, offScreenCanvas: HTMLCanvasElement): EventTypes.ImageRenderedEventDetail; } export default BaseRenderingEngine;