/** * ng2-gm - Angular 2 components for Google Maps * @version v0.0.2 * @link https://github.com/williampaulo/angular2-google-maps#readme * @license MIT */ export var google: any; export interface GoogleMap { constructor(el: HTMLElement, opts?: MapOptions): void; panTo(latLng: LatLng|LatLngLiteral): void; setZoom(zoom: number): void; addListener(eventName: string, fn: Function): void; getCenter(): LatLng; setCenter(latLng: LatLng|LatLngLiteral): void; getZoom(): number; setOptions(options: MapOptions): void; } export interface LatLng { constructor(lat: number, lng: number): void; lat(): number; lng(): number; } export interface Router { constructor(options?: RouterOptions): void; setOrigin(latLng: LatLng|LatLngLiteral): void; setDestination(destinations: any[]): void; } export interface RouterOptions { origin: any; destination: any; waypoints?: any[]; travelMode?: any; unitSystem?: any; } export interface Marker { constructor(options?: MarkerOptions): void; setMap(map: GoogleMap): void; setPosition(latLng: LatLng|LatLngLiteral): void; setTitle(title: string): void; setLabel(label: string|MarkerLabel): void; setDraggable(draggable: boolean): void; setIcon(icon: string): void; getLabel(): MarkerLabel; addListener(eventType: string, fn: Function): void; } export interface MarkerOptions { position: LatLng|LatLngLiteral; title?: string; map?: GoogleMap; label?: string|MarkerLabel; draggable?: boolean; icon?: string; } export interface MarkerLabel { color: string; fontFamily: string; fontSize: string; fontWeight: string; text: string; } export interface LatLngLiteral { lat: number; lng: number; } export interface MouseEvent { latLng: LatLng; } export interface MapOptions { center?: LatLng|LatLngLiteral; zoom?: number; disableDoubleClickZoom?: boolean; disableDefaultUI?: boolean; backgroundColor?: string; draggableCursor?: string; draggingCursor?: string; keyboardShortcuts?: boolean; zoomControl?: boolean; } export interface RoutePanel { constructor(opts?: RoutePanelOptions): void; show(map?: GoogleMap, anchor?: MVCObject): void; hide(): void; reload(): void; setContent(content: string|Node): void; getContent(): string|Node; } export interface InfoWindow { constructor(opts?: InfoWindowOptions): void; close(): void; getContent(): string|Node; getPosition(): LatLng; getZIndex(): number; open(map?: GoogleMap, anchor?: MVCObject): void; setContent(content: string|Node): void; setOptions(options: InfoWindowOptions): void; setPosition(position: LatLng|LatLngLiteral): void; setZIndex(zIndex: number): void; } export interface MVCObject { constructor(): void; } export interface Size { height: number; width: number; constructor(width: number, height: number, widthUnit?: string, heightUnit?: string): void; equals(other: Size): boolean; toString(): string; } export interface InfoWindowOptions { content?: string|Node; disableAutoPan?: boolean; maxWidth?: number; pixelOffset?: Size; position?: LatLng|LatLngLiteral; zIndex?: number; } export interface RoutePanelOptions { content?: string|Node; origin?: string; destination?: string; }