///
import { Observable } from 'rxjs';
import { IGoogleMapsEventData } from '@bespunky/angular-google-maps/core';
import { GoogleMapsOverlayComponentBase } from '../../../abstraction/base/google-maps-overlay-component-base';
import { IGoogleMapsData } from '../i-google-maps-data';
/**
* Adds a data layer to the containing map.
*
* Must be placed inside a `` element.
*
* @export
* @class GoogleMapsDataDirective
* @extends {GoogleMapsOverlayComponentBase}
*/
export declare class GoogleMapsDataDirective extends GoogleMapsOverlayComponentBase {
controlPosition?: google.maps.ControlPosition;
controls?: string[];
drawingMode?: string;
style?: google.maps.Data.StylingFunction | google.maps.Data.StyleOptions;
/** Fired when a feature is added to the collection. */
addFeature: Observable;
/** Fired for a click on the geometry. */
click: Observable;
/** Fired for a double click on the geometry. */
doubleClick: Observable;
/** Fired for a mousedown on the geometry. */
mouseDown: Observable;
/** Fired when the mouse leaves the area of the geometry. */
mouseOut: Observable;
/** Fired when the mouse enters the area of the geometry. */
mouseOver: Observable;
/** Fired for a mouseup on the geometry. */
mouseUp: Observable;
/** Fired when a feature is removed from the collection. */
removeFeature: Observable;
/** Fired when a feature's property is removed. */
removeProperty: Observable;
/** Fired for a rightclick on the geometry. */
rightClick: Observable;
/** Fired when a feature's geometry is set. */
setGeometry: Observable;
/** Fired when a feature's property is set. */
setProperty: Observable;
}