@motis-project/motis-client 2.1.2 → 2.7.2

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.
@@ -21,13 +21,13 @@ type TimeRange = {
21
21
  * If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
22
22
  *
23
23
  */
24
- start?: string;
24
+ start: string;
25
25
  /**
26
26
  * If missing, the interval ends at plus infinity.
27
27
  * If a TimeRange is provided, either start or end must be provided - both fields cannot be empty.
28
28
  *
29
29
  */
30
- end?: string;
30
+ end: string;
31
31
  };
32
32
  /**
33
33
  * An alert, indicating some sort of incident in the public transit network.
@@ -160,11 +160,56 @@ type Token = [
160
160
  * location type
161
161
  */
162
162
  type LocationType = 'ADDRESS' | 'PLACE' | 'STOP';
163
+ /**
164
+ * # Street modes
165
+ *
166
+ * - `WALK`
167
+ * - `BIKE`
168
+ * - `RENTAL` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs.
169
+ * - `CAR`
170
+ * - `CAR_PARKING` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs.
171
+ * - `CAR_DROPOFF` Experimental. Expect unannounced breaking changes (without version bumps) for all perameters and returned structs.
172
+ * - `ODM` on-demand taxis from the Prima+ÖV Project
173
+ * - `RIDE_SHARING` ride sharing from the Prima+ÖV Project
174
+ * - `FLEX` flexible transports
175
+ *
176
+ * # Transit modes
177
+ *
178
+ * - `TRANSIT`: translates to `RAIL,TRAM,BUS,FERRY,AIRPLANE,COACH,CABLE_CAR,FUNICULAR,AREAL_LIFT,OTHER`
179
+ * - `TRAM`: trams
180
+ * - `SUBWAY`: subway trains (Paris Metro, London Underground, but also NYC Subway, Hamburger Hochbahn, and other non-underground services)
181
+ * - `FERRY`: ferries
182
+ * - `AIRPLANE`: airline flights
183
+ * - `BUS`: short distance buses (does not include `COACH`)
184
+ * - `COACH`: long distance buses (does not include `BUS`)
185
+ * - `RAIL`: translates to `HIGHSPEED_RAIL,LONG_DISTANCE,NIGHT_RAIL,REGIONAL_RAIL,REGIONAL_FAST_RAIL,SUBURBAN,SUBWAY`
186
+ * - `SUBURBAN`: suburban trains (e.g. S-Bahn, RER, Elizabeth Line, ...)
187
+ * - `HIGHSPEED_RAIL`: long distance high speed trains (e.g. TGV)
188
+ * - `LONG_DISTANCE`: long distance inter city trains
189
+ * - `NIGHT_RAIL`: long distance night trains
190
+ * - `REGIONAL_FAST_RAIL`: regional express routes that skip low traffic stops to be faster
191
+ * - `REGIONAL_RAIL`: regional train
192
+ * - `CABLE_CAR`: Cable tram. Used for street-level rail cars where the cable runs beneath the vehicle (e.g., cable car in San Francisco).
193
+ * - `FUNICULAR`: Funicular. Any rail system designed for steep inclines.
194
+ * - `AERIAL_LIFT`: Aerial lift, suspended cable car (e.g., gondola lift, aerial tramway). Cable transport where cabins, cars, gondolas or open chairs are suspended by means of one or more cables.
195
+ * - `AREAL_LIFT`: deprecated
196
+ * - `METRO`: deprecated
197
+ *
198
+ */
199
+ type Mode = 'WALK' | 'BIKE' | 'RENTAL' | 'CAR' | 'CAR_PARKING' | 'CAR_DROPOFF' | 'ODM' | 'RIDE_SHARING' | 'FLEX' | 'TRANSIT' | 'TRAM' | 'SUBWAY' | 'FERRY' | 'AIRPLANE' | 'SUBURBAN' | 'BUS' | 'COACH' | 'RAIL' | 'HIGHSPEED_RAIL' | 'LONG_DISTANCE' | 'NIGHT_RAIL' | 'REGIONAL_FAST_RAIL' | 'REGIONAL_RAIL' | 'CABLE_CAR' | 'FUNICULAR' | 'AERIAL_LIFT' | 'OTHER' | 'AREAL_LIFT' | 'METRO';
163
200
  /**
164
201
  * GeoCoding match
165
202
  */
