@venulog/phasing-engine-schemas 0.13.0-alpha.4 → 0.13.0-alpha.6

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.
@@ -52,12 +52,31 @@ export declare const companyDetailsSchema: z.ZodObject<{
52
52
  driver_phone: z.ZodString;
53
53
  transport_company: z.ZodOptional<z.ZodString>;
54
54
  }, z.core.$strip>;
55
+ export declare const companyDetailsWithMinimalFields: z.ZodObject<{
56
+ hall: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
57
+ stand_number: z.ZodOptional<z.ZodOptional<z.ZodString>>;
58
+ company_name: z.ZodOptional<z.ZodString>;
59
+ exhibitor_name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
60
+ departure_city: z.ZodOptional<z.ZodOptional<z.ZodString>>;
61
+ contact_name: z.ZodOptional<z.ZodString>;
62
+ email: z.ZodOptional<z.ZodEmail>;
63
+ phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
64
+ driver_name: z.ZodOptional<z.ZodString>;
65
+ driver_phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
66
+ transport_company: z.ZodOptional<z.ZodOptional<z.ZodString>>;
67
+ }, z.core.$strip>;
55
68
  export declare const vehicleDetailsSchema: z.ZodObject<{
56
69
  vehicle_type: z.ZodEnum<typeof import("./index.js").VehicleType>;
57
70
  unloading_method: z.ZodOptional<z.ZodEnum<typeof UnloadingType>>;
58
71
  license_plate: z.ZodString;
59
72
  trailer_registration: z.ZodOptional<z.ZodString>;
60
73
  }, z.core.$strip>;
