import { AxiosInstance } from "axios"; export declare let isHttpMode: boolean; /** * Core Axios client for TomTom API requests * Uses dynamic API key resolution for both environment and session-based keys */ export declare const tomtomClient: AxiosInstance; /** * Get session-specific API key from current async context */ export declare function getSessionApiKey(): string | undefined; /** * Set session-specific configuration for the current async context */ export declare function setSessionContext(apiKey: string, backend?: "tomtom-maps" | "tomtom-orbis-maps"): void; /** * Run function within a session context (for HTTP requests) */ export declare function runWithSessionContext(apiKey: string, backend: "tomtom-maps" | "tomtom-orbis-maps", fn: () => T): T; /** * Get current session backend */ export declare function getSessionBackend(): "tomtom-maps" | "tomtom-orbis-maps" | undefined; /** * Get the effective API key (session or environment) */ export declare function getEffectiveApiKey(): string | undefined; /** * Helper function to validate that API key exists before making calls * @throws {Error} If the API key is not set * @returns {void} Nothing if validation passes */ export declare function validateApiKey(): void; /** * Set the mode to HTTP server mode * This changes the user-agent header to indicate HTTP mode * Uses MCP_TRANSPORT_MODE environment variable if available, otherwise defaults to "TomTomMCPSDKHttp" */ export declare function setHttpMode(): void; /** * API version constants for TomTom Maps API * Each API has its own version number which can change independently */ export declare const API_VERSION: { readonly SEARCH: 2; readonly GEOCODING: 2; readonly ROUTING: 1; readonly TRAFFIC: 5; readonly MAP: 1; }; /** * API version constants for TomTom Orbis Maps API * Each API has its own version number which can be different from TomTom Maps API */ export declare const ORBIS_API_VERSION: { readonly SEARCH: 1; readonly GEOCODING: 1; readonly ROUTING: 2; readonly TRAFFIC: 1; readonly MAP: 1; };