import { BehaviorSubject, Observable } from 'rxjs'; import { BoundsLiteral } from '../interface/bounds'; import { GeoPoint } from '../interface/geo-point'; import { MapsAPILoader } from './maps-api-loader/maps-api-loader'; import * as i0 from "@angular/core"; export interface FitBoundsDetails { latLng: GeoPoint; } /** * @internal */ export type BoundsMap = Map; /** * Class to implement when you what to be able to make it work with the auto fit bounds feature * of AGM. */ export declare abstract class FitBoundsAccessor { abstract getFitBoundsDetails$(): Observable; } /** * The FitBoundsService is responsible for computing the bounds of the a single map. */ export declare abstract class FitBoundsService { protected readonly bounds$: Observable; protected readonly _boundsChangeSampleTime$: BehaviorSubject; protected readonly _includeInBounds$: BehaviorSubject; constructor(loader: MapsAPILoader); protected abstract generateBounds(includeInBounds: Map): BoundsLiteral; addToBounds(latLng: GeoPoint): void; removeFromBounds(latLng: google.maps.LatLng | google.maps.LatLngLiteral): void; changeFitBoundsChangeSampleTime(timeMs: number): void; getBounds$(): Observable; protected _createIdentifier(latLng: google.maps.LatLng | google.maps.LatLngLiteral): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }