import { OnDestroy } from '@angular/core';
import { CesiumService } from '../../../angular-cesium/services/cesium/cesium.service';
import { AcNotification } from '../../../angular-cesium/models/ac-notification';
import { CoordinateConverter } from '../../../angular-cesium/services/coordinate-converter/coordinate-converter.service';
import { MapEventsManagerService } from '../../../angular-cesium/services/map-events-mananger/map-events-manager';
import { Subject } from 'rxjs';
import { CameraService } from '../../../angular-cesium/services/camera/camera.service';
import { EditPoint } from '../../models/edit-point';
import { EllipsesManagerService } from '../../services/entity-editors/ellipses-editor/ellipses-manager.service';
import { EllipsesEditorService } from '../../services/entity-editors/ellipses-editor/ellipses-editor.service';
import { EllipseEditUpdate } from '../../models/ellipse-edit-update';
import { LabelProps } from '../../models/label-props';
import { EditableEllipse } from '../../models/editable-ellipse';
import * as i0 from "@angular/core";
export declare class EllipsesEditorComponent implements OnDestroy {
    private ellipsesEditor;
    private coordinateConverter;
    private mapEventsManager;
    private cameraService;
    private ellipsesManager;
    private cesiumService;
    private editLabelsRenderFn;
    Cesium: any;
    editPoints$: Subject<AcNotification>;
    editEllipses$: Subject<AcNotification>;
    private editEllipsesLayer;
    private editPointsLayer;
    constructor(ellipsesEditor: EllipsesEditorService, coordinateConverter: CoordinateConverter, mapEventsManager: MapEventsManagerService, cameraService: CameraService, ellipsesManager: EllipsesManagerService, cesiumService: CesiumService);
    private startListeningToEditorUpdates;
    getLabelId(element: any, index: number): string;
    renderEditLabels(ellipse: EditableEllipse, update: EllipseEditUpdate, labels?: LabelProps[]): void;
    removeEditLabels(ellipse: EditableEllipse): void;
    handleCreateUpdates(update: EllipseEditUpdate): void;
    handleEditUpdates(update: EllipseEditUpdate): void;
    ngOnDestroy(): void;
    getPointSize(point: EditPoint): number;
    getPointShow(point: EditPoint): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<EllipsesEditorComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EllipsesEditorComponent, "ellipses-editor", never, {}, {}, never, never, false, never>;
}
