import { ElementRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges, NgZone, OnInit } from '@angular/core';
import { Types } from '@cornerstonejs/core';
import { CornerstoneService, ImageInfo } from '../core';
import * as i0 from "@angular/core";
export declare class BaseViewportComponent implements OnInit, OnChanges, OnDestroy {
    protected csService: CornerstoneService;
    protected zone: NgZone;
    viewportInput?: Partial<Types.PublicViewportInput>;
    imageInfo?: ImageInfo;
    segmentInfo?: ImageInfo;
    viewportElementRef: ElementRef<HTMLElement>;
    active: boolean;
    viewportUpdated: EventEmitter<string>;
    viewportDestroy: EventEmitter<string>;
    viewport: Types.IViewport;
    constructor(csService: CornerstoneService, zone: NgZone);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    get renderingEngineId(): string;
    get renderingEngine(): import("@cornerstonejs/core").RenderingEngine;
    get toolGroup(): import("@cornerstonejs/tools/dist/esm/types").IToolGroup;
    protected updateViewport(): void;
    protected renderImage(image: ImageInfo): void;
    protected renderSegment(image: ImageInfo, segment: ImageInfo): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<BaseViewportComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<BaseViewportComponent, never, never, { "viewportInput": { "alias": "viewportInput"; "required": false; }; "imageInfo": { "alias": "imageInfo"; "required": false; }; "segmentInfo": { "alias": "segmentInfo"; "required": false; }; "active": { "alias": "active"; "required": false; }; }, { "viewportUpdated": "viewportUpdated"; "viewportDestroy": "viewportDestroy"; }, never, never, false, never>;
}
