order3000 1.10.0 → 1.11.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
@@ -1,3 +1,5 @@
1
+ import { ab as ListAdsOptions, ac as ListAdsResponse, A as Ad, v as CreateAdRequest, w as CreateAdResponse, ax as PatchAdRequest, ay as PatchAdResponse, aO as SaveAdKeywordsRequest, aP as SaveAdKeywordsResponse, aM as SaveAdCalloutsRequest, aN as SaveAdCalloutsResponse, aQ as SaveAdNegativeKeywordsRequest, aR as SaveAdNegativeKeywordsResponse, aS as SaveAdWebsitePagesRequest, aT as SaveAdWebsitePagesResponse, aY as SetAdBudgetRequest, aZ as SetAdBudgetResponse, U as EditMetaAdRequest, V as EditMetaAdResponse, O as DeleteAdResponse, a2 as GetAreaOptions, c as Area, a1 as GetAreaAvailabilityOptions, e as AreaAvailabilityResponse, a_ as SubmitAreaBookingRequestPayload, h as AreaBookingRequestResponse, ad as ListArticlesOptions, ae as ListArticlesResponse, m as Article, az as PatchArticleRequest, $ as FeatureImage, bf as UploadFeatureImageArgs, aD as PatchFeatureImageRequest, af as ListAssetsOptions, ag as ListAssetsResponse, n as Asset, B as Basket, a as AddToBasketRequest, b as AddToBasketResponse, aK as RemoveFromBasketResponse, N as DeclaredReturn, t as BasketTotals, bb as UploadAssetArgs, bc as UploadAssetResponse, a4 as GetCalloutsResponse, x as CreateCalloutRequest, y as CreateCalloutResponse, b7 as UpdateCalloutRequest, b8 as UpdateCalloutResponse, P as DeleteCalloutResponse, a0 as FetchDishResponse, S as EditDishRequest, T as EditDishResponse, ah as ListEventsOptions, ai as ListEventsResponse, E as CreateEventRequest, F as CreateEventResponse, a5 as GetEventOptions, Y as EventByAccessor, aB as PatchEventRequest, aC as PatchEventResponse, Q as DeleteEventResponse, a6 as GetEventSlotAvailabilityOptions, _ as EventSlotAvailabilityResponse, bd as UploadEventAssetArgs, be as UploadEventAssetResponse, a7 as GetMenuOptions, al as Menu, ao as MenuBundle, at as MenuSubscription, aa as LatestOrder, aF as PlaceOrderRequest, aG as PlaceOrderResponse, C as ConfirmOrderRequest, u as ConfirmOrderResponse, G as CreatePaymentIntentRequest, H as CreatePaymentIntentResponse, z as CreateDeltaPaymentIntentRequest, D as CreateDeltaPaymentIntentResponse, aI as ReduceDeltaPaymentIntentRequest, aJ as ReduceDeltaPaymentIntentResponse, aj as MakeReservationRequest, ak as MakeReservationResponse, aL as RitualByAccessor, a$ as SubscribeRequest, b0 as SubscribeResponse, b3 as SubscriptionCreditStatus, b2 as SubscriptionCredit, r as BasketItemMetadata, bg as Venue, a9 as GetWebsitePagesResponse, I as CreateWebsitePageRequest, J as CreateWebsitePageResponse, b9 as UpdateWebsitePageRequest, ba as UpdateWebsitePageResponse, R as DeleteWebsitePageResponse, L as Currency, aW as ScheduleTimeSlot, M as DayOfWeek } from './index-CQHgJH4m.cjs';
2
+ export { d as O3KAreaAsset, f as O3KAreaAvailabilityWindow, g as O3KAreaBookingMode, i as O3KAreaBookingRequestSource, j as O3KAreaBookingRequestStatus, k as O3KAreaBookingStatus, l as O3KAreaFeature, o as O3KBasketItem, p as O3KBasketItemDeposit, q as O3KBasketItemMenuItemRef, s as O3KBasketStatus, K as O3KCropArea, W as O3KEvent, X as O3KEventAsset, Z as O3KEventMenu, a3 as O3KGetArticleResponse, a8 as O3KGetVenueResponse, am as O3KMenuAsset, an as O3KMenuBeverage, ap as O3KMenuBundleDeposit, aq as O3KMenuDish, ar as O3KMenuItem, as as O3KMenuItemType, au as O3KMenuSubscriptionPoster, av as O3KOrderFulfillmentType, aw as O3KOrderStatus, aA as O3KPatchArticleResponse, aE as O3KPaymentStatus, aH as O3KPromotion, aU as O3KSchedule, aV as O3KScheduleOverride, aX as O3KScheduleWithTimeSlots, b1 as O3KSubscriberStatus, b4 as O3KSubscriptionPeriod, b5 as O3KTimeSlot, b6 as O3KUnit } from './index-CQHgJH4m.cjs';
1
3
  import { z as z$1 } from 'zod';
2
4
  import { z } from 'zod/v4';
3
5
  import { RealtimePostgresChangesPayload, RealtimeChannel, SupabaseClient } from '@supabase/supabase-js';
@@ -60,3500 +62,6 @@ declare abstract class BaseResource {
60
62
  protected requestMultipart<T>(method: 'POST' | 'PATCH' | 'PUT', path: string, formData: FormData): Promise<T>;
61
63
  }
62
64
 
