import { AutosuggestClient, AvailableLanguagesClient, ConvertTo3waClient, ConvertToCoordinatesClient, FeatureCollectionResponse, GridSectionClient } from './client'; import type { AutosuggestResponse, AutosuggestSuggestion, AutosuggestOptions, AvailableLanguagesResponse, ConvertTo3waOptions, ConvertToCoordinatesOptions, GridSectionOptions, GridSectionJsonResponse, GridSectionGeoJsonResponse, LocationGeoJsonResponse, LocationJsonResponse } from './client'; import { ApiClientConfiguration } from './lib'; import type { Transport } from './lib'; export interface What3wordsService { clients: { autosuggest: AutosuggestClient; availableLanguages: AvailableLanguagesClient; convertTo3wa: ConvertTo3waClient; convertToCoordinates: ConvertToCoordinatesClient; gridSection: GridSectionClient; }; setApiKey(key: string): void; setConfig(config: ApiClientConfiguration): void; autosuggest(options: AutosuggestOptions): Promise; autosuggestSelection(options: AutosuggestSuggestion): Promise; availableLanguages(): Promise; convertTo3wa(options: ConvertTo3waOptions): Promise; convertTo3wa(options: ConvertTo3waOptions & { format?: 'json'; }): Promise; convertTo3wa(options: ConvertTo3waOptions & { format: 'geojson'; }): Promise>; convertToCoordinates(options: ConvertToCoordinatesOptions): Promise; convertToCoordinates(options: ConvertToCoordinatesOptions & { format?: 'json'; }): Promise; convertToCoordinates(options: ConvertToCoordinatesOptions & { format: 'geojson'; }): Promise>; gridSection(options: GridSectionOptions): Promise; gridSection(options: GridSectionOptions & { format?: 'json'; }): Promise; gridSection(options: GridSectionOptions & { format: 'geojson'; }): Promise>; } export declare function what3words(apiKey?: string, config?: ApiClientConfiguration, opts?: { transport: Transport; }): What3wordsService;