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/client.d.cts CHANGED
@@ -92,14 +92,27 @@ interface components {
92
92
  disabledVenueKeywords: (string | number | boolean | (null)) | {
93
93
  [key: string]: unknown;
94
94
  } | unknown[];
95
+ disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
96
+ [key: string]: unknown;
97
+ } | unknown[];
95
98
  dismissedKeywords: (string | number | boolean | (null)) | {
96
99
  [key: string]: unknown;
97
100
  } | unknown[];
101
+ keywordMetrics: (string | number | boolean | (null)) | {
102
+ [key: string]: unknown;
103
+ } | unknown[];
104
+ websitePageIds: (string | number | boolean | (null)) | {
105
+ [key: string]: unknown;
106
+ } | unknown[];
107
+ calloutIds: (string | number | boolean | (null)) | {
108
+ [key: string]: unknown;
109
+ } | unknown[];
98
110
  publishedContentHash: string | null;
99
111
  publishedAt: unknown;
100
112
  pushedKeywords: ((string | number | boolean | (null)) | {
101
113
  [key: string]: unknown;
102
114
  } | unknown[]) | null;
115
+ dailyBudget: number | null;
103
116
  createdBy: string | null;
104
117
  updatedBy: string | null;
105
118
  createdAt: unknown;
@@ -135,14 +148,27 @@ interface components {
135
148
  disabledVenueKeywords: (string | number | boolean | (null)) | {
136
149
  [key: string]: unknown;
137
150
  } | unknown[];
151
+ disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
152
+ [key: string]: unknown;
153
+ } | unknown[];
138
154
  dismissedKeywords: (string | number | boolean | (null)) | {
139
155
  [key: string]: unknown;
140
156
  } | unknown[];
157
+ keywordMetrics: (string | number | boolean | (null)) | {
158
+ [key: string]: unknown;
159
+ } | unknown[];
160
+ websitePageIds: (string | number | boolean | (null)) | {
161
+ [key: string]: unknown;
162
+ } | unknown[];
163
+ calloutIds: (string | number | boolean | (null)) | {
164
+ [key: string]: unknown;
165
+ } | unknown[];
141
166
  publishedContentHash: string | null;
142
167
  publishedAt: unknown;
143
168
  pushedKeywords: ((string | number | boolean | (null)) | {
144
169
  [key: string]: unknown;
145
170
  } | unknown[]) | null;
171
+ dailyBudget: number | null;
146
172
  createdBy: string | null;
147
173
  updatedBy: string | null;
148
174
  createdAt: unknown;
@@ -191,14 +217,27 @@ interface components {
191
217
  disabledVenueKeywords: (string | number | boolean | (null)) | {
192
218
  [key: string]: unknown;
193
219
  } | unknown[];
220
+ disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
221
+ [key: string]: unknown;
222
+ } | unknown[];
194
223
  dismissedKeywords: (string | number | boolean | (null)) | {
195
224
  [key: string]: unknown;
196
225
  } | unknown[];
226
+ keywordMetrics: (string | number | boolean | (null)) | {
227
+ [key: string]: unknown;
228
+ } | unknown[];
229
+ websitePageIds: (string | number | boolean | (null)) | {
230
+ [key: string]: unknown;
231
+ } | unknown[];
232
+ calloutIds: (string | number | boolean | (null)) | {
233
+ [key: string]: unknown;
234
+ } | unknown[];
197
235
  publishedContentHash: string | null;
198
236
  publishedAt: unknown;
199
237
  pushedKeywords: ((string | number | boolean | (null)) | {
200
238
  [key: string]: unknown;
201
239
  } | unknown[]) | null;
240
+ dailyBudget: number | null;
202
241
  createdBy: string | null;
203
242
  updatedBy: string | null;
204
243
  createdAt: unknown;
@@ -262,14 +301,27 @@ interface components {
262
301
  disabledVenueKeywords: (string | number | boolean | (null)) | {
263
302
  [key: string]: unknown;
264
303
  } | unknown[];
304
+ disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
305
+ [key: string]: unknown;
306
+ } | unknown[];
265
307
  dismissedKeywords: (string | number | boolean | (null)) | {
266
308
  [key: string]: unknown;
267
309
  } | unknown[];
310
+ keywordMetrics: (string | number | boolean | (null)) | {
311
+ [key: string]: unknown;
312
+ } | unknown[];
313
+ websitePageIds: (string | number | boolean | (null)) | {
314
+ [key: string]: unknown;
315
+ } | unknown[];
316
+ calloutIds: (string | number | boolean | (null)) | {
317
+ [key: string]: unknown;
318
+ } | unknown[];
268
319
  publishedContentHash: string | null;
269
320
  publishedAt: unknown;
270
321
  pushedKeywords: ((string | number | boolean | (null)) | {
271
322
  [key: string]: unknown;
272
323
  } | unknown[]) | null;
324
+ dailyBudget: number | null;
273
325
  createdBy: string | null;
274
326
  updatedBy: string | null;
275
327
  createdAt: unknown;
@@ -336,14 +388,27 @@ interface components {
336
388
  disabledVenueKeywords: (string | number | boolean | (null)) | {
337
389
  [key: string]: unknown;
338
390
  } | unknown[];
391
+ disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
392
+ [key: string]: unknown;
393
+ } | unknown[];
339
394
  dismissedKeywords: (string | number | boolean | (null)) | {
340
395
  [key: string]: unknown;
341
396
  } | unknown[];
397
+ keywordMetrics: (string | number | boolean | (null)) | {
398
+ [key: string]: unknown;
399
+ } | unknown[];
400
+ websitePageIds: (string | number | boolean | (null)) | {
401
+ [key: string]: unknown;
402
+ } | unknown[];
403
+ calloutIds: (string | number | boolean | (null)) | {
404
+ [key: string]: unknown;
405
+ } | unknown[];
342
406
  publishedContentHash: string | null;
343
407
  publishedAt: unknown;
344
408
  pushedKeywords: ((string | number | boolean | (null)) | {
345
409
  [key: string]: unknown;
346
410
  } | unknown[]) | null;
411
+ dailyBudget: number | null;
347
412
  createdBy: string | null;
348
413
  updatedBy: string | null;
349
414
  createdAt: unknown;