63
- interface components {
64
- schemas: {
65
- /** FetchAdsResponse */
66
- FetchAdsResponse: {
67
- id: string;
68
- venueId: string;
69
- ownerEntityType: components["schemas"]["AdOwnerType"];
70
- ownerEntityId: string;
71
- channel: components["schemas"]["AdChannel"];
72
- status: components["schemas"]["AdStatus"];
73
- campaignId: string | null;
74
- content: (string | number | boolean | (null)) | {
75
- [key: string]: unknown;
76
- } | unknown[];
77
- metaContent: ((string | number | boolean | (null)) | {
78
- [key: string]: unknown;
79
- } | unknown[]) | null;
80
- metaRefs: ((string | number | boolean | (null)) | {
81
- [key: string]: unknown;
82
- } | unknown[]) | null;
83
- servedMarket: ((string | number | boolean | (null)) | {
84
- [key: string]: unknown;
85
- } | unknown[]) | null;
86
- keywords: (string | number | boolean | (null)) | {
87
- [key: string]: unknown;
88
- } | unknown[];
89
- negativeKeywords: (string | number | boolean | (null)) | {
90
- [key: string]: unknown;
91
- } | unknown[];
92
- disabledVenueKeywords: (string | number | boolean | (null)) | {
93
- [key: string]: unknown;
94
- } | unknown[];
95
- disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
96
- [key: string]: unknown;
97
- } | unknown[];
98
- dismissedKeywords: (string | number | boolean | (null)) | {
99
- [key: string]: unknown;
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[];
110
- publishedContentHash: string | null;
111
- publishedAt: unknown;
112
- pushedKeywords: ((string | number | boolean | (null)) | {
113
- [key: string]: unknown;
114
- } | unknown[]) | null;
115
- dailyBudget: number | null;
116
- createdBy: string | null;
117
- updatedBy: string | null;
118
- createdAt: unknown;
119
- updatedAt: unknown;
120
- }[];
121
- /** FetchAdResponse */
122
- FetchAdResponse: {
123
- id: string;
124
- venueId: string;
125
- ownerEntityType: components["schemas"]["AdOwnerType"];
126
- ownerEntityId: string;
127
- channel: components["schemas"]["AdChannel"];
128
- status: components["schemas"]["AdStatus"];
129
- campaignId: string | null;
130
- content: (string | number | boolean | (null)) | {
131
- [key: string]: unknown;
132
- } | unknown[];
133
- metaContent: ((string | number | boolean | (null)) | {
134
- [key: string]: unknown;
135
- } | unknown[]) | null;
136
- metaRefs: ((string | number | boolean | (null)) | {
137
- [key: string]: unknown;
138
- } | unknown[]) | null;
139
- servedMarket: ((string | number | boolean | (null)) | {
140
- [key: string]: unknown;
141
- } | unknown[]) | null;
142
- keywords: (string | number | boolean | (null)) | {
143
- [key: string]: unknown;
144
- } | unknown[];
145
- negativeKeywords: (string | number | boolean | (null)) | {
146
- [key: string]: unknown;
147
- } | unknown[];
148
- disabledVenueKeywords: (string | number | boolean | (null)) | {
149
- [key: string]: unknown;
150
- } | unknown[];
151
- disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
152
- [key: string]: unknown;
153
- } | unknown[];
154
- dismissedKeywords: (string | number | boolean | (null)) | {
155
- [key: string]: unknown;
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[];
166
- publishedContentHash: string | null;
167
- publishedAt: unknown;
168
- pushedKeywords: ((string | number | boolean | (null)) | {
169
- [key: string]: unknown;
170
- } | unknown[]) | null;
171
- dailyBudget: number | null;
172
- createdBy: string | null;
173
- updatedBy: string | null;
174
- createdAt: unknown;
175
- updatedAt: unknown;
176
- };
177
- /**
178
- * CreateAdRequest
179
- * @description Request payload for creating a new ad
180
- */
181
- CreateAdRequest: {
182
- venueAccessor: string;
183
- ownerEntityType: components["schemas"]["AdOwnerType"];
184
- ownerEntityId: string;
185
- channel: components["schemas"]["AdChannel"];
186
- };
187
- /**
188
- * CreateAdResponse
189
- * @description Successfully created ad
190
- */
191
- CreateAdResponse: {
192
- id: string;
193
- venueId: string;
194
- ownerEntityType: components["schemas"]["AdOwnerType"];
195
- ownerEntityId: string;
196
- channel: components["schemas"]["AdChannel"];
197
- status: components["schemas"]["AdStatus"];
198
- campaignId: string | null;
199
- content: (string | number | boolean | (null)) | {
200
- [key: string]: unknown;
201
- } | unknown[];
202
- metaContent: ((string | number | boolean | (null)) | {
203
- [key: string]: unknown;
204
- } | unknown[]) | null;
205
- metaRefs: ((string | number | boolean | (null)) | {
206
- [key: string]: unknown;
207
- } | unknown[]) | null;
208
- servedMarket: ((string | number | boolean | (null)) | {
209
- [key: string]: unknown;
210
- } | unknown[]) | null;
211
- keywords: (string | number | boolean | (null)) | {
212
- [key: string]: unknown;
213
- } | unknown[];
214
- negativeKeywords: (string | number | boolean | (null)) | {
215
- [key: string]: unknown;
216
- } | unknown[];
217
- disabledVenueKeywords: (string | number | boolean | (null)) | {
218
- [key: string]: unknown;
219
- } | unknown[];
220
- disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
221
- [key: string]: unknown;
222
- } | unknown[];
223
- dismissedKeywords: (string | number | boolean | (null)) | {
224
- [key: string]: unknown;
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[];
235
- publishedContentHash: string | null;
236
- publishedAt: unknown;
237
- pushedKeywords: ((string | number | boolean | (null)) | {
238
- [key: string]: unknown;
239
- } | unknown[]) | null;
240
- dailyBudget: number | null;
241
- createdBy: string | null;
242
- updatedBy: string | null;
243
- createdAt: unknown;
244
- updatedAt: unknown;
245
- };
246
- /**
247
- * EditAdRequest
248
- * @description Partial-update body for an existing ad
249
- */
250
- EditAdRequest: {
251
- venueAccessor: string;
252
- id: string;
253
- content?: {
254
- businessName: {
255
- [key: string]: string;
256
- };
257
- headlines: {
258
- [key: string]: string[];
259
- };
260
- descriptions: {
261
- [key: string]: string[];
262
- };
263
- paths: {
264
- [key: string]: string[];
265
- };
266
- /** Format: uri */
267
- finalUrl: string;
268
- };
269
- status?: components["schemas"]["AdStatus"];
270
- };
271
- /**
272
- * EditAdResponse
273
- * @description Successfully updated ad
274
- */
275
- EditAdResponse: {
276
- id: string;
277
- venueId: string;
278
- ownerEntityType: components["schemas"]["AdOwnerType"];
279
- ownerEntityId: string;
280
- channel: components["schemas"]["AdChannel"];
281
- status: components["schemas"]["AdStatus"];
282
- campaignId: string | null;
283
- content: (string | number | boolean | (null)) | {
284
- [key: string]: unknown;
285
- } | unknown[];
286
- metaContent: ((string | number | boolean | (null)) | {
287
- [key: string]: unknown;
288
- } | unknown[]) | null;
289
- metaRefs: ((string | number | boolean | (null)) | {
290
- [key: string]: unknown;
291
- } | unknown[]) | null;
292
- servedMarket: ((string | number | boolean | (null)) | {
293
- [key: string]: unknown;
294
- } | unknown[]) | null;
295
- keywords: (string | number | boolean | (null)) | {
296
- [key: string]: unknown;
297
- } | unknown[];
298
- negativeKeywords: (string | number | boolean | (null)) | {
299
- [key: string]: unknown;
300
- } | unknown[];
301
- disabledVenueKeywords: (string | number | boolean | (null)) | {
302
- [key: string]: unknown;
303
- } | unknown[];
304
- disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
305
- [key: string]: unknown;
306
- } | unknown[];
307
- dismissedKeywords: (string | number | boolean | (null)) | {
308
- [key: string]: unknown;
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[];
319
- publishedContentHash: string | null;
320
- publishedAt: unknown;
321
- pushedKeywords: ((string | number | boolean | (null)) | {
322
- [key: string]: unknown;
323
- } | unknown[]) | null;
324
- dailyBudget: number | null;
325
- createdBy: string | null;
326
- updatedBy: string | null;
327
- createdAt: unknown;
328
- updatedAt: unknown;
329
- };
330
- /**
331
- * EditMetaAdRequest
332
- * @description Partial-update body for an existing Meta ad
333
- */
334
- EditMetaAdRequest: {
335
- venueAccessor: string;
336
- id: string;
337
- metaContent?: {
338
- primaryText: {
339
- [key: string]: string;
340
- };
341
- headline: {
342
- [key: string]: string;
343
- };
344
- description: {
345
- [key: string]: string;
346
- };
347
- /** Format: uri */
348
- finalUrl: string;
349
- callToAction: string;
350
- creatives: {
351
- [key: string]: {
352
- assetId: string;
353
- };
354
- };
355
- };
356
- status?: components["schemas"]["AdStatus"];
357
- };
358
- /**
359
- * EditMetaAdResponse
360
- * @description Successfully updated Meta ad
361
- */
362
- EditMetaAdResponse: {
363
- id: string;
364
- venueId: string;
365
- ownerEntityType: components["schemas"]["AdOwnerType"];
366
- ownerEntityId: string;
367
- channel: components["schemas"]["AdChannel"];
368
- status: components["schemas"]["AdStatus"];
369
- campaignId: string | null;
370
- content: (string | number | boolean | (null)) | {
371
- [key: string]: unknown;
372
- } | unknown[];
373
- metaContent: ((string | number | boolean | (null)) | {
374
- [key: string]: unknown;
375
- } | unknown[]) | null;
376
- metaRefs: ((string | number | boolean | (null)) | {
377
- [key: string]: unknown;
378
- } | unknown[]) | null;
379
- servedMarket: ((string | number | boolean | (null)) | {
380
- [key: string]: unknown;
381
- } | unknown[]) | null;
382
- keywords: (string | number | boolean | (null)) | {
383
- [key: string]: unknown;
384
- } | unknown[];
385
- negativeKeywords: (string | number | boolean | (null)) | {
386
- [key: string]: unknown;
387
- } | unknown[];
388
- disabledVenueKeywords: (string | number | boolean | (null)) | {
389
- [key: string]: unknown;
390
- } | unknown[];
391
- disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
392
- [key: string]: unknown;
393
- } | unknown[];
394
- dismissedKeywords: (string | number | boolean | (null)) | {
395
- [key: string]: unknown;
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[];
406
- publishedContentHash: string | null;
407
- publishedAt: unknown;
408
- pushedKeywords: ((string | number | boolean | (null)) | {
409
- [key: string]: unknown;
410
- } | unknown[]) | null;
411
- dailyBudget: number | null;
412
- createdBy: string | null;
413
- updatedBy: string | null;
414
- createdAt: unknown;
415
- updatedAt: unknown;
416
- };
417
- /** SaveAdKeywordsRequest */
418
- SaveAdKeywordsRequest: {
419
- venueAccessor: string;
420
- adId: string;
421
- keywords: string[];
422
- dismissedKeywords: string[];
423
- disabledVenueKeywords: string[];
424
- };
425
- /** SaveAdKeywordsResponse */
426
- SaveAdKeywordsResponse: {
427
- success: boolean;
428
- keywords: string[];
429
- dismissedKeywords: string[];
430
- disabledVenueKeywords: string[];
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
- };
531
- /** DeleteAdResponse */
532
- DeleteAdResponse: {
533
- id: string;
534
- venueId: string;
535
- ownerEntityType: components["schemas"]["AdOwnerType"];
536
- ownerEntityId: string;
537
- channel: components["schemas"]["AdChannel"];
538
- status: components["schemas"]["AdStatus"];
539
- campaignId: string | null;
540
- content: (string | number | boolean | (null)) | {
541
- [key: string]: unknown;
542
- } | unknown[];
543
- metaContent: ((string | number | boolean | (null)) | {
544
- [key: string]: unknown;
545
- } | unknown[]) | null;
546
- metaRefs: ((string | number | boolean | (null)) | {
547
- [key: string]: unknown;
548
- } | unknown[]) | null;
549
- servedMarket: ((string | number | boolean | (null)) | {
550
- [key: string]: unknown;
551
- } | unknown[]) | null;
552
- keywords: (string | number | boolean | (null)) | {
553
- [key: string]: unknown;
554
- } | unknown[];
555
- negativeKeywords: (string | number | boolean | (null)) | {
556
- [key: string]: unknown;
557
- } | unknown[];
558
- disabledVenueKeywords: (string | number | boolean | (null)) | {
559
- [key: string]: unknown;
560
- } | unknown[];
561
- disabledVenueNegativeKeywords: (string | number | boolean | (null)) | {
562
- [key: string]: unknown;
563
- } | unknown[];
564
- dismissedKeywords: (string | number | boolean | (null)) | {
565
- [key: string]: unknown;
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[];
576
- publishedContentHash: string | null;
577
- publishedAt: unknown;
578
- pushedKeywords: ((string | number | boolean | (null)) | {
579
- [key: string]: unknown;
580
- } | unknown[]) | null;
581
- dailyBudget: number | null;
582
- createdBy: string | null;
583
- updatedBy: string | null;
584
- createdAt: unknown;
585
- updatedAt: unknown;
586
- };
587
- /**
588
- * Area
589
- * @description 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.
590
- */
591
- Area: {
592
- id: string;
593
- venueId: string;
594
- accessor: string;
595
- name: {
596
- [key: string]: string;
597
- };
598
- description: {
599
- [key: string]: string;
600
- } | null;
601
- longDescription: {
602
- [key: string]: string;
603
- } | null;
604
- minCapacity: number | null;
605
- maxCapacity: number;
606
- currency: components["schemas"]["Currency"];
607
- basePrice: number | null;
608
- perPersonPrice: number | null;
609
- features: {
610
- icon: string;
611
- label: {
612
- [key: string]: string;
613
- };
614
- description?: {
615
- [key: string]: string;
616
- };
617
- }[] | null;
618
- bookingMode: components["schemas"]["AreaBookingMode"];
619
- isBookable?: boolean;
620
- isPublic?: boolean;
621
- isActive?: boolean;
622
- areaType?: components["schemas"]["AreaType"];
623
- turnTimes?: {
624
- [key: string]: number;
625
- } | null;
626
- cleanup?: number | null;
627
- assets?: {
628
- id: string;
629
- type: components["schemas"]["AssetType"];
630
- tags: string[] | null;
631
- filename: string;
632
- contentType: string;
633
- metadata: {
634
- width?: number;
635
- height?: number;
636
- duration?: number;
637
- } | null;
638
- cropArea: {
639
- x: number;
640
- y: number;
641
- width: number;
642
- height: number;
643
- } | null;
644
- /** Format: uri */
645
- publicUrl: string;
646
- }[];
647
- closures?: {
648
- id: string;
649
- date: string;
650
- reason: {
651
- [key: string]: string;
652
- } | null;
653
- isActive: boolean;
654
- }[];
655
- };
656
- /** FetchAreasResponse */
657
- FetchAreasResponse: components["schemas"]["Area"][];
658
- /**
659
- * FetchAreaResponse
660
- * @description 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.
661
- */
662
- FetchAreaResponse: {
663
- id: string;
664
- venueId: string;
665
- accessor: string;
666
- name: {
667
- [key: string]: string;
668
- };
669
- description: {
670
- [key: string]: string;
671
- } | null;
672
- longDescription: {
673
- [key: string]: string;
674
- } | null;
675
- minCapacity: number | null;
676
- maxCapacity: number;
677
- currency: components["schemas"]["Currency"];
678
- basePrice: number | null;
679
- perPersonPrice: number | null;
680
- features: {
681
- icon: string;
682
- label: {
683
- [key: string]: string;
684
- };
685
- description?: {
686
- [key: string]: string;
687
- };
688
- }[] | null;
689
- bookingMode: components["schemas"]["AreaBookingMode"];
690
- isBookable?: boolean;
691
- isPublic?: boolean;
692
- isActive?: boolean;
693
- areaType?: components["schemas"]["AreaType"];
694
- turnTimes?: {
695
- [key: string]: number;
696
- } | null;
697
- cleanup?: number | null;
698
- assets?: {
699
- id: string;
700
- type: components["schemas"]["AssetType"];
701
- tags: string[] | null;
702
- filename: string;
703
- contentType: string;
704
- metadata: {
705
- width?: number;
706
- height?: number;
707
- duration?: number;
708
- } | null;
709
- cropArea: {
710
- x: number;
711
- y: number;
712
- width: number;
713
- height: number;
714
- } | null;
715
- /** Format: uri */
716
- publicUrl: string;
717
- }[];
718
- closures?: {
719
- id: string;
720
- date: string;
721
- reason: {
722
- [key: string]: string;
723
- } | null;
724
- isActive: boolean;
725
- }[];
726
- };
727
- /** GetAreaAvailabilityResponse */
728
- GetAreaAvailabilityResponse: {
729
- from: string;
730
- to: string;
731
- bookingMode: components["schemas"]["AreaBookingMode"];
732
- occupied: {
733
- date: string;
734
- startTime: string | null;
735
- endTime: string | null;
736
- }[];
737
- };
738
- /** FetchAreaBookingsResponse */
739
- FetchAreaBookingsResponse: {
740
- id: string;
741
- areaId: string;
742
- bookingDate: string;
743
- startTime: string | null;
744
- endTime: string | null;
745
- partySize: number;
746
- status: components["schemas"]["AreaBookingStatus"];
747
- guestFirstName?: string;
748
- guestLastName?: string;
749
- totalPrice?: number;
750
- currency?: components["schemas"]["Currency"];
751
- confirmationCode?: string | null;
752
- }[];
753
- /** SubmitAreaBookingPayload */
754
- SubmitAreaBookingPayload: {
755
- requestedDate: string;
756
- requestedStartTime?: string;
757
- requestedEndTime?: string;
758
- partySize: number;
759
- guestFirstName: string;
760
- guestLastName: string;
761
- /** Format: email */
762
- guestEmail: string;
763
- guestPhone?: string;
764
- message?: string;
765
- source?: components["schemas"]["AreaBookingRequestSource"];
766
- };
767
- /** SubmitAreaBookingRequestResponse */
768
- SubmitAreaBookingRequestResponse: {
769
- id: string;
770
- venueId: string;
771
- areaId: string;
772
- requestedDate: string;
773
- requestedStartTime: string | null;
774
- requestedEndTime: string | null;
775
- partySize: number;
776
- guestFirstName: string;
777
- guestLastName: string;
778
- guestEmail: string;
779
- guestPhone: string | null;
780
- message: string | null;
781
- source: components["schemas"]["AreaBookingRequestSource"];
782
- status: components["schemas"]["AreaBookingRequestStatus"];
783
- areaBookingId: string | null;
784
- createdAt: string | null;
785
- updatedAt: string | null;
786
- };
787
- /**
788
- * FeatureImage
789
- * @description An article's resolved feature image. `caption` / `alt` are per-locale TipTap docs (PATCH accepts plain strings — server normalises). `captionByLocale` / `altByLocale` expose the raw per-locale records for editor surfaces.
790
- */
791
- FeatureImage: {
792
- id: string;
793
- publicUrl: string | null;
794
- locale: string;
795
- caption: {
796
- [key: string]: unknown;
797
- } | null;
798
- alt: {
799
- [key: string]: unknown;
800
- } | null;
801
- captionByLocale: {
802
- [key: string]: unknown;
803
- };
804
- altByLocale: {
805
- [key: string]: unknown;
806
- };
807
- };
808
- /** OgImage */
809
- OgImage: {
810
- id: string;
811
- publicUrl: string | null;
812
- locale: string;
813
- };
814
- /** ArticleMentionCounts */
815
- ArticleMentionCounts: {
816
- dishes: number;
817
- beverages: number;
818
- ingredients: number;
819
- menus: number;
820
- rituals: number;
821
- };
822
- /** FetchArticlesResponse */
823
- FetchArticlesResponse: {
824
- id: string;
825
- venueId: string;
826
- accessor: string;
827
- slug: {
828
- [key: string]: {
829
- [key: string]: unknown;
830
- };
831
- };
832
- title: {
833
- [key: string]: {
834
- [key: string]: unknown;
835
- };
836
- };
837
- excerpt: {
838
- [key: string]: {
839
- [key: string]: unknown;
840
- };
841
- };
842
- content: {
843
- [key: string]: unknown;
844
- } | null;
845
- metaTitle: {
846
- [key: string]: string;
847
- } | null;
848
- metaDescription: {
849
- [key: string]: string;
850
- } | null;
851
- tags: string[];
852
- isActive: boolean;
853
- isFeatured: boolean;
854
- priority: number;
855
- status: components["schemas"]["ArticleStatus"];
856
- publishedAt: string | null;
857
- createdAt: string | null;
858
- updatedAt: string | null;
859
- featureImage: components["schemas"]["FeatureImage"] | null;
860
- ogImage?: components["schemas"]["OgImage"] | null;
861
- mentionCounts?: components["schemas"]["ArticleMentionCounts"];
862
- }[];
863
- /**
864
- * FetchArticleResponse
865
- * @description A venue's article. `content` is a TipTap JSON document; treat it as opaque on the wire. `featureImage` is resolved per-locale with a fallback to the venue's primary locale. `ogImage` overrides the social-card image when set; `null` means it falls back to `featureImage`.
866
- */
867
- FetchArticleResponse: {
868
- id: string;
869
- venueId: string;
870
- accessor: string;
871
- slug: {
872
- [key: string]: {
873
- [key: string]: unknown;
874
- };
875
- };
876
- title: {
877
- [key: string]: {
878
- [key: string]: unknown;
879
- };
880
- };
881
- excerpt: {
882
- [key: string]: {
883
- [key: string]: unknown;
884
- };
885
- };
886
- content: {
887
- [key: string]: unknown;
888
- } | null;
889
- metaTitle: {
890
- [key: string]: string;
891
- } | null;
892
- metaDescription: {
893
- [key: string]: string;
894
- } | null;
895
- tags: string[];
896
- isActive: boolean;
897
- isFeatured: boolean;
898
- priority: number;
899
- status: components["schemas"]["ArticleStatus"];
900
- publishedAt: string | null;
901
- createdAt: string | null;
902
- updatedAt: string | null;
903
- featureImage: components["schemas"]["FeatureImage"] | null;
904
- ogImage?: components["schemas"]["OgImage"] | null;
905
- };
906
- /** EditArticleRequest */
907
- EditArticleRequest: {
908
- slug?: {
909
- [key: string]: unknown;
910
- };
911
- title?: {
912
- [key: string]: unknown;
913
- };
914
- excerpt?: {
915
- [key: string]: unknown;
916
- };
917
- content?: {
918
- [key: string]: unknown;
919
- };
920
- metaTitle?: {
921
- [key: string]: string;
922
- };
923
- metaDescription?: {
924
- [key: string]: string;
925
- };
926
- tags?: string[];
927
- isActive?: boolean;
928
- isFeatured?: boolean;
929
- priority?: number;
930
- };
931
- /**
932
- * EditArticleResponse
933
- * @description A venue's article. `content` is a TipTap JSON document; treat it as opaque on the wire. `featureImage` is resolved per-locale with a fallback to the venue's primary locale. `ogImage` overrides the social-card image when set; `null` means it falls back to `featureImage`.
934
- */
935
- EditArticleResponse: {
936
- id: string;
937
- venueId: string;
938
- accessor: string;
939
- slug: {
940
- [key: string]: {
941
- [key: string]: unknown;
942
- };
943
- };
944
- title: {
945
- [key: string]: {
946
- [key: string]: unknown;
947
- };
948
- };
949
- excerpt: {
950
- [key: string]: {
951
- [key: string]: unknown;
952
- };
953
- };
954
- content: {
955
- [key: string]: unknown;
956
- } | null;
957
- metaTitle: {
958
- [key: string]: string;
959
- } | null;
960
- metaDescription: {
961
- [key: string]: string;
962
- } | null;
963
- tags: string[];
964
- isActive: boolean;
965
- isFeatured: boolean;
966
- priority: number;
967
- status: components["schemas"]["ArticleStatus"];
968
- publishedAt: string | null;
969
- createdAt: string | null;
970
- updatedAt: string | null;
971
- featureImage: components["schemas"]["FeatureImage"] | null;
972
- ogImage?: components["schemas"]["OgImage"] | null;
973
- };
974
- /** SetArticleFeatureImageUploadBody */
975
- SetArticleFeatureImageUploadBody: {
976
- /** @description Image file (multipart/form-data field) */
977
- file: string;
978
- };
979
- /**
980
- * PatchArticleFeatureImageBody
981
- * @description 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`.
982
- */
983
- PatchArticleFeatureImageBody: {
984
- caption?: {
985
- [key: string]: unknown;
986
- };
987
- alt?: {
988
- [key: string]: unknown;
989
- };
990
- };
991
- /** FetchAssetsByTagResponse */
992
- FetchAssetsByTagResponse: {
993
- id: string;
994
- type: components["schemas"]["AssetType"];
995
- metadata: {
996
- width?: number;
997
- height?: number;
998
- duration?: number;
999
- } | null;
1000
- isActive: boolean;
1001
- sortIndex: string | null;
1002
- updatedAt: unknown;
1003
- updatedBy: string | null;
1004
- createdAt: unknown;
1005
- createdBy: string | null;
1006
- venueId: string | null;
1007
- tags: string[] | null;
1008
- bucket: string;
1009
- storagePath: string;
1010
- filename: string;
1011
- contentType: string;
1012
- sizeBytes: number;
1013
- caption: {
1014
- [key: string]: unknown;
1015
- };
1016
- alt: {
1017
- [key: string]: unknown;
1018
- };
1019
- cropArea: {
1020
- x: number;
1021
- y: number;
1022
- width: number;
1023
- height: number;
1024
- } | null;
1025
- publicUrl: string;
1026
- }[];
1027
- /** BasketTotals */
1028
- BasketTotals: {
1029
- currency: components["schemas"]["Currency"];
1030
- itemsTotal: number;
1031
- taxAmount: number;
1032
- depositCharge: number;
1033
- grossTotal: number;
1034
- depositCredit: number;
1035
- effectiveTotal: number;
1036
- cashRefund: number;
1037
- returnable: {
1038
- depositwareTemplateId: string;
1039
- count: number;
1040
- }[];
1041
- };
1042
- /** FetchBasketResponse */
1043
- FetchBasketResponse: {
1044
- /** Format: uuid */
1045
- id: string;
1046
- sessionId: string;
1047
- status: components["schemas"]["BasketStatus"];
1048
- currency: components["schemas"]["Currency"];
1049
- items: {
1050
- /** Format: uuid */
1051
- id: string;
1052
- metadata: {
1053
- [key: string]: unknown;
1054
- } | null;
1055
- deposit: {
1056
- depositwareTemplateId: string;
1057
- name: {
1058
- [key: string]: string;
1059
- };
1060
- amount: number;
1061
- currency: components["schemas"]["Currency"];
1062
- } | null;
1063
- menuItems: {
1064
- menuItemId: string;
1065
- role: string | null;
1066
- quantity: number;
1067
- unit: components["schemas"]["Unit"];
1068
- }[];
1069
- }[];
1070
- itemCount: number;
1071
- totals: components["schemas"]["BasketTotals"];
1072
- declaredReturns: {
1073
- depositwareTemplateId: string;
1074
- count: number;
1075
- }[];
1076
- expiresAt: string;
1077
- createdAt: string | null;
1078
- updatedAt: string | null;
1079
- };
1080
- /**
1081
- * AddToBasketRequest
1082
- * @description Add an item to the shopping basket
1083
- */
1084
- AddToBasketRequest: {
1085
- /** Format: uuid */
1086
- venueId: string;
1087
- sessionId: string;
1088
- menuItems: {
1089
- menuItemId: string;
1090
- role?: string;
1091
- quantity?: number;
1092
- unit?: components["schemas"]["Unit"];
1093
- }[];
1094
- metadata?: {
1095
- [key: string]: unknown;
1096
- };
1097
- };
1098
- /** AddToBasketResponse */
1099
- AddToBasketResponse: {
1100
- /** Format: uuid */
1101
- basketItemId: string;
1102
- itemCount: number;
1103
- deposit: {
1104
- depositwareTemplateId: string;
1105
- name: {
1106
- [key: string]: string;
1107
- };
1108
- amount: number;
1109
- currency: components["schemas"]["Currency"];
1110
- } | null;
1111
- totals: components["schemas"]["BasketTotals"];
1112
- };
1113
- /** RemoveFromBasketResponse */
1114
- RemoveFromBasketResponse: {
1115
- success: boolean;
1116
- /** Format: uuid */
1117
- basketItemId: string;
1118
- itemCount: number;
1119
- totals: components["schemas"]["BasketTotals"] | null;
1120
- };
1121
- /** GetBasketTotalsRequest */
1122
- GetBasketTotalsRequest: {
1123
- venueAccessor: string;
1124
- basketId: string;
1125
- declaredReturns?: {
1126
- depositwareTemplateId: string;
1127
- count: number;
1128
- }[];
1129
- };
1130
- /** GetBasketTotalsResponse */
1131
- GetBasketTotalsResponse: {
1132
- currency: components["schemas"]["Currency"];
1133
- itemsTotal: number;
1134
- taxAmount: number;
1135
- depositCharge: number;
1136
- grossTotal: number;
1137
- depositCredit: number;
1138
- effectiveTotal: number;
1139
- cashRefund: number;
1140
- returnable: {
1141
- depositwareTemplateId: string;
1142
- count: number;
1143
- }[];
1144
- };
1145
- /** AbandonBasketRequest */
1146
- AbandonBasketRequest: {
1147
- sessionId: string;
1148
- };
1149
- /** AbandonBasketResponse */
1150
- AbandonBasketResponse: {
1151
- abandonedCount: number;
1152
- };
1153
- /** SetBasketDeclaredReturnsRequest */
1154
- SetBasketDeclaredReturnsRequest: {
1155
- venueAccessor: string;
1156
- basketId: string;
1157
- sessionId: string;
1158
- declaredReturns: {
1159
- depositwareTemplateId: string;
1160
- count: number;
1161
- }[];
1162
- };
1163
- /** SetBasketDeclaredReturnsResponse */
1164
- SetBasketDeclaredReturnsResponse: {
1165
- basketId: string;
1166
- declaredReturns: {
1167
- depositwareTemplateId: string;
1168
- count: number;
1169
- }[];
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
- };
1235
- /** FetchEventsResponse */
1236
- FetchEventsResponse: {
1237
- id: string;
1238
- venueId: string;
1239
- accessor: string | null;
1240
- name: {
1241
- [key: string]: string;
1242
- };
1243
- description: {
1244
- [key: string]: string;
1245
- } | null;
1246
- scheduleId: string | null;
1247
- ritualId: string | null;
1248
- occurrenceDate: string | null;
1249
- ritualType: components["schemas"]["RitualType"];
1250
- maxBookings: number | null;
1251
- maxGuests: number | null;
1252
- minPartySize: number | null;
1253
- maxPartySize: number | null;
1254
- isPublic: boolean;
1255
- isRecurring: boolean;
1256
- reservationsEnabled: boolean;
1257
- bookingOpensAtDays: number | null;
1258
- bookingClosesAtOffset: number | null;
1259
- isActive: boolean;
1260
- isFeatured: boolean;
1261
- takesOverDay: boolean;
1262
- createdBy: string | null;
1263
- updatedBy: string | null;
1264
- createdAt: unknown;
1265
- updatedAt: unknown;
1266
- schedule: {
1267
- id: string;
1268
- duration: number | null;
1269
- name: {
1270
- [key: string]: string;
1271
- };
1272
- timezone: string;
1273
- description: {
1274
- [key: string]: string;
1275
- } | null;
1276
- rrule: string | null;
1277
- exdates: string[] | null;
1278
- validFrom: string | null;
1279
- validTo: string | null;
1280
- slotMode: components["schemas"]["SlotMode"];
1281
- intervalDuration: number | null;
1282
- isActive: boolean;
1283
- sortIndex: string | null;
1284
- updatedAt: unknown;
1285
- updatedBy: string | null;
1286
- createdAt: unknown;
1287
- createdBy: string | null;
1288
- scheduleOverrides: {
1289
- id: string;
1290
- date: string;
1291
- isActive: boolean;
1292
- updatedAt: unknown;
1293
- updatedBy: string | null;
1294
- createdAt: unknown;
1295
- createdBy: string | null;
1296
- scheduleId: string;
1297
- reason: {
1298
- [key: string]: string;
1299
- } | null;
1300
- scheduleOverrideTimeSlots: {
1301
- sortIndex: string | null;
1302
- overrideId: string;
1303
- timeSlotId: string;
1304
- timeSlot: {
1305
- id: string;
1306
- isActive: boolean | null;
1307
- sortIndex: string | null;
1308
- updatedAt: unknown;
1309
- updatedBy: string | null;
1310
- createdAt: unknown;
1311
- createdBy: string | null;
1312
- startTime: string;
1313
- endTime: string | null;
1314
- isSchedulable: boolean | null;
1315
- };
1316
- }[];
1317
- }[];
1318
- scheduleTimeSlots: {
1319
- sortIndex: string | null;
1320
- scheduleId: string | null;
1321
- timeSlotId: string | null;
1322
- dayOfWeek: components["schemas"]["DayOfWeek"];
1323
- timeSlot: {
1324
- id: string;
1325
- isActive: boolean | null;
1326
- sortIndex: string | null;
1327
- updatedAt: unknown;
1328
- updatedBy: string | null;
1329
- createdAt: unknown;
1330
- createdBy: string | null;
1331
- startTime: string;
1332
- endTime: string | null;
1333
- isSchedulable: boolean | null;
1334
- } | null;
1335
- }[];
1336
- } | null;
1337
- nextOccurrence: string | null;
1338
- assets: {
1339
- id: string;
1340
- type: components["schemas"]["AssetType"];
1341
- metadata: {
1342
- width?: number;
1343
- height?: number;
1344
- duration?: number;
1345
- } | null;
1346
- isActive: boolean;
1347
- sortIndex: string | null;
1348
- updatedAt: unknown;
1349
- updatedBy: string | null;
1350
- createdAt: unknown;
1351
- createdBy: string | null;
1352
- venueId: string | null;
1353
- tags: string[] | null;
1354
- bucket: string;
1355
- storagePath: string;
1356
- filename: string;
1357
- contentType: string;
1358
- sizeBytes: number;
1359
- caption: {
1360
- [key: string]: unknown;
1361
- };
1362
- alt: {
1363
- [key: string]: unknown;
1364
- };
1365
- cropArea: {
1366
- x: number;
1367
- y: number;
1368
- width: number;
1369
- height: number;
1370
- } | null;
1371
- publicUrl: string;
1372
- }[];
1373
- timeSlots: {
1374
- id?: string;
1375
- startTime?: string;
1376
- endTime?: string | null;
1377
- dayOfWeek?: components["schemas"]["DayOfWeek"];
1378
- isSchedulable?: boolean | null;
1379
- }[];
1380
- scheduleOverrides: {
1381
- id: string;
1382
- date: string;
1383
- reason: {
1384
- [key: string]: string;
1385
- } | null;
1386
- timeSlots: {
1387
- id?: string;
1388
- startTime?: string;
1389
- endTime?: string | null;
1390
- dayOfWeek?: components["schemas"]["DayOfWeek"];
1391
- isSchedulable?: boolean | null;
1392
- }[];
1393
- }[];
1394
- promotions: {
1395
- id: string;
1396
- name: {
1397
- [key: string]: string;
1398
- };
1399
- description: {
1400
- [key: string]: string;
1401
- } | null;
1402
- validFrom: string | null;
1403
- validTo: string | null;
1404
- isActive: boolean;
1405
- updatedAt: unknown;
1406
- updatedBy: string | null;
1407
- createdAt: unknown;
1408
- createdBy: string | null;
1409
- venueId: string;
1410
- benefitType: components["schemas"]["PromotionBenefitType"];
1411
- benefitValue: {
1412
- [key: string]: unknown;
1413
- };
1414
- conditions: {
1415
- [key: string]: unknown;
1416
- } | null;
1417
- maxRedemptions: number | null;
1418
- currentRedemptions: number | null;
1419
- timeSlotIds: string[] | null;
1420
- }[];
1421
- }[];
1422
- /**
1423
- * FetchEventResponse
1424
- * @description Event details. Nested objects (schedule, timeSlots, menus, assets, nextOccurrence) pass through; their shape follows the SDK Event interface.
1425
- */
1426
- FetchEventResponse: {
1427
- id: string;
1428
- venueId: string;
1429
- accessor: string | null;
1430
- name: {
1431
- [key: string]: string;
1432
- };
1433
- description: {
1434
- [key: string]: string;
1435
- } | null;
1436
- scheduleId: string | null;
1437
- maxBookings: number | null;
1438
- maxGuests: number | null;
1439
- minPartySize: number | null;
1440
- maxPartySize: number | null;
1441
- isPublic: boolean;
1442
- isRecurring: boolean;
1443
- reservationsEnabled: boolean;
1444
- bookingOpensAtDays: number | null;
1445
- bookingClosesAtOffset: number | null;
1446
- isActive: boolean;
1447
- isFeatured: boolean;
1448
- takesOverDay: boolean;
1449
- createdAt: unknown;
1450
- updatedAt: unknown;
1451
- nextOccurrence?: string | null;
1452
- schedule?: {
1453
- id: string;
1454
- name: {
1455
- [key: string]: string;
1456
- };
1457
- description: {
1458
- [key: string]: string;
1459
- } | null;
1460
- timezone: string;
1461
- rrule: string | null;
1462
- exdates: string[] | null;
1463
- validFrom: string | null;
1464
- validTo: string | null;
1465
- isActive: boolean;
1466
- slotMode: components["schemas"]["SlotMode"];
1467
- intervalDuration: number | null;
1468
- duration: number | null;
1469
- scheduleTimeSlots?: {
1470
- dayOfWeek: components["schemas"]["DayOfWeek"];
1471
- timeSlot: {
1472
- id: string;
1473
- startTime: string;
1474
- endTime: string | null;
1475
- isActive: boolean | null;
1476
- isSchedulable: boolean | null;
1477
- };
1478
- }[];
1479
- };
1480
- menus?: {
1481
- id: string;
1482
- accessor: string;
1483
- name: {
1484
- [key: string]: string;
1485
- };
1486
- category: string;
1487
- }[];
1488
- assets?: {
1489
- id: string;
1490
- bucket: string;
1491
- storagePath: string;
1492
- filename: string;
1493
- contentType: string;
1494
- sizeBytes: number;
1495
- sortIndex: string | null;
1496
- publicUrl: string;
1497
- }[];
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
- }[];
1509
- /**
1510
- * CreateEventRequest
1511
- * @description Request payload for creating a new event
1512
- */
1513
- CreateEventRequest: {
1514
- accessor?: string | null;
1515
- name: (string | number | boolean | (null)) | {
1516
- [key: string]: unknown;
1517
- } | unknown[];
1518
- description?: ((string | number | boolean | (null)) | {
1519
- [key: string]: unknown;
1520
- } | unknown[]) | null;
1521
- scheduleId?: string | null;
1522
- occurrenceDate?: string | null;
1523
- maxBookings?: number | null;
1524
- maxGuests?: number | null;
1525
- minPartySize?: number | null;
1526
- maxPartySize?: number | null;
1527
- staffByRole?: ((string | number | boolean | (null)) | {
1528
- [key: string]: unknown;
1529
- } | unknown[]) | null;
1530
- isPublic?: boolean;
1531
- reservationsEnabled?: boolean;
1532
- bookingOpensAtDays?: number | null;
1533
- bookingClosesAtOffset?: number | null;
1534
- isActive?: boolean;
1535
- isFeatured?: boolean;
1536
- takesOverDay?: boolean;
1537
- servedMarket?: ((string | number | boolean | (null)) | {
1538
- [key: string]: unknown;
1539
- } | unknown[]) | null;
1540
- schedule?: {
1541
- rrule?: string | null;
1542
- timezone?: string | null;
1543
- validFrom?: string | null;
1544
- validTo?: string | null;
1545
- timeRanges: {
1546
- startTime: string;
1547
- endTime: string;
1548
- lastSeatingTime?: string | null;
1549
- }[];
1550
- slotMode?: components["schemas"]["SlotMode"];
1551
- intervalDuration?: number | null;
1552
- duration?: number | null;
1553
- } | null;
1554
- ritualAccessor?: string | null;
1555
- venueAccessor: string;
1556
- };
1557
- /**
1558
- * CreateEventResponse
1559
- * @description Successfully created event
1560
- */
1561
- CreateEventResponse: {
1562
- id: string;
1563
- venueId: string;
1564
- accessor: string | null;
1565
- name: (string | number | boolean | (null)) | {
1566
- [key: string]: unknown;
1567
- } | unknown[];
1568
- description: ((string | number | boolean | (null)) | {
1569
- [key: string]: unknown;
1570
- } | unknown[]) | null;
1571
- scheduleId: string | null;
1572
- ritualId: string | null;
1573
- occurrenceDate: string | null;
1574
- maxBookings: number | null;
1575
- maxGuests: number | null;
1576
- minPartySize: number | null;
1577
- maxPartySize: number | null;
1578
- staffByRole: ((string | number | boolean | (null)) | {
1579
- [key: string]: unknown;
1580
- } | unknown[]) | null;
1581
- isPublic: boolean;
1582
- reservationsEnabled: boolean;
1583
- bookingOpensAtDays: number | null;
1584
- bookingClosesAtOffset: number | null;
1585
- isActive: boolean;
1586
- isFeatured: boolean;
1587
- takesOverDay: boolean;
1588
- servedMarket: ((string | number | boolean | (null)) | {
1589
- [key: string]: unknown;
1590
- } | unknown[]) | null;
1591
- createdBy: string | null;
1592
- updatedBy: string | null;
1593
- createdAt: unknown;
1594
- updatedAt: unknown;
1595
- };
1596
- /**
1597
- * EditEventRequest
1598
- * @description Partial-update body for an existing event
1599
- */
1600
- EditEventRequest: {
1601
- accessor?: string | null;
1602
- name?: (string | number | boolean | (null)) | {
1603
- [key: string]: unknown;
1604
- } | unknown[];
1605
- description?: ((string | number | boolean | (null)) | {
1606
- [key: string]: unknown;
1607
- } | unknown[]) | null;
1608
- scheduleId?: string | null;
1609
- occurrenceDate?: string | null;
1610
- maxBookings?: number | null;
1611
- maxGuests?: number | null;
1612
- minPartySize?: number | null;
1613
- maxPartySize?: number | null;
1614
- staffByRole?: ((string | number | boolean | (null)) | {
1615
- [key: string]: unknown;
1616
- } | unknown[]) | null;
1617
- isPublic?: boolean;
1618
- reservationsEnabled?: boolean;
1619
- bookingOpensAtDays?: number | null;
1620
- bookingClosesAtOffset?: number | null;
1621
- isActive?: boolean;
1622
- isFeatured?: boolean;
1623
- takesOverDay?: boolean;
1624
- servedMarket?: ((string | number | boolean | (null)) | {
1625
- [key: string]: unknown;
1626
- } | unknown[]) | null;
1627
- schedule?: {
1628
- rrule?: string | null;
1629
- timezone?: string | null;
1630
- validFrom?: string | null;
1631
- validTo?: string | null;
1632
- timeRanges: {
1633
- startTime: string;
1634
- endTime: string;
1635
- lastSeatingTime?: string | null;
1636
- }[];
1637
- slotMode?: components["schemas"]["SlotMode"];
1638
- intervalDuration?: number | null;
1639
- duration?: number | null;
1640
- } | null;
1641
- ritualAccessor?: string | null;
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
- };
1723
- /**
1724
- * EditEventResponse
1725
- * @description Successfully updated event with schedule
1726
- */
1727
- EditEventResponse: {
1728
- id: string;
1729
- venueId: string;
1730
- accessor: string | null;
1731
- name: (string | number | boolean | (null)) | {
1732
- [key: string]: unknown;
1733
- } | unknown[];
1734
- description: ((string | number | boolean | (null)) | {
1735
- [key: string]: unknown;
1736
- } | unknown[]) | null;
1737
- scheduleId: string | null;
1738
- ritualId: string | null;
1739
- occurrenceDate: string | null;
1740
- maxBookings: number | null;
1741
- maxGuests: number | null;
1742
- minPartySize: number | null;
1743
- maxPartySize: number | null;
1744
- staffByRole: ((string | number | boolean | (null)) | {
1745
- [key: string]: unknown;
1746
- } | unknown[]) | null;
1747
- isPublic: boolean;
1748
- reservationsEnabled: boolean;
1749
- bookingOpensAtDays: number | null;
1750
- bookingClosesAtOffset: number | null;
1751
- isActive: boolean;
1752
- isFeatured: boolean;
1753
- takesOverDay: boolean;
1754
- servedMarket: ((string | number | boolean | (null)) | {
1755
- [key: string]: unknown;
1756
- } | unknown[]) | null;
1757
- createdBy: string | null;
1758
- updatedBy: string | null;
1759
- createdAt: unknown;
1760
- updatedAt: unknown;
1761
- schedule: components["schemas"]["Schedule"] | null;
1762
- };
1763
- /** DeleteEventResponse */
1764
- DeleteEventResponse: {
1765
- id: string;
1766
- venueId: string;
1767
- accessor: string | null;
1768
- name: (string | number | boolean | (null)) | {
1769
- [key: string]: unknown;
1770
- } | unknown[];
1771
- description: ((string | number | boolean | (null)) | {
1772
- [key: string]: unknown;
1773
- } | unknown[]) | null;
1774
- scheduleId: string | null;
1775
- ritualId: string | null;
1776
- occurrenceDate: string | null;
1777
- maxBookings: number | null;
1778
- maxGuests: number | null;
1779
- minPartySize: number | null;
1780
- maxPartySize: number | null;
1781
- staffByRole: ((string | number | boolean | (null)) | {
1782
- [key: string]: unknown;
1783
- } | unknown[]) | null;
1784
- isPublic: boolean;
1785
- reservationsEnabled: boolean;
1786
- bookingOpensAtDays: number | null;
1787
- bookingClosesAtOffset: number | null;
1788
- isActive: boolean;
1789
- isFeatured: boolean;
1790
- takesOverDay: boolean;
1791
- servedMarket: ((string | number | boolean | (null)) | {
1792
- [key: string]: unknown;
1793
- } | unknown[]) | null;
1794
- createdBy: string | null;
1795
- updatedBy: string | null;
1796
- createdAt: unknown;
1797
- updatedAt: unknown;
1798
- };
1799
- /** UploadAssetResponse */
1800
- UploadAssetResponse: {
1801
- asset: {
1802
- id: string;
1803
- type: components["schemas"]["AssetType"];
1804
- tags: string[] | null;
1805
- bucket: string;
1806
- storagePath: string;
1807
- filename: string;
1808
- contentType: string;
1809
- sizeBytes: number;
1810
- caption: (string | number | boolean | (null)) | {
1811
- [key: string]: unknown;
1812
- } | unknown[];
1813
- alt: (string | number | boolean | (null)) | {
1814
- [key: string]: unknown;
1815
- } | unknown[];
1816
- metadata: ((string | number | boolean | (null)) | {
1817
- [key: string]: unknown;
1818
- } | unknown[]) | null;
1819
- cropArea: ((string | number | boolean | (null)) | {
1820
- [key: string]: unknown;
1821
- } | unknown[]) | null;
1822
- isActive: boolean;
1823
- sortIndex: string | null;
1824
- createdAt: unknown;
1825
- updatedAt: unknown;
1826
- createdBy: string | null;
1827
- updatedBy: string | null;
1828
- venueId: string | null;
1829
- contentHash: string | null;
1830
- };
1831
- publicUrl: string | null;
1832
- };
1833
- /** DeleteAssetResponse */
1834
- DeleteAssetResponse: {
1835
- success: boolean;
1836
- deleted: boolean;
1837
- };
1838
- /**
1839
- * FetchMenuResponse
1840
- * @description Menu details. `assets[]` is always hydrated with public URLs; `items[]` (with nested dish/beverage) is included when `expand=items` is requested. Each dish/beverage always carries its flat, hydrated `assets[]` (public URLs resolved) — the raw junction relations are never surfaced.
1841
- */
1842
- FetchMenuResponse: {
1843
- id: string;
1844
- name: {
1845
- [key: string]: string;
1846
- };
1847
- accessor: string;
1848
- metadata: {
1849
- orderingEnabled?: boolean;
1850
- compactTags?: string[];
1851
- showDepositware?: boolean;
1852
- tagSortOrder?: string[];
1853
- subscriptionsEnabled?: boolean;
1854
- isDeliveryEnabled?: boolean;
1855
- assetsEnabled?: boolean;
1856
- } | null;
1857
- description: {
1858
- [key: string]: string;
1859
- } | null;
1860
- sortIndex: string | null;
1861
- updatedAt: unknown;
1862
- updatedBy: string | null;
1863
- createdAt: unknown;
1864
- createdBy: string | null;
1865
- venueId: string;
1866
- deliveryThresholdAmount: number | null;
1867
- deliveryThresholdQuantity: number | null;
1868
- assets: {
1869
- id: string;
1870
- type: components["schemas"]["AssetType"];
1871
- metadata: {
1872
- width?: number;
1873
- height?: number;
1874
- duration?: number;
1875
- } | null;
1876
- isActive: boolean;
1877
- sortIndex: string | null;
1878
- updatedAt: unknown;
1879
- updatedBy: string | null;
1880
- createdAt: unknown;
1881
- createdBy: string | null;
1882
- venueId: string | null;
1883
- tags: string[] | null;
1884
- bucket: string;
1885
- storagePath: string;
1886
- filename: string;
1887
- contentType: string;
1888
- sizeBytes: number;
1889
- caption: {
1890
- [key: string]: unknown;
1891
- };
1892
- alt: {
1893
- [key: string]: unknown;
1894
- };
1895
- cropArea: {
1896
- x: number;
1897
- y: number;
1898
- width: number;
1899
- height: number;
1900
- } | null;
1901
- publicUrl: string;
1902
- }[];
1903
- items?: {
1904
- id: string;
1905
- type: components["schemas"]["MenuItemType"];
1906
- tags: string[] | null;
1907
- priceAdjustment: number;
1908
- currency: components["schemas"]["Currency"];
1909
- isActive: boolean;
1910
- isFeatured: boolean;
1911
- sortIndex: string | null;
1912
- dish: {
1913
- id: string;
1914
- accessor: string;
1915
- name: {
1916
- [key: string]: string;
1917
- };
1918
- shortName?: {
1919
- [key: string]: string;
1920
- };
1921
- description: {
1922
- [key: string]: string;
1923
- } | null;
1924
- longDescription?: {
1925
- [key: string]: string;
1926
- } | null;
1927
- isVegetarian: boolean | null;
1928
- isVegan: boolean | null;
1929
- isGlutenFree: boolean | null;
1930
- isDairyFree: boolean | null;
1931
- spiciness: number | null;
1932
- assets?: {
1933
- id: string;
1934
- type: components["schemas"]["AssetType"];
1935
- metadata: {
1936
- width?: number;
1937
- height?: number;
1938
- duration?: number;
1939
- } | null;
1940
- isActive: boolean;
1941
- sortIndex: string | null;
1942
- updatedAt: unknown;
1943
- updatedBy: string | null;
1944
- createdAt: unknown;
1945
- createdBy: string | null;
1946
- venueId: string | null;
1947
- tags: string[] | null;
1948
- bucket: string;
1949
- storagePath: string;
1950
- filename: string;
1951
- contentType: string;
1952
- sizeBytes: number;
1953
- caption: {
1954
- [key: string]: unknown;
1955
- };
1956
- alt: {
1957
- [key: string]: unknown;
1958
- };
1959
- cropArea: {
1960
- x: number;
1961
- y: number;
1962
- width: number;
1963
- height: number;
1964
- } | null;
1965
- publicUrl: string;
1966
- }[];
1967
- } | null;
1968
- beverage: {
1969
- id: string;
1970
- accessor: string;
1971
- name: {
1972
- [key: string]: string;
1973
- };
1974
- shortName?: {
1975
- [key: string]: string;
1976
- };
1977
- description: {
1978
- [key: string]: string;
1979
- } | null;
1980
- longDescription?: {
1981
- [key: string]: string;
1982
- } | null;
1983
- assets?: {
1984
- id: string;
1985
- type: components["schemas"]["AssetType"];
1986
- metadata: {
1987
- width?: number;
1988
- height?: number;
1989
- duration?: number;
1990
- } | null;
1991
- isActive: boolean;
1992
- sortIndex: string | null;
1993
- updatedAt: unknown;
1994
- updatedBy: string | null;
1995
- createdAt: unknown;
1996
- createdBy: string | null;
1997
- venueId: string | null;
1998
- tags: string[] | null;
1999
- bucket: string;
2000
- storagePath: string;
2001
- filename: string;
2002
- contentType: string;
2003
- sizeBytes: number;
2004
- caption: {
2005
- [key: string]: unknown;
2006
- };
2007
- alt: {
2008
- [key: string]: unknown;
2009
- };
2010
- cropArea: {
2011
- x: number;
2012
- y: number;
2013
- width: number;
2014
- height: number;
2015
- } | null;
2016
- publicUrl: string;
2017
- }[];
2018
- } | null;
2019
- }[];
2020
- };
2021
- /** FetchMenuBundlesResponse */
2022
- FetchMenuBundlesResponse: {
2023
- id: string;
2024
- menuId: string;
2025
- name: {
2026
- [key: string]: string;
2027
- };
2028
- shortName: {
2029
- [key: string]: string;
2030
- } | null;
2031
- description: {
2032
- [key: string]: string;
2033
- } | null;
2034
- tags: string[];
2035
- price: {
2036
- amount: number;
2037
- currency: components["schemas"]["Currency"];
2038
- };
2039
- currency: components["schemas"]["Currency"];
2040
- taxRateId: string;
2041
- isActive: boolean;
2042
- sortIndex: string | null;
2043
- depositwareTemplateId: string | null;
2044
- depositwareTemplate: {
2045
- name: {
2046
- [key: string]: string;
2047
- };
2048
- } | null;
2049
- deposit: {
2050
- depositwareTemplateId: string;
2051
- accessor: string;
2052
- amount: number;
2053
- currency: components["schemas"]["Currency"];
2054
- } | null;
2055
- }[];
2056
- /** FetchMenuSubscriptionsResponse */
2057
- FetchMenuSubscriptionsResponse: {
2058
- id: string;
2059
- menuId: string;
2060
- accessor: string;
2061
- name: {
2062
- [key: string]: string;
2063
- };
2064
- shortName: {
2065
- [key: string]: string;
2066
- } | null;
2067
- description: {
2068
- [key: string]: string;
2069
- } | null;
2070
- scheduleId: string | null;
2071
- allowance: number;
2072
- billingPeriod: components["schemas"]["SubscriptionPeriod"];
2073
- allowancePeriod: components["schemas"]["SubscriptionPeriod"];
2074
- expiryInDays: number;
2075
- price: number;
2076
- currency: components["schemas"]["Currency"];
2077
- stripeProductId: string | null;
2078
- stripePriceId: string | null;
2079
- isActive: boolean;
2080
- sortIndex: string | null;
2081
- subscriberCount: number;
2082
- redeemableTagSets: string[][];
2083
- posters: {
2084
- id: string;
2085
- menuSubscriptionId: string;
2086
- storagePath: string;
2087
- publicUrl: string;
2088
- filename: string;
2089
- contentType: string;
2090
- sizeBytes: number;
2091
- sortIndex: string | null;
2092
- createdBy: string | null;
2093
- createdAt: string | null;
2094
- }[];
2095
- }[];
2096
- /**
2097
- * PlaceOrderRequest
2098
- * @description Place a new order for a specific venue
2099
- */
2100
- PlaceOrderRequest: {
2101
- venueAccessor: string;
2102
- basketId: string;
2103
- sessionId: string;
2104
- paymentMethod: components["schemas"]["PaymentMethod"];
2105
- fulfillmentType: components["schemas"]["FulfillmentType"];
2106
- /** Format: date-time */
2107
- fulfillmentAt?: string | null;
2108
- guestFirstName?: string;
2109
- guestLastName?: string;
2110
- guestEmail?: string;
2111
- declaredReturns?: {
2112
- depositwareTemplateId: string;
2113
- count: number;
2114
- }[];
2115
- };
2116
- /** PlaceOrderResponse */
2117
- PlaceOrderResponse: {
2118
- id: string;
2119
- status: string;
2120
- publicId: string | null;
2121
- orderId: string;
2122
- quickReferenceNumber: number | null;
2123
- currency: components["schemas"]["Currency"];
2124
- };
2125
- /** ConfirmOrderRequest */
2126
- ConfirmOrderRequest: {
2127
- venueAccessor: string;
2128
- orderId: string;
2129
- paymentIntentId: string;
2130
- };
2131
- /** ConfirmOrderResponse */
2132
- ConfirmOrderResponse: {
2133
- id: string;
2134
- status: string;
2135
- publicId: string | null;
2136
- quickReferenceNumber: number | null;
2137
- guestId?: string;
2138
- };
2139
- /** FetchLatestOrderResponse */
2140
- FetchLatestOrderResponse: {
2141
- /** Format: uuid */
2142
- id: string;
2143
- publicId: string | null;
2144
- quickReferenceNumber: number | null;
2145
- status: components["schemas"]["OrderStatus"];
2146
- paymentStatus: components["schemas"]["PaymentStatus"];
2147
- fulfillmentType: components["schemas"]["FulfillmentType"];
2148
- fulfillmentAt: string | null;
2149
- orderedAt: string;
2150
- totalAmount: number;
2151
- currency: components["schemas"]["Currency"];
2152
- items: {
2153
- /** Format: uuid */
2154
- id: string;
2155
- metadata: {
2156
- [key: string]: unknown;
2157
- } | null;
2158
- deposit: {
2159
- depositwareTemplateId: string;
2160
- name: {
2161
- [key: string]: string;
2162
- };
2163
- amount: number;
2164
- currency: components["schemas"]["Currency"];
2165
- } | null;
2166
- menuItems: {
2167
- menuItemId: string;
2168
- role: string | null;
2169
- quantity: number;
2170
- unit: components["schemas"]["Unit"];
2171
- }[];
2172
- }[];
2173
- itemCount: number;
2174
- totals: components["schemas"]["BasketTotals"];
2175
- declaredReturns: {
2176
- depositwareTemplateId: string;
2177
- count: number;
2178
- }[];
2179
- };
2180
- /** CreatePaymentIntentRequest */
2181
- CreatePaymentIntentRequest: {
2182
- venueAccessor: string;
2183
- basketId: string;
2184
- currency: components["schemas"]["Currency"];
2185
- sessionId: string;
2186
- fulfillmentType: components["schemas"]["FulfillmentType"];
2187
- /** Format: date-time */
2188
- fulfillmentAt?: string | null;
2189
- guestFirstName?: string;
2190
- guestLastName?: string;
2191
- teamOrderPublicId?: string;
2192
- declaredReturns?: {
2193
- depositwareTemplateId: string;
2194
- count: number;
2195
- }[];
2196
- };
2197
- /** CreatePaymentIntentResponse */
2198
- CreatePaymentIntentResponse: {
2199
- clientSecret: string | null;
2200
- paymentIntentId: string;
2201
- orderId: string;
2202
- };
2203
- /** CreateDeltaPaymentIntentRequest */
2204
- CreateDeltaPaymentIntentRequest: {
2205
- venueAccessor: string;
2206
- basketId: string;
2207
- sessionId: string;
2208
- currency: components["schemas"]["Currency"];
2209
- declaredReturns?: {
2210
- depositwareTemplateId: string;
2211
- count: number;
2212
- }[];
2213
- };
2214
- /** CreateDeltaPaymentIntentResponse */
2215
- CreateDeltaPaymentIntentResponse: {
2216
- clientSecret: string | null;
2217
- paymentIntentId: string;
2218
- orderId: string;
2219
- amount: number;
2220
- /** @enum {string} */
2221
- status: "requires_payment_method" | "requires_confirmation" | "requires_action" | "processing" | "requires_capture" | "canceled" | "succeeded";
2222
- };
2223
- /** ReduceDeltaPaymentIntentRequest */
2224
- ReduceDeltaPaymentIntentRequest: {
2225
- venueAccessor: string;
2226
- basketId: string;
2227
- sessionId: string;
2228
- currency: components["schemas"]["Currency"];
2229
- declaredReturns?: {
2230
- depositwareTemplateId: string;
2231
- count: number;
2232
- }[];
2233
- };
2234
- /** ReduceDeltaPaymentIntentResponse */
2235
- ReduceDeltaPaymentIntentResponse: {
2236
- orderId: string;
2237
- paidTotal: number;
2238
- released: number;
2239
- };
2240
- /**
2241
- * MakeReservationRequest
2242
- * @description Request payload for making a new reservation
2243
- */
2244
- MakeReservationRequest: {
2245
- /** @description Venue identifier — UUID or URL-friendly slug (accessor). Resolved server-side. */
2246
- venueAccessor: string;
2247
- /**
2248
- * Format: uuid
2249
- * @description UUID of the event this reservation is for
2250
- */
2251
- eventId: string;
2252
- /**
2253
- * Format: uuid
2254
- * @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.
2255
- */
2256
- areaId?: string | null;
2257
- /** @description Date of the reservation in YYYY-MM-DD format */
2258
- reservationDate: string;
2259
- /** @description Time of the reservation in HH:MM:SS format */
2260
- reservationTime: string;
2261
- /** @description Number of guests in the party. Must be between 1 and 20. */
2262
- partySize: number;
2263
- /** @description Reservation duration in minutes. Defaults to 120 minutes if not specified. Range: 30-300 minutes. */
2264
- duration?: number | null;
2265
- /**
2266
- * Format: uuid
2267
- * @description UUID of existing customer profile if available
2268
- */
2269
- guestId?: string | null;
2270
- /** @description First name of the customer making the reservation */
2271
- guestFirstName: string;
2272
- /** @description Last name of the customer making the reservation */
2273
- guestLastName: string;
2274
- /**
2275
- * Format: email
2276
- * @description Email address for reservation confirmations and updates
2277
- */
2278
- guestEmail?: string | null;
2279
- /** @description Phone number for reservation confirmations and updates. Include country code for international numbers. */
2280
- guestPhone?: string | null;
2281
- contactPreference?: components["schemas"]["ContactPreference"];
2282
- source?: components["schemas"]["AreaBookingRequestSource"];
2283
- /** @description Any dietary restrictions, allergies, or special occasions (max 500 characters) */
2284
- specialRequests?: string | null;
2285
- /** @description Preferred seating area or table type (e.g., "window seat", "quiet area", "patio") */
2286
- tablePreference?: string | null;
2287
- /** @description Google Ads click identifier from the landing URL (auto-tagging). Stored for server-side conversion reporting. */
2288
- gclid?: string | null;
2289
- /** @description Google Ads click identifier for app/web (iOS) where `gclid` is unavailable. */
2290
- gbraid?: string | null;
2291
- /** @description Google Ads click identifier for web-to-app (iOS) where `gclid` is unavailable. */
2292
- wbraid?: string | null;
2293
- /** @description Meta (Facebook/Instagram) click identifier from the landing URL. Stored for server-side Conversions API reporting. */
2294
- fbclid?: string | null;
2295
- };
2296
- /**
2297
- * MakeReservationResponse
2298
- * @description Successfully created reservation
2299
- */
2300
- MakeReservationResponse: {
2301
- /**
2302
- * Format: uuid
2303
- * @description Unique identifier for the reservation
2304
- */
2305
- id: string;
2306
- /**
2307
- * Format: uuid
2308
- * @description Restaurant/tenant identifier
2309
- */
2310
- venueId: string;
2311
- /**
2312
- * Format: uuid
2313
- * @description Event identifier for this reservation
2314
- */
2315
- eventId: string;
2316
- areaId: string | null;
2317
- quickReferenceNumber: number | null;
2318
- /** @description Date of the reservation in YYYY-MM-DD format */
2319
- reservationDate: string;
2320
- /** @description Time of the reservation in HH:MM:SS format */
2321
- reservationTime: string;
2322
- /** @description Number of guests in the party */
2323
- partySize: number;
2324
- /** @description Reservation duration in minutes */
2325
- duration: number | null;
2326
- /**
2327
- * Format: uuid
2328
- * @description Link to customer profile if exists
2329
- */
2330
- guestId: string | null;
2331
- /** @description First name of the customer */
2332
- guestFirstName: string;
2333
- /** @description Last name of the customer */
2334
- guestLastName: string;
2335
- /** @description Customer email address */
2336
- guestEmail: string | null;
2337
- /** @description Customer phone number */
2338
- guestPhone: string | null;
2339
- contactPreference: components["schemas"]["ContactPreference"];
2340
- status: components["schemas"]["ReservationStatus"];
2341
- /** @description 6-character confirmation code for the reservation */
2342
- confirmationCode: string | null;
2343
- /** @description When the reservation was confirmed */
2344
- confirmedAt: unknown;
2345
- /** @description When the guest arrived */
2346
- arrivedAt: unknown;
2347
- /** @description When the guest was seated */
2348
- seatedAt: unknown;
2349
- /** @description When the dining was completed */
2350
- completedAt: unknown;
2351
- /** @description When the reservation was cancelled */
2352
- cancelledAt: unknown;
2353
- cancellationReason: components["schemas"]["CancellationReason"];
2354
- /** @description Additional cancellation details */
2355
- cancellationNote: string | null;
2356
- source: components["schemas"]["AreaBookingRequestSource"];
2357
- gclid: string | null;
2358
- gbraid: string | null;
2359
- wbraid: string | null;
2360
- fbclid: string | null;
2361
- /** @description Any special requirements or notes */
2362
- specialRequests: string | null;
2363
- /** @description Preferred seating location */
2364
- tablePreference: string | null;
2365
- /** @description User ID who created the reservation */
2366
- createdBy: string | null;
2367
- /** @description User ID who last updated the reservation */
2368
- updatedBy: string | null;
2369
- /** @description Reservation creation timestamp */
2370
- createdAt: unknown;
2371
- /** @description Last update timestamp */
2372
- updatedAt: unknown;
2373
- };
2374
- /** FetchRitualResponse */
2375
- FetchRitualResponse: {
2376
- id: string;
2377
- venueId: string;
2378
- accessor: string;
2379
- ritualType: components["schemas"]["RitualType"];
2380
- scheduleId: string | null;
2381
- name: (string | number | boolean | (null)) | {
2382
- [key: string]: unknown;
2383
- } | unknown[];
2384
- description: ((string | number | boolean | (null)) | {
2385
- [key: string]: unknown;
2386
- } | unknown[]) | null;
2387
- playbook: ((string | number | boolean | (null)) | {
2388
- [key: string]: unknown;
2389
- } | unknown[]) | null;
2390
- maxBookings: number | null;
2391
- maxGuests: number | null;
2392
- minPartySize: number | null;
2393
- maxPartySize: number | null;
2394
- isPublic: boolean;
2395
- reservationsEnabled: boolean;
2396
- bookingOpensAtDays: number | null;
2397
- bookingClosesAtOffset: number | null;
2398
- isActive: boolean;
2399
- isFeatured: boolean;
2400
- servedMarket: ((string | number | boolean | (null)) | {
2401
- [key: string]: unknown;
2402
- } | unknown[]) | null;
2403
- createdBy: string | null;
2404
- updatedBy: string | null;
2405
- createdAt: unknown;
2406
- updatedAt: unknown;
2407
- assets: {
2408
- id: string;
2409
- type: components["schemas"]["AssetType"];
2410
- tags: string[] | null;
2411
- bucket: string;
2412
- storagePath: string;
2413
- filename: string;
2414
- contentType: string;
2415
- sizeBytes: number;
2416
- caption: (string | number | boolean | (null)) | {
2417
- [key: string]: unknown;
2418
- } | unknown[];
2419
- alt: (string | number | boolean | (null)) | {
2420
- [key: string]: unknown;
2421
- } | unknown[];
2422
- metadata: ((string | number | boolean | (null)) | {
2423
- [key: string]: unknown;
2424
- } | unknown[]) | null;
2425
- cropArea: ((string | number | boolean | (null)) | {
2426
- [key: string]: unknown;
2427
- } | unknown[]) | null;
2428
- isActive: boolean;
2429
- sortIndex: string | null;
2430
- createdAt: unknown;
2431
- updatedAt: unknown;
2432
- createdBy: string | null;
2433
- updatedBy: string | null;
2434
- venueId: string | null;
2435
- contentHash: string | null;
2436
- publicUrl: string;
2437
- }[];
2438
- events: {
2439
- id: string;
2440
- venueId: string;
2441
- accessor: string | null;
2442
- name: (string | number | boolean | (null)) | {
2443
- [key: string]: unknown;
2444
- } | unknown[];
2445
- description: ((string | number | boolean | (null)) | {
2446
- [key: string]: unknown;
2447
- } | unknown[]) | null;
2448
- scheduleId: string | null;
2449
- ritualId: string | null;
2450
- occurrenceDate: string | null;
2451
- maxBookings: number | null;
2452
- maxGuests: number | null;
2453
- minPartySize: number | null;
2454
- maxPartySize: number | null;
2455
- staffByRole: ((string | number | boolean | (null)) | {
2456
- [key: string]: unknown;
2457
- } | unknown[]) | null;
2458
- isPublic: boolean;
2459
- reservationsEnabled: boolean;
2460
- bookingOpensAtDays: number | null;
2461
- bookingClosesAtOffset: number | null;
2462
- isActive: boolean;
2463
- isFeatured: boolean;
2464
- takesOverDay: boolean;
2465
- servedMarket: ((string | number | boolean | (null)) | {
2466
- [key: string]: unknown;
2467
- } | unknown[]) | null;
2468
- createdBy: string | null;
2469
- updatedBy: string | null;
2470
- createdAt: unknown;
2471
- updatedAt: unknown;
2472
- covers: number;
2473
- }[];
2474
- schedule: components["schemas"]["Schedule"] | null;
2475
- };
2476
- /** GetSubscriptionResponse */
2477
- GetSubscriptionResponse: {
2478
- id: string;
2479
- menuId: string;
2480
- accessor: string;
2481
- name: {
2482
- [key: string]: string;
2483
- };
2484
- shortName: {
2485
- [key: string]: string;
2486
- } | null;
2487
- description: {
2488
- [key: string]: string;
2489
- } | null;
2490
- scheduleId: string | null;
2491
- allowance: number;
2492
- billingPeriod: components["schemas"]["SubscriptionPeriod"];
2493
- allowancePeriod: components["schemas"]["SubscriptionPeriod"];
2494
- redeemableTagSets: string[][];
2495
- expiryInDays: number | null;
2496
- price: number;
2497
- currency: components["schemas"]["Currency"];
2498
- isActive: boolean;
2499
- sortIndex: string | null;
2500
- posters: {
2501
- id: string;
2502
- menuSubscriptionId: string;
2503
- storagePath: string;
2504
- /** Format: uri */
2505
- publicUrl: string;
2506
- filename: string;
2507
- contentType: string;
2508
- sizeBytes: number;
2509
- sortIndex: string | null;
2510
- createdBy: string | null;
2511
- createdAt: string | null;
2512
- }[];
2513
- };
2514
- /** SubscribeToSubscriptionBody */
2515
- SubscribeToSubscriptionBody: {
2516
- /** Format: email */
2517
- email: string;
2518
- firstName?: string;
2519
- lastName?: string;
2520
- sessionId?: string;
2521
- /** Format: uri */
2522
- successUrl: string;
2523
- /** Format: uri */
2524
- cancelUrl: string;
2525
- };
2526
- /** SubscribeToSubscriptionResponse */
2527
- SubscribeToSubscriptionResponse: {
2528
- /** Format: uri */
2529
- checkoutUrl: string | null;
2530
- sessionId: string;
2531
- };
2532
- /** CancelSubscriptionRequest */
2533
- CancelSubscriptionRequest: {
2534
- subscriberId: string;
2535
- };
2536
- /** CancelSubscriptionResponse */
2537
- CancelSubscriptionResponse: {
2538
- /** @enum {boolean} */
2539
- success: true;
2540
- };
2541
- /** GetSubscriptionCreditsResponse */
2542
- GetSubscriptionCreditsResponse: {
2543
- id: string;
2544
- subscriberId: string;
2545
- periodStart: string;
2546
- periodEnd: string;
2547
- expiresAt: string | null;
2548
- status: components["schemas"]["SubscriptionCreditStatus"];
2549
- redeemedAt: string | null;
2550
- orderId: string | null;
2551
- createdAt: string | null;
2552
- }[];
2553
- /** DeliveryAddress */
2554
- DeliveryAddress: {
2555
- street: string;
2556
- city: string;
2557
- state: string;
2558
- postalCode: string;
2559
- country: string;
2560
- };
2561
- /**
2562
- * CreateTeamOrderRequest
2563
- * @description Create a team order: promotes the lead's active basket into a shared team basket and returns the share token.
2564
- */
2565
- CreateTeamOrderRequest: {
2566
- venueAccessor: string;
2567
- sessionId: string;
2568
- /** Format: uuid */
2569
- menuId: string;
2570
- leadDisplayName: string;
2571
- teamName?: string;
2572
- /** Format: uri */
2573
- logoUrl?: string;
2574
- /** Format: date-time */
2575
- deadlineAt?: string | null;
2576
- fulfillmentType: components["schemas"]["FulfillmentType"];
2577
- /** Format: date-time */
2578
- fulfillmentAt?: string | null;
2579
- deliveryAddress?: components["schemas"]["DeliveryAddress"];
2580
- allowedPaymentMethods: components["schemas"]["PaymentMethod"][];
2581
- /** Format: uuid */
2582
- eventId?: string;
2583
- };
2584
- /** CreateTeamOrderResponse */
2585
- CreateTeamOrderResponse: {
2586
- publicId: string;
2587
- /** Format: uuid */
2588
- teamOrderId: string;
2589
- };
2590
- /** FetchTeamOrderResponse */
2591
- FetchTeamOrderResponse: {
2592
- teamOrder: {
2593
- id: string;
2594
- publicId: string;
2595
- venueId: string;
2596
- menuId: string;
2597
- eventId: string | null;
2598
- teamName: string | null;
2599
- logoUrl: string | null;
2600
- leadDisplayName: string;
2601
- status: components["schemas"]["TeamOrderStatus"];
2602
- allowedPaymentMethods: components["schemas"]["PaymentMethod"][];
2603
- fulfillmentType: components["schemas"]["FulfillmentType"];
2604
- /** Format: date-time */
2605
- fulfillmentAt: string | null;
2606
- /** Format: date-time */
2607
- deadlineAt: string | null;
2608
- /** Format: date-time */
2609
- lockedAt: string | null;
2610
- /** Format: date-time */
2611
- placedAt: string | null;
2612
- /** Format: date-time */
2613
- cancelledAt: string | null;
2614
- cancelReason: string | null;
2615
- deliveryAddressId: string | null;
2616
- diningLocation: string | null;
2617
- diningTime: string | null;
2618
- isDeliveryEnabled: boolean;
2619
- quickReferenceNumber: number | null;
2620
- };
2621
- deliveryThreshold: {
2622
- amount: number | null;
2623
- quantity: number | null;
2624
- };
2625
- participants: {
2626
- guestId: string;
2627
- basketId: string | null;
2628
- orderId: string | null;
2629
- participantNumber: number | null;
2630
- displayName: string | null;
2631
- status: components["schemas"]["ParticipantStatus"];
2632
- bundleCount: number;
2633
- amount: number;
2634
- paymentMethod: components["schemas"]["PaymentMethod"];
2635
- isLead: boolean;
2636
- isMe: boolean;
2637
- /** Format: date-time */
2638
- joinedAt: string;
2639
- items: {
2640
- id: string;
2641
- metadata: {
2642
- [key: string]: unknown;
2643
- } | null;
2644
- menuItems: {
2645
- menuItemId: string;
2646
- role: string | null;
2647
- quantity: number;
2648
- unit: components["schemas"]["Unit"];
2649
- }[];
2650
- isPaid: boolean;
2651
- }[];
2652
- payments: {
2653
- amount: number;
2654
- method: components["schemas"]["PaymentMethod"];
2655
- /** @enum {string} */
2656
- status: "authorized" | "captured" | "cash_pending" | "cash_received";
2657
- /** Format: date-time */
2658
- createdAt: string;
2659
- cardLast4: string | null;
2660
- }[];
2661
- paidTotal: number;
2662
- amountDue: number;
2663
- declaredReturns: {
2664
- depositwareTemplateId: string;
2665
- count: number;
2666
- }[];
2667
- leadSettledAt: string | null;
2668
- }[];
2669
- aggregatedTotals: {
2670
- confirmedBundleCount: number;
2671
- confirmedAmount: number;
2672
- totalBundleCount: number;
2673
- };
2674
- thresholdCheck: {
2675
- meets: boolean;
2676
- failedConstraints: ("quantity" | "amount")[];
2677
- requiredQuantity: number | null;
2678
- currentQuantity: number;
2679
- requiredAmount: number | null;
2680
- currentAmount: number;
2681
- };
2682
- isLead: boolean;
2683
- };
2684
- /** JoinTeamOrderRequest */
2685
- JoinTeamOrderRequest: {
2686
- publicId: string;
2687
- sessionId: string;
2688
- displayName?: string;
2689
- };
2690
- /** JoinTeamOrderResponse */
2691
- JoinTeamOrderResponse: {
2692
- /** Format: uuid */
2693
- teamOrderId: string;
2694
- basketId: string;
2695
- guestId: string;
2696
- status: components["schemas"]["TeamOrderStatus"];
2697
- isLead: boolean;
2698
- alreadyJoined: boolean;
2699
- };
2700
- /** SubmitTeamOrderRequest */
2701
- SubmitTeamOrderRequest: {
2702
- publicId: string;
2703
- sessionId: string;
2704
- };
2705
- /** SubmitTeamOrderResponse */
2706
- SubmitTeamOrderResponse: {
2707
- /** Format: uuid */
2708
- teamOrderId: string;
2709
- status: components["schemas"]["TeamOrderStatus"];
2710
- capturedOrderIds: string[];
2711
- cashPendingOrderIds: string[];
2712
- droppedBasketIds: string[];
2713
- /** Format: date-time */
2714
- placedAt: string;
2715
- };
2716
- /** CancelTeamOrderRequest */
2717
- CancelTeamOrderRequest: {
2718
- publicId: string;
2719
- sessionId: string;
2720
- reason?: string;
2721
- };
2722
- /** CancelTeamOrderResponse */
2723
- CancelTeamOrderResponse: {
2724
- /** Format: uuid */
2725
- teamOrderId: string;
2726
- status: components["schemas"]["TeamOrderStatus"];
2727
- voidedPaymentIntentIds: string[];
2728
- /** Format: date-time */
2729
- cancelledAt: string;
2730
- };
2731
- /** ExtendDeadlineTeamOrderRequest */
2732
- ExtendDeadlineTeamOrderRequest: {
2733
- publicId: string;
2734
- sessionId: string;
2735
- /** Format: date-time */
2736
- newDeadlineAt: string;
2737
- };
2738
- /** ExtendDeadlineTeamOrderResponse */
2739
- ExtendDeadlineTeamOrderResponse: {
2740
- /** Format: uuid */
2741
- teamOrderId: string;
2742
- status: components["schemas"]["TeamOrderStatus"];
2743
- /** Format: date-time */
2744
- deadlineAt: string | null;
2745
- };
2746
- /** SetFulfillmentAtTeamOrderRequest */
2747
- SetFulfillmentAtTeamOrderRequest: {
2748
- publicId: string;
2749
- sessionId: string;
2750
- /** Format: date-time */
2751
- fulfillmentAt: string;
2752
- };
2753
- /** SetFulfillmentAtTeamOrderResponse */
2754
- SetFulfillmentAtTeamOrderResponse: {
2755
- /** Format: uuid */
2756
- teamOrderId: string;
2757
- status: components["schemas"]["TeamOrderStatus"];
2758
- /** Format: date-time */
2759
- fulfillmentAt: string;
2760
- /** Format: date-time */
2761
- deadlineAt: string | null;
2762
- };
2763
- /** SetDiningLocationTeamOrderRequest */
2764
- SetDiningLocationTeamOrderRequest: {
2765
- publicId: string;
2766
- sessionId: string;
2767
- diningLocation: string;
2768
- };
2769
- /** SetDiningLocationTeamOrderResponse */
2770
- SetDiningLocationTeamOrderResponse: {
2771
- /** Format: uuid */
2772
- teamOrderId: string;
2773
- status: components["schemas"]["TeamOrderStatus"];
2774
- diningLocation: string | null;
2775
- };
2776
- /** SetDiningTimeTeamOrderRequest */
2777
- SetDiningTimeTeamOrderRequest: {
2778
- publicId: string;
2779
- sessionId: string;
2780
- diningTime: string;
2781
- };
2782
- /** SetDiningTimeTeamOrderResponse */
2783
- SetDiningTimeTeamOrderResponse: {
2784
- /** Format: uuid */
2785
- teamOrderId: string;
2786
- status: components["schemas"]["TeamOrderStatus"];
2787
- diningTime: string;
2788
- diningOffset: number;
2789
- };
2790
- /** SetOrderLeadSettledRequest */
2791
- SetOrderLeadSettledRequest: {
2792
- publicId: string;
2793
- sessionId: string;
2794
- /** Format: uuid */
2795
- orderId: string;
2796
- settled: boolean;
2797
- };
2798
- /** SetOrderLeadSettledResponse */
2799
- SetOrderLeadSettledResponse: {
2800
- /** Format: uuid */
2801
- orderId: string;
2802
- leadSettledAt: string | null;
2803
- };
2804
- /** AutoExtendFulfillmentIfExpiredRequest */
2805
- AutoExtendFulfillmentIfExpiredRequest: {
2806
- publicId: string;
2807
- sessionId: string;
2808
- /** Format: date-time */
2809
- proposedFulfillmentAt: string;
2810
- };
2811
- /** AutoExtendFulfillmentIfExpiredResponse */
2812
- AutoExtendFulfillmentIfExpiredResponse: {
2813
- extended: boolean;
2814
- teamOrderId: string;
2815
- status: string;
2816
- /** Format: date-time */
2817
- fulfillmentAt: string;
2818
- /** Format: date-time */
2819
- deadlineAt: string | null;
2820
- /** Format: date-time */
2821
- previousFulfillmentAt: string;
2822
- waitingCount: number;
2823
- };
2824
- /** SwitchFulfillmentTeamOrderRequest */
2825
- SwitchFulfillmentTeamOrderRequest: {
2826
- publicId: string;
2827
- sessionId: string;
2828
- fulfillmentType: components["schemas"]["FulfillmentType"];
2829
- deliveryAddress?: components["schemas"]["DeliveryAddress"];
2830
- };
2831
- /** SwitchFulfillmentTeamOrderResponse */
2832
- SwitchFulfillmentTeamOrderResponse: {
2833
- /** Format: uuid */
2834
- teamOrderId: string;
2835
- status: components["schemas"]["TeamOrderStatus"];
2836
- fulfillmentType: components["schemas"]["FulfillmentType"];
2837
- deliveryAddressId: string | null;
2838
- };
2839
- /** UpdateDeliveryAddressTeamOrderRequest */
2840
- UpdateDeliveryAddressTeamOrderRequest: {
2841
- publicId: string;
2842
- sessionId: string;
2843
- deliveryAddress: components["schemas"]["DeliveryAddress"];
2844
- };
2845
- /** UpdateDeliveryAddressTeamOrderResponse */
2846
- UpdateDeliveryAddressTeamOrderResponse: {
2847
- /** Format: uuid */
2848
- teamOrderId: string;
2849
- deliveryAddressId: string;
2850
- };
2851
- /**
2852
- * GetVenueResponse
2853
- * @description A venue. The public API exposes only the minimal id + accessor + naming + locale fields the CLI's `venues use` / `auth whoami` consume.
2854
- */
2855
- GetVenueResponse: {
2856
- id: string;
2857
- accessor: string;
2858
- officialName: string;
2859
- legalName: string;
2860
- shortName: string;
2861
- brandName: string;
2862
- primaryLocale: string;
2863
- supportedLocales: string[];
2864
- timezone: string;
2865
- createdAt: unknown;
2866
- updatedAt: unknown;
2867
- };
2868
- /** GetWebsitePagesResponse */
2869
- GetWebsitePagesResponse: {
2870
- id: string;
2871
- venueId: string;
2872
- ownerType: components["schemas"]["WebsitePageOwnerType"];
2873
- ownerId: string | null;
2874
- label: ((string | number | boolean | (null)) | {
2875
- [key: string]: unknown;
2876
- } | unknown[]) | null;
2877
- path: string | null;
2878
- externalUrl: string | null;
2879
- createdBy: string | null;
2880
- updatedBy: string | null;
2881
- createdAt: unknown;
2882
- updatedAt: unknown;
2883
- }[];
2884
- /** CreateWebsitePageRequest */
2885
- CreateWebsitePageRequest: {
2886
- venueAccessor: string;
2887
- id?: string;
2888
- ownerType?: components["schemas"]["WebsitePageOwnerType"];
2889
- ownerId?: string | null;
2890
- label?: {
2891
- [key: string]: string;
2892
- } | null;
2893
- target: string;
2894
- };
2895
- /** CreateWebsitePageResponse */
2896
- CreateWebsitePageResponse: {
2897
- id: string;
2898
- venueId: string;
2899
- ownerType: components["schemas"]["WebsitePageOwnerType"];
2900
- ownerId: string | null;
2901
- label: ((string | number | boolean | (null)) | {
2902
- [key: string]: unknown;
2903
- } | unknown[]) | null;
2904
- path: string | null;
2905
- externalUrl: string | null;
2906
- createdBy: string | null;
2907
- updatedBy: string | null;
2908
- createdAt: unknown;
2909
- updatedAt: unknown;
2910
- };
2911
- /** UpdateWebsitePageRequest */
2912
- UpdateWebsitePageRequest: {
2913
- venueAccessor: string;
2914
- id: string;
2915
- label?: {
2916
- [key: string]: string;
2917
- } | null;
2918
- target: string;
2919
- };
2920
- /** UpdateWebsitePageResponse */
2921
- UpdateWebsitePageResponse: {
2922
- id: string;
2923
- venueId: string;
2924
- ownerType: components["schemas"]["WebsitePageOwnerType"];
2925
- ownerId: string | null;
2926
- label: ((string | number | boolean | (null)) | {
2927
- [key: string]: unknown;
2928
- } | unknown[]) | null;
2929
- path: string | null;
2930
- externalUrl: string | null;
2931
- createdBy: string | null;
2932
- updatedBy: string | null;
2933
- createdAt: unknown;
2934
- updatedAt: unknown;
2935
- };
2936
- /** DeleteWebsitePageResponse */
2937
- DeleteWebsitePageResponse: {
2938
- id: string;
2939
- venueId: string;
2940
- ownerType: components["schemas"]["WebsitePageOwnerType"];
2941
- ownerId: string | null;
2942
- label: ((string | number | boolean | (null)) | {
2943
- [key: string]: unknown;
2944
- } | unknown[]) | null;
2945
- path: string | null;
2946
- externalUrl: string | null;
2947
- createdBy: string | null;
2948
- updatedBy: string | null;
2949
- createdAt: unknown;
2950
- updatedAt: unknown;
2951
- };
2952
- /** @enum {string} */
2953
- ActorType: "human" | "robot";
2954
- /** @enum {string} */
2955
- AdditiveFunction: "acid" | "acidity_regulator" | "anti_caking_agent" | "anti_foaming_agent" | "antioxidant" | "bulking_agent" | "carrier" | "colour" | "emulsifier" | "emulsifying_salt" | "firming_agent" | "flavour_enhancer" | "flour_treatment_agent" | "foaming_agent" | "gelling_agent" | "glazing_agent" | "humectant" | "modified_starch" | "preservative" | "packaging_gas" | "propellant_gas" | "raising_agent" | "sequestrant" | "stabiliser" | "sweetener" | "thickener";
2956
- /** @enum {string} */
2957
- AreaBookingMode: "slot" | "day";
2958
- /** @enum {string} */
2959
- AreaBookingRequestSource: "website" | "phone" | "walk_in";
2960
- /** @enum {string} */
2961
- AreaBookingRequestStatus: "pending" | "approved" | "rejected" | "cancelled";
2962
- /** @enum {string} */
2963
- AreaBookingStatus: "confirmed" | "arrived" | "completed" | "cancelled" | "no_show";
2964
- /** @enum {string} */
2965
- AreaType: "indoor" | "outdoor";
2966
- /** @enum {string} */
2967
- ArticleEditorSaveState: "idle" | "saving" | "saved" | "error";
2968
- /** @enum {string} */
2969
- ArticleStatus: "draft" | "published";
2970
- /** @enum {string} */
2971
- BasketStatus: "active" | "abandoned" | "converted";
2972
- /** @enum {string} */
2973
- BeverageCategory: "wine" | "beer" | "coffee" | "tea" | "cocktail" | "juice" | "soft_drink" | "dairy_drink" | "spirit" | "water";
2974
- /** @enum {string} */
2975
- CancellationReason: "guest_request" | "restaurant_request";
2976
- /** @enum {string} */
2977
- ContactPreference: "email" | "phone" | "sms" | "none";
2978
- /** @enum {string} */
2979
- CountryCode: "AD" | "AE" | "AF" | "AG" | "AI" | "AL" | "AM" | "AO" | "AQ" | "AR" | "AS" | "AT" | "AU" | "AW" | "AX" | "AZ" | "BA" | "BB" | "BD" | "BE" | "BF" | "BG" | "BH" | "BI" | "BJ" | "BL" | "BM" | "BN" | "BO" | "BQ" | "BR" | "BS" | "BT" | "BV" | "BW" | "BY" | "BZ" | "CA" | "CC" | "CD" | "CF" | "CG" | "CH" | "CI" | "CK" | "CL" | "CM" | "CN" | "CO" | "CR" | "CU" | "CV" | "CW" | "CX" | "CY" | "CZ" | "DE" | "DJ" | "DK" | "DM" | "DO" | "DZ" | "EC" | "EE" | "EG" | "EH" | "ER" | "ES" | "ET" | "FI" | "FJ" | "FK" | "FM" | "FO" | "FR" | "GA" | "GB" | "GD" | "GE" | "GF" | "GG" | "GH" | "GI" | "GL" | "GM" | "GN" | "GP" | "GQ" | "GR" | "GS" | "GT" | "GU" | "GW" | "GY" | "HK" | "HM" | "HN" | "HR" | "HT" | "HU" | "ID" | "IE" | "IL" | "IM" | "IN" | "IO" | "IQ" | "IR" | "IS" | "IT" | "JE" | "JM" | "JO" | "JP" | "KE" | "KG" | "KH" | "KI" | "KM" | "KN" | "KP" | "KR" | "KW" | "KY" | "KZ" | "LA" | "LB" | "LC" | "LI" | "LK" | "LR" | "LS" | "LT" | "LU" | "LV" | "LY" | "MA" | "MC" | "MD" | "ME" | "MF" | "MG" | "MH" | "MK" | "ML" | "MM" | "MN" | "MO" | "MP" | "MQ" | "MR" | "MS" | "MT" | "MU" | "MV" | "MW" | "MX" | "MY" | "MZ" | "NA" | "NC" | "NE" | "NF" | "NG" | "NI" | "NL" | "NO" | "NP" | "NR" | "NU" | "NZ" | "OM" | "PA" | "PE" | "PF" | "PG" | "PH" | "PK" | "PL" | "PM" | "PN" | "PR" | "PS" | "PT" | "PW" | "PY" | "QA" | "RE" | "RO" | "RS" | "RU" | "RW" | "SA" | "SB" | "SC" | "SD" | "SE" | "SG" | "SH" | "SI" | "SJ" | "SK" | "SL" | "SM" | "SN" | "SO" | "SR" | "SS" | "ST" | "SV" | "SX" | "SY" | "SZ" | "TC" | "TD" | "TF" | "TG" | "TH" | "TJ" | "TK" | "TL" | "TM" | "TN" | "TO" | "TR" | "TT" | "TV" | "TW" | "TZ" | "UA" | "UG" | "UM" | "US" | "UY" | "UZ" | "VA" | "VC" | "VE" | "VG" | "VI" | "VN" | "VU" | "WF" | "WS" | "YE" | "YT" | "ZA" | "ZM" | "ZW";
2980
- /** @enum {string} */
2981
- Currency: "EUR" | "CHF";
2982
- /** @enum {string} */
2983
- DepositTransactionType: "charged" | "refunded" | "forfeited" | "waived" | "credit_used";
2984
- /** @enum {string} */
2985
- DepositwareStatus: "available" | "issued" | "returned" | "lost" | "damaged" | "retired";
2986
- /** @enum {string} */
2987
- EntityOwnerType: "event" | "dish" | "beverage" | "venue" | "menu" | "menuSubscription" | "ritual";
2988
- /** @enum {string} */
2989
- IntegrationNotificationType: "order_created" | "order_cancelled" | "order_completed" | "team_order_created" | "reservation_created" | "reservation_confirmed" | "reservation_cancelled";
2990
- /** @enum {string} */
2991
- IntegrationType: "telegram" | "google_ads" | "google_business_profile" | "meta_ads";
2992
- /** @enum {string} */
2993
- InventoryAssetStatus: "available" | "in_use" | "maintenance" | "retired";
2994
- /** @enum {string} */
2995
- InventoryCategory: "depositware" | "furniture" | "equipment" | "utensil";
2996
- /** @enum {string} */
2997
- InvitationScenario: "new_user" | "already_member" | "former_employee";
2998
- /** @enum {string} */
2999
- Locale: "aa" | "ab" | "ae" | "af" | "ak" | "am" | "an" | "ar" | "as" | "av" | "ay" | "az" | "ba" | "be" | "bg" | "bh" | "bi" | "bm" | "bn" | "bo" | "br" | "bs" | "ca" | "ce" | "ch" | "co" | "cr" | "cs" | "cu" | "cv" | "cy" | "da" | "de" | "dv" | "dz" | "ee" | "el" | "en" | "eo" | "es" | "et" | "eu" | "fa" | "ff" | "fi" | "fj" | "fo" | "fr" | "fy" | "ga" | "gd" | "gl" | "gn" | "gu" | "gv" | "ha" | "he" | "hi" | "ho" | "hr" | "ht" | "hu" | "hy" | "hz" | "ia" | "id" | "ie" | "ig" | "ii" | "ik" | "io" | "is" | "it" | "iu" | "ja" | "jv" | "ka" | "kg" | "ki" | "kj" | "kk" | "kl" | "km" | "kn" | "ko" | "kr" | "ks" | "ku" | "kv" | "kw" | "ky" | "la" | "lb" | "lg" | "li" | "ln" | "lo" | "lt" | "lu" | "lv" | "mg" | "mh" | "mi" | "mk" | "ml" | "mn" | "mr" | "ms" | "mt" | "my" | "na" | "nb" | "nd" | "ne" | "ng" | "nl" | "nn" | "no" | "nr" | "nv" | "ny" | "oc" | "oj" | "om" | "or" | "os" | "pa" | "pi" | "pl" | "ps" | "pt" | "qu" | "rm" | "rn" | "ro" | "ru" | "rw" | "sa" | "sc" | "sd" | "se" | "sg" | "si" | "sk" | "sl" | "sm" | "sn" | "so" | "sq" | "sr" | "ss" | "st" | "su" | "sv" | "sw" | "ta" | "te" | "tg" | "th" | "ti" | "tk" | "tl" | "tn" | "to" | "tr" | "ts" | "tt" | "tw" | "ty" | "ug" | "uk" | "ur" | "uz" | "ve" | "vi" | "vo" | "wa" | "wo" | "xh" | "yi" | "yo" | "za" | "zh" | "zu";
3000
- /** @enum {string} */
3001
- MenuItemType: "dish" | "beverage";
3002
- /** @enum {string} */
3003
- OccupancyReason: "ok" | "tables" | "personnel";
3004
- /** @enum {string} */
3005
- FulfillmentType: "pickup" | "delivery";
3006
- /** @enum {string} */
3007
- OrderStatus: "pending" | "in_progress" | "ready" | "completed" | "cancelled";
3008
- /** @enum {string} */
3009
- PaxBand: "1-2" | "3-4" | "5-6" | "7+";
3010
- /** @enum {string} */
3011
- PaymentMethod: "card" | "cash" | "voucher";
3012
- /** @enum {string} */
3013
- PaymentStatus: "unpaid" | "paid" | "refunded" | "authorized" | "cash_pending";
3014
- /** @enum {string} */
3015
- PlatformRole: "platform_maintainer";
3016
- /** @enum {string} */
3017
- ReservationMode: "passive" | "auto_steer";
3018
- /** @enum {string} */
3019
- Role: "superadmin" | "admin" | "manager" | "chef" | "cook" | "waiter" | "rider";
3020
- /** @enum {string} */
3021
- ScanTokenEntityType: "order" | "depositware";
3022
- /** @enum {string} */
3023
- SortOrder: "asc" | "desc";
3024
- /** @enum {string} */
3025
- SubscriberStatus: "active" | "paused" | "cancelled" | "past_due" | "trialing";
3026
- /** @enum {string} */
3027
- SubscriptionCreditStatus: "available" | "redeemed" | "expired";
3028
- /** @enum {string} */
3029
- SubscriptionPeriod: "week" | "month" | "year";
3030
- /** @enum {string} */
3031
- TeamOrderStatus: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
3032
- /** @enum {string} */
3033
- Unit: "grams" | "kilograms" | "liters" | "milliliters" | "pieces";
3034
- /** @enum {string} */
3035
- AdChannel: "google" | "facebook" | "instagram";
3036
- /** @enum {string} */
3037
- AdOwnerType: "event" | "ritual" | "venue" | "dish" | "beverage" | "menu";
3038
- /** @enum {string} */
3039
- AdStatus: "draft" | "ready" | "archived";
3040
- /** @enum {string} */
3041
- MentionEntityType: "dish" | "beverage" | "ingredient" | "menu" | "ritual";
3042
- /** @enum {string} */
3043
- MentionType: "link" | "value";
3044
- /** @enum {string} */
3045
- PendingSuperadminTransferStatus: "pending_invite" | "accepted_awaiting_payment" | "completed" | "cancelled" | "expired";
3046
- /** @enum {string} */
3047
- BillingMode: "single_anchor" | "split";
3048
- /** @enum {string} */
3049
- VenueChargeType: "base" | "addon";
3050
- /** @enum {string} */
3051
- AssetType: "image" | "video" | "document";
3052
- /** @enum {string} */
3053
- GbpMediaCategory: "cover" | "logo" | "gallery" | "video";
3054
- /** @enum {string} */
3055
- GbpSyncStatus: "processing" | "live" | "rejected" | "failed" | "removed";
3056
- /** @enum {string} */
3057
- GeoAreaType: "postcode" | "city" | "region";
3058
- /** @enum {string} */
3059
- Jurisdiction: "DE" | "CH" | "FR" | "IT";
3060
- /** @enum {string} */
3061
- EventAssetSource: "inherited" | "manual";
3062
- /** @enum {string} */
3063
- RitualType: "service" | "special";
3064
- /** @enum {string} */
3065
- DayOfWeek: "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday";
3066
- /** @enum {string} */
3067
- SlotMode: "interval" | "duration";
3068
- /** @enum {string} */
3069
- TeamOrderPaymentStatus: "authorized" | "captured" | "cash_pending" | "cash_received" | "voided" | "failed";
3070
- /** @enum {string} */
3071
- FeatureCategory: "articles" | "auth" | "billing" | "core" | "guests" | "events" | "inventory" | "menus" | "orders" | "platform" | "promotions" | "reservations" | "settings" | "venues";
3072
- /** @enum {string} */
3073
- FeatureStatus: "backlog" | "in_development" | "released";
3074
- /** @enum {string} */
3075
- MentionFieldFormatter: "text" | "currency" | "integer" | "percentage" | "boolean";
3076
- /** @enum {string} */
3077
- KeywordPolarity: "positive" | "negative";
3078
- /** @enum {string} */
3079
- PromotionBenefitType: "free_item" | "discount_percentage" | "discount_amount" | "buy_x_get_y";
3080
- /** @enum {string} */
3081
- ReservationPromotionStatus: "applied" | "redeemed" | "expired";
3082
- /** @enum {string} */
3083
- ReservationStatus: "pending" | "confirmed" | "arrived" | "seated" | "completed" | "cancelled" | "no_show";
3084
- /** @enum {string} */
3085
- ReservationMessageStatus: "draft" | "sent";
3086
- /** @enum {string} */
3087
- VenueEmailSenderStatus: "pending" | "verified" | "failed" | "temporary_failure";
3088
- /** @enum {string} */
3089
- WebsitePageOwnerType: "venue" | "menu" | "dish" | "beverage" | "ingredient" | "event" | "ritual";
3090
- /** @enum {string} */
3091
- VenueAssetType: "logomark" | "wordmark" | "combinationmark_horizontal" | "combinationmark_vertical";
3092
- /** @enum {string} */
3093
- VenueUserStatus: "pending" | "confirmed" | "revoked";
3094
- /** @enum {string} */
3095
- VenueType: "restaurant" | "fine_dining_restaurant" | "ghost_kitchen" | "food_truck";
3096
- /** @enum {string} */
3097
- ParticipantStatus: "browsing" | "authorized" | "cash_pending" | "placed" | "completed" | "cancelled";
3098
- /** @enum {string} */
3099
- EnumTrue: "true";
3100
- /** @enum {string} */
3101
- EnumFalse: "false";
3102
- };
3103
- responses: never;
3104
- parameters: never;
3105
- requestBodies: never;
3106
- headers: never;
3107
- pathItems: never;
3108
- }
3109
-
3110
- type schemas = components['schemas'];
3111
- type CreateEventRequest = schemas['CreateEventRequest'];
3112
- type CreateEventResponse = schemas['CreateEventResponse'];
3113
- type PatchEventRequest = schemas['EditEventRequest'];
3114
- type PatchEventResponse = schemas['EditEventResponse'];
3115
- type DeleteEventResponse = schemas['DeleteEventResponse'];
3116
- type UploadEventAssetResponse = schemas['UploadAssetResponse'];
3117
- /**
3118
- * Args for `client.events.uploadPoster()`. Mirrors
3119
- * {@link UploadFeatureImageArgs} — the SDK accepts a `Buffer` /
3120
- * `Uint8Array` payload + filename + content-type and builds the
3121
- * multipart FormData internally. Client ergonomics, no wire equivalent.
3122
- */
3123
- interface UploadEventAssetArgs {
3124
- data: Buffer | Uint8Array;
3125
- filename: string;
3126
- contentType: string;
3127
- }
3128
- /**
3129
- * A single ad row — generated-bound to the `FetchAdResponse` component
3130
- * (`createSelectSchema(ads)` server-side). Carries the polymorphic owner
3131
- * (`ownerEntityType` / `ownerEntityId`), the `channel`, the paste-ready
3132
- * Google Search Ad `content` document, and the lifecycle `status`.
3133
- */
3134
- type Ad = schemas['FetchAdResponse'];
3135
- /**
3136
- * The ads list response — generated-bound to `FetchAdsResponse` (an array
3137
- * of {@link Ad}), ordered by `createdAt`. Never hand-rolled.
3138
- */
3139
- type ListAdsResponse = schemas['FetchAdsResponse'];
3140
- type CreateAdRequest = schemas['CreateAdRequest'];
3141
- type CreateAdResponse = schemas['CreateAdResponse'];
3142
- type PatchAdRequest = schemas['EditAdRequest'];
3143
- type PatchAdResponse = schemas['EditAdResponse'];
3144
- type DeleteAdResponse = schemas['DeleteAdResponse'];
3145
- type EditMetaAdRequest = schemas['EditMetaAdRequest'];
3146
- type EditMetaAdResponse = schemas['EditMetaAdResponse'];
3147
- type SaveAdCalloutsRequest = schemas['SaveAdCalloutsRequest'];
3148
- type SaveAdCalloutsResponse = schemas['SaveAdCalloutsResponse'];
3149
- type SaveAdKeywordsRequest = schemas['SaveAdKeywordsRequest'];
3150
- type SaveAdKeywordsResponse = schemas['SaveAdKeywordsResponse'];
3151
- type SaveAdNegativeKeywordsRequest = schemas['SaveAdNegativeKeywordsRequest'];
3152
- type SaveAdNegativeKeywordsResponse = schemas['SaveAdNegativeKeywordsResponse'];
3153
- type SaveAdWebsitePagesRequest = schemas['SaveAdWebsitePagesRequest'];
3154
- type SaveAdWebsitePagesResponse = schemas['SaveAdWebsitePagesResponse'];
3155
- type SetAdBudgetRequest = schemas['SetAdBudgetRequest'];
3156
- type SetAdBudgetResponse = schemas['SetAdBudgetResponse'];
3157
- type GetCalloutsResponse = schemas['GetCalloutsResponse'];
3158
- type CreateCalloutRequest = schemas['CreateCalloutRequest'];
3159
- type CreateCalloutResponse = schemas['CreateCalloutResponse'];
3160
- type UpdateCalloutRequest = schemas['UpdateCalloutRequest'];
3161
- type UpdateCalloutResponse = schemas['UpdateCalloutResponse'];
3162
- type DeleteCalloutResponse = schemas['DeleteCalloutResponse'];
3163
- type GetWebsitePagesResponse = schemas['GetWebsitePagesResponse'];
3164
- type CreateWebsitePageRequest = schemas['CreateWebsitePageRequest'];
3165
- type CreateWebsitePageResponse = schemas['CreateWebsitePageResponse'];
3166
- type UpdateWebsitePageRequest = schemas['UpdateWebsitePageRequest'];
3167
- type UpdateWebsitePageResponse = schemas['UpdateWebsitePageResponse'];
3168
- type DeleteWebsitePageResponse = schemas['DeleteWebsitePageResponse'];
3169
- /**
3170
- * Optional filters for `client.ads.list()`. Each narrows the venue's ad
3171
- * set; omit all to list every ad. Client ergonomics, mapped to the wire
3172
- * query string by the resource layer.
3173
- */
3174
- interface ListAdsOptions {
3175
- /** Filter to ads owning this entity type (e.g. `event`). */
3176
- ownerEntityType?: string;
3177
- /** Filter to ads owning this specific entity id. */
3178
- ownerEntityId?: string;
3179
- /** Filter to ads on this channel (e.g. `google`). */
3180
- channel?: string;
3181
- }
3182
- type Article = schemas['FetchArticleResponse'];
3183
- type ListArticlesResponse = schemas['FetchArticlesResponse'];
3184
- type GetArticleResponse = schemas['FetchArticleResponse'];
3185
- type PatchArticleRequest = schemas['EditArticleRequest'];
3186
- type PatchArticleResponse = schemas['EditArticleResponse'];
3187
- type FeatureImage = schemas['FeatureImage'];
3188
- type PatchFeatureImageRequest = schemas['PatchArticleFeatureImageBody'];
3189
- /**
3190
- * Args for `client.articles.uploadFeatureImage()`. The SDK accepts a
3191
- * `Buffer` or `Uint8Array` payload + filename + content-type — it
3192
- * builds the FormData internally so callers don't have to know about
3193
- * multipart wire encoding. Client ergonomics, no wire equivalent.
3194
- */
3195
- interface UploadFeatureImageArgs {
3196
- data: Buffer | Uint8Array;
3197
- filename: string;
3198
- contentType: string;
3199
- }
3200
- interface ListArticlesOptions {
3201
- /** Only return articles whose `tags` array contains this value. */
3202
- tag?: string;
3203
- /** When `true`, include articles whose `publishedAt` is null. Default `false`. */
3204
- includeDrafts?: boolean;
3205
- /** When `true`, include articles whose `isActive` is `false`. Default `false`. */
3206
- includeInactive?: boolean;
3207
- }
3208
- type Venue = schemas['GetVenueResponse'];
3209
- type GetVenueResponse = schemas['GetVenueResponse'];
3210
- /**
3211
- * Order fulfillment type — bound to the generated `FulfillmentType`
3212
- * component (order3000's `order_fulfillment_type` enum, surfaced via
3213
- * `openapi-typescript`). Never hand-rolled.
3214
- */
3215
- type OrderFulfillmentType = schemas['FulfillmentType'];
3216
- type PlaceOrderRequest = Omit<schemas['PlaceOrderRequest'], 'fulfillmentAt'> & {
3217
- /**
3218
- * When the order should be fulfilled (ISO 8601 datetime or Date).
3219
- * Null / omitted in team-order mode — the Lead's pickup-time decision
3220
- * is attached to the team row and backfilled onto each child order at
3221
- * submit time.
3222
- */
3223
- fulfillmentAt?: Date | string | null;
3224
- };
3225
- type PlaceOrderResponse = schemas['PlaceOrderResponse'];
3226
- type MakeReservationRequest = schemas['MakeReservationRequest'];
3227
- type MakeReservationResponse = schemas['MakeReservationResponse'];
3228
- /**
3229
- * Day of week — generated-bound to the `dayOfWeek` enum carried by the
3230
- * events list schedule time-slot rows. The order3000 events output
3231
- * schema is now precise (no more `.passthrough()`), so this derives
3232
- * straight from the wire contract.
3233
- */
3234
- type DayOfWeek = NonNullable<NonNullable<schemas['FetchEventsResponse'][number]['schedule']>['scheduleTimeSlots'][number]['dayOfWeek']>;
3235
- /**
3236
- * A single event time slot — the one slot shape, used by both the weekly
3237
- * recurring `timeSlots[]` and the per-date `scheduleOverrides[].timeSlots[]`.
3238
- * `dayOfWeek` is present only on weekly slots (optional); every field is
3239
- * optional because the underlying join row may be absent, so consumers
3240
- * resolving "the slots bookable on date X" must guard. Generated-bound to
3241
- * the events list response's `timeSlots[]` element.
3242
- */
3243
- type TimeSlot = schemas['FetchEventsResponse'][number]['timeSlots'][number];
3244
- /**
3245
- * A date-specific schedule override for an event. Generated-bound to the
3246
- * events list response's `scheduleOverrides[]` element.
3247
- */
3248
- type ScheduleOverride = schemas['FetchEventsResponse'][number]['scheduleOverrides'][number];
3249
- /**
3250
- * An event's schedule (rrule, validity window, slot-generation settings,
3251
- * plus the nested override / time-slot rows). Generated-bound to the
3252
- * non-null `schedule` object on the events list response.
3253
- *
3254
- * `intervalDuration` / `duration` are milliseconds (codebase convention).
3255
- */
3256
- type Schedule = NonNullable<schemas['FetchEventsResponse'][number]['schedule']>;
3257
- /**
3258
- * An asset (image/video/document) attached to an event. Generated-bound to the
3259
- * events list response's `assets[]` element. Use the asset's `tags` (e.g.
3260
- * `'poster'`) to classify how it's used.
3261
- */
3262
- type EventAsset = schemas['FetchEventsResponse'][number]['assets'][number];
3263
- /**
3264
- * A promotion attached to an event. Generated-bound to the events list
3265
- * response's `promotions[]` element.
3266
- */
3267
- type Promotion = schemas['FetchEventsResponse'][number]['promotions'][number];
3268
- /**
3269
- * A single event as returned by the list endpoint, with schedule,
3270
- * posters, promotions, time slots and overrides inlined. Generated-bound
3271
- * to the events list response element — request-shape drift is now
3272
- * impossible.
3273
- */
3274
- type Event = schemas['FetchEventsResponse'][number];
3275
- interface ListEventsOptions {
3276
- /** Include private events in the response */
3277
- includePrivate?: boolean;
3278
- /** Include inactive events in the response */
3279
- includeInactive?: boolean;
3280
- /** Filter by isPublic status */
3281
- isPublic?: boolean;
3282
- /** Filter by isRecurring status */
3283
- isRecurring?: boolean;
3284
- /** Filter by isClosed status */
3285
- isClosed?: boolean;
3286
- /** Filter for events occurring within N days from today */
3287
- upcomingWithinDays?: number;
3288
- }
3289
- /**
3290
- * The events list response — generated-bound to `FetchEventsResponse`
3291
- * (an array of {@link Event}). Never hand-rolled.
3292
- */
3293
- type ListEventsResponse = schemas['FetchEventsResponse'];
3294
- /**
3295
- * An asset (image/video/document) as returned by the assets-by-tag endpoint,
3296
- * with its resolved Supabase `publicUrl`. Generated-bound to
3297
- * `FetchAssetsByTagResponse`'s element — never hand-rolled.
3298
- */
3299
- type Asset = schemas['FetchAssetsByTagResponse'][number];
3300
- interface ListAssetsOptions {
3301
- /** Required. Only assets carrying this tag are returned. */
3302
- tag: string;
3303
- /** Optional asset-type filter. */
3304
- type?: 'image' | 'video' | 'document';
3305
- }
3306
- /**
3307
- * The assets-by-tag list response — generated-bound to
3308
- * `FetchAssetsByTagResponse` (an array of {@link Asset}). Never hand-rolled.
3309
- */
3310
- type ListAssetsResponse = schemas['FetchAssetsByTagResponse'];
3311
- /**
3312
- * Menu item discriminant — generated-bound to the `type` enum on the
3313
- * menu response's `items[]` element. The `fetchMenu` output schema is
3314
- * now precise; never hand-rolled.
3315
- */
3316
- type MenuItemType = NonNullable<schemas['FetchMenuResponse']['items']>[number]['type'];
3317
- /**
3318
- * Crop area coordinates for assets. Shared UI helper (mirrors the
3319
- * `@kolaveri/molecules` Cropper type) — not a wire DTO.
3320
- */
3321
- interface CropArea {
3322
- x: number;
3323
- y: number;
3324
- width: number;
3325
- height: number;
3326
- }
3327
- /**
3328
- * A menu — generated-bound to `FetchMenuResponse`. order3000's
3329
- * `fetchMenu` action always projects the flat, hydrated client view:
3330
- * `assets[]` (menu-level) and every `items[].dish.assets[]` /
3331
- * `items[].beverage.assets[]` are resolved to flat assets carrying
3332
- * their Supabase `publicUrl`; the raw `*_assets` junction relations are
3333
- * stripped at source and never surface on the wire. Bound here via the
3334
- * same alias-derivation style as `Basket`/`BasketItem`.
3335
- */
3336
- type Menu = NonNullable<schemas['FetchMenuResponse']>;
3337
- /**
3338
- * A single menu item — generated-bound to the element type of
3339
- * `Menu.items[]` (present when `expand=items`).
3340
- */
3341
- type MenuItem = NonNullable<Menu['items']>[number];
3342
- /**
3343
- * The dish carried by a menu item — generated-bound to `MenuItem.dish`.
3344
- */
3345
- type MenuDish = NonNullable<MenuItem['dish']>;
3346
- /**
3347
- * The beverage carried by a menu item — generated-bound to
3348
- * `MenuItem.beverage`.
3349
- */
3350
- type MenuBeverage = NonNullable<MenuItem['beverage']>;
3351
- /**
3352
- * A flat, hydrated asset — generated-bound to the element type of the
3353
- * always-present menu-level `Menu.assets[]`. Identical in shape to the
3354
- * per-item `dish.assets[]` / `beverage.assets[]` elements (all are the
3355
- * same hydrated asset projection with a resolved `publicUrl`).
3356
- */
3357
- type MenuAsset = NonNullable<Menu['assets']>[number];
3358
- interface GetMenuOptions {
3359
- /** Expand related resources (items, assets) */
3360
- expand?: ('items' | 'assets')[];
3361
- }
3362
- /**
3363
- * Wire shape for a single menu bundle, bound to the generated OpenAPI
3364
- * schema (`FetchMenuBundlesResponse`) — never hand-rolled. The
3365
- * authoritative contract is order3000's `fetchMenuBundles` output
3366
- * schema, surfaced here via `openapi-typescript`. Notably `price` is
3367
- * `{ amount, currency }`, not a bare number.
3368
- */
3369
- type MenuBundle = schemas['FetchMenuBundlesResponse'][number];
3370
- type MenuBundleDeposit = NonNullable<MenuBundle['deposit']>;
3371
- /**
3372
- * A single event as returned by the `events.get` endpoint, with
3373
- * optional schedule / menus / posters expansions. Generated-bound to the
3374
- * `FetchEventResponse` component (the order3000 `fetchEvent` output
3375
- * schema is now precise) — request-shape drift is impossible.
3376
- */
3377
- type EventByAccessor = schemas['FetchEventResponse'];
3378
- /**
3379
- * The fetched event's schedule sub-object, including the optional
3380
- * `scheduleTimeSlots[]` expansion. Generated-bound to the non-null
3381
- * `schedule` on `FetchEventResponse`. Kept as a distinct public SDK type
3382
- * name (re-exported as `O3KScheduleWithTimeSlots`) for downstream
3383
- * stability; structurally it is the single-event-fetch schedule shape.
3384
- */
3385
- type ScheduleWithTimeSlots = NonNullable<EventByAccessor['schedule']>;
3386
- /**
3387
- * A single regular time slot on the by-accessor event's schedule.
3388
- * Generated-bound to the element type of the (optional)
3389
- * `schedule.scheduleTimeSlots[]` array on `FetchEventResponse`.
3390
- */
3391
- type ScheduleTimeSlot = NonNullable<ScheduleWithTimeSlots['scheduleTimeSlots']>[number];
3392
- /**
3393
- * A menu summary attached to a by-accessor event. Generated-bound to the
3394
- * element type of `FetchEventResponse`'s optional `menus[]` array.
3395
- */
3396
- type EventMenu = NonNullable<EventByAccessor['menus']>[number];
3397
- /**
3398
- * A single ritual as returned by the `rituals.get` endpoint — its template
3399
- * schedule (time slots + date overrides), media, and the events materialised
3400
- * from it (with per-day covers). Generated-bound to the `FetchRitualResponse`
3401
- * component (the order3000 `fetchRitual` output schema), so request-shape drift
3402
- * is impossible. The component is nullable on the wire (the action returns the
3403
- * ritual or throws); `get()` resolves on success, so the SDK type is non-null.
3404
- */
3405
- type RitualByAccessor = NonNullable<schemas['FetchRitualResponse']>;
3406
- interface GetEventOptions {
3407
- /** Expand related resources (schedule, timeSlots, menus, posters) */
3408
- expand?: ('schedule' | 'timeSlots' | 'menus' | 'assets')[];
3409
- }
3410
- type AreaBookingMode = schemas['FetchAreaResponse']['bookingMode'];
3411
- type AreaBookingRequestStatus = schemas['SubmitAreaBookingRequestResponse']['status'];
3412
- type AreaBookingRequestSource = schemas['SubmitAreaBookingRequestResponse']['source'];
3413
- type AreaBookingStatus = schemas['FetchAreaBookingsResponse'][number]['status'];
3414
- type AreaAsset = NonNullable<schemas['FetchAreaResponse']['assets']>[number];
3415
- type AreaFeature = NonNullable<schemas['FetchAreaResponse']['features']>[number];
3416
- type Area = schemas['FetchAreaResponse'];
3417
- interface GetAreaOptions {
3418
- expand?: 'assets'[];
3419
- }
3420
- type AreaAvailabilityWindow = schemas['GetAreaAvailabilityResponse']['occupied'][number];
3421
- type AreaAvailabilityResponse = schemas['GetAreaAvailabilityResponse'];
3422
- type EventSlotAvailabilityResponse = schemas['FetchSlotAvailabilityResponse'];
3423
- interface GetEventSlotAvailabilityOptions {
3424
- reservationDate: string;
3425
- partySize: number;
3426
- areaId?: string;
3427
- }
3428
- interface GetAreaAvailabilityOptions {
3429
- /** YYYY-MM-DD — defaults to today */
3430
- from?: string;
3431
- /** YYYY-MM-DD — defaults to today + 90d */
3432
- to?: string;
3433
- }
3434
- type SubmitAreaBookingRequestPayload = schemas['SubmitAreaBookingPayload'];
3435
- type AreaBookingRequestResponse = schemas['SubmitAreaBookingRequestResponse'];
3436
- /**
3437
- * Canonical basket — generated-bound to the `FetchBasketResponse`
3438
- * component (the order3000 `fetchBasket` output schema is now precise).
3439
- * Returned by `baskets.get(sessionId)`.
3440
- */
3441
- type Basket = NonNullable<schemas['FetchBasketResponse']>;
3442
- /**
3443
- * Basket lifecycle status — generated-bound to the `status` enum on
3444
- * `FetchBasketResponse`. No longer a bare wire `string`.
3445
- */
3446
- type BasketStatus = Basket['status'];
3447
- type Currency = schemas['BasketTotals']['currency'];
3448
- /**
3449
- * Unit of measurement for portion tracking. Bound to the generated
3450
- * add-to-basket request shape.
3451
- */
3452
- type Unit = NonNullable<schemas['AddToBasketRequest']['menuItems'][number]['unit']>;
3453
- /**
3454
- * A single basket item — generated-bound to the element type of
3455
- * `FetchBasketResponse.items[]`. One physical product (e.g. a TiffinBox
3456
- * with rice, curry, and sides); `Basket.itemCount` is the COUNT of basket
3457
- * items, not a sum of menu-item quantities.
3458
- */
3459
- type BasketItem = Basket['items'][number];
3460
- /**
3461
- * Reference to a menu item within a basket item — generated-bound to the
3462
- * element type of `BasketItem.menuItems[]`. Each ref carries its own
3463
- * portion size (quantity + unit) for precise tracking like
3464
- * "100g rice, 80g curry".
3465
- */
3466
- type BasketItemMenuItemRef = BasketItem['menuItems'][number];
3467
- /**
3468
- * Free-form per-basket-item metadata bag — generated-bound to the
3469
- * (nullable) `metadata` object on `FetchBasketResponse.items[]`. The wire
3470
- * contract types this as an open `{ [key: string]: unknown }` record;
3471
- * thamarai narrows individual keys (`type`, `mode`, `upsell`, `price`) at
3472
- * its own transform boundary.
3473
- */
3474
- type BasketItemMetadata = NonNullable<BasketItem['metadata']>;
3475
- /**
3476
- * Deposit info on a basket item — generated-bound to the (nullable)
3477
- * `deposit` object on `FetchBasketResponse.items[]`. order3000 refuses
3478
- * any inbound deposit money amount; this object is outbound-only, for UI
3479
- * display.
3480
- */
3481
- type BasketItemDeposit = NonNullable<BasketItem['deposit']>;
3482
- /**
3483
- * Order workflow status — generated-bound to the `status` enum on
3484
- * `FetchLatestOrderResponse` (order3000's `order_status`). No longer a
3485
- * bare wire `string`.
3486
- */
3487
- type OrderStatus = NonNullable<schemas['FetchLatestOrderResponse']>['status'];
3488
- /**
3489
- * Payment workflow status — generated-bound to the `paymentStatus` enum
3490
- * on `FetchLatestOrderResponse` (order3000's `payment_status`). No longer
3491
- * a bare wire `string`.
3492
- */
3493
- type PaymentStatus = NonNullable<schemas['FetchLatestOrderResponse']>['paymentStatus'];
3494
- /**
3495
- * The most recent non-team order for a guest session, with the captured
3496
- * basket items + totals + declared returns inlined. Returned by
3497
- * `orders.getLatest(sessionId)` — `null` when the session has no
3498
- * qualifying order (fresh sessionIds and team-only sessions both fall
3499
- * through to `null`). Generated-bound to the `FetchLatestOrderResponse`
3500
- * component (the order3000 `fetchLatestOrder` output schema is now
3501
- * precise).
3502
- */
3503
- type LatestOrder = NonNullable<schemas['FetchLatestOrderResponse']>;
3504
- /**
3505
- * One "I'll return N of this template" declaration. Bound to the
3506
- * generated basket-totals `returnable` element — clients never specify
3507
- * a deposit money amount.
3508
- */
3509
- type DeclaredReturn = schemas['BasketTotals']['returnable'][number];
3510
- /**
3511
- * Canonical basket totals (all cents), bound to the generated
3512
- * `BasketTotals` component. The single figure clients read for every
3513
- * displayed monetary value.
3514
- */
3515
- type BasketTotals = schemas['BasketTotals'];
3516
- /**
3517
- * Request to add an item to the basket.
3518
- *
3519
- * Menu items can optionally include portion information (quantity/unit).
3520
- * If not provided, defaults to the menu item's configured portion size.
3521
- * `venueAccessor` is injected by the SDK resource layer, so it's omitted
3522
- * from the public caller shape.
3523
- */
3524
- type AddToBasketRequest = Omit<schemas['AddToBasketRequest'], 'venueId'>;
3525
- type AddToBasketResponse = schemas['AddToBasketResponse'];
3526
- type RemoveFromBasketResponse = schemas['RemoveFromBasketResponse'];
3527
- type CreatePaymentIntentRequest = Omit<schemas['CreatePaymentIntentRequest'], 'venueAccessor' | 'fulfillmentAt'> & {
3528
- /**
3529
- * Optional — null / omitted in team-order mode. The Lead's pickup-time
3530
- * decision is stored on the team row and backfilled onto each child
3531
- * order at submit time.
3532
- */
3533
- fulfillmentAt?: Date | string | null;
3534
- };
3535
- type CreatePaymentIntentResponse = schemas['CreatePaymentIntentResponse'];
3536
- type CreateDeltaPaymentIntentRequest = Omit<schemas['CreateDeltaPaymentIntentRequest'], 'venueAccessor'>;
3537
- type CreateDeltaPaymentIntentResponse = schemas['CreateDeltaPaymentIntentResponse'];
3538
- type ReduceDeltaPaymentIntentRequest = Omit<schemas['ReduceDeltaPaymentIntentRequest'], 'venueAccessor'>;
3539
- type ReduceDeltaPaymentIntentResponse = schemas['ReduceDeltaPaymentIntentResponse'];
3540
- type ConfirmOrderRequest = Omit<schemas['ConfirmOrderRequest'], 'venueAccessor' | 'orderId'>;
3541
- type ConfirmOrderResponse = schemas['ConfirmOrderResponse'];
3542
- type SubscriptionPeriod = schemas['GetSubscriptionResponse']['billingPeriod'];
3543
- /**
3544
- * Subscriber lifecycle status — generated-bound to the `subscriber_status`
3545
- * pgEnum, surfaced via order3000's `FetchSubscribersResponse[].status`
3546
- * (and `fetchMenuSubscription`). openapi-typescript hoists the shared
3547
- * enum into `components.schemas['SubscriberStatus']`.
3548
- */
3549
- type SubscriberStatus = schemas['SubscriberStatus'];
3550
- type SubscriptionCreditStatus = schemas['GetSubscriptionCreditsResponse'][number]['status'];
3551
- type MenuSubscriptionPoster = NonNullable<schemas['GetSubscriptionResponse']['posters']>[number];
3552
- type MenuSubscription = schemas['GetSubscriptionResponse'];
3553
- type SubscribeRequest = schemas['SubscribeToSubscriptionBody'];
3554
- type SubscribeResponse = schemas['SubscribeToSubscriptionResponse'];
3555
- type SubscriptionCredit = schemas['GetSubscriptionCreditsResponse'][number];
3556
-
3557
65
  declare class AdsResource extends BaseResource {
3558
66
  constructor(tokenManager: TokenManager, baseUrl: string);
3559
67
  /**
@@ -3859,6 +367,18 @@ declare class BasketsResource extends BaseResource {
3859
367
  }>;
3860
368
  }
3861
369
 
370
+ declare class BeveragesResource extends BaseResource {
371
+ constructor(tokenManager: TokenManager, baseUrl: string);
372
+ /**
373
+ * Upload an asset image for a beverage. The SDK builds the multipart body
374
+ * internally — pass a Buffer/Uint8Array, the original filename, the MIME type,
375
+ * and optional discovery `tags` (e.g. `['lunch-menu']`). The asset is stored,
376
+ * tagged, and linked to the beverage via `beverage_assets`; returns the new
377
+ * asset and its public URL. The beverage is addressed by its accessor.
378
+ */
379
+ uploadAsset(idOrAccessor: string, file: UploadAssetArgs): Promise<UploadAssetResponse>;
380
+ }
381
+
3862
382
  /**
3863
383
  * The venue's callout pool — the localized "highlight" phrases (≤25 chars per
3864
384
  * locale, Google's CalloutAsset limit) an ad references by id and that publish
@@ -3889,6 +409,30 @@ declare class CalloutsResource extends BaseResource {
3889
409
  delete(calloutId: string): Promise<DeleteCalloutResponse>;
3890
410
  }
3891
411
 
412
+ declare class DishesResource extends BaseResource {
413
+ constructor(tokenManager: TokenManager, baseUrl: string);
414
+ /**
415
+ * Fetch a dish by its `accessor` slug (localized name/description, dietary
416
+ * flags, price, assets with public URLs). Pair with `patch` for a safe
417
+ * read-modify-write rename that preserves untouched locales + flags.
418
+ */
419
+ get(accessor: string): Promise<FetchDishResponse>;
420
+ /**
421
+ * Edit a dish by id. `editDish` replaces the fields it receives (localized
422
+ * `name` is required), so callers wanting a partial change should read the
423
+ * dish with `get` first and merge. Returns the updated dish row.
424
+ */
425
+ patch(dishId: string, body: EditDishRequest): Promise<EditDishResponse>;
426
+ /**
427
+ * Upload an asset image for a dish. The SDK builds the multipart body
428
+ * internally — pass a Buffer/Uint8Array, the original filename, the MIME type,
429
+ * and optional discovery `tags` (e.g. `['lunch-menu']`). The asset is stored,
430
+ * tagged, and linked to the dish via `dish_assets`; returns the new asset and
431
+ * its public URL. The dish is addressed by its accessor.
432
+ */
433
+ uploadAsset(idOrAccessor: string, file: UploadAssetArgs): Promise<UploadAssetResponse>;
434
+ }
435
+
3892
436
  /** Element type of an expanded event's `assets[]` array. */
