UNPKG

3.27 kBTypeScriptView Raw
1import { AfterContentInit, EventEmitter, OnChanges, OnDestroy, SimpleChange } from '@angular/core';
2import { MouseEvent } from '../map-types';
3import { MarkerManager } from '../services/managers/marker-manager';
4import { SebmGoogleMapInfoWindow } from './google-map-info-window';
5/**
6 * SebmGoogleMapMarker renders a map marker inside a {@link SebmGoogleMap}.
7 *
8 * ### Example
9 * ```typescript
10 * import { Component } from 'angular2/core';
11 * import { SebmGoogleMap, SebmGoogleMapMarker } from 'angular2-google-maps/core';
12 *
13 * @Component({
14 * selector: 'my-map-cmp',
15 * directives: [SebmGoogleMap, SebmGoogleMapMarker],
16 * styles: [`
17 * .sebm-google-map-container {
18 * height: 300px;
19 * }
20 * `],
21 * template: `
22 * <sebm-google-map [latitude]="lat" [longitude]="lng" [zoom]="zoom">
23 * <sebm-google-map-marker [latitude]="lat" [longitude]="lng" [label]="'M'">
24 * </sebm-google-map-marker>
25 * </sebm-google-map>
26 * `
27 * })
28 * ```
29 */
30export declare class SebmGoogleMapMarker implements OnDestroy, OnChanges, AfterContentInit {
31 private _markerManager;
32 /**
33 * The latitude position of the marker.
34 */
35 latitude: number;
36 /**
37 * The longitude position of the marker.
38 */
39 longitude: number;
40 /**
41 * The title of the marker.
42 */
43 title: string;
44 /**
45 * The label (a single uppercase character) for the marker.
46 */
47 label: string;
48 /**
49 * If true, the marker can be dragged. Default value is false.
50 */
51 draggable: boolean;
52 /**
53 * Icon (the URL of the image) for the foreground.
54 */
55 iconUrl: string;
56 /**
57 * If true, the marker is visible
58 */
59 visible: boolean;
60 /**
61 * Whether to automatically open the child info window when the marker is clicked.
62 */
63 openInfoWindow: boolean;
64 /**
65 * The marker's opacity between 0.0 and 1.0.
66 */
67 opacity: number;
68 /**
69 * All markers are displayed on the map in order of their zIndex, with higher values displaying in
70 * front of markers with lower values. By default, markers are displayed according to their
71 * vertical position on screen, with lower markers appearing in front of markers further up the
72 * screen.
73 */
74 zIndex: number;
75 /**
76 * This event emitter gets emitted when the user clicks on the marker.
77 */
78 markerClick: EventEmitter<void>;
79 /**
80 * This event is fired when the user stops dragging the marker.
81 */
82 dragEnd: EventEmitter<MouseEvent>;
83 /**
84 * This event is fired when the user mouses over the marker.
85 */
86 mouseOver: EventEmitter<MouseEvent>;
87 /**
88 * This event is fired when the user mouses outside the marker.
89 */
90 mouseOut: EventEmitter<MouseEvent>;
91 /**
92 * @internal
93 */
94 infoWindow: SebmGoogleMapInfoWindow;
95 private _markerAddedToManger;
96 private _id;
97 private _observableSubscriptions;
98 constructor(_markerManager: MarkerManager);
99 ngAfterContentInit(): void;
100 /** @internal */
101 ngOnChanges(changes: {
102 [key: string]: SimpleChange;
103 }): void;
104 private _addEventListeners();
105 /** @internal */
106 id(): string;
107 /** @internal */
108 toString(): string;
109 /** @internal */
110 ngOnDestroy(): void;
111}