@tomtom-org/maps-sdk 0.51.5 → 0.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import { ZodError, ZodIssue, ZodObject } from "zod";
2
- import { AddressProperties, AreaAnalyticsMetricKey, Avoidable, BBox, ChargingPark, ChargingParkWithAvailability, ChargingStation, ChargingStationsAccessType, ChargingStationsAvailability, ChargingStopProps, CommonPlaceProps, Connector, ConnectorType, CurrentType, EVChargingStationWithAvailabilityPlaceProps, EntryPoint, Fuel, GeographyType, GetPositionEntryPointOption, GlobalConfig, HasBBox, HasLngLat, Instruction, Mapcode, MapcodeType, OpeningHours, OpeningHoursMode, POICategory, Place, PlaceDataSources, PlaceType, Places, PlugType, PolygonFeature, PolygonFeatures, RevGeoAddressProps, RoadShieldReference, Route, RoutePlanningLocation, Routes, SearchPlaceProps, SideOfStreet, TimeZone, TomTomAPIHeaders, TomTomHeaders, TrafficAreaAnalytics, TrafficIncidentDetails, TrafficIncidentRequestCategory, TrafficIncidentTEC, TrafficIncidentTimeValidity, TravelMode, View, inputSectionTypes } from "@tomtom-org/maps-sdk/core";
2
+ import { AddressProperties, AreaAnalyticsMetricKey, Avoidable, BBox, ChargingPark, ChargingParkWithAvailability, ChargingStation, ChargingStationsAccessType, ChargingStationsAvailability, ChargingStopProps, CommonPlaceProps, Connector, ConnectorType, CurrentType, EVChargingStationWithAvailabilityPlaceProps, EntryPoint, Fuel, GeographyType, GetPositionEntryPointOption, GlobalConfig, HasBBox, HasLngLat, Instruction, MapcodeType, OpeningHours, OpeningHoursMode, POICategory, Place, PlaceType, Places, PlugType, PolygonFeature, PolygonFeatures, RevGeoAddressProps, RoadShieldReference, Route, RoutePlanningLocation, Routes, SearchPlaceProps, TimeZone, TomTomAPIHeaders, TomTomHeaders, TrafficAreaAnalytics, TrafficIncidentDetails, TrafficIncidentRequestCategory, TrafficIncidentTEC, TrafficIncidentTimeValidity, TravelMode, View, inputSectionTypes } from "@tomtom-org/maps-sdk/core";
3
3
  //#region src/shared/types/apiResponseErrorTypes.d.ts
4
4
  /**
5
5
  * @ignore
@@ -41,7 +41,7 @@ declare enum APICode {
41
41
  * GET object with URL and optional service-specific API headers.
42
42
  * @ignore
43
43
  */