74
+ export declare const partialVehicleDetails: z.ZodNullable<z.ZodOptional<z.ZodObject<{
75
+ vehicle_type: z.ZodOptional<z.ZodEnum<typeof import("./index.js").VehicleType>>;
76
+ unloading_method: z.ZodOptional<z.ZodOptional<z.ZodEnum<typeof UnloadingType>>>;
77
+ license_plate: z.ZodOptional<z.ZodString>;
78
+ trailer_registration: z.ZodOptional<z.ZodOptional<z.ZodString>>;
79
+ }, z.core.$strip>>>;
61
80
  export declare const parkingBookingSchema: z.ZodObject<{
62
81
  id: z.ZodNumber;
63
82
  status: z.ZodEnum<typeof BookingStatus>;
@@ -71,24 +90,24 @@ export declare const parkingBookingSchema: z.ZodObject<{
71
90
  end_time: z.ZodNullable<z.ZodString>;
72
91
  company_role: z.ZodNullable<z.ZodString>;
73
92
  company: z.ZodObject<{
74
- hall: z.ZodNullable<z.ZodOptional<z.ZodString>>;
75
- stand_number: z.ZodOptional<z.ZodString>;
76
- company_name: z.ZodString;
77
- exhibitor_name: z.ZodOptional<z.ZodString>;
78
- departure_city: z.ZodOptional<z.ZodString>;
79
- contact_name: z.ZodString;
80
- email: z.ZodEmail;
81
- phone: z.ZodString;
82
- driver_name: z.ZodString;
83
- driver_phone: z.ZodString;
84
- transport_company: z.ZodOptional<z.ZodString>;
85
- }, z.core.$strip>;
86
- vehicle: z.ZodObject<{
87
- vehicle_type: z.ZodEnum<typeof import("./index.js").VehicleType>;
88
- unloading_method: z.ZodOptional<z.ZodEnum<typeof UnloadingType>>;
89
- license_plate: z.ZodString;
90
- trailer_registration: z.ZodOptional<z.ZodString>;
93
+ hall: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
94
+ stand_number: z.ZodOptional<z.ZodOptional<z.ZodString>>;
95
+ company_name: z.ZodOptional<z.ZodString>;
96
+ exhibitor_name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
97
+ departure_city: z.ZodOptional<z.ZodOptional<z.ZodString>>;
98
+ contact_name: z.ZodOptional<z.ZodString>;
99
+ email: z.ZodOptional<z.ZodEmail>;
100
+ phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
101
+ driver_name: z.ZodOptional<z.ZodString>;
102
+ driver_phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
103
+ transport_company: z.ZodOptional<z.ZodOptional<z.ZodString>>;
91
104
  }, z.core.$strip>;
105
+ vehicle: z.ZodNullable<z.ZodOptional<z.ZodObject<{
106
+ vehicle_type: z.ZodOptional<z.ZodEnum<typeof import("./index.js").VehicleType>>;
107
+ unloading_method: z.ZodOptional<z.ZodOptional<z.ZodEnum<typeof UnloadingType>>>;
108
+ license_plate: z.ZodOptional<z.ZodString>;
109
+ trailer_registration: z.ZodOptional<z.ZodOptional<z.ZodString>>;
110
+ }, z.core.$strip>>>;
92
111
  entry_scanned_at: z.ZodNullable<z.ZodString>;
93
112
  exit_scanned_at: z.ZodNullable<z.ZodString>;
94
113
  parking_spot: z.ZodString;
@@ -114,24 +133,24 @@ export declare const eventBookingsDataSchema: z.ZodObject<{
114
133
  end_time: z.ZodNullable<z.ZodString>;
115
134
  company_role: z.ZodNullable<z.ZodString>;
116
135
  company: z.ZodObject<{
117
- hall: z.ZodNullable<z.ZodOptional<z.ZodString>>;
118
- stand_number: z.ZodOptional<z.ZodString>;
119
- company_name: z.ZodString;
120
- exhibitor_name: z.ZodOptional<z.ZodString>;
121
- departure_city: z.ZodOptional<z.ZodString>;
122
- contact_name: z.ZodString;
123
- email: z.ZodEmail;
124
- phone: z.ZodString;
125
- driver_name: z.ZodString;
126
- driver_phone: z.ZodString;
127
- transport_company: z.ZodOptional<z.ZodString>;
128
- }, z.core.$strip>;
129
- vehicle: z.ZodObject<{
130
- vehicle_type: z.ZodEnum<typeof import("./index.js").VehicleType>;
131
- unloading_method: z.ZodOptional<z.ZodEnum<typeof UnloadingType>>;
132
- license_plate: z.ZodString;
133
- trailer_registration: z.ZodOptional<z.ZodString>;
136
+ hall: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
137
+ stand_number: z.ZodOptional<z.ZodOptional<z.ZodString>>;
138
+ company_name: z.ZodOptional<z.ZodString>;
139
+ exhibitor_name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
140
+ departure_city: z.ZodOptional<z.ZodOptional<z.ZodString>>;
141
+ contact_name: z.ZodOptional<z.ZodString>;
142
+ email: z.ZodOptional<z.ZodEmail>;
143
+ phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
144
+ driver_name: z.ZodOptional<z.ZodString>;
145
+ driver_phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
146
+ transport_company: z.ZodOptional<z.ZodOptional<z.ZodString>>;
134
147
  }, z.core.$strip>;
148
+ vehicle: z.ZodNullable<z.ZodOptional<z.ZodObject<{
149
+ vehicle_type: z.ZodOptional<z.ZodEnum<typeof import("./index.js").VehicleType>>;
150
+ unloading_method: z.ZodOptional<z.ZodOptional<z.ZodEnum<typeof UnloadingType>>>;
151
+ license_plate: z.ZodOptional<z.ZodString>;
152
+ trailer_registration: z.ZodOptional<z.ZodOptional<z.ZodString>>;
153
+ }, z.core.$strip>>>;
135
154
  entry_scanned_at: z.ZodNullable<z.ZodString>;
136
155
  exit_scanned_at: z.ZodNullable<z.ZodString>;
137
156
  parking_spot: z.ZodString;
@@ -161,24 +180,24 @@ export declare const eventBookingsResponseSchema: z.ZodObject<{
161
180
  end_time: z.ZodNullable<z.ZodString>;
162
181
  company_role: z.ZodNullable<z.ZodString>;
163
182
  company: z.ZodObject<{
164
- hall: z.ZodNullable<z.ZodOptional<z.ZodString>>;
165
- stand_number: z.ZodOptional<z.ZodString>;
166
- company_name: z.ZodString;
167
- exhibitor_name: z.ZodOptional<z.ZodString>;
168
- departure_city: z.ZodOptional<z.ZodString>;
169
- contact_name: z.ZodString;
170
- email: z.ZodEmail;
171
- phone: z.ZodString;
172
- driver_name: z.ZodString;
173
- driver_phone: z.ZodString;
174
- transport_company: z.ZodOptional<z.ZodString>;
175
- }, z.core.$strip>;
176
- vehicle: z.ZodObject<{
177
- vehicle_type: z.ZodEnum<typeof import("./index.js").VehicleType>;
178
- unloading_method: z.ZodOptional<z.ZodEnum<typeof UnloadingType>>;
179
- license_plate: z.ZodString;
180
- trailer_registration: z.ZodOptional<z.ZodString>;
183
+ hall: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
184
+ stand_number: z.ZodOptional<z.ZodOptional<z.ZodString>>;
185
+ company_name: z.ZodOptional<z.ZodString>;
186
+ exhibitor_name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
187
+ departure_city: z.ZodOptional<z.ZodOptional<z.ZodString>>;
188
+ contact_name: z.ZodOptional<z.ZodString>;
189
+ email: z.ZodOptional<z.ZodEmail>;
190
+ phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
191
+ driver_name: z.ZodOptional<z.ZodString>;
192
+ driver_phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
193
+ transport_company: z.ZodOptional<z.ZodOptional<z.ZodString>>;
181
194
  }, z.core.$strip>;
195
+ vehicle: z.ZodNullable<z.ZodOptional<z.ZodObject<{
196
+ vehicle_type: z.ZodOptional<z.ZodEnum<typeof import("./index.js").VehicleType>>;
197
+ unloading_method: z.ZodOptional<z.ZodOptional<z.ZodEnum<typeof UnloadingType>>>;
198
+ license_plate: z.ZodOptional<z.ZodString>;
199
+ trailer_registration: z.ZodOptional<z.ZodOptional<z.ZodString>>;
200
+ }, z.core.$strip>>>;
182
201
  entry_scanned_at: z.ZodNullable<z.ZodString>;
183
202
  exit_scanned_at: z.ZodNullable<z.ZodString>;
184
203
  parking_spot: z.ZodString;
@@ -523,11 +542,14 @@ export declare const parkingBookingWithRelationsSchema: z.ZodObject<{
523
542
  }, z.core.$strip>;
524
543
  parking_spot: z.ZodString;
525
544
  door: z.ZodString;
526
- parking_schedule_type: z.ZodEnum<typeof ParkingAreaScheduleType>;
545
+ parking_schedule_type: z.ZodNullable<z.ZodEnum<typeof ParkingAreaScheduleType>>;
527
546
  slot_key: z.ZodNullable<z.ZodString>;
528
547
  entry_scanned_at: z.ZodNullable<z.ZodString>;
529
548
  exit_scanned_at: z.ZodNullable<z.ZodString>;
530
549
  is_custom_slot: z.ZodBoolean;
550
+ is_fast_track_access: z.ZodBoolean;
551
+ license_plate_image_url: z.ZodNullable<z.ZodString>;
552
+ applicant_badge_image_url: z.ZodNullable<z.ZodString>;
531
553
  }, z.core.$strip>;
532
554
  export declare const getParkingBookingDetailsParamsSchema: z.ZodObject<{
533
555
  bookingId: z.ZodCoercedNumber<unknown>;
@@ -542,24 +564,24 @@ export declare const parkingBookingDetailsDataSchema: z.ZodObject<{
542
564
  end_time: z.ZodString;
543
565
  company_role: z.ZodNullable<z.ZodString>;
544
566
  company: z.ZodObject<{
545
- hall: z.ZodNullable<z.ZodOptional<z.ZodString>>;
546
- stand_number: z.ZodOptional<z.ZodString>;
547
- company_name: z.ZodString;
548
- exhibitor_name: z.ZodOptional<z.ZodString>;
549
- departure_city: z.ZodOptional<z.ZodString>;
550
- contact_name: z.ZodString;
551
- email: z.ZodEmail;
552
- phone: z.ZodString;
553
- driver_name: z.ZodString;
554
- driver_phone: z.ZodString;
555
- transport_company: z.ZodOptional<z.ZodString>;
556
- }, z.core.$strip>;
557
- vehicle: z.ZodObject<{
558
- vehicle_type: z.ZodEnum<typeof import("./index.js").VehicleType>;
559
- unloading_method: z.ZodOptional<z.ZodEnum<typeof UnloadingType>>;
560
- license_plate: z.ZodString;
561
- trailer_registration: z.ZodOptional<z.ZodString>;
567
+ hall: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
568
+ stand_number: z.ZodOptional<z.ZodOptional<z.ZodString>>;
569
+ company_name: z.ZodOptional<z.ZodString>;
570
+ exhibitor_name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
571
+ departure_city: z.ZodOptional<z.ZodOptional<z.ZodString>>;
572
+ contact_name: z.ZodOptional<z.ZodString>;
573
+ email: z.ZodOptional<z.ZodEmail>;
574
+ phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
575
+ driver_name: z.ZodOptional<z.ZodString>;
576
+ driver_phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
577
+ transport_company: z.ZodOptional<z.ZodOptional<z.ZodString>>;
562
578
  }, z.core.$strip>;
579
+ vehicle: z.ZodNullable<z.ZodOptional<z.ZodObject<{
580
+ vehicle_type: z.ZodOptional<z.ZodEnum<typeof import("./index.js").VehicleType>>;
581
+ unloading_method: z.ZodOptional<z.ZodOptional<z.ZodEnum<typeof UnloadingType>>>;
582
+ license_plate: z.ZodOptional<z.ZodString>;
583
+ trailer_registration: z.ZodOptional<z.ZodOptional<z.ZodString>>;
584
+ }, z.core.$strip>>>;
563
585
  event_id: z.ZodNumber;
564
586
  event_name: z.ZodString;
565
587
  event_code: z.ZodString;
@@ -570,7 +592,6 @@ export declare const parkingBookingDetailsDataSchema: z.ZodObject<{
570
592
  venue_id: z.ZodNullable<z.ZodNumber>;
571
593
  venue_name: z.ZodNullable<z.ZodString>;
572
594
  venue_address: z.ZodNullable<z.ZodString>;
573
- request_type: z.ZodString;
574
595
  duration: z.ZodNumber;
575
596
  banner: z.ZodNullable<z.ZodObject<{
576
597
  url: z.ZodURL;
@@ -584,11 +605,14 @@ export declare const parkingBookingDetailsDataSchema: z.ZodObject<{
584
605
  updated_at: z.ZodString;
585
606
  entry_scanned_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
586
607
  exit_scanned_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
587
- slot_key: z.ZodString;
608
+ slot_key: z.ZodNullable<z.ZodString>;
588
609
  parking_spot: z.ZodString;
589
610
  door: z.ZodString;
590
- parking_schedule_type: z.ZodEnum<typeof ParkingAreaScheduleType>;
611
+ parking_schedule_type: z.ZodNullable<z.ZodEnum<typeof ParkingAreaScheduleType>>;
591
612
  is_custom_slot: z.ZodBoolean;
613
+ is_fast_track_access: z.ZodBoolean;
614
+ license_plate_image_url: z.ZodNullable<z.ZodString>;
615
+ applicant_badge_image_url: z.ZodNullable<z.ZodString>;
592
616
  }, z.core.$strip>;
593
617
  export declare const getParkingBookingDetailsResponseSchema: z.ZodObject<{
594
618
  success: z.ZodBoolean;
@@ -602,24 +626,24 @@ export declare const getParkingBookingDetailsResponseSchema: z.ZodObject<{
602
626
  end_time: z.ZodString;
603
627
  company_role: z.ZodNullable<z.ZodString>;
604
628
  company: z.ZodObject<{
605
- hall: z.ZodNullable<z.ZodOptional<z.ZodString>>;
606
- stand_number: z.ZodOptional<z.ZodString>;
607
- company_name: z.ZodString;
608
- exhibitor_name: z.ZodOptional<z.ZodString>;
609
- departure_city: z.ZodOptional<z.ZodString>;
610
- contact_name: z.ZodString;
611
- email: z.ZodEmail;
612
- phone: z.ZodString;
613
- driver_name: z.ZodString;
614
- driver_phone: z.ZodString;
615
- transport_company: z.ZodOptional<z.ZodString>;
616
- }, z.core.$strip>;
617
- vehicle: z.ZodObject<{
618
- vehicle_type: z.ZodEnum<typeof import("./index.js").VehicleType>;
619
- unloading_method: z.ZodOptional<z.ZodEnum<typeof UnloadingType>>;
620
- license_plate: z.ZodString;
621
- trailer_registration: z.ZodOptional<z.ZodString>;
629
+ hall: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
630
+ stand_number: z.ZodOptional<z.ZodOptional<z.ZodString>>;
631
+ company_name: z.ZodOptional<z.ZodString>;
632
+ exhibitor_name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
633
+ departure_city: z.ZodOptional<z.ZodOptional<z.ZodString>>;
634
+ contact_name: z.ZodOptional<z.ZodString>;
635
+ email: z.ZodOptional<z.ZodEmail>;
636
+ phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
637
+ driver_name: z.ZodOptional<z.ZodString>;
638
+ driver_phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
639
+ transport_company: z.ZodOptional<z.ZodOptional<z.ZodString>>;
622
640
  }, z.core.$strip>;
641
+ vehicle: z.ZodNullable<z.ZodOptional<z.ZodObject<{
642
+ vehicle_type: z.ZodOptional<z.ZodEnum<typeof import("./index.js").VehicleType>>;
643
+ unloading_method: z.ZodOptional<z.ZodOptional<z.ZodEnum<typeof UnloadingType>>>;
644
+ license_plate: z.ZodOptional<z.ZodString>;
645
+ trailer_registration: z.ZodOptional<z.ZodOptional<z.ZodString>>;
646
+ }, z.core.$strip>>>;
623
647
  event_id: z.ZodNumber;
624
648
  event_name: z.ZodString;
625
649
  event_code: z.ZodString;
@@ -630,7 +654,6 @@ export declare const getParkingBookingDetailsResponseSchema: z.ZodObject<{
630
654
  venue_id: z.ZodNullable<z.ZodNumber>;
631
655
  venue_name: z.ZodNullable<z.ZodString>;
632
656
  venue_address: z.ZodNullable<z.ZodString>;
633
- request_type: z.ZodString;
634
657
  duration: z.ZodNumber;
635
658
  banner: z.ZodNullable<z.ZodObject<{
636
659
  url: z.ZodURL;
@@ -644,16 +667,142 @@ export declare const getParkingBookingDetailsResponseSchema: z.ZodObject<{
644
667
  updated_at: z.ZodString;
645
668
  entry_scanned_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
646
669
  exit_scanned_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
647
- slot_key: z.ZodString;
670
+ slot_key: z.ZodNullable<z.ZodString>;
648
671
  parking_spot: z.ZodString;
649
672
  door: z.ZodString;
650
- parking_schedule_type: z.ZodEnum<typeof ParkingAreaScheduleType>;
673
+ parking_schedule_type: z.ZodNullable<z.ZodEnum<typeof ParkingAreaScheduleType>>;
651
674
  is_custom_slot: z.ZodBoolean;
675
+ is_fast_track_access: z.ZodBoolean;
676
+ license_plate_image_url: z.ZodNullable<z.ZodString>;
677
+ applicant_badge_image_url: z.ZodNullable<z.ZodString>;
652
678
  }, z.core.$strip>;
653
679
  }, z.core.$strip>;
654
680
  export declare const getParkingBookingDetailsByTokenBodySchema: z.ZodObject<{
655
681
  access_token: z.ZodString;
656
682
  }, z.core.$strip>;
683
+ export declare const parkingBookingDetailsByTokenDataSchema: z.ZodObject<{
684
+ qr_token: z.ZodNullable<z.ZodString>;
685
+ id: z.ZodNumber;
686
+ booking_id: z.ZodNumber;
687
+ status: z.ZodString;
688
+ booking_date: z.ZodString;
689
+ start_time: z.ZodString;
690
+ end_time: z.ZodString;
691
+ company_role: z.ZodNullable<z.ZodString>;
692
+ event_id: z.ZodNumber;
693
+ event_name: z.ZodString;
694
+ event_code: z.ZodString;
695
+ event_gps_latitude: z.ZodNullable<z.ZodNumber>;
696
+ event_gps_longitude: z.ZodNullable<z.ZodNumber>;
697
+ event_start_date: z.ZodString;
698
+ event_end_date: z.ZodString;
699
+ venue_id: z.ZodNullable<z.ZodNumber>;
700
+ venue_name: z.ZodNullable<z.ZodString>;
701
+ venue_address: z.ZodNullable<z.ZodString>;
702
+ duration: z.ZodNumber;
703
+ banner: z.ZodNullable<z.ZodObject<{
704
+ url: z.ZodURL;
705
+ name: z.ZodOptional<z.ZodString>;
706
+ size: z.ZodOptional<z.ZodNumber>;
707
+ bucket: z.ZodOptional<z.ZodString>;
708
+ type: z.ZodOptional<z.ZodString>;
709
+ path: z.ZodOptional<z.ZodString>;
710
+ }, z.core.$strip>>;
711
+ created_at: z.ZodString;
712
+ updated_at: z.ZodString;
713
+ entry_scanned_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
714
+ exit_scanned_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
715
+ parking_spot: z.ZodString;
716
+ door: z.ZodString;
717
+ parking_schedule_type: z.ZodNullable<z.ZodEnum<typeof ParkingAreaScheduleType>>;
718
+ is_custom_slot: z.ZodBoolean;
719
+ is_fast_track_access: z.ZodBoolean;
720
+ license_plate_image_url: z.ZodNullable<z.ZodString>;
721
+ applicant_badge_image_url: z.ZodNullable<z.ZodString>;
722
+ company: z.ZodObject<{
723
+ hall: z.ZodNullable<z.ZodOptional<z.ZodString>>;
724
+ stand_number: z.ZodOptional<z.ZodString>;
725
+ company_name: z.ZodString;
726
+ exhibitor_name: z.ZodOptional<z.ZodString>;
727
+ departure_city: z.ZodOptional<z.ZodString>;
728
+ contact_name: z.ZodString;
729
+ email: z.ZodEmail;
730
+ phone: z.ZodString;
731
+ driver_name: z.ZodString;
732
+ driver_phone: z.ZodString;
733
+ transport_company: z.ZodOptional<z.ZodString>;
734
+ }, z.core.$strip>;
735
+ vehicle: z.ZodObject<{
736
+ vehicle_type: z.ZodEnum<typeof import("./index.js").VehicleType>;
737
+ unloading_method: z.ZodOptional<z.ZodEnum<typeof UnloadingType>>;
738
+ license_plate: z.ZodString;
739
+ trailer_registration: z.ZodOptional<z.ZodString>;
740
+ }, z.core.$strip>;
741
+ slot_key: z.ZodString;
742
+ }, z.core.$strip>;
743
+ export declare const getParkingBookingDetailsByTokenResponseSchema: z.ZodObject<{
744
+ success: z.ZodBoolean;
745
+ data: z.ZodObject<{
746
+ qr_token: z.ZodNullable<z.ZodString>;
747
+ id: z.ZodNumber;
748
+ booking_id: z.ZodNumber;
749
+ status: z.ZodString;
750
+ booking_date: z.ZodString;
751
+ start_time: z.ZodString;
752
+ end_time: z.ZodString;
753
+ company_role: z.ZodNullable<z.ZodString>;
754
+ event_id: z.ZodNumber;
755
+ event_name: z.ZodString;
756
+ event_code: z.ZodString;
757
+ event_gps_latitude: z.ZodNullable<z.ZodNumber>;
758
+ event_gps_longitude: z.ZodNullable<z.ZodNumber>;
759
+ event_start_date: z.ZodString;
760
+ event_end_date: z.ZodString;
761
+ venue_id: z.ZodNullable<z.ZodNumber>;
762
+ venue_name: z.ZodNullable<z.ZodString>;
763
+ venue_address: z.ZodNullable<z.ZodString>;
764
+ duration: z.ZodNumber;
765
+ banner: z.ZodNullable<z.ZodObject<{
766
+ url: z.ZodURL;
767
+ name: z.ZodOptional<z.ZodString>;
768
+ size: z.ZodOptional<z.ZodNumber>;
769
+ bucket: z.ZodOptional<z.ZodString>;
770
+ type: z.ZodOptional<z.ZodString>;
771
+ path: z.ZodOptional<z.ZodString>;
772
+ }, z.core.$strip>>;
773
+ created_at: z.ZodString;
774
+ updated_at: z.ZodString;
775
+ entry_scanned_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
776
+ exit_scanned_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
777
+ parking_spot: z.ZodString;
778
+ door: z.ZodString;
779
+ parking_schedule_type: z.ZodNullable<z.ZodEnum<typeof ParkingAreaScheduleType>>;
780
+ is_custom_slot: z.ZodBoolean;
781
+ is_fast_track_access: z.ZodBoolean;
782
+ license_plate_image_url: z.ZodNullable<z.ZodString>;
783
+ applicant_badge_image_url: z.ZodNullable<z.ZodString>;
784
+ company: z.ZodObject<{
785
+ hall: z.ZodNullable<z.ZodOptional<z.ZodString>>;
786
+ stand_number: z.ZodOptional<z.ZodString>;
787
+ company_name: z.ZodString;
788
+ exhibitor_name: z.ZodOptional<z.ZodString>;
789
+ departure_city: z.ZodOptional<z.ZodString>;
790
+ contact_name: z.ZodString;
791
+ email: z.ZodEmail;
792
+ phone: z.ZodString;
793
+ driver_name: z.ZodString;
794
+ driver_phone: z.ZodString;
795
+ transport_company: z.ZodOptional<z.ZodString>;
796
+ }, z.core.$strip>;
797
+ vehicle: z.ZodObject<{
798
+ vehicle_type: z.ZodEnum<typeof import("./index.js").VehicleType>;
799
+ unloading_method: z.ZodOptional<z.ZodEnum<typeof UnloadingType>>;
800
+ license_plate: z.ZodString;
801
+ trailer_registration: z.ZodOptional<z.ZodString>;
802
+ }, z.core.$strip>;
803
+ slot_key: z.ZodString;
804
+ }, z.core.$strip>;
805
+ }, z.core.$strip>;
657
806
  export declare const getParkingBookingDetailsByQrBodySchema: z.ZodObject<{
658
807
  qr_token: z.ZodString;
659
808
  scanner_latitude: z.ZodOptional<z.ZodNumber>;
@@ -814,10 +963,80 @@ export declare const updateBookingTimeResponseSchema: z.ZodObject<{
814
963
  updated_by: z.ZodNullable<z.ZodString>;
815
964
  }, z.core.$strip>;
816
965
  }, z.core.$strip>;
966
+ export declare const createFastTrackBookingBodySchema: z.ZodObject<{
967
+ phone_number: z.ZodString;
968
+ event_id: z.ZodNumber;
969
+ license_plate_image_url: z.ZodOptional<z.ZodURL>;
970
+ applicant_badge_image_url: z.ZodOptional<z.ZodURL>;
971
+ }, z.core.$strip>;
972
+ export declare const createFastTrackBookingDataSchema: z.ZodObject<{
973
+ id: z.ZodNumber;
974
+ status: z.ZodString;
975
+ company: z.ZodObject<{
976
+ hall: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
977
+ stand_number: z.ZodOptional<z.ZodOptional<z.ZodString>>;
978
+ company_name: z.ZodOptional<z.ZodString>;
979
+ exhibitor_name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
980
+ departure_city: z.ZodOptional<z.ZodOptional<z.ZodString>>;
981
+ contact_name: z.ZodOptional<z.ZodString>;
982
+ email: z.ZodOptional<z.ZodEmail>;
983
+ phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
984
+ driver_name: z.ZodOptional<z.ZodString>;
985
+ driver_phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
986
+ transport_company: z.ZodOptional<z.ZodOptional<z.ZodString>>;
987
+ }, z.core.$strip>;
988
+ booking_date: z.ZodString;
989
+ start_time: z.ZodString;
990
+ end_time: z.ZodString;
991
+ event_id: z.ZodNumber;
992
+ parking_spot: z.ZodString;
993
+ license_plate_image_url: z.ZodNullable<z.ZodString>;
994
+ applicant_badge_image_url: z.ZodNullable<z.ZodString>;
995
+ is_fast_track_access: z.ZodBoolean;
996
+ created_at: z.ZodString;
997
+ created_by: z.ZodNullable<z.ZodString>;
998
+ parking_schedule_type: z.ZodNullable<z.ZodEnum<typeof ParkingAreaScheduleType>>;
999
+ door: z.ZodString;
1000
+ }, z.core.$strip>;
1001
+ export declare const createFastTrackBookingResponseSchema: z.ZodObject<{
1002
+ success: z.ZodBoolean;
1003
+ message: z.ZodString;
1004
+ data: z.ZodObject<{
1005
+ id: z.ZodNumber;
1006
+ status: z.ZodString;
1007
+ company: z.ZodObject<{
1008
+ hall: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodString>>>;
1009
+ stand_number: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1010
+ company_name: z.ZodOptional<z.ZodString>;
1011
+ exhibitor_name: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1012
+ departure_city: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1013
+ contact_name: z.ZodOptional<z.ZodString>;
1014
+ email: z.ZodOptional<z.ZodEmail>;
1015
+ phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
1016
+ driver_name: z.ZodOptional<z.ZodString>;
1017
+ driver_phone: z.ZodNonOptional<z.ZodOptional<z.ZodString>>;
1018
+ transport_company: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1019
+ }, z.core.$strip>;
1020
+ booking_date: z.ZodString;
1021
+ start_time: z.ZodString;
1022
+ end_time: z.ZodString;
1023
+ event_id: z.ZodNumber;
1024
+ parking_spot: z.ZodString;
1025
+ license_plate_image_url: z.ZodNullable<z.ZodString>;
1026
+ applicant_badge_image_url: z.ZodNullable<z.ZodString>;
1027
+ is_fast_track_access: z.ZodBoolean;
1028
+ created_at: z.ZodString;
1029
+ created_by: z.ZodNullable<z.ZodString>;
1030
+ parking_schedule_type: z.ZodNullable<z.ZodEnum<typeof ParkingAreaScheduleType>>;
1031
+ door: z.ZodString;
1032
+ }, z.core.$strip>;
1033
+ }, z.core.$strip>;
817
1034
  export type Geometry = z.infer<typeof geometrySchema>;
818
1035
  export type ParkingBooking = z.infer<typeof parkingBookingSchema>;
819
1036
  export type CompanyDetails = z.infer<typeof companyDetailsSchema>;
1037
+ export type CompanyDetailsWithMinimalFields = z.infer<typeof companyDetailsWithMinimalFields>;
820
1038
  export type VehicleDetails = z.infer<typeof vehicleDetailsSchema>;
1039
+ export type PartialVehicleDetails = z.infer<typeof partialVehicleDetails>;
821
1040
  export type EventBookingsData = z.infer<typeof eventBookingsDataSchema>;
822
1041
  export type CheckSlotAvailabilityBody = z.infer<typeof checkSlotAvailabilityBodySchema>;
823
1042
  export type CheckSlotAvailabilityData = z.infer<typeof availableTimeSlotV2Schema>;
@@ -844,6 +1063,8 @@ export type GetBookingDetailsParams = z.infer<typeof getParkingBookingDetailsPar
844
1063
  export type GetBookingDetailsData = z.infer<typeof parkingBookingDetailsDataSchema>;
845
1064
  export type GetBookingDetailsResponse = z.infer<typeof getParkingBookingDetailsResponseSchema>;
846
1065
  export type GetBookingDetailsByTokenBody = z.infer<typeof getParkingBookingDetailsByTokenBodySchema>;
1066
+ export type ParkingBookingDetailsByTokenData = z.infer<typeof parkingBookingDetailsByTokenDataSchema>;
1067
+ export type GetParkingBookingDetailsByTokenResponse = z.infer<typeof getParkingBookingDetailsByTokenResponseSchema>;
847
1068
  export type GetBookingDetailsByQrBody = z.infer<typeof getParkingBookingDetailsByQrBodySchema>;
848
1069
  export type ConfirmBookingData = z.infer<typeof confirmBookingDataSchema>;
849
1070
  export type ConfirmBookingDataResponse = z.infer<typeof confirmBookingResponseSchema>;
@@ -856,3 +1077,9 @@ export type UpdateBookingTimeBody = z.infer<typeof updateBookingTimeBodySchema>;
856
1077
  export type UpdateBookingTimeData = z.infer<typeof updateBookingTimeDataSchema>;
857
1078
  export type UpdateBookingTimeResponse = z.infer<typeof updateBookingTimeResponseSchema>;
858
1079
  export type UpdateParkingBookingResponse = z.infer<typeof updateParkingBookingResponseSchema>;
1080
+ export type CreateFastTrackBookingBody = z.infer<typeof createFastTrackBookingBodySchema>;
1081
+ export type CreateFastTrackBookingData = z.infer<typeof createFastTrackBookingDataSchema>;
1082
+ export type CreateFastTrackBookingResponse = z.infer<typeof createFastTrackBookingResponseSchema>;
1083
+ export type ConfirmAccessBody = z.infer<typeof confirmAccessBodySchema>;
1084
+ export type ConfirmAccessData = z.infer<typeof confirmAccessDataSchema>;
1085
+ export type ConfirmAccessResponse = z.infer<typeof confirmAccessResponseSchema>;
@@ -133,6 +133,13 @@ export const companyDetailsSchema = z
133
133
  })
134
134
  })
135
135
  .openapi('CompanyDetails');
136
+ export const companyDetailsWithMinimalFields = companyDetailsSchema
137
+ .partial()
138
+ .required({
139
+ phone: true,
140
+ driver_phone: true
141
+ })
142
+ .openapi('CompanyDetailsWithMandatoryFields');
136
143
  export const vehicleDetailsSchema = z
137
144
  .object({
138
145
  vehicle_type: vehicleTypeSchema,
@@ -150,6 +157,11 @@ export const vehicleDetailsSchema = z
150
157
  })
151
158
  })
152
159
  .openapi('VehicleDetails');
160
+ export const partialVehicleDetails = vehicleDetailsSchema
161
+ .partial()
162
+ .optional()
163
+ .nullable()
164
+ .openapi('PartialVehicleDetails');
153
165
  // TODO: remove booking_date, start_time, end_time, time_zone and migrate to start_time with timezone info and end_time with timezone info
154
166
  // so that we have full timezone support from db level
155
167
  export const parkingBookingSchema = z.object({
@@ -164,8 +176,8 @@ export const parkingBookingSchema = z.object({
164
176
  start_time: z.string().nullable(),
165
177
  end_time: z.string().nullable(),
166
178
  company_role: z.string().nullable(),
167
- company: companyDetailsSchema,
168
- vehicle: vehicleDetailsSchema,
179
+ company: companyDetailsWithMinimalFields,
180
+ vehicle: partialVehicleDetails,
169
181
  entry_scanned_at: z.string().nullable(),
170
182
  exit_scanned_at: z.string().nullable(),
171
183
  parking_spot: z.string(),
@@ -513,11 +525,14 @@ export const parkingBookingWithRelationsSchema = z
513
525
  }),
514
526
  parking_spot: z.string(),
515
527
  door: z.string(),
516
- parking_schedule_type: z.enum(ParkingAreaScheduleType),
528
+ parking_schedule_type: z.enum(ParkingAreaScheduleType).nullable(),
517
529
  slot_key: z.string().nullable(),
518
530
  entry_scanned_at: z.string().nullable(),
519
531
  exit_scanned_at: z.string().nullable(),
520
- is_custom_slot: z.boolean()
532
+ is_custom_slot: z.boolean(),
533
+ is_fast_track_access: z.boolean(),
534
+ license_plate_image_url: z.string().nullable(),
535
+ applicant_badge_image_url: z.string().nullable()
521
536
  })
522
537
  .openapi('ParkingBookingWithRelations');
523
538
  // ------------------------------
@@ -564,12 +579,8 @@ export const parkingBookingDetailsDataSchema = z
564
579
  description: 'Company role for the booking',
565
580
  example: 'exhibitor'
566
581
  }),
567
- company: companyDetailsSchema.openapi({
568
- description: 'Company details'
569
- }),
570
- vehicle: vehicleDetailsSchema.openapi({
571
- description: 'Vehicle details'
572
- }),
582
+ company: companyDetailsWithMinimalFields,
583
+ vehicle: partialVehicleDetails,
573
584
  event_id: z.number().openapi({
574
585
  description: 'ID of the event',
575
586
  example: 1
@@ -610,10 +621,6 @@ export const parkingBookingDetailsDataSchema = z
610
621
  description: 'Address of the venue',
611
622
  example: '1 Pl. de la Prte de Versailles, 75015 Paris, France'
612
623
  }),
613
- request_type: z.string().openapi({
614
- description: 'Type of parking area schedule (assembly/dismantling)',
615
- example: 'assembly'
616
- }),
617
624
  duration: z.number().openapi({
618
625
  description: 'Duration of the booking in minutes',
619
626
  example: 30
@@ -642,7 +649,7 @@ export const parkingBookingDetailsDataSchema = z
642
649
  description: 'Timestamp when exit was scanned',
643
650
  example: '2025-12-15T08:25:00.000Z'
644
651
  }),
645
- slot_key: z.string().openapi({
652
+ slot_key: z.string().nullable().openapi({
646
653
  description: 'Unique key identifying the booked time slot',
647
654
  example: 'MainEntrance_2025-12-15_08:00'
648
655
  }),
@@ -654,13 +661,25 @@ export const parkingBookingDetailsDataSchema = z
654
661
  description: 'Assigned door for the booking',
655
662
  example: 'North Gate'
656
663
  }),
657
- parking_schedule_type: z.enum(ParkingAreaScheduleType).openapi({
664
+ parking_schedule_type: z.enum(ParkingAreaScheduleType).nullable().openapi({
658
665
  description: 'Type of parking area schedule',
659
666
  example: 'assembly'
660
667
  }),
661
668
  is_custom_slot: z.boolean().openapi({
662
669
  description: 'Indicates if the booking is for a custom time slot',
663
670
  example: false
671
+ }),
672
+ is_fast_track_access: z.boolean().openapi({
673
+ description: 'Indicates if the booking has fast track access',
674
+ example: true
675
+ }),
676
+ license_plate_image_url: z.string().nullable().openapi({
677
+ description: 'URL of the license plate image',
678
+ example: 'https://example.com/license-plate.jpg'
679
+ }),
680
+ applicant_badge_image_url: z.string().nullable().openapi({
681
+ description: 'URL of the applicant badge image',
682
+ example: 'https://example.com/applicant-badge.jpg'
664
683
  })
665
684
  })
666
685
  .openapi('ParkingBookingDetailsData');
@@ -676,6 +695,25 @@ export const getParkingBookingDetailsByTokenBodySchema = z
676
695
  })
