/// <reference types="heremaps" />
/**
 * Created by mjaric on 9/28/16.
 */
import { EventEmitter, OnDestroy } from '@angular/core';
import { HereMapsManager } from '../services/maps-manager';
import { BaseMapComponent } from './base-map-component';
import { GeoPoint } from '../interface/lat-lng';
import { MapComponent } from './map';
/**
 * Holds instance of the heremap marker. Please note that directive must be placed inside
 * map component, otherwise it will never be rendered.
 */
export declare class MapMakerDirective extends BaseMapComponent<H.map.Marker> implements OnDestroy {
    private _mapsManager;
    /**
     * This event is fired when the marker icon was clicked.
     */
    click: EventEmitter<any>;
    /**
     * This event is fired when the marker icon was double clicked.
     */
    dblclick: EventEmitter<any>;
    /**
     * This event is fired for a rightclick on the marker.
     */
    rightclick: EventEmitter<any>;
    /**
     * This event is fired when the marker position property changes.
     */
    position_changed: EventEmitter<any>;
    /**
     * This event is fired when the marker icon property changes.
     */
    icon_changed: EventEmitter<any>;
    /**
     * This event is fired when the marker title property changes.
     */
    title_changed: EventEmitter<any>;
    /**
     * This event is fired when the marker visible property changes.
     */
    visible_changed: EventEmitter<any>;
    /**
     * Marker position
     */
    position: GeoPoint;
    /**
     * If true, the marker receives mouse and touch events.
     * Default value is true.
     */
    clickable: boolean;
    /**
     * Icon for the foreground. If a string is provided,
     * it is treated as though it were an Icon with the string as url.
     */
    icon: string | H.map.Icon;
    /**
     * The marker's opacity between 0.0 and 1.0.
     */
    opacity: number;
    /**
     * Rollover text
     */
    title: string;
    /**
     * If true, the marker is visible
     */
    visible: boolean;
    /**
     * Set marker zIndex for displayed on the map
     */
    zIndex: number;
    setDelay: number;
    protected mapComponent: MapComponent;
    private _clickable;
    constructor(_mapsManager: HereMapsManager);
    ngOnDestroy(): void;
    hasMapComponent(): boolean;
    setMapComponent(component: MapComponent, map: H.Map, ui: H.ui.UI): void;
    private bindEvents(marker);
}
