import { Subject } from 'rxjs'; import { MapManager } from '../manager/map-manager'; import { MarkerClusterLoadService } from './h21-map-marker-cluster-load.service'; import { MarkerClusterEventService } from './h21-map-marker-cluster-event.service'; import { H21MapMarkerClusterDirective } from '../directives/h21-map-marker-cluster.directive'; import { ChangesMap } from '../enums/changes-map.enum'; import { GeneralInfoFilter } from '../models/general-info-filter.model'; import { Query } from '../models/query.model'; import { CircleEvent } from '../models/circle-event.model'; import { AreaEvent } from '../models/area-event.model'; import { Bounds } from '../models/bounds-map.model'; import { MarkerClusterFilter } from '../models/marker-cluster-filter.model'; import { MarkerClusterFind } from '../models/marker-cluster-find.model'; export declare class H21MapClusterService { private _eventService; private _loadService; layer: H21MapMarkerClusterDirective; manager: MapManager; changeMap: ChangesMap; maxZoom: number; circle: CircleEvent; area: AreaEvent; bounds: Bounds; currentZoom: number; isPending: boolean; filter: any; requestId: string; destroy$: Subject; pending$: Subject; constructor(_eventService: MarkerClusterEventService, _loadService: MarkerClusterLoadService); destroy(): void; initService(manager: MapManager, layer: H21MapMarkerClusterDirective): void; updateService(manager: MapManager, layer: H21MapMarkerClusterDirective): void; setFilter(layer: H21MapMarkerClusterDirective): void; setChangeMap(layer: H21MapMarkerClusterDirective): void; setMaZoom(layer: H21MapMarkerClusterDirective): void; buildFilterCircle(event: CircleEvent): Query; buildFilterBoundBox(event: Bounds): Query; buildFilterPolygon(event: AreaEvent): Query; buildFilter(filter: MarkerClusterFilter, zoom?: number): Query; buildIsMarkerCluster(event: MarkerClusterFind): GeneralInfoFilter; getGeoJson(query: Query): void; getGeoJsonFilter(query: Query): void; getIsMarkerCluster(query: GeneralInfoFilter): void; private _zoomConversion; }