3893
437
  type EventAssetEntry = NonNullable<EventByAccessor['assets']>[number];
3894
438
  declare class EventsResource extends BaseResource {
@@ -4855,7 +1399,9 @@ declare class O3KClient {
4855
1399
  articles: ArticlesResource;
4856
1400
  assets: AssetsResource;
4857
1401
  baskets: BasketsResource;
1402
+ beverages: BeveragesResource;
4858
1403
  callouts: CalloutsResource;
1404
+ dishes: DishesResource;
4859
1405
  events: EventsResource;
4860
1406
  menus: MenusResource;
4861
1407
  orders: OrdersResource;
@@ -4872,5 +1418,5 @@ declare class O3KClient {
4872
1418
  constructor(config: O3KClientConfig);
4873
1419
  }
4874
1420
 
4875
- export { O3KClient, deliveryAddressSchema as O3KDeliveryAddressSchema, fulfillmentTypeEnum as O3KFulfillmentTypeEnum, getScheduleInfo as O3KGetScheduleInfo, participantStatusEnum as O3KParticipantStatusEnum, paymentMethodEnum as O3KPaymentMethodEnum, teamOrderStatusEnum as O3KTeamOrderStatusEnum };
4876
- export type { Ad as O3KAd, AddToBasketRequest as O3KAddToBasketRequest, AddToBasketResponse as O3KAddToBasketResponse, Area as O3KArea, AreaAsset as O3KAreaAsset, AreaAvailabilityResponse as O3KAreaAvailabilityResponse, AreaAvailabilityWindow as O3KAreaAvailabilityWindow, AreaBookingMode as O3KAreaBookingMode, AreaBookingRequestResponse as O3KAreaBookingRequestResponse, AreaBookingRequestSource as O3KAreaBookingRequestSource, AreaBookingRequestStatus as O3KAreaBookingRequestStatus, AreaBookingStatus as O3KAreaBookingStatus, AreaFeature as O3KAreaFeature, Article as O3KArticle, Asset as O3KAsset, Basket as O3KBasket, BasketItem as O3KBasketItem, BasketItemDeposit as O3KBasketItemDeposit, BasketItemMenuItemRef as O3KBasketItemMenuItemRef, BasketItemMetadata as O3KBasketItemMetadata, BasketStatus as O3KBasketStatus, BasketTotals as O3KBasketTotals, CancelTeamOrderResponse as O3KCancelTeamOrderResponse, O3KClientConfig, ConfirmOrderRequest as O3KConfirmOrderRequest, ConfirmOrderResponse as O3KConfirmOrderResponse, CreateAdRequest as O3KCreateAdRequest, CreateAdResponse as O3KCreateAdResponse, CreateDeltaPaymentIntentRequest as O3KCreateDeltaPaymentIntentRequest, CreateDeltaPaymentIntentResponse as O3KCreateDeltaPaymentIntentResponse, CreateEventRequest as O3KCreateEventRequest, CreateEventResponse as O3KCreateEventResponse, CreatePaymentIntentRequest as O3KCreatePaymentIntentRequest, CreatePaymentIntentResponse as O3KCreatePaymentIntentResponse, CreateTeamOrderRequest as O3KCreateTeamOrderRequest, CreateTeamOrderResponse as O3KCreateTeamOrderResponse, CropArea as O3KCropArea, Currency as O3KCurrency, DayOfWeek as O3KDayOfWeek, DeclaredReturn as O3KDeclaredReturn, DeleteAdResponse as O3KDeleteAdResponse, DeleteEventResponse as O3KDeleteEventResponse, DeliveryAddress as O3KDeliveryAddress, Event as O3KEvent, EventAsset as O3KEventAsset, EventByAccessor as O3KEventByAccessor, EventMenu as O3KEventMenu, EventRow as O3KEventRow, ExtendDeadlineResponse as O3KExtendTeamOrderDeadlineResponse, FeatureImage as O3KFeatureImage, FetchTeamOrderResponse as O3KFetchTeamOrderResponse, GetAreaAvailabilityOptions as O3KGetAreaAvailabilityOptions, GetAreaOptions as O3KGetAreaOptions, GetArticleResponse as O3KGetArticleResponse, GetEventOptions as O3KGetEventOptions, GetMenuOptions as O3KGetMenuOptions, GetVenueResponse as O3KGetVenueResponse, JoinTeamOrderRequest as O3KJoinTeamOrderRequest, JoinTeamOrderResponse as O3KJoinTeamOrderResponse, LatestOrder as O3KLatestOrder, ListAdsOptions as O3KListAdsOptions, ListAdsResponse as O3KListAdsResponse, ListArticlesOptions as O3KListArticlesOptions, ListArticlesResponse as O3KListArticlesResponse, ListAssetsOptions as O3KListAssetsOptions, ListAssetsResponse as O3KListAssetsResponse, ListEventsOptions as O3KListEventsOptions, ListEventsResponse as O3KListEventsResponse, Menu as O3KMenu, MenuAsset as O3KMenuAsset, MenuBeverage as O3KMenuBeverage, MenuBundle as O3KMenuBundle, MenuBundleDeposit as O3KMenuBundleDeposit, MenuDish as O3KMenuDish, MenuItem as O3KMenuItem, MenuItemRow as O3KMenuItemRow, MenuItemType as O3KMenuItemType, MenuSubscription as O3KMenuSubscription, MenuSubscriptionPoster as O3KMenuSubscriptionPoster, OrderFulfillmentType as O3KOrderFulfillmentType, OrderStatus as O3KOrderStatus, PatchAdRequest as O3KPatchAdRequest, PatchAdResponse as O3KPatchAdResponse, PatchArticleRequest as O3KPatchArticleRequest, PatchArticleResponse as O3KPatchArticleResponse, PatchEventRequest as O3KPatchEventRequest, PatchEventResponse as O3KPatchEventResponse, PatchFeatureImageRequest as O3KPatchFeatureImageRequest, PaymentStatus as O3KPaymentStatus, PlaceOrderRequest as O3KPlaceOrderRequest, Promotion as O3KPromotion, RealtimeConfig as O3KRealtimeConfig, RealtimeEvent as O3KRealtimeEvent, RealtimeSubscription as O3KRealtimeSubscription, RemoveFromBasketResponse as O3KRemoveFromBasketResponse, RitualByAccessor as O3KRitual, Schedule as O3KSchedule, ScheduleInfo as O3KScheduleInfo, ScheduleOverride as O3KScheduleOverride, ScheduleOverrideRow as O3KScheduleOverrideRow, ScheduleRow as O3KScheduleRow, ScheduleTimeSlot as O3KScheduleTimeSlot, ScheduleWithTimeSlots as O3KScheduleWithTimeSlots, SubmitAreaBookingRequestPayload as O3KSubmitAreaBookingRequestPayload, SubmitTeamOrderResponse as O3KSubmitTeamOrderResponse, SubscribeRequest as O3KSubscribeRequest, SubscribeResponse as O3KSubscribeResponse, SubscriberStatus as O3KSubscriberStatus, SubscriptionCredit as O3KSubscriptionCredit, SubscriptionCreditStatus as O3KSubscriptionCreditStatus, SubscriptionOptions as O3KSubscriptionOptions, SubscriptionPeriod as O3KSubscriptionPeriod, SwitchFulfillmentResponse as O3KSwitchTeamOrderFulfillmentResponse, TeamDeliveryAddress as O3KTeamDeliveryAddress, TeamOrderBasketItem as O3KTeamOrderBasketItem, TeamOrderBasketItemMenuItemRef as O3KTeamOrderBasketItemMenuItemRef, FulfillmentType as O3KTeamOrderFulfillmentType, TeamOrderParticipant as O3KTeamOrderParticipant, ParticipantStatus as O3KTeamOrderParticipantStatus, PaymentMethod as O3KTeamOrderPaymentMethod, TeamOrderStatus as O3KTeamOrderStatus, ThresholdCheck as O3KTeamOrderThresholdCheck, TimeSlot as O3KTimeSlot, Unit as O3KUnit, UpdateDeliveryAddressResponse as O3KUpdateTeamOrderDeliveryAddressResponse, UploadEventAssetArgs as O3KUploadEventAssetArgs, UploadEventAssetResponse as O3KUploadEventAssetResponse, UploadFeatureImageArgs as O3KUploadFeatureImageArgs, Venue as O3KVenue };
1421
+ export { Ad as O3KAd, AddToBasketRequest as O3KAddToBasketRequest, AddToBasketResponse as O3KAddToBasketResponse, Area as O3KArea, AreaAvailabilityResponse as O3KAreaAvailabilityResponse, AreaBookingRequestResponse as O3KAreaBookingRequestResponse, Article as O3KArticle, Asset as O3KAsset, Basket as O3KBasket, BasketItemMetadata as O3KBasketItemMetadata, BasketTotals as O3KBasketTotals, O3KClient, ConfirmOrderRequest as O3KConfirmOrderRequest, ConfirmOrderResponse as O3KConfirmOrderResponse, CreateAdRequest as O3KCreateAdRequest, CreateAdResponse as O3KCreateAdResponse, CreateDeltaPaymentIntentRequest as O3KCreateDeltaPaymentIntentRequest, CreateDeltaPaymentIntentResponse as O3KCreateDeltaPaymentIntentResponse, CreateEventRequest as O3KCreateEventRequest, CreateEventResponse as O3KCreateEventResponse, CreatePaymentIntentRequest as O3KCreatePaymentIntentRequest, CreatePaymentIntentResponse as O3KCreatePaymentIntentResponse, Currency as O3KCurrency, DayOfWeek as O3KDayOfWeek, DeclaredReturn as O3KDeclaredReturn, DeleteAdResponse as O3KDeleteAdResponse, DeleteEventResponse as O3KDeleteEventResponse, deliveryAddressSchema as O3KDeliveryAddressSchema, EventByAccessor as O3KEventByAccessor, FeatureImage as O3KFeatureImage, fulfillmentTypeEnum as O3KFulfillmentTypeEnum, GetAreaAvailabilityOptions as O3KGetAreaAvailabilityOptions, GetAreaOptions as O3KGetAreaOptions, GetEventOptions as O3KGetEventOptions, GetMenuOptions as O3KGetMenuOptions, getScheduleInfo as O3KGetScheduleInfo, LatestOrder as O3KLatestOrder, ListAdsOptions as O3KListAdsOptions, ListAdsResponse as O3KListAdsResponse, ListArticlesOptions as O3KListArticlesOptions, ListArticlesResponse as O3KListArticlesResponse, ListAssetsOptions as O3KListAssetsOptions, ListAssetsResponse as O3KListAssetsResponse, ListEventsOptions as O3KListEventsOptions, ListEventsResponse as O3KListEventsResponse, Menu as O3KMenu, MenuBundle as O3KMenuBundle, MenuSubscription as O3KMenuSubscription, participantStatusEnum as O3KParticipantStatusEnum, PatchAdRequest as O3KPatchAdRequest, PatchAdResponse as O3KPatchAdResponse, PatchArticleRequest as O3KPatchArticleRequest, PatchEventRequest as O3KPatchEventRequest, PatchEventResponse as O3KPatchEventResponse, PatchFeatureImageRequest as O3KPatchFeatureImageRequest, paymentMethodEnum as O3KPaymentMethodEnum, PlaceOrderRequest as O3KPlaceOrderRequest, RemoveFromBasketResponse as O3KRemoveFromBasketResponse, RitualByAccessor as O3KRitual, ScheduleTimeSlot as O3KScheduleTimeSlot, SubmitAreaBookingRequestPayload as O3KSubmitAreaBookingRequestPayload, SubscribeRequest as O3KSubscribeRequest, SubscribeResponse as O3KSubscribeResponse, SubscriptionCredit as O3KSubscriptionCredit, SubscriptionCreditStatus as O3KSubscriptionCreditStatus, teamOrderStatusEnum as O3KTeamOrderStatusEnum, UploadAssetArgs as O3KUploadAssetArgs, UploadAssetResponse as O3KUploadAssetResponse, UploadEventAssetArgs as O3KUploadEventAssetArgs, UploadEventAssetResponse as O3KUploadEventAssetResponse, UploadFeatureImageArgs as O3KUploadFeatureImageArgs, Venue as O3KVenue };
1422
+ export type { CancelTeamOrderResponse as O3KCancelTeamOrderResponse, O3KClientConfig, CreateTeamOrderRequest as O3KCreateTeamOrderRequest, CreateTeamOrderResponse as O3KCreateTeamOrderResponse, DeliveryAddress as O3KDeliveryAddress, EventRow as O3KEventRow, ExtendDeadlineResponse as O3KExtendTeamOrderDeadlineResponse, FetchTeamOrderResponse as O3KFetchTeamOrderResponse, JoinTeamOrderRequest as O3KJoinTeamOrderRequest, JoinTeamOrderResponse as O3KJoinTeamOrderResponse, MenuItemRow as O3KMenuItemRow, RealtimeConfig as O3KRealtimeConfig, RealtimeEvent as O3KRealtimeEvent, RealtimeSubscription as O3KRealtimeSubscription, ScheduleInfo as O3KScheduleInfo, ScheduleOverrideRow as O3KScheduleOverrideRow, ScheduleRow as O3KScheduleRow, SubmitTeamOrderResponse as O3KSubmitTeamOrderResponse, SubscriptionOptions as O3KSubscriptionOptions, SwitchFulfillmentResponse as O3KSwitchTeamOrderFulfillmentResponse, TeamDeliveryAddress as O3KTeamDeliveryAddress, TeamOrderBasketItem as O3KTeamOrderBasketItem, TeamOrderBasketItemMenuItemRef as O3KTeamOrderBasketItemMenuItemRef, FulfillmentType as O3KTeamOrderFulfillmentType, TeamOrderParticipant as O3KTeamOrderParticipant, ParticipantStatus as O3KTeamOrderParticipantStatus, PaymentMethod as O3KTeamOrderPaymentMethod, TeamOrderStatus as O3KTeamOrderStatus, ThresholdCheck as O3KTeamOrderThresholdCheck, UpdateDeliveryAddressResponse as O3KUpdateTeamOrderDeliveryAddressResponse };