import { OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { AlertService } from '@c8y/ngx-components';
import type { MapDefaultConfig } from '@c8y/options';
import { ClusterMapConfig, MapComponent, MapService, PositionManagedObject } from '@c8y/ngx-components/map';
import { TranslateService } from '@ngx-translate/core';
import type L from 'leaflet';
import { Observable } from 'rxjs';
import { MapWidgetConfig, MapRefreshOption } from './map-widget.model';
import * as i0 from "@angular/core";
export declare class MapWidgetConfigComponent implements OnInit, OnChanges, OnDestroy {
    private mapService;
    private alertService;
    private translateService;
    private defaultMapConfig;
    config: MapWidgetConfig;
    formConfig: ClusterMapConfig;
    canAutoCenter: boolean;
    isPositionedDevice: boolean;
    assets: PositionManagedObject[];
    refreshOption: MapRefreshOption;
    private destroyed$;
    private leaflet;
    private centerIcon;
    private readonly FIXED_POINT_DIGITS;
    previewMap: MapComponent;
    constructor(mapService: MapService, alertService: AlertService, translateService: TranslateService, defaultMapConfig: Observable<MapDefaultConfig>);
    ngOnDestroy(): void;
    ngOnInit(): void;
    initForm(): Promise<void>;
    ngOnChanges(changes: SimpleChanges): Promise<void>;
    previewMapInit(leaflet: typeof L): void;
    onBeforeSave(): boolean;
    zoomLevelChanged(): void;
    changeCenter(): void;
    changeCenterOnEnterKey(event: KeyboardEvent): void;
    onPreviewZoomStart(): void;
    onPreviewZoomEnd(event: L.LeafletEvent): void;
    onPreviewMapMove(event: L.LeafletEvent): void;
    useOwnPosition(): void;
    centerToAsset(): void;
    updateRefreshOption(): void;
    selectIcon(icon: string): void;
    private updateAsset;
    private getRefreshOption;
    private addCenterIcon;
    static ɵfac: i0.ɵɵFactoryDeclaration<MapWidgetConfigComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MapWidgetConfigComponent, "c8y-map-widget-config", never, { "config": { "alias": "config"; "required": false; }; }, {}, never, never, true, never>;
}
//# sourceMappingURL=map-widget-config.component.d.ts.map