/// <reference types="googlemaps" />
import { OnDestroy, OnInit } from '@angular/core';
import { EventPublisher } from '@boldadmin/event-publisher';
import { AngularGoogleMapsBuilder } from './service/angular-google-maps-builder.service';
import { AngularGoogleMapsGeocoder } from './service/angular-google-maps-geocoder.service';
import { GoogleMapsFactory } from './service/google-maps-factory.service';
import { IconRegistry } from './service/icon-registry/icon-registry';
import { Location } from './value-object/location';
import { TimestampCoordinates } from './value-object/timestamp-coordinates';
import CircleOptions = google.maps.CircleOptions;
import Icon = google.maps.Icon;
import MapOptions = google.maps.MapOptions;
import MarkerOptions = google.maps.MarkerOptions;
export declare class AngularGoogleMapsComponent implements OnInit, OnDestroy {
    private googleMapsFactory;
    private googleMapsBuilder;
    private googleMapsGeocoder;
    private eventPublisher;
    private iconRegistry;
    mapsText: {
        searchBox: string;
    };
    address: string;
    mapOptions: MapOptions;
    markerOptions: MarkerOptions;
    circleOptions: CircleOptions;
    previousMarkerIcon: Icon;
    currentMarkerIcon: Icon;
    constructor(googleMapsFactory: GoogleMapsFactory, googleMapsBuilder: AngularGoogleMapsBuilder, googleMapsGeocoder: AngularGoogleMapsGeocoder, eventPublisher: EventPublisher, iconRegistry: IconRegistry);
    ngOnInit(): void;
    ngOnDestroy(): void;
    createMapByLocation(focusLocation: Location): void;
    createMapByAddress(address: string): void;
    notifyMapResize(): void;
    addTravelPath(timestampCoordinatesList: Array<TimestampCoordinates>, name: string): void;
    private addPolyline;
    private changeMapCenter;
}
