@ng-maps/core
Version:
**@ng-maps/core** is a simple, modular and tree-shakable library for displaying google-maps inside an angular application
43 lines (42 loc) • 2.61 kB
TypeScript
import { NgZone } from '@angular/core';
import { Observable } from 'rxjs';
import { BoundsLiteral } from '../interface/bounds';
import { CircleOptions } from '../interface/circle-options';
import { GeoPoint } from '../interface/geo-point';
import { MapOptions } from '../interface/map-options';
import { MarkerOptions } from '../interface/marker-options';
import { Padding } from '../interface/padding';
import { RectangleOptions } from '../interface/rectangle-options';
import { MapsAPILoader } from './maps-api-loader/maps-api-loader';
import * as i0 from "@angular/core";
export declare abstract class MapsApiWrapper<T = any, C = any, R = any, I = any> {
protected _loader: MapsAPILoader;
protected _zone: NgZone;
protected _api?: Promise<T>;
protected _mapResolver?: (value: T) => void;
constructor(_loader: MapsAPILoader, _zone: NgZone);
abstract createMap(el: HTMLElement, center: GeoPoint, options: MapOptions): void | Promise<void>;
abstract setMapOptions(options: MapOptions): void | Promise<void>;
abstract createMarker(position: GeoPoint, options?: MarkerOptions, addToMap?: boolean): Promise<any>;
abstract clearInstanceListeners(): void;
getNativeMap(): Promise<T | undefined>;
abstract triggerMapEvent(eventName: string): Promise<void>;
abstract getCenter(): Promise<GeoPoint | undefined>;
abstract setCenter(newCenter: GeoPoint): Promise<void>;
abstract panTo(newCenter: GeoPoint): Promise<void>;
abstract panToBounds(bounds: BoundsLiteral, boundsPadding?: number | Padding): void | Promise<void>;
abstract fitBounds(bounds: BoundsLiteral, boundsPadding?: number | Padding): void | Promise<void>;
abstract getBounds(): Promise<BoundsLiteral | undefined>;
abstract getZoom(): Promise<number | undefined>;
abstract setZoom(zoom: number): Promise<any>;
abstract getMapTypeId(): Promise<google.maps.MapTypeId | string | undefined>;
abstract subscribeToMapEvent(eventName: string): Observable<any>;
abstract createInfoWindow(center: GeoPoint | null, options: any): Promise<I>;
abstract createDrawingManager(param: any, addToMap?: boolean): Promise<any>;
abstract createCircle(center: GeoPoint, options: CircleOptions): Promise<C>;
abstract createRectangle(box: BoundsLiteral, options: RectangleOptions): Promise<R>;
abstract createPolyline(options: any): Promise<any>;
abstract createPolygon(options: any): Promise<any>;
static ɵfac: i0.ɵɵFactoryDeclaration<MapsApiWrapper<any, any, any, any>, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<MapsApiWrapper<any, any, any, any>>;
}