///
import { NgZone } from '@angular/core';
import { Observable } from 'rxjs';
import { CursorType } from '../../enums/cursor-type.enum';
import { IPolylineOptions } from '../../interfaces/polyline-options.interface';
import { MarkerOptions } from '../../interfaces/marker-options.interface';
import { YandexApiConfig } from '../../models/yandex/yandex-api-config.model';
import { MapOptions } from '../../models/map-options.model';
import { Position } from '../../models/position.model';
import { ClientPosition } from '../../models/event-client-pixel.model';
import { MapService } from '../abstract/abstract-map';
import { YandexEventService } from './yandex-event';
import { YandexDataLayerService as YandexMarkerClusterService } from './yandex-marker-cluster';
import { YandexClusterService } from './yandex-cluster';
import { YandexSearchService } from './yandex-search';
import { YandexRouteService } from './yandex-route';
import { YandexMarkerService } from './yandex-marker';
import { YandexGeocodingService } from './yandex-geocoding';
import { YandexGeoLocationService } from './yandex-geolocation';
import { YandexConversionsService } from './yandex-conversions';
import { YandexDrawingService } from './yandex-drawing';
import { YandexBoundarService } from './yandex-boundar';
import { YandexDistanceService } from './yandex-distance';
import { YandexAddressService } from './yandex-address';
export declare class YandexMapService extends MapService {
apiConfig: YandexApiConfig;
address: YandexAddressService;
markerCluster: YandexMarkerClusterService;
drawing: YandexDrawingService;
distance: YandexDistanceService;
events: YandexEventService;
marker: YandexMarkerService;
cluster: YandexClusterService;
search: YandexSearchService;
route: YandexRouteService;
geocoding: YandexGeocodingService;
geolocation: YandexGeoLocationService;
conversions: YandexConversionsService;
boundar: YandexBoundarService;
private _zone;
overlayMap: ymaps.IOverlay;
constructor(apiConfig: YandexApiConfig, address: YandexAddressService, markerCluster: YandexMarkerClusterService, drawing: YandexDrawingService, distance: YandexDistanceService, events: YandexEventService, marker: YandexMarkerService, cluster: YandexClusterService, search: YandexSearchService, route: YandexRouteService, geocoding: YandexGeocodingService, geolocation: YandexGeoLocationService, conversions: YandexConversionsService, boundar: YandexBoundarService, _zone: NgZone);
readonly scriptSelector: string;
readonly styleSelector: string;
readonly scriptId: string;
readonly scriptUrl: string;
createPolyline(polylineOptions: IPolylineOptions): Observable;
createMarker(markerOptions?: MarkerOptions): Observable;
createMap(htmlElement: HTMLElement, mapOptions: MapOptions): Observable;
setDefaultCursor(cursor: CursorType): void;
getZoom(): number;
getMinZoom(): number;
getMaxZoom(): any;
getOverlay(): E;
setZoom(zoom: number): void;
setMinZoom(zoom: number): void;
setMaxZoom(zoom: number): void;
setDraggable(enabled: any): void;
setScrollwheel(enabled: boolean): void;
setDoubleClickZoom(enabled: boolean): void;
setClick(enabled: boolean): void;
setCenter(latitude: number, longitude: number, zoom: number): void;
setResize(): void;
setZoomIn(): void;
setZoomOut(): void;
setZoomBox(enabled: any): void;
fitBounds(positions?: Position[]): void;
setPanBy(clientX: number, clientY: number): void;
fromLatLngToPixel(latitude: number, longitude: number): ClientPosition;
loadAPI(lang: any): Observable;
getLanguageDictionary(): any;
getStaticUrl(latitude: number, longitude: number, iconUrl: string): string;
destroy(): void;
private _setImgCursor;
}