677
696
  })
678
697
  .openapi('GetParkingBookingDetailsByTokenBody');
698
+ // Extends parkingBookingDetailsDataSchema with stricter validation:
699
+ // - company: full schema (not partial)
700
+ // - vehicle: full schema (not partial)
701
+ // - slot_key: non-nullable
702
+ export const parkingBookingDetailsByTokenDataSchema = parkingBookingDetailsDataSchema
703
+ .extend({
704
+ company: companyDetailsSchema.openapi({
705
+ description: 'Company details (all fields required)'
706
+ }),
707
+ vehicle: vehicleDetailsSchema.openapi({
708
+ description: 'Vehicle details (all fields required)'
709
+ }),
710
+ slot_key: z.string().openapi({
711
+ description: 'Unique key identifying the booked time slot',
712
+ example: 'MainEntrance_2025-12-15_08:00'
713
+ })
714
+ })
715
+ .openapi('ParkingBookingDetailsByTokenData');
716
+ export const getParkingBookingDetailsByTokenResponseSchema = createSuccessResponseSchema(parkingBookingDetailsByTokenDataSchema, 'GetParkingBookingDetailsByTokenResponse', 'Booking details retrieved by access token with complete company and vehicle information');
679
717
  // ------------------------------
680
718
  // Get booking details by QR schemas