44
- type GetObject = {
44
+ export type GetObject = {
45
45
  url: URL;
46
46
  headers?: TomTomAPIHeaders;
47
47
  };
@@ -49,7 +49,7 @@ type GetObject = {
49
49
  * POST object with URL, optional payload, and optional service-specific API headers.
50
50
  * @ignore
51
51
  */
52
- type PostObject<D> = {
52
+ export type PostObject<D> = {
53
53
  url: URL;
54
54
  data?: D;
55
55
  headers?: TomTomAPIHeaders;
@@ -60,12 +60,12 @@ type PostObject<D> = {
60
60
  * * POST method comes with a URL, optional POST data, and optional headers.
61
61
  * @ignore
62
62
  */
63
- type FetchInput<PostData = void> = ({
63
+ export type FetchInput<PostData = void> = ({
64
64
  method: 'GET';
65
65
  } & GetObject) | ({
66
66
  method: 'POST';
67
67
  } & PostObject<PostData>);
68
- type ParsedFetchResponse<T> = Promise<{
68
+ export type ParsedFetchResponse<T> = Promise<{
69
69
  data: Promise<T>;
70
70
  status: number;
71
71
  }>;
@@ -109,7 +109,7 @@ type RequestValidationConfig<Params = any> = {
109
109
  *
110
110
  * @group Shared
111
111
  */
112
- type CommonServiceParams<ApiRequest = any, ApiResponse = any> = Partial<GlobalConfig> & {
112
+ export type CommonServiceParams<ApiRequest = any, ApiResponse = any> = Partial<GlobalConfig> & {
113
113
  /**
114
114
  * Custom base URL for the service endpoint.
115
115
  *
@@ -167,7 +167,7 @@ type CommonServiceParams<ApiRequest = any, ApiResponse = any> = Partial<GlobalCo
167
167
  *
168
168
  * @group Shared
169
169
  */
170
- type ParseResponseError<T = DefaultAPIResponseErrorBody> = (apiError: APIErrorResponse<T>, serviceName: string) => SDKServiceError;
170
+ export type ParseResponseError<T = DefaultAPIResponseErrorBody> = (apiError: APIErrorResponse<T>, serviceName: string) => SDKServiceError;
171
171
  /**
172
172
  * Template interface defining the lifecycle methods for any service implementation.
173
173
  *
@@ -182,7 +182,7 @@ type ParseResponseError<T = DefaultAPIResponseErrorBody> = (apiError: APIErrorRe
182
182
  *
183
183
  * @group Shared
184
184
  */
185
- type ServiceTemplate<Params extends CommonServiceParams<ApiRequest, ApiResponse>, ApiRequest, ApiResponse, Response> = {
185
+ export type ServiceTemplate<Params extends CommonServiceParams<ApiRequest, ApiResponse>, ApiRequest, ApiResponse, Response> = {
186
186
  /**
187
187
  * Configuration for validating request parameters.
188
188
  *
@@ -254,7 +254,7 @@ declare class ValidationError extends Error {
254
254
  /**
255
255
  * Name of a service managed by the SDK.
256
256
  */
257
- type ServiceName = string;
257
+ export type ServiceName = string;
258
258
  //#endregion
259
259
  //#region src/shared/errors.d.ts
260
260
  /**
@@ -279,7 +279,7 @@ type ServiceName = string;
279
279
  *
280
280
  * @group Errors
281
281
  */
282
- declare class SDKError extends Error {
282
+ export declare class SDKError extends Error {
283
283
  readonly service: string;
284
284
  readonly issues?: ZodIssue[] | undefined;
285
285
  /**
@@ -299,7 +299,7 @@ declare class SDKError extends Error {
299
299
  *
300
300
  * @group Errors
301
301
  */
302
- declare const APIErrorCode: { readonly [K in APICode as number]: string; };
302
+ export declare const APIErrorCode: { readonly [K in APICode as number]: string; };
303
303
  /**
304
304
  * Error class for HTTP API response errors.
305
305
  *
@@ -313,7 +313,7 @@ declare const APIErrorCode: { readonly [K in APICode as number]: string; };
313
313
  *
314
314
  * @group Errors
315
315
  */
316
- declare class SDKServiceError extends SDKError {
316
+ export declare class SDKServiceError extends SDKError {
317
317
  /**
318
318
  * HTTP status code of the failed API request.
319
319
  *
@@ -341,7 +341,7 @@ declare class SDKServiceError extends SDKError {
341
341
  * @param error
342
342
  * @param serviceName
343
343
  */
344
- declare const parseDefaultResponseError: ParseResponseError<DefaultAPIResponseErrorBody>;
344
+ export declare const parseDefaultResponseError: ParseResponseError<DefaultAPIResponseErrorBody>;
345
345
  /**
346
346
  * @ignore
347
347
  * Generate error for APIResponse, any other error type will be returned as it is.
@@ -349,13 +349,13 @@ declare const parseDefaultResponseError: ParseResponseError<DefaultAPIResponseEr
349
349
  * @param serviceName The name of the service.
350
350
  * @param parseResponseError
351
351
  */
352
- declare const buildResponseError: (error: unknown, serviceName: ServiceName, parseResponseError?: ParseResponseError<unknown>) => SDKError;
352
+ export declare const buildResponseError: (error: unknown, serviceName: ServiceName, parseResponseError?: ParseResponseError<unknown>) => SDKError;
353
353
  /**
354
354
  * @ignore
355
355
  * @param error
356
356
  * @param serviceName
357
357
  */
358
- declare const buildValidationError: (error: ValidationError, serviceName: ServiceName) => SDKError;
358
+ export declare const buildValidationError: (error: ValidationError, serviceName: ServiceName) => SDKError;
359
359
  //#endregion
360
360
  //#region src/shared/types/commonGeocodeAndFuzzySearchParams.d.ts
361
361
  /**
@@ -371,7 +371,7 @@ declare const buildValidationError: (error: ValidationError, serviceName: Servic
371
371
  *
372
372
  * @group Search
373
373
  */
374
- type CommonGeocodeAndFuzzySearchParams = {
374
+ export type CommonGeocodeAndFuzzySearchParams = {
375
375
  /**
376
376
  * Enable predictive/autocomplete mode for partial input queries.
377
377
  *
@@ -581,7 +581,7 @@ type CommonGeocodeAndFuzzySearchParams = {
581
581
  *
582
582
  * @group Search
583
583
  */
584
- type SearchIndexType = 'Geo' | 'PAD' | 'Addr' | 'Str' | 'XStr' | 'POI';
584
+ export type SearchIndexType = 'Geo' | 'PAD' | 'Addr' | 'Str' | 'XStr' | 'POI';
585
585
  /**
586
586
  * Common parameters shared across places-related services.
587
587
  *
@@ -632,7 +632,7 @@ type SearchIndexType = 'Geo' | 'PAD' | 'Addr' | 'Str' | 'XStr' | 'POI';
632
632
  *
633
633
  * @group Search
634
634
  */
635
- type CommonPlacesParams<ApiRequest, ApiResponse> = CommonServiceParams<ApiRequest, ApiResponse> & {
635
+ export type CommonPlacesParams<ApiRequest, ApiResponse> = CommonServiceParams<ApiRequest, ApiResponse> & {
636
636
  /**
637
637
  * Maximum number of results to return.
638
638
  *
@@ -1131,107 +1131,30 @@ type PredefinedVehicleModel = {
1131
1131
  variantId: string;
1132
1132
  };
1133
1133
  /**
1134
- * Physical properties of the vehicle (sizes and weights).
1134
+ * Physical properties of the vehicle.
1135
1135
  *
1136
1136
  * @remarks
1137
- * Dimensions are used to:
1138
- * - Check road restrictions (height, width, weight limits)
1139
- * - Avoid unsuitable routes (narrow streets, low bridges)
1137
+ * The vehicle weight is used to:
1138
+ * - Check road weight restrictions
1140
1139
  * - Calculate toll costs (weight-based pricing)
1141
- * - Determine parking availability
1142
- *
1143
- * **Important for:**
1144
- * - Commercial vehicles (trucks, vans)
1145
- * - Recreational vehicles (RVs, caravans)
1146
- * - Oversized vehicles
1140
+ * - Refine consumption when a detailed consumption model is supplied
1147
1141
  *
1148
1142
  * @example
1149
1143
  * ```typescript
1150
1144
  * // Standard delivery van
1151
1145
  * const vanDimensions: VehicleDimensions = {
1152
- * lengthMeters: 5.5,
1153
- * widthMeters: 2.0,
1154
- * heightMeters: 2.5,
1155
1146
  * weightKG: 3500
1156
1147
  * };
1157
1148
  *
1158
1149
  * // Large truck
1159
1150
  * const truckDimensions: VehicleDimensions = {
1160
- * lengthMeters: 16.5,
1161
- * widthMeters: 2.55,
1162
- * heightMeters: 4.0,
1163
- * weightKG: 40000,
1164
- * axleWeightKG: 10000
1151
+ * weightKG: 40000
1165
1152
  * };
1166
1153
  * ```
1167
1154
  *
1168
1155
  * @group Vehicle
1169
1156
  */
1170
1157
  type VehicleDimensions = {
1171
- /**
1172
- * Length of the vehicle in meters.
1173
- *
1174
- * @remarks
1175
- * A value of 0 means that length restrictions are not considered.
1176
- *
1177
- * **Typical Values:**
1178
- * - Small car: 3-4 m
1179
- * - SUV/Van: 4-6 m
1180
- * - Small truck: 6-10 m
1181
- * - Large truck: 12-18 m
1182
- *
1183
- * @default 0
1184
- *
1185
- * @example
1186
- * ```typescript
1187
- * lengthMeters: 5.5 // Delivery van
1188
- * lengthMeters: 16.5 // Articulated truck
1189
- * ```
1190
- */
1191
- lengthMeters?: number;
1192
- /**
1193
- * Width of the vehicle in meters.
1194
- *
1195
- * @remarks
1196
- * A value of 0 means that width restrictions are not considered.
1197
- *
1198
- * **Typical Values:**
1199
- * - Standard car: 1.7-1.9 m
1200
- * - Van/truck: 2.0-2.5 m
1201
- * - Maximum legal (Europe/US): 2.55 m
1202
- *
1203
- * @default 0
1204
- *
1205
- * @example
1206
- * ```typescript
1207
- * widthMeters: 1.8 // Standard car
1208
- * widthMeters: 2.5 // Wide truck
1209
- * ```
1210
- */
1211
- widthMeters?: number;
1212
- /**
1213
- * Height of the vehicle in meters.
1214
- *
1215
- * @remarks
1216
- * A value of 0 means that height restrictions are not considered.
1217
- *
1218
- * **Typical Values:**
1219
- * - Sedan: 1.4-1.5 m
1220
- * - SUV: 1.7-1.9 m
1221
- * - Van: 2.0-2.8 m
1222
- * - Truck: 3.5-4.5 m
1223
- *
1224
- * **Important:** Critical for avoiding low bridges and tunnels.
1225
- *
1226
- * @default 0
1227
- *
1228
- * @example
1229
- * ```typescript
1230
- * heightMeters: 1.5 // Sedan
1231
- * heightMeters: 4.0 // Container truck
1232
- * ```
1233
- */
1234
- heightMeters?: number;
1235
1158
  /**
1236
1159
  * Weight of the vehicle in kilograms.
1237
1160
  *
@@ -1261,29 +1184,6 @@ type VehicleDimensions = {
1261
1184
  * ```
1262
1185
  */
1263
1186
  weightKG?: number;
1264
- /**
1265
- * Weight per axle of the vehicle in kilograms.
1266
- *
1267
- * @remarks
1268
- * A value of 0 means that weight restrictions per axle are not considered.
1269
- *
1270
- * **Use Cases:**
1271
- * - Older bridges with axle weight limits
1272
- * - Specialized roads with axle restrictions
1273
- * - Heavy load transport
1274
- *
1275
- * **Typical Values:**
1276
- * - Single axle: 6,000-10,000 kg
1277
- * - Tandem axle: 8,000-11,500 kg (per axle)
1278
- *
1279
- * @default 0
1280
- *
1281
- * @example
1282
- * ```typescript
1283
- * axleWeightKG: 10000 // Heavy truck
1284
- * ```
1285
- */
1286
- axleWeightKG?: number;
1287
1187
  };
1288
1188
  /**
1289
1189
  * Explicit vehicle model with manually specified properties.
@@ -1305,8 +1205,6 @@ type VehicleDimensions = {
1305
1205
  * // Generic vehicle with dimensions only
1306
1206
  * const customVan: ExplicitVehicleModel<undefined> = {
1307
1207
  * dimensions: {
1308
- * lengthMeters: 5.5,
1309
- * heightMeters: 2.5,
1310
1208
  * weightKG: 3500
1311
1209
  * }
1312
1210
  * };
@@ -1369,7 +1267,6 @@ type ExplicitVehicleModel<E extends VehicleEngineType> = {
1369
1267
  * // Option 2: Explicit model
1370
1268
  * const customModel: VehicleModel = {
1371
1269
  * dimensions: {
1372
- * heightMeters: 4.0,
1373
1270
  * weightKG: 25000
1374
1271
  * }
1375
1272
  * };
@@ -1396,7 +1293,7 @@ type VehicleModel<E extends VehicleEngineType = undefined> = PredefinedVehicleMo
1396
1293
  *
1397
1294
  * @group Vehicle
1398
1295
  */
1399
- type ChargingPreferencesPCT = {
1296
+ export type ChargingPreferencesPCT = {
1400
1297
  /**
1401
1298
  * The minimum battery percentage you wish to arrive at your destination with.
1402
1299
  *
@@ -1460,7 +1357,7 @@ type ChargingPreferencesPCT = {
1460
1357
  *
1461
1358
  * @group Vehicle
1462
1359
  */
1463
- type ChargingPreferencesKWH = {
1360
+ export type ChargingPreferencesKWH = {
1464
1361
  /**
1465
1362
  * The minimum battery kWh you wish to arrive at your destination with.
1466
1363
  *
@@ -1536,7 +1433,7 @@ type ChargingPreferencesKWH = {
1536
1433
  *
1537
1434
  * @group Vehicle
1538
1435
  */
1539
- type ChargingPreferences = ChargingPreferencesPCT | ChargingPreferencesKWH;
1436
+ export type ChargingPreferences = ChargingPreferencesPCT | ChargingPreferencesKWH;
1540
1437
  /**
1541
1438
  * Preferences specific to electric vehicles.
1542
1439
  *
@@ -1556,7 +1453,7 @@ type ChargingPreferences = ChargingPreferencesPCT | ChargingPreferencesKWH;
1556
1453
  *
1557
1454
  * @group Vehicle
1558
1455
  */
1559
- type ElectricVehiclePreferences = {
1456
+ export type ElectricVehiclePreferences = {
1560
1457
  /**
1561
1458
  * Charging preferences for Long Distance EV Routing.
1562
1459
  *
@@ -1607,45 +1504,42 @@ type ElectricVehiclePreferences = {
1607
1504
  *
1608
1505
  * @group Vehicle
1609
1506
  */
1610
- type VehiclePreferences<E extends VehicleEngineType = undefined> = E extends 'electric' ? ElectricVehiclePreferences : {};
1507
+ export type VehiclePreferences<E extends VehicleEngineType = undefined> = E extends 'electric' ? ElectricVehiclePreferences : {};
1611
1508
  //#endregion
1612
1509
  //#region src/shared/types/vehicleRestrictionParams.d.ts
1613
1510
  /**
1614
- * Known hazardous truck load types. Should be used for trucks carrying hazardous materials.
1511
+ * Whether the vehicle carries an electronic toll collection transponder.
1512
+ *
1513
+ * Determines which toll roads the routing engine may use: some tolls can only be paid by
1514
+ * transponder, others only without one.
1515
+ *
1516
+ * @group Vehicle
1615
1517
  */
1616
- declare const loadTypes: readonly ["USHazmatClass1", "USHazmatClass2", "USHazmatClass3", "USHazmatClass4", "USHazmatClass5", "USHazmatClass6", "USHazmatClass7", "USHazmatClass8", "USHazmatClass9", "otherHazmatExplosive", "otherHazmatGeneral", "otherHazmatHarmfulToWater"];
1518
+ export declare const tollTransponderOptions: readonly ["all", "unknown", "none"];
1617
1519
  /**
1618
- * Known hazardous truck load types. Should be used for trucks carrying hazardous materials.
1520
+ * Whether the vehicle carries an electronic toll collection transponder.
1619
1521
  *
1620
- * Use these values for routing in the USA:
1621
- * * USHazmatClass1: Explosives
1622
- * * USHazmatClass2: Compressed gas
1623
- * * USHazmatClass3: Flammable liquids
1624
- * * USHazmatClass4: Flammable solids
1625
- * * USHazmatClass5: Oxidizers
1626
- * * USHazmatClass6: Poisons
1627
- * * USHazmatClass7: Radioactive
1628
- * * USHazmatClass8: Corrosives
1629
- * * USHazmatClass9: Miscellaneous
1522
+ * @remarks
1523
+ * - `all` — the vehicle has a transponder accepted by every toll operator on the route
1524
+ * - `unknown` — transponder availability is unknown, so no assumption is made
1525
+ * - `none` — the vehicle has no transponder
1630
1526
  *
1631
- * Use these values for routing in all other countries:
1632
- * * otherHazmatExplosive: Explosives
1633
- * * otherHazmatGeneral: Miscellaneous
1634
- * * otherHazmatHarmfulToWater: Harmful to water
1527
+ * @example
1528
+ * ```typescript
1529
+ * const transponder: TollTransponder = 'all';
1530
+ * ```
1531
+ *
1532
+ * @group Vehicle
1635
1533
  */
1636
- type LoadType = (typeof loadTypes)[number];
1534
+ export type TollTransponder = (typeof tollTransponderOptions)[number];
1637
1535
  /**
1638
- * Parameters for a vehicle which are related to restrictions (e.g. related to the cargo and purpose of the vehicle).
1536
+ * Parameters for a vehicle which are related to restrictions applied during route planning.
1639
1537
  */
1640
- type VehicleRestrictions = {
1538
+ export type VehicleRestrictions = {
1641
1539
  /**
1642
- * Vehicle restrictions including load types, speed limits, ADR codes, and commercial usage.
1540
+ * Vehicle restrictions applied during route planning.
1643
1541
  */
1644
1542
  restrictions?: {
1645
- /**
1646
- * Specifies types of cargo that may be classified as hazardous materials and are restricted from some roads.
1647
- */
1648
- loadTypes?: LoadType[];
1649
1543
  /**
1650
1544
  * Maximum speed of the vehicle in kilometers/hour.
1651
1545
  * * Must have a value in the range [0, 250].
@@ -1655,26 +1549,23 @@ type VehicleRestrictions = {
1655
1549
  */
1656
1550
  maxSpeedKMH?: number;
1657
1551
  /**
1658
- * Subjects the vehicle to ADR tunnel restrictions.
1659
- * * Vehicles with code B are restricted from roads with ADR tunnel categories B, C, D, and E.
1660
- * * Vehicles with code C are restricted from roads with ADR tunnel categories C, D, and E.
1661
- * * Vehicles with code D are restricted from roads with ADR tunnel categories D and E.
1662
- * * Vehicles with code E are restricted from roads with ADR tunnel category E.
1552
+ * Whether the vehicle carries an electronic toll collection transponder.
1663
1553
  *
1664
- * Notes:
1665
- * If travelMode is pedestrian or bicycle, adrCode is not considered.
1666
- * The adrCode and loadType parameters are independent; please provide both if applicable.
1667
- * @see https://unece.org/about-adr
1668
- */
1669
- adrCode?: 'B' | 'C' | 'D' | 'E';
1670
- /**
1554
+ * @remarks
1555
+ * Affects which toll roads are considered usable: a toll that can only be paid by
1556
+ * transponder is avoided when this is `none`, and a toll that cannot be paid by
1557
+ * transponder is avoided when this is `all`.
1671
1558
  *
1672
- * The vehicle is used for commercial purposes (big letters on the side) and thus may not be allowed to drive on some roads.
1673
- * This restriction is applicable only in some countries (e.g. US).
1559
+ * @default 'unknown'
1674
1560
  *
1675
- * @default false
1561
+ * @example
1562
+ * ```typescript
1563
+ * restrictions: {
1564
+ * tollTransponder: 'all'
1565
+ * }
1566
+ * ```
1676
1567
  */
1677
- commercial?: boolean;
1568
+ tollTransponder?: TollTransponder;
1678
1569
  };
1679
1570
  };
1680
1571
  //#endregion
@@ -1694,7 +1585,7 @@ type VehicleRestrictions = {
1694
1585
  *
1695
1586
  * @group Vehicle
1696
1587
  */
1697
- type CombustionVehicleState = {
1588
+ export type CombustionVehicleState = {
1698
1589
  /**
1699
1590
  * Specifies the current supply of fuel in liters.
1700
1591
  *
@@ -1735,7 +1626,7 @@ type CombustionVehicleState = {
1735
1626
  *
1736
1627
  * @group Vehicle
1737
1628
  */
1738
- type ElectricVehicleStatePCT = {
1629
+ export type ElectricVehicleStatePCT = {
1739
1630
  /**
1740
1631
  * Specifies the current battery charge in percentage.
1741
1632
  *
@@ -1771,7 +1662,7 @@ type ElectricVehicleStatePCT = {
1771
1662
  *
1772
1663
  * @group Vehicle
1773
1664
  */
1774
- type ElectricVehicleStateKWH = {
1665
+ export type ElectricVehicleStateKWH = {
1775
1666
  /**
1776
1667
  * Specifies the current battery charge in kWh.
1777
1668
  *
@@ -1817,7 +1708,7 @@ type ElectricVehicleStateKWH = {
1817
1708
  *
1818
1709
  * @group Vehicle
1819
1710
  */
1820
- type ElectricVehicleState = ElectricVehicleStatePCT | ElectricVehicleStateKWH;
1711
+ export type ElectricVehicleState = ElectricVehicleStatePCT | ElectricVehicleStateKWH;
1821
1712
  /**
1822
1713
  * Generic vehicle state properties applicable to all vehicle types.
1823
1714
  *
@@ -1833,7 +1724,7 @@ type ElectricVehicleState = ElectricVehicleStatePCT | ElectricVehicleStateKWH;
1833
1724
  *
1834
1725
  * @group Vehicle
1835
1726
  */
1836
- type GenericVehicleState = {
1727
+ export type GenericVehicleState = {
1837
1728
  /**
1838
1729
  * The current heading at the starting point, in degrees starting at true North and continuing in a clockwise direction.
1839
1730
  *
@@ -1901,7 +1792,7 @@ type GenericVehicleState = {
1901
1792
  *
1902
1793
  * @group Vehicle
1903
1794
  */
1904
- type VehicleState<E extends VehicleEngineType = undefined> = GenericVehicleState & (E extends 'combustion' ? CombustionVehicleState : E extends 'electric' ? ElectricVehicleState : {});
1795
+ export type VehicleState<E extends VehicleEngineType = undefined> = GenericVehicleState & (E extends 'combustion' ? CombustionVehicleState : E extends 'electric' ? ElectricVehicleState : {});
1905
1796
  //#endregion
1906
1797
  //#region src/shared/types/vehicleParams.d.ts
1907
1798
  /**
@@ -1916,7 +1807,6 @@ type VehicleState<E extends VehicleEngineType = undefined> = GenericVehicleState
1916
1807
  * const params: GenericVehicleParams = {
1917
1808
  * model: {
1918
1809
  * dimensions: {
1919
- * heightMeters: 2.5,
1920
1810
  * weightKG: 3500
1921
1811
  * }
1922
1812
  * }
@@ -1925,7 +1815,7 @@ type VehicleState<E extends VehicleEngineType = undefined> = GenericVehicleState
1925
1815
  *
1926
1816
  * @group Vehicle
1927
1817
  */
1928
- type GenericVehicleParams = {
1818
+ export type GenericVehicleParams = {
1929
1819
  /**
1930
1820
  * Model (static properties) of the vehicle with generic/unspecified engine type.
1931
1821
  *
@@ -1982,7 +1872,7 @@ type GenericVehicleParams = {
1982
1872
  *
1983
1873
  * @group Vehicle
1984
1874
  */
1985
- type CombustionVehicleParams = {
1875
+ export type CombustionVehicleParams = {
1986
1876
  /**
1987
1877
  * Combustion vehicles.
1988
1878
  *
@@ -2090,7 +1980,7 @@ type CombustionVehicleParams = {
2090
1980
  *
2091
1981
  * @group Vehicle
2092
1982
  */
2093
- type ElectricVehicleParams = {
1983
+ export type ElectricVehicleParams = {
2094
1984
  /**
2095
1985
  * Electric vehicles (EV).
2096
1986
  *
@@ -2128,7 +2018,7 @@ type ElectricVehicleParams = {
2128
2018
  * - **Model**: Static properties (dimensions, engine specs)
2129
2019
  * - **State**: Current conditions (fuel/charge level, heading)
2130
2020
  * - **Preferences**: Routing preferences (charging stops, etc.)
2131
- * - **Restrictions**: Cargo and usage restrictions
2021
+ * - **Restrictions**: Maximum speed applied during route planning
2132
2022
  *
2133
2023
  * **Three Types:**
2134
2024
  * 1. **Generic**: Basic vehicle without engine-specific features
@@ -2136,11 +2026,9 @@ type ElectricVehicleParams = {
2136
2026
  * 3. **Electric**: Battery-powered with charging stop optimization
2137
2027
  *
2138
2028
  * **When to Specify:**
2139
- * - Size restrictions matter (trucks, vans)
2029
+ * - Weight restrictions matter (trucks, vans)
2140
2030
  * - Accurate range prediction needed
2141
2031
  * - EV routing with charging stops
2142
- * - Hazardous material transport
2143
- * - Commercial vehicle routing
2144
2032
  *
2145
2033
  * @example
2146
2034
  * ```typescript
@@ -2148,12 +2036,8 @@ type ElectricVehicleParams = {
2148
2036
  * const van: VehicleParameters = {
2149
2037
  * model: {
2150
2038
  * dimensions: {
2151
- * heightMeters: 2.5,
2152
2039
  * weightKG: 3500
2153
2040
  * }
2154
- * },
2155
- * restrictions: {
2156
- * commercial: true
2157
2041
  * }
2158
2042
  * };
2159
2043
  *
@@ -2192,17 +2076,14 @@ type ElectricVehicleParams = {
2192
2076
  * }
2193
2077
  * };
2194
2078
  *
2195
- * // Hazmat truck
2196
- * const hazmatTruck: VehicleParameters = {
2079
+ * // Speed-limited truck
2080
+ * const truck: VehicleParameters = {
2197
2081
  * model: {
2198
2082
  * dimensions: {
2199
- * heightMeters: 4.0,
2200
2083
  * weightKG: 40000
2201
2084
  * }
2202
2085
  * },
2203
2086
  * restrictions: {
2204
- * loadTypes: ['USHazmatClass3'],
2205
- * commercial: true,
2206
2087
  * maxSpeedKMH: 80
2207
2088
  * }
2208
2089
  * };
@@ -2210,22 +2091,9 @@ type ElectricVehicleParams = {
2210
2091
  *
2211
2092
  * @group Vehicle
2212
2093
  */
2213
- type VehicleParameters = (GenericVehicleParams | CombustionVehicleParams | ElectricVehicleParams) & VehicleRestrictions;
2094
+ export type VehicleParameters = (GenericVehicleParams | CombustionVehicleParams | ElectricVehicleParams) & VehicleRestrictions;
2214
2095
  //#endregion
2215
2096
  //#region src/shared/types/commonRoutingParams.d.ts
2216
- /**
2217
- * Basic low/normal/high intensity level option.
2218
- *
2219
- * Used for configuring route characteristics like hilliness or windingness.
2220
- *
2221
- * @remarks
2222
- * - `low`: Minimal intensity
2223
- * - `normal`: Moderate intensity
2224
- * - `high`: Maximum intensity
2225
- *
2226
- * @group Routing
2227
- */
2228
- type LNH = 'low' | 'normal' | 'high';
2229
2097
  /**
2230
2098
  * Available route types, where each type specifies the type of optimization used when calculating routes:
2231
2099
  * * **fast**: Route calculation is optimized by travel time, while keeping the routes sensible. For example, the calculation may avoid shortcuts along inconvenient side roads or long detours that only save very little time.
@@ -2236,7 +2104,7 @@ type LNH = 'low' | 'normal' | 'high';
2236
2104
  *
2237
2105
  * @group Routing
2238
2106
  */
2239
- declare const routeTypes: readonly ["fast", "short", "efficient", "thrilling"];
2107
+ export declare const routeTypes: readonly ["fast", "short", "efficient", "thrilling"];
2240
2108
  /**
2241
2109
  * Route optimization strategy for route calculation.
2242
2110
  *
@@ -2282,7 +2150,7 @@ declare const routeTypes: readonly ["fast", "short", "efficient", "thrilling"];
2282
2150
  *
2283
2151
  * @group Routing
2284
2152
  */
2285
- type RouteType = (typeof routeTypes)[number];
2153
+ export type RouteType = (typeof routeTypes)[number];
2286
2154
  /**
2287
2155
  * Traffic consideration mode for route calculation.
2288
2156
  *
@@ -2314,7 +2182,7 @@ type RouteType = (typeof routeTypes)[number];
2314
2182
  *
2315
2183
  * @group Routing
2316
2184
  */
2317
- type TrafficInput = 'live' | 'historical';
2185
+ export type TrafficInput = 'live' | 'historical';
2318
2186
  /**
2319
2187
  * Cost model criteria for route optimization.
2320
2188
  *
@@ -2357,7 +2225,7 @@ type TrafficInput = 'live' | 'historical';
2357
2225
  *
2358
2226
  * @group Routing
2359
2227
  */
2360
- type CostModel = {
2228
+ export type CostModel = {
2361
2229
  /**
2362
2230
  * Specifies something that the route calculation should try to avoid when determining the route.
2363
2231
  * @default None
@@ -2461,7 +2329,7 @@ type DepartArriveOption = 'departAt' | 'arriveBy';
2461
2329
  *
2462
2330
  * @group Routing
2463
2331
  */
2464
- type DepartArriveParams<Option extends DepartArriveOption = DepartArriveOption> = {
2332
+ export type DepartArriveParams<Option extends DepartArriveOption = DepartArriveOption> = {
2465
2333
  /**
2466
2334
  * Whether to specify a departure or arrival time.
2467
2335
  *
@@ -2558,17 +2426,11 @@ type DepartArriveParams<Option extends DepartArriveOption = DepartArriveOption>
2558
2426
  * vehicle: {
2559
2427
  * model: {
2560
2428
  * dimensions: {
2561
- * lengthMeters: 16.5,
2562
- * widthMeters: 2.5,
2563
- * heightMeters: 4.0,
2564
2429
  * weightKG: 40000
2565
- * },
2566
- * restrictions: {
2567
- * restrictions: {
2568
- * commercial: true,
2569
- * maxSpeedKMH: 90
2570
- * }
2571
2430
  * }
2431
+ * },
2432
+ * restrictions: {
2433
+ * maxSpeedKMH: 90
2572
2434
  * }
2573
2435
  * }
2574
2436
  * };
@@ -2578,7 +2440,7 @@ type DepartArriveParams<Option extends DepartArriveOption = DepartArriveOption>
2578
2440
  *
2579
2441
  * @group Routing
2580
2442
  */
2581
- type CommonRoutingParams = {
2443
+ export type CommonRoutingParams = {
2582
2444
  /**
2583
2445
  * Criteria that specifies what paths to prefer during routing.
2584
2446
  */
@@ -2639,7 +2501,7 @@ type CommonRoutingParams = {
2639
2501
  *
2640
2502
  * @group Search
2641
2503
  */
2642
- type RelatedPoisRequest = 'child' | 'parent' | 'all' | 'off';
2504
+ export type RelatedPoisRequest = 'child' | 'parent' | 'all' | 'off';
2643
2505
  /**
2644
2506
  * Timezone data format for POI responses.
2645
2507
  *
@@ -2665,7 +2527,7 @@ type RelatedPoisRequest = 'child' | 'parent' | 'all' | 'off';
2665
2527
  *
2666
2528
  * @group Search
2667
2529
  */
2668
- type TimeZoneRequest = 'iana';
2530
+ export type TimeZoneRequest = 'iana';
2669
2531
  /**
2670
2532
  * Common parameters for search services with POI filtering capabilities.
2671
2533
  *
@@ -2692,7 +2554,7 @@ type TimeZoneRequest = 'iana';
2692
2554
  *
2693
2555
  * @group Search
2694
2556
  */
2695
- type CommonSearchParams<ApiRequest, ApiResponse> = CommonPlacesParams<ApiRequest, ApiResponse> & {
2557
+ export type CommonSearchParams<ApiRequest, ApiResponse> = CommonPlacesParams<ApiRequest, ApiResponse> & {
2696
2558
  /**
2697
2559
  * Search query string.
2698
2560
  *
@@ -3245,7 +3107,7 @@ type SummaryQueryType = 'NEARBY' | 'NON_NEAR';
3245
3107
  *
3246
3108
  * @group Search
3247
3109
  */
3248
- type SearchSummary = {
3110
+ export type SearchSummary = {
3249
3111
  /**
3250
3112
  * The search query as interpreted and processed by the search engine.
3251
3113
  *
@@ -3751,7 +3613,7 @@ type AlongRouteSearchTemplate = ServiceTemplate<AlongRouteSearchParams, AlongRou
3751
3613
  *
3752
3614
  * @ignore (exposed via 'search')
3753
3615
  */
3754
- declare const alongRouteSearch: (params: AlongRouteSearchParams, customTemplate?: Partial<AlongRouteSearchTemplate>) => Promise<AlongRouteSearchResponse>;
3616
+ export declare const alongRouteSearch: (params: AlongRouteSearchParams, customTemplate?: Partial<AlongRouteSearchTemplate>) => Promise<AlongRouteSearchResponse>;
3755
3617
  //#endregion
3756
3618
  //#region src/autocomplete-search/types/autocompleteSearchResponse.d.ts
3757
3619
  /**
@@ -4265,7 +4127,7 @@ type AutocompleteSearchTemplate = ServiceTemplate<AutocompleteSearchParams, URL,
4265
4127
  *
4266
4128
  * @group Autocomplete Search
4267
4129
  */
4268
- declare const autocompleteSearch: (params: AutocompleteSearchParams, customTemplate?: Partial<AutocompleteSearchTemplate>) => Promise<AutocompleteSearchResponse>;
4130
+ export declare const autocompleteSearch: (params: AutocompleteSearchParams, customTemplate?: Partial<AutocompleteSearchTemplate>) => Promise<AutocompleteSearchResponse>;
4269
4131
  //#endregion
4270
4132
  //#region src/along-route-search/requestBuilder.d.ts
4271
4133
  /**
@@ -5808,7 +5670,7 @@ type ReachableRangeResponseAPI = {
5808
5670
  };
5809
5671
  //#endregion
5810
5672
  //#region src/reachable-range/types/reachableRangeParams.d.ts
5811
- declare const budgetTypes: readonly ["timeMinutes", "remainingChargeCPT", "spentChargePCT", "spentFuelLiters", "distanceKM"];
5673
+ export declare const budgetTypes: readonly ["timeMinutes", "remainingChargeCPT", "spentChargePCT", "spentFuelLiters", "distanceKM"];
5812
5674
  /**
5813
5675
  * Type of budget constraint for reachable range calculation.
5814
5676
  *
@@ -5835,7 +5697,7 @@ declare const budgetTypes: readonly ["timeMinutes", "remainingChargeCPT", "spent
5835
5697
  *
5836
5698
  * @group Reachable Range
5837
5699
  */
5838
- type BudgetType = (typeof budgetTypes)[number];
5700
+ export type BudgetType = (typeof budgetTypes)[number];
5839
5701
  /**
5840
5702
  * Budget constraint for reachable range calculation.
5841
5703
  *
@@ -5879,7 +5741,7 @@ type BudgetType = (typeof budgetTypes)[number];
5879
5741
  *
5880
5742
  * @group Reachable Range
5881
5743
  */
5882
- type ReachableRangeBudget = {
5744
+ export type ReachableRangeBudget = {
5883
5745
  /**
5884
5746
  * The type of budget, including units.
5885
5747
  *
@@ -5909,6 +5771,50 @@ type ReachableRangeBudget = {
5909
5771
  */
5910
5772
  value: number;
5911
5773
  };
5774
+ /**
5775
+ * Route features `calculateReachableRange` can avoid.
5776
+ *
5777
+ * @remarks
5778
+ * Every {@link Avoidable} except `alreadyUsedRoads`, which this endpoint rejects with
5779
+ * *"Avoid alreadyUsedRoads not supported for calculateReachableRange"*. It stays available on
5780
+ * `calculateRoute`.
5781
+ *
5782
+ * @group Reachable Range
5783
+ */
5784
+ export type ReachableRangeAvoidable = Exclude<Avoidable, 'alreadyUsedRoads'>;
5785
+ /**
5786
+ * Cost model accepted by `calculateReachableRange`.
5787
+ *
5788
+ * @remarks
5789
+ * {@link CostModel} without `avoidAreas`, which this endpoint has no parameter for, and with the
5790
+ * narrower {@link ReachableRangeAvoidable} avoid list.
5791
+ *
5792
+ * @group Reachable Range
5793
+ */
5794
+ export type ReachableRangeCostModel = Omit<CostModel, 'avoid' | 'avoidAreas'> & {
5795
+ /**
5796
+ * Route features to avoid when calculating the range.
5797
+ */
5798
+ avoid?: ReachableRangeAvoidable[];
5799
+ };
5800
+ /**
5801
+ * Vehicle parameters accepted by `calculateReachableRange`.
5802
+ *
5803
+ * @remarks
5804
+ * {@link VehicleParameters} without `state.heading`, which this endpoint rejects with
5805
+ * *"parameter [vehicleHeading] not supported"*. It stays available on `calculateRoute`, where the
5806
+ * routing API takes it as `vehicleHeadingInDegrees`.
5807
+ *
5808
+ * Everything else is unchanged, including the engine-specific `state` variants -- an electric
5809
+ * vehicle still picks between the percentage and kWh forms.
5810
+ *
5811
+ * @group Reachable Range
5812
+ */
5813
+ export type ReachableRangeVehicleParameters = (Omit<GenericVehicleParams, 'state'> | (Omit<CombustionVehicleParams, 'state'> & {
5814
+ state?: CombustionVehicleState;
5815
+ }) | (Omit<ElectricVehicleParams, 'state'> & {
5816
+ state?: ElectricVehicleState;
5817
+ })) & VehicleRestrictions;
5912
5818
  /**
5913
5819
  * Parameters specific to reachable range calculation.
5914
5820
  *
@@ -5918,7 +5824,23 @@ type ReachableRangeBudget = {
5918
5824
  *
5919
5825
  * @group Reachable Range
5920
5826
  */
5921
- type ReachableRangeOwnParams = {
5827
+ export type ReachableRangeOwnParams = {
5828
+ /**
5829
+ * How the routes underlying the range are optimized, and what they avoid.
5830
+ *
5831
+ * @remarks
5832
+ * Narrower than {@link CostModel}: `calculateReachableRange` rejects `alreadyUsedRoads` and has
5833
+ * no avoid-areas parameter, so neither is offered here.
5834
+ */
5835
+ costModel?: ReachableRangeCostModel;
5836
+ /**
5837
+ * Parameters for the vehicle whose reachable range is calculated.
5838
+ *
5839
+ * @remarks
5840
+ * Narrower than {@link VehicleParameters}: `calculateReachableRange` has no vehicle-heading
5841
+ * parameter, so {@link ReachableRangeVehicleParameters} does not offer `state.heading`.
5842
+ */
5843
+ vehicle?: ReachableRangeVehicleParameters;
5922
5844
  /**
5923
5845
  * Location from which the range calculation should start.
5924
5846
  *
@@ -6082,7 +6004,7 @@ type ReachableRangeOwnParams = {
6082
6004
  *
6083
6005
  * @group Reachable Range
6084
6006
  */
6085
- type ReachableRangeParams = CommonServiceParams<ReachableRangeRequestAPI, ReachableRangeResponseAPI> & CommonRoutingParams & ReachableRangeOwnParams;
6007
+ export type ReachableRangeParams = CommonServiceParams<ReachableRangeRequestAPI, ReachableRangeResponseAPI> & Omit<CommonRoutingParams, 'costModel' | 'vehicle'> & ReachableRangeOwnParams;
6086
6008
  //#endregion
6087
6009
  //#region src/reachable-range/reachableRangeTemplate.d.ts
6088
6010
  type ReachableRangeTemplate = ServiceTemplate<ReachableRangeParams, ReachableRangeRequestAPI, ReachableRangeResponseAPI, PolygonFeature<ReachableRangeParams>>;
@@ -6110,51 +6032,68 @@ declare const customize$4: {
6110
6032
  };
6111
6033
  //#endregion
6112
6034
  //#region src/revgeo/types/apiTypes.d.ts
6035
+ /** Orbis Reverse Geocoding v2 top-level result type.
6036
+ * (geocode v2 also has `'intersection'`; reverse geocoding does not.)
6037
+ * @ignore
6038
+ */
6039
+ type ReverseGeocodingResultTypeAPI = 'address' | 'street' | 'area';
6040
+ /** Orbis Reverse Geocoding v2 area sub-type.
6041
+ * @ignore
6042
+ */
6043
+ type ReverseGeocodingAreaTypeAPI = 'country' | 'countrySubdivision' | 'countrySecondarySubdivision' | 'countryTertiarySubdivision' | 'municipality' | 'municipalitySubdivision' | 'municipalitySecondarySubdivision' | 'neighborhood' | 'postalCode';
6044
+ /**
6045
+ * Address object as returned by the Orbis Reverse Geocoding v2 API.
6046
+ * @ignore
6047
+ */
6048
+ type ReverseGeocodingAddressAPI = {
6049
+ houseNumber?: string;
6050
+ street?: string;
6051
+ municipalitySubdivision?: string;
6052
+ municipalitySecondarySubdivision?: string;
6053
+ neighborhood?: string;
6054
+ municipality?: string;
6055
+ countrySecondarySubdivision?: string;
6056
+ countryTertiarySubdivision?: string;
6057
+ countrySubdivision?: string;
6058
+ countrySubdivisionCodeIso?: string;
6059
+ postalCode?: string;
6060
+ postalName?: string;
6061
+ extendedPostalCode?: string;
6062
+ countryCodeIso2?: string;
6063
+ country?: string;
6064
+ /** Road numbers of the street (reverse geocoding only; not returned by geocode v2). */
6065
+ routeNumbers?: string[];
6066
+ };
6067
+ /**
6068
+ * A single result element from the Orbis Reverse Geocoding v2 API.
6069
+ * @ignore
6070
+ */
6071
+ type ReverseGeocodingResultAPI = {
6072
+ /** Unique identifier of the result. It can change between new data releases. */
6073
+ id: string;
6074
+ /** Type of result: `address`, `street`, or `area`. */
6075
+ type: ReverseGeocodingResultTypeAPI;
6076
+ /** Localized display title for the result. */
6077
+ title: string;
6078
+ /** Sub-type of an `area` result; present only when `type` is `area`. */
6079
+ areaType?: ReverseGeocodingAreaTypeAPI;
6080
+ /** The structured address for the result. */
6081
+ address: ReverseGeocodingAddressAPI;
6082
+ /** The position of the result, in GeoJSON format. */
6083
+ position: Point;
6084
+ /** List of access points (e.g. building entrances) of the location, in GeoJSON format. */
6085
+ accessPoints?: Array<{
6086
+ position: Point;
6087
+ }>;
6088
+ };
6113
6089
  /**
6114
6090
  * @ignore
6115
6091
  */
6116
6092
  type ReverseGeocodingResponseAPI = {
6117
- summary: {
6118
- queryTime: number;
6119
- numResults: number;
6120
- };
6121
- addresses: [{
6122
- address: AddressProperties & {
6123
- boundingBox?: {
6124
- northEast: string;
6125
- southWest: string;
6126
- entity: 'position';
6127
- };
6128
- sideOfStreet?: SideOfStreet;
6129
- offsetPosition?: string;
6130
- [key: string]: any;
6131
- };
6132
- linkedAddress?: AddressProperties & {
6133
- boundingBox?: {
6134
- northEast: string;
6135
- southWest: string;
6136
- entity: 'position';
6137
- };
6138
- [key: string]: any;
6139
- };
6140
- dataSources?: PlaceDataSources;
6141
- entityType?: PlaceType;
6142
- mapcodes?: Mapcode[];
6143
- position: string;
6144
- roadUse?: string[];
6145
- }];
6093
+ results: ReverseGeocodingResultAPI[];
6146
6094
  };
6147
6095
  //#endregion
6148
6096
  //#region src/revgeo/types/reverseGeocodingParams.d.ts
6149
- /**
6150
- * Road use classification types for filtering reverse geocoding results.
6151
- *
6152
- * @remarks
6153
- * Use these values to restrict reverse geocoding results to specific road types.
6154
- *
6155
- * @group Reverse Geocoding
6156
- */
6157
- type RoadUse = 'LimitedAccess' | 'Arterial' | 'Terminal' | 'Ramp' | 'Rotary' | 'LocalStreet';
6158
6097
  /**
6159
6098
  * Required parameters for reverse geocoding requests.
6160
6099
  *
@@ -6183,30 +6122,13 @@ type ReverseGeocodingMandatoryParams = {
6183
6122
  * @group Reverse Geocoding
6184
6123
  */
6185
6124
  type ReverseGeocodingOptionalParams = {
6186
- /**
6187
- * Controls newline formatting in the returned address.
6188
- *
6189
- * @remarks
6190
- * When `true`, the formatted address will contain newline characters.
6191
- * When `false` or omitted, newlines are converted to spaces.
6192
- *
6193
- * @defaultValue `false`
6194
- */
6195
- allowFreeformNewline?: boolean;
6196
6125
  /**
6197
6126
  * Filters results to specific geography entity types.
6198
6127
  *
6199
6128
  * @remarks
6200
6129
  * Narrows the search to specified geography types (e.g., country, state, city).
6201
- * The response includes the geography ID, which can be used to retrieve the geometry.
6202
6130
  *
6203
- * **Note:** When set, the following parameters are ignored:
6204
- * - `heading`
6205
- * - `number`
6206
- * - `returnRoadUse`
6207
- * - `returnSpeedLimit`
6208
- * - `roadUse`
6209
- * - `returnMatchType`
6131
+ * **Note:** When set, `heading` is ignored.
6210
6132
  */
6211
6133
  geographyType?: GeographyType[];
6212
6134
  /**
@@ -6214,7 +6136,7 @@ type ReverseGeocodingOptionalParams = {
6214
6136
  *
6215
6137
  * @remarks
6216
6138
  * Specifies the travel direction along a road segment to provide
6217
- * direction-aware address information.
6139
+ * direction-aware address information. Ignored when `geographyType` is set.
6218
6140
  *
6219
6141
  * - `0` = North
6220
6142
  * - `90` = East
@@ -6230,36 +6152,6 @@ type ReverseGeocodingOptionalParams = {
6230
6152
  * @maximum 360
6231
6153
  */
6232
6154
  heading?: number;
6233
- /**
6234
- * Enables mapcode inclusion in the response.
6235
- *
6236
- * @remarks
6237
- * Returns a comma-separated list of mapcodes for the location.
6238
- * Mapcodes are short codes representing specific locations within a few meters.
6239
- * Can filter to show only selected mapcode types.
6240
- *
6241
- * Available types:
6242
- * - `Local` - Territory-specific mapcode
6243
- * - `International` - Globally valid mapcode
6244
- * - `Alternative` - Alternative mapcode representations
6245
- *
6246
- * @see {@link https://www.mapcode.com | Mapcode Project}
6247
- */
6248
- mapcodes?: MapcodeType[];
6249
- /**
6250
- * Street number for enhanced address matching.
6251
- *
6252
- * @remarks
6253
- * When provided, the response may include:
6254
- * - Side of the street (Left/Right)
6255
- * - Offset position for the street number
6256
- *
6257
- * @example
6258
- * ```ts
6259
- * number: "123"
6260
- * ```
6261
- */
6262
- number?: string;
6263
6155
  /**
6264
6156
  * Search radius in meters from the specified position.
6265
6157
  *
@@ -6270,48 +6162,6 @@ type ReverseGeocodingOptionalParams = {
6270
6162
  * @minimum 1
6271
6163
  */
6272
6164
  radiusMeters?: number;
6273
- /**
6274
- * Includes match type information in the response.
6275
- *
6276
- * @remarks
6277
- * When `true`, the response includes details about how well the
6278
- * geocoder matched the provided coordinates to an address.
6279
- *
6280
- * @defaultValue `false`
6281
- */
6282
- returnMatchType?: boolean;
6283
- /**
6284
- * Includes road use classification in the response.
6285
- *
6286
- * @remarks
6287
- * When `true` and reverse geocoding at street level, returns an array
6288
- * of applicable road use types for the location.
6289
- *
6290
- * @defaultValue `false`
6291
- */
6292
- returnRoadUse?: boolean;
6293
- /**
6294
- * Includes speed limit information in the response.
6295
- *
6296
- * @remarks
6297
- * When `true`, returns the speed limit at the given location if available.
6298
- *
6299
- * @defaultValue `false`
6300
- */
6301
- returnSpeedLimit?: boolean;
6302
- /**
6303
- * Restricts results to specific road use types.
6304
- *
6305
- * @remarks
6306
- * Filters reverse geocoding results to only include addresses
6307
- * on roads matching the specified use classifications.
6308
- *
6309
- * @example
6310
- * ```ts
6311
- * roadUses: ['LimitedAccess', 'Arterial'] // Only highways and major roads
6312
- * ```
6313
- */
6314
- roadUses?: RoadUse[];
6315
6165
  /**
6316
6166
  * Specifies the geopolitical view for the results.
6317
6167
  *
@@ -6321,13 +6171,15 @@ type ReverseGeocodingOptionalParams = {
6321
6171
  * Available views:
6322
6172
  * - `Unified` - International view (default)
6323
6173
  * - `AR` - Argentina
6324
- * - `IN` - India
6325
- * - `PK` - Pakistan
6174
+ * - `CN` - China
6326
6175
  * - `IL` - Israel
6176
+ * - `IN` - India
6327
6177
  * - `MA` - Morocco
6178
+ * - `PK` - Pakistan
6179
+ * - `RS` - Serbia
6328
6180
  * - `RU` - Russia
6329
6181
  * - `TR` - Turkey
6330
- * - `CN` - China
6182
+ * - `TW` - Taiwan
6331
6183
  *
6332
6184
  * @defaultValue `"Unified"`
6333
6185
  */
@@ -6342,21 +6194,21 @@ type ReverseGeocodingOptionalParams = {
6342
6194
  *
6343
6195
  * @group Reverse Geocoding
6344
6196
  */
6345
- type ReverseGeocodingParams = CommonServiceParams<URL, ReverseGeocodingResponseAPI> & ReverseGeocodingMandatoryParams & ReverseGeocodingOptionalParams;
6197
+ type ReverseGeocodingParams = CommonServiceParams<GetObject, ReverseGeocodingResponseAPI> & ReverseGeocodingMandatoryParams & ReverseGeocodingOptionalParams;
6346
6198
  //#endregion
6347
6199
  //#region src/revgeo/requestBuilder.d.ts
6348
6200
  /**
6349
6201
  * Default function for building a reverse geocoding request from {@link ReverseGeocodingParams}
6350
6202
  * @param params The reverse geocoding parameters, with global configuration already merged into them.
6351
6203
  */
6352
- declare const buildRevGeoRequest: (params: ReverseGeocodingParams) => URL;
6204
+ declare const buildRevGeoRequest: (params: ReverseGeocodingParams) => GetObject;
6353
6205
  //#endregion
6354
6206
  //#region src/revgeo/reverseGeocodingTemplate.d.ts
6355
6207
  /**
6356
6208
  * Reverse Geocoding service template type.
6357
6209
  * @ignore
6358
6210
  */
6359
- type ReverseGeocodingTemplate = ServiceTemplate<ReverseGeocodingParams, URL, ReverseGeocodingResponseAPI, ReverseGeocodingResponse>;
6211
+ type ReverseGeocodingTemplate = ServiceTemplate<ReverseGeocodingParams, GetObject, ReverseGeocodingResponseAPI, ReverseGeocodingResponse>;
6360
6212
  //#endregion
6361
6213
  //#region src/revgeo/reverseGeocoding.d.ts
6362
6214
  /**
@@ -6366,7 +6218,7 @@ type ReverseGeocodingTemplate = ServiceTemplate<ReverseGeocodingParams, URL, Rev
6366
6218
  *
6367
6219
  * @group Reverse Geocoding
6368
6220
  */
6369
- type ReverseGeocodingResponse = Place<RevGeoAddressProps>;
6221
+ export type ReverseGeocodingResponse = Place<RevGeoAddressProps>;
6370
6222
  /**
6371
6223
  * Convert geographic coordinates into human-readable addresses (reverse geocoding).
6372
6224
  *
@@ -6384,10 +6236,9 @@ type ReverseGeocodingResponse = Place<RevGeoAddressProps>;
6384
6236
  *
6385
6237
  * Features:
6386
6238
  * - Returns complete address hierarchy (street, city, state, country)
6387
- * - Supports cross-street results
6388
- * - Includes side of street information
6389
- * - Provides address ranges for streets
6390
- * - Returns multiple result types (street, POI, geography)
6239
+ * - Returns the result type (address, street, or geography)
6240
+ * - Narrows results to administrative areas with `geographyType`
6241
+ * - Direction-aware street matching with `heading`
6391
6242
  *
6392
6243
  * @param params - Reverse geocoding parameters including coordinates
6393
6244
  * @param customTemplate - Advanced customization for request/response handling
@@ -6403,19 +6254,18 @@ type ReverseGeocodingResponse = Place<RevGeoAddressProps>;
6403
6254
  * });
6404
6255
  * // Returns: Dam, 1012 Amsterdam, Netherlands
6405
6256
  *
6406
- * // Get address with specific street number
6257
+ * // Get the address matched along a given travel direction
6407
6258
  * const specificAddress = await reverseGeocode({
6408
6259
  * key: 'your-api-key',
6409
6260
  * position: [-77.0369, 38.8977], // Washington DC
6410
- * number: '1600'
6261
+ * heading: 90 // Traveling east
6411
6262
  * });
6412
- * // Returns: 1600 Pennsylvania Avenue NW
6413
6263
  *
6414
- * // Get nearest cross street
6415
- * const crossStreet = await reverseGeocode({
6264
+ * // Get the containing municipality instead of the street
6265
+ * const municipality = await reverseGeocode({
6416
6266
  * key: 'your-api-key',
6417
6267
  * position: [-74.0060, 40.7128], // New York
6418
- * returnRoadUse: true
6268
+ * geographyType: ['Municipality']
6419
6269
  * });
6420
6270
  * ```
6421
6271
  *
@@ -6425,7 +6275,7 @@ type ReverseGeocodingResponse = Place<RevGeoAddressProps>;
6425
6275
  *
6426
6276
  * @group Reverse Geocoding
6427
6277
  */
6428
- declare const reverseGeocode: (params: ReverseGeocodingParams, customTemplate?: Partial<ReverseGeocodingTemplate>) => Promise<ReverseGeocodingResponse>;
6278
+ export declare const reverseGeocode: (params: ReverseGeocodingParams, customTemplate?: Partial<ReverseGeocodingTemplate>) => Promise<ReverseGeocodingResponse>;
6429
6279
  //#endregion
6430
6280
  //#region src/revgeo/responseParser.d.ts
6431
6281
  /**
@@ -6476,11 +6326,25 @@ type AvoidAreasAPI = {
6476
6326
  rectangles: AvoidRectangleAPI[];
6477
6327
  };
6478
6328
  /**
6479
- * V3 per-leg request (used in the `legs` array for route reconstruction).
6329
+ * V3 per-stop request options, nested under the leg that arrives at the stop.
6330
+ * @ignore
6331
+ */
6332
+ type RouteStopRequestAPI = {
6333
+ pauseDurationInSeconds?: number;
6334
+ entryPoints?: MultiPoint;
6335
+ preferredEntryPointIndex?: number;
6336
+ };
6337
+ /**
6338
+ * V3 per-leg request (used in the `legs` array for route reconstruction and per-stop options).
6480
6339
  * @ignore
6481
6340
  */
6482
6341
  type LegRequestAPI = {
6483
6342
  path?: LineString;
6343
+ routeType?: RouteType;
6344
+ avoids?: {
6345
+ name: string;
6346
+ }[];
6347
+ routeStop?: RouteStopRequestAPI;
6484
6348
  };
6485
6349
  /**
6486
6350
  * V3 POST body for /routing/routes/calculate and (partially) /routing/calculateLongDistanceEVRoute.
@@ -6491,7 +6355,7 @@ type CalculateRoutePOSTDataAPI = {
6491
6355
  routePlanningLocations: RoutePlanningLocationsAPI;
6492
6356
  path?: LineString;
6493
6357
  legs?: LegRequestAPI[];
6494
- routeType?: string;
6358
+ routeType?: RouteType;
6495
6359
  traffic?: string;
6496
6360
  avoids?: string[];
6497
6361
  travelMode?: string;
@@ -6502,6 +6366,8 @@ type CalculateRoutePOSTDataAPI = {
6502
6366
  vehicleWeightInKilograms?: number;
6503
6367
  vehicleMaxSpeedInKilometersPerHour?: number;
6504
6368
  vehicleHeadingInDegrees?: number;
6369
+ vehicleHasElectronicTollCollectionTransponder?: string;
6370
+ arrivalSidePreference?: 'anySide' | 'curbSide';
6505
6371
  chargingParameters?: ChargingParametersAPI;
6506
6372
  guidance?: 'none' | 'instructions';
6507
6373
  instructionPhonetics?: 'ipa' | 'lhp';
@@ -6581,7 +6447,6 @@ type InputSectionTypes = InputSectionType[];
6581
6447
  * // Request coded guidance with phonetics
6582
6448
  * const guidance: GuidanceParams = {
6583
6449
  * type: 'coded',
6584
- * version: 2,
6585
6450
  * phonetics: 'IPA'
6586
6451
  * };
6587
6452
  * ```
@@ -6595,12 +6460,6 @@ type GuidanceParams = {
6595
6460
  * Currently only 'coded' format is supported.
6596
6461
  */
6597
6462
  type: 'coded';
6598
- /**
6599
- * Guidance instruction version.
6600
- *
6601
- * @default 2
6602
- */
6603
- version?: 2;
6604
6463
  /**
6605
6464
  * Phonetic transcription format for street names.
6606
6465
  *
@@ -6655,6 +6514,29 @@ type ExtendedRouteRepresentation = 'distance' | 'travelTime';
6655
6514
  * @group Routing
6656
6515
  */
6657
6516
  type ComputeTravelTimeFor = 'none' | 'all';
6517
+ /**
6518
+ * Side of the road to arrive on.
6519
+ *
6520
+ * @group Routing
6521
+ */
6522
+ declare const arrivalSides: readonly ["any", "curb"];
6523
+ /**
6524
+ * Which side of the road the route should arrive on at each stop.
6525
+ *
6526
+ * @remarks
6527
+ * - `any`: arrive from either side, whichever is faster
6528
+ * - `curb`: arrive on the curb side for the country's driving direction
6529
+ *
6530
+ * @example
6531
+ * ```typescript
6532
+ * const arrivalSide: ArrivalSide = 'curb';
6533
+ * ```
6534
+ *
6535
+ * @default 'any'
6536
+ *
6537
+ * @group Routing
6538
+ */
6539
+ type ArrivalSide = (typeof arrivalSides)[number];
6658
6540
  /**
6659
6541
  * Maximum number of alternative routes to calculate.
6660
6542
  *
@@ -6748,7 +6630,12 @@ type CalculateRouteParams = CommonServiceParams<CalculateRouteRequestAPI, Calcul
6748
6630
  * Supported formats:
6749
6631
  * - Coordinate arrays: `[longitude, latitude]`
6750
6632
  * - Path arrays for route reconstruction
6751
- * - (not supported) Waypoint objects with radius for circle waypoints
6633
+ * - Waypoint Features, whose properties carry the per-stop options
6634
+ *
6635
+ * The route ends a leg at every location in this list. There is no circle (soft) waypoint
6636
+ * that the route merely passes: the routing API takes a plain point for each one. A path
6637
+ * pins the geometry the route must follow, but its endpoints go out as waypoints as well,
6638
+ * so it shapes the route without shortening the list of legs.
6752
6639
  *
6753
6640
  * @see [POST data parameters](https://docs.tomtom.com/routing-api/documentation/tomtom-maps/calculate-route#post-data-parameters)
6754
6641
  * @see [Response structure](https://docs.tomtom.com/routing-api/documentation/tomtom-maps/calculate-route#structure-of-a-successful-response)
@@ -6769,17 +6656,6 @@ type CalculateRouteParams = CommonServiceParams<CalculateRouteRequestAPI, Calcul
6769
6656
  * ],
6770
6657
  * [4.5, 51.9] // Destination waypoint
6771
6658
  * ]
6772
- *
6773
- * // (not supported) Waypoint objects with radius for circle waypoints
6774
- * locations: [
6775
- * [4.9, 52.3],
6776
- * {
6777
- * type: 'Feature',
6778
- * geometry: { type: 'Point', coordinates: [4.7, 52.1] },
6779
- * properties: { radiusMeters: 5000 }
6780
- * },
6781
- * [4.5, 51.9]
6782
- * ]
6783
6659
  * ```
6784
6660
  */
6785
6661
  locations: RoutePlanningLocation[];
@@ -6803,7 +6679,26 @@ type CalculateRouteParams = CommonServiceParams<CalculateRouteRequestAPI, Calcul
6803
6679
  */
6804
6680
  useEntryPoints?: GetPositionEntryPointOption;
6805
6681
  /**
6806
- * Request additional travel time calculations for different traffic scenarios.
6682
+ * Which side of the road the route should arrive on.
6683
+ *
6684
+ * @remarks
6685
+ * - `any`: arrive from either side, whichever is faster
6686
+ * - `curb`: arrive on the curb side for the country's driving direction, so passengers or
6687
+ * deliveries can leave the vehicle without crossing the road
6688
+ *
6689
+ * Applies to the destination and to every intermediate stop.
6690
+ *
6691
+ * @default 'any'
6692
+ *
6693
+ * @example
6694
+ * ```typescript
6695
+ * // Pull up on the passenger side at each stop
6696
+ * arrivalSide: 'curb'
6697
+ * ```
6698
+ */
6699
+ arrivalSide?: ArrivalSide;
6700
+ /**
6701
+ * Request travel time calculations for different traffic scenarios.
6807
6702
  *
6808
6703
  * When set to 'all', the returned route summary will contain extra fields:
6809
6704
  * - `noTrafficTravelTimeInSeconds` – Free-flow (no traffic)
@@ -6816,10 +6711,10 @@ type CalculateRouteParams = CommonServiceParams<CalculateRouteRequestAPI, Calcul
6816
6711
  *
6817
6712
  * @example
6818
6713
  * ```typescript
6819
- * computeAdditionalTravelTimeFor: 'all'
6714
+ * computeTravelTimeFor: 'all'
6820
6715
  * ```
6821
6716
  */
6822
- computeAdditionalTravelTimeFor?: ComputeTravelTimeFor;
6717
+ computeTravelTimeFor?: ComputeTravelTimeFor;
6823
6718
  /**
6824
6719
  * Request extended progress information at route polyline points.
6825
6720
  *
@@ -6831,11 +6726,19 @@ type CalculateRouteParams = CommonServiceParams<CalculateRouteRequestAPI, Calcul
6831
6726
  *
6832
6727
  * Useful for displaying progress during navigation or animating route visualization.
6833
6728
  *
6729
+ * @remarks
6730
+ * Orbis v3 has no per-representation selector: progress points are all-or-nothing. Any
6731
+ * non-empty array therefore requests both `distance` and `travelTime`. Pass an empty array
6732
+ * to opt out entirely and keep the progress data out of the response payload.
6733
+ *
6834
6734
  * @default ['distance', 'travelTime']
6835
6735
  *
6836
6736
  * @example
6837
6737
  * ```typescript
6838
6738
  * extendedRouteRepresentations: ['distance', 'travelTime']
6739
+ *
6740
+ * // Opt out of progress points altogether
6741
+ * extendedRouteRepresentations: []
6839
6742
  * ```
6840
6743
  */
6841
6744
  extendedRouteRepresentations?: ExtendedRouteRepresentation[];
@@ -6849,7 +6752,6 @@ type CalculateRouteParams = CommonServiceParams<CalculateRouteRequestAPI, Calcul
6849
6752
  * ```typescript
6850
6753
  * guidance: {
6851
6754
  * type: 'coded',
6852
- * version: 2,
6853
6755
  * phonetics: 'IPA'
6854
6756
  * }
6855
6757
  * ```
@@ -7539,7 +7441,7 @@ declare const customize: {
7539
7441
  *
7540
7442
  * @group Advanced
7541
7443
  */
7542
- declare const customizeService: {
7444
+ export declare const customizeService: {
7543
7445
  alongRouteSearch: typeof customize$11;
7544
7446
  reverseGeocode: typeof customize$3;
7545
7447
  geocode: typeof customize$8;
@@ -7598,7 +7500,7 @@ declare const customizeService: {
7598
7500
  *
7599
7501
  * @group EV Charging
7600
7502
  */
7601
- declare const evChargingStationsAvailability: (params: ChargingStationsAvailabilityParams, customTemplate?: Partial<EVChargingStationsAvailabilityTemplate>) => Promise<ChargingStationsAvailability | undefined>;
7503
+ export declare const evChargingStationsAvailability: (params: ChargingStationsAvailabilityParams, customTemplate?: Partial<EVChargingStationsAvailabilityTemplate>) => Promise<ChargingStationsAvailability | undefined>;
7602
7504
  /**
7603
7505
  * Enhance a place with real-time EV charging availability data.
7604
7506
  *
@@ -7627,7 +7529,7 @@ declare const evChargingStationsAvailability: (params: ChargingStationsAvailabil
7627
7529
  *
7628
7530
  * @group EV Charging
7629
7531
  */
7630
- declare const getPlaceWithEVAvailability: <P extends CommonPlaceProps = CommonPlaceProps>(place: Place<P>, commonParams?: Omit<ChargingStationsAvailabilityParams, "id">) => Promise<Place<EVChargingStationWithAvailabilityPlaceProps> | undefined>;
7532
+ export declare const getPlaceWithEVAvailability: <P extends CommonPlaceProps = CommonPlaceProps>(place: Place<P>, commonParams?: Omit<ChargingStationsAvailabilityParams, "id">) => Promise<Place<EVChargingStationWithAvailabilityPlaceProps> | undefined>;
7631
7533
  /**
7632
7534
  * Enhance multiple places with real-time EV charging availability data.
7633
7535
  *
@@ -7666,10 +7568,10 @@ declare const getPlaceWithEVAvailability: <P extends CommonPlaceProps = CommonPl
7666
7568
  *
7667
7569
  * @group EV Charging
7668
7570
  */
7669
- declare function getPlacesWithEVAvailability<P extends CommonPlaceProps = CommonPlaceProps>(places: Places<P>, options?: Omit<ChargingStationsAvailabilityParams, 'id'> & {
7571
+ export declare function getPlacesWithEVAvailability<P extends CommonPlaceProps = CommonPlaceProps>(places: Places<P>, options?: Omit<ChargingStationsAvailabilityParams, 'id'> & {
7670
7572
  excludeIfAvailabilityUnknown: true;
7671
7573
  }): Promise<Places<EVChargingStationWithAvailabilityPlaceProps>>;
7672
- declare function getPlacesWithEVAvailability<P extends CommonPlaceProps = CommonPlaceProps>(places: Places<P>, options?: Omit<ChargingStationsAvailabilityParams, 'id'> & {
7574
+ export declare function getPlacesWithEVAvailability<P extends CommonPlaceProps = CommonPlaceProps>(places: Places<P>, options?: Omit<ChargingStationsAvailabilityParams, 'id'> & {
7673
7575
  /**
7674
7576
  * If true, places with unknown availability will be filtered out. Otherwise, they will be included.
7675
7577
  * @default false
@@ -7684,7 +7586,7 @@ declare function getPlacesWithEVAvailability<P extends CommonPlaceProps = Common
7684
7586
  *
7685
7587
  * @group EV Charging
7686
7588
  */
7687
- declare const hasChargingAvailability: (chargingPark: ChargingPark | ChargingParkWithAvailability | undefined) => chargingPark is ChargingParkWithAvailability;
7589
+ export declare const hasChargingAvailability: (chargingPark: ChargingPark | ChargingParkWithAvailability | undefined) => chargingPark is ChargingParkWithAvailability;
7688
7590
  //#endregion
7689
7591
  //#region src/exploration-search/types/areaTags.d.ts
7690
7592
  /**
@@ -7712,7 +7614,7 @@ declare const hasChargingAvailability: (chargingPark: ChargingPark | ChargingPar
7712
7614
  * @ignore
7713
7615
  * @experimental
7714
7616
  */
7715
- declare const POPULATED_AREA_TAGS: readonly ["village", "small_town", "mid_town", "suburban", "rural", "semi_rural", "residential", "inland", "coastal", "atlantic_coast", "alpine", "mountain", "foothills", "forest", "plains", "farmland", "agricultural", "no_tourism", "low_tourism", "moderate_tourism", "tourism_economy", "eco_tourism", "heritage_tourism", "watersports", "hiking", "cycling", "industrial", "logistics_hub", "retail_hub", "shopping_district", "hospital_town", "dining_scene", "car_oriented", "walkable", "transit_connected", "transit_sparse", "highway_corridor", "commuter_town", "low_traffic", "moderate_traffic", "sparse_commercial", "western_europe", "central_europe", "southern_europe", "north_american", "iberian"];
7617
+ export declare const POPULATED_AREA_TAGS: readonly ["village", "small_town", "mid_town", "suburban", "rural", "semi_rural", "residential", "inland", "coastal", "atlantic_coast", "alpine", "mountain", "foothills", "forest", "plains", "farmland", "agricultural", "no_tourism", "low_tourism", "moderate_tourism", "tourism_economy", "eco_tourism", "heritage_tourism", "watersports", "hiking", "cycling", "industrial", "logistics_hub", "retail_hub", "shopping_district", "hospital_town", "dining_scene", "car_oriented", "walkable", "transit_connected", "transit_sparse", "highway_corridor", "commuter_town", "low_traffic", "moderate_traffic", "sparse_commercial", "western_europe", "central_europe", "southern_europe", "north_american", "iberian"];
7716
7618
  /**
7717
7619
  * Vocabulary tokens that exist canonically in the area-tag taxonomy but
7718
7620
  * aren't emitted by the current pipeline run (per the schema doc's
@@ -7723,7 +7625,7 @@ declare const POPULATED_AREA_TAGS: readonly ["village", "small_town", "mid_town"
7723
7625
  * @ignore
7724
7626
  * @experimental
7725
7627
  */
7726
- declare const RESERVED_AREA_TAGS: readonly ["lakefront", "riverine", "wetland", "marina", "harbor", "beach", "mediterranean", "ski_destination", "beach_destination", "wine_tourism", "vineyard", "university_town", "medieval_old_town", "unesco_site", "midwest_us", "rust_belt"];
7628
+ export declare const RESERVED_AREA_TAGS: readonly ["lakefront", "riverine", "wetland", "marina", "harbor", "beach", "mediterranean", "ski_destination", "beach_destination", "wine_tourism", "vineyard", "university_town", "medieval_old_town", "unesco_site", "midwest_us", "rust_belt"];
7727
7629
  /**
7728
7630
  * Union of every populated area-tag token currently emitted by the
7729
7631
  * places-api pipeline.
@@ -8123,7 +8025,7 @@ type ExplorationSearchTemplate = ServiceTemplate<ExplorationSearchParams, Explor
8123
8025
  * @ignore
8124
8026
  * @experimental
8125
8027
  */
8126
- declare const explorationSearch: (params: ExplorationSearchParams, customTemplate?: Partial<ExplorationSearchTemplate>) => Promise<ExplorationSearchResponse>;
8028
+ export declare const explorationSearch: (params: ExplorationSearchParams, customTemplate?: Partial<ExplorationSearchTemplate>) => Promise<ExplorationSearchResponse>;
8127
8029
  //#endregion
8128
8030
  //#region src/geocode/geocoding.d.ts
8129
8031
  /**
@@ -8183,7 +8085,7 @@ declare const explorationSearch: (params: ExplorationSearchParams, customTemplat
8183
8085
  *
8184
8086
  * @group Geocoding
8185
8087
  */
8186
- declare const geocode: (params: GeocodingParams, customTemplate?: Partial<GeocodingTemplate>) => Promise<GeocodingResponse>;
8088
+ export declare const geocode: (params: GeocodingParams, customTemplate?: Partial<GeocodingTemplate>) => Promise<GeocodingResponse>;
8187
8089
  /**
8188
8090
  * Geocode a query and return the single best-matching place.
8189
8091
  *
@@ -8205,7 +8107,7 @@ declare const geocode: (params: GeocodingParams, customTemplate?: Partial<Geocod
8205
8107
  *
8206
8108
  * @group Geocoding
8207
8109
  */
8208
- declare const geocodeOne: (query: string) => Promise<Place<GeocodingProps>>;
8110
+ export declare const geocodeOne: (query: string) => Promise<Place<GeocodingProps>>;
8209
8111
  //#endregion
8210
8112
  //#region src/geometry-data/geometryData.d.ts
8211
8113
  /**
@@ -8264,8 +8166,8 @@ declare const geocodeOne: (query: string) => Promise<Place<GeocodingProps>>;
8264
8166
  *
8265
8167
  * @group Geometry
8266
8168
  */
8267
- declare function geometryData(params: GeometryDataParams, customTemplate?: Partial<GeometryDataTemplate>): Promise<PolygonFeatures>;
8268
- declare function geometryData(params: GeometryPlaceParams, customTemplate?: Partial<GeometryDataTemplate>): Promise<PolygonFeatures<CommonPlaceProps>>;
8169
+ export declare function geometryData(params: GeometryDataParams, customTemplate?: Partial<GeometryDataTemplate>): Promise<PolygonFeatures>;
8170
+ export declare function geometryData(params: GeometryPlaceParams, customTemplate?: Partial<GeometryDataTemplate>): Promise<PolygonFeatures<CommonPlaceProps>>;
8269
8171
  //#endregion
8270
8172
  //#region src/place-by-id/placeById.d.ts
8271
8173
  /**
@@ -8332,7 +8234,7 @@ declare function geometryData(params: GeometryPlaceParams, customTemplate?: Part
8332
8234
  *
8333
8235
  * @group Place
8334
8236
  */
8335
- declare const placeById: (params: PlaceByIdParams, customTemplate?: Partial<PlaceByIdTemplate>) => Promise<PlaceByIdResponse>;
8237
+ export declare const placeById: (params: PlaceByIdParams, customTemplate?: Partial<PlaceByIdTemplate>) => Promise<PlaceByIdResponse>;
8336
8238
  //#endregion
8337
8239
  //#region src/poi-categories/types/poiCategoriesResponseAPI.d.ts
8338
8240
  /**
@@ -8459,7 +8361,7 @@ type POICategoriesResponse = {
8459
8361
  *
8460
8362
  * @group POI Categories
8461
8363
  */
8462
- declare const getPOICategories: (params?: POICategoriesParams) => Promise<POICategoriesResponse>;
8364
+ export declare const getPOICategories: (params?: POICategoriesParams) => Promise<POICategoriesResponse>;
8463
8365
  /**
8464
8366
  * Convenience wrapper around {@link getPOICategories} that returns a flat array of `POICategory` codes.
8465
8367
  *
@@ -8484,7 +8386,7 @@ declare const getPOICategories: (params?: POICategoriesParams) => Promise<POICat
8484
8386
  *
8485
8387
  * @group POI Categories
8486
8388
  */
8487
- declare const getPOICategoryCodes: (params?: POICategoriesParams) => Promise<POICategory[]>;
8389
+ export declare const getPOICategoryCodes: (params?: POICategoriesParams) => Promise<POICategory[]>;
8488
8390
  //#endregion
8489
8391
  //#region src/reachable-range/calculateReachableRange.d.ts
8490
8392
  /**
@@ -8555,7 +8457,7 @@ declare const getPOICategoryCodes: (params?: POICategoriesParams) => Promise<POI
8555
8457
  *
8556
8458
  * @group Routing
8557
8459
  */
8558
- declare const calculateReachableRange: (params: ReachableRangeParams, customTemplate?: Partial<ReachableRangeTemplate>) => Promise<PolygonFeature<ReachableRangeParams>>;
8460
+ export declare const calculateReachableRange: (params: ReachableRangeParams, customTemplate?: Partial<ReachableRangeTemplate>) => Promise<PolygonFeature<ReachableRangeParams>>;
8559
8461
  /**
8560
8462
  * Calculate multiple reachable range areas from different origins or with different constraints.
8561
8463
  *
@@ -8617,7 +8519,7 @@ declare const calculateReachableRange: (params: ReachableRangeParams, customTemp
8617
8519
  *
8618
8520
  * @group Routing
8619
8521
  */
8620
- declare const calculateReachableRanges: (paramsArray: ReachableRangeParams[], options?: {
8522
+ export declare const calculateReachableRanges: (paramsArray: ReachableRangeParams[], options?: {
8621
8523
  signal?: AbortSignal;
8622
8524
  }, customTemplate?: Partial<ReachableRangeTemplate>) => Promise<PolygonFeatures<ReachableRangeParams>>;
8623
8525
  //#endregion
@@ -8633,7 +8535,102 @@ declare const calculateReachableRanges: (paramsArray: ReachableRangeParams[], op
8633
8535
  *
8634
8536
  * @group Routing
8635
8537
  */
8636
- declare const calculateRoute: (params: CalculateRouteParams, customTemplate?: Partial<CalculateRouteTemplate>) => Promise<Routes>;
8538
+ export declare const calculateRoute: (params: CalculateRouteParams, customTemplate?: Partial<CalculateRouteTemplate>) => Promise<Routes>;
8539
+ //#endregion
8540
+ //#region src/routing/types/routeStopOptions.d.ts
8541
+ /**
8542
+ * Cost model overrides that apply to a single leg of a route.
8543
+ *
8544
+ * @remarks
8545
+ * A subset of {@link CostModel}: only the route type and the avoid list can vary per leg.
8546
+ * Traffic, avoid areas and departure time are route-wide.
8547
+ *
8548
+ * @group Routing
8549
+ */
8550
+ type LegCostModel = Pick<CostModel, 'routeType' | 'avoid'>;
8551
+ /**
8552
+ * Per-stop routing options, carried on the `properties` of a route stop.
8553
+ *
8554
+ * Attach these to any waypoint in {@link CalculateRouteParams.locations} to control how the
8555
+ * route reaches that stop, and how long it waits there.
8556
+ *
8557
+ * @remarks
8558
+ * **Leg attribution.** Options describe the leg *arriving at* this stop. Reading them that way
8559
+ * is what keeps them attached to the right stop when another stop is inserted earlier in the
8560
+ * list. `legCostModel` on the origin has no leg to describe and is ignored.
8561
+ *
8562
+ * **The wait at a stop** is {@link WaypointProps.pauseDurationSeconds}, which every waypoint
8563
+ * carries — the map reads it too, to label the stop's pin.
8564
+ *
8565
+ * **Entry points.** Explicit `candidateEntryPoints` hand the routing engine a set of approach
8566
+ * points and let it choose; this takes precedence over the route-wide
8567
+ * {@link CalculateRouteParams.useEntryPoints}, which only resolves a single position
8568
+ * client-side.
8569
+ *
8570
+ * @example
8571
+ * ```typescript
8572
+ * import type { Waypoint } from '@tomtom-org/maps-sdk/core';
8573
+ * import type { RouteStopOptions } from '@tomtom-org/maps-sdk/services';
8574
+ *
8575
+ * const stop: Waypoint<RouteStopOptions> = {
8576
+ * type: 'Feature',
8577
+ * geometry: { type: 'Point', coordinates: [4.7, 52.1] },
8578
+ * properties: {
8579
+ * // wait 20 minutes at this stop
8580
+ * pauseDurationSeconds: 1200,
8581
+ * // reach this stop without using motorways
8582
+ * legCostModel: { routeType: 'short', avoid: ['motorways'] },
8583
+ * },
8584
+ * };
8585
+ *
8586
+ * const route = await calculateRoute({ locations: [origin, stop, destination] });
8587
+ * ```
8588
+ *
8589
+ * @group Routing
8590
+ */
8591
+ type RouteStopOptions = {
8592
+ /**
8593
+ * Candidate approach points for this stop, for the routing engine to choose between.
8594
+ *
8595
+ * @remarks
8596
+ * Use this when a place has several usable entrances and you want the engine to pick the one
8597
+ * that suits the route, rather than resolving a single entry point yourself. Takes precedence
8598
+ * over {@link CalculateRouteParams.useEntryPoints} for this stop.
8599
+ *
8600
+ * Deliberately not called `entryPoints`: a {@link Place} already carries `entryPoints` of its
8601
+ * own in `properties`, describing entrances found by search, and those are not sent to the
8602
+ * routing API. These are positions you choose to offer the router.
8603
+ *
8604
+ * @example
8605
+ * ```typescript
8606
+ * // Let the router choose between the main and the delivery entrance
8607
+ * candidateEntryPoints: [[4.701, 52.101], [4.703, 52.099]]
8608
+ * ```
8609
+ */
8610
+ candidateEntryPoints?: HasLngLat[];
8611
+ /**
8612
+ * Index into {@link RouteStopOptions.candidateEntryPoints} of the preferred approach point.
8613
+ *
8614
+ * @remarks
8615
+ * The routing engine uses this entry point unless another one produces a materially better
8616
+ * route. Ignored when `candidateEntryPoints` is not set.
8617
+ */
8618
+ preferredEntryPointIndex?: number;
8619
+ /**
8620
+ * Cost model overrides for the leg *arriving at* this stop.
8621
+ *
8622
+ * @remarks
8623
+ * Falls back to the route-wide {@link CostModel} for anything not set here. Ignored on the
8624
+ * origin, which has no arriving leg.
8625
+ *
8626
+ * @example
8627
+ * ```typescript
8628
+ * // Take the scenic way to this one stop
8629
+ * legCostModel: { routeType: 'thrilling', avoid: ['motorways'] }
8630
+ * ```
8631
+ */
8632
+ legCostModel?: LegCostModel;
8633
+ };
8637
8634
  //#endregion
8638
8635
  //#region src/fuzzy-search/types/fuzzySearchResponse.d.ts
8639
8636
  /**
@@ -9046,7 +9043,7 @@ type SearchFeatureCollectionProps = SearchSummary & {
9046
9043
  *
9047
9044
  * @group Search
9048
9045
  */
9049
- type SearchResponse = Places<SearchPlaceProps, SearchFeatureCollectionProps>;
9046
+ export type SearchResponse = Places<SearchPlaceProps, SearchFeatureCollectionProps>;
9050
9047
  /**
9051
9048
  * Universal search function for finding places by text query or within geometries.
9052
9049
  *
@@ -9099,7 +9096,7 @@ type SearchResponse = Places<SearchPlaceProps, SearchFeatureCollectionProps>;
9099
9096
  *
9100
9097
  * @group Search
9101
9098
  */
9102
- declare const search: (params: GeometrySearchParams | FuzzySearchParams | AlongRouteSearchParams, customTemplate?: Partial<GeometrySearchTemplate | FuzzySearchTemplate | AlongRouteSearchTemplate>) => Promise<SearchResponse>;
9099
+ export declare const search: (params: GeometrySearchParams | FuzzySearchParams | AlongRouteSearchParams, customTemplate?: Partial<GeometrySearchTemplate | FuzzySearchTemplate | AlongRouteSearchTemplate>) => Promise<SearchResponse>;
9103
9100
  /**
9104
9101
  * Search for a single place by text query.
9105
9102
  *
@@ -9122,7 +9119,7 @@ declare const search: (params: GeometrySearchParams | FuzzySearchParams | AlongR
9122
9119
  *
9123
9120
  * @group Search
9124
9121
  */
9125
- declare const searchOne: (query: string) => Promise<Place<SearchPlaceProps>>;
9122
+ export declare const searchOne: (query: string) => Promise<Place<SearchPlaceProps>>;
9126
9123
  //#endregion
9127
9124
  //#region src/traffic-area-analytics/trafficAreaAnalytics.d.ts
9128
9125
  /**
@@ -9201,7 +9198,7 @@ declare const searchOne: (query: string) => Promise<Place<SearchPlaceProps>>;
9201
9198
  *
9202
9199
  * @group Traffic
9203
9200
  */
9204
- declare const trafficAreaAnalytics: (params: TrafficAreaAnalyticsParams, customTemplate?: Partial<TrafficAreaAnalyticsTemplate>) => Promise<TrafficAreaAnalytics>;
9201
+ export declare const trafficAreaAnalytics: (params: TrafficAreaAnalyticsParams, customTemplate?: Partial<TrafficAreaAnalyticsTemplate>) => Promise<TrafficAreaAnalytics>;
9205
9202
  //#endregion
9206
9203
  //#region src/traffic-incident-details/trafficIncidentDetails.d.ts
9207
9204
  /**
@@ -9276,6 +9273,6 @@ declare const trafficAreaAnalytics: (params: TrafficAreaAnalyticsParams, customT
9276
9273
  *
9277
9274
  * @group Traffic
9278
9275
  */
9279
- declare const trafficIncidentDetails: (params: TrafficIncidentDetailsParams, customTemplate?: Partial<TrafficIncidentDetailsTemplate>) => Promise<TrafficIncidentDetails>;
9276
+ export declare const trafficIncidentDetails: (params: TrafficIncidentDetailsParams, customTemplate?: Partial<TrafficIncidentDetailsTemplate>) => Promise<TrafficIncidentDetails>;
9280
9277
  //#endregion
9281
- export { APIErrorCode, type AdditionalDataAPI, type AlongRouteSearchParams, type AlongRouteSearchPayloadAPI, type AlongRouteSearchRequestAPI, type AlongRouteSearchResponse, type AlongRouteSearchResponseAPI, type AlongRouteSearchResultAPI, type AlongRouteSortBy, type AreaAnalyticsDateInput, type AreaTag, type AutocompleteGenericSearchSegment, type AutocompleteSearchBrandSegment, type AutocompleteSearchCategorySegment, type AutocompleteSearchCategorySegmentAPI, type AutocompleteSearchContext, type AutocompleteSearchContextAPI, type AutocompleteSearchMatch, type AutocompleteSearchMatches, type AutocompleteSearchParams, type AutocompleteSearchPlaintextSegment, type AutocompleteSearchResponse, type AutocompleteSearchResponseAPI, type AutocompleteSearchResult, type AutocompleteSearchResultAPI, type AutocompleteSearchResultGeoBias, type AutocompleteSearchResultGeoBiasAPI, type AutocompleteSearchSegment, type AutocompleteSearchSegmentAPI, type AutocompleteSearchSegmentType, type BookmarkIntent, type BookmarkIntentDetails, BudgetType, type CalculateRouteParams, type CanonicalAreaTag, ChargingPreferences, ChargingPreferencesKWH, ChargingPreferencesPCT, type ChargingStationsAvailabilityParams, type Circle, type CircleAPI, CombustionVehicleParams, CombustionVehicleState, CommonGeocodeAndFuzzySearchParams, CommonPlacesParams, CommonRoutingParams, CommonSearchParams, CommonServiceParams, type CommonServiceParamsWithZoom, type ComputeTravelTimeFor, type CoordinateIntent, type CoordinateIntentAPI, type CoordinateIntentDetails, type CoordinateIntentDetailsAPI, CostModel, DepartArriveParams, ElectricVehicleParams, ElectricVehiclePreferences, ElectricVehicleState, ElectricVehicleStateKWH, ElectricVehicleStatePCT, type ExplorationBrandAPI, type ExplorationChargingParkAPI, type ExplorationClassificationAPI, type ExplorationOpeningHoursAPI, type ExplorationOpeningIntervalAPI, type ExplorationPOIAPI, type ExplorationPlaceProps, type ExplorationRecordType, type ExplorationSearchParams, type ExplorationSearchPayloadAPI, type ExplorationSearchRequestAPI, type ExplorationSearchResponse, type ExplorationSearchResponseAPI, type ExplorationSearchResultAPI, type ExplorationViewportAPI, type ExtendedRouteRepresentation, FetchInput, type FunctionalRoadClass, type FuzzySearchParams, type FuzzySearchResponse, type FuzzySearchResponseAPI, type FuzzySearchResultAPI, GenericVehicleParams, GenericVehicleState, type GeocodingParams, type GeocodingProps, type GeocodingResponse, type GeometriesInput, type GeometryAPI, type GeometryDataParams, type GeometryDataResponseAPI, type GeometryParams, type GeometryPlaceParams, type GeometrySearchFeatureCollectionProps, type GeometrySearchParams, type GeometrySearchPayloadAPI, type GeometrySearchRequestAPI, type GeometrySearchResponse, type GeometrySearchResponseAPI, type GeometrySearchResultAPI, GetObject, type GuidanceParams, type InputSectionType, type InputSectionTypes, LNH, type MaxNumberOfAlternatives, type NearAPI, type NearbyIntent, type NearbyIntentAPI, type NearbyIntentDetails, type NearbyIntentDetailsAPI, type POICategoriesParams, type POICategoriesResponse, type POICategoryResult, POPULATED_AREA_TAGS, ParseResponseError, ParsedFetchResponse, type PlaceByIdMandatoryParams, type PlaceByIdOptionalParams, type PlaceByIdParams, type PlaceByIdResponse, type PlaceByIdResponseAPI, type PlaceByIdResultAPI, type PoiCategoriesResponseAPI, type PoiCategoryAPI, type PolygonAPI, type PopulatedAreaTag, PostObject, type QueryIntent, type QueryIntentAPI, RESERVED_AREA_TAGS, ReachableRangeBudget, ReachableRangeOwnParams, ReachableRangeParams, RelatedPoisRequest, type ReverseGeocodingMandatoryParams, type ReverseGeocodingOptionalParams, type ReverseGeocodingParams, ReverseGeocodingResponse, type RoadUse, type RoutePointAPI, RouteType, SDKError, SDKServiceError, type SearchGeometryInput, SearchIndexType, SearchResponse, SearchSummary, ServiceName, ServiceTemplate, TimeZoneRequest, type TrafficAreaAnalyticsDateRange, type TrafficAreaAnalyticsDays, type TrafficAreaAnalyticsParams, type TrafficIncidentDetailsByBBoxParams, type TrafficIncidentDetailsByIdsParams, type TrafficIncidentDetailsParams, TrafficInput, VehicleParameters, VehiclePreferences, VehicleState, type W3WIntent, type W3WIntentDetails, alongRouteSearch, autocompleteSearch, budgetTypes, buildResponseError, buildValidationError, calculateReachableRange, calculateReachableRanges, calculateRoute, customizeService, evChargingStationsAvailability, explorationSearch, type functionalRoadClasses, geocode, geocodeOne, geometryData, getPOICategories, getPOICategoryCodes, getPlaceWithEVAvailability, getPlacesWithEVAvailability, hasChargingAvailability, type metricKeyToApiDataType, parseDefaultResponseError, placeById, reverseGeocode, routeTypes, search, searchOne, trafficAreaAnalytics, trafficIncidentDetails };
9278
+ export type { AdditionalDataAPI, AlongRouteSearchParams, AlongRouteSearchPayloadAPI, AlongRouteSearchRequestAPI, AlongRouteSearchResponse, AlongRouteSearchResponseAPI, AlongRouteSearchResultAPI, AlongRouteSortBy, AreaAnalyticsDateInput, AreaTag, ArrivalSide, AutocompleteGenericSearchSegment, AutocompleteSearchBrandSegment, AutocompleteSearchCategorySegment, AutocompleteSearchCategorySegmentAPI, AutocompleteSearchContext, AutocompleteSearchContextAPI, AutocompleteSearchMatch, AutocompleteSearchMatches, AutocompleteSearchParams, AutocompleteSearchPlaintextSegment, AutocompleteSearchResponse, AutocompleteSearchResponseAPI, AutocompleteSearchResult, AutocompleteSearchResultAPI, AutocompleteSearchResultGeoBias, AutocompleteSearchResultGeoBiasAPI, AutocompleteSearchSegment, AutocompleteSearchSegmentAPI, AutocompleteSearchSegmentType, BookmarkIntent, BookmarkIntentDetails, CalculateRouteParams, CanonicalAreaTag, ChargingStationsAvailabilityParams, Circle, CircleAPI, CommonServiceParamsWithZoom, ComputeTravelTimeFor, CoordinateIntent, CoordinateIntentAPI, CoordinateIntentDetails, CoordinateIntentDetailsAPI, ExplorationBrandAPI, ExplorationChargingParkAPI, ExplorationClassificationAPI, ExplorationOpeningHoursAPI, ExplorationOpeningIntervalAPI, ExplorationPOIAPI, ExplorationPlaceProps, ExplorationRecordType, ExplorationSearchParams, ExplorationSearchPayloadAPI, ExplorationSearchRequestAPI, ExplorationSearchResponse, ExplorationSearchResponseAPI, ExplorationSearchResultAPI, ExplorationViewportAPI, ExtendedRouteRepresentation, FunctionalRoadClass, FuzzySearchParams, FuzzySearchResponse, FuzzySearchResponseAPI, FuzzySearchResultAPI, GeocodingParams, GeocodingProps, GeocodingResponse, GeometriesInput, GeometryAPI, GeometryDataParams, GeometryDataResponseAPI, GeometryParams, GeometryPlaceParams, GeometrySearchFeatureCollectionProps, GeometrySearchParams, GeometrySearchPayloadAPI, GeometrySearchRequestAPI, GeometrySearchResponse, GeometrySearchResponseAPI, GeometrySearchResultAPI, GuidanceParams, InputSectionType, InputSectionTypes, LegCostModel, MaxNumberOfAlternatives, NearAPI, NearbyIntent, NearbyIntentAPI, NearbyIntentDetails, NearbyIntentDetailsAPI, POICategoriesParams, POICategoriesResponse, POICategoryResult, PlaceByIdMandatoryParams, PlaceByIdOptionalParams, PlaceByIdParams, PlaceByIdResponse, PlaceByIdResponseAPI, PlaceByIdResultAPI, PoiCategoriesResponseAPI, PoiCategoryAPI, PolygonAPI, PopulatedAreaTag, QueryIntent, QueryIntentAPI, ReverseGeocodingMandatoryParams, ReverseGeocodingOptionalParams, ReverseGeocodingParams, RoutePointAPI, RouteStopOptions, SearchGeometryInput, TrafficAreaAnalyticsDateRange, TrafficAreaAnalyticsDays, TrafficAreaAnalyticsParams, TrafficIncidentDetailsByBBoxParams, TrafficIncidentDetailsByIdsParams, TrafficIncidentDetailsParams, W3WIntent, W3WIntentDetails, arrivalSides, functionalRoadClasses, metricKeyToApiDataType };