import BaseRenderingEngine from './BaseRenderingEngine.js';
import type IStackViewport from '../types/IStackViewport.js';
import type IVolumeViewport from '../types/IVolumeViewport.js';
import type * as EventTypes from '../types/EventTypes.js';
import type { InternalViewportInput, NormalizedViewportInput, IViewport } from '../types/IViewport.js';
declare class TiledRenderingEngine extends BaseRenderingEngine {
    constructor(id?: string);
    private ensureOffscreenResources;
    protected enableVTKjsDrivenViewport(viewportInputEntry: NormalizedViewportInput): void;
    protected addVtkjsDrivenViewport(viewportInputEntry: InternalViewportInput, offscreenCanvasProperties?: {
        offScreenCanvasWidth: number;
        offScreenCanvasHeight: number;
        xOffset: number;
    }): void;
    protected setVtkjsDrivenViewports(viewportInputEntries: NormalizedViewportInput[]): void;
    protected _resizeVTKViewports(vtkDrivenViewports: (IStackViewport | IVolumeViewport)[], keepCamera?: boolean, immediate?: boolean): void;
    protected _renderFlaggedViewports: () => void;
    private performVtkDrawCall;
    protected renderViewportUsingCustomOrVtkPipeline(viewport: IViewport): EventTypes.ImageRenderedEventDetail;
    protected _renderViewportFromVtkCanvasToOnscreenCanvas(viewport: IViewport, offScreenCanvas: HTMLCanvasElement): EventTypes.ImageRenderedEventDetail;
    private _resizeOffScreenCanvas;
    private _resize;
    private _getViewportCoordsOnOffScreenCanvas;
}
export default TiledRenderingEngine;