166
203
  type Match = {
167
204
  type: LocationType;
205
+ /**
206
+ * Experimental. Type categories might be adjusted.
207
+ *
208
+ * For OSM stop locations: the amenity type based on
209
+ * https://wiki.openstreetmap.org/wiki/OpenStreetMap_Carto/Symbols
210
+ *
211
+ */
212
+ category?: string;
168
213
  /**
169
214
  * list of non-overlapping tokens that were matched
170
215
  */
@@ -199,10 +244,18 @@ type Match = {
199
244
  * house number
200
245
  */
201
246
  houseNumber?: string;
247
+ /**
248
+ * ISO3166-1 country code from OpenStreetMap
249
+ */
250
+ country?: string;
202
251
  /**
203
252
  * zip code
204
253
  */
205
254
  zip?: string;
255
+ /**
256
+ * timezone name (e.g. "Europe/Berlin")
257
+ */
258
+ tz?: string;
206
259
  /**
207
260
  * list of areas
208
261
  */
@@ -211,6 +264,14 @@ type Match = {
211
264
  * score according to the internal scoring system (the scoring algorithm might change in the future)
212
265
  */
213
266
  score: number;
267
+ /**
268
+ * available transport modes for stops
269
+ */
270
+ modes?: Array<Mode>;
271
+ /**
272
+ * importance of a stop, normalized from [0, 1]
273
+ */
274
+ importance?: number;
214
275
  };
215
276
  /**
216
277
  * Different elevation cost profiles for street routing.
@@ -227,39 +288,13 @@ type ElevationCosts = 'NONE' | 'LOW' | 'HIGH';
227
288
  */
228
289
  type PedestrianProfile = 'FOOT' | 'WHEELCHAIR';
229
290
  /**
230
- * # Street modes
231
- *
232
- * - `WALK`
233
- * - `BIKE`
234
- * - `RENTAL` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs.
235
- * - `CAR`
236
- * - `CAR_PARKING` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs.
237
- * - `CAR_DROPOFF` Experimental. Expect unannounced breaking changes (without version bumps) for all perameters and returned structs.
238
- * - `ODM` on-demand taxis from the Prima+ÖV Project
239
- * - `FLEX` flexible transports
240
- *
241
- * # Transit modes
242
- *
243
- * - `TRANSIT`: translates to `RAIL,TRAM,BUS,FERRY,AIRPLANE,COACH,CABLE_CAR,FUNICULAR,AREAL_LIFT,OTHER`
244
- * - `TRAM`: trams
245
- * - `SUBWAY`: subway trains
246
- * - `FERRY`: ferries
247
- * - `AIRPLANE`: airline flights
248
- * - `BUS`: short distance buses (does not include `COACH`)
249
- * - `COACH`: long distance buses (does not include `BUS`)
250
- * - `RAIL`: translates to `HIGHSPEED_RAIL,LONG_DISTANCE,NIGHT_RAIL,REGIONAL_RAIL,REGIONAL_FAST_RAIL,METRO,SUBWAY`
251
- * - `METRO`: metro trains
252
- * - `HIGHSPEED_RAIL`: long distance high speed trains (e.g. TGV)
253
- * - `LONG_DISTANCE`: long distance inter city trains
254
- * - `NIGHT_RAIL`: long distance night trains
255
- * - `REGIONAL_FAST_RAIL`: regional express routes that skip low traffic stops to be faster
256
- * - `REGIONAL_RAIL`: regional train
257
- * - `CABLE_CAR`: Cable tram. Used for street-level rail cars where the cable runs beneath the vehicle (e.g., cable car in San Francisco).
258
- * - `FUNICULAR`: Funicular. Any rail system designed for steep inclines.
259
- * - `AREAL_LIFT`: Aerial lift, suspended cable car (e.g., gondola lift, aerial tramway). Cable transport where cabins, cars, gondolas or open chairs are suspended by means of one or more cables.
260
- *
291
+ * Average speed for pedestrian routing in meters per second
292
+ */
293
+ type PedestrianSpeed = number;
294
+ /**
295
+ * Average speed for bike routing in meters per second
261
296
  */
262
- type Mode = 'WALK' | 'BIKE' | 'RENTAL' | 'CAR' | 'CAR_PARKING' | 'CAR_DROPOFF' | 'ODM' | 'FLEX' | 'TRANSIT' | 'TRAM' | 'SUBWAY' | 'FERRY' | 'AIRPLANE' | 'METRO' | 'BUS' | 'COACH' | 'RAIL' | 'HIGHSPEED_RAIL' | 'LONG_DISTANCE' | 'NIGHT_RAIL' | 'REGIONAL_FAST_RAIL' | 'REGIONAL_RAIL' | 'CABLE_CAR' | 'FUNICULAR' | 'AREAL_LIFT' | 'OTHER';
297
+ type CyclingSpeed = number;
263
298
  /**
264
299
  * - `NORMAL` - latitude / longitude coordinate or address
265
300
  * - `BIKESHARE` - bike sharing station
@@ -282,6 +317,10 @@ type Place = {
282
317
  * The ID of the stop. This is often something that users don't care about.
283
318
  */
284
319
  stopId?: string;
320
+ /**
321
+ * The importance of the stop between 0-1.
322
+ */
323
+ importance?: number;
285
324
  /**
286
325
  * latitude
287
326
  */
@@ -294,6 +333,10 @@ type Place = {
294
333
  * level according to OpenStreetMap
295
334
  */
296
335
  level: number;
336
+ /**
337
+ * timezone name (e.g. "Europe/Berlin")
338
+ */
339
+ tz?: string;
297
340
  /**
298
341
  * arrival time
299
342
  */
@@ -413,18 +456,40 @@ type StopTime = {
413
456
  */
414
457
  realTime: boolean;
415
458
  /**
416
- * For transit legs, the headsign of the bus or train being used.
459
+ * The headsign of the bus or train being used.
417
460
  * For non-transit legs, null
418
461
  *
419
462
  */
420
463
  headsign: string;
464
+ /**
465
+ * final stop of this trip
466
+ */
467
+ tripTo: Place;
421
468
  agencyId: string;
422
469
  agencyName: string;
423
470
  agencyUrl: string;
424
471
  routeColor?: string;
425
472
  routeTextColor?: string;
426
473
  tripId: string;
474
+ routeType?: number;
427
475
  routeShortName: string;
476
+ routeLongName: string;
477
+ tripShortName: string;
478
+ displayName: string;
479
+ /**
480
+ * Experimental. Expect unannounced breaking changes (without version bumps).
481
+ *
482
+ * Stops on the trips before this stop. Returned only if `fetchStop` and `arriveBy` are `true`.
483
+ *
484
+ */
485
+ previousStops?: Array<Place>;
486
+ /**
487
+ * Experimental. Expect unannounced breaking changes (without version bumps).
488
+ *
489
+ * Stops on the trips after this stop. Returned only if `fetchStop` is `true` and `arriveBy` is `false`.
490
+ *
491
+ */
492
+ nextStops?: Array<Place>;
428
493
  /**
429
494
  * Type of pickup (for departures) or dropoff (for arrivals), may be disallowed either due to schedule, skipped stops or cancellations
430
495
  */
@@ -451,9 +516,13 @@ type TripInfo = {
451
516
  */
452
517
  tripId: string;
453
518
  /**
454
- * trip display name
519
+ * trip display name (api version < 4)
455
520
  */
456
- routeShortName: string;
521
+ routeShortName?: string;
522
+ /**
523
+ * trip display name (api version >= 4)
524
+ */
525
+ displayName?: string;
457
526
  };
458
527
  /**
459
528
  * trip segment between two stops to show a trip on a map
@@ -581,6 +650,14 @@ type RentalReturnConstraint = 'NONE' | 'ANY_STATION' | 'ROUNDTRIP_STATION';
581
650
  * Vehicle rental
582
651
  */
583
652
  type Rental = {
653
+ /**
654
+ * Rental provider ID
655
+ */
656
+ providerId: string;
657
+ /**
658
+ * Rental provider group ID
659
+ */
660
+ providerGroupId: string;
584
661
  /**
585
662
  * Vehicle share system ID
586
663
  */
@@ -593,6 +670,12 @@ type Rental = {
593
670
  * URL of the vehicle share system
594
671
  */
595
672
  url?: string;
673
+ /**
674
+ * Color associated with this provider, in hexadecimal RGB format
675
+ * (e.g. "#FF0000" for red). Can be empty.
676
+ *
677
+ */
678
+ color?: string;
596
679
  /**
597
680
  * Name of the station
598
681
  */
@@ -621,6 +704,305 @@ type Rental = {
621
704
  propulsionType?: RentalPropulsionType;
622
705
  returnConstraint?: RentalReturnConstraint;
623
706
  };
707
+ /**
708
+ * A multi-polygon contains a number of polygons, each containing a number
709
+ * of rings, which are encoded as polylines (with precision 6).
710
+ *
711
+ * For each polygon, the first ring is the outer ring, all subsequent rings
712
+ * are inner rings (holes).
713
+ *
714
+ */
715
+ type MultiPolygon = Array<Array<EncodedPolyline>>;
716
+ type RentalZoneRestrictions = {
717
+ /**
718
+ * List of vehicle types (as indices into the provider's vehicle types
719
+ * array) to which these restrictions apply.
720
+ * If empty, the restrictions apply to all vehicle types of the provider.
721
+ *
722
+ */
723
+ vehicleTypeIdxs: Array<(number)>;
724
+ /**
725
+ * whether the ride is allowed to start in this zone
726
+ */
727
+ rideStartAllowed: boolean;
728
+ /**
729
+ * whether the ride is allowed to end in this zone
730
+ */
731
+ rideEndAllowed: boolean;
732
+ /**
733
+ * whether the ride is allowed to pass through this zone
734
+ */
735
+ rideThroughAllowed: boolean;
736
+ /**
737
+ * whether vehicles can only be parked at stations in this zone
738
+ */
739
+ stationParking?: boolean;
740
+ };
741
+ type RentalVehicleType = {
742
+ /**
743
+ * Unique identifier of the vehicle type (unique within the provider)
744
+ */
745
+ id: string;
746
+ /**
747
+ * Public name of the vehicle type (can be empty)
748
+ */
749
+ name?: string;
750
+ formFactor: RentalFormFactor;
751
+ propulsionType: RentalPropulsionType;
752
+ returnConstraint: RentalReturnConstraint;
753
+ /**
754
+ * Whether the return constraint was guessed instead of being specified by the rental provider
755
+ */
756
+ returnConstraintGuessed: boolean;
757
+ };
758
+ type RentalProvider = {
759
+ /**
760
+ * Unique identifier of the rental provider
761
+ */
762
+ id: string;
763
+ /**
764
+ * Name of the provider to be displayed to customers
765
+ */
766
+ name: string;
767
+ /**
768
+ * Id of the rental provider group this provider belongs to
769
+ */
770
+ groupId: string;
771
+ /**
772
+ * Name of the system operator
773
+ */
774
+ operator?: string;
775
+ /**
776
+ * URL of the vehicle share system
777
+ */
778
+ url?: string;
779
+ /**
780
+ * URL where a customer can purchase a membership
781
+ */
782
+ purchaseUrl?: string;
783
+ /**
784
+ * Color associated with this provider, in hexadecimal RGB format
785
+ * (e.g. "#FF0000" for red). Can be empty.
786
+ *
787
+ */
788
+ color?: string;
789
+ /**
790
+ * Bounding box of the area covered by this rental provider,
791
+ * [west, south, east, north] as [lon, lat, lon, lat]
792
+ *
793
+ */
794
+ bbox: [
795
+ number,
796
+ number,
797
+ number,
798
+ number
799
+ ];
800
+ vehicleTypes: Array<RentalVehicleType>;
801
+ /**
802
+ * List of form factors offered by this provider
803
+ */
804
+ formFactors: Array<RentalFormFactor>;
805
+ defaultRestrictions: RentalZoneRestrictions;
806
+ globalGeofencingRules: Array<RentalZoneRestrictions>;
807
+ };
808
+ type RentalProviderGroup = {
809
+ /**
810
+ * Unique identifier of the rental provider group
811
+ */
812
+ id: string;
813
+ /**
814
+ * Name of the provider group to be displayed to customers
815
+ */
816
+ name: string;
817
+ /**
818
+ * Color associated with this provider group, in hexadecimal RGB format
819
+ * (e.g. "#FF0000" for red). Can be empty.
820
+ *
821
+ */
822
+ color?: string;
823
+ /**
824
+ * List of rental provider IDs that belong to this group
825
+ */
826
+ providers: Array<(string)>;
827
+ /**
828
+ * List of form factors offered by this provider group
829
+ */
830
+ formFactors: Array<RentalFormFactor>;
831
+ };
832
+ type RentalStation = {
833
+ /**
834
+ * Unique identifier of the rental station
835
+ */
836
+ id: string;
837
+ /**
838
+ * Unique identifier of the rental provider
839
+ */
840
+ providerId: string;
841
+ /**
842
+ * Unique identifier of the rental provider group
843
+ */
844
+ providerGroupId: string;
845
+ /**
846
+ * Public name of the station
847
+ */
848
+ name: string;
849
+ /**
850
+ * latitude
851
+ */
852
+ lat: number;
853
+ /**
854
+ * longitude
855
+ */
856
+ lon: number;
857
+ /**
858
+ * Address where the station is located
859
+ */
860
+ address?: string;
861
+ /**
862
+ * Cross street or landmark where the station is located
863
+ */
864
+ crossStreet?: string;
865
+ /**
866
+ * Rental URI for Android (deep link to the specific station)
867
+ */
868
+ rentalUriAndroid?: string;
869
+ /**
870
+ * Rental URI for iOS (deep link to the specific station)
871
+ */
872
+ rentalUriIOS?: string;
873
+ /**
874
+ * Rental URI for web (deep link to the specific station)
875
+ */
876
+ rentalUriWeb?: string;
877
+ /**
878
+ * true if vehicles can be rented from this station, false if it is temporarily out of service
879
+ */
880
+ isRenting: boolean;
881
+ /**
882
+ * true if vehicles can be returned to this station, false if it is temporarily out of service
883
+ */
884
+ isReturning: boolean;
885
+ /**
886
+ * Number of vehicles available for rental at this station
887
+ */
888
+ numVehiclesAvailable: number;
889
+ /**
890
+ * List of form factors available for rental and/or return at this station
891
+ */
892
+ formFactors: Array<RentalFormFactor>;
893
+ /**
894
+ * List of vehicle types currently available at this station (vehicle type ID -> count)
895
+ */
896
+ vehicleTypesAvailable: {
897
+ [key: string]: (number);
898
+ };
899
+ /**
900
+ * List of vehicle docks currently available at this station (vehicle type ID -> count)
901
+ */
902
+ vehicleDocksAvailable: {
903
+ [key: string]: (number);
904
+ };
905
+ stationArea?: MultiPolygon;
906
+ /**
907
+ * Bounding box of the area covered by this station,
908
+ * [west, south, east, north] as [lon, lat, lon, lat]
909
+ *
910
+ */
911
+ bbox: [
912
+ number,
913
+ number,
914
+ number,
915
+ number
916
+ ];
917
+ };
918
+ type RentalVehicle = {
919
+ /**
920
+ * Unique identifier of the rental vehicle
921
+ */
922
+ id: string;
923
+ /**
924
+ * Unique identifier of the rental provider
925
+ */
926
+ providerId: string;
927
+ /**
928
+ * Unique identifier of the rental provider group
929
+ */
930
+ providerGroupId: string;
931
+ /**
932
+ * Vehicle type ID (unique within the provider)
933
+ */
934
+ typeId: string;
935
+ /**
936
+ * latitude
937
+ */
938
+ lat: number;
939
+ /**
940
+ * longitude
941
+ */
942
+ lon: number;
943
+ formFactor: RentalFormFactor;
944
+ propulsionType: RentalPropulsionType;
945
+ returnConstraint: RentalReturnConstraint;
946
+ /**
947
+ * Station ID if the vehicle is currently at a station
948
+ */
949
+ stationId?: string;
950
+ /**
951
+ * Station ID where the vehicle must be returned, if applicable
952
+ */
953
+ homeStationId?: string;
954
+ /**
955
+ * true if the vehicle is currently reserved by a customer, false otherwise
956
+ */
957
+ isReserved: boolean;
958
+ /**
959
+ * true if the vehicle is out of service, false otherwise
960
+ */
961
+ isDisabled: boolean;
962
+ /**
963
+ * Rental URI for Android (deep link to the specific vehicle)
964
+ */
965
+ rentalUriAndroid?: string;
966
+ /**
967
+ * Rental URI for iOS (deep link to the specific vehicle)
968
+ */
969
+ rentalUriIOS?: string;
970
+ /**
971
+ * Rental URI for web (deep link to the specific vehicle)
972
+ */
973
+ rentalUriWeb?: string;
974
+ };
975
+ type RentalZone = {
976
+ /**
977
+ * Unique identifier of the rental provider
978
+ */
979
+ providerId: string;
980
+ /**
981
+ * Unique identifier of the rental provider group
982
+ */
983
+ providerGroupId: string;
984
+ /**
985
+ * Public name of the geofencing zone
986
+ */
987
+ name?: string;
988
+ /**
989
+ * Zone precedence / z-index (higher number = higher precedence)
990
+ */
991
+ z: number;
992
+ /**
993
+ * Bounding box of the area covered by this zone,
994
+ * [west, south, east, north] as [lon, lat, lon, lat]
995
+ *
996
+ */
997
+ bbox: [
998
+ number,
999
+ number,
1000
+ number,
1001
+ number
1002
+ ];
1003
+ area: MultiPolygon;
1004
+ rules: Array<RentalZoneRestrictions>;
1005
+ };
624
1006
  type Leg = {
625
1007
  /**
626
1008
  * Transport mode for this leg
@@ -684,14 +1066,21 @@ type Leg = {
684
1066
  *
685
1067
  */
686
1068
  headsign?: string;
1069
+ /**
1070
+ * final stop of this trip (can differ from headsign)
1071
+ */
1072
+ tripTo?: Place;
687
1073
  routeColor?: string;
688
1074
  routeTextColor?: string;
689
- routeType?: string;
1075
+ routeType?: number;
690
1076
  agencyName?: string;
691
1077
  agencyUrl?: string;
692
1078
  agencyId?: string;
693
1079
  tripId?: string;
694
1080
  routeShortName?: string;
1081
+ routeLongName?: string;
1082
+ tripShortName?: string;
1083
+ displayName?: string;
695
1084
  /**
696
1085
  * Whether this trip is cancelled
697
1086
  */
@@ -895,6 +1284,9 @@ type Transfer = {
895
1284
  */
896
1285
  car?: number;
897
1286
  };
1287
+ type Error = {
1288
+ error?: string;
1289
+ };
898
1290
  type PlanData = {
899
1291
  query: {
900
1292
  /**
@@ -904,6 +1296,10 @@ type PlanData = {
904
1296
  *
905
1297
  */
906
1298
  additionalTransferTime?: number;
1299
+ /**
1300
+ * algorithm to use
1301
+ */
1302
+ algorithm?: 'RAPTOR' | 'PONG' | 'TB';
907
1303
  /**
908
1304
  * Optional. Default is `false`.
909
1305
  *
@@ -912,6 +1308,13 @@ type PlanData = {
912
1308
  *
913
1309
  */
914
1310
  arriveBy?: boolean;
1311
+ /**
1312
+ * Optional
1313
+ *
1314
+ * Average speed for bike routing.
1315
+ *
1316
+ */
1317
+ cyclingSpeed?: CyclingSpeed;
915
1318
  /**
916
1319
  * - true: Compute transfer polylines and step instructions.
917
1320
  * - false: Only return basic information (start time, end time, duration) for transfers.
@@ -958,6 +1361,16 @@ type PlanData = {
958
1361
  *
959
1362
  */
960
1363
  directRentalPropulsionTypes?: Array<RentalPropulsionType>;
1364
+ /**
1365
+ * Experimental. Expect unannounced breaking changes (without version bumps).
1366
+ *
1367
+ * Optional. Only applies to direct connections.
1368
+ *
1369
+ * A list of rental provider groups that are allowed to be used for direct connections.
1370
+ * If empty (the default), all providers are allowed.
1371
+ *
1372
+ */
1373
+ directRentalProviderGroups?: Array<(string)>;
961
1374
  /**
962
1375
  * Experimental. Expect unannounced breaking changes (without version bumps).
963
1376
  *
@@ -998,7 +1411,7 @@ type PlanData = {
998
1411
  /**
999
1412
  * Optional.
1000
1413
  * Factor with which the duration of the fastest slowDirect connection is multiplied.
1001
- * Values > 1.0 allow connections that are slower than the fastest direct connection to be found.
1414
+ * Values > 1.0 allow connections that are slower than the fastest direct transit connection to be found.
1002
1415
  * Values < 1.0 will return all slowDirect connections.
1003
1416
  *
1004
1417
  */
@@ -1059,7 +1472,7 @@ type PlanData = {
1059
1472
  * (usually BCP-47 / ISO 639-1, or ISO 639-2 if there's no ISO 639-1)
1060
1473
  *
1061
1474
  */
1062
- language?: string;
1475
+ language?: Array<(string)>;
1063
1476
  /**
1064
1477
  * Optional. Experimental. Number of luggage pieces; base unit: airline cabin luggage (e.g. for ODM or price calculation)
1065
1478
  *
@@ -1068,9 +1481,27 @@ type PlanData = {
1068
1481
  /**
1069
1482
  * Optional. Default is 30min which is `1800`.
1070
1483
  * Maximum time in seconds for direct connections.
1484
+ * Is limited by server config variable `street_routing_max_direct_seconds`.
1071
1485
  *
1072
1486
  */
1073
1487
  maxDirectTime?: number;
1488
+ /**
1489
+ * Optional. By default all computed itineraries will be returned
1490
+ *
1491
+ * The maximum number of itineraries to compute.
1492
+ * This is only relevant if `timetableView=true`.
1493
+ *
1494
+ * Note: With the current implementation, setting this to a lower
1495
+ * number will not result in any speedup.
1496
+ *
1497
+ * Note: The number of returned itineraries might be slightly higher
1498
+ * than `maxItineraries` as there might be several itineraries with
1499
+ * the same departure time but different number of transfers. In order
1500
+ * to not miss any itineraries for paging, either none or all
1501
+ * itineraries with the same departure time have to be returned.
1502
+ *
1503
+ */
1504
+ maxItineraries?: number;
1074
1505
  /**
1075
1506
  * Optional. Default is 25 meters.
1076
1507
  *
@@ -1081,12 +1512,14 @@ type PlanData = {
1081
1512
  /**
1082
1513
  * Optional. Default is 15min which is `900`.
1083
1514
  * Maximum time in seconds for the last street leg.
1515
+ * Is limited by server config variable `street_routing_max_prepost_transit_seconds`.
1084
1516
  *
1085
1517
  */
1086
1518
  maxPostTransitTime?: number;
1087
1519
  /**
1088
1520
  * Optional. Default is 15min which is `900`.
1089
1521
  * Maximum time in seconds for the first street leg.
1522
+ * Is limited by server config variable `street_routing_max_prepost_transit_seconds`.
1090
1523
  *
1091
1524
  */
1092
1525
  maxPreTransitTime?: number;
@@ -1155,6 +1588,13 @@ type PlanData = {
1155
1588
  *
1156
1589
  */
1157
1590
  pedestrianProfile?: PedestrianProfile;
1591
+ /**
1592
+ * Optional
1593
+ *
1594
+ * Average speed for pedestrian routing.
1595
+ *
1596
+ */
1597
+ pedestrianSpeed?: PedestrianSpeed;
1158
1598
  /**
1159
1599
  * Optional. Default is `WALK`. Only applies if the `to` place is a coordinate (not a transit stop). Does not apply to direct connections (see `directModes`).
1160
1600
  *
@@ -1184,6 +1624,16 @@ type PlanData = {
1184
1624
  *
1185
1625
  */
1186
1626
  postTransitRentalPropulsionTypes?: Array<RentalPropulsionType>;
1627
+ /**
1628
+ * Experimental. Expect unannounced breaking changes (without version bumps).
1629
+ *
1630
+ * Optional. Only applies if the `to` place is a coordinate (not a transit stop). Does not apply to direct connections (see `directRentalProviderGroups`).
1631
+ *
1632
+ * A list of rental provider groups that are allowed to be used from the last transit stop to the `to` coordinate.
1633
+ * If empty (the default), all providers are allowed.
1634
+ *
1635
+ */
1636
+ postTransitRentalProviderGroups?: Array<(string)>;
1187
1637
  /**
1188
1638
  * Experimental. Expect unannounced breaking changes (without version bumps).
1189
1639
  *
@@ -1223,6 +1673,16 @@ type PlanData = {
1223
1673
  *
1224
1674
  */
1225
1675
  preTransitRentalPropulsionTypes?: Array<RentalPropulsionType>;
1676
+ /**
1677
+ * Experimental. Expect unannounced breaking changes (without version bumps).
1678
+ *
1679
+ * Optional. Only applies if the `from` place is a coordinate (not a transit stop). Does not apply to direct connections (see `directRentalProviderGroups`).
1680
+ *
1681
+ * A list of rental provider groups that are allowed to be used from the `from` coordinate to the first transit stop.
1682
+ * If empty (the default), all providers are allowed.
1683
+ *
1684
+ */
1685
+ preTransitRentalProviderGroups?: Array<(string)>;
1226
1686
  /**
1227
1687
  * Experimental. Expect unannounced breaking changes (without version bumps).
1228
1688
  *
@@ -1315,7 +1775,7 @@ type PlanData = {
1315
1775
  /**
1316
1776
  * Optional. Default is `TRANSIT` which allows all transit modes (no restriction).
1317
1777
  * Allowed modes for the transit part. If empty, no transit connections will be computed.
1318
- * For example, this can be used to allow only `METRO,SUBWAY,TRAM`.
1778
+ * For example, this can be used to allow only `SUBURBAN,SUBWAY,TRAM`.
1319
1779
  *
1320
1780
  */
1321
1781
  transitModes?: Array<Mode>;
@@ -1393,7 +1853,7 @@ type PlanResponse = ({
1393
1853
  */
1394
1854
  nextPageCursor: string;
1395
1855
  });
1396
- type PlanError = unknown;
1856
+ type PlanError = (Error);
1397
1857
  type OneToManyData = {
1398
1858
  query: {
1399
1859
  /**
@@ -1460,6 +1920,13 @@ type OneToAllData = {
1460
1920
  *
1461
1921
  */
1462
1922
  arriveBy?: boolean;
1923
+ /**
1924
+ * Optional
1925
+ *
1926
+ * Average speed for bike routing.
1927
+ *
1928
+ */
1929
+ cyclingSpeed?: CyclingSpeed;
1463
1930
  /**
1464
1931
  * Optional. Default is `NONE`.
1465
1932
  *
@@ -1491,6 +1958,7 @@ type OneToAllData = {
1491
1958
  * Optional. Default is 15min which is `900`.
1492
1959
  * - `arriveBy=true`: Maximum time in seconds for the street leg at `one` location.
1493
1960
  * - `arriveBy=false`: Currently not used
1961
+ * Is limited by server config variable `street_routing_max_prepost_transit_seconds`.
1494
1962
  *
1495
1963
  */
1496
1964
  maxPostTransitTime?: number;
@@ -1498,6 +1966,7 @@ type OneToAllData = {
1498
1966
  * Optional. Default is 15min which is `900`.
1499
1967
  * - `arriveBy=true`: Currently not used
1500
1968
  * - `arriveBy=false`: Maximum time in seconds for the street leg at `one` location.
1969
+ * Is limited by server config variable `street_routing_max_prepost_transit_seconds`.
1501
1970
  *
1502
1971
  */
1503
1972
  maxPreTransitTime?: number;
@@ -1522,7 +1991,7 @@ type OneToAllData = {
1522
1991
  */
1523
1992
  maxTransfers?: number;
1524
1993
  /**
1525
- * maximum travel time in minutes
1994
+ * The maximum travel time in minutes. Defaults to 90. The limit may be increased by the server administrator using `onetoall_max_travel_minutes` option in `config.yml`. See documentation for details.
1526
1995
  */
1527
1996
  maxTravelTime: number;
1528
1997
  /**
@@ -1551,6 +2020,13 @@ type OneToAllData = {
1551
2020
  *
1552
2021
  */
1553
2022
  pedestrianProfile?: PedestrianProfile;
2023
+ /**
2024
+ * Optional
2025
+ *
2026
+ * Average speed for pedestrian routing.
2027
+ *
2028
+ */
2029
+ pedestrianSpeed?: PedestrianSpeed;
1554
2030
  /**
1555
2031
  * Optional. Default is `WALK`. The behavior depends on whether `arriveBy` is set:
1556
2032
  * - `arriveBy=true`: Only applies if the `one` place is a coordinate (not a transit stop).
@@ -1601,7 +2077,7 @@ type OneToAllData = {
1601
2077
  /**
1602
2078
  * Optional. Default is `TRANSIT` which allows all transit modes (no restriction).
1603
2079
  * Allowed modes for the transit part. If empty, no transit connections will be computed.
1604
- * For example, this can be used to allow only `METRO,SUBWAY,TRAM`.
2080
+ * For example, this can be used to allow only `SUBURBAN,SUBWAY,TRAM`.
1605
2081
  *
1606
2082
  */
1607
2083
  transitModes?: Array<Mode>;
@@ -1615,7 +2091,7 @@ type OneToAllData = {
1615
2091
  };
1616
2092
  };
1617
2093
  type OneToAllResponse = (Reachable);
1618
- type OneToAllError = unknown;
2094
+ type OneToAllError = (Error);
1619
2095
  type ReverseGeocodeData = {
1620
2096
  query: {
1621
2097
  /**
@@ -1633,7 +2109,7 @@ type ReverseGeocodeData = {
1633
2109
  };
1634
2110
  };
1635
2111
  type ReverseGeocodeResponse = (Array<Match>);
1636
- type ReverseGeocodeError = unknown;
2112
+ type ReverseGeocodeError = (Error);
1637
2113
  type GeocodeData = {
1638
2114
  query: {
1639
2115
  /**
@@ -1641,7 +2117,7 @@ type GeocodeData = {
1641
2117
  * (usually ISO 639-1, or ISO 639-2 if there's no ISO 639-1)
1642
2118
  *
1643
2119
  */
1644
- language?: string;
2120
+ language?: Array<(string)>;
1645
2121
  /**
1646
2122
  * Optional. Used for biasing results towards the coordinate.
1647
2123
  *
@@ -1669,7 +2145,7 @@ type GeocodeData = {
1669
2145
  };
1670
2146
  };
1671
2147
  type GeocodeResponse = (Array<Match>);
1672
- type GeocodeError = unknown;
2148
+ type GeocodeError = (Error);
1673
2149
  type TripData = {
1674
2150
  query: {
1675
2151
  /**
@@ -1687,7 +2163,7 @@ type TripData = {
1687
2163
  * (usually BCP-47 / ISO 639-1, or ISO 639-2 if there's no ISO 639-1)
1688
2164
  *
1689
2165
  */
1690
- language?: string;
2166
+ language?: Array<(string)>;
1691
2167
  /**
1692
2168
  * trip identifier (e.g. from an itinerary leg or stop event)
1693
2169
  */
@@ -1699,7 +2175,7 @@ type TripData = {
1699
2175
  };
1700
2176
  };
1701
2177
  type TripResponse = (Itinerary);
1702
- type TripError = unknown;
2178
+ type TripError = (Error);
1703
2179
  type StoptimesData = {
1704
2180
  query: {
1705
2181
  /**
@@ -1731,12 +2207,20 @@ type StoptimesData = {
1731
2207
  *
1732
2208
  */
1733
2209
  exactRadius?: boolean;
2210
+ /**
2211
+ * Experimental. Expect unannounced breaking changes (without version bumps).
2212
+ *
2213
+ * Optional. Default is `false`. If set to `true`, the following stops are returned
2214
+ * for departures and the previous stops are returned for arrivals.
2215
+ *
2216
+ */
2217
+ fetchStops?: boolean;
1734
2218
  /**
1735
2219
  * language tags as used in OpenStreetMap / GTFS
1736
2220
  * (usually BCP-47 / ISO 639-1, or ISO 639-2 if there's no ISO 639-1)
1737
2221
  *
1738
2222
  */
1739
- language?: string;
2223
+ language?: Array<(string)>;
1740
2224
  /**
1741
2225
  * Optional. Default is all transit modes.
1742
2226
  *
@@ -1803,7 +2287,7 @@ type StoptimesResponse = ({
1803
2287
  */
1804
2288
  nextPageCursor: string;
1805
2289
  });
1806
- type StoptimesError = unknown;
2290
+ type StoptimesError = (Error);
1807
2291
  type TripsData = {
1808
2292
  query: {
1809
2293
  /**
@@ -1829,7 +2313,7 @@ type TripsData = {
1829
2313
  };
1830
2314
  };
1831
2315
  type TripsResponse = (Array<TripSegment>);
1832
- type TripsError = unknown;
2316
+ type TripsError = (Error);
1833
2317
  type InitialResponse = ({
1834
2318
  /**
1835
2319
  * latitude
@@ -1844,7 +2328,7 @@ type InitialResponse = ({
1844
2328
  */
1845
2329
  zoom: number;
1846
2330
  });
1847
- type InitialError = unknown;
2331
+ type InitialError = (Error);
1848
2332
  type StopsData = {
1849
2333
  query: {
1850
2334
  /**
@@ -1858,7 +2342,7 @@ type StopsData = {
1858
2342
  };
1859
2343
  };
1860
2344
  type StopsResponse = (Array<Place>);
1861
- type StopsError = unknown;
2345
+ type StopsError = (Error);
1862
2346
  type LevelsData = {
1863
2347
  query: {
1864
2348
  /**
@@ -1872,7 +2356,61 @@ type LevelsData = {
1872
2356
  };
1873
2357
  };
1874
2358
  type LevelsResponse = (Array<(number)>);
1875
- type LevelsError = unknown;
2359
+ type LevelsError = (Error);
2360
+ type RentalsData = {
2361
+ query?: {
2362
+ /**
2363
+ * latitude,longitude pair of the upper left coordinate
2364
+ */
2365
+ max?: string;
2366
+ /**
2367
+ * latitude,longitude pair of the lower right coordinate
2368
+ */
2369
+ min?: string;
2370
+ /**
2371
+ * A list of rental provider groups to return.
2372
+ * If both `providerGroups` and `providers` are empty/not specified,
2373
+ * all providers in the map section are returned.
2374
+ *
2375
+ */
2376
+ providerGroups?: Array<(string)>;
2377
+ /**
2378
+ * A list of rental providers to return.
2379
+ * If both `providerGroups` and `providers` are empty/not specified,
2380
+ * all providers in the map section are returned.
2381
+ *
2382
+ */
2383
+ providers?: Array<(string)>;
2384
+ /**
2385
+ * Optional. Include providers in output. If false, only provider
2386
+ * groups are returned.
2387
+ *
2388
+ * Also affects the providers list for each provider group.
2389
+ *
2390
+ */
2391
+ withProviders?: boolean;
2392
+ /**
2393
+ * Optional. Include stations in output (requires at least min+max or providers filter).
2394
+ */
2395
+ withStations?: boolean;
2396
+ /**
2397
+ * Optional. Include free-floating vehicles in output (requires at least min+max or providers filter).
2398
+ */
2399
+ withVehicles?: boolean;
2400
+ /**
2401
+ * Optional. Include geofencing zones in output (requires at least min+max or providers filter).
2402
+ */
2403
+ withZones?: boolean;
2404
+ };
2405
+ };
2406
+ type RentalsResponse = ({
2407
+ providerGroups: Array<RentalProviderGroup>;
2408
+ providers: Array<RentalProvider>;
2409
+ stations: Array<RentalStation>;
2410
+ vehicles: Array<RentalVehicle>;
2411
+ zones: Array<RentalZone>;
2412
+ });
2413
+ type RentalsError = (Error);
1876
2414
  type TransfersData = {
1877
2415
  query: {
1878
2416
  /**
@@ -1883,6 +2421,8 @@ type TransfersData = {
1883
2421
  };
1884
2422
  type TransfersResponse = ({
1885
2423
  place: Place;
2424
+ root: Place;
2425
+ equivalences: Array<Place>;
1886
2426
  /**
1887
2427
  * true if the server has foot transfers computed
1888
2428
  */
@@ -1902,4 +2442,4 @@ type TransfersResponse = ({
1902
2442
  });
1903
2443
  type TransfersError = unknown;
1904
2444
 
1905
- export type { Alert, AlertCause, AlertEffect, AlertSeverityLevel, Area, Direction, Duration, ElevationCosts, EncodedPolyline, FareMedia, FareMediaType, FareProduct, FareTransfer, FareTransferRule, GeocodeData, GeocodeError, GeocodeResponse, InitialError, InitialResponse, Itinerary, Leg, LevelsData, LevelsError, LevelsResponse, LocationType, Match, Mode, OneToAllData, OneToAllError, OneToAllResponse, OneToManyData, OneToManyError, OneToManyResponse, PedestrianProfile, PickupDropoffType, Place, PlanData, PlanError, PlanResponse, Reachable, ReachablePlace, Rental, RentalFormFactor, RentalPropulsionType, RentalReturnConstraint, ReverseGeocodeData, ReverseGeocodeError, ReverseGeocodeResponse, RiderCategory, StepInstruction, StopTime, StopsData, StopsError, StopsResponse, StoptimesData, StoptimesError, StoptimesResponse, TimeRange, Token, Transfer, TransfersData, TransfersError, TransfersResponse, TripData, TripError, TripInfo, TripResponse, TripSegment, TripsData, TripsError, TripsResponse, VertexType };
2445
+ export type { Alert, AlertCause, AlertEffect, AlertSeverityLevel, Area, CyclingSpeed, Direction, Duration, ElevationCosts, EncodedPolyline, Error, FareMedia, FareMediaType, FareProduct, FareTransfer, FareTransferRule, GeocodeData, GeocodeError, GeocodeResponse, InitialError, InitialResponse, Itinerary, Leg, LevelsData, LevelsError, LevelsResponse, LocationType, Match, Mode, MultiPolygon, OneToAllData, OneToAllError, OneToAllResponse, OneToManyData, OneToManyError, OneToManyResponse, PedestrianProfile, PedestrianSpeed, PickupDropoffType, Place, PlanData, PlanError, PlanResponse, Reachable, ReachablePlace, Rental, RentalFormFactor, RentalPropulsionType, RentalProvider, RentalProviderGroup, RentalReturnConstraint, RentalStation, RentalVehicle, RentalVehicleType, RentalZone, RentalZoneRestrictions, RentalsData, RentalsError, RentalsResponse, ReverseGeocodeData, ReverseGeocodeError, ReverseGeocodeResponse, RiderCategory, StepInstruction, StopTime, StopsData, StopsError, StopsResponse, StoptimesData, StoptimesError, StoptimesResponse, TimeRange, Token, Transfer, TransfersData, TransfersError, TransfersResponse, TripData, TripError, TripInfo, TripResponse, TripSegment, TripsData, TripsError, TripsResponse, VertexType };