import { type UserAgentName } from "../../utils/userAgent"; export declare let isHttpMode: boolean; export declare let serverUserAgentName: UserAgentName; /** * Request context for session-specific configuration */ interface RequestContext { /** Unset for a request that cannot call the TomTom API, so none was looked up. */ apiKey: string | undefined; clientName: string; } /** * Run function within a session context (for HTTP requests) */ export declare function runWithSessionContext(context: RequestContext, fn: () => T): T; export declare function setStdioClientName(clientName: string): void; /** * Get the effective API key: the request's own inside an HTTP request, never * the server's, so a request without one cannot spend the server's key; * the environment's otherwise. */ export declare function getEffectiveApiKey(): string | undefined; /** * The effective API key, for calls that cannot proceed without one * @throws {Error} If the API key is not set */ export declare function requireApiKey(): string; export type TomTomCallParams = ReturnType; /** The API key and the user agent naming the client, spread into every TomTom SDK call */ export declare function tomtomCallParams(): { apiKey: string; "tomtom-user-agent": string; }; /** The client of the current HTTP request, or the stdio client outside one */ export declare function currentClientName(): string; /** * Set the mode to HTTP server mode and switch to the HTTP server identity. * * @param configuredUserAgentName - the configured server identity (sourced * from MCP_TRANSPORT_MODE); when unset the default HTTP identity applies * @throws {Error} If the configured name is outside the user-agent naming * grammar — sdk_name analytics depend on predictable values */ export declare function setHttpMode(configuredUserAgentName?: string): void; export {}; //# sourceMappingURL=tomtomClient.d.ts.map