@moxi.gmbh/moxi-typescriptmodels 0.1.1071-test-server → 0.1.1071

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.
Files changed (2) hide show
  1. package/common.d.ts +488 -230
  2. package/package.json +1 -1
package/common.d.ts CHANGED
@@ -1,10 +1,41 @@
1
1
 
2
+ export interface AbstractFindMyRides {
3
+ accountId?: string;
4
+ descending?: boolean;
5
+ filter?: RideFilter;
6
+ maxSize?: number;
7
+ term?: string;
8
+ }
9
+
10
+ export interface AbstractFindRides {
11
+ descending?: boolean;
12
+ filter?: RideFilter;
13
+ maxSize?: number;
14
+ term?: string;
15
+ }
16
+
17
+ export interface AbstractFindRidesForDriver {
18
+ accountId?: string;
19
+ descending?: boolean;
20
+ filter?: RideFilter;
21
+ maxSize?: number;
22
+ term?: string;
23
+ }
24
+
25
+ export interface AbstractFindRidesInMarketplace {
26
+ accountId?: string;
27
+ descending?: boolean;
28
+ filter?: RideFilter;
29
+ maxSize?: number;
30
+ term?: string;
31
+ }
32
+
2
33
  export interface AcceptRide extends RideDriverCommand {
3
34
  driver?: AccountOrTeamRef;
4
35
  }
5
36
 
