import { EventEmitter, OnDestroy } from "@angular/core";
import { LayerGroup, LeafletEvent, PopupEvent, TooltipEvent } from "leaflet";
import { LayerGroupProvider } from "./layer-group.provider";
import { LayerProvider } from "./layer.provider";
import * as i0 from "@angular/core";
/**
* Angular2 directive for Leaflet layer-groups.
*
* *You can use this directive in an Angular2 template after importing `YagaModule`.*
*
* How to use in a template:
* ```html
*
*
*
*
*
* ```
*
* @link http://leafletjs.com/reference-1.2.0.html#layergroup Original Leaflet documentation
* @link https://leaflet-ng2.yagajs.org/latest/browser-test?grep=Layer-Group%20Directive Unit-Test
* @link https://leaflet-ng2.yagajs.org/latest/coverage/lcov-report/lib/layer-group.directive.js.html Test coverage
* @link https://leaflet-ng2.yagajs.org/latest/typedoc/classes/layergroupdirective.html API documentation
* @example https://leaflet-ng2.yagajs.org/latest/examples/layer-group-directive
*/
export declare class LayerGroupDirective extends LayerGroup implements OnDestroy {
protected parentLayerGroupProvider: LayerGroupProvider;
/**
* Two-Way bound property for the display status of the layer.
* Use it with ``
* or ``
*/
displayChange: EventEmitter;
/**
* From leaflet fired add event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer-add Original Leaflet documentation
*/
addEvent: EventEmitter;
/**
* From leaflet fired remove event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer-remove Original Leaflet documentation
*/
removeEvent: EventEmitter;
/**
* From leaflet fired popupopen event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer-popupopen Original Leaflet documentation
*/
popupopenEvent: EventEmitter;
/**
* From leaflet fired popupclose event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer-popupclose Original Leaflet documentation
*/
popupcloseEvent: EventEmitter;
/**
* From leaflet fired tooltipopen event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer-tooltipopen Original Leaflet documentation
*/
tooltipopenEvent: EventEmitter;
/**
* From leaflet fired tooltipclose event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer-tooltipclose Original Leaflet documentation
*/
tooltipcloseEvent: EventEmitter;
/**
* From leaflet fired click event.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer-click Original Leaflet documentation
*/
constructor(parentLayerGroupProvider: LayerGroupProvider, layerGroupProvider: LayerGroupProvider, layerProvider: LayerProvider);
/**
* This function gets called from Angular on destroy of the html-component.
* @link https://angular.io/docs/ts/latest/api/core/index/OnDestroy-class.html
*/
ngOnDestroy(): void;
/**
* Two-Way bound property for the display status of the layer.
* Use it with `` or ``
*/
set display(val: boolean);
/**
* Two-Way bound property for the display status of the layer.
* Use it with `` or ``
*/
get display(): boolean;
/**
* Input for the attribution.
* Use it with ``
* @link http://leafletjs.com/reference-1.2.0.html#tilelayer-attribution Original Leaflet documentation
*/
set attribution(val: string);
get attribution(): string;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}