import { ValhallaEngine } from 'rendezvous-kit'; import type { LatLon, TransportMode, Isochrone, RouteMatrix, RouteGeometry } from 'rendezvous-kit'; import type { L402PaymentRequired } from './l402.js'; /** Validate that a string is an HTTP(S) URL. */ export declare function validateUrl(url: string, label: string): string; export declare class RoutingClient { readonly valhallaUrl: string; private readonly l402; constructor(config?: { valhallaUrl?: string; }); /** Store L402 credentials after user pays an invoice. */ storeL402Credentials(macaroon: string, preimage: string): void; /** Build a ValhallaEngine with current auth headers. */ getEngine(): ValhallaEngine; /** Compute isochrone, returning L402PaymentRequired on 402. */ computeIsochrone(origin: LatLon, mode: TransportMode, timeMinutes: number): Promise; /** Compute route matrix, returning L402PaymentRequired on 402. */ computeRouteMatrix(origins: LatLon[], destinations: LatLon[], mode: TransportMode): Promise; /** Compute route, returning L402PaymentRequired on 402. */ computeRoute(origin: LatLon, destination: LatLon, mode: TransportMode): Promise; private handleError; } /** Type guard for L402 payment required responses. */ export declare function isPaymentRequired(result: unknown): result is L402PaymentRequired;