@metadev/lux
Version:
Lux: Library with User Interface components for Angular.
33 lines (32 loc) • 1.14 kB
TypeScript
import { HttpClient } from '@angular/common/http';
import { DataSource } from '../datasource';
import { Observable } from 'rxjs';
import { GeoPoint } from '../map/geopoint';
import * as i0 from "@angular/core";
interface SearchResult {
place_id: number;
lat: number;
lon: number;
display_name: string;
icon: string;
}
export declare class GeolocationService {
private http;
private debouncePeriodMs;
private cacheSize;
private lastQueriesWithResults;
private lastQueriesLru;
private currentSearch$;
private currentQuery$;
constructor(http: HttpClient);
searchGeolocation(query: string): Observable<SearchResult[]>;
getLabels(instance: GeolocationService, keys: GeoPoint[]): Observable<DataSource<GeoPoint, string>>;
getData(instance: GeolocationService, search: string): Observable<DataSource<GeoPoint, string>>;
private getFromCache;
private addToCache;
private revomeFromCache;
private getLatestQuery;
static ɵfac: i0.ɵɵFactoryDeclaration<GeolocationService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<GeolocationService>;
}
export {};