import { AfterViewInit, ElementRef, EventEmitter } from "@angular/core";
import { CRS, LatLngBounds, LatLngBoundsExpression, LayerEvent, LayersControlEvent, LeafletEvent, LeafletKeyboardEvent, LeafletMouseEvent, Map, PopupEvent, ResizeEvent, TooltipEvent, ZoomAnimEvent } from "leaflet";
import { LayerGroupProvider } from "./layer-group.provider";
import { MapProvider } from "./map.provider";
import * as i0 from "@angular/core";
/**
* Angular2 root component for a Leaflet map
*
* *You can use this directive in an Angular2 template after importing `YagaModule`.*
*
* How to use in a template:
* ```html
*
*
*
* ```
*
* You can use the following directives as child of this one:
*
* * yaga-attribution-control
* * yaga-circle
* * yaga-circle-marker
* * yaga-geojson
* * yaga-image-overlay
* * yaga-marker
* * yaga-polygon
* * yaga-polyline
* * yaga-rectangle
* * yaga-scale-control
* * yaga-tile-layer
* * yaga-wms-layer
* * yaga-zoom-control
*
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer Original Leaflet documentation
* @link https://leaflet-ng2.yagajs.org/latest/browser-test?grep=Tile-Layer%20Directive Unit-Test
* @link https://leaflet-ng2.yagajs.org/latest/coverage/lcov-report/lib/tile-layer.directive.js.html Test coverage
* @link https://leaflet-ng2.yagajs.org/latest/typedoc/classes/tilelayerdirective.html API documentation
* @example https://leaflet-ng2.yagajs.org/latest/examples/tile-layer-directive
*/
export declare class MapComponent extends Map implements AfterViewInit {
/**
* Two-Way bound property for the zoom.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setzoom Original Leaflet documentation
*/
zoomChange: EventEmitter;
/**
* Two-Way bound property for the center latitude.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setview Original Leaflet documentation
*/
latChange: EventEmitter;
/**
* Two-Way bound property for the center longitude.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setview Original Leaflet documentation
*/
lngChange: EventEmitter;
/**
* Two-Way bound property for the minimal available zoom.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setminzoom Original Leaflet documentation
*/
minZoomChange: EventEmitter;
/**
* Two-Way bound property for the maximal available zoom.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setmaxzoom Original Leaflet documentation
*/
maxZoomChange: EventEmitter;
/**
* Two-Way bound property for the bounds on the map.
* Use it with ``
* or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setmaxbounds Original Leaflet documentation
*/
maxBoundsChange: EventEmitter;
/**
* From leaflet fired baselayerchange event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-baselayerchange Original Leaflet documentation
*/
baselayerchangeEvent: EventEmitter;
/**
* From leaflet fired overlayadd event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-overlayadd Original Leaflet documentation
*/
overlayaddEvent: EventEmitter;
/**
* From leaflet fired overlayremove event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-overlayremove Original Leaflet documentation
*/
overlayremoveEvent: EventEmitter;
/**
* From leaflet fired layeradd event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-layeradd Original Leaflet documentation
*/
layeraddEvent: EventEmitter;
/**
* From leaflet fired layerremove event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-layerremove Original Leaflet documentation
*/
layerremoveEvent: EventEmitter;
/**
* From leaflet fired zoomlevelschan event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoomlevelschan Original Leaflet documentation
*/
zoomlevelschangeEvent: EventEmitter;
/**
* From leaflet fired resize event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-resize Original Leaflet documentation
*/
resizeEvent: EventEmitter;
/**
* From leaflet fired unload event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-unload Original Leaflet documentation
*/
unloadEvent: EventEmitter;
/**
* From leaflet fired viewreset event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-viewreset Original Leaflet documentation
*/
viewresetEvent: EventEmitter;
/**
* From leaflet fired load event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-load Original Leaflet documentation
*/
loadEvent: EventEmitter;
/**
* From leaflet fired zoomstart event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoomstart Original Leaflet documentation
*/
zoomstartEvent: EventEmitter;
/**
* From leaflet fired movestart event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-movestart Original Leaflet documentation
*/
movestartEvent: EventEmitter;
/**
* From leaflet fired zoom event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoom Original Leaflet documentation
*/
zoomEvent: EventEmitter;
/**
* From leaflet fired move event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-move Original Leaflet documentation
*/
moveEvent: EventEmitter;
/**
* From leaflet fired zoomend event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoomend Original Leaflet documentation
*/
zoomendEvent: EventEmitter;
/**
* From leaflet fired moveend event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-moveend Original Leaflet documentation
*/
moveendEvent: EventEmitter;
/**
* From leaflet fired (undocumented) boxzoomstart event.
* Use it with ``
* @link https://github.com/Leaflet/Leaflet/blob/master/src/map/handler/Map.BoxZoom.js SourceCode
*/
boxzoomstartEvent: EventEmitter;
/**
* From leaflet fired (undocumented) boxzoomend event.
* Use it with ``
* @link https://github.com/Leaflet/Leaflet/blob/master/src/map/handler/Map.BoxZoom.js SourceCode
*/
boxzoomendEvent: EventEmitter;
/**
* From leaflet fired popupopen event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-popupopen Original Leaflet documentation
*/
popupopenEvent: EventEmitter;
/**
* From leaflet fired popupclose event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-popupclose Original Leaflet documentation
*/
popupcloseEvent: EventEmitter;
/**
* From leaflet fired autopanstart event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-autopanstart Original Leaflet documentation
*/
autopanstartEvent: EventEmitter;
/**
* From leaflet fired tooltipopen event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-tooltipopen Original Leaflet documentation
*/
tooltipopenEvent: EventEmitter;
/**
* From leaflet fired tooltipclose event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-tooltipclose Original Leaflet documentation
*/
tooltipcloseEvent: EventEmitter;
/**
* From leaflet fired click event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-click Original Leaflet documentation
*/
clickEvent: EventEmitter;
/**
* From leaflet fired dblclick event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-dblclick Original Leaflet documentation
*/
dblclickEvent: EventEmitter;
/**
* From leaflet fired mousedown event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-mousedown Original Leaflet documentation
*/
mousedownEvent: EventEmitter;
/**
* From leaflet fired mouseup event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-mouseup Original Leaflet documentation
*/
mouseupEvent: EventEmitter;
/**
* From leaflet fired mouseover event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-mouseover Original Leaflet documentation
*/
mouseoverEvent: EventEmitter;
/**
* From leaflet fired mouseout event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-mouseout Original Leaflet documentation
*/
mouseoutEvent: EventEmitter;
/**
* From leaflet fired mousemove event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-mousemove Original Leaflet documentation
*/
mousemoveEvent: EventEmitter;
/**
* From leaflet fired contextmenu event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-contextmenu Original Leaflet documentation
*/
contextmenuEvent: EventEmitter;
/**
* From leaflet fired keypress event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-keypress Original Leaflet documentation
*/
keypressEvent: EventEmitter;
/**
* From leaflet fired preclick event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-preclick Original Leaflet documentation
*/
preclickEvent: EventEmitter;
/**
* From leaflet fired zoomanim event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoomanim Original Leaflet documentation
*/
zoomanimEvent: EventEmitter;
private moveTimeout;
private isZooming;
constructor(elementRef: ElementRef, layerProvider: LayerGroupProvider, mapProvider: MapProvider);
/**
* This function gets called from Angular after initializing the html-component.
* @link https://angular.io/docs/ts/latest/api/core/index/AfterViewInit-class.html
*/
ngAfterViewInit(): void;
/**
* Two-Way bound property for the zoom.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setzoom Original Leaflet documentation
*/
set zoom(val: number);
get zoom(): number;
/**
* Two-Way bound property for the latitude.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setview Original Leaflet documentation
*/
set lat(val: number);
get lat(): number;
/**
* Two-Way bound property for the longitude.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setview Original Leaflet documentation
*/
set lng(val: number);
get lng(): number;
/**
* Derived method of the original setMinZoom method.
* @link http://leafletjs.com/reference-1.2.0.html#map-setminzoom Original Leaflet documentation
*/
setMinZoom(val: number): this;
/**
* Two-Way bound property for the minimal availabe zoom.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setminzoom Original Leaflet documentation
*/
set minZoom(val: number);
get minZoom(): number;
/**
* Derived method of the original setMaxZoom method.
* @link http://leafletjs.com/reference-1.2.0.html#map-setmaxzoom Original Leaflet documentation
*/
setMaxZoom(val: number): this;
/**
* Two-Way bound property for the maximal availabe zoom.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-setmaxzoom Original Leaflet documentation
*/
set maxZoom(val: number);
get maxZoom(): number;
/**
* Inherited function to provide event emitting.
*/
setMaxBounds(bounds: LatLngBoundsExpression): this;
/**
* One-Way property for the Coordinate Reference System.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-crs Original Leaflet documentation
*/
set crs(val: CRS);
get crs(): CRS;
/**
* Two-Way bound property for the maximal bounds.
* Use it with `` or ``
* @link http://leafletjs.com/reference-1.2.0.html#map-maxbounds Original Leaflet documentation
*/
set maxBounds(val: LatLngBounds);
get maxBounds(): LatLngBounds;
/**
* Input for the closePopupOnClick.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-closepopuponclick Original Leaflet documentation
*/
set closePopupOnClick(val: boolean | undefined);
get closePopupOnClick(): boolean | undefined;
/**
* Input for the zoomSnap.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoomsnap Original Leaflet documentation
*/
set zoomSnap(val: number | undefined);
get zoomSnap(): number | undefined;
/**
* Input for the zoomDelta.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoomdelta Original Leaflet documentation
*/
set zoomDelta(val: number | undefined);
get zoomDelta(): number | undefined;
/**
* Input for the trackResize.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-trackresize Original Leaflet documentation
*/
set trackResize(val: boolean | undefined);
get trackResize(): boolean | undefined;
/**
* Input for the boxZoomEnabled.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-boxzoom Original Leaflet documentation
*/
set boxZoomEnabled(val: boolean);
get boxZoomEnabled(): boolean;
/**
* Input for the doubleClickZoomEnabled.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-doubleclickzoom Original Leaflet documentation
*/
set doubleClickZoomEnabled(val: boolean);
get doubleClickZoomEnabled(): boolean;
/**
* Input for the draggingEnabled.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-dragging Original Leaflet documentation
*/
set draggingEnabled(val: boolean);
get draggingEnabled(): boolean;
/**
* Input for the fadeAnimation.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-fadeanimation Original Leaflet documentation
*/
set fadeAnimation(val: boolean);
get fadeAnimation(): boolean;
/**
* Input for the markerZoomAnimation.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-markerzoomanimation Original Leaflet documentation
*/
set markerZoomAnimation(val: boolean);
get markerZoomAnimation(): boolean;
/**
* Input for the transform3DLimit.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-transform3dlimit Original Leaflet documentation
*/
set transform3DLimit(val: number | undefined);
get transform3DLimit(): number | undefined;
/**
* Input for the zoomAnimation.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoomanimation Original Leaflet documentation
*/
set zoomAnimation(val: boolean);
get zoomAnimation(): boolean;
/**
* Input for the zoomAnimationThreshold.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-zoomanimationthreshold Original Leaflet documentation
*/
set zoomAnimationThreshold(val: number | undefined);
get zoomAnimationThreshold(): number | undefined;
/**
* Input for the inertia.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-inertia Original Leaflet documentation
*/
set inertia(val: boolean);
get inertia(): boolean;
/**
* Input for the inertiaDeceleration.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-inertiadeceleration Original Leaflet documentation
*/
set inertiaDeceleration(val: number | undefined);
get inertiaDeceleration(): number | undefined;
/**
* Input for the inertiaMaxSpeed.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-inertiamaxspeed Original Leaflet documentation
*/
set inertiaMaxSpeed(val: number | undefined);
get inertiaMaxSpeed(): number | undefined;
/**
* Input for the easeLinearity.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-easelinearity Original Leaflet documentation
*/
set easeLinearity(val: number | undefined);
get easeLinearity(): number | undefined;
/**
* Input for the worldCopyJump.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-worldcopyjump Original Leaflet documentation
*/
set worldCopyJump(val: boolean);
get worldCopyJump(): boolean;
/**
* Input for the maxBoundsViscosity.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-maxboundsviscosity Original Leaflet documentation
*/
set maxBoundsViscosity(val: number | undefined);
get maxBoundsViscosity(): number | undefined;
/**
* Input for the keyboardEnabled.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-keyboard Original Leaflet documentation
*/
set keyboardEnabled(val: boolean);
get keyboardEnabled(): boolean;
/**
* Input for the keyboardPanDelta.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-keyboardpandelta Original Leaflet documentation
*/
set keyboardPanDelta(val: number | undefined);
get keyboardPanDelta(): number | undefined;
/**
* Input for the scrollWheelZoomEnabled.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-scrollwheelzoom Original Leaflet documentation
*/
set scrollWheelZoomEnabled(val: boolean);
get scrollWheelZoomEnabled(): boolean;
/**
* Input for the wheelDebounceTime.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-wheeldebouncetime Original Leaflet documentation
*/
set wheelDebounceTime(val: number | undefined);
get wheelDebounceTime(): number | undefined;
/**
* Input for the wheelPxPerZoomLevel.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-wheelpxperzoomlevel Original Leaflet documentation
*/
set wheelPxPerZoomLevel(val: number | undefined);
get wheelPxPerZoomLevel(): number | undefined;
/**
* Input for the tapEnabled.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-tap Original Leaflet documentation
*/
set tapEnabled(val: boolean);
get tapEnabled(): boolean;
/**
* Input for the tapTolerance.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-taptolerance Original Leaflet documentation
*/
set tapTolerance(val: number | undefined);
get tapTolerance(): number | undefined;
/**
* Input for the bounceAtZoomLimits.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-bounceatzoomlimits Original Leaflet documentation
*/
set bounceAtZoomLimits(val: boolean);
get bounceAtZoomLimits(): boolean;
/**
* Input for the touchZoomEnabled.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#map-touchzoom Original Leaflet documentation
*/
set touchZoomEnabled(val: boolean);
get touchZoomEnabled(): boolean;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}