@@ -364,6 +429,105 @@ interface components {
364
429
  dismissedKeywords: string[];
365
430
  disabledVenueKeywords: string[];
366
431
  };
432
+ /** SaveAdCalloutsRequest */
433
+ SaveAdCalloutsRequest: {
434
+ venueAccessor: string;
435
+ adId: string;
436
+ calloutIds: string[];
437
+ };
438
+ /** SaveAdCalloutsResponse */
439
+ SaveAdCalloutsResponse: {
440
+ success: boolean;
441
+ calloutIds: string[];
442
+ };
443
+ /** SaveAdNegativeKeywordsRequest */
444
+ SaveAdNegativeKeywordsRequest: {
445
+ venueAccessor: string;
446
+ adId: string;
447
+ negativeKeywords: string[];
448
+ /** @default [] */
449
+ disabledVenueNegativeKeywords: string[];
450
+ };
451
+ /** SaveAdNegativeKeywordsResponse */
452
+ SaveAdNegativeKeywordsResponse: {
453
+ success: boolean;
454
+ negativeKeywords: string[];
455
+ disabledVenueNegativeKeywords: string[];
456
+ syncedToGoogle: boolean;
457
+ };
458
+ /** SaveAdWebsitePagesRequest */
459
+ SaveAdWebsitePagesRequest: {
460
+ venueAccessor: string;
461
+ adId: string;
462
+ websitePageIds: string[];
463
+ };
464
+ /** SaveAdWebsitePagesResponse */
465
+ SaveAdWebsitePagesResponse: {
466
+ success: boolean;
467
+ websitePageIds: string[];
468
+ };
469
+ /** SetAdBudgetRequest */
470
+ SetAdBudgetRequest: {
471
+ venueAccessor: string;
472
+ adId: string;
473
+ dailyBudget: number;
474
+ };
475
+ /** SetAdBudgetResponse */
476
+ SetAdBudgetResponse: {
477
+ id: string;
478
+ venueId: string;
479
+ ownerEntityType: components["schemas"]["AdOwnerType"];
480
+ ownerEntityId: string;
481
+ channel: components["schemas"]["AdChannel"];
482
+ status: components["schemas"]["AdStatus"];
483
+ campaignId: string | null;
484
+ content: (string | number | boolean | (null)) | {
485
+ [key: string]: unknown;
486
+ } | unknown[];
487
+ metaContent: ((string | number | boolean | (null)) | {
488
+ [key: string]: unknown;
489
+ } | unknown[]) | null;
490
+ metaRefs: ((string | number | boolean | (null)) | {
491
+ [key: string]: unknown;
492
+ } | unknown[]) | null;
493
+ servedMarket: ((string | number | boolean | (null)) | {
494
+ [key: string]: unknown;
495
+ } | unknown[]) | null;
496
+ keywords: (string | number | boolean | (null)) | {
497
+ [key: string]: unknown;
498
+ } | unknown[];
499
+ negativeKeywords: (string | number | boolean | (null)) | {
500
+ [key: string]: unknown;
501
+ } | unknown[];
502
+ disabledVenueKeywords: (string | number | boolean | (null)) | {
503
+ [key: string]: unknown;
504
+ } | unknown[];
505
+ disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
506
+ [key: string]: unknown;
507
+ } | unknown[];
508
+ dismissedKeywords: (string | number | boolean | (null)) | {
509
+ [key: string]: unknown;
510
+ } | unknown[];
511
+ keywordMetrics: (string | number | boolean | (null)) | {
512
+ [key: string]: unknown;
513
+ } | unknown[];
514
+ websitePageIds: (string | number | boolean | (null)) | {
515
+ [key: string]: unknown;
516
+ } | unknown[];
517
+ calloutIds: (string | number | boolean | (null)) | {
518
+ [key: string]: unknown;
519
+ } | unknown[];
520
+ publishedContentHash: string | null;
521
+ publishedAt: unknown;
522
+ pushedKeywords: ((string | number | boolean | (null)) | {
523
+ [key: string]: unknown;
524
+ } | unknown[]) | null;
525
+ dailyBudget: number | null;
526
+ createdBy: string | null;
527
+ updatedBy: string | null;
528
+ createdAt: unknown;
529
+ updatedAt: unknown;
530
+ };
367
531
  /** DeleteAdResponse */
