order3000 0.24.5 → 0.25.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,4 +1,6 @@
1
1
  import { CurrencyCode } from '@kolaveri/money';
2
+ import { z as z$1 } from 'zod';
3
+ import { z } from 'zod/v4';
2
4
  import { RealtimePostgresChangesPayload, RealtimeChannel, SupabaseClient } from '@supabase/supabase-js';
3
5
 
4
6
  declare class TokenManager {
@@ -246,11 +248,22 @@ interface components {
246
248
  [key: string]: unknown;
247
249
  };
248
250
  };
249
- /**
250
- * Article
251
- * @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.
252
- */
253
- Article: {
251
+ /** OgImage */
252
+ OgImage: {
253
+ id: string;
254
+ publicUrl: string | null;
255
+ locale: string;
256
+ };
257
+ /** ArticleMentionCounts */
258
+ ArticleMentionCounts: {
259
+ dishes: number;
260
+ beverages: number;
261
+ ingredients: number;
262
+ menus: number;
263
+ rituals: number;
264
+ };
265
+ /** FetchArticlesResponse */
266
+ FetchArticlesResponse: {
254
267
  id: string;
255
268
  venueId: string;
256
269
  accessor: string;
@@ -272,22 +285,30 @@ interface components {
272
285
  content: {
273
286
  [key: string]: unknown;
274
287
  } | null;
288
+ metaTitle: {
289
+ [key: string]: string;
290
+ } | null;
291
+ metaDescription: {
292
+ [key: string]: string;
293
+ } | null;
275
294
  tags: string[];
276
295
  isActive: boolean;
277
296
  isFeatured: boolean;
278
297
  priority: number;
279
- publishedAt: unknown;
280
- createdAt: unknown;
281
- updatedAt: unknown;
298
+ /** @enum {string} */
299
+ status: "draft" | "published";
300
+ publishedAt: string | null;
301
+ createdAt: string | null;
302
+ updatedAt: string | null;
282
303
  featureImage: components["schemas"]["FeatureImage"] | null;
283
- };
284
- /** ListArticlesResponse */
285
- ListArticlesResponse: components["schemas"]["Article"][];
304
+ ogImage?: components["schemas"]["OgImage"] | null;
305
+ mentionCounts?: components["schemas"]["ArticleMentionCounts"];
306
+ }[];
286
307
  /**
287
- * GetArticleResponse
288
- * @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.
308
+ * FetchArticleResponse
309
+ * @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`.
289
310
  */
290
- GetArticleResponse: {
311
+ FetchArticleResponse: {
291
312
  id: string;
292
313
  venueId: string;
293
314
  accessor: string;
@@ -309,45 +330,54 @@ interface components {
309
330
  content: {
310
331
  [key: string]: unknown;
311
332
  } | null;
333
+ metaTitle: {
334
+ [key: string]: string;
335
+ } | null;
336
+ metaDescription: {
337
+ [key: string]: string;
338
+ } | null;
312
339
  tags: string[];
313
340
  isActive: boolean;
314
341
  isFeatured: boolean;
315
342
  priority: number;
316
- publishedAt: unknown;
317
- createdAt: unknown;
318
- updatedAt: unknown;
343
+ /** @enum {string} */
344
+ status: "draft" | "published";
345
+ publishedAt: string | null;
346
+ createdAt: string | null;
347
+ updatedAt: string | null;
319
348
  featureImage: components["schemas"]["FeatureImage"] | null;
349
+ ogImage?: components["schemas"]["OgImage"] | null;
320
350
  };
321
- /** PatchArticleRequest */
322
- PatchArticleRequest: {
351
+ /** EditArticleRequest */
352
+ EditArticleRequest: {
323
353
  slug?: {
324
- [key: string]: string | {
325
- [key: string]: unknown;
326
- };
354
+ [key: string]: unknown;
327
355
  };
328
356
  title?: {
329
- [key: string]: string | {
330
- [key: string]: unknown;
331
- };
357
+ [key: string]: unknown;
332
358
  };
333
359
  excerpt?: {
334
- [key: string]: string | {
335
- [key: string]: unknown;
336
- };
360
+ [key: string]: unknown;
337
361
  };
338
362
  content?: {
339
363
  [key: string]: unknown;
340
364
  };
365
+ metaTitle?: {
366
+ [key: string]: string;
367
+ };
368
+ metaDescription?: {
369
+ [key: string]: string;
370
+ };
341
371
  tags?: string[];
342
372
  isActive?: boolean;
343
373
  isFeatured?: boolean;
344
374
  priority?: number;
345
375
  };
346
376
  /**
347
- * PatchArticleResponse
348
- * @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.
377
+ * EditArticleResponse
378
+ * @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`.
349
379
  */
350
- PatchArticleResponse: {
380
+ EditArticleResponse: {
351
381
  id: string;
352
382
  venueId: string;
353
383
  accessor: string;
@@ -369,14 +399,23 @@ interface components {
369
399
  content: {
370
400
  [key: string]: unknown;
371
401
  } | null;
402
+ metaTitle: {
403
+ [key: string]: string;
404
+ } | null;
405
+ metaDescription: {
406
+ [key: string]: string;
407
+ } | null;
372
408
  tags: string[];
373
409
  isActive: boolean;
374
410
  isFeatured: boolean;
375
411
  priority: number;
376
- publishedAt: unknown;
377
- createdAt: unknown;
378
- updatedAt: unknown;
412
+ /** @enum {string} */
413
+ status: "draft" | "published";
414
+ publishedAt: string | null;
415
+ createdAt: string | null;
416
+ updatedAt: string | null;
379
417
  featureImage: components["schemas"]["FeatureImage"] | null;
418
+ ogImage?: components["schemas"]["OgImage"] | null;
380
419
  };
381
420
  /** UploadFeatureImageRequest */
382
421
  UploadFeatureImageRequest: {
@@ -395,6 +434,22 @@ interface components {
395
434
  [key: string]: unknown;
396
435
  };
397
436
  };
437
+ /** BasketTotals */
438
+ BasketTotals: {
439
+ /** @enum {string} */
440
+ currency: "EUR" | "CHF";
441
+ itemsTotal: number;
442
+ taxAmount: number;
443
+ depositCharge: number;
444
+ grossTotal: number;
445
+ depositCredit: number;
446
+ effectiveTotal: number;
447
+ cashRefund: number;
448
+ returnable: {
449
+ depositwareTemplateId: string;
450
+ count: number;
451
+ }[];
452
+ };
398
453
  /**
399
454
  * AddToBasketRequest
400
455
  * @description Add an item to the shopping basket
@@ -428,21 +483,7 @@ interface components {
428
483
  /** @enum {string} */
429
484
  currency: "EUR" | "CHF";
430
485
  } | null;
431
- totals: {
432
- /** @enum {string} */
433
- currency: "EUR" | "CHF";
434
- itemsTotal: number;
435
- taxAmount: number;
436
- depositCharge: number;
437
- grossTotal: number;
438
- depositCredit: number;
439
- effectiveTotal: number;
440
- cashRefund: number;
441
- returnable: {
442
- depositwareTemplateId: string;
443
- count: number;
444
- }[];
445
- };
486
+ totals: components["schemas"]["BasketTotals"];
446
487
  };
447
488
  /** RemoveFromBasketResponse */
448
489
  RemoveFromBasketResponse: {
@@ -450,24 +491,12 @@ interface components {
450
491
  /** Format: uuid */
451
492
  basketItemId: string;
452
493
  itemCount: number;
453
- totals: {
454
- /** @enum {string} */
455
- currency: "EUR" | "CHF";
456
- itemsTotal: number;
457
- taxAmount: number;
458
- depositCharge: number;
459
- grossTotal: number;
460
- depositCredit: number;
461
- effectiveTotal: number;
462
- cashRefund: number;
463
- returnable: {
464
- depositwareTemplateId: string;
465
- count: number;
466
- }[];
467
- } | null;
494
+ totals: components["schemas"]["BasketTotals"] | null;
468
495
  };
469
496
  /** GetBasketTotalsRequest */
470
497
  GetBasketTotalsRequest: {
498
+ venueAccessor: string;
499
+ basketId: string;
471
500
  declaredReturns?: {
472
501
  depositwareTemplateId: string;
473
502
  count: number;
@@ -491,6 +520,7 @@ interface components {
491
520
  };
492
521
  /** SetBasketDeclaredReturnsRequest */
493
522
  SetBasketDeclaredReturnsRequest: {
523
+ venueAccessor: string;
494
524
  basketId: string;
495
525
  sessionId: string;
496
526
  declaredReturns: {
@@ -506,6 +536,27 @@ interface components {
506
536
  count: number;
507
537
  }[];
508
538
  };
539
+ /** FetchEventsResponse */
540
+ FetchEventsResponse: ({
541
+ id: string;
542
+ venueId: string;
543
+ } & {
544
+ [key: string]: unknown;
545
+ })[];
546
+ /**
547
+ * FetchEventResponse
548
+ * @description Event details. Nested objects (schedule, timeSlots, menus, posters, nextOccurrence) pass through; their shape follows the SDK Event interface.
549
+ */
550
+ FetchEventResponse: {
551
+ id: string;
552
+ venueId: string;
553
+ accessor: string | null;
554
+ name: {
555
+ [key: string]: string;
556
+ };
557
+ } & {
558
+ [key: string]: unknown;
559
+ };
509
560
  /**
510
561
  * CreateEventRequest
511
562
  * @description Request payload for creating a new event
@@ -527,7 +578,7 @@ interface components {
527
578
  isRecurring?: boolean;
528
579
  reservationsEnabled?: boolean;
529
580
  bookingOpensAtDays?: number | null;
530
- bookingClosesAtHours?: number | null;
581
+ bookingClosesAtOffset?: number | null;
531
582
  isActive?: boolean;
532
583
  isFeatured?: boolean;
533
584
  priority?: number;
@@ -543,8 +594,8 @@ interface components {
543
594
  }[];
544
595
  /** @enum {string|null} */
545
596
  slotMode?: "interval" | "duration" | null;
546
- intervalMinutes?: number | null;
547
- durationMinutes?: number | null;
597
+ intervalDuration?: number | null;
598
+ duration?: number | null;
548
599
  } | null;
549
600
  ritualAccessor?: string | null;
550
601
  venueAccessor: string;
@@ -573,7 +624,7 @@ interface components {
573
624
  isRecurring: boolean;
574
625
  reservationsEnabled: boolean;
575
626
  bookingOpensAtDays: number | null;
576
- bookingClosesAtHours: number | null;
627
+ bookingClosesAtOffset: number | null;
577
628
  isActive: boolean;
578
629
  isFeatured: boolean;
579
630
  priority: number;
@@ -583,30 +634,146 @@ interface components {
583
634
  updatedAt: unknown;
584
635
  };
585
636
  /**
586
- * GetMenuResponse
637
+ * FetchMenuResponse
587
638
  * @description Menu details. Nested arrays (items, assets, bundles, schedule, etc.) pass through; their shape follows the SDK Menu interface.
588
639
  */
589
- GetMenuResponse: {
640
+ FetchMenuResponse: {
590
641
  id: string;
591
642
  venueId: string;
592
643
  accessor: string;
593
- name: {
594
- [key: string]: string;
595
- };
644
+ name: (string | number | boolean | (null)) | {
645
+ [key: string]: unknown;
646
+ } | unknown[];
647
+ description: ((string | number | boolean | (null)) | {
648
+ [key: string]: unknown;
649
+ } | unknown[]) | null;
650
+ metadata: ((string | number | boolean | (null)) | {
651
+ [key: string]: unknown;
652
+ } | unknown[]) | null;
653
+ sortIndex: string | null;
654
+ deliveryThresholdAmount: number | null;
655
+ deliveryThresholdQuantity: number | null;
656
+ createdAt: unknown;
657
+ updatedAt: unknown;
658
+ createdBy: string | null;
659
+ updatedBy: string | null;
660
+ assets?: {
661
+ id: string;
662
+ /** @enum {string} */
663
+ type: "image" | "video" | "document";
664
+ tags: string[] | null;
665
+ bucket: string;
666
+ storagePath: string;
667
+ filename: string;
668
+ contentType: string;
669
+ sizeBytes: number;
670
+ caption: (string | number | boolean | (null)) | {
671
+ [key: string]: unknown;
672
+ } | unknown[];
673
+ alt: (string | number | boolean | (null)) | {
674
+ [key: string]: unknown;
675
+ } | unknown[];
676
+ metadata: ((string | number | boolean | (null)) | {
677
+ [key: string]: unknown;
678
+ } | unknown[]) | null;
679
+ cropArea: ((string | number | boolean | (null)) | {
680
+ [key: string]: unknown;
681
+ } | unknown[]) | null;
682
+ isActive: boolean;
683
+ sortIndex: string | null;
684
+ createdAt: unknown;
685
+ updatedAt: unknown;
686
+ createdBy: string | null;
687
+ updatedBy: string | null;
688
+ venueId: string | null;
689
+ publicUrl: string | null;
690
+ }[];
691
+ items?: {
692
+ [key: string]: unknown;
693
+ }[];
596
694
  } & {
597
695
  [key: string]: unknown;
598
696
  };
599
- /** ListMenuBundlesResponse */
600
- ListMenuBundlesResponse: ({
697
+ /** FetchMenuBundlesResponse */
698
+ FetchMenuBundlesResponse: ({
601
699
  id: string;
602
700
  menuId: string;
701
+ name: {
702
+ [key: string]: string;
703
+ };
704
+ shortName: {
705
+ [key: string]: string;
706
+ } | null;
707
+ description: {
708
+ [key: string]: string;
709
+ } | null;
710
+ tags: string[];
711
+ price: {
712
+ amount: number;
713
+ /** @enum {string} */
714
+ currency: "EUR" | "CHF";
715
+ };
716
+ /** @enum {string} */
717
+ currency: "EUR" | "CHF";
718
+ taxRateId: string;
719
+ isActive: boolean;
720
+ sortIndex: string | null;
721
+ depositwareTemplateId: string | null;
722
+ depositwareTemplate: {
723
+ name: {
724
+ [key: string]: string;
725
+ };
726
+ } | null;
727
+ deposit: {
728
+ amount: number;
729
+ /** @enum {string} */
730
+ currency: "EUR" | "CHF";
731
+ } | null;
603
732
  } & {
604
733
  [key: string]: unknown;
605
734
  })[];
606
- /** ListMenuSubscriptionsResponse */
607
- ListMenuSubscriptionsResponse: ({
735
+ /** FetchMenuSubscriptionsResponse */
736
+ FetchMenuSubscriptionsResponse: ({
608
737
  id: string;
609
738
  menuId: string;
739
+ accessor: string;
740
+ name: {
741
+ [key: string]: string;
742
+ };
743
+ shortName: {
744
+ [key: string]: string;
745
+ } | null;
746
+ description: {
747
+ [key: string]: string;
748
+ } | null;
749
+ scheduleId: string | null;
750
+ allowance: number;
751
+ /** @enum {string} */
752
+ billingPeriod: "week" | "month" | "year";
753
+ /** @enum {string} */
754
+ allowancePeriod: "week" | "month" | "year";
755
+ expiryInDays: number;
756
+ price: number;
757
+ /** @enum {string} */
758
+ currency: "EUR" | "CHF";
759
+ stripeProductId: string | null;
760
+ stripePriceId: string | null;
761
+ isActive: boolean;
762
+ sortIndex: string | null;
763
+ subscriberCount: number;
764
+ redeemableTagSets: string[][];
765
+ posters?: {
766
+ id: string;
767
+ menuSubscriptionId: string;
768
+ storagePath: string;
769
+ publicUrl: string | null;
770
+ filename: string;
771
+ contentType: string;
772
+ sizeBytes: number | null;
773
+ sortIndex: string | null;
774
+ createdBy: string | null;
775
+ createdAt: string | null;
776
+ }[];
610
777
  } & {
611
778
  [key: string]: unknown;
612
779
  })[];
@@ -615,70 +782,53 @@ interface components {
615
782
  * @description Place a new order for a specific venue
616
783
  */
617
784
  PlaceOrderRequest: {
618
- id?: string;
619
- venueId: string;
785
+ venueAccessor: string;
620
786
  basketId: string;
621
- publicId?: string | null;
622
- quickReferenceNumber?: number | null;
623
- /** @enum {string} */
624
- status?: "pending" | "in_progress" | "ready" | "completed" | "cancelled";
625
- paymentIntentId?: string | null;
626
- /** @enum {string|null} */
627
- paymentMethod?: "card" | "cash" | "voucher" | null;
628
- /** @enum {string} */
629
- paymentStatus?: "unpaid" | "paid" | "refunded" | "authorized" | "cash_pending";
630
- taxAmount: number;
631
- totalAmount: number;
632
- /** @enum {string} */
633
- currency?: "EUR" | "CHF";
634
- /** @enum {string|null} */
635
- fulfillmentType?: "pickup" | "delivery" | null;
636
- fulfillmentAt?: unknown;
637
- orderedAt?: unknown;
638
- orderedBy: string;
639
- updatedAt?: unknown;
640
- updatedBy?: string | null;
641
- teamOrderId?: string | null;
642
- participantDisplayName?: string | null;
643
- leadSettledAt?: unknown;
787
+ sessionId: string;
788
+ paymentMethod: components["schemas"]["PaymentMethod"];
789
+ fulfillmentType: components["schemas"]["FulfillmentType"];
790
+ /** Format: date-time */
791
+ fulfillmentAt?: string | null;
792
+ customerFirstName?: string;
793
+ customerLastName?: string;
794
+ customerEmail?: string;
795
+ declaredReturns?: {
796
+ depositwareTemplateId: string;
797
+ count: number;
798
+ }[];
644
799
  };
645
800
  /** PlaceOrderResponse */
646
801
  PlaceOrderResponse: {
647
802
  id: string;
648
- venueId: string;
649
- basketId: string;
803
+ status: string;
650
804
  publicId: string | null;
805
+ orderId: string;
651
806
  quickReferenceNumber: number | null;
652
807
  /** @enum {string} */
653
- status: "pending" | "in_progress" | "ready" | "completed" | "cancelled";
654
- paymentIntentId: string | null;
655
- /** @enum {string|null} */
656
- paymentMethod: "card" | "cash" | "voucher" | null;
657
- /** @enum {string} */
658
- paymentStatus: "unpaid" | "paid" | "refunded" | "authorized" | "cash_pending";
659
- taxAmount: number;
660
- totalAmount: number;
661
- /** @enum {string} */
662
808
  currency: "EUR" | "CHF";
663
- /** @enum {string|null} */
664
- fulfillmentType: "pickup" | "delivery" | null;
665
- fulfillmentAt: unknown;
666
- orderedAt: unknown;
667
- orderedBy: string;
668
- updatedAt: unknown;
669
- updatedBy: string | null;
670
- teamOrderId: string | null;
671
- participantDisplayName: string | null;
672
- leadSettledAt: unknown;
809
+ };
810
+ /** ConfirmOrderRequest */
811
+ ConfirmOrderRequest: {
812
+ venueAccessor: string;
813
+ orderId: string;
814
+ paymentIntentId: string;
815
+ };
816
+ /** ConfirmOrderResponse */
817
+ ConfirmOrderResponse: {
818
+ id: string;
819
+ status: string;
820
+ publicId: string | null;
821
+ quickReferenceNumber: number | null;
822
+ customerId?: string;
673
823
  };
674
824
  /** CreatePaymentIntentRequest */
675
825
  CreatePaymentIntentRequest: {
826
+ venueAccessor: string;
676
827
  basketId: string;
677
828
  /** @enum {string} */
678
829
  currency: "EUR" | "CHF";
679
830
  sessionId: string;
680
- /** @enum {string} */
681
- fulfillmentType: "pickup" | "delivery";
831
+ fulfillmentType: components["schemas"]["FulfillmentType"];
682
832
  /** Format: date-time */
683
833
  fulfillmentAt?: string | null;
684
834
  customerFirstName?: string;
@@ -697,6 +847,7 @@ interface components {
697
847
  };
698
848
  /** CreateDeltaPaymentIntentRequest */
699
849
  CreateDeltaPaymentIntentRequest: {
850
+ venueAccessor: string;
700
851
  basketId: string;
701
852
  sessionId: string;
702
853
  /** @enum {string} */
@@ -717,6 +868,7 @@ interface components {
717
868
  };
718
869
  /** ReduceDeltaPaymentIntentRequest */
719
870
  ReduceDeltaPaymentIntentRequest: {
871
+ venueAccessor: string;
720
872
  basketId: string;
721
873
  sessionId: string;
722
874
  /** @enum {string} */
@@ -737,12 +889,13 @@ interface components {
737
889
  * @description Request payload for making a new reservation
738
890
  */
739
891
  MakeReservationRequest: {
892
+ /** @description Venue identifier — UUID or URL-friendly slug (accessor). Resolved server-side. */
893
+ venueAccessor: string;
740
894
  /**
741
895
  * Format: uuid
742
896
  * @description UUID of the event this reservation is for
743
897
  */
744
898
  eventId: string;
745
- quickReferenceNumber?: number | null;
746
899
  /** @description Date of the reservation in YYYY-MM-DD format */
747
900
  reservationDate: string;
748
901
  /** @description Time of the reservation in HH:MM:SS format */
@@ -750,12 +903,12 @@ interface components {
750
903
  /** @description Number of guests in the party. Must be between 1 and 20. */
751
904
  partySize: number;
752
905
  /** @description Reservation duration in minutes. Defaults to 120 minutes if not specified. Range: 30-300 minutes. */
753
- duration: number | null;
906
+ duration?: number | null;
754
907
  /**
755
908
  * Format: uuid
756
909
  * @description UUID of existing customer profile if available
757
910
  */
758
- customerId: string | null;
911
+ customerId?: string | null;
759
912
  /** @description First name of the customer making the reservation */
760
913
  customerFirstName: string;
761
914
  /** @description Last name of the customer making the reservation */
@@ -768,20 +921,19 @@ interface components {
768
921
  /** @description Phone number for reservation confirmations and updates. Include country code for international numbers. */
769
922
  customerPhone?: string | null;
770
923
  /**
771
- * @description Preferred method for reservation reminders and updates
924
+ * @description Preferred contact method. Defaults to `email` when omitted.
772
925
  * @enum {string}
773
926
  */
774
- contactPreference: "email" | "phone" | "sms" | "none";
927
+ contactPreference?: "email" | "phone" | "sms" | "none";
775
928
  /**
776
- * @description Origin of the reservation request
929
+ * @description Origin of the reservation request. Defaults to `website` when omitted.
777
930
  * @enum {string}
778
931
  */
779
- source: "website" | "phone" | "walk_in";
932
+ source?: "website" | "phone" | "walk_in";
780
933
  /** @description Any dietary restrictions, allergies, or special occasions (max 500 characters) */
781
- specialRequests: string | null;
934
+ specialRequests?: string | null;
782
935
  /** @description Preferred seating area or table type (e.g., "window seat", "quiet area", "patio") */
783
- tablePreference: string | null;
784
- venueAccessor: string;
936
+ tablePreference?: string | null;
785
937
  };
786
938
  /**
787
939
  * MakeReservationResponse
@@ -892,13 +1044,13 @@ interface components {
892
1044
  billingPeriod: "week" | "month" | "year";
893
1045
  /** @enum {string} */
894
1046
  allowancePeriod: "week" | "month" | "year";
895
- redeemableTagSets: string[] | null;
1047
+ redeemableTagSets: string[][];
896
1048
  expiryInDays: number | null;
897
1049
  price: number;
898
1050
  /** @enum {string} */
899
1051
  currency: "EUR" | "CHF";
900
1052
  isActive: boolean;
901
- sortIndex: number | null;
1053
+ sortIndex: string | null;
902
1054
  posters: {
903
1055
  id: string;
904
1056
  menuSubscriptionId: string;
@@ -907,8 +1059,8 @@ interface components {
907
1059
  publicUrl: string;
908
1060
  filename: string;
909
1061
  contentType: string;
910
- sizeBytes: number | null;
911
- sortIndex: number | null;
1062
+ sizeBytes: number;
1063
+ sortIndex: string | null;
912
1064
  createdBy: string | null;
913
1065
  createdAt: string | null;
914
1066
  }[];
@@ -953,13 +1105,20 @@ interface components {
953
1105
  orderId: string | null;
954
1106
  createdAt: string | null;
955
1107
  }[];
1108
+ /** DeliveryAddress */
1109
+ DeliveryAddress: {
1110
+ street: string;
1111
+ city: string;
1112
+ state: string;
1113
+ postalCode: string;
1114
+ country: string;
1115
+ };
956
1116
  /**
957
1117
  * CreateTeamOrderRequest
958
1118
  * @description Create a team order: promotes the lead's active basket into a shared team basket and returns the share token.
959
1119
  */
960
1120
  CreateTeamOrderRequest: {
961
- /** Format: uuid */
962
- venueId: string;
1121
+ venueAccessor: string;
963
1122
  sessionId: string;
964
1123
  /** Format: uuid */
965
1124
  menuId: string;
@@ -969,18 +1128,11 @@ interface components {
969
1128
  logoUrl?: string;
970
1129
  /** Format: date-time */
971
1130
  deadlineAt?: string | null;
972
- /** @enum {string} */
973
- fulfillmentType: "pickup" | "delivery";
1131
+ fulfillmentType: components["schemas"]["FulfillmentType"];
974
1132
  /** Format: date-time */
975
1133
  fulfillmentAt?: string | null;
976
- deliveryAddress?: {
977
- street: string;
978
- city: string;
979
- state: string;
980
- postalCode: string;
981
- country: string;
982
- };
983
- allowedPaymentMethods: ("card" | "cash" | "voucher")[];
1134
+ deliveryAddress?: components["schemas"]["DeliveryAddress"];
1135
+ allowedPaymentMethods: components["schemas"]["PaymentMethod"][];
984
1136
  /** Format: uuid */
985
1137
  eventId?: string;
986
1138
  };
@@ -1001,11 +1153,9 @@ interface components {
1001
1153
  teamName: string | null;
1002
1154
  logoUrl: string | null;
1003
1155
  leadDisplayName: string;
1004
- /** @enum {string} */
1005
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1006
- allowedPaymentMethods: ("card" | "cash" | "voucher")[];
1007
- /** @enum {string} */
1008
- fulfillmentType: "pickup" | "delivery";
1156
+ status: components["schemas"]["TeamOrderStatus"];
1157
+ allowedPaymentMethods: components["schemas"]["PaymentMethod"][];
1158
+ fulfillmentType: components["schemas"]["FulfillmentType"];
1009
1159
  /** Format: date-time */
1010
1160
  fulfillmentAt: string | null;
1011
1161
  /** Format: date-time */
@@ -1033,12 +1183,10 @@ interface components {
1033
1183
  orderId: string | null;
1034
1184
  participantNumber: number | null;
1035
1185
  displayName: string | null;
1036
- /** @enum {string} */
1037
- status: "browsing" | "authorized" | "cash_pending" | "placed" | "completed" | "cancelled";
1186
+ status: components["schemas"]["ParticipantStatus"];
1038
1187
  bundleCount: number;
1039
1188
  amount: number;
1040
- /** @enum {string|null} */
1041
- paymentMethod: "card" | "cash" | "voucher" | null;
1189
+ paymentMethod: components["schemas"]["PaymentMethod"];
1042
1190
  isLead: boolean;
1043
1191
  isMe: boolean;
1044
1192
  /** Format: date-time */
@@ -1057,8 +1205,7 @@ interface components {
1057
1205
  }[];
1058
1206
  payments: {
1059
1207
  amount: number;
1060
- /** @enum {string} */
1061
- method: "card" | "cash" | "voucher";
1208
+ method: components["schemas"]["PaymentMethod"];
1062
1209
  /** @enum {string} */
1063
1210
  status: "authorized" | "captured" | "cash_pending" | "cash_received";
1064
1211
  /** Format: date-time */
@@ -1100,8 +1247,7 @@ interface components {
1100
1247
  teamOrderId: string;
1101
1248
  basketId: string;
1102
1249
  customerId: string;
1103
- /** @enum {string} */
1104
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1250
+ status: components["schemas"]["TeamOrderStatus"];
1105
1251
  isLead: boolean;
1106
1252
  alreadyJoined: boolean;
1107
1253
  };
@@ -1114,8 +1260,7 @@ interface components {
1114
1260
  SubmitTeamOrderResponse: {
1115
1261
  /** Format: uuid */
1116
1262
  teamOrderId: string;
1117
- /** @enum {string} */
1118
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1263
+ status: components["schemas"]["TeamOrderStatus"];
1119
1264
  capturedOrderIds: string[];
1120
1265
  cashPendingOrderIds: string[];
1121
1266
  droppedBasketIds: string[];
@@ -1132,8 +1277,7 @@ interface components {
1132
1277
  CancelTeamOrderResponse: {
1133
1278
  /** Format: uuid */
1134
1279
  teamOrderId: string;
1135
- /** @enum {string} */
1136
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1280
+ status: components["schemas"]["TeamOrderStatus"];
1137
1281
  voidedPaymentIntentIds: string[];
1138
1282
  /** Format: date-time */
1139
1283
  cancelledAt: string;
@@ -1149,8 +1293,7 @@ interface components {
1149
1293
  ExtendDeadlineTeamOrderResponse: {
1150
1294
  /** Format: uuid */
1151
1295
  teamOrderId: string;
1152
- /** @enum {string} */
1153
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1296
+ status: components["schemas"]["TeamOrderStatus"];
1154
1297
  /** Format: date-time */
1155
1298
  deadlineAt: string | null;
1156
1299
  };
@@ -1165,8 +1308,7 @@ interface components {
1165
1308
  SetFulfillmentAtTeamOrderResponse: {
1166
1309
  /** Format: uuid */
1167
1310
  teamOrderId: string;
1168
- /** @enum {string} */
1169
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1311
+ status: components["schemas"]["TeamOrderStatus"];
1170
1312
  /** Format: date-time */
1171
1313
  fulfillmentAt: string;
1172
1314
  /** Format: date-time */
@@ -1182,8 +1324,7 @@ interface components {
1182
1324
  SetDiningLocationTeamOrderResponse: {
1183
1325
  /** Format: uuid */
1184
1326
  teamOrderId: string;
1185
- /** @enum {string} */
1186
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1327
+ status: components["schemas"]["TeamOrderStatus"];
1187
1328
  diningLocation: string | null;
1188
1329
  };
1189
1330
  /** SetDiningTimeTeamOrderRequest */
@@ -1196,46 +1337,30 @@ interface components {
1196
1337
  SetDiningTimeTeamOrderResponse: {
1197
1338
  /** Format: uuid */
1198
1339
  teamOrderId: string;
1199
- /** @enum {string} */
1200
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1340
+ status: components["schemas"]["TeamOrderStatus"];
1201
1341
  diningTime: string;
1202
- diningOffsetMinutes: number;
1342
+ diningOffset: number;
1203
1343
  };
1204
1344
  /** SwitchFulfillmentTeamOrderRequest */
1205
1345
  SwitchFulfillmentTeamOrderRequest: {
1206
1346
  publicId: string;
1207
1347
  sessionId: string;
1208
- /** @enum {string} */
1209
- fulfillmentType: "pickup" | "delivery";
1210
- deliveryAddress?: {
1211
- street: string;
1212
- city: string;
1213
- state: string;
1214
- postalCode: string;
1215
- country: string;
1216
- };
1348
+ fulfillmentType: components["schemas"]["FulfillmentType"];
1349
+ deliveryAddress?: components["schemas"]["DeliveryAddress"];
1217
1350
  };
1218
1351
  /** SwitchFulfillmentTeamOrderResponse */
1219
1352
  SwitchFulfillmentTeamOrderResponse: {
1220
1353
  /** Format: uuid */
1221
1354
  teamOrderId: string;
1222
- /** @enum {string} */
1223
- status: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1224
- /** @enum {string} */
1225
- fulfillmentType: "pickup" | "delivery";
1355
+ status: components["schemas"]["TeamOrderStatus"];
1356
+ fulfillmentType: components["schemas"]["FulfillmentType"];
1226
1357
  deliveryAddressId: string | null;
1227
1358
  };
1228
1359
  /** UpdateDeliveryAddressTeamOrderRequest */
1229
1360
  UpdateDeliveryAddressTeamOrderRequest: {
1230
1361
  publicId: string;
1231
1362
  sessionId: string;
1232
- deliveryAddress: {
1233
- street: string;
1234
- city: string;
1235
- state: string;
1236
- postalCode: string;
1237
- country: string;
1238
- };
1363
+ deliveryAddress: components["schemas"]["DeliveryAddress"];
1239
1364
  };
1240
1365
  /** UpdateDeliveryAddressTeamOrderResponse */
1241
1366
  UpdateDeliveryAddressTeamOrderResponse: {
@@ -1260,6 +1385,14 @@ interface components {
1260
1385
  createdAt: unknown;
1261
1386
  updatedAt: unknown;
1262
1387
  };
1388
+ /** @enum {string} */
1389
+ PaymentMethod: "card" | "cash" | "voucher";
1390
+ /** @enum {string} */
1391
+ FulfillmentType: "pickup" | "delivery";
1392
+ /** @enum {string} */
1393
+ TeamOrderStatus: "draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled";
1394
+ /** @enum {string} */
1395
+ ParticipantStatus: "browsing" | "authorized" | "cash_pending" | "placed" | "completed" | "cancelled";
1263
1396
  };
1264
1397
  responses: never;
1265
1398
  parameters: never;
@@ -1271,11 +1404,11 @@ interface components {
1271
1404
  type schemas = components['schemas'];
1272
1405
  type CreateEventRequest = schemas['CreateEventRequest'];
1273
1406
  type CreateEventResponse = schemas['CreateEventResponse'];
1274
- type Article = schemas['Article'];
1275
- type ListArticlesResponse = schemas['ListArticlesResponse'];
1276
- type GetArticleResponse = schemas['GetArticleResponse'];
1277
- type PatchArticleRequest = schemas['PatchArticleRequest'];
1278
- type PatchArticleResponse = schemas['PatchArticleResponse'];
1407
+ type Article = schemas['FetchArticleResponse'];
1408
+ type ListArticlesResponse = schemas['FetchArticlesResponse'];
1409
+ type GetArticleResponse = schemas['FetchArticleResponse'];
1410
+ type PatchArticleRequest = schemas['EditArticleRequest'];
1411
+ type PatchArticleResponse = schemas['EditArticleResponse'];
1279
1412
  type FeatureImage = schemas['FeatureImage'];
1280
1413
  type PatchFeatureImageRequest = schemas['PatchFeatureImageRequest'];
1281
1414
  /**
@@ -1297,7 +1430,7 @@ interface ListArticlesOptions {
1297
1430
  /** When `true`, include articles whose `isActive` is `false`. Default `false`. */
1298
1431
  includeInactive?: boolean;
1299
1432
  }
1300
- type Venue = schemas['Venue'];
1433
+ type Venue = schemas['GetVenueResponse'];
1301
1434
  type GetVenueResponse = schemas['GetVenueResponse'];
1302
1435
  /**
1303
1436
  * Order fulfillment type - matches order_fulfillment_type enum in order3000 database.
@@ -1363,8 +1496,8 @@ interface Schedule {
1363
1496
  createdAt: string | null;
1364
1497
  createdBy: string | null;
1365
1498
  slotMode: 'interval' | 'duration';
1366
- intervalMinutes: number | null;
1367
- durationMinutes: number | null;
1499
+ intervalDuration: number | null;
1500
+ duration: number | null;
1368
1501
  }
1369
1502
  interface EventPoster {
1370
1503
  id: string;
@@ -1414,7 +1547,8 @@ interface Event {
1414
1547
  isClosed: boolean;
1415
1548
  reservationsEnabled: boolean;
1416
1549
  bookingOpensAtDays: number | null;
1417
- bookingClosesAtHours: number | null;
1550
+ /** Offset (ms) before event when booking closes (codebase convention: ms). */
1551
+ bookingClosesAtOffset: number | null;
1418
1552
  isActive: boolean;
1419
1553
  /** Whether this event should be displayed prominently in public-facing areas */
1420
1554
  isFeatured: boolean;
@@ -1601,7 +1735,7 @@ interface EventByAccessor {
1601
1735
  isRecurring: boolean;
1602
1736
  reservationsEnabled: boolean;
1603
1737
  bookingOpensAtDays: number | null;
1604
- bookingClosesAtHours: number | null;
1738
+ bookingClosesAtOffset: number | null;
1605
1739
  isActive: boolean;
1606
1740
  isFeatured: boolean;
1607
1741
  priority: number;
@@ -2366,34 +2500,80 @@ declare class SubscriptionsResource extends BaseResource {
2366
2500
  }
2367
2501
 
2368
2502
  /**
2369
- * Runtime enum objects that mirror order3000's Drizzle `pgEnum` shape —
2370
- * they carry an `enumValues` tuple. This lets SDK consumers write the exact
2371
- * same `z.enum(paymentMethodEnum.enumValues)` expression they would write
2372
- * against a real pgEnum, keeping one consistent pattern across the
2373
- * codebase (order3000's server imports the actual pgEnum from
2374
- * `@/drizzle/enums`; thamarai and other SDK consumers import these
2375
- * shape-compatible objects from 'order3000').
2503
+ * Generated by Kubb (https://kubb.dev/).
2504
+ * Do not edit manually.
2505
+ */
2506
+
2507
+ declare const fulfillmentTypeSchema: z.ZodEnum<{
2508
+ pickup: "pickup";
2509
+ delivery: "delivery";
2510
+ }>;
2511
+
2512
+ /**
2513
+ * Generated by Kubb (https://kubb.dev/).
2514
+ * Do not edit manually.
2515
+ */
2516
+
2517
+ declare const participantStatusSchema: z.ZodEnum<{
2518
+ placed: "placed";
2519
+ completed: "completed";
2520
+ cancelled: "cancelled";
2521
+ browsing: "browsing";
2522
+ authorized: "authorized";
2523
+ cash_pending: "cash_pending";
2524
+ }>;
2525
+
2526
+ /**
2527
+ * Generated by Kubb (https://kubb.dev/).
2528
+ * Do not edit manually.
2529
+ */
2530
+
2531
+ declare const paymentMethodSchema: z.ZodEnum<{
2532
+ card: "card";
2533
+ cash: "cash";
2534
+ voucher: "voucher";
2535
+ }>;
2536
+
2537
+ /**
2538
+ * Generated by Kubb (https://kubb.dev/).
2539
+ * Do not edit manually.
2540
+ */
2541
+
2542
+ declare const teamOrderStatusSchema: z.ZodEnum<{
2543
+ draft: "draft";
2544
+ collecting: "collecting";
2545
+ locked: "locked";
2546
+ placed: "placed";
2547
+ ready: "ready";
2548
+ completed: "completed";
2549
+ cancelled: "cancelled";
2550
+ }>;
2551
+
2552
+ /**
2553
+ * Runtime enum objects with an `enumValues` tuple — kept as a thin shim
2554
+ * over the kubb-generated `z.enum(...)` schemas so that downstream SDK
2555
+ * consumers can write `z.enum(paymentMethodEnum.enumValues)`, the same
2556
+ * idiom order3000's server uses against the real Drizzle pgEnum.
2376
2557
  *
2377
- * The tuples themselves must stay in sync with the matching pgEnum in
2378
- * `apps/order3000/src/drizzle/enums.ts`. That's a manual mirror — the SDK
2379
- * is a standalone package and can't import from the app's Drizzle schema.
2558
+ * The values themselves are now sourced from `apps/order3000/public/openapi.json`
2559
+ * via kubb — no manual mirror to maintain.
2380
2560
  */
2381
2561
  declare const paymentMethodEnum: {
2382
- enumValues: readonly ["card", "cash", "voucher"];
2562
+ enumValues: ("card" | "cash" | "voucher")[];
2383
2563
  };
2384
2564
  declare const fulfillmentTypeEnum: {
2385
- enumValues: readonly ["pickup", "delivery"];
2565
+ enumValues: ("pickup" | "delivery")[];
2386
2566
  };
2387
2567
  declare const teamOrderStatusEnum: {
2388
- enumValues: readonly ["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"];
2568
+ enumValues: ("draft" | "collecting" | "locked" | "placed" | "ready" | "completed" | "cancelled")[];
2389
2569
  };
2390
2570
  declare const participantStatusEnum: {
2391
- enumValues: readonly ["browsing", "authorized", "cash_pending", "placed", "completed", "cancelled"];
2571
+ enumValues: ("placed" | "completed" | "cancelled" | "browsing" | "authorized" | "cash_pending")[];
2392
2572
  };
2393
- type PaymentMethod = (typeof paymentMethodEnum.enumValues)[number];
2394
- type FulfillmentType = (typeof fulfillmentTypeEnum.enumValues)[number];
2395
- type TeamOrderStatus = (typeof teamOrderStatusEnum.enumValues)[number];
2396
- type ParticipantStatus = (typeof participantStatusEnum.enumValues)[number];
2573
+ type PaymentMethod = z$1.infer<typeof paymentMethodSchema>;
2574
+ type FulfillmentType = z$1.infer<typeof fulfillmentTypeSchema>;
2575
+ type TeamOrderStatus = z$1.infer<typeof teamOrderStatusSchema>;
2576
+ type ParticipantStatus = z$1.infer<typeof participantStatusSchema>;
2397
2577
  interface TeamDeliveryAddress {
2398
2578
  street: string;
2399
2579
  city: string;
@@ -2744,7 +2924,7 @@ declare class TeamOrdersResource {
2744
2924
  /**
2745
2925
  * Lead sets when the team will start eating. Client sends HH:MM; server
2746
2926
  * computes the delta against `fulfillmentAt` and stores it as
2747
- * `dining_offset_minutes` so the intent survives any later pickup change.
2927
+ * `dining_offset` (ms) so the intent survives any later pickup change.
2748
2928
  */
2749
2929
  setDiningTime(publicId: string, request: {
2750
2930
  sessionId: string;
@@ -2753,7 +2933,7 @@ declare class TeamOrdersResource {
2753
2933
  teamOrderId: string;
2754
2934
  status: TeamOrderStatus;
2755
2935
  diningTime: string;
2756
- diningOffsetMinutes: number;
2936
+ diningOffset: number;
2757
2937
  }>;
2758
2938
  /**
2759
2939
  * Toggle a participant's "settled" tick on the team Lead's
@@ -2960,19 +3140,63 @@ interface ScheduleInfo {
2960
3140
  }
2961
3141
  interface ScheduleInput {
2962
3142
  rrule?: string | null;
2963
- intervalMinutes?: number | null;
3143
+ /** Slot interval in milliseconds (codebase convention). */
3144
+ intervalDuration?: number | null;
2964
3145
  scheduleTimeSlots?: ScheduleTimeSlot[];
2965
3146
  }
2966
3147
  /**
2967
3148
  * Extract schedule information from a schedule object.
2968
3149
  * Returns time range and active days for display purposes.
2969
3150
  *
2970
- * @param schedule - Schedule object with rrule, intervalMinutes, and scheduleTimeSlots
3151
+ * @param schedule - Schedule object with rrule, intervalDuration (ms), and scheduleTimeSlots
2971
3152
  * @returns ScheduleInfo with timeRange and activeDays
2972
3153
  */
2973
3154
  declare function getScheduleInfo(schedule: ScheduleInput | null | undefined): ScheduleInfo;
2974
3155
 
2975
- interface Order3000ClientConfig {
3156
+ /**
3157
+ * Generated by Kubb (https://kubb.dev/).
3158
+ * Do not edit manually.
3159
+ */
3160
+
3161
+ declare const deliveryAddressSchema: z.ZodObject<{
3162
+ street: z.ZodString;
3163
+ city: z.ZodString;
3164
+ state: z.ZodString;
3165
+ postalCode: z.ZodString;
3166
+ country: z.ZodString;
3167
+ }, z.core.$strip>;
3168
+
3169
+ /**
3170
+ * Generated by Kubb (https://kubb.dev/).
3171
+ * Do not edit manually.
3172
+ */
3173
+ /**
3174
+ * DeliveryAddress
3175
+ */
3176
+ type DeliveryAddress = {
3177
+ /**
3178
+ * @type string
3179
+ */
3180
+ street: string;
3181
+ /**
3182
+ * @type string
3183
+ */
3184
+ city: string;
3185
+ /**
3186
+ * @type string
3187
+ */
3188
+ state: string;
3189
+ /**
3190
+ * @type string
3191
+ */
3192
+ postalCode: string;
3193
+ /**
3194
+ * @type string
3195
+ */
3196
+ country: string;
3197
+ };
3198
+
3199
+ interface O3KClientConfig {
2976
3200
  clientId: string;
2977
3201
  clientSecret: string;
2978
3202
  venueId?: string;
@@ -2990,7 +3214,7 @@ interface Order3000ClientConfig {
2990
3214
  */
2991
3215
  tokenUrl?: string;
2992
3216
  }
2993
- declare class Order3000Client {
3217
+ declare class O3KClient {
2994
3218
  areas: AreasResource;
2995
3219
  articles: ArticlesResource;
2996
3220
  baskets: BasketsResource;
@@ -3005,8 +3229,8 @@ declare class Order3000Client {
3005
3229
  realtime: RealtimeManager;
3006
3230
  private readonly baseUrl;
3007
3231
  private readonly tokenManager;
3008
- constructor(config: Order3000ClientConfig);
3232
+ constructor(config: O3KClientConfig);
3009
3233
  }
3010
3234
 
3011
- export { Order3000Client, fulfillmentTypeEnum, getScheduleInfo, participantStatusEnum, paymentMethodEnum, teamOrderStatusEnum };
3012
- export type { AddToBasketRequest, AddToBasketResponse, Area, AreaAsset, AreaAvailabilityResponse, AreaAvailabilityWindow, AreaBookingMode, AreaBookingRequestResponse, AreaBookingRequestSource, AreaBookingRequestStatus, AreaBookingStatus, AreaFeature, Article, Basket, BasketItem, BasketItemDeposit, BasketItemMenuItemRef, BasketItemMetadata, BasketStatus, BasketTotals, CancelTeamOrderResponse, ConfirmOrderRequest, ConfirmOrderResponse, CreateDeltaPaymentIntentRequest, CreateDeltaPaymentIntentResponse, CreatePaymentIntentRequest, CreatePaymentIntentResponse, CreateTeamOrderRequest, CreateTeamOrderResponse, CropArea, Currency, DayOfWeek, DeclaredReturn, Event, EventByAccessor, EventMenu, EventPoster, EventRow, ExtendDeadlineResponse as ExtendTeamOrderDeadlineResponse, FeatureImage, FetchTeamOrderResponse, GetAreaAvailabilityOptions, GetAreaOptions, GetArticleResponse, GetEventOptions, GetMenuOptions, GetVenueResponse, JoinTeamOrderRequest, JoinTeamOrderResponse, LatestOrder, ListArticlesOptions, ListArticlesResponse, ListEventsOptions, ListEventsResponse, Menu, MenuAsset, MenuBeverage, MenuBundle, MenuBundleDeposit, MenuDish, MenuItem, MenuItemRow, MenuItemType, MenuSubscription, MenuSubscriptionPoster, Order3000ClientConfig, OrderFulfillmentType, OrderStatus, PatchArticleRequest, PatchArticleResponse, PatchFeatureImageRequest, PaymentStatus, PlaceOrderRequest, Promotion, RealtimeConfig, RealtimeEvent, RealtimeSubscription, RemoveFromBasketResponse, Schedule, ScheduleInfo, ScheduleOverride, ScheduleOverrideRow, ScheduleRow, ScheduleTimeSlot, ScheduleWithTimeSlots, SubmitAreaBookingRequestPayload, SubmitTeamOrderResponse, SubscribeRequest, SubscribeResponse, SubscriberStatus, SubscriptionCredit, SubscriptionCreditStatus, SubscriptionOptions, SubscriptionPeriod, SwitchFulfillmentResponse as SwitchTeamOrderFulfillmentResponse, TeamDeliveryAddress, TeamOrderBasketItem, TeamOrderBasketItemMenuItemRef, FulfillmentType as TeamOrderFulfillmentType, TeamOrderParticipant, ParticipantStatus as TeamOrderParticipantStatus, PaymentMethod as TeamOrderPaymentMethod, TeamOrderStatus, ThresholdCheck as TeamOrderThresholdCheck, TimeSlot, Unit, UpdateDeliveryAddressResponse as UpdateTeamOrderDeliveryAddressResponse, UploadFeatureImageArgs, Venue };
3235
+ export { O3KClient, deliveryAddressSchema as O3KDeliveryAddressSchema, fulfillmentTypeEnum as O3KFulfillmentTypeEnum, getScheduleInfo as O3KGetScheduleInfo, participantStatusEnum as O3KParticipantStatusEnum, paymentMethodEnum as O3KPaymentMethodEnum, teamOrderStatusEnum as O3KTeamOrderStatusEnum };
3236
+ export type { 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, 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, CreateDeltaPaymentIntentRequest as O3KCreateDeltaPaymentIntentRequest, CreateDeltaPaymentIntentResponse as O3KCreateDeltaPaymentIntentResponse, CreatePaymentIntentRequest as O3KCreatePaymentIntentRequest, CreatePaymentIntentResponse as O3KCreatePaymentIntentResponse, CreateTeamOrderRequest as O3KCreateTeamOrderRequest, CreateTeamOrderResponse as O3KCreateTeamOrderResponse, CropArea as O3KCropArea, Currency as O3KCurrency, DayOfWeek as O3KDayOfWeek, DeclaredReturn as O3KDeclaredReturn, DeliveryAddress as O3KDeliveryAddress, Event as O3KEvent, EventByAccessor as O3KEventByAccessor, EventMenu as O3KEventMenu, EventPoster as O3KEventPoster, 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, ListArticlesOptions as O3KListArticlesOptions, ListArticlesResponse as O3KListArticlesResponse, 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, PatchArticleRequest as O3KPatchArticleRequest, PatchArticleResponse as O3KPatchArticleResponse, PatchFeatureImageRequest as O3KPatchFeatureImageRequest, PaymentStatus as O3KPaymentStatus, PlaceOrderRequest as O3KPlaceOrderRequest, Promotion as O3KPromotion, RealtimeConfig as O3KRealtimeConfig, RealtimeEvent as O3KRealtimeEvent, RealtimeSubscription as O3KRealtimeSubscription, RemoveFromBasketResponse as O3KRemoveFromBasketResponse, 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, UploadFeatureImageArgs as O3KUploadFeatureImageArgs, Venue as O3KVenue };