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 { PointsEditorService } from '../../services/entity-editors/points-editor/points-editor.service';
import { PointsManagerService } from '../../services/entity-editors/points-editor/points-manager.service';
import { PointEditUpdate } from '../../models/point-edit-update';
import { EditablePoint } from '../../models/editable-point';
import { LabelProps } from '../../models/label-props';
import * as i0 from "@angular/core";
export declare class PointsEditorComponent implements OnDestroy {
    private pointsEditor;
    private coordinateConverter;
    private mapEventsManager;
    private cameraService;
    private pointsManager;
    private cesiumService;
    private editLabelsRenderFn;
    Cesium: any;
    editPoint$: Subject<AcNotification>;
    pointLabels$: Subject<AcNotification>;
    private editPointLayer;
    private pointLabelsLayer;
    constructor(pointsEditor: PointsEditorService, coordinateConverter: CoordinateConverter, mapEventsManager: MapEventsManagerService, cameraService: CameraService, pointsManager: PointsManagerService, cesiumService: CesiumService);
    private startListeningToEditorUpdates;
    getLabelId(element: any, index: number): string;
    renderEditLabels(point: EditablePoint, update: PointEditUpdate, labels?: LabelProps[]): void;
    removeEditLabels(point: EditablePoint): void;
    handleCreateUpdates(update: PointEditUpdate): void;
    handleEditUpdates(update: PointEditUpdate): void;
    ngOnDestroy(): void;
    getPointSize(point: EditPoint): number;
    getPointShow(point: EditPoint): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<PointsEditorComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<PointsEditorComponent, "points-editor", never, {}, {}, never, never, false, never>;
}