681
719
  // ------------------------------
@@ -939,3 +977,46 @@ export const updateBookingTimeDataSchema = z
939
977
  })
940
978
  .openapi('UpdateBookingTimeData');
941
979
  export const updateBookingTimeResponseSchema = createMessageDataResponseSchema(updateBookingTimeDataSchema, 'UpdateBookingTimeResponse', 'Booking time updated successfully', 'Details of the updated booking time');
980
+ // ------------------------------
981
+ // Fast-Track Parking Booking schemas
982
+ // ------------------------------
983
+ export const createFastTrackBookingBodySchema = z
984
+ .object({
985
+ phone_number: z.string().min(1, 'Phone number is required').openapi({
986
+ description: 'Contact phone number for fast-track booking',
987
+ example: '+33123456789'
988
+ }),
989
+ event_id: z.number().positive().openapi({
990
+ description: 'ID of the event for the fast-track booking',
991
+ example: 1
992
+ }),
993
+ license_plate_image_url: z.url().optional().openapi({
994
+ description: 'URL of the license plate image (optional)',
995
+ example: 'https://example.com/plates/abc123.jpg'
996
+ }),
997
+ applicant_badge_image_url: z.url().optional().openapi({
998
+ description: 'URL of the applicant badge image (optional)',
999
+ example: 'https://example.com/badges/applicant456.jpg'
1000
+ })
1001
+ })
1002
+ .openapi('CreateFastTrackBookingBody');
1003
+ export const createFastTrackBookingDataSchema = z
1004
+ .object({
1005
+ id: z.number(),
1006
+ status: z.string(),
1007
+ company: companyDetailsWithMinimalFields,
1008
+ booking_date: z.string(),
1009
+ start_time: z.string(),
1010
+ end_time: z.string(),
1011
+ event_id: z.number(),
1012
+ parking_spot: z.string(),
1013
+ license_plate_image_url: z.string().nullable(),
1014
+ applicant_badge_image_url: z.string().nullable(),
1015
+ is_fast_track_access: z.boolean(),
1016
+ created_at: z.string(),
1017
+ created_by: z.string().nullable(),
1018
+ parking_schedule_type: z.enum(ParkingAreaScheduleType).nullable(),
1019
+ door: z.string()
1020
+ })
1021
+ .openapi('CreateFastTrackBookingData');
1022
+ export const createFastTrackBookingResponseSchema = createMessageDataResponseSchema(createFastTrackBookingDataSchema, 'CreateFastTrackBookingResponse', 'Fast-track parking booking created successfully', 'Details of the created fast-track booking');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@venulog/phasing-engine-schemas",
3
- "version": "0.13.0-alpha.4",
3
+ "version": "0.13.0-alpha.6",
4
4
  "description": "Shared schemas and types for Phasing Engine API",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",