UNPKG

universal-geocoder

Version:

Universal geocoding abstraction server-side and client-side with multiple built-in providers

33 lines 2.01 kB
import { ExternalLoaderBody, ExternalLoaderHeaders, ExternalLoaderParams } from "../ExternalLoader"; import Geocoded from "../Geocoded"; import { ErrorCallback, GeocodedResultsCallback, ProviderInterface, ProviderOptionsInterface } from "./"; import { GeocodeQuery, GeocodeQueryObject, ReverseQuery, ReverseQueryObject } from "../query"; export interface ChainProviderOptionsInterface extends ProviderOptionsInterface { readonly providers: ProviderInterface<Geocoded>[]; readonly parallelize?: boolean; readonly first?: boolean; } export declare const defaultChainProviderOptions: { providers: never[]; useSsl?: boolean | undefined; useJsonp?: boolean | undefined; apiKey?: string | undefined; }; declare type ChainGeocodedResultsCallback = GeocodedResultsCallback<Geocoded>; export default class ChainProvider implements ProviderInterface<Geocoded> { private options; constructor(options?: ChainProviderOptionsInterface); geocode(query: string | GeocodeQuery | GeocodeQueryObject): Promise<Geocoded[]>; geocode(query: string | GeocodeQuery | GeocodeQueryObject, callback: ChainGeocodedResultsCallback, errorCallback?: ErrorCallback): void; geodecode(query: ReverseQuery | ReverseQueryObject): Promise<Geocoded[]>; geodecode(query: ReverseQuery | ReverseQueryObject, callback: ChainGeocodedResultsCallback, errorCallback?: ErrorCallback): void; geodecode(latitude: number | string, longitude: number | string): Promise<Geocoded[]>; geodecode(latitude: number | string, longitude: number | string, callback: ChainGeocodedResultsCallback, errorCallback?: ErrorCallback): void; private geocodeNextProvider; private geodecodeNextProvider; private geocodeAllProviders; private geodecodeAllProviders; executeRequest(params: ExternalLoaderParams, callback: ChainGeocodedResultsCallback, headers?: ExternalLoaderHeaders, body?: ExternalLoaderBody, errorCallback?: ErrorCallback): void; } export {}; //# sourceMappingURL=ChainProvider.d.ts.map