import { calculateReachableRanges, type MaxNumberOfAlternatives, type RouteType, type TrafficInput } from "@tomtom-org/maps-sdk/services"; import { type Routes, type Avoidable, type TravelMode, type Language } from "@tomtom-org/maps-sdk/core"; import type { Position } from "geojson"; import type { ReachableRangeOptionsOrbis } from "./types"; interface RouteOptions { routeType?: RouteType; traffic?: TrafficInput; avoid?: Avoidable | Avoidable[]; travelMode?: TravelMode; departAt?: string; arriveAt?: string; maxAlternatives?: MaxNumberOfAlternatives; language?: Language; instructionsType?: string; } export declare function getRoute(locations: Position[], options?: RouteOptions): Promise; export declare function getReachableRange(origin: Position, options: ReachableRangeOptionsOrbis): Promise>>; export interface EVRoutingParams { /** Route origin as [longitude, latitude] (GeoJSON convention) */ origin: Position; /** Route destination as [longitude, latitude] (GeoJSON convention) */ destination: Position; /** Optional intermediate waypoints as [longitude, latitude] positions */ waypoints?: Position[]; currentChargePercent: number; maxChargeKWH: number; consumptionInKWH?: Array<{ speedKMH: number; consumptionUnitsPer100KM: number; }>; batteryCurve?: Array<{ stateOfChargeInkWh: number; maxPowerInkW: number; }>; minChargeAtDestinationPercent?: number; minChargeAtChargingStopsPercent?: number; routeType?: RouteType; traffic?: TrafficInput; avoid?: Avoidable[]; departAt?: string; language?: string; } /** * Calculate a long distance EV route with automatic charging stop planning. * * Uses SDK's calculateRoute() with vehicle.engineType = 'electric' and * charging preferences to automatically insert optimal charging stops. */ export declare function calculateEVRoute(params: EVRoutingParams): Promise; export {};