order3000 1.7.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/schemas.mjs CHANGED
@@ -13,7 +13,14 @@ const actorTypeSchema = z.enum(["human", "robot"]);
13
13
 
14
14
  const adChannelSchema = z.enum(["google", "facebook", "instagram"]);
15
15
 
16
- const adOwnerTypeSchema = z.enum(["event", "ritual"]);
16
+ const adOwnerTypeSchema = z.enum([
17
+ "event",
18
+ "ritual",
19
+ "venue",
20
+ "dish",
21
+ "beverage",
22
+ "menu"
23
+ ]);
17
24
 
18
25
  const adStatusSchema = z.enum(["draft", "ready", "archived"]);
19
26
 
@@ -132,6 +139,8 @@ const areaBookingStatusSchema = z.enum([
132
139
  "no_show"
133
140
  ]);
134
141
 
142
+ const areaTypeSchema = z.enum(["indoor", "outdoor"]);
143
+
135
144
  const assetTypeSchema = z.enum(["image", "video", "document"]);
136
145
 
137
146
  const areaSchema = z.object({
@@ -167,6 +176,11 @@ const areaSchema = z.object({
167
176
  isBookable: z.optional(z.boolean()),
168
177
  isPublic: z.optional(z.boolean()),
169
178
  isActive: z.optional(z.boolean()),
179
+ get areaType() {
180
+ return areaTypeSchema.optional();
181
+ },
182
+ turnTimes: z.object({}).catchall(z.number()).nullish(),
183
+ cleanup: z.int().min(-9007199254740991).max(9007199254740991).nullish(),
170
184
  assets: z.optional(
171
185
  z.array(
172
186
  z.object({
@@ -195,6 +209,16 @@ const areaSchema = z.object({
195
209
  publicUrl: z.url()
196
210
  })
197
211
  )
212
+ ),
213
+ closures: z.optional(
214
+ z.array(
215
+ z.object({
216
+ id: z.string(),
217
+ date: z.string(),
218
+ reason: z.nullable(z.object({}).catchall(z.string())),
219
+ isActive: z.boolean()
220
+ })
221
+ )
198
222
  )
199
223
  }).describe(
200
224
  "A bookable + public area for a venue. Assets are only included when the request expands them. Operational flags (`isActive`, `isPublic`, `isBookable`) and audit columns are only populated for authenticated venue staff."
@@ -614,11 +638,31 @@ const createAdResponseSchema = z.object({
614
638
  z.array(z.any()),
615
639
  z.object({}).catchall(z.any())
616
640
  ]),
641
+ disabledVenueNegativeKeywords: z.union([
642
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
643
+ z.array(z.any()),
644
+ z.object({}).catchall(z.any())
645
+ ]),
617
646
  dismissedKeywords: z.union([
618
647
  z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
619
648
  z.array(z.any()),
620
649
  z.object({}).catchall(z.any())
621
650
  ]),
651
+ keywordMetrics: z.union([
652
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
653
+ z.array(z.any()),
654
+ z.object({}).catchall(z.any())
655
+ ]),
656
+ websitePageIds: z.union([
657
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
658
+ z.array(z.any()),
659
+ z.object({}).catchall(z.any())
660
+ ]),
661
+ calloutIds: z.union([
662
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
663
+ z.array(z.any()),
664
+ z.object({}).catchall(z.any())
665
+ ]),
622
666
  publishedContentHash: z.nullable(z.string()),
623
667
  publishedAt: z.nullable(z.any()),
624
668
  pushedKeywords: z.nullable(
@@ -628,12 +672,33 @@ const createAdResponseSchema = z.object({
628
672
  z.object({}).catchall(z.any())
629
673
  ])
630
674
  ),
675
+ dailyBudget: z.nullable(z.int().min(-2147483648).max(2147483647)),
631
676
  createdBy: z.nullable(z.string()),
632
677
  updatedBy: z.nullable(z.string()),
633
678
  createdAt: z.nullable(z.any()),
634
679
  updatedAt: z.nullable(z.any())
635
680
  }).describe("Successfully created ad");
636
681
 
682
+ const createCalloutRequestSchema = z.object({
683
+ venueAccessor: z.string().min(1),
684
+ id: z.optional(z.string().min(1)),
685
+ label: z.object({}).catchall(z.string().max(25))
686
+ });
687
+
688
+ const createCalloutResponseSchema = z.object({
689
+ id: z.string(),
690
+ venueId: z.string(),
691
+ label: z.union([
692
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
693
+ z.array(z.any()),
694
+ z.object({}).catchall(z.any())
695
+ ]),
696
+ createdBy: z.nullable(z.string()),
697
+ updatedBy: z.nullable(z.string()),
698
+ createdAt: z.any(),
699
+ updatedAt: z.any()
700
+ });
701
+
637
702
  const createDeltaPaymentIntentRequestSchema = z.object({
638
703
  venueAccessor: z.string().min(1),
639
704
  basketId: z.string().min(1),
@@ -687,6 +752,11 @@ const createEventRequestSchema = z.object({
687
752
  maxGuests: z.int().min(-2147483648).max(2147483647).nullish(),
688
753
  minPartySize: z.int().min(-2147483648).max(2147483647).nullish(),
689
754
  maxPartySize: z.int().min(-2147483648).max(2147483647).nullish(),
755
+ staffByRole: z.union([
756
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
757
+ z.array(z.any()),
758
+ z.object({}).catchall(z.any())
759
+ ]).nullish(),
690
760
  isPublic: z.optional(z.boolean()),
691
761
  reservationsEnabled: z.optional(z.boolean()),
692
762
  bookingOpensAtDays: z.int().min(-2147483648).max(2147483647).nullish(),
@@ -744,6 +814,13 @@ const createEventResponseSchema = z.object({
744
814
  maxGuests: z.nullable(z.int().min(-2147483648).max(2147483647)),
745
815
  minPartySize: z.nullable(z.int().min(-2147483648).max(2147483647)),
746
816
  maxPartySize: z.nullable(z.int().min(-2147483648).max(2147483647)),
817
+ staffByRole: z.nullable(
818
+ z.union([
819
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
820
+ z.array(z.any()),
821
+ z.object({}).catchall(z.any())
822
+ ])
823
+ ),
747
824
  isPublic: z.boolean(),
748
825
  reservationsEnabled: z.boolean(),
749
826
  bookingOpensAtDays: z.nullable(z.int().min(-2147483648).max(2147483647)),
@@ -822,6 +899,49 @@ const createTeamOrderResponseSchema = z.object({
822
899
  teamOrderId: z.uuid()
823
900
  });
824
901
 
902
+ const websitePageOwnerTypeSchema = z.enum([
903
+ "venue",
904
+ "menu",
905
+ "dish",
906
+ "beverage",
907
+ "ingredient",
908
+ "event",
909
+ "ritual"
910
+ ]);
911
+
912
+ const createWebsitePageRequestSchema = z.object({
913
+ venueAccessor: z.string().min(1),
914
+ id: z.optional(z.string().min(1)),
915
+ get ownerType() {
916
+ return websitePageOwnerTypeSchema.optional();
917
+ },
918
+ ownerId: z.string().min(1).nullish(),
919
+ label: z.object({}).catchall(z.string()).nullish(),
920
+ target: z.string().min(1)
921
+ });
922
+
923
+ const createWebsitePageResponseSchema = z.object({
924
+ id: z.string(),
925
+ venueId: z.string(),
926
+ get ownerType() {
927
+ return websitePageOwnerTypeSchema;
928
+ },
929
+ ownerId: z.nullable(z.string()),
930
+ label: z.nullable(
931
+ z.union([
932
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
933
+ z.array(z.any()),
934
+ z.object({}).catchall(z.any())
935
+ ])
936
+ ),
937
+ path: z.nullable(z.string()),
938
+ externalUrl: z.nullable(z.string()),
939
+ createdBy: z.nullable(z.string()),
940
+ updatedBy: z.nullable(z.string()),
941
+ createdAt: z.any(),
942
+ updatedAt: z.any()
943
+ });
944
+
825
945
  const dayOfWeekSchema = z.enum([
826
946
  "monday",
827
947
  "tuesday",
@@ -887,11 +1007,31 @@ const deleteAdResponseSchema = z.object({
887
1007
  z.array(z.any()),
888
1008
  z.object({}).catchall(z.any())
889
1009
  ]),
1010
+ disabledVenueNegativeKeywords: z.union([
1011
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1012
+ z.array(z.any()),
1013
+ z.object({}).catchall(z.any())
1014
+ ]),
890
1015
  dismissedKeywords: z.union([
891
1016
  z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
892
1017
  z.array(z.any()),
893
1018
  z.object({}).catchall(z.any())
894
1019
  ]),
1020
+ keywordMetrics: z.union([
1021
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1022
+ z.array(z.any()),
1023
+ z.object({}).catchall(z.any())
1024
+ ]),
1025
+ websitePageIds: z.union([
1026
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1027
+ z.array(z.any()),
1028
+ z.object({}).catchall(z.any())
1029
+ ]),
1030
+ calloutIds: z.union([
1031
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1032
+ z.array(z.any()),
1033
+ z.object({}).catchall(z.any())
1034
+ ]),
895
1035
  publishedContentHash: z.nullable(z.string()),
896
1036
  publishedAt: z.nullable(z.any()),
897
1037
  pushedKeywords: z.nullable(
@@ -901,6 +1041,7 @@ const deleteAdResponseSchema = z.object({
901
1041
  z.object({}).catchall(z.any())
902
1042
  ])
903
1043
  ),
1044
+ dailyBudget: z.nullable(z.int().min(-2147483648).max(2147483647)),
904
1045
  createdBy: z.nullable(z.string()),
905
1046
  updatedBy: z.nullable(z.string()),
906
1047
  createdAt: z.nullable(z.any()),
@@ -911,6 +1052,20 @@ const deleteAssetResponseSchema = z.object({
911
1052
  success: z.boolean()
912
1053
  });
913
1054
 
1055
+ const deleteCalloutResponseSchema = z.object({
1056
+ id: z.string(),
1057
+ venueId: z.string(),
1058
+ label: z.union([
1059
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1060
+ z.array(z.any()),
1061
+ z.object({}).catchall(z.any())
1062
+ ]),
1063
+ createdBy: z.nullable(z.string()),
1064
+ updatedBy: z.nullable(z.string()),
1065
+ createdAt: z.any(),
1066
+ updatedAt: z.any()
1067
+ });
1068
+
914
1069
  const deleteEventResponseSchema = z.object({
915
1070
  id: z.string(),
916
1071
  venueId: z.string(),
@@ -934,6 +1089,13 @@ const deleteEventResponseSchema = z.object({
934
1089
  maxGuests: z.nullable(z.int().min(-2147483648).max(2147483647)),
935
1090
  minPartySize: z.nullable(z.int().min(-2147483648).max(2147483647)),
936
1091
  maxPartySize: z.nullable(z.int().min(-2147483648).max(2147483647)),
1092
+ staffByRole: z.nullable(
1093
+ z.union([
1094
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1095
+ z.array(z.any()),
1096
+ z.object({}).catchall(z.any())
1097
+ ])
1098
+ ),
937
1099
  isPublic: z.boolean(),
938
1100
  reservationsEnabled: z.boolean(),
939
1101
  bookingOpensAtDays: z.nullable(z.int().min(-2147483648).max(2147483647)),
@@ -954,6 +1116,28 @@ const deleteEventResponseSchema = z.object({
954
1116
  updatedAt: z.nullable(z.any())
955
1117
  });
956
1118
 
1119
+ const deleteWebsitePageResponseSchema = z.object({
1120
+ id: z.string(),
1121
+ venueId: z.string(),
1122
+ get ownerType() {
1123
+ return websitePageOwnerTypeSchema;
1124
+ },
1125
+ ownerId: z.nullable(z.string()),
1126
+ label: z.nullable(
1127
+ z.union([
1128
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1129
+ z.array(z.any()),
1130
+ z.object({}).catchall(z.any())
1131
+ ])
1132
+ ),
1133
+ path: z.nullable(z.string()),
1134
+ externalUrl: z.nullable(z.string()),
1135
+ createdBy: z.nullable(z.string()),
1136
+ updatedBy: z.nullable(z.string()),
1137
+ createdAt: z.any(),
1138
+ updatedAt: z.any()
1139
+ });
1140
+
957
1141
  const depositTransactionTypeSchema = z.enum([
958
1142
  "charged",
959
1143
  "refunded",
@@ -1043,11 +1227,31 @@ const editAdResponseSchema = z.object({
1043
1227
  z.array(z.any()),
1044
1228
  z.object({}).catchall(z.any())
1045
1229
  ]),
1230
+ disabledVenueNegativeKeywords: z.union([
1231
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1232
+ z.array(z.any()),
1233
+ z.object({}).catchall(z.any())
1234
+ ]),
1046
1235
  dismissedKeywords: z.union([
1047
1236
  z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1048
1237
  z.array(z.any()),
1049
1238
  z.object({}).catchall(z.any())
1050
1239
  ]),
1240
+ keywordMetrics: z.union([
1241
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1242
+ z.array(z.any()),
1243
+ z.object({}).catchall(z.any())
1244
+ ]),
1245
+ websitePageIds: z.union([
1246
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1247
+ z.array(z.any()),
1248
+ z.object({}).catchall(z.any())
1249
+ ]),
1250
+ calloutIds: z.union([
1251
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1252
+ z.array(z.any()),
1253
+ z.object({}).catchall(z.any())
1254
+ ]),
1051
1255
  publishedContentHash: z.nullable(z.string()),
1052
1256
  publishedAt: z.nullable(z.any()),
1053
1257
  pushedKeywords: z.nullable(
@@ -1057,6 +1261,7 @@ const editAdResponseSchema = z.object({
1057
1261
  z.object({}).catchall(z.any())
1058
1262
  ])
1059
1263
  ),
1264
+ dailyBudget: z.nullable(z.int().min(-2147483648).max(2147483647)),
1060
1265
  createdBy: z.nullable(z.string()),
1061
1266
  updatedBy: z.nullable(z.string()),
1062
1267
  createdAt: z.nullable(z.any()),
@@ -1144,6 +1349,11 @@ const editEventRequestSchema = z.object({
1144
1349
  maxGuests: z.int().min(-2147483648).max(2147483647).nullish(),
1145
1350
  minPartySize: z.int().min(-2147483648).max(2147483647).nullish(),
1146
1351
  maxPartySize: z.int().min(-2147483648).max(2147483647).nullish(),
1352
+ staffByRole: z.union([
1353
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1354
+ z.array(z.any()),
1355
+ z.object({}).catchall(z.any())
1356
+ ]).nullish(),
1147
1357
  isPublic: z.optional(z.boolean()),
1148
1358
  reservationsEnabled: z.optional(z.boolean()),
1149
1359
  bookingOpensAtDays: z.int().min(-2147483648).max(2147483647).nullish(),
@@ -1177,6 +1387,120 @@ const editEventRequestSchema = z.object({
1177
1387
  ritualAccessor: z.string().nullish()
1178
1388
  }).describe("Partial-update body for an existing event");
1179
1389
 
1390
+ const scheduleSchema = z.object({
1391
+ id: z.string(),
1392
+ name: z.union([
1393
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1394
+ z.array(z.any()),
1395
+ z.object({}).catchall(z.any())
1396
+ ]),
1397
+ description: z.nullable(
1398
+ z.union([
1399
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1400
+ z.array(z.any()),
1401
+ z.object({}).catchall(z.any())
1402
+ ])
1403
+ ),
1404
+ timezone: z.string(),
1405
+ rrule: z.nullable(z.string()),
1406
+ exdates: z.nullable(z.array(z.string())),
1407
+ validFrom: z.nullable(z.string()),
1408
+ validTo: z.nullable(z.string()),
1409
+ get slotMode() {
1410
+ return slotModeSchema;
1411
+ },
1412
+ intervalDuration: z.nullable(z.int().min(-2147483648).max(2147483647)),
1413
+ duration: z.nullable(z.int().min(-2147483648).max(2147483647)),
1414
+ isActive: z.boolean(),
1415
+ sortIndex: z.nullable(z.string().max(255)),
1416
+ updatedAt: z.nullable(z.any()),
1417
+ updatedBy: z.nullable(z.string()),
1418
+ createdAt: z.nullable(z.any()),
1419
+ createdBy: z.nullable(z.string()),
1420
+ scheduleTimeSlots: z.optional(
1421
+ z.array(
1422
+ z.object({
1423
+ scheduleId: z.nullable(z.string()),
1424
+ timeSlotId: z.nullable(z.string()),
1425
+ get dayOfWeek() {
1426
+ return dayOfWeekSchema;
1427
+ },
1428
+ sortIndex: z.nullable(z.string().max(255)),
1429
+ timeSlot: z.nullable(
1430
+ z.object({
1431
+ id: z.string(),
1432
+ startTime: z.string(),
1433
+ endTime: z.nullable(z.string()),
1434
+ isActive: z.nullable(z.boolean()),
1435
+ isSchedulable: z.nullable(z.boolean()),
1436
+ maxBookings: z.nullable(z.int().min(-2147483648).max(2147483647)),
1437
+ maxGuests: z.nullable(z.int().min(-2147483648).max(2147483647)),
1438
+ overflowBookings: z.nullable(
1439
+ z.int().min(-2147483648).max(2147483647)
1440
+ ),
1441
+ overflowGuests: z.nullable(
1442
+ z.int().min(-2147483648).max(2147483647)
1443
+ ),
1444
+ sortIndex: z.nullable(z.string().max(255)),
1445
+ updatedAt: z.nullable(z.any()),
1446
+ updatedBy: z.nullable(z.string()),
1447
+ createdAt: z.nullable(z.any()),
1448
+ createdBy: z.nullable(z.string())
1449
+ })
1450
+ )
1451
+ })
1452
+ )
1453
+ ),
1454
+ scheduleOverrides: z.optional(
1455
+ z.array(
1456
+ z.object({
1457
+ id: z.string(),
1458
+ scheduleId: z.string(),
1459
+ date: z.string(),
1460
+ reason: z.nullable(
1461
+ z.union([
1462
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1463
+ z.array(z.any()),
1464
+ z.object({}).catchall(z.any())
1465
+ ])
1466
+ ),
1467
+ isActive: z.boolean(),
1468
+ updatedAt: z.nullable(z.any()),
1469
+ updatedBy: z.nullable(z.string()),
1470
+ createdAt: z.nullable(z.any()),
1471
+ createdBy: z.nullable(z.string()),
1472
+ scheduleOverrideTimeSlots: z.array(
1473
+ z.object({
1474
+ overrideId: z.string(),
1475
+ timeSlotId: z.string(),
1476
+ sortIndex: z.nullable(z.string().max(255)),
1477
+ timeSlot: z.object({
1478
+ id: z.string(),
1479
+ startTime: z.string(),
1480
+ endTime: z.nullable(z.string()),
1481
+ isActive: z.nullable(z.boolean()),
1482
+ isSchedulable: z.nullable(z.boolean()),
1483
+ maxBookings: z.nullable(z.int().min(-2147483648).max(2147483647)),
1484
+ maxGuests: z.nullable(z.int().min(-2147483648).max(2147483647)),
1485
+ overflowBookings: z.nullable(
1486
+ z.int().min(-2147483648).max(2147483647)
1487
+ ),
1488
+ overflowGuests: z.nullable(
1489
+ z.int().min(-2147483648).max(2147483647)
1490
+ ),
1491
+ sortIndex: z.nullable(z.string().max(255)),
1492
+ updatedAt: z.nullable(z.any()),
1493
+ updatedBy: z.nullable(z.string()),
1494
+ createdAt: z.nullable(z.any()),
1495
+ createdBy: z.nullable(z.string())
1496
+ })
1497
+ })
1498
+ )
1499
+ })
1500
+ )
1501
+ )
1502
+ });
1503
+
1180
1504
  const editEventResponseSchema = z.object({
1181
1505
  id: z.string(),
1182
1506
  venueId: z.string(),
@@ -1200,6 +1524,13 @@ const editEventResponseSchema = z.object({
1200
1524
  maxGuests: z.nullable(z.int().min(-2147483648).max(2147483647)),
1201
1525
  minPartySize: z.nullable(z.int().min(-2147483648).max(2147483647)),
1202
1526
  maxPartySize: z.nullable(z.int().min(-2147483648).max(2147483647)),
1527
+ staffByRole: z.nullable(
1528
+ z.union([
1529
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1530
+ z.array(z.any()),
1531
+ z.object({}).catchall(z.any())
1532
+ ])
1533
+ ),
1203
1534
  isPublic: z.boolean(),
1204
1535
  reservationsEnabled: z.boolean(),
1205
1536
  bookingOpensAtDays: z.nullable(z.int().min(-2147483648).max(2147483647)),
@@ -1218,65 +1549,9 @@ const editEventResponseSchema = z.object({
1218
1549
  updatedBy: z.nullable(z.string()),
1219
1550
  createdAt: z.nullable(z.any()),
1220
1551
  updatedAt: z.nullable(z.any()),
1221
- schedule: z.nullable(
1222
- z.object({
1223
- id: z.string(),
1224
- name: z.union([
1225
- z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1226
- z.array(z.any()),
1227
- z.object({}).catchall(z.any())
1228
- ]),
1229
- description: z.nullable(
1230
- z.union([
1231
- z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1232
- z.array(z.any()),
1233
- z.object({}).catchall(z.any())
1234
- ])
1235
- ),
1236
- timezone: z.string(),
1237
- rrule: z.nullable(z.string()),
1238
- exdates: z.nullable(z.array(z.string())),
1239
- validFrom: z.nullable(z.string()),
1240
- validTo: z.nullable(z.string()),
1241
- get slotMode() {
1242
- return slotModeSchema;
1243
- },
1244
- intervalDuration: z.nullable(z.int().min(-2147483648).max(2147483647)),
1245
- duration: z.nullable(z.int().min(-2147483648).max(2147483647)),
1246
- isActive: z.boolean(),
1247
- sortIndex: z.nullable(z.string().max(255)),
1248
- updatedAt: z.nullable(z.any()),
1249
- updatedBy: z.nullable(z.string()),
1250
- createdAt: z.nullable(z.any()),
1251
- createdBy: z.nullable(z.string()),
1252
- scheduleTimeSlots: z.optional(
1253
- z.array(
1254
- z.object({
1255
- scheduleId: z.nullable(z.string()),
1256
- timeSlotId: z.nullable(z.string()),
1257
- get dayOfWeek() {
1258
- return dayOfWeekSchema;
1259
- },
1260
- sortIndex: z.nullable(z.string().max(255)),
1261
- timeSlot: z.nullable(
1262
- z.object({
1263
- id: z.string(),
1264
- startTime: z.string(),
1265
- endTime: z.nullable(z.string()),
1266
- isActive: z.nullable(z.boolean()),
1267
- isSchedulable: z.nullable(z.boolean()),
1268
- sortIndex: z.nullable(z.string().max(255)),
1269
- updatedAt: z.nullable(z.any()),
1270
- updatedBy: z.nullable(z.string()),
1271
- createdAt: z.nullable(z.any()),
1272
- createdBy: z.nullable(z.string())
1273
- })
1274
- )
1275
- })
1276
- )
1277
- )
1278
- })
1279
- )
1552
+ get schedule() {
1553
+ return scheduleSchema.nullable();
1554
+ }
1280
1555
  }).describe("Successfully updated event with schedule");
1281
1556
 
1282
1557
  const editMetaAdRequestSchema = z.object({
@@ -1356,11 +1631,31 @@ const editMetaAdResponseSchema = z.object({
1356
1631
  z.array(z.any()),
1357
1632
  z.object({}).catchall(z.any())
1358
1633
  ]),
1634
+ disabledVenueNegativeKeywords: z.union([
1635
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1636
+ z.array(z.any()),
1637
+ z.object({}).catchall(z.any())
1638
+ ]),
1359
1639
  dismissedKeywords: z.union([
1360
1640
  z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1361
1641
  z.array(z.any()),
1362
1642
  z.object({}).catchall(z.any())
1363
1643
  ]),
1644
+ keywordMetrics: z.union([
1645
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1646
+ z.array(z.any()),
1647
+ z.object({}).catchall(z.any())
1648
+ ]),
1649
+ websitePageIds: z.union([
1650
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1651
+ z.array(z.any()),
1652
+ z.object({}).catchall(z.any())
1653
+ ]),
1654
+ calloutIds: z.union([
1655
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1656
+ z.array(z.any()),
1657
+ z.object({}).catchall(z.any())
1658
+ ]),
1364
1659
  publishedContentHash: z.nullable(z.string()),
1365
1660
  publishedAt: z.nullable(z.any()),
1366
1661
  pushedKeywords: z.nullable(
@@ -1370,6 +1665,7 @@ const editMetaAdResponseSchema = z.object({
1370
1665
  z.object({}).catchall(z.any())
1371
1666
  ])
1372
1667
  ),
1668
+ dailyBudget: z.nullable(z.int().min(-2147483648).max(2147483647)),
1373
1669
  createdBy: z.nullable(z.string()),
1374
1670
  updatedBy: z.nullable(z.string()),
1375
1671
  createdAt: z.nullable(z.any()),
@@ -1484,11 +1780,31 @@ const fetchAdResponseSchema = z.object({
1484
1780
  z.array(z.any()),
1485
1781
  z.object({}).catchall(z.any())
1486
1782
  ]),
1783
+ disabledVenueNegativeKeywords: z.union([
1784
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1785
+ z.array(z.any()),
1786
+ z.object({}).catchall(z.any())
1787
+ ]),
1487
1788
  dismissedKeywords: z.union([
1488
1789
  z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1489
1790
  z.array(z.any()),
1490
1791
  z.object({}).catchall(z.any())
1491
1792
  ]),
1793
+ keywordMetrics: z.union([
1794
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1795
+ z.array(z.any()),
1796
+ z.object({}).catchall(z.any())
1797
+ ]),
1798
+ websitePageIds: z.union([
1799
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1800
+ z.array(z.any()),
1801
+ z.object({}).catchall(z.any())
1802
+ ]),
1803
+ calloutIds: z.union([
1804
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1805
+ z.array(z.any()),
1806
+ z.object({}).catchall(z.any())
1807
+ ]),
1492
1808
  publishedContentHash: z.nullable(z.string()),
1493
1809
  publishedAt: z.nullable(z.any()),
1494
1810
  pushedKeywords: z.nullable(
@@ -1498,6 +1814,7 @@ const fetchAdResponseSchema = z.object({
1498
1814
  z.object({}).catchall(z.any())
1499
1815
  ])
1500
1816
  ),
1817
+ dailyBudget: z.nullable(z.int().min(-2147483648).max(2147483647)),
1501
1818
  createdBy: z.nullable(z.string()),
1502
1819
  updatedBy: z.nullable(z.string()),
1503
1820
  createdAt: z.nullable(z.any()),
@@ -1560,11 +1877,31 @@ const fetchAdsResponseSchema = z.array(
1560
1877
  z.array(z.any()),
1561
1878
  z.object({}).catchall(z.any())
1562
1879
  ]),
1880
+ disabledVenueNegativeKeywords: z.union([
1881
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1882
+ z.array(z.any()),
1883
+ z.object({}).catchall(z.any())
1884
+ ]),
1563
1885
  dismissedKeywords: z.union([
1564
1886
  z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1565
1887
  z.array(z.any()),
1566
1888
  z.object({}).catchall(z.any())
1567
1889
  ]),
1890
+ keywordMetrics: z.union([
1891
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1892
+ z.array(z.any()),
1893
+ z.object({}).catchall(z.any())
1894
+ ]),
1895
+ websitePageIds: z.union([
1896
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1897
+ z.array(z.any()),
1898
+ z.object({}).catchall(z.any())
1899
+ ]),
1900
+ calloutIds: z.union([
1901
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
1902
+ z.array(z.any()),
1903
+ z.object({}).catchall(z.any())
1904
+ ]),
1568
1905
  publishedContentHash: z.nullable(z.string()),
1569
1906
  publishedAt: z.nullable(z.any()),
1570
1907
  pushedKeywords: z.nullable(
@@ -1574,6 +1911,7 @@ const fetchAdsResponseSchema = z.array(
1574
1911
  z.object({}).catchall(z.any())
1575
1912
  ])
1576
1913
  ),
1914
+ dailyBudget: z.nullable(z.int().min(-2147483648).max(2147483647)),
1577
1915
  createdBy: z.nullable(z.string()),
1578
1916
  updatedBy: z.nullable(z.string()),
1579
1917
  createdAt: z.nullable(z.any()),
@@ -1637,6 +1975,11 @@ const fetchAreaResponseSchema = z.object({
1637
1975
  isBookable: z.optional(z.boolean()),
1638
1976
  isPublic: z.optional(z.boolean()),
1639
1977
  isActive: z.optional(z.boolean()),
1978
+ get areaType() {
1979
+ return areaTypeSchema.optional();
1980
+ },
1981
+ turnTimes: z.object({}).catchall(z.number()).nullish(),
1982
+ cleanup: z.int().min(-9007199254740991).max(9007199254740991).nullish(),
1640
1983
  assets: z.optional(
1641
1984
  z.array(
1642
1985
  z.object({
@@ -1665,6 +2008,16 @@ const fetchAreaResponseSchema = z.object({
1665
2008
  publicUrl: z.url()
1666
2009
  })
1667
2010
  )
2011
+ ),
2012
+ closures: z.optional(
2013
+ z.array(
2014
+ z.object({
2015
+ id: z.string(),
2016
+ date: z.string(),
2017
+ reason: z.nullable(z.object({}).catchall(z.string())),
2018
+ isActive: z.boolean()
2019
+ })
2020
+ )
1668
2021
  )
1669
2022
  }).describe(
1670
2023
  "A bookable + public area for a venue. Assets are only included when the request expands them. Operational flags (`isActive`, `isPublic`, `isBookable`) and audit columns are only populated for authenticated venue staff."
@@ -2597,6 +2950,13 @@ const fetchRitualResponseSchema = z.object({
2597
2950
  maxGuests: z.nullable(z.int().min(-2147483648).max(2147483647)),
2598
2951
  minPartySize: z.nullable(z.int().min(-2147483648).max(2147483647)),
2599
2952
  maxPartySize: z.nullable(z.int().min(-2147483648).max(2147483647)),
2953
+ staffByRole: z.nullable(
2954
+ z.union([
2955
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
2956
+ z.array(z.any()),
2957
+ z.object({}).catchall(z.any())
2958
+ ])
2959
+ ),
2600
2960
  isPublic: z.boolean(),
2601
2961
  reservationsEnabled: z.boolean(),
2602
2962
  bookingOpensAtDays: z.nullable(z.int().min(-2147483648).max(2147483647)),
@@ -2620,103 +2980,26 @@ const fetchRitualResponseSchema = z.object({
2620
2980
  covers: z.number()
2621
2981
  })
2622
2982
  ),
2623
- schedule: z.nullable(
2624
- z.object({
2625
- id: z.string(),
2626
- name: z.union([
2627
- z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
2628
- z.array(z.any()),
2629
- z.object({}).catchall(z.any())
2630
- ]),
2631
- description: z.nullable(
2632
- z.union([
2633
- z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
2634
- z.array(z.any()),
2635
- z.object({}).catchall(z.any())
2636
- ])
2637
- ),
2638
- timezone: z.string(),
2639
- rrule: z.nullable(z.string()),
2640
- exdates: z.nullable(z.array(z.string())),
2641
- validFrom: z.nullable(z.string()),
2642
- validTo: z.nullable(z.string()),
2643
- get slotMode() {
2644
- return slotModeSchema;
2645
- },
2646
- intervalDuration: z.nullable(z.int().min(-2147483648).max(2147483647)),
2647
- duration: z.nullable(z.int().min(-2147483648).max(2147483647)),
2648
- isActive: z.boolean(),
2649
- sortIndex: z.nullable(z.string().max(255)),
2650
- updatedAt: z.nullable(z.any()),
2651
- updatedBy: z.nullable(z.string()),
2652
- createdAt: z.nullable(z.any()),
2653
- createdBy: z.nullable(z.string()),
2654
- scheduleTimeSlots: z.array(
2655
- z.object({
2656
- scheduleId: z.nullable(z.string()),
2657
- timeSlotId: z.nullable(z.string()),
2658
- get dayOfWeek() {
2659
- return dayOfWeekSchema;
2660
- },
2661
- sortIndex: z.nullable(z.string().max(255)),
2662
- timeSlot: z.nullable(
2663
- z.object({
2664
- id: z.string(),
2665
- startTime: z.string(),
2666
- endTime: z.nullable(z.string()),
2667
- isActive: z.nullable(z.boolean()),
2668
- isSchedulable: z.nullable(z.boolean()),
2669
- sortIndex: z.nullable(z.string().max(255)),
2670
- updatedAt: z.nullable(z.any()),
2671
- updatedBy: z.nullable(z.string()),
2672
- createdAt: z.nullable(z.any()),
2673
- createdBy: z.nullable(z.string())
2674
- })
2675
- )
2676
- })
2677
- ),
2678
- scheduleOverrides: z.array(
2679
- z.object({
2680
- id: z.string(),
2681
- scheduleId: z.string(),
2682
- date: z.string(),
2683
- reason: z.nullable(
2684
- z.union([
2685
- z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
2686
- z.array(z.any()),
2687
- z.object({}).catchall(z.any())
2688
- ])
2689
- ),
2690
- isActive: z.boolean(),
2691
- updatedAt: z.nullable(z.any()),
2692
- updatedBy: z.nullable(z.string()),
2693
- createdAt: z.nullable(z.any()),
2694
- createdBy: z.nullable(z.string()),
2695
- scheduleOverrideTimeSlots: z.array(
2696
- z.object({
2697
- overrideId: z.string(),
2698
- timeSlotId: z.string(),
2699
- sortIndex: z.nullable(z.string().max(255)),
2700
- timeSlot: z.object({
2701
- id: z.string(),
2702
- startTime: z.string(),
2703
- endTime: z.nullable(z.string()),
2704
- isActive: z.nullable(z.boolean()),
2705
- isSchedulable: z.nullable(z.boolean()),
2706
- sortIndex: z.nullable(z.string().max(255)),
2707
- updatedAt: z.nullable(z.any()),
2708
- updatedBy: z.nullable(z.string()),
2709
- createdAt: z.nullable(z.any()),
2710
- createdBy: z.nullable(z.string())
2711
- })
2712
- })
2713
- )
2714
- })
2715
- )
2716
- })
2717
- )
2983
+ get schedule() {
2984
+ return scheduleSchema.nullable();
2985
+ }
2718
2986
  });
2719
2987
 
2988
+ const occupancyReasonSchema = z.enum(["ok", "tables", "personnel"]);
2989
+
2990
+ const fetchSlotAvailabilityResponseSchema = z.array(
2991
+ z.object({
2992
+ startTime: z.string().describe("Slot start time in HH:MM:SS format"),
2993
+ acceptable: z.boolean().describe("Whether a party of this size can be booked at this slot"),
2994
+ offered: z.boolean().describe(
2995
+ "Whether the public widget should offer this slot \u2014 passive: always; auto_steer: only when acceptable"
2996
+ ),
2997
+ get reason() {
2998
+ return occupancyReasonSchema;
2999
+ }
3000
+ })
3001
+ );
3002
+
2720
3003
  const fetchTeamOrderResponseSchema = z.object({
2721
3004
  teamOrder: z.object({
2722
3005
  id: z.string(),
@@ -2851,7 +3134,7 @@ const gbpSyncStatusSchema = z.enum([
2851
3134
  "removed"
2852
3135
  ]);
2853
3136
 
2854
- const geoAreaKindSchema = z.enum(["postcode", "city", "region"]);
3137
+ const geoAreaTypeSchema = z.enum(["postcode", "city", "region"]);
2855
3138
 
2856
3139
  const getAreaAvailabilityResponseSchema = z.object({
2857
3140
  from: z.string().regex(/^\d{4}-\d{2}-\d{2}$/),
@@ -2900,6 +3183,22 @@ const getBasketTotalsResponseSchema = z.object({
2900
3183
  )
2901
3184
  });
2902
3185
 
3186
+ const getCalloutsResponseSchema = z.array(
3187
+ z.object({
3188
+ id: z.string(),
3189
+ venueId: z.string(),
3190
+ label: z.union([
3191
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3192
+ z.array(z.any()),
3193
+ z.object({}).catchall(z.any())
3194
+ ]),
3195
+ createdBy: z.nullable(z.string()),
3196
+ updatedBy: z.nullable(z.string()),
3197
+ createdAt: z.any(),
3198
+ updatedAt: z.any()
3199
+ })
3200
+ );
3201
+
2903
3202
  const subscriptionCreditStatusSchema = z.enum([
2904
3203
  "available",
2905
3204
  "redeemed",
@@ -2977,6 +3276,30 @@ const getVenueResponseSchema = z.object({
2977
3276
  "A venue. The public API exposes only the minimal id + accessor + naming + locale fields the CLI's `venues use` / `auth whoami` consume."
2978
3277
  );
2979
3278
 
3279
+ const getWebsitePagesResponseSchema = z.array(
3280
+ z.object({
3281
+ id: z.string(),
3282
+ venueId: z.string(),
3283
+ get ownerType() {
3284
+ return websitePageOwnerTypeSchema;
3285
+ },
3286
+ ownerId: z.nullable(z.string()),
3287
+ label: z.nullable(
3288
+ z.union([
3289
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3290
+ z.array(z.any()),
3291
+ z.object({}).catchall(z.any())
3292
+ ])
3293
+ ),
3294
+ path: z.nullable(z.string()),
3295
+ externalUrl: z.nullable(z.string()),
3296
+ createdBy: z.nullable(z.string()),
3297
+ updatedBy: z.nullable(z.string()),
3298
+ createdAt: z.any(),
3299
+ updatedAt: z.any()
3300
+ })
3301
+ );
3302
+
2980
3303
  const integrationNotificationTypeSchema = z.enum([
2981
3304
  "order_created",
2982
3305
  "order_cancelled",
@@ -3033,6 +3356,8 @@ const joinTeamOrderResponseSchema = z.object({
3033
3356
 
3034
3357
  const jurisdictionSchema = z.enum(["DE", "CH", "FR", "IT"]);
3035
3358
 
3359
+ const keywordPolaritySchema = z.enum(["positive", "negative"]);
3360
+
3036
3361
  const localeSchema = z.enum([
3037
3362
  "aa",
3038
3363
  "ab",
@@ -3225,6 +3550,9 @@ const makeReservationRequestSchema = z.object({
3225
3550
  "Venue identifier \u2014 UUID or URL-friendly slug (accessor). Resolved server-side."
3226
3551
  ),
3227
3552
  eventId: z.uuid().describe("UUID of the event this reservation is for"),
3553
+ areaId: z.uuid().describe(
3554
+ "UUID of the area to seat this party in. Defaults to the event's primary area (the one with the most tables) when omitted; the occupancy gate evaluates capacity against this area."
3555
+ ).nullish(),
3228
3556
  reservationDate: z.string().describe("Date of the reservation in YYYY-MM-DD format"),
3229
3557
  reservationTime: z.string().describe("Time of the reservation in HH:MM:SS format"),
3230
3558
  partySize: z.int().min(1).max(20).describe("Number of guests in the party. Must be between 1 and 20."),
@@ -3278,6 +3606,7 @@ const makeReservationResponseSchema = z.object({
3278
3606
  id: z.uuid().describe("Unique identifier for the reservation"),
3279
3607
  venueId: z.uuid().describe("Restaurant/tenant identifier"),
3280
3608
  eventId: z.uuid().describe("Event identifier for this reservation"),
3609
+ areaId: z.nullable(z.string()),
3281
3610
  quickReferenceNumber: z.nullable(z.int().min(-2147483648).max(2147483647)),
3282
3611
  reservationDate: z.string().describe("Date of the reservation in YYYY-MM-DD format"),
3283
3612
  reservationTime: z.string().describe("Time of the reservation in HH:MM:SS format"),
@@ -3355,7 +3684,7 @@ const mentionFieldFormatterSchema = z.enum([
3355
3684
  "boolean"
3356
3685
  ]);
3357
3686
 
3358
- const mentionKindSchema = z.enum(["link", "value"]);
3687
+ const mentionTypeSchema = z.enum(["link", "value"]);
3359
3688
 
3360
3689
  const patchArticleFeatureImageBodySchema = z.object({
3361
3690
  caption: z.optional(z.object({}).catchall(z.any())),
@@ -3364,6 +3693,8 @@ const patchArticleFeatureImageBodySchema = z.object({
3364
3693
  "Locale-keyed merge of the asset-side `caption` and `alt` records. Each locale value may be a plain string OR a TipTap doc; strings are wrapped server-side. Setting `en` does not touch `de`."
3365
3694
  );
3366
3695
 
3696
+ const paxBandSchema = z.enum(["1-2", "3-4", "5-6", "7+"]);
3697
+
3367
3698
  const pendingSuperadminTransferStatusSchema = z.enum([
3368
3699
  "pending_invite",
3369
3700
  "accepted_awaiting_payment",
@@ -3409,6 +3740,8 @@ const placeOrderResponseSchema = z.object({
3409
3740
  }
3410
3741
  });
3411
3742
 
3743
+ const platformRoleSchema = z.enum(["platform_maintainer"]);
3744
+
3412
3745
  const reduceDeltaPaymentIntentRequestSchema = z.object({
3413
3746
  venueAccessor: z.string().min(1),
3414
3747
  basketId: z.string().min(1),
@@ -3443,12 +3776,35 @@ const removeFromBasketResponseSchema = z.object({
3443
3776
 
3444
3777
  const reservationMessageStatusSchema = z.enum(["draft", "sent"]);
3445
3778
 
3779
+ const reservationModeSchema = z.enum(["passive", "auto_steer"]);
3780
+
3446
3781
  const reservationPromotionStatusSchema = z.enum([
3447
3782
  "applied",
3448
3783
  "redeemed",
3449
3784
  "expired"
3450
3785
  ]);
3451
3786
 
3787
+ const roleSchema = z.enum([
3788
+ "superadmin",
3789
+ "admin",
3790
+ "manager",
3791
+ "chef",
3792
+ "cook",
3793
+ "waiter",
3794
+ "rider"
3795
+ ]);
3796
+
3797
+ const saveAdCalloutsRequestSchema = z.object({
3798
+ venueAccessor: z.string().min(1),
3799
+ adId: z.string().min(1),
3800
+ calloutIds: z.array(z.string().min(1))
3801
+ });
3802
+
3803
+ const saveAdCalloutsResponseSchema = z.object({
3804
+ success: z.boolean(),
3805
+ calloutIds: z.array(z.string())
3806
+ });
3807
+
3452
3808
  const saveAdKeywordsRequestSchema = z.object({
3453
3809
  venueAccessor: z.string().min(1),
3454
3810
  adId: z.string().min(1),
@@ -3464,8 +3820,135 @@ const saveAdKeywordsResponseSchema = z.object({
3464
3820
  disabledVenueKeywords: z.array(z.string())
3465
3821
  });
3466
3822
 
3823
+ const saveAdNegativeKeywordsRequestSchema = z.object({
3824
+ venueAccessor: z.string().min(1),
3825
+ adId: z.string().min(1),
3826
+ negativeKeywords: z.array(z.string().min(1)),
3827
+ disabledVenueNegativeKeywords: z.array(z.string().min(1))
3828
+ });
3829
+
3830
+ const saveAdNegativeKeywordsResponseSchema = z.object({
3831
+ success: z.boolean(),
3832
+ negativeKeywords: z.array(z.string()),
3833
+ disabledVenueNegativeKeywords: z.array(z.string()),
3834
+ syncedToGoogle: z.boolean()
3835
+ });
3836
+
3837
+ const saveAdWebsitePagesRequestSchema = z.object({
3838
+ venueAccessor: z.string().min(1),
3839
+ adId: z.string().min(1),
3840
+ websitePageIds: z.array(z.string().min(1))
3841
+ });
3842
+
3843
+ const saveAdWebsitePagesResponseSchema = z.object({
3844
+ success: z.boolean(),
3845
+ websitePageIds: z.array(z.string())
3846
+ });
3847
+
3467
3848
  const scanTokenEntityTypeSchema = z.enum(["order", "depositware"]);
3468
3849
 
3850
+ const setAdBudgetRequestSchema = z.object({
3851
+ venueAccessor: z.string().min(1),
3852
+ adId: z.string().min(1),
3853
+ dailyBudget: z.int().max(9007199254740991).gt(0)
3854
+ });
3855
+
3856
+ const setAdBudgetResponseSchema = z.object({
3857
+ id: z.string(),
3858
+ venueId: z.string(),
3859
+ get ownerEntityType() {
3860
+ return adOwnerTypeSchema;
3861
+ },
3862
+ ownerEntityId: z.string(),
3863
+ get channel() {
3864
+ return adChannelSchema;
3865
+ },
3866
+ get status() {
3867
+ return adStatusSchema;
3868
+ },
3869
+ campaignId: z.nullable(z.string()),
3870
+ content: z.union([
3871
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3872
+ z.array(z.any()),
3873
+ z.object({}).catchall(z.any())
3874
+ ]),
3875
+ metaContent: z.nullable(
3876
+ z.union([
3877
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3878
+ z.array(z.any()),
3879
+ z.object({}).catchall(z.any())
3880
+ ])
3881
+ ),
3882
+ metaRefs: z.nullable(
3883
+ z.union([
3884
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3885
+ z.array(z.any()),
3886
+ z.object({}).catchall(z.any())
3887
+ ])
3888
+ ),
3889
+ servedMarket: z.nullable(
3890
+ z.union([
3891
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3892
+ z.array(z.any()),
3893
+ z.object({}).catchall(z.any())
3894
+ ])
3895
+ ),
3896
+ keywords: z.union([
3897
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3898
+ z.array(z.any()),
3899
+ z.object({}).catchall(z.any())
3900
+ ]),
3901
+ negativeKeywords: z.union([
3902
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3903
+ z.array(z.any()),
3904
+ z.object({}).catchall(z.any())
3905
+ ]),
3906
+ disabledVenueKeywords: z.union([
3907
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3908
+ z.array(z.any()),
3909
+ z.object({}).catchall(z.any())
3910
+ ]),
3911
+ disabledVenueNegativeKeywords: z.union([
3912
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3913
+ z.array(z.any()),
3914
+ z.object({}).catchall(z.any())
3915
+ ]),
3916
+ dismissedKeywords: z.union([
3917
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3918
+ z.array(z.any()),
3919
+ z.object({}).catchall(z.any())
3920
+ ]),
3921
+ keywordMetrics: z.union([
3922
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3923
+ z.array(z.any()),
3924
+ z.object({}).catchall(z.any())
3925
+ ]),
3926
+ websitePageIds: z.union([
3927
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3928
+ z.array(z.any()),
3929
+ z.object({}).catchall(z.any())
3930
+ ]),
3931
+ calloutIds: z.union([
3932
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3933
+ z.array(z.any()),
3934
+ z.object({}).catchall(z.any())
3935
+ ]),
3936
+ publishedContentHash: z.nullable(z.string()),
3937
+ publishedAt: z.nullable(z.any()),
3938
+ pushedKeywords: z.nullable(
3939
+ z.union([
3940
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
3941
+ z.array(z.any()),
3942
+ z.object({}).catchall(z.any())
3943
+ ])
3944
+ ),
3945
+ dailyBudget: z.nullable(z.int().min(-2147483648).max(2147483647)),
3946
+ createdBy: z.nullable(z.string()),
3947
+ updatedBy: z.nullable(z.string()),
3948
+ createdAt: z.nullable(z.any()),
3949
+ updatedAt: z.nullable(z.any())
3950
+ });
3951
+
3469
3952
  const setArticleFeatureImageUploadBodySchema = z.object({
3470
3953
  file: z.string().describe("Image file (multipart/form-data field)")
3471
3954
  });
@@ -3658,6 +4141,26 @@ const teamOrderPaymentStatusSchema = z.enum([
3658
4141
  "failed"
3659
4142
  ]);
3660
4143
 
4144
+ const updateCalloutRequestSchema = z.object({
4145
+ venueAccessor: z.string().min(1),
4146
+ id: z.string().min(1),
4147
+ label: z.object({}).catchall(z.string().max(25))
4148
+ });
4149
+
4150
+ const updateCalloutResponseSchema = z.object({
4151
+ id: z.string(),
4152
+ venueId: z.string(),
4153
+ label: z.union([
4154
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
4155
+ z.array(z.any()),
4156
+ z.object({}).catchall(z.any())
4157
+ ]),
4158
+ createdBy: z.nullable(z.string()),
4159
+ updatedBy: z.nullable(z.string()),
4160
+ createdAt: z.any(),
4161
+ updatedAt: z.any()
4162
+ });
4163
+
3661
4164
  const updateDeliveryAddressTeamOrderRequestSchema = z.object({
3662
4165
  publicId: z.string().min(1),
3663
4166
  sessionId: z.string().min(1),
@@ -3671,6 +4174,35 @@ const updateDeliveryAddressTeamOrderResponseSchema = z.object({
3671
4174
  deliveryAddressId: z.string()
3672
4175
  });
3673
4176
 
4177
+ const updateWebsitePageRequestSchema = z.object({
4178
+ venueAccessor: z.string().min(1),
4179
+ id: z.string().min(1),
4180
+ label: z.object({}).catchall(z.string()).nullish(),
4181
+ target: z.string().min(1)
4182
+ });
4183
+
4184
+ const updateWebsitePageResponseSchema = z.object({
4185
+ id: z.string(),
4186
+ venueId: z.string(),
4187
+ get ownerType() {
4188
+ return websitePageOwnerTypeSchema;
4189
+ },
4190
+ ownerId: z.nullable(z.string()),
4191
+ label: z.nullable(
4192
+ z.union([
4193
+ z.union([z.boolean(), z.string(), z.number(), z.enum([])]),
4194
+ z.array(z.any()),
4195
+ z.object({}).catchall(z.any())
4196
+ ])
4197
+ ),
4198
+ path: z.nullable(z.string()),
4199
+ externalUrl: z.nullable(z.string()),
4200
+ createdBy: z.nullable(z.string()),
4201
+ updatedBy: z.nullable(z.string()),
4202
+ createdAt: z.any(),
4203
+ updatedAt: z.any()
4204
+ });
4205
+
3674
4206
  const uploadAssetResponseSchema = z.object({
3675
4207
  asset: z.object({
3676
4208
  id: z.string(),
@@ -3725,7 +4257,7 @@ const venueAssetTypeSchema = z.enum([
3725
4257
  "combinationmark_vertical"
3726
4258
  ]);
3727
4259
 
3728
- const venueChargeKindSchema = z.enum(["base", "addon"]);
4260
+ const venueChargeTypeSchema = z.enum(["base", "addon"]);
3729
4261
 
3730
4262
  const venueEmailSenderStatusSchema = z.enum([
3731
4263
  "pending",
@@ -3758,6 +4290,7 @@ const schemas = {
3758
4290
  AreaBookingRequestStatus: areaBookingRequestStatusSchema,
3759
4291
  AreaBookingStatus: areaBookingStatusSchema,
3760
4292
  Area: areaSchema,
4293
+ AreaType: areaTypeSchema,
3761
4294
  ArticleEditorSaveState: articleEditorSaveStateSchema,
3762
4295
  ArticleMentionCounts: articleMentionCountsSchema,
3763
4296
  ArticleStatus: articleStatusSchema,
@@ -3779,6 +4312,8 @@ const schemas = {
3779
4312
  CountryCode: countryCodeSchema,
3780
4313
  CreateAdRequest: createAdRequestSchema,
3781
4314
  CreateAdResponse: createAdResponseSchema,
4315
+ CreateCalloutRequest: createCalloutRequestSchema,
4316
+ CreateCalloutResponse: createCalloutResponseSchema,
3782
4317
  CreateDeltaPaymentIntentRequest: createDeltaPaymentIntentRequestSchema,
3783
4318
  CreateDeltaPaymentIntentResponse: createDeltaPaymentIntentResponseSchema,
3784
4319
  CreateEventRequest: createEventRequestSchema,
@@ -3787,11 +4322,15 @@ const schemas = {
3787
4322
  CreatePaymentIntentResponse: createPaymentIntentResponseSchema,
3788
4323
  CreateTeamOrderRequest: createTeamOrderRequestSchema,
3789
4324
  CreateTeamOrderResponse: createTeamOrderResponseSchema,
4325
+ CreateWebsitePageRequest: createWebsitePageRequestSchema,
4326
+ CreateWebsitePageResponse: createWebsitePageResponseSchema,
3790
4327
  Currency: currencySchema,
3791
4328
  DayOfWeek: dayOfWeekSchema,
3792
4329
  DeleteAdResponse: deleteAdResponseSchema,
3793
4330
  DeleteAssetResponse: deleteAssetResponseSchema,
4331
+ DeleteCalloutResponse: deleteCalloutResponseSchema,
3794
4332
  DeleteEventResponse: deleteEventResponseSchema,
4333
+ DeleteWebsitePageResponse: deleteWebsitePageResponseSchema,
3795
4334
  DeliveryAddress: deliveryAddressSchema,
3796
4335
  DepositTransactionType: depositTransactionTypeSchema,
3797
4336
  DepositwareStatus: depositwareStatusSchema,
@@ -3828,17 +4367,20 @@ const schemas = {
3828
4367
  FetchMenuResponse: fetchMenuResponseSchema,
3829
4368
  FetchMenuSubscriptionsResponse: fetchMenuSubscriptionsResponseSchema,
3830
4369
  FetchRitualResponse: fetchRitualResponseSchema,
4370
+ FetchSlotAvailabilityResponse: fetchSlotAvailabilityResponseSchema,
3831
4371
  FetchTeamOrderResponse: fetchTeamOrderResponseSchema,
3832
4372
  FulfillmentType: fulfillmentTypeSchema,
3833
4373
  GbpMediaCategory: gbpMediaCategorySchema,
3834
4374
  GbpSyncStatus: gbpSyncStatusSchema,
3835
- GeoAreaKind: geoAreaKindSchema,
4375
+ GeoAreaType: geoAreaTypeSchema,
3836
4376
  GetAreaAvailabilityResponse: getAreaAvailabilityResponseSchema,
3837
4377
  GetBasketTotalsRequest: getBasketTotalsRequestSchema,
3838
4378
  GetBasketTotalsResponse: getBasketTotalsResponseSchema,
4379
+ GetCalloutsResponse: getCalloutsResponseSchema,
3839
4380
  GetSubscriptionCreditsResponse: getSubscriptionCreditsResponseSchema,
3840
4381
  GetSubscriptionResponse: getSubscriptionResponseSchema,
3841
4382
  GetVenueResponse: getVenueResponseSchema,
4383
+ GetWebsitePagesResponse: getWebsitePagesResponseSchema,
3842
4384
  IntegrationNotificationType: integrationNotificationTypeSchema,
3843
4385
  IntegrationType: integrationTypeSchema,
3844
4386
  InventoryAssetStatus: inventoryAssetStatusSchema,
@@ -3847,33 +4389,48 @@ const schemas = {
3847
4389
  JoinTeamOrderRequest: joinTeamOrderRequestSchema,
3848
4390
  JoinTeamOrderResponse: joinTeamOrderResponseSchema,
3849
4391
  Jurisdiction: jurisdictionSchema,
4392
+ KeywordPolarity: keywordPolaritySchema,
3850
4393
  Locale: localeSchema,
3851
4394
  MakeReservationRequest: makeReservationRequestSchema,
3852
4395
  MakeReservationResponse: makeReservationResponseSchema,
3853
4396
  MentionEntityType: mentionEntityTypeSchema,
3854
4397
  MentionFieldFormatter: mentionFieldFormatterSchema,
3855
- MentionKind: mentionKindSchema,
4398
+ MentionType: mentionTypeSchema,
3856
4399
  MenuItemType: menuItemTypeSchema,
4400
+ OccupancyReason: occupancyReasonSchema,
3857
4401
  OgImage: ogImageSchema,
3858
4402
  OrderStatus: orderStatusSchema,
3859
4403
  ParticipantStatus: participantStatusSchema,
3860
4404
  PatchArticleFeatureImageBody: patchArticleFeatureImageBodySchema,
4405
+ PaxBand: paxBandSchema,
3861
4406
  PaymentMethod: paymentMethodSchema,
3862
4407
  PaymentStatus: paymentStatusSchema,
3863
4408
  PendingSuperadminTransferStatus: pendingSuperadminTransferStatusSchema,
3864
4409
  PlaceOrderRequest: placeOrderRequestSchema,
3865
4410
  PlaceOrderResponse: placeOrderResponseSchema,
4411
+ PlatformRole: platformRoleSchema,
3866
4412
  PromotionBenefitType: promotionBenefitTypeSchema,
3867
4413
  ReduceDeltaPaymentIntentRequest: reduceDeltaPaymentIntentRequestSchema,
3868
4414
  ReduceDeltaPaymentIntentResponse: reduceDeltaPaymentIntentResponseSchema,
3869
4415
  RemoveFromBasketResponse: removeFromBasketResponseSchema,
3870
4416
  ReservationMessageStatus: reservationMessageStatusSchema,
4417
+ ReservationMode: reservationModeSchema,
3871
4418
  ReservationPromotionStatus: reservationPromotionStatusSchema,
3872
4419
  ReservationStatus: reservationStatusSchema,
3873
4420
  RitualType: ritualTypeSchema,
4421
+ Role: roleSchema,
4422
+ SaveAdCalloutsRequest: saveAdCalloutsRequestSchema,
4423
+ SaveAdCalloutsResponse: saveAdCalloutsResponseSchema,
3874
4424
  SaveAdKeywordsRequest: saveAdKeywordsRequestSchema,
3875
4425
  SaveAdKeywordsResponse: saveAdKeywordsResponseSchema,
4426
+ SaveAdNegativeKeywordsRequest: saveAdNegativeKeywordsRequestSchema,
4427
+ SaveAdNegativeKeywordsResponse: saveAdNegativeKeywordsResponseSchema,
4428
+ SaveAdWebsitePagesRequest: saveAdWebsitePagesRequestSchema,
4429
+ SaveAdWebsitePagesResponse: saveAdWebsitePagesResponseSchema,
3876
4430
  ScanTokenEntityType: scanTokenEntityTypeSchema,
4431
+ Schedule: scheduleSchema,
4432
+ SetAdBudgetRequest: setAdBudgetRequestSchema,
4433
+ SetAdBudgetResponse: setAdBudgetResponseSchema,
3877
4434
  SetArticleFeatureImageUploadBody: setArticleFeatureImageUploadBodySchema,
3878
4435
  SetBasketDeclaredReturnsRequest: setBasketDeclaredReturnsRequestSchema,
3879
4436
  SetBasketDeclaredReturnsResponse: setBasketDeclaredReturnsResponseSchema,
@@ -3901,14 +4458,19 @@ const schemas = {
3901
4458
  TeamOrderPaymentStatus: teamOrderPaymentStatusSchema,
3902
4459
  TeamOrderStatus: teamOrderStatusSchema,
3903
4460
  Unit: unitSchema,
4461
+ UpdateCalloutRequest: updateCalloutRequestSchema,
4462
+ UpdateCalloutResponse: updateCalloutResponseSchema,
3904
4463
  UpdateDeliveryAddressTeamOrderRequest: updateDeliveryAddressTeamOrderRequestSchema,
3905
4464
  UpdateDeliveryAddressTeamOrderResponse: updateDeliveryAddressTeamOrderResponseSchema,
4465
+ UpdateWebsitePageRequest: updateWebsitePageRequestSchema,
4466
+ UpdateWebsitePageResponse: updateWebsitePageResponseSchema,
3906
4467
  UploadAssetResponse: uploadAssetResponseSchema,
3907
4468
  VenueAssetType: venueAssetTypeSchema,
3908
- VenueChargeKind: venueChargeKindSchema,
4469
+ VenueChargeType: venueChargeTypeSchema,
3909
4470
  VenueEmailSenderStatus: venueEmailSenderStatusSchema,
3910
4471
  VenueType: venueTypeSchema,
3911
- VenueUserStatus: venueUserStatusSchema
4472
+ VenueUserStatus: venueUserStatusSchema,
4473
+ WebsitePageOwnerType: websitePageOwnerTypeSchema
3912
4474
  };
3913
4475
 
3914
4476
  export { schemas };