@jmarcelof/leaflet-ng2
Version:
Angular2 module for Leaflet
150 lines (149 loc) • 6.36 kB
TypeScript
import { EventEmitter, OnDestroy } from "@angular/core";
import { Control, ControlPosition, LeafletEvent, LeafletMouseEvent, Map } from "leaflet";
import { LayersControlProvider } from "./layers-control.provider";
import { MapProvider } from "./map.provider";
/**
* Angular2 directive for the attribution-control of Leaflet.
*
* *You can use this directive in an Angular2 template after importing `YagaModule`.*
*
* How to use in a template:
* ```html
* <yaga-map>
* <yaga-layers-control
* [(display)]="..."
* [(zIndex)]="..."
* [(position)]="..."
*
* (add)="..."
* (remove)="..."
* (click)="..."
* (dblclick)="..."
* (mousedown)="..."
* (mouseover)="..."
* (mouseout)="..."
* >
* <yaga-tile-layer yaga-base-layer="OSM"></yaga-tile-layer>
* <yaga-geojson yaga-overlay-layer="My points"></yaga-geojson>
* </yaga-layers-control>
* </yaga-map>
* ```
*
* @link http://leafletjs.com/reference-1.2.0.html#control-layers Original Leaflet documentation
* @link https://leaflet-ng2.yagajs.org/latest/browser-test?grep=Scale-Control%20Directive Unit-Test
* @link https://leaflet-ng2.yagajs.org/latest/coverage/lcov-report/lib/attribution-control.directive.js.html
* Test coverage
* @link https://leaflet-ng2.yagajs.org/latest/typedoc/classes/layerscontroldirective.html API documentation
* @example https://leaflet-ng2.yagajs.org/latest/examples/layers-control-directive/
*/
export declare class LayersControlDirective extends Control.Layers implements OnDestroy {
protected mapProvider: MapProvider;
/**
* Two-Way bound property for the display status of the control.
* Use it with `<yaga-layers-control [(display)]="someValue">`
* or `<yaga-layers-control (displayChange)="processEvent($event)">`
*/
displayChange: EventEmitter<boolean>;
/**
* Two-Way bound property for the zIndex of the control.
* Use it with `<yaga-layers-control [(zIndex)]="someValue">`
* or `<yaga-layers-control (zIndexChange)="processEvent($event)">`
*/
zIndexChange: EventEmitter<number>;
/**
* Two-Way bound property for the position of the control.
* Use it with `<yaga-layers-control [(position)]="someValue">`
* or `<yaga-layers-control (positionChange)="processEvent($event)">`
*/
positionChange: EventEmitter<ControlPosition>;
/**
* From leaflet fired add event.
* Use it with `<yaga-layers-control (add)="processEvent($event)">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-add Original Leaflet documentation
*/
addEvent: EventEmitter<LeafletEvent>;
/**
* From leaflet fired remove event.
* Use it with `<yaga-layers-control (remove)="processEvent($event)">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-remove Original Leaflet documentation
*/
removeEvent: EventEmitter<LeafletEvent>;
/**
* From leaflet fired click event.
* Use it with `<yaga-layers-control (click)="processEvent($event)">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-click Original Leaflet documentation
*/
clickEvent: EventEmitter<LeafletMouseEvent>;
/**
* From leaflet fired dblclick event.
* Use it with `<yaga-layers-control (dblclick)="processEvent($event)">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-dblclick Original Leaflet documentation
*/
dblclickEvent: EventEmitter<LeafletMouseEvent>;
/**
* From leaflet fired mousedown event.
* Use it with `<yaga-layers-control (mousedown)="processEvent($event)">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-mousedown Original Leaflet documentation
*/
mousedownEvent: EventEmitter<LeafletMouseEvent>;
/**
* From leaflet fired mouseover event.
* Use it with `<yaga-layers-control (mouseover)="processEvent($event)">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-mouseover Original Leaflet documentation
*/
mouseoverEvent: EventEmitter<LeafletMouseEvent>;
/**
* From leaflet fired mouseout event.
* Use it with `<yaga-layers-control (mouseout)="processEvent($event)">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-mouseout Original Leaflet documentation
*/
mouseoutEvent: EventEmitter<LeafletMouseEvent>;
constructor(mapProvider: MapProvider, layersControlProvider: LayersControlProvider);
/**
* Internal method to provide the removal of the control in Leaflet, when removing it from the Angular template
*/
ngOnDestroy(): void;
/**
* Derived remove function
*/
remove(): this;
/**
* Derived addTo function
*/
addTo(map: Map): this;
/**
* Derived method of the original setPosition.
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-setposition Original Leaflet documentation
*/
setPosition(val: ControlPosition): this;
/**
* Two-Way bound property for the opacity.
* Use it with `<yaga-layers-control [(opacity)]="someValue">`
* or `<yaga-layers-control [opacity]="someValue">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-opacity Original Leaflet documentation
*/
opacity: number | undefined;
/**
* Two-Way bound property for the display state.
* Use it with `<yaga-layers-control [(display)]="someValue">`
* or `<yaga-layers-control [display]="someValue">`
*/
display: boolean;
/**
* Two-Way bound property for the position.
* Use it with `<yaga-layers-control [(position)]="someValue">`
* or `<yaga-layers-control [position]="someValue">`
* @link http://leafletjs.com/reference-1.2.0.html#control-layers-position Original Leaflet documentation
*/
position: ControlPosition;
/**
* Two-Way bound property for the zIndex of the control.
* Use it with `<yaga-layers-control [(zIndex)]="someValue">`
* or `<yaga-layers-control (zIndexChange)="processEvent($event)">`
*/
zIndex: number | undefined;
/**
* Reimplemention of initLayout private function to register event listeners after DOM creation.
*/
protected _initLayout(): void;
}