6
- export interface AcceptRideSeries extends RideDriverSeriesCommand {
7
- dispatcher?: AccountOrTeamRef;
37
+ export interface AcceptRideSeries extends SeriesDriverCommand {
38
+ driver?: AccountOrTeamRef;
8
39
  }
9
40
 
10
41
  export interface AcceptUserAgreement extends UserEdit {
@@ -13,6 +44,10 @@ export interface AcceptUserAgreement extends UserEdit {
13
44
 
14
45
  export interface Account {
15
46
  accountId?: string;
47
+ /**
48
+ * Derived from subscriptions
49
+ */
50
+ activeOrganisationTypes?: OrganisationType[];
16
51
  /**
17
52
  * Derived from subscriptions
18
53
  */
@@ -22,6 +57,12 @@ export interface Account {
22
57
  drivePermissions?: DrivePermission[];
23
58
  info?: AccountInfo;
24
59
  integrationSettings?: any[];
60
+ operateAccounts?: string[];
61
+ operators?: string[];
62
+ /**
63
+ * Derived from subscriptions. Includes organisation types that have not been confirmed yet by a superadmin or are active in past or future.
64
+ */
65
+ organisationTypes?: OrganisationType[];
25
66
  subscriptions?: Subscription[];
26
67
  teams?: Team[];
27
68
  unconfirmedCriticalInfo?: CriticalAccountInfo;
@@ -63,6 +104,10 @@ export interface AccountPermissionCommand extends UserUpdate {
63
104
  accountId?: string;
64
105
  }
65
106
 
107
+ export interface AccountPermissionFilter {
108
+ roles?: AccountRole[];
109
+ }
110
+
66
111
  export interface AccountRef {
67
112
  accountId?: string;
68
113
  name?: string;
@@ -74,14 +119,15 @@ export interface AccountUpcaster {
74
119
  export interface AccountUpdate extends AccountCommand {
75
120
  }
76
121
 
77
- /**
78
- * Address info of a google-validated address, including geolocation and district code
79
- */
122
+ export interface AddOperations extends AccountUpdate {
123
+ operateAccount?: string;
124
+ }
125
+
80
126
  export interface AddressInfo {
81
127
  addition?: string;
82
128
  city?: string;
83
129
  /**
84
- * Derived from districtNutsCode
130
+ * The NUTS country code, derived from districtNutsCode
85
131
  */
86
132
  country?: string;
87
133
  districtNutsCode?: string;
@@ -90,12 +136,12 @@ export interface AddressInfo {
90
136
  number?: string;
91
137
  placeName?: string;
92
138
  /**
93
- * Derived from districtNutsCode
139
+ * The NUTS level 1 code, derived from districtNutsCode
94
140
  */
95
141
  state?: string;
96
142
  street?: string;
97
143
  /**
98
- * Derived from districtNutsCode
144
+ * The NUTS level 2 code, derived from districtNutsCode
99
145
  */
100
146
  subState?: string;
101
147
  zipCode?: string;
@@ -115,31 +161,31 @@ export interface AmbulanceFilter extends DrivePermissionFilter {
115
161
  }
116
162
 
117
163
  /**
118
- * Filled if (and only if) vehicleType == ambulance
164
+ * Mandatory if the vehicleType is ambulance, forbidden if taxi
119
165
  */
120
166
  export interface AmbulanceInfo {
121
167
  /**
122
- * Derived from infectionDescription != blank
168
+ * True if infectionDescription is given
123
169
  */
124
170
  hasInfection?: boolean;
125
171
  infectionDescription?: string;
126
172
  monitoringDescription?: string;
127
173
  oxygenLiterPerHour?: number;
128
174
  /**
129
- * Derived from monitoringDescription != blank
175
+ * True if monitoringDescription is given
130
176
  */
131
177
  requiresMonitoring?: boolean;
132
178
  /**
133
- * Derived from oxygenLiterPerHour != null
179
+ * True if oxygenLiterPerHour is given
134
180
  */
135
181
  requiresOxygen?: boolean;
136
182
  requiresSuctionAspirator?: boolean;
137
183
  }
138
184
 
139
- /**
140
- * Same as RideInfo, except it does not contain an appointment
141
- */
142
- export interface AnonymizedRideInfo extends GenericRideInfo {
185
+ export interface AnonymizedRideInfo extends RideInfo {
186
+ }
187
+
188
+ export interface AnonymizedSeriesRideInfo extends SeriesRideInfo {
143
189
  }
144
190
 
145
191
  export interface Appointment {
@@ -147,7 +193,11 @@ export interface Appointment {
147
193
  time?: string;
148
194
  }
149
195
 
150
- export interface AssignDriver extends RideCommand {
196
+ export interface AssignDriver extends RideOperatorCommand {
197
+ driver?: AccountOrTeamRef;
198
+ }
199
+
200
+ export interface AssignRideSeriesDriver extends SeriesOperatorCommand {
151
201
  driver?: AccountOrTeamRef;
152
202
  }
153
203
 
@@ -169,39 +219,31 @@ export interface AuthenticationResponse {
169
219
  userProfile?: UserProfile;
170
220
  }
171
221
 
172
- export interface AuthenticationService {
173
- }
174
-
175
- export interface BatchUpdateRideSeriesInfo extends RideSeriesPostConfirmCommand {
176
- info?: GenericRideInfo;
177
- updater?: AccountOrTeamRef;
222
+ export interface AuthenticationResponseFactory {
178
223
  }
179
224
 
180
- export interface BatchUpdateRideSeriesTimes extends RideSeriesPostConfirmCommand {
181
- rides?: SingleRideUpdate[];
182
- updater?: AccountOrTeamRef;
225
+ export interface AuthenticationService {
183
226
  }
184
227
 
185
228
  export interface BookRide extends CreateRideCommand {
186
- booker?: AccountOrTeamRef;
187
229
  info?: RideInfo;
188
230
  }
189
231
 
190
- export interface BookRideSeries extends RideBookerSeriesCommand {
191
- booker?: AccountOrTeamRef;
192
- info?: GenericRideInfo;
193
- rides?: SingleRide[];
232
+ export interface BookRideSeries extends CreateSeriesCommand {
233
+ rideSummaries?: RideSummary[];
194
234
  }
195
235
 
196
236
  export interface CancelRide extends RideBookerCommand {
197
237
  reason?: string;
198
238
  }
199
239
 
200
- export interface CancelRideSeries extends RideBookerSeriesCommand {
240
+ export interface CancelRideSeries extends SeriesCommandWithSeparateEvent {
241
+ reason?: string;
201
242
  }
202
243
 
203
- export interface CancelRidesInSeries extends RideSeriesPostConfirmCommand {
204
- updater?: AccountOrTeamRef;
244
+ export interface CancelRideSeriesEvent extends SeriesBookerCommand {
245
+ cancelRides?: string[];
246
+ reason?: string;
205
247
  }
206
248
 
207
249
  export interface CeliosSettings {
@@ -223,6 +265,16 @@ export interface CheckIfUserSignedUp {
223
265
  userId?: string;
224
266
  }
225
267
 
268
+ /**
269
+ * You can send in custom values. For every value you don't send in, we lookup the default setting you set up in your account.
270
+ */
271
+ export interface CleaningAndSlack {
272
+ cleaningAtGarage?: boolean;
273
+ cleaningDuration?: number;
274
+ dropoffDuration?: number;
275
+ pickupDuration?: number;
276
+ }
277
+
226
278
  export interface ConfirmAccount extends AccountCommand {
227
279
  }
228
280
 
@@ -233,9 +285,6 @@ export interface ConfirmDrivePermission extends AccountUpdate {
233
285
  export interface ConfirmEverythingInAccount extends AccountCommand {
234
286
  }
235
287
 
236
- export interface ConfirmRideSeries extends RideDriverSeriesCommand {
237
- }
238
-
239
288
  export interface ConfirmSubscription extends AccountUpdate {
240
289
  subscriptionId?: string;
241
290
  }
@@ -264,15 +313,12 @@ export interface CreateOptimizationPlan extends OptimizerMessage {
264
313
  }
265
314
 
266
315
  export interface CreateRideCommand extends RideBookerCommand {
267
- booker?: AccountOrTeamId;
316
+ booker?: AccountOrTeamRef;
268
317
  }
269
318
 
270
- export interface CreateRideFromSeries extends RideDriverCommand {
319
+ export interface CreateSeriesCommand extends SeriesBookerCommand {
271
320
  booker?: AccountOrTeamRef;
272
- driver?: AccountOrTeamRef;
273
- info?: RideInfo;
274
- returnTrip?: boolean;
275
- rideSeriesId?: string;
321
+ info?: SeriesRideInfo;
276
322
  }
277
323
 
278
324
  export interface CreateSqueezeInPlan extends OptimizerMessage {
@@ -308,6 +354,11 @@ export interface DateRange {
308
354
  export interface DeleteUser extends UserEdit {
309
355
  }
310
356
 
357
+ export interface DisconnectClient {
358
+ clientId?: string;
359
+ tokenId?: string;
360
+ }
361
+
311
362
  export interface DispoliveSettings {
312
363
  key?: string;
313
364
  type: "dispolive";
@@ -413,44 +464,25 @@ export interface FindAccounts {
413
464
  term?: string;
414
465
  }
415
466
 
416
- export interface FindMyAcceptedRides {
467
+ export interface FindDuplicateRides {
417
468
  accountId?: string;
418
- descending?: boolean;
419
- filter?: RideFilter;
420
- maxSize?: number;
421
- term?: string;
469
+ appointmentTime?: string;
470
+ patientBirthDay?: string;
471
+ patientFirstName?: string;
472
+ patientLastName?: string;
422
473
  }
423
474
 
424
- /**
425
- * @deprecated
426
- */
427
- export interface FindMyRideOffers {
428
- accountId?: string;
429
- descending?: boolean;
430
- filter?: RideFilter;
431
- maxSize?: number;
432
- term?: string;
475
+ export interface FindMyRides extends AbstractFindMyRides {
433
476
  }
434
477
 
435
- export interface FindMyRideSeries {
436
- accountId?: string;
437
- descending?: boolean;
438
- filter?: RideFilter;
439
- maxSize?: number;
440
- term?: string;
478
+ export interface FindMyRidesAndSeries extends AbstractFindMyRides {
441
479
  }
442
480
 
443
- export interface FindMyRides {
444
- accountId?: string;
445
- descending?: boolean;
446
- filter?: RideFilter;
447
- maxSize?: number;
448
- term?: string;
481
+ export interface FindMySeries extends AbstractFindMyRides {
449
482
  }
450
483
 
451
484
  export interface FindMyTokens {
452
485
  accountId?: string;
453
- teamId?: string;
454
486
  term?: string;
455
487
  }
456
488
 
@@ -460,27 +492,27 @@ export interface FindMyUsers {
460
492
  term?: string;
461
493
  }
462
494
 
463
- export interface FindPotentialRideSeries {
464
- accountId?: string;
465
- descending?: boolean;
466
- filter?: RideInfoFilter;
467
- maxSize?: number;
468
- timeRange?: InstantRange;
495
+ export interface FindRides extends AbstractFindRides {
469
496
  }
470
497
 
471
- export interface FindPotentialRides {
472
- accountId?: string;
473
- descending?: boolean;
474
- filter?: RideFilter;
475
- maxSize?: number;
476
- term?: string;
498
+ export interface FindRidesAndSeries extends AbstractFindRides {
477
499
  }
478
500
 
479
- export interface FindRides {
480
- descending?: boolean;
481
- filter?: RideFilter;
482
- maxSize?: number;
483
- term?: string;
501
+ export interface FindRidesAndSeriesForDriver extends AbstractFindRidesForDriver {
502
+ }
503
+
504
+ export interface FindRidesAndSeriesInMarketplace extends AbstractFindRidesInMarketplace {
505
+ }
506
+
507
+ export interface FindRidesAndSeriesResult {
508
+ ridesAndSeries?: RideOrMinimizedSeries[];
509
+ ridesCount?: RideFilterCount;
510
+ }
511
+
512
+ export interface FindRidesForDriver extends AbstractFindRidesForDriver {
513
+ }
514
+
515
+ export interface FindRidesInMarketplace extends AbstractFindRidesInMarketplace {
484
516
  }
485
517
 
486
518
  export interface FindRidesResult {
@@ -488,23 +520,42 @@ export interface FindRidesResult {
488
520
  rides?: Ride[];
489
521
  }
490
522
 
523
+ export interface FindSeries extends AbstractFindRides {
524
+ }
525
+
526
+ export interface FindSeriesForDriver extends AbstractFindRidesForDriver {
527
+ }
528
+
529
+ export interface FindSeriesInMarketplace extends AbstractFindRidesInMarketplace {
530
+ }
531
+
491
532
  export interface FindTokens {
492
533
  term?: string;
493
534
  }
494
535
 
495
536
  export interface FindUsers {
537
+ accountFilter?: AccountFilter;
538
+ accountPermissionFilter?: AccountPermissionFilter;
496
539
  term?: string;
497
540
  }
498
541
 
542
+ export interface FirebaseMessage {
543
+ data?: { [index: string]: string };
544
+ notification?: Notification;
545
+ topic?: string;
546
+ }
547
+
499
548
  export interface GenerateToken {
500
549
  accountPermission?: AccountPermission;
501
550
  info?: TokenInfo;
502
551
  tokenId?: string;
503
552
  }
504
553
 
505
- /**
506
- * Same as RideInfo, except it does not contain an appointment
507
- */
554
+ export interface GenerateTokenResult {
555
+ entity?: Token;
556
+ jwt?: string;
557
+ }
558
+
508
559
  export interface GenericRideInfo {
509
560
  ambulanceInfo?: AmbulanceInfo;
510
561
  attendantsPresent?: number;
@@ -520,7 +571,6 @@ export interface GenericRideInfo {
520
571
  patient?: Person;
521
572
  plannedDuration?: RideDuration;
522
573
  preferredDriver?: string;
523
- purpose?: RidePurpose;
524
574
  to?: AddressInfo;
525
575
  vehicleType?: VehicleType;
526
576
  weightInKg?: number;
@@ -556,10 +606,16 @@ export interface GetAccount {
556
606
  accountId?: string;
557
607
  }
558
608
 
559
- export interface GetAccountsOfPotentialDrivers extends GetPotentialDrivers {
609
+ /**
610
+ * @deprecated
611
+ */
612
+ export interface GetAccountsOfPotentialDrivers extends IGetPotentialDrivers {
560
613
  }
561
614
 
562
- export interface GetAccountsOfPotentialDriversAsAdmin extends GetPotentialDrivers {
615
+ /**
616
+ * @deprecated
617
+ */
618
+ export interface GetAccountsOfPotentialDriversAsAdmin extends IGetPotentialDrivers {
563
619
  }
564
620
 
565
621
  export interface GetDistrict {
@@ -582,32 +638,17 @@ export interface GetIsoStates {
582
638
  export interface GetMonopolyAccounts {
583
639
  }
584
640
 
585
- export interface GetMyAcceptedRides {
586
- accountId?: string;
587
- maxSize?: number;
588
- timeRange?: InstantRange;
589
- }
590
-
591
641
  export interface GetMyAccounts {
592
642
  filter?: AccountFilter;
593
643
  }
594
644
 
595
- /**
596
- * @deprecated
597
- */
598
- export interface GetMyRideOffers {
599
- accountId?: string;
600
- maxSize?: number;
601
- timeRange?: InstantRange;
602
- }
603
-
604
- export interface GetMyRideSeries {
645
+ export interface GetMyRides {
605
646
  accountId?: string;
606
647
  maxSize?: number;
607
648
  timeRange?: InstantRange;
608
649
  }
609
650
 
610
- export interface GetMyRides {
651
+ export interface GetMySeries {
611
652
  accountId?: string;
612
653
  maxSize?: number;
613
654
  timeRange?: InstantRange;
@@ -622,20 +663,27 @@ export interface GetMyUserProfile {
622
663
  export interface GetNutsStates {
623
664
  }
624
665
 
625
- export interface GetPotentialDrivers {
666
+ export interface GetOneSeries {
667
+ rideSeriesId?: string;
668
+ }
669
+
670
+ export interface GetPotentialDriverIds extends GetPotentialDriversAbstract {
671
+ }
672
+
673
+ /**
674
+ * Common information shared across all rides in a series. Similar to RideInfo but without appointment-specific details that vary per ride.
675
+
676
+ */
677
+ export interface GetPotentialDrivers extends GetPotentialDriversAbstract {
678
+ }
679
+
680
+ export interface GetPotentialDriversAbstract {
626
681
  fromDistrict?: string;
627
682
  mobility?: Mobility;
628
- toDistrict?: string;
629
683
  vehicleType?: VehicleType;
630
684
  weightInKg?: number;
631
685
  }
632
686
 
633
- export interface GetPotentialRides {
634
- accountId?: string;
635
- maxSize?: number;
636
- timeRange?: InstantRange;
637
- }
638
-
639
687
  export interface GetRide {
640
688
  rideId?: string;
641
689
  }
@@ -655,12 +703,38 @@ export interface GetRideLog {
655
703
  rideId?: string;
656
704
  }
657
705
 
658
- export interface GetRideSeries {
659
- rideSeriesId?: string;
706
+ export interface GetRideOrSeries {
707
+ id?: string;
708
+ }
709
+
710
+ export interface GetRidesForDriver {
711
+ accountId?: string;
712
+ maxSize?: number;
713
+ timeRange?: InstantRange;
714
+ }
715
+
716
+ export interface GetRidesInMarketplace {
717
+ accountId?: string;
718
+ maxSize?: number;
719
+ timeRange?: InstantRange;
660
720
  }
661
721
 
662
722
  export interface GetRidesInSeries {
663
- filter?: RideFilter;
723
+ rideSeriesId?: string;
724
+ }
725
+
726
+ export interface GetSeriesForDriver {
727
+ accountId?: string;
728
+ maxSize?: number;
729
+ timeRange?: InstantRange;
730
+ }
731
+
732
+ export interface GetSeriesInMarketplace {
733
+ accountId?: string;
734
+ maxSize?: number;
735
+ }
736
+
737
+ export interface GetSeriesLog {
664
738
  rideSeriesId?: string;
665
739
  }
666
740
 
@@ -690,6 +764,18 @@ export interface GiveTeamPermission extends AccountPermissionCommand {
690
764
  teamPermission?: TeamPermission;
691
765
  }
692
766
 
767
+ export interface HalfHourBeforeStart {
768
+ rideId?: string;
769
+ }
770
+
771
+ export interface IGetPotentialDrivers {
772
+ fromDistrict?: string;
773
+ mobility?: Mobility;
774
+ toDistrict?: string;
775
+ vehicleType?: VehicleType;
776
+ weightInKg?: number;
777
+ }
778
+
693
779
  export interface ImpersonateUser {
694
780
  userId?: string;
695
781
  }
@@ -730,6 +816,28 @@ export interface IsoState {
730
816
  nutsCode?: string;
731
817
  }
732
818
 
819
+ export interface Metric {
820
+ clientId?: string;
821
+ clientSegment?: number[];
822
+ maxSize?: number;
823
+ maxTimeout?: string;
824
+ tokenId?: string;
825
+ type?: string;
826
+ updates?: string[];
827
+ }
828
+
829
+ /**
830
+ * A series of rides.
831
+ */
832
+ export interface MinimizedRideSeries extends RideSeries, RideOrMinimizedSeries {
833
+ info?: SeriesRideInfo;
834
+ }
835
+
836
+ export interface Notification {
837
+ body?: string;
838
+ title?: string;
839
+ }
840
+
733
841
  export interface NutsDistrict {
734
842
  code?: string;
735
843
  name?: string;
@@ -752,6 +860,10 @@ export interface OffsetTimeRange {
752
860
  start?: Date;
753
861
  }
754
862
 
863
+ export interface OneHourAfterEnd {
864
+ rideId?: string;
865
+ }
866
+
755
867
  export interface OptimizerMessage {
756
868
  }
757
869
 
@@ -768,7 +880,7 @@ export interface Person {
768
880
  }
769
881
 
770
882
  /**
771
- * Filled if (and only if) patient exceeds 130 kg
883
+ * Mandatory if weight exceeds 130 kg, otherwise forbidden
772
884
  */
773
885
  export interface PersonDimensions {
774
886
  heightInCm?: number;
@@ -783,6 +895,38 @@ export interface PlanRide extends RideDriverModifyCommand {
783
895
  plannedStartTime?: string;
784
896
  }
785
897
 
898
+ export interface ReadUpdates {
899
+ clientId?: string;
900
+ maxSize?: number;
901
+ maxTimeout?: number;
902
+ tokenId?: string;
903
+ updateTypes?: EntityType[];
904
+ }
905
+
906
+ export interface ReadUpdatesResult {
907
+ clientSegment?: number[];
908
+ lastIndex?: number;
909
+ updates?: any[];
910
+ }
911
+
912
+ export interface RefreshTokenData {
913
+ expiresAt?: string;
914
+ hashedToken?: string;
915
+ userId?: string;
916
+ }
917
+
918
+ export interface RefreshTokenService {
919
+ }
920
+
921
+ export interface RefreshUserToken {
922
+ refreshToken?: string;
923
+ }
924
+
925
+ export interface RefreshableAuthenticationResponse extends AuthenticationResponse {
926
+ refreshToken?: string;
927
+ refreshTokenDeadline?: string;
928
+ }
929
+
786
930
  export interface Region {
787
931
  nutsCode?: string;
788
932
  }
@@ -806,6 +950,14 @@ export interface RegisterEinsatz {
806
950
  export interface RemoveAccount extends AccountUpdate {
807
951
  }
808
952
 
953
+ export interface RemoveOperations extends AccountUpdate {
954
+ operateAccount?: string;
955
+ }
956
+
957
+ export interface RemoveOperator extends AccountUpdate {
958
+ operator?: string;
959
+ }
960
+
809
961
  export interface RemoveSettings extends AccountUpdate {
810
962
  type?: IntegrationType;
811
963
  }
@@ -843,10 +995,19 @@ export interface RequestUserReset {
843
995
  email?: string;
844
996
  }
845
997
 
998
+ /**
999
+ * Resets the lastIndex position of your token.
1000
+ */
1001
+ export interface ResetPosition {
1002
+ index?: number;
1003
+ timestamp?: string;
1004
+ tokenId?: string;
1005
+ }
1006
+
846
1007
  export interface ReturnRide extends RideDriverModifyCommand {
847
1008
  }
848
1009
 
849
- export interface ReturnRideSeries extends RideDriverSeriesCommand {
1010
+ export interface ReturnRideSeries extends SeriesDriverCommand {
850
1011
  }
851
1012
 
852
1013
  export interface Review {
@@ -869,6 +1030,9 @@ export interface RevokeDrivePermission extends AccountUpdate {
869
1030
  drivePermissionId?: string;
870
1031
  }
871
1032
 
1033
+ export interface RevokeSecondaryTokenPermission extends SecondaryTokenPermissionCommand {
1034
+ }
1035
+
872
1036
  export interface RevokeSubscription extends AccountUpdate {
873
1037
  subscriptionId?: string;
874
1038
  }
@@ -876,76 +1040,76 @@ export interface RevokeSubscription extends AccountUpdate {
876
1040
  export interface RevokeToken extends TokenUpdate {
877
1041
  }
878
1042
 
879
- export interface Ride {
1043
+ export interface RevokeUserRefreshTokens {
1044
+ userId?: string;
1045
+ }
1046
+
1047
+ export interface Ride extends RideOrSeries, RideOrMinimizedSeries {
880
1048
  /**
881
- * Derived from driver != null
1049
+ * 'accepted' is true if a driver has accepted the ride.
882
1050
  */
883
1051
  accepted?: boolean;
884
1052
  actualEndTime?: string;
885
1053
  actualStartTime?: string;
886
1054
  /**
887
- * Derived from driveStatus != null
1055
+ * 'arrived' is true if the driver has reported driveStatus is 'arrived_at_origin'.
888
1056
  */
889
1057
  arrived?: boolean;
890
1058
  /**
891
- * Derived from bookedTime != null
1059
+ * 'booked' is false if the ride has only been saved.
892
1060
  */
893
1061
  booked?: boolean;
894
- bookedTime?: string;
895
1062
  booker?: AccountOrTeamRef;
896
1063
  bookerReview?: Review;
897
- bookingStatus?: BookingStatus;
898
1064
  cancelReason?: string;
899
1065
  cancelled?: boolean;
900
1066
  /**
901
- * Derived from driveStatus == completed
1067
+ * 'completed' is true if the driver has reported driveStatus is 'completed'.
902
1068
  */
903
1069
  completed?: boolean;
904
1070
  /**
905
- * Desired Time of Arrival at the Destination/Drop-off location. Derived from info.appointment and info.plannedDuration
1071
+ * The booker determines the desiredEndTime via 'info.appointment' and 'info.plannedDuration'. It means the desired time of arrival at the 'to' or 'drop-off' location.
906
1072
  */
907
1073
  desiredEndTime?: string;
908
1074
  /**
909
- * Desired Time of Arrival at the Origin/Pick-up location. Derived from info.appointment and info.plannedDuration
1075
+ * The booker determines the desiredStartTime via 'info.appointment' and 'info.plannedDuration'. It means the desired time of arrival at the 'from' or 'pick-up' location.
910
1076
  */
911
1077
  desiredStartTime?: string;
912
- /**
913
- * Display time is the planned time, or else the desired time
914
- */
915
- displayEndTime?: string;
916
- /**
917
- * Display time is the planned time, or else the desired time
918
- */
919
- displayStartTime?: string;
920
1078
  driveStatus?: DriveStatus;
921
- driver?: AccountOrTeamRef;
922
1079
  driverReview?: Review;
923
1080
  driverSyncStatus?: SyncStatus;
924
1081
  endTimeDelay?: number;
925
1082
  /**
926
- * Expected Time of Arrival at the Destination/Drop-off location.
1083
+ * The driver determines the expectedEndTime when indicating delays. It means the expected time of arrival at the 'to' or 'drop-off' location.
927
1084
  */
928
1085
  expectedEndTime?: string;
929
1086
  /**
930
- * Expected Time of Arrival at the Origin/Pick-up location.
1087
+ * The driver determines the expectedEndTime when indicating delays. It means the expected time of arrival at the 'from' or 'pick-up' location.
931
1088
  */
932
1089
  expectedStartTime?: string;
933
1090
  info?: RideInfo;
934
1091
  /**
935
- * Derived from plannedStartTime != null
1092
+ * 'planned' is true if the driver has reported a planned time for the ride.
936
1093
  */
937
1094
  planned?: boolean;
938
1095
  /**
939
- * Planned Time of Arrival at the Destination/Drop-off location, reported by the driver.
1096
+ * The driver determines the plannedEndTime. It means the planned time of arrival at the 'to' or 'drop-off' location.
940
1097
  */
941
1098
  plannedEndTime?: string;
942
1099
  plannedStartTime?: string;
943
- returnTrip?: boolean;
944
1100
  rideId?: string;
945
- rideSeriesId?: string;
1101
+ /**
1102
+ * searchEndTime is the time until which rides can be found in our system. It's the planned time, or else the desired time.
1103
+ */
1104
+ searchEndTime?: string;
1105
+ /**
1106
+ * searchStartTime is the time from which rides can be found in our system. It's the planned time, or else the desired time.
1107
+ */
1108
+ searchStartTime?: string;
1109
+ seriesInfo?: SeriesInfo;
946
1110
  startTimeDelay?: number;
947
1111
  /**
948
- * Derived from driveStatus != null
1112
+ * 'started' is true if the driver has reported a driveStatus.
949
1113
  */
950
1114
  started?: boolean;
951
1115
  }
@@ -953,9 +1117,6 @@ export interface Ride {
953
1117
  export interface RideBookerCommand extends RideCommand {
954
1118
  }
955
1119
 
956
- export interface RideBookerSeriesCommand extends RideSeriesCommand {
957
- }
958
-
959
1120
  export interface RideCommand {
960
1121
  rideId?: string;
961
1122
  }
@@ -966,16 +1127,19 @@ export interface RideDriverCommand extends RideCommand {
966
1127
  export interface RideDriverModifyCommand extends RideDriverCommand {
967
1128
  }
968
1129
 
969
- export interface RideDriverSeriesCommand extends RideSeriesPreConfirmCommand {
970
- }
971
-
972
- /**
973
- * All durations in seconds
974
- */
975
1130
  export interface RideDuration {
976
1131
  driving?: number;
1132
+ /**
1133
+ * Seconds of slack for dropping off the patient, currently hardcoded to 15 minutes
1134
+ */
977
1135
  droppingOff?: number;
1136
+ /**
1137
+ * Seconds of slack for picking up the patient, currently hardcoded to 15 minutes
1138
+ */
978
1139
  pickingUp?: number;
1140
+ /**
1141
+ * Seconds of driving time plus the pick-up and drop-off slack times
1142
+ */
979
1143
  total?: number;
980
1144
  }
981
1145
 
@@ -984,6 +1148,7 @@ export interface RideFilter {
984
1148
  driveStatuses?: DriveStatus[];
985
1149
  driverAccountNames?: string[];
986
1150
  driverTeamNames?: string[];
1151
+ entityType?: EntityType;
987
1152
  hasInfection?: boolean;
988
1153
  heavyWeight?: boolean;
989
1154
  mobilities?: Mobility[];
@@ -995,6 +1160,7 @@ export interface RideFilter {
995
1160
  riderAccountNames?: string[];
996
1161
  riderTeamNames?: string[];
997
1162
  timeRange?: InstantRange;
1163
+ unfoldRideSeries?: boolean;
998
1164
  vehicleType?: VehicleType;
999
1165
  }
1000
1166
 
@@ -1020,41 +1186,9 @@ export interface RideIdResult {
1020
1186
  rideId?: string;
1021
1187
  }
1022
1188
 
1023
- /**
1024
- * Information about the ride, from the creator of the ride
1025
- */
1026
- export interface RideInfo {
1027
- ambulanceInfo?: AmbulanceInfo;
1189
+ export interface RideInfo extends GenericRideInfo {
1028
1190
  appointment?: Appointment;
1029
- attendantsPresent?: number;
1030
- comment?: string;
1031
- dimensions?: PersonDimensions;
1032
- distanceInMeters?: number;
1033
- from?: AddressInfo;
1034
- /**
1035
- * Derived from weightInKg != null
1036
- */
1037
- heavyWeight?: boolean;
1038
- mobility?: Mobility;
1039
- patient?: Person;
1040
- plannedDuration?: RideDuration;
1041
- preferredDriver?: string;
1042
1191
  purpose?: RidePurpose;
1043
- to?: AddressInfo;
1044
- vehicleType?: VehicleType;
1045
- weightInKg?: number;
1046
- }
1047
-
1048
- export interface RideInfoFilter {
1049
- hasInfection?: boolean;
1050
- heavyWeight?: boolean;
1051
- mobilities?: Mobility[];
1052
- purposes?: RidePurpose[];
1053
- region?: Region;
1054
- requiresMonitoring?: boolean;
1055
- requiresOxygen?: boolean;
1056
- requiresSuctionAspirator?: boolean;
1057
- vehicleType?: VehicleType;
1058
1192
  }
1059
1193
 
1060
1194
  export interface RideLog {
@@ -1073,64 +1207,123 @@ export interface RideLog {
1073
1207
  token?: boolean;
1074
1208
  }
1075
1209
 
1076
- export interface RideOfferInfo {
1077
- appointment?: Appointment;
1210
+ export interface RideOperatorCommand extends RideCommand {
1078
1211
  }
1079
1212
 
1080
- export interface RideSeries {
1081
- accepted?: boolean;
1082
- booked?: boolean;
1083
- booker?: AccountOrTeamRef;
1084
- cancelled?: boolean;
1085
- confirmed?: boolean;
1213
+ export interface RideOrMinimizedSeries {
1214
+ bookingStatus?: BookingStatus;
1215
+ entityType?: EntityType;
1216
+ info?: GenericRideInfo;
1217
+ }
1218
+
1219
+ export interface RideOrSeries {
1220
+ bookedTime?: string;
1221
+ bookingStatus?: BookingStatus;
1222
+ cleaningAndSlack?: CleaningAndSlack;
1086
1223
  driver?: AccountOrTeamRef;
1087
- endTime?: string;
1224
+ entityType?: EntityType;
1088
1225
  info?: GenericRideInfo;
1089
- rideSeriesId?: string;
1090
- rides?: SingleRide[];
1091
- startTime?: string;
1092
- status?: RideSeriesStatus;
1226
+ totalDuration?: number;
1093
1227
  }
1094
1228
 
1095
- export interface RideSeriesCommand {
1229
+ /**
1230
+ * A series of rides.
1231
+ */
1232
+ export interface RideSeries extends RideOrSeries {
1233
+ /**
1234
+ * 'accepted' is true if a driver has accepted the series.
1235
+ */
1236
+ accepted?: boolean;
1237
+ /**
1238
+ * The number of rides in the series that are not cancelled.
1239
+ */
1240
+ activeRideCount?: number;
1241
+ /**
1242
+ * 'booked' is false if the series has only been saved.
1243
+ */
1244
+ booked?: boolean;
1245
+ booker?: AccountOrTeamRef;
1246
+ cancelReason?: string;
1247
+ cancelled?: boolean;
1248
+ info?: SeriesRideInfo;
1096
1249
  rideSeriesId?: string;
1250
+ rides?: Ride[];
1251
+ ridesSummaries?: RideSummary[];
1252
+ /**
1253
+ * searchEndTime is the time from which series can be found in our system. It's the searchEndTime of the last ride in the series.
1254
+ */
1255
+ searchEndTime?: string;
1256
+ /**
1257
+ * searchStartTime is the time from which series can be found in our system. It's the searchStartTime of the first ride in the series.
1258
+ */
1259
+ searchStartTime?: string;
1097
1260
  }
1098
1261
 
1099
1262
  export interface RideSeriesIdResult {
1100
1263
  rideSeriesId?: string;
1101
1264
  }
1102
1265
 
1103
- export interface RideSeriesPostConfirmCommand {
1104
- rideSeriesId?: string;
1105
- ridesToModify?: Ride[];
1266
+ export interface RideSeriesUpdate {
1267
+ after?: RideSeries;
1268
+ before?: RideSeries;
1269
+ entityId?: string;
1270
+ eventType?: string;
1271
+ index?: number;
1272
+ timestamp?: string;
1273
+ type: "rideseries";
1106
1274
  }
1107
1275
 
1108
- export interface RideSeriesPreConfirmCommand extends RideSeriesCommand {
1276
+ export interface RideSeriesUtils {
1109
1277
  }
1110
1278
 
1111
1279
  export interface RideStatisticsQuery {
1112
1280
  dateRange?: DateRange;
1113
- timezoneOrDefault?: string;
1114
1281
  zoneId?: string;
1115
1282
  }
1116
1283
 
1284
+ /**
1285
+ * Individual ride timing within a series. Once a ride series is accepted, you cannot add rides, only remove
1286
+ */
1287
+ export interface RideSummary {
1288
+ appointmentTime?: string;
1289
+ returnTrip?: boolean;
1290
+ rideId?: string;
1291
+ }
1292
+
1117
1293
  export interface RideSystemCommand extends RideCommand {
1118
1294
  }
1119
1295
 
1120
1296
  export interface RideUpcaster {
1121
1297
  }
1122
1298
 
1123
- export interface Role<T> {
1299
+ export interface RideUpdate {
1300
+ after?: Ride;
1301
+ before?: Ride;
1302
+ entityId?: string;
1303
+ eventType?: string;
1304
+ index?: number;
1305
+ timestamp?: string;
1306
+ type: "ride";
1307
+ }
1308
+
1309
+ export interface Role {
1124
1310
  }
1125
1311
 
1126
1312
  /**
1127
1313
  * Save a new ride or update a previously saved ride. Not allowed to saveRide after the ride has been booked.
1128
1314
  */
1129
1315
  export interface SaveRide extends CreateRideCommand {
1130
- booker?: AccountOrTeamRef;
1131
1316
  info?: RideInfo;
1132
1317
  }
1133
1318
 
1319
+ export interface SaveRideSeries extends CreateSeriesCommand {
1320
+ rideSummaries?: RideSummary[];
1321
+ }
1322
+
1323
+ export interface SecondaryTokenPermissionCommand extends TokenUpdate {
1324
+ accountId?: string;
1325
+ }
1326
+
1134
1327
  export interface SendConfirmationEmail {
1135
1328
  userId?: string;
1136
1329
  }
@@ -1142,6 +1335,7 @@ export interface SendEmail {
1142
1335
  export interface SendFreshdeskNewTicket {
1143
1336
  email?: string;
1144
1337
  message?: string;
1338
+ subject?: string;
1145
1339
  }
1146
1340
 
1147
1341
  export interface SendInvitationEmail {
@@ -1149,11 +1343,64 @@ export interface SendInvitationEmail {
1149
1343
  userId?: string;
1150
1344
  }
1151
1345
 
1346
+ export interface SendKChat {
1347
+ channel?: KChatChannel;
1348
+ message?: string;
1349
+ }
1350
+
1152
1351
  export interface SendSlack {
1153
1352
  channel?: SlackChannel;
1154
1353
  message?: string;
1155
1354
  }
1156
1355
 
1356
+ export interface SendToFirebase {
1357
+ message?: FirebaseMessage;
1358
+ }
1359
+
1360
+ export interface SeriesBookerCommand extends SeriesCommand {
1361
+ }
1362
+
1363
+ export interface SeriesCommand {
1364
+ rideSeriesId?: string;
1365
+ }
1366
+
1367
+ export interface SeriesCommandWithSeparateEvent {
1368
+ rideSeriesId?: string;
1369
+ }
1370
+
1371
+ export interface SeriesDriverCommand extends SeriesCommand {
1372
+ }
1373
+
1374
+ /**
1375
+ * If the ride is part of a series, seriesInfo will contain context about the position of the ride within the series.
1376
+ */
1377
+ export interface SeriesInfo {
1378
+ desyncedFromSeries?: boolean;
1379
+ positionInSeries?: number;
1380
+ returnTrip?: boolean;
1381
+ rideSeriesId?: string;
1382
+ totalRidesInSeries?: number;
1383
+ }
1384
+
1385
+ export interface SeriesOperatorCommand extends SeriesCommand {
1386
+ }
1387
+
1388
+ export interface SeriesRideInfo extends GenericRideInfo {
1389
+ purpose?: SeriesPurpose;
1390
+ }
1391
+
1392
+ export interface SetOperations extends AccountUpdate {
1393
+ operateAccounts?: string[];
1394
+ }
1395
+
1396
+ export interface SetOperator extends AccountUpdate {
1397
+ operator?: string;
1398
+ }
1399
+
1400
+ export interface SetSecondaryTokenPermission extends SecondaryTokenPermissionCommand {
1401
+ accountPermission?: AccountPermission;
1402
+ }
1403
+
1157
1404
  export interface SetSettings extends AccountUpdate {
1158
1405
  settings?: any;
1159
1406
  }
@@ -1181,16 +1428,6 @@ export interface SignUpUser {
1181
1428
  userId?: string;
1182
1429
  }
1183
1430
 
1184
- export interface SingleRide {
1185
- desiredStartTime?: string;
1186
- returnTrip?: boolean;
1187
- }
1188
-
1189
- export interface SingleRideUpdate {
1190
- desiredStartTime?: string;
1191
- rideId?: string;
1192
- }
1193
-
1194
1431
  export interface StopImpersonatingUser {
1195
1432
  }
1196
1433
 
@@ -1240,10 +1477,11 @@ export interface TimedPermission {
1240
1477
  }
1241
1478
 
1242
1479
  export interface Token {
1243
- accountPermission?: AccountPermission;
1480
+ accountPermissions?: AccountPermission[];
1244
1481
  createdBy?: string;
1245
1482
  info?: TokenInfo;
1246
1483
  lastUpdatedBy?: string;
1484
+ owner?: string;
1247
1485
  revoked?: boolean;
1248
1486
  tokenId?: string;
1249
1487
  }
@@ -1271,6 +1509,12 @@ export interface UpdateAccountPermission extends AccountPermissionCommand {
1271
1509
  accountPermission?: AccountPermission;
1272
1510
  }
1273
1511
 
1512
+ export interface UpdatePosition {
1513
+ clientSegment?: number[];
1514
+ lastIndex?: number;
1515
+ tokenId?: string;
1516
+ }
1517
+
1274
1518
  export interface UpdateRide extends RideBookerCommand {
1275
1519
  booker?: AccountOrTeamRef;
1276
1520
  info?: RideInfo;
@@ -1280,9 +1524,19 @@ export interface UpdateRidePlan extends RideDriverModifyCommand {
1280
1524
  plannedStartTime?: string;
1281
1525
  }
1282
1526
 
1283
- export interface UpdateRideSeries extends RideBookerSeriesCommand {
1284
- info?: GenericRideInfo;
1285
- rides?: SingleRide[];
1527
+ export interface UpdateRideSeries extends SeriesCommandWithSeparateEvent {
1528
+ booker?: AccountOrTeamRef;
1529
+ info?: SeriesRideInfo;
1530
+ rideSummaries?: RideSummary[];
1531
+ }
1532
+
1533
+ export interface UpdateRideSeriesEvent extends SeriesBookerCommand {
1534
+ addRides?: string[];
1535
+ booker?: AccountOrTeamRef;
1536
+ cancelRides?: string[];
1537
+ info?: SeriesRideInfo;
1538
+ rideSummaries?: RideSummary[];
1539
+ updateRides?: string[];
1286
1540
  }
1287
1541
 
1288
1542
  export interface UpdateTeam extends TeamUpdate {
@@ -1341,7 +1595,7 @@ export interface ZonedTimeRange {
1341
1595
  start?: Date;
1342
1596
  }
1343
1597
 
1344
- export type AccountRole = "ridebooker" | "dispatcher" | "admin" | "owner";
1598
+ export type AccountRole = "ridebooker" | "dispatcher" | "operator" | "admin" | "owner";
1345
1599
 
1346
1600
  export type AuthenticationResult = "SUCCESS" | "NOT_CONFIRMED";
1347
1601
 
@@ -1351,25 +1605,29 @@ export type DrivePermissionFilterUnion = AmbulanceFilter | TaxiFilter;
1351
1605
 
1352
1606
  export type DriveStatus = "driving_to_origin" | "arrived_at_origin" | "driving_to_destination" | "arrived_at_destination" | "completed";
1353
1607
 
1608
+ export type EntityType = "ride" | "rideseries";
1609
+
1354
1610
  export type GeometryUnion = GeoPolygon | GeoMultiPolygon;
1355
1611
 
1356
1612
  export type InsuranceType = "public_insurance" | "private_insurance" | "german_accident_insurance" | "no_or_unknown_insurance";
1357
1613
 
1358
1614
  export type IntegrationType = "dispolive" | "celios";
1359
1615
 
1616
+ export type KChatChannel = "ride_notifications" | "urgent_issues" | "account_tasks" | "customer_issues";
1617
+
1360
1618
  export type Mobility = "wheelchair" | "big_or_electric_wheelchair" | "carry_chair" | "stretcher";
1361
1619
 
1362
- export type OrganisationType = "medical" | "fleet";
1620
+ export type OrganisationType = "medical" | "fleet" | "operator";
1363
1621
 
1364
1622
  export type RidePurpose = "admission" | "relocation" | "discharge" | "consultation";
1365
1623
 
1366
- export type RideSeriesStatus = "booked" | "accepted" | "confirmed" | "cancelled";
1624
+ export type SeriesPurpose = "consultation";
1367
1625
 
1368
- export type Service = "pro_medical" | "pro_fleet" | "celios_integration" | "dispolive_integration";
1626
+ export type Service = "pro_medical" | "pro_fleet" | "pro_operator" | "celios_integration" | "dispolive_integration" | "moxi_operations";
1369
1627
 
1370
1628
  export type SlackChannel = "admin_monitoring" | "admin_respond_immediately" | "admin_respond_within_hour" | "admin_reported_issues";
1371
1629
 
1372
- export type StandaloneService = "pro_medical" | "pro_fleet";
1630
+ export type StandaloneService = "pro_medical" | "pro_fleet" | "pro_operator";
1373
1631
 
1374
1632
  export type SyncStatus = "not_synced" | "synced" | "update_not_synced";
1375
1633
 
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@moxi.gmbh/moxi-typescriptmodels",
3
- "version": "0.1.1071-test-server",
3
+ "version": "0.1.1071",
4
4
  "types": "common.d.ts"
5
5
  }