368
532
  DeleteAdResponse: {
369
533
  id: string;
@@ -394,14 +558,27 @@ interface components {
394
558
  disabledVenueKeywords: (string | number | boolean | (null)) | {
395
559
  [key: string]: unknown;
396
560
  } | unknown[];
561
+ disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
562
+ [key: string]: unknown;
563
+ } | unknown[];
397
564
  dismissedKeywords: (string | number | boolean | (null)) | {
398
565
  [key: string]: unknown;
399
566
  } | unknown[];
567
+ keywordMetrics: (string | number | boolean | (null)) | {
568
+ [key: string]: unknown;
569
+ } | unknown[];
570
+ websitePageIds: (string | number | boolean | (null)) | {
571
+ [key: string]: unknown;
572
+ } | unknown[];
573
+ calloutIds: (string | number | boolean | (null)) | {
574
+ [key: string]: unknown;
575
+ } | unknown[];
400
576
  publishedContentHash: string | null;
401
577
  publishedAt: unknown;
402
578
  pushedKeywords: ((string | number | boolean | (null)) | {
403
579
  [key: string]: unknown;
404
580
  } | unknown[]) | null;
581
+ dailyBudget: number | null;
405
582
  createdBy: string | null;
406
583
  updatedBy: string | null;
407
584
  createdAt: unknown;
@@ -442,6 +619,11 @@ interface components {
442
619
  isBookable?: boolean;
443
620
  isPublic?: boolean;
444
621
  isActive?: boolean;
622
+ areaType?: components["schemas"]["AreaType"];
623
+ turnTimes?: {
624
+ [key: string]: number;
625
+ } | null;
626
+ cleanup?: number | null;
445
627
  assets?: {
446
628
  id: string;
447
629
  type: components["schemas"]["AssetType"];
@@ -462,6 +644,14 @@ interface components {
462
644
  /** Format: uri */
463
645
  publicUrl: string;
464
646
  }[];
647
+ closures?: {
648
+ id: string;
649
+ date: string;
650
+ reason: {
651
+ [key: string]: string;
652
+ } | null;
653
+ isActive: boolean;
654
+ }[];
465
655
  };
466
656
  /** FetchAreasResponse */
467
657
  FetchAreasResponse: components["schemas"]["Area"][];
@@ -500,6 +690,11 @@ interface components {
500
690
  isBookable?: boolean;
501
691
  isPublic?: boolean;
502
692
  isActive?: boolean;
693
+ areaType?: components["schemas"]["AreaType"];
694
+ turnTimes?: {
695
+ [key: string]: number;
696
+ } | null;
697
+ cleanup?: number | null;
503
698
  assets?: {
504
699
  id: string;
505
700
  type: components["schemas"]["AssetType"];
@@ -520,6 +715,14 @@ interface components {
520
715
  /** Format: uri */
521
716
  publicUrl: string;
522
717
  }[];
718
+ closures?: {
719
+ id: string;
720
+ date: string;
721
+ reason: {
722
+ [key: string]: string;
723
+ } | null;
724
+ isActive: boolean;
725
+ }[];
523
726
  };
524
727
  /** GetAreaAvailabilityResponse */
525
728
  GetAreaAvailabilityResponse: {
@@ -965,6 +1168,70 @@ interface components {
965
1168
  count: number;
966
1169
  }[];
967
1170
  };
1171
+ /** GetCalloutsResponse */
1172
+ GetCalloutsResponse: {
1173
+ id: string;
1174
+ venueId: string;
1175
+ label: (string | number | boolean | (null)) | {
1176
+ [key: string]: unknown;
1177
+ } | unknown[];
1178
+ createdBy: string | null;
1179
+ updatedBy: string | null;
1180
+ createdAt: unknown;
1181
+ updatedAt: unknown;
1182
+ }[];
1183
+ /** CreateCalloutRequest */
1184
+ CreateCalloutRequest: {
1185
+ venueAccessor: string;
1186
+ id?: string;
1187
+ label: {
1188
+ [key: string]: string;
1189
+ };
1190
+ };
1191
+ /** CreateCalloutResponse */
1192
+ CreateCalloutResponse: {
1193
+ id: string;
1194
+ venueId: string;
1195
+ label: (string | number | boolean | (null)) | {
1196
+ [key: string]: unknown;
1197
+ } | unknown[];
1198
+ createdBy: string | null;
1199
+ updatedBy: string | null;
1200
+ createdAt: unknown;
1201
+ updatedAt: unknown;
1202
+ };
1203
+ /** UpdateCalloutRequest */
1204
+ UpdateCalloutRequest: {
1205
+ venueAccessor: string;
1206
+ id: string;
1207
+ label: {
1208
+ [key: string]: string;
1209
+ };
1210
+ };
1211
+ /** UpdateCalloutResponse */
1212
+ UpdateCalloutResponse: {
1213
+ id: string;
1214
+ venueId: string;
1215
+ label: (string | number | boolean | (null)) | {
1216
+ [key: string]: unknown;
1217
+ } | unknown[];
1218
+ createdBy: string | null;
1219
+ updatedBy: string | null;
1220
+ createdAt: unknown;
1221
+ updatedAt: unknown;
1222
+ };
1223
+ /** DeleteCalloutResponse */
1224
+ DeleteCalloutResponse: {
1225
+ id: string;
1226
+ venueId: string;
1227
+ label: (string | number | boolean | (null)) | {
1228
+ [key: string]: unknown;
1229
+ } | unknown[];
1230
+ createdBy: string | null;
1231
+ updatedBy: string | null;
1232
+ createdAt: unknown;
1233
+ updatedAt: unknown;
1234
+ };
968
1235
  /** FetchEventsResponse */
969
1236
  FetchEventsResponse: {
970
1237
  id: string;
@@ -1229,6 +1496,16 @@ interface components {
1229
1496
  publicUrl: string;
1230
1497
  }[];
1231
1498
  };
1499
+ /** FetchSlotAvailabilityResponse */
1500
+ FetchSlotAvailabilityResponse: {
1501
+ /** @description Slot start time in HH:MM:SS format */
1502
+ startTime: string;
1503
+ /** @description Whether a party of this size can be booked at this slot */
1504
+ acceptable: boolean;
1505
+ /** @description Whether the public widget should offer this slot — passive: always; auto_steer: only when acceptable */
1506
+ offered: boolean;
1507
+ reason: components["schemas"]["OccupancyReason"];
1508
+ }[];
1232
1509
  /**
1233
1510
  * CreateEventRequest
1234
1511
  * @description Request payload for creating a new event
@@ -1247,6 +1524,9 @@ interface components {
1247
1524
  maxGuests?: number | null;
1248
1525
  minPartySize?: number | null;
1249
1526
  maxPartySize?: number | null;
1527
+ staffByRole?: ((string | number | boolean | (null)) | {
1528
+ [key: string]: unknown;
1529
+ } | unknown[]) | null;
1250
1530
  isPublic?: boolean;
1251
1531
  reservationsEnabled?: boolean;
1252
1532
  bookingOpensAtDays?: number | null;
@@ -1295,6 +1575,9 @@ interface components {
1295
1575
  maxGuests: number | null;
1296
1576
  minPartySize: number | null;
1297
1577
  maxPartySize: number | null;
1578
+ staffByRole: ((string | number | boolean | (null)) | {
1579
+ [key: string]: unknown;
1580
+ } | unknown[]) | null;
1298
1581
  isPublic: boolean;
1299
1582
  reservationsEnabled: boolean;
1300
1583
  bookingOpensAtDays: number | null;
@@ -1328,6 +1611,9 @@ interface components {
1328
1611
  maxGuests?: number | null;
1329
1612
  minPartySize?: number | null;
1330
1613
  maxPartySize?: number | null;
1614
+ staffByRole?: ((string | number | boolean | (null)) | {
1615
+ [key: string]: unknown;
1616
+ } | unknown[]) | null;
1331
1617
  isPublic?: boolean;
1332
1618
  reservationsEnabled?: boolean;
1333
1619
  bookingOpensAtDays?: number | null;
@@ -1354,6 +1640,86 @@ interface components {
1354
1640
  } | null;
1355
1641
  ritualAccessor?: string | null;
1356
1642
  };
1643
+ /** Schedule */
1644
+ Schedule: {
1645
+ id: string;
1646
+ name: (string | number | boolean | (null)) | {
1647
+ [key: string]: unknown;
1648
+ } | unknown[];
1649
+ description: ((string | number | boolean | (null)) | {
1650
+ [key: string]: unknown;
1651
+ } | unknown[]) | null;
1652
+ timezone: string;
1653
+ rrule: string | null;
1654
+ exdates: string[] | null;
1655
+ validFrom: string | null;
1656
+ validTo: string | null;
1657
+ slotMode: components["schemas"]["SlotMode"];
1658
+ intervalDuration: number | null;
1659
+ duration: number | null;
1660
+ isActive: boolean;
1661
+ sortIndex: string | null;
1662
+ updatedAt: unknown;
1663
+ updatedBy: string | null;
1664
+ createdAt: unknown;
1665
+ createdBy: string | null;
1666
+ scheduleTimeSlots?: {
1667
+ scheduleId: string | null;
1668
+ timeSlotId: string | null;
1669
+ dayOfWeek: components["schemas"]["DayOfWeek"];
1670
+ sortIndex: string | null;
1671
+ timeSlot: {
1672
+ id: string;
1673
+ startTime: string;
1674
+ endTime: string | null;
1675
+ isActive: boolean | null;
1676
+ isSchedulable: boolean | null;
1677
+ maxBookings: number | null;
1678
+ maxGuests: number | null;
1679
+ overflowBookings: number | null;
1680
+ overflowGuests: number | null;
1681
+ sortIndex: string | null;
1682
+ updatedAt: unknown;
1683
+ updatedBy: string | null;
1684
+ createdAt: unknown;
1685
+ createdBy: string | null;
1686
+ } | null;
1687
+ }[];
1688
+ scheduleOverrides?: {
1689
+ id: string;
1690
+ scheduleId: string;
1691
+ date: string;
1692
+ reason: ((string | number | boolean | (null)) | {
1693
+ [key: string]: unknown;
1694
+ } | unknown[]) | null;
1695
+ isActive: boolean;
1696
+ updatedAt: unknown;
1697
+ updatedBy: string | null;
1698
+ createdAt: unknown;
1699
+ createdBy: string | null;
1700
+ scheduleOverrideTimeSlots: {
1701
+ overrideId: string;
1702
+ timeSlotId: string;
1703
+ sortIndex: string | null;
1704
+ timeSlot: {
1705
+ id: string;
1706
+ startTime: string;
1707
+ endTime: string | null;
1708
+ isActive: boolean | null;
1709
+ isSchedulable: boolean | null;
1710
+ maxBookings: number | null;
1711
+ maxGuests: number | null;
1712
+ overflowBookings: number | null;
1713
+ overflowGuests: number | null;
1714
+ sortIndex: string | null;
1715
+ updatedAt: unknown;
1716
+ updatedBy: string | null;
1717
+ createdAt: unknown;
1718
+ createdBy: string | null;
1719
+ };
1720
+ }[];
1721
+ }[];
1722
+ };
1357
1723
  /**
1358
1724
  * EditEventResponse
1359
1725
  * @description Successfully updated event with schedule
@@ -1375,6 +1741,9 @@ interface components {
1375
1741
  maxGuests: number | null;
1376
1742
  minPartySize: number | null;
1377
1743
  maxPartySize: number | null;
1744
+ staffByRole: ((string | number | boolean | (null)) | {
1745
+ [key: string]: unknown;
1746
+ } | unknown[]) | null;
1378
1747
  isPublic: boolean;
1379
1748
  reservationsEnabled: boolean;
1380
1749
  bookingOpensAtDays: number | null;
@@ -1389,47 +1758,7 @@ interface components {
1389
1758
  updatedBy: string | null;
1390
1759
  createdAt: unknown;
1391
1760
  updatedAt: unknown;
1392
- schedule: {
1393
- id: string;
1394
- name: (string | number | boolean | (null)) | {
1395
- [key: string]: unknown;
1396
- } | unknown[];
1397
- description: ((string | number | boolean | (null)) | {
1398
- [key: string]: unknown;
1399
- } | unknown[]) | null;
1400
- timezone: string;
1401
- rrule: string | null;
1402
- exdates: string[] | null;
1403
- validFrom: string | null;
1404
- validTo: string | null;
1405
- slotMode: components["schemas"]["SlotMode"];
1406
- intervalDuration: number | null;
1407
- duration: number | null;
1408
- isActive: boolean;
1409
- sortIndex: string | null;
1410
- updatedAt: unknown;
1411
- updatedBy: string | null;
1412
- createdAt: unknown;
1413
- createdBy: string | null;
1414
- scheduleTimeSlots?: {
1415
- scheduleId: string | null;
1416
- timeSlotId: string | null;
1417
- dayOfWeek: components["schemas"]["DayOfWeek"];
1418
- sortIndex: string | null;
1419
- timeSlot: {
1420
- id: string;
1421
- startTime: string;
1422
- endTime: string | null;
1423
- isActive: boolean | null;
1424
- isSchedulable: boolean | null;
1425
- sortIndex: string | null;
1426
- updatedAt: unknown;
1427
- updatedBy: string | null;
1428
- createdAt: unknown;
1429
- createdBy: string | null;
1430
- } | null;
1431
- }[];
1432
- } | null;
1761
+ schedule: components["schemas"]["Schedule"] | null;
1433
1762
  };
1434
1763
  /** DeleteEventResponse */
1435
1764
  DeleteEventResponse: {
@@ -1449,6 +1778,9 @@ interface components {
1449
1778
  maxGuests: number | null;
1450
1779
  minPartySize: number | null;
1451
1780
  maxPartySize: number | null;
1781
+ staffByRole: ((string | number | boolean | (null)) | {
1782
+ [key: string]: unknown;
1783
+ } | unknown[]) | null;
1452
1784
  isPublic: boolean;
1453
1785
  reservationsEnabled: boolean;
1454
1786
  bookingOpensAtDays: number | null;
@@ -1915,6 +2247,11 @@ interface components {
1915
2247
  * @description UUID of the event this reservation is for
1916
2248
  */
1917
2249
  eventId: string;
2250
+ /**
2251
+ * Format: uuid
2252
+ * @description 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.
2253
+ */
2254
+ areaId?: string | null;
1918
2255
  /** @description Date of the reservation in YYYY-MM-DD format */
1919
2256
  reservationDate: string;
1920
2257
  /** @description Time of the reservation in HH:MM:SS format */
@@ -1974,6 +2311,7 @@ interface components {
1974
2311
  * @description Event identifier for this reservation
1975
2312
  */
1976
2313
  eventId: string;
2314
+ areaId: string | null;
1977
2315
  quickReferenceNumber: number | null;
1978
2316
  /** @description Date of the reservation in YYYY-MM-DD format */
1979
2317
  reservationDate: string;
@@ -2111,6 +2449,9 @@ interface components {
2111
2449
  maxGuests: number | null;
2112
2450
  minPartySize: number | null;
2113
2451
  maxPartySize: number | null;
2452
+ staffByRole: ((string | number | boolean | (null)) | {
2453
+ [key: string]: unknown;
2454
+ } | unknown[]) | null;
2114
2455
  isPublic: boolean;
2115
2456
  reservationsEnabled: boolean;
2116
2457
  bookingOpensAtDays: number | null;
@@ -2127,77 +2468,7 @@ interface components {
2127
2468
  updatedAt: unknown;
2128
2469
  covers: number;
2129
2470
  }[];
2130
- schedule: {
2131
- id: string;
2132
- name: (string | number | boolean | (null)) | {
2133
- [key: string]: unknown;
2134
- } | unknown[];
2135
- description: ((string | number | boolean | (null)) | {
2136
- [key: string]: unknown;
2137
- } | unknown[]) | null;
2138
- timezone: string;
2139
- rrule: string | null;
2140
- exdates: string[] | null;
2141
- validFrom: string | null;
2142
- validTo: string | null;
2143
- slotMode: components["schemas"]["SlotMode"];
2144
- intervalDuration: number | null;
2145
- duration: number | null;
2146
- isActive: boolean;
2147
- sortIndex: string | null;
2148
- updatedAt: unknown;
2149
- updatedBy: string | null;
2150
- createdAt: unknown;
2151
- createdBy: string | null;
2152
- scheduleTimeSlots: {
2153
- scheduleId: string | null;
2154
- timeSlotId: string | null;
2155
- dayOfWeek: components["schemas"]["DayOfWeek"];
2156
- sortIndex: string | null;
2157
- timeSlot: {
2158
- id: string;
2159
- startTime: string;
2160
- endTime: string | null;
2161
- isActive: boolean | null;
2162
- isSchedulable: boolean | null;
2163
- sortIndex: string | null;
2164
- updatedAt: unknown;
2165
- updatedBy: string | null;
2166
- createdAt: unknown;
2167
- createdBy: string | null;
2168
- } | null;
2169
- }[];
2170
- scheduleOverrides: {
2171
- id: string;
2172
- scheduleId: string;
2173
- date: string;
2174
- reason: ((string | number | boolean | (null)) | {
2175
- [key: string]: unknown;
2176
- } | unknown[]) | null;
2177
- isActive: boolean;
2178
- updatedAt: unknown;
2179
- updatedBy: string | null;
2180
- createdAt: unknown;
2181
- createdBy: string | null;
2182
- scheduleOverrideTimeSlots: {
2183
- overrideId: string;
2184
- timeSlotId: string;
2185
- sortIndex: string | null;
2186
- timeSlot: {
2187
- id: string;
2188
- startTime: string;
2189
- endTime: string | null;
2190
- isActive: boolean | null;
2191
- isSchedulable: boolean | null;
2192
- sortIndex: string | null;
2193
- updatedAt: unknown;
2194
- updatedBy: string | null;
2195
- createdAt: unknown;
2196
- createdBy: string | null;
2197
- };
2198
- }[];
2199
- }[];
2200
- } | null;
2471
+ schedule: components["schemas"]["Schedule"] | null;
2201
2472
  };
2202
2473
  /** GetSubscriptionResponse */
2203
2474
  GetSubscriptionResponse: {
@@ -2591,6 +2862,90 @@ interface components {
2591
2862
  createdAt: unknown;
2592
2863
  updatedAt: unknown;
2593
2864
  };
2865
+ /** GetWebsitePagesResponse */
2866
+ GetWebsitePagesResponse: {
2867
+ id: string;
2868
+ venueId: string;
2869
+ ownerType: components["schemas"]["WebsitePageOwnerType"];
2870
+ ownerId: string | null;
2871
+ label: ((string | number | boolean | (null)) | {
2872
+ [key: string]: unknown;
2873
+ } | unknown[]) | null;
2874
+ path: string | null;
2875
+ externalUrl: string | null;
2876
+ createdBy: string | null;
2877
+ updatedBy: string | null;
2878
+ createdAt: unknown;
2879
+ updatedAt: unknown;
2880
+ }[];
2881
+ /** CreateWebsitePageRequest */
2882
+ CreateWebsitePageRequest: {
2883
+ venueAccessor: string;
2884
+ id?: string;
2885
+ ownerType?: components["schemas"]["WebsitePageOwnerType"];
2886
+ ownerId?: string | null;
2887
+ label?: {
2888
+ [key: string]: string;
2889
+ } | null;
2890
+ target: string;
2891
+ };
2892
+ /** CreateWebsitePageResponse */
2893
+ CreateWebsitePageResponse: {
2894
+ id: string;
2895
+ venueId: string;
2896
+ ownerType: components["schemas"]["WebsitePageOwnerType"];
2897
+ ownerId: string | null;
2898
+ label: ((string | number | boolean | (null)) | {
2899
+ [key: string]: unknown;
2900
+ } | unknown[]) | null;
2901
+ path: string | null;
2902
+ externalUrl: string | null;
2903
+ createdBy: string | null;
2904
+ updatedBy: string | null;
2905
+ createdAt: unknown;
2906
+ updatedAt: unknown;
2907
+ };
2908
+ /** UpdateWebsitePageRequest */
2909
+ UpdateWebsitePageRequest: {
2910
+ venueAccessor: string;
2911
+ id: string;
2912
+ label?: {
2913
+ [key: string]: string;
2914
+ } | null;
2915
+ target: string;
2916
+ };
2917
+ /** UpdateWebsitePageResponse */
2918
+ UpdateWebsitePageResponse: {
2919
+ id: string;
2920
+ venueId: string;
2921
+ ownerType: components["schemas"]["WebsitePageOwnerType"];
2922
+ ownerId: string | null;
2923
+ label: ((string | number | boolean | (null)) | {
2924
+ [key: string]: unknown;
2925
+ } | unknown[]) | null;
2926
+ path: string | null;
2927
+ externalUrl: string | null;
2928
+ createdBy: string | null;
2929
+ updatedBy: string | null;
2930
+ createdAt: unknown;
2931
+ updatedAt: unknown;
2932
+ };
2933
+ /** DeleteWebsitePageResponse */
2934
+ DeleteWebsitePageResponse: {
2935
+ id: string;
2936
+ venueId: string;
2937
+ ownerType: components["schemas"]["WebsitePageOwnerType"];
2938
+ ownerId: string | null;
2939
+ label: ((string | number | boolean | (null)) | {
2940
+ [key: string]: unknown;
2941
+ } | unknown[]) | null;
2942
+ path: string | null;
2943
+ externalUrl: string | null;
2944
+ createdBy: string | null;
2945
+ updatedBy: string | null;
2946
+ createdAt: unknown;
2947
+ updatedAt: unknown;
2948
+ };
2594
2949
  /** @enum {string} */
2595
2950
  ActorType: "human" | "robot";
2596
2951
  /** @enum {string} */
@@ -2604,6 +2959,8 @@ interface components {
2604
2959
  /** @enum {string} */
2605
2960
  AreaBookingStatus: "confirmed" | "arrived" | "completed" | "cancelled" | "no_show";
2606
2961
  /** @enum {string} */
2962
+ AreaType: "indoor" | "outdoor";
2963
+ /** @enum {string} */
2607
2964
  ArticleEditorSaveState: "idle" | "saving" | "saved" | "error";
2608
2965
  /** @enum {string} */
2609
2966
  ArticleStatus: "draft" | "published";
@@ -2640,14 +2997,24 @@ interface components {
2640
2997
  /** @enum {string} */
2641
2998
  MenuItemType: "dish" | "beverage";
2642
2999
  /** @enum {string} */
3000
+ OccupancyReason: "ok" | "tables" | "personnel";
3001
+ /** @enum {string} */
2643
3002
  FulfillmentType: "pickup" | "delivery";
2644
3003
  /** @enum {string} */
2645
3004
  OrderStatus: "pending" | "in_progress" | "ready" | "completed" | "cancelled";
2646
3005
  /** @enum {string} */
3006
+ PaxBand: "1-2" | "3-4" | "5-6" | "7+";
3007
+ /** @enum {string} */
2647
3008
  PaymentMethod: "card" | "cash" | "voucher";
2648
3009
  /** @enum {string} */
2649
3010
  PaymentStatus: "unpaid" | "paid" | "refunded" | "authorized" | "cash_pending";
2650
3011
  /** @enum {string} */
3012
+ PlatformRole: "platform_maintainer";
3013
+ /** @enum {string} */
3014
+ ReservationMode: "passive" | "auto_steer";
3015
+ /** @enum {string} */
3016
+ Role: "superadmin" | "admin" | "manager" | "chef" | "cook" | "waiter" | "rider";
3017
+ /** @enum {string} */
2651
3018
  ScanTokenEntityType: "order" | "depositware";
2652
3019
  /** @enum {string} */
2653
3020
  SortOrder: "asc" | "desc";
@@ -2664,19 +3031,19 @@ interface components {
2664
3031
  /** @enum {string} */
2665
3032
  AdChannel: "google" | "facebook" | "instagram";
2666
3033
  /** @enum {string} */
2667
- AdOwnerType: "event" | "ritual";
3034
+ AdOwnerType: "event" | "ritual" | "venue" | "dish" | "beverage" | "menu";
2668
3035
  /** @enum {string} */
2669
3036
  AdStatus: "draft" | "ready" | "archived";
2670
3037
  /** @enum {string} */
2671
3038
  MentionEntityType: "dish" | "beverage" | "ingredient" | "menu" | "ritual";
2672
3039
  /** @enum {string} */
2673
- MentionKind: "link" | "value";
3040
+ MentionType: "link" | "value";
2674
3041
  /** @enum {string} */
2675
3042
  PendingSuperadminTransferStatus: "pending_invite" | "accepted_awaiting_payment" | "completed" | "cancelled" | "expired";
2676
3043
  /** @enum {string} */
2677
3044
  BillingMode: "single_anchor" | "split";
2678
3045
  /** @enum {string} */
2679
- VenueChargeKind: "base" | "addon";
3046
+ VenueChargeType: "base" | "addon";
2680
3047
  /** @enum {string} */
2681
3048
  AssetType: "image" | "video" | "document";
2682
3049
  /** @enum {string} */
@@ -2684,7 +3051,7 @@ interface components {
2684
3051
  /** @enum {string} */
2685
3052
  GbpSyncStatus: "processing" | "live" | "rejected" | "failed" | "removed";
2686
3053
  /** @enum {string} */
2687
- GeoAreaKind: "postcode" | "city" | "region";
3054
+ GeoAreaType: "postcode" | "city" | "region";
2688
3055
  /** @enum {string} */
2689
3056
  Jurisdiction: "DE" | "CH" | "FR" | "IT";
2690
3057
  /** @enum {string} */
@@ -2704,6 +3071,8 @@ interface components {
2704
3071
  /** @enum {string} */
2705
3072
  MentionFieldFormatter: "text" | "currency" | "integer" | "percentage" | "boolean";
2706
3073
  /** @enum {string} */
3074
+ KeywordPolarity: "positive" | "negative";
3075
+ /** @enum {string} */
2707
3076
  PromotionBenefitType: "free_item" | "discount_percentage" | "discount_amount" | "buy_x_get_y";
2708
3077
  /** @enum {string} */
2709
3078
  ReservationPromotionStatus: "applied" | "redeemed" | "expired";
@@ -2714,6 +3083,8 @@ interface components {
2714
3083
  /** @enum {string} */
2715
3084
  VenueEmailSenderStatus: "pending" | "verified" | "failed" | "temporary_failure";
2716
3085
  /** @enum {string} */
3086
+ WebsitePageOwnerType: "venue" | "menu" | "dish" | "beverage" | "ingredient" | "event" | "ritual";
3087
+ /** @enum {string} */
2717
3088
  VenueAssetType: "logomark" | "wordmark" | "combinationmark_horizontal" | "combinationmark_vertical";
2718
3089
  /** @enum {string} */
2719
3090
  VenueUserStatus: "pending" | "confirmed" | "revoked";
@@ -2770,8 +3141,28 @@ type PatchAdResponse = schemas['EditAdResponse'];
2770
3141
  type DeleteAdResponse = schemas['DeleteAdResponse'];
2771
3142
  type EditMetaAdRequest = schemas['EditMetaAdRequest'];
2772
3143
  type EditMetaAdResponse = schemas['EditMetaAdResponse'];
3144
+ type SaveAdCalloutsRequest = schemas['SaveAdCalloutsRequest'];
3145
+ type SaveAdCalloutsResponse = schemas['SaveAdCalloutsResponse'];
2773
3146
  type SaveAdKeywordsRequest = schemas['SaveAdKeywordsRequest'];
2774
3147
  type SaveAdKeywordsResponse = schemas['SaveAdKeywordsResponse'];
3148
+ type SaveAdNegativeKeywordsRequest = schemas['SaveAdNegativeKeywordsRequest'];
3149
+ type SaveAdNegativeKeywordsResponse = schemas['SaveAdNegativeKeywordsResponse'];
3150
+ type SaveAdWebsitePagesRequest = schemas['SaveAdWebsitePagesRequest'];
3151
+ type SaveAdWebsitePagesResponse = schemas['SaveAdWebsitePagesResponse'];
3152
+ type SetAdBudgetRequest = schemas['SetAdBudgetRequest'];
3153
+ type SetAdBudgetResponse = schemas['SetAdBudgetResponse'];
3154
+ type GetCalloutsResponse = schemas['GetCalloutsResponse'];
3155
+ type CreateCalloutRequest = schemas['CreateCalloutRequest'];
3156
+ type CreateCalloutResponse = schemas['CreateCalloutResponse'];
3157
+ type UpdateCalloutRequest = schemas['UpdateCalloutRequest'];
3158
+ type UpdateCalloutResponse = schemas['UpdateCalloutResponse'];
3159
+ type DeleteCalloutResponse = schemas['DeleteCalloutResponse'];
3160
+ type GetWebsitePagesResponse = schemas['GetWebsitePagesResponse'];
3161
+ type CreateWebsitePageRequest = schemas['CreateWebsitePageRequest'];
3162
+ type CreateWebsitePageResponse = schemas['CreateWebsitePageResponse'];
3163
+ type UpdateWebsitePageRequest = schemas['UpdateWebsitePageRequest'];
3164
+ type UpdateWebsitePageResponse = schemas['UpdateWebsitePageResponse'];
3165
+ type DeleteWebsitePageResponse = schemas['DeleteWebsitePageResponse'];
2775
3166
  /**
2776
3167
  * Optional filters for `client.ads.list()`. Each narrows the venue's ad
2777
3168
  * set; omit all to list every ad. Client ergonomics, mapped to the wire
@@ -3025,6 +3416,12 @@ interface GetAreaOptions {
3025
3416
  }
3026
3417
  type AreaAvailabilityWindow = schemas['GetAreaAvailabilityResponse']['occupied'][number];
3027
3418
  type AreaAvailabilityResponse = schemas['GetAreaAvailabilityResponse'];
3419
+ type EventSlotAvailabilityResponse = schemas['FetchSlotAvailabilityResponse'];
3420
+ interface GetEventSlotAvailabilityOptions {
3421
+ reservationDate: string;
3422
+ partySize: number;
3423
+ areaId?: string;
3424
+ }
3028
3425
  interface GetAreaAvailabilityOptions {
3029
3426
  /** YYYY-MM-DD — defaults to today */
3030
3427
  from?: string;
@@ -3193,6 +3590,40 @@ declare class AdsResource extends BaseResource {
3193
3590
  * cleaned, persisted sets.
3194
3591
  */
3195
3592
  saveKeywords(adId: string, body: SaveAdKeywordsRequest): Promise<SaveAdKeywordsResponse>;
3593
+ /**
3594
+ * Replace the ad's owner-chosen callout set in one shot — the highlights
3595
+ * pushed to Google as CALLOUT assets. The set references the venue's callout
3596
+ * pool by id; it is de-duplicated while preserving order, and an empty array
3597
+ * clears callouts. Only ids belonging to the venue's pool survive. Call
3598
+ * {@link get} first and resend the full set to preserve existing entries.
3599
+ * Returns the cleaned, persisted ids.
3600
+ */
3601
+ saveCallouts(adId: string, body: SaveAdCalloutsRequest): Promise<SaveAdCalloutsResponse>;
3602
+ /**
3603
+ * Replace the ad's owner-curated NEGATIVE keyword set (and the venue
3604
+ * negatives toggled off for this ad) in one shot. An empty `negativeKeywords`
3605
+ * array clears the set. Texts are trimmed + de-duplicated server-side; the
3606
+ * set is pushed to a linked live campaign immediately. Call {@link get} first
3607
+ * and resend the full set to preserve existing entries.
3608
+ */
3609
+ saveNegativeKeywords(adId: string, body: SaveAdNegativeKeywordsRequest): Promise<SaveAdNegativeKeywordsResponse>;
3610
+ /**
3611
+ * Replace the ad's owner-chosen website-page set in one shot — the pages
3612
+ * pushed to Google as SITELINK assets. The set references the venue's
3613
+ * website-page pool by id; it is de-duplicated while preserving order, and
3614
+ * an empty array clears sitelinks. Only ids belonging to the venue's pool
3615
+ * survive. Call {@link get} first and resend the full set to preserve
3616
+ * existing entries. Returns the cleaned, persisted ids.
3617
+ */
3618
+ saveWebsitePages(adId: string, body: SaveAdWebsitePagesRequest): Promise<SaveAdWebsitePagesResponse>;
3619
+ /**
3620
+ * Persist the ad's order3000-side daily budget, in CENTS (the app-wide money
3621
+ * unit). This writes `ads.dailyBudget` and pushes NOTHING to Google — it lets
3622
+ * the owner set + refine a budget on a DRAFT ad before any campaign exists;
3623
+ * `createCampaign` reads it as the default at launch (converting cents→micros
3624
+ * at the Google boundary). Returns the updated ad row.
3625
+ */
3626
+ setBudget(adId: string, body: SetAdBudgetRequest): Promise<SetAdBudgetResponse>;
3196
3627
  /**
3197
3628
  * Write paste-ready Meta (Facebook/Instagram) ad copy + creative onto the
3198
3629
  * ad's `metaContent` document — the Meta analog of {@link patch} (which writes
@@ -3369,6 +3800,36 @@ declare class BasketsResource extends BaseResource {
3369
3800
  }>;
3370
3801
  }
3371
3802
 
3803
+ /**
3804
+ * The venue's callout pool — the localized "highlight" phrases (≤25 chars per
3805
+ * locale, Google's CalloutAsset limit) an ad references by id and that publish
3806
+ * to Google as CALLOUT assets on campaign create. This resource manages the
3807
+ * POOL itself; an ad's pick from it is `client.ads.saveCallouts(...)`.
3808
+ */
3809
+ declare class CalloutsResource extends BaseResource {
3810
+ constructor(tokenManager: TokenManager, baseUrl: string);
3811
+ /**
3812
+ * List the venue's whole callout pool, ordered by `createdAt`.
3813
+ */
3814
+ list(): Promise<GetCalloutsResponse>;
3815
+ /**
3816
+ * Add a callout to the venue pool. `label` is the localized text (`{ de,
3817
+ * en }`); each locale value ≤25 chars and at least one must be non-empty.
3818
+ * Returns the created callout row.
3819
+ */
3820
+ create(body: CreateCalloutRequest): Promise<CreateCalloutResponse>;
3821
+ /**
3822
+ * Replace a pool callout's localized `label` (each locale value ≤25 chars;
3823
+ * at least one non-empty). Returns the updated callout row.
3824
+ */
3825
+ update(calloutId: string, body: UpdateCalloutRequest): Promise<UpdateCalloutResponse>;
3826
+ /**
3827
+ * Permanently remove a callout from the venue pool. Returns the deleted row.
3828
+ * (Ads still referencing the id simply drop it on their next save.)
3829
+ */
3830
+ delete(calloutId: string): Promise<DeleteCalloutResponse>;
3831
+ }
3832
+
3372
3833
  /** Element type of an expanded event's `assets[]` array. */
3373
3834
  type EventAssetEntry = NonNullable<EventByAccessor['assets']>[number];
3374
3835
  declare class EventsResource extends BaseResource {
@@ -3414,6 +3875,13 @@ declare class EventsResource extends BaseResource {
3414
3875
  * `assets[]` array (empty when the event has none).
3415
3876
  */
3416
3877
  listAssets(idOrAccessor: string): Promise<EventAssetEntry[]>;
3878
+ /**
3879
+ * Per-start-slot occupancy availability for an event on a date. Each slot's
3880
+ * `offered` honours the venue's reservation mode (`passive`: every slot;
3881
+ * `auto_steer`: only acceptable slots), so a public widget can pre-exclude
3882
+ * fully-booked start times.
3883
+ */
3884
+ getSlotAvailability(idOrAccessor: string, options: GetEventSlotAvailabilityOptions): Promise<EventSlotAvailabilityResponse>;
3417
3885
  /**
3418
3886
  * Upload a asset image for an event. The SDK builds the multipart
3419
3887
  * body internally — pass a Buffer/Uint8Array, the original filename,
@@ -4087,6 +4555,37 @@ declare class VenuesResource {
4087
4555
  get(idOrAccessor: string): Promise<Venue>;
4088
4556
  }
4089
4557
 
4558
+ /**
4559
+ * The venue's website-page pool — link targets (a localized `label` plus an
4560
+ * internal `path` or `externalUrl`) an ad references by id and that publish to
4561
+ * Google as SITELINK assets on campaign create. This resource manages the POOL
4562
+ * itself; an ad's pick from it is `client.ads.saveWebsitePages(...)`.
4563
+ */
4564
+ declare class WebsitePagesResource extends BaseResource {
4565
+ constructor(tokenManager: TokenManager, baseUrl: string);
4566
+ /**
4567
+ * List the venue's whole website-page pool, ordered by `createdAt`.
4568
+ */
4569
+ list(): Promise<GetWebsitePagesResponse>;
4570
+ /**
4571
+ * Add a website page to the venue pool. `target` is the raw reference the
4572
+ * owner typed — an internal path (`/speisekarte`) or a full URL — classified
4573
+ * server-side against the venue website. `label` is the localized link text.
4574
+ * Returns the created page row.
4575
+ */
4576
+ create(body: CreateWebsitePageRequest): Promise<CreateWebsitePageResponse>;
4577
+ /**
4578
+ * Replace a pool page's `target` (re-classified into a path or external URL)
4579
+ * and/or localized `label`. Returns the updated page row.
4580
+ */
4581
+ update(pageId: string, body: UpdateWebsitePageRequest): Promise<UpdateWebsitePageResponse>;
4582
+ /**
4583
+ * Permanently remove a website page from the venue pool. Returns the deleted
4584
+ * row. (Ads still referencing the id simply drop it on their next save.)
4585
+ */
4586
+ delete(pageId: string): Promise<DeleteWebsitePageResponse>;
4587
+ }
4588
+
4090
4589
  type RealtimeEvent = 'INSERT' | 'UPDATE' | 'DELETE' | '*';
4091
4590
  type RealtimeRow = {
4092
4591
  [key: string]: any;
@@ -4297,6 +4796,7 @@ declare class O3KClient {
4297
4796
  articles: ArticlesResource;
4298
4797
  assets: AssetsResource;
4299
4798
  baskets: BasketsResource;
4799
+ callouts: CalloutsResource;
4300
4800
  events: EventsResource;
4301
4801
  menus: MenusResource;
4302
4802
  orders: OrdersResource;
@@ -4306,6 +4806,7 @@ declare class O3KClient {
4306
4806
  subscriptions: SubscriptionsResource;
4307
4807
  teamOrders: TeamOrdersResource;
4308
4808
  venues: VenuesResource;
4809
+ websitePages: WebsitePagesResource;
4309
4810
  realtime: RealtimeManager;
4310
4811
  private readonly baseUrl;
4311
4812
  private readonly tokenManager;