order3000 0.18.4 → 0.19.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.
@@ -0,0 +1,120 @@
1
+ import { z } from 'zod';
2
+
3
+ const Area = z.object({ id: z.string(), venueId: z.string(), accessor: z.string(), name: z.record(z.string()), description: z.record(z.string()).nullable(), longDescription: z.record(z.string()).nullable(), minCapacity: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), maxCapacity: z.number().int().gte(-9007199254740991).lte(9007199254740991), currency: z.enum(["EUR", "CHF"]), basePrice: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), perPersonPrice: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), features: z.array(z.object({ icon: z.string(), label: z.record(z.string()), description: z.record(z.string()).optional() }).strict()).nullable(), bookingMode: z.enum(["slot", "day"]), assets: z.array(z.object({ id: z.string(), type: z.enum(["image", "video", "document"]), tags: z.array(z.string()).nullable(), filename: z.string(), contentType: z.string(), metadata: z.object({ width: z.number(), height: z.number(), duration: z.number() }).partial().strict().nullable(), cropArea: z.object({ x: z.number(), y: z.number(), width: z.number(), height: z.number() }).strict().nullable(), publicUrl: z.string().url() }).strict()).optional() }).strict();
4
+ const ListAreasResponse = z.array(Area);
5
+ const GetAreaResponse = z.object({ id: z.string(), venueId: z.string(), accessor: z.string(), name: z.record(z.string()), description: z.record(z.string()).nullable(), longDescription: z.record(z.string()).nullable(), minCapacity: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), maxCapacity: z.number().int().gte(-9007199254740991).lte(9007199254740991), currency: z.enum(["EUR", "CHF"]), basePrice: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), perPersonPrice: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), features: z.array(z.object({ icon: z.string(), label: z.record(z.string()), description: z.record(z.string()).optional() }).strict()).nullable(), bookingMode: z.enum(["slot", "day"]), assets: z.array(z.object({ id: z.string(), type: z.enum(["image", "video", "document"]), tags: z.array(z.string()).nullable(), filename: z.string(), contentType: z.string(), metadata: z.object({ width: z.number(), height: z.number(), duration: z.number() }).partial().strict().nullable(), cropArea: z.object({ x: z.number(), y: z.number(), width: z.number(), height: z.number() }).strict().nullable(), publicUrl: z.string().url() }).strict()).optional() }).strict();
6
+ const GetAreaAvailabilityResponse = z.object({ from: z.string().regex(/^\d{4}-\d{2}-\d{2}$/), to: z.string().regex(/^\d{4}-\d{2}-\d{2}$/), bookingMode: z.enum(["slot", "day"]), occupied: z.array(z.object({ date: z.string().regex(/^\d{4}-\d{2}-\d{2}$/), startTime: z.string().regex(/^\d{2}:\d{2}(:\d{2})?$/).nullable(), endTime: z.string().regex(/^\d{2}:\d{2}(:\d{2})?$/).nullable() }).strict()) }).strict();
7
+ const SubmitAreaBookingRequest = z.object({ requestedDate: z.string().regex(/^\d{4}-\d{2}-\d{2}$/), requestedStartTime: z.string().regex(/^\d{2}:\d{2}(:\d{2})?$/).optional(), requestedEndTime: z.string().regex(/^\d{2}:\d{2}(:\d{2})?$/).optional(), partySize: z.number().int().lte(9007199254740991), customerFirstName: z.string().min(1), customerLastName: z.string().min(1), customerEmail: z.string().regex(/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/).email(), customerPhone: z.string().optional(), message: z.string().optional(), source: z.enum(["website", "phone", "walk_in"]).optional() }).strict();
8
+ const SubmitAreaBookingResponse = z.object({ id: z.string(), venueId: z.string(), areaId: z.string(), requestedDate: z.string().regex(/^\d{4}-\d{2}-\d{2}$/), requestedStartTime: z.string().regex(/^\d{2}:\d{2}(:\d{2})?$/).nullable(), requestedEndTime: z.string().regex(/^\d{2}:\d{2}(:\d{2})?$/).nullable(), partySize: z.number().int().gte(-9007199254740991).lte(9007199254740991), customerFirstName: z.string(), customerLastName: z.string(), customerEmail: z.string(), customerPhone: z.string().nullable(), message: z.string().nullable(), source: z.enum(["website", "phone", "walk_in"]), status: z.enum(["pending", "approved", "rejected", "cancelled"]), areaBookingId: z.string().nullable(), createdAt: z.string().nullable(), updatedAt: z.string().nullable() }).strict();
9
+ const AddToBasketRequest = z.object({ venueId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), sessionId: z.string().min(1), menuItems: z.array(z.object({ menuItemId: z.string().min(1), role: z.string().optional(), quantity: z.number().gt(0).optional(), unit: z.enum(["grams", "kilograms", "liters", "milliliters", "pieces"]).optional() }).strict()).min(1), metadata: z.object({}).partial().strict().passthrough().optional() }).strict();
10
+ const AddToBasketResponse = z.object({ basketItemId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), itemCount: z.number().int().gte(0).lte(9007199254740991), deposit: z.object({ depositwareTemplateId: z.string(), name: z.record(z.string()), amount: z.number().int().gte(0).lte(9007199254740991), currency: z.enum(["EUR", "CHF"]) }).strict().nullable(), totals: z.object({ currency: z.enum(["EUR", "CHF"]), itemsTotal: z.number().int().gte(0).lte(9007199254740991), taxAmount: z.number().int().gte(0).lte(9007199254740991), depositCharge: z.number().int().gte(0).lte(9007199254740991), grossTotal: z.number().int().gte(0).lte(9007199254740991), depositCredit: z.number().int().gte(0).lte(9007199254740991), effectiveTotal: z.number().int().gte(0).lte(9007199254740991), cashRefund: z.number().int().gte(0).lte(9007199254740991), returnable: z.array(z.object({ depositwareTemplateId: z.string(), count: z.number().int().gte(0).lte(9007199254740991) }).strict()) }).strict() }).strict();
11
+ const RemoveFromBasketResponse = z.object({ success: z.boolean(), basketItemId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), itemCount: z.number().int().gte(0).lte(9007199254740991), totals: z.object({ currency: z.enum(["EUR", "CHF"]), itemsTotal: z.number().int().gte(0).lte(9007199254740991), taxAmount: z.number().int().gte(0).lte(9007199254740991), depositCharge: z.number().int().gte(0).lte(9007199254740991), grossTotal: z.number().int().gte(0).lte(9007199254740991), depositCredit: z.number().int().gte(0).lte(9007199254740991), effectiveTotal: z.number().int().gte(0).lte(9007199254740991), cashRefund: z.number().int().gte(0).lte(9007199254740991), returnable: z.array(z.object({ depositwareTemplateId: z.string(), count: z.number().int().gte(0).lte(9007199254740991) }).strict()) }).strict().nullable() }).strict();
12
+ const GetBasketTotalsRequest = z.object({ declaredReturns: z.array(z.object({ depositwareTemplateId: z.string().min(1), count: z.number().int().gte(0).lte(9007199254740991) }).strict()) }).partial().strict();
13
+ const GetBasketTotalsResponse = z.object({ currency: z.enum(["EUR", "CHF"]), itemsTotal: z.number().int().gte(0).lte(9007199254740991), taxAmount: z.number().int().gte(0).lte(9007199254740991), depositCharge: z.number().int().gte(0).lte(9007199254740991), grossTotal: z.number().int().gte(0).lte(9007199254740991), depositCredit: z.number().int().gte(0).lte(9007199254740991), effectiveTotal: z.number().int().gte(0).lte(9007199254740991), cashRefund: z.number().int().gte(0).lte(9007199254740991), returnable: z.array(z.object({ depositwareTemplateId: z.string(), count: z.number().int().gte(0).lte(9007199254740991) }).strict()) }).strict();
14
+ const SetBasketDeclaredReturnsRequest = z.object({ basketId: z.string().min(1), sessionId: z.string().min(1), declaredReturns: z.array(z.object({ depositwareTemplateId: z.string().min(1), count: z.number().int().gte(0).lte(9007199254740991) }).strict()) }).strict();
15
+ const SetBasketDeclaredReturnsResponse = z.object({ basketId: z.string(), declaredReturns: z.array(z.object({ depositwareTemplateId: z.string().min(1), count: z.number().int().gte(0).lte(9007199254740991) }).strict()) }).strict();
16
+ const CreateEventRequest = z.object({ accessor: z.string().nullish(), name: z.union([z.union([z.string(), z.number(), z.boolean(), z.literal(null)]), z.object({}).partial().strict().passthrough(), z.array(z.unknown())]), description: z.union([z.union([z.string(), z.number(), z.boolean(), z.literal(null)]), z.object({}).partial().strict().passthrough(), z.array(z.unknown())]).nullish(), scheduleId: z.string().nullish(), maxBookings: z.number().int().gte(-2147483648).lte(2147483647).nullish(), maxGuests: z.number().int().gte(-2147483648).lte(2147483647).nullish(), minPartySize: z.number().int().gte(-2147483648).lte(2147483647).nullish(), maxPartySize: z.number().int().gte(-2147483648).lte(2147483647).nullish(), isPublic: z.boolean().optional(), isRecurring: z.boolean().optional(), reservationsEnabled: z.boolean().optional(), bookingOpensAtDays: z.number().int().gte(-2147483648).lte(2147483647).nullish(), bookingClosesAtHours: z.number().int().gte(-2147483648).lte(2147483647).nullish(), isActive: z.boolean().optional(), isFeatured: z.boolean().optional(), priority: z.number().int().gte(-2147483648).lte(2147483647).optional(), schedule: z.object({ rrule: z.string().nullish(), timezone: z.string().nullish(), validFrom: z.string().regex(/^\d{4}-\d{2}-\d{2}$/).nullish(), validTo: z.string().regex(/^\d{4}-\d{2}-\d{2}$/).nullish(), timeRanges: z.array(z.object({ startTime: z.string().regex(/^\d{2}:\d{2}$/), endTime: z.string().regex(/^\d{2}:\d{2}$/), lastSeatingTime: z.string().regex(/^\d{2}:\d{2}$/).nullish() }).strict()).min(1), slotMode: z.enum(["interval", "duration"]).nullish(), intervalMinutes: z.number().nullish(), durationMinutes: z.number().nullish() }).strict().nullish(), ritualAccessor: z.string().nullish(), venueAccessor: z.string().min(1) }).strict();
17
+ const CreateEventResponse = z.object({ id: z.string(), venueId: z.string(), accessor: z.string().nullable(), name: z.union([z.union([z.string(), z.number(), z.boolean(), z.literal(null)]), z.object({}).partial().strict().passthrough(), z.array(z.unknown())]), description: z.union([z.union([z.string(), z.number(), z.boolean(), z.literal(null)]), z.object({}).partial().strict().passthrough(), z.array(z.unknown())]).nullable(), scheduleId: z.string().nullable(), ritualId: z.string().nullable(), maxBookings: z.number().int().gte(-2147483648).lte(2147483647).nullable(), maxGuests: z.number().int().gte(-2147483648).lte(2147483647).nullable(), minPartySize: z.number().int().gte(-2147483648).lte(2147483647).nullable(), maxPartySize: z.number().int().gte(-2147483648).lte(2147483647).nullable(), isPublic: z.boolean(), isRecurring: z.boolean(), reservationsEnabled: z.boolean(), bookingOpensAtDays: z.number().int().gte(-2147483648).lte(2147483647).nullable(), bookingClosesAtHours: z.number().int().gte(-2147483648).lte(2147483647).nullable(), isActive: z.boolean(), isFeatured: z.boolean(), priority: z.number().int().gte(-2147483648).lte(2147483647), createdBy: z.string().nullable(), updatedBy: z.string().nullable(), createdAt: z.unknown().nullable(), updatedAt: z.unknown().nullable() }).strict();
18
+ const GetMenuResponse = z.object({ id: z.string(), venueId: z.string(), accessor: z.string(), name: z.record(z.string()) }).strict().passthrough();
19
+ const ListMenuBundlesResponse = z.array(z.object({ id: z.string(), menuId: z.string() }).strict().passthrough());
20
+ const ListMenuSubscriptionsResponse = z.array(z.object({ id: z.string(), menuId: z.string() }).strict().passthrough());
21
+ const PlaceOrderRequest = z.object({ id: z.string().optional(), venueId: z.string(), basketId: z.string(), publicId: z.string().nullish(), quickReferenceNumber: z.number().int().gte(-2147483648).lte(2147483647).nullish(), status: z.enum(["pending", "in_progress", "ready", "completed", "cancelled"]).optional(), paymentIntentId: z.string().nullish(), paymentMethod: z.enum(["card", "cash", "voucher"]).nullish(), paymentStatus: z.enum(["unpaid", "paid", "refunded", "authorized", "cash_pending"]).optional(), taxAmount: z.number().int().gte(-2147483648).lte(2147483647), totalAmount: z.number().int().gte(-2147483648).lte(2147483647), currency: z.enum(["EUR", "CHF"]).optional(), fulfillmentType: z.enum(["pickup", "delivery"]).nullish(), fulfillmentAt: z.unknown().nullish(), orderedAt: z.unknown().optional(), orderedBy: z.string(), updatedAt: z.unknown().nullish(), updatedBy: z.string().nullish(), teamOrderId: z.string().nullish(), participantDisplayName: z.string().nullish(), leadSettledAt: z.unknown().nullish() }).strict();
22
+ const PlaceOrderResponse = z.object({ id: z.string(), venueId: z.string(), basketId: z.string(), publicId: z.string().nullable(), quickReferenceNumber: z.number().int().gte(-2147483648).lte(2147483647).nullable(), status: z.enum(["pending", "in_progress", "ready", "completed", "cancelled"]), paymentIntentId: z.string().nullable(), paymentMethod: z.enum(["card", "cash", "voucher"]).nullable(), paymentStatus: z.enum(["unpaid", "paid", "refunded", "authorized", "cash_pending"]), taxAmount: z.number().int().gte(-2147483648).lte(2147483647), totalAmount: z.number().int().gte(-2147483648).lte(2147483647), currency: z.enum(["EUR", "CHF"]), fulfillmentType: z.enum(["pickup", "delivery"]).nullable(), fulfillmentAt: z.unknown().nullable(), orderedAt: z.unknown(), orderedBy: z.string(), updatedAt: z.unknown().nullable(), updatedBy: z.string().nullable(), teamOrderId: z.string().nullable(), participantDisplayName: z.string().nullable(), leadSettledAt: z.unknown().nullable() }).strict();
23
+ const CreatePaymentIntentRequest = z.object({ basketId: z.string().min(1), currency: z.enum(["EUR", "CHF"]), sessionId: z.string().min(1), fulfillmentType: z.enum(["pickup", "delivery"]), fulfillmentAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$/).datetime({ offset: true }).nullish(), customerFirstName: z.string().optional(), customerLastName: z.string().optional(), teamOrderPublicId: z.string().optional(), declaredReturns: z.array(z.object({ depositwareTemplateId: z.string().min(1), count: z.number().int().gte(0).lte(9007199254740991) }).strict()).optional() }).strict();
24
+ const CreatePaymentIntentResponse = z.object({ clientSecret: z.string().nullable(), paymentIntentId: z.string(), orderId: z.string() }).strict();
25
+ const CreateDeltaPaymentIntentRequest = z.object({ basketId: z.string().min(1), sessionId: z.string().min(1), currency: z.enum(["EUR", "CHF"]), declaredReturns: z.array(z.object({ depositwareTemplateId: z.string().min(1), count: z.number().int().gte(0).lte(9007199254740991) }).strict()).optional() }).strict();
26
+ const CreateDeltaPaymentIntentResponse = z.object({ clientSecret: z.string().nullable(), paymentIntentId: z.string(), orderId: z.string(), amount: z.number().int().lte(9007199254740991), status: z.enum(["requires_payment_method", "requires_confirmation", "requires_action", "processing", "requires_capture", "canceled", "succeeded"]) }).strict();
27
+ const ReduceDeltaPaymentIntentRequest = z.object({ basketId: z.string().min(1), sessionId: z.string().min(1), currency: z.enum(["EUR", "CHF"]), declaredReturns: z.array(z.object({ depositwareTemplateId: z.string().min(1), count: z.number().int().gte(0).lte(9007199254740991) }).strict()).optional() }).strict();
28
+ const ReduceDeltaPaymentIntentResponse = z.object({ orderId: z.string(), paidTotal: z.number().int().gte(0).lte(9007199254740991), released: z.number().int().gte(0).lte(9007199254740991) }).strict();
29
+ const MakeReservationRequest = z.object({ eventId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), quickReferenceNumber: z.number().int().gte(-2147483648).lte(2147483647).nullish(), reservationDate: z.string(), reservationTime: z.string(), partySize: z.number().int().gte(1).lte(20), duration: z.number().int().gte(30).lte(300).nullable(), customerId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid().nullable(), customerFirstName: z.string().min(1).max(50), customerLastName: z.string().min(1).max(50), customerEmail: z.string().regex(/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/).email().nullish(), customerPhone: z.string().min(1).nullish(), contactPreference: z.enum(["email", "phone", "sms", "none"]), source: z.enum(["website", "phone", "walk_in"]), specialRequests: z.string().max(500).nullable(), tablePreference: z.string().max(100).nullable(), venueAccessor: z.string().min(1) }).strict();
30
+ const MakeReservationResponse = z.object({ id: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), venueId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), eventId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), quickReferenceNumber: z.number().int().gte(-2147483648).lte(2147483647).nullable(), reservationDate: z.string(), reservationTime: z.string(), partySize: z.number().int().gte(-9007199254740991).lte(9007199254740991), duration: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), customerId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid().nullable(), customerFirstName: z.string(), customerLastName: z.string(), customerEmail: z.string().nullable(), customerPhone: z.string().nullable(), contactPreference: z.enum(["email", "phone", "sms", "none"]), status: z.enum(["pending", "confirmed", "arrived", "seated", "completed", "cancelled", "no_show"]), confirmationCode: z.string().nullable(), confirmedAt: z.unknown().nullable(), arrivedAt: z.unknown().nullable(), seatedAt: z.unknown().nullable(), completedAt: z.unknown().nullable(), cancelledAt: z.unknown().nullable(), cancellationReason: z.enum(["customer_request", "restaurant_request"]).nullable(), cancellationNote: z.string().nullable(), source: z.enum(["website", "phone", "walk_in"]), specialRequests: z.string().nullable(), tablePreference: z.string().nullable(), createdBy: z.string().nullable(), updatedBy: z.string().nullable(), createdAt: z.unknown().nullable(), updatedAt: z.unknown().nullable() }).strict();
31
+ const GetSubscriptionResponse = z.object({ id: z.string(), menuId: z.string(), accessor: z.string(), name: z.record(z.string()), shortName: z.record(z.string()).nullable(), description: z.record(z.string()).nullable(), scheduleId: z.string().nullable(), allowance: z.number().int().lte(9007199254740991), billingPeriod: z.enum(["week", "month", "year"]), allowancePeriod: z.enum(["week", "month", "year"]), redeemableTagSets: z.array(z.string()).nullable(), expiryInDays: z.number().int().lte(9007199254740991).nullable(), price: z.number().int().gte(0).lte(9007199254740991), currency: z.enum(["EUR", "CHF"]), isActive: z.boolean(), sortIndex: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), posters: z.array(z.object({ id: z.string(), menuSubscriptionId: z.string(), storagePath: z.string(), publicUrl: z.string().url(), filename: z.string(), contentType: z.string(), sizeBytes: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), sortIndex: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), createdBy: z.string().nullable(), createdAt: z.string().nullable() }).strict()) }).strict();
32
+ const SubscribeRequest = z.object({ email: z.string().regex(/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/).email(), firstName: z.string().optional(), lastName: z.string().optional(), sessionId: z.string().optional(), successUrl: z.string().url(), cancelUrl: z.string().url() }).strict();
33
+ const SubscribeResponse = z.object({ checkoutUrl: z.string().url().nullable(), sessionId: z.string() }).strict();
34
+ const CancelSubscriptionRequest = z.object({ subscriberId: z.string().min(1) }).strict();
35
+ const CancelSubscriptionResponse = z.object({ success: z.literal(true) }).strict();
36
+ const GetSubscriptionCreditsResponse = z.array(z.object({ id: z.string(), subscriberId: z.string(), periodStart: z.string(), periodEnd: z.string(), expiresAt: z.string().nullable(), status: z.enum(["available", "redeemed", "expired"]), redeemedAt: z.string().nullable(), orderId: z.string().nullable(), createdAt: z.string().nullable() }).strict());
37
+ const CreateTeamOrderRequest = z.object({ venueId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), sessionId: z.string().min(1), menuId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), leadDisplayName: z.string().min(1), teamName: z.string().min(1).optional(), logoUrl: z.string().url().optional(), deadlineAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullish(), fulfillmentType: z.enum(["pickup", "delivery"]), fulfillmentAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullish(), deliveryAddress: z.object({ street: z.string(), city: z.string(), state: z.string(), postalCode: z.string(), country: z.string() }).strict().optional(), allowedPaymentMethods: z.array(z.enum(["card", "cash", "voucher"])).min(1), eventId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid().optional() }).strict();
38
+ const CreateTeamOrderResponse = z.object({ publicId: z.string(), teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid() }).strict();
39
+ const FetchTeamOrderResponse = z.object({ teamOrder: z.object({ id: z.string(), publicId: z.string(), venueId: z.string(), menuId: z.string(), eventId: z.string().nullable(), teamName: z.string().nullable(), logoUrl: z.string().nullable(), leadDisplayName: z.string(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), allowedPaymentMethods: z.array(z.enum(["card", "cash", "voucher"])), fulfillmentType: z.enum(["pickup", "delivery"]), fulfillmentAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullable(), deadlineAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullable(), lockedAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullable(), placedAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullable(), cancelledAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullable(), cancelReason: z.string().nullable(), deliveryAddressId: z.string().nullable(), diningLocation: z.string().nullable(), diningTime: z.string().nullable(), isDeliveryEnabled: z.boolean(), quickReferenceNumber: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable() }).strict(), deliveryThreshold: z.object({ amount: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), quantity: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable() }).strict(), participants: z.array(z.object({ customerId: z.string(), basketId: z.string().nullable(), orderId: z.string().nullable(), participantNumber: z.number().int().lte(9007199254740991).nullable(), displayName: z.string().nullable(), status: z.enum(["browsing", "authorized", "cash_pending", "placed", "completed", "cancelled"]), bundleCount: z.number().int().gte(0).lte(9007199254740991), amount: z.number().int().gte(0).lte(9007199254740991), paymentMethod: z.enum(["card", "cash", "voucher"]).nullable(), isLead: z.boolean(), isMe: z.boolean(), joinedAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }), items: z.array(z.object({ id: z.string(), metadata: z.unknown().nullable(), menuItems: z.array(z.object({ menuItemId: z.string(), role: z.string().nullable(), quantity: z.number(), unit: z.enum(["grams", "kilograms", "liters", "milliliters", "pieces"]) }).strict()), isPaid: z.boolean() }).strict()), payments: z.array(z.object({ amount: z.number().int().gte(0).lte(9007199254740991), method: z.enum(["card", "cash", "voucher"]), status: z.enum(["authorized", "captured", "cash_pending", "cash_received"]), createdAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }), cardLast4: z.string().min(4).max(4).nullable() }).strict()), paidTotal: z.number().int().gte(0).lte(9007199254740991), amountDue: z.number().int().gte(0).lte(9007199254740991), declaredReturns: z.array(z.object({ depositwareTemplateId: z.string(), count: z.number().int().gte(0).lte(9007199254740991) }).strict()), leadSettledAt: z.string().nullable() }).strict()), aggregatedTotals: z.object({ confirmedBundleCount: z.number().int().gte(0).lte(9007199254740991), confirmedAmount: z.number().int().gte(0).lte(9007199254740991), totalBundleCount: z.number().int().gte(0).lte(9007199254740991) }).strict(), thresholdCheck: z.object({ meets: z.boolean(), failedConstraints: z.array(z.enum(["quantity", "amount"])), requiredQuantity: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), currentQuantity: z.number().int().gte(-9007199254740991).lte(9007199254740991), requiredAmount: z.number().int().gte(-9007199254740991).lte(9007199254740991).nullable(), currentAmount: z.number().int().gte(-9007199254740991).lte(9007199254740991) }).strict(), isLead: z.boolean() }).strict();
40
+ const JoinTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), displayName: z.string().min(1).optional() }).strict();
41
+ const JoinTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), basketId: z.string(), customerId: z.string(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), isLead: z.boolean(), alreadyJoined: z.boolean() }).strict();
42
+ const SubmitTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1) }).strict();
43
+ const SubmitTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), capturedOrderIds: z.array(z.string()), cashPendingOrderIds: z.array(z.string()), droppedBasketIds: z.array(z.string()), placedAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }) }).strict();
44
+ const CancelTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), reason: z.string().max(500).optional() }).strict();
45
+ const CancelTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), voidedPaymentIntentIds: z.array(z.string()), cancelledAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }) }).strict();
46
+ const ExtendDeadlineTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), newDeadlineAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }) }).strict();
47
+ const ExtendDeadlineTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), deadlineAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullable() }).strict();
48
+ const SetFulfillmentAtTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), fulfillmentAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }) }).strict();
49
+ const SetFulfillmentAtTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), fulfillmentAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }), deadlineAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }).nullable() }).strict();
50
+ const SetDiningLocationTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), diningLocation: z.string().max(200) }).strict();
51
+ const SetDiningLocationTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), diningLocation: z.string().nullable() }).strict();
52
+ const SetDiningTimeTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), diningTime: z.string().regex(/^\d{2}:\d{2}$/) }).strict();
53
+ const SetDiningTimeTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), diningTime: z.string(), diningOffsetMinutes: z.number().int().gte(0).lte(9007199254740991) }).strict();
54
+ const postTeamOrdersPublicIdleadSettled_Body = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), orderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), settled: z.boolean() }).strict();
55
+ const postTeamOrdersPublicIdautoExtendFulfillmentIfExpired_Body = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), proposedFulfillmentAt: z.string().regex(/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$/).datetime({ offset: true }) }).strict();
56
+ const SwitchFulfillmentTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), fulfillmentType: z.enum(["pickup", "delivery"]), deliveryAddress: z.object({ street: z.string(), city: z.string(), state: z.string(), postalCode: z.string(), country: z.string() }).strict().optional() }).strict();
57
+ const SwitchFulfillmentTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), status: z.enum(["draft", "collecting", "locked", "placed", "ready", "completed", "cancelled"]), fulfillmentType: z.enum(["pickup", "delivery"]), deliveryAddressId: z.string().nullable() }).strict();
58
+ const UpdateDeliveryAddressTeamOrderRequest = z.object({ publicId: z.string().min(1), sessionId: z.string().min(1), deliveryAddress: z.object({ street: z.string(), city: z.string(), state: z.string(), postalCode: z.string(), country: z.string() }).strict() }).strict();
59
+ const UpdateDeliveryAddressTeamOrderResponse = z.object({ teamOrderId: z.string().regex(/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/).uuid(), deliveryAddressId: z.string() }).strict();
60
+ const schemas = {
61
+ Area,
62
+ ListAreasResponse,
63
+ GetAreaResponse,
64
+ GetAreaAvailabilityResponse,
65
+ SubmitAreaBookingRequest,
66
+ SubmitAreaBookingResponse,
67
+ AddToBasketRequest,
68
+ AddToBasketResponse,
69
+ RemoveFromBasketResponse,
70
+ GetBasketTotalsRequest,
71
+ GetBasketTotalsResponse,
72
+ SetBasketDeclaredReturnsRequest,
73
+ SetBasketDeclaredReturnsResponse,
74
+ CreateEventRequest,
75
+ CreateEventResponse,
76
+ GetMenuResponse,
77
+ ListMenuBundlesResponse,
78
+ ListMenuSubscriptionsResponse,
79
+ PlaceOrderRequest,
80
+ PlaceOrderResponse,
81
+ CreatePaymentIntentRequest,
82
+ CreatePaymentIntentResponse,
83
+ CreateDeltaPaymentIntentRequest,
84
+ CreateDeltaPaymentIntentResponse,
85
+ ReduceDeltaPaymentIntentRequest,
86
+ ReduceDeltaPaymentIntentResponse,
87
+ MakeReservationRequest,
88
+ MakeReservationResponse,
89
+ GetSubscriptionResponse,
90
+ SubscribeRequest,
91
+ SubscribeResponse,
92
+ CancelSubscriptionRequest,
93
+ CancelSubscriptionResponse,
94
+ GetSubscriptionCreditsResponse,
95
+ CreateTeamOrderRequest,
96
+ CreateTeamOrderResponse,
97
+ FetchTeamOrderResponse,
98
+ JoinTeamOrderRequest,
99
+ JoinTeamOrderResponse,
100
+ SubmitTeamOrderRequest,
101
+ SubmitTeamOrderResponse,
102
+ CancelTeamOrderRequest,
103
+ CancelTeamOrderResponse,
104
+ ExtendDeadlineTeamOrderRequest,
105
+ ExtendDeadlineTeamOrderResponse,
106
+ SetFulfillmentAtTeamOrderRequest,
107
+ SetFulfillmentAtTeamOrderResponse,
108
+ SetDiningLocationTeamOrderRequest,
109
+ SetDiningLocationTeamOrderResponse,
110
+ SetDiningTimeTeamOrderRequest,
111
+ SetDiningTimeTeamOrderResponse,
112
+ postTeamOrdersPublicIdleadSettled_Body,
113
+ postTeamOrdersPublicIdautoExtendFulfillmentIfExpired_Body,
114
+ SwitchFulfillmentTeamOrderRequest,
115
+ SwitchFulfillmentTeamOrderResponse,
116
+ UpdateDeliveryAddressTeamOrderRequest,
117
+ UpdateDeliveryAddressTeamOrderResponse
118
+ };
119
+
120
+ export { schemas };
package/package.json CHANGED
@@ -1,18 +1,30 @@
1
1
  {
2
2
  "name": "order3000",
3
- "version": "0.18.4",
3
+ "version": "0.19.0",
4
4
  "description": "order3000 node.js sdk",
5
5
  "main": "./dist/client.cjs",
6
6
  "module": "./dist/client.mjs",
7
7
  "types": "./dist/client.d.cts",
8
8
  "exports": {
9
- "require": {
10
- "types": "./dist/client.d.cts",
11
- "default": "./dist/client.cjs"
9
+ ".": {
10
+ "require": {
11
+ "types": "./dist/client.d.cts",
12
+ "default": "./dist/client.cjs"
13
+ },
14
+ "import": {
15
+ "types": "./dist/client.d.mts",
16
+ "default": "./dist/client.mjs"
17
+ }
12
18
  },
13
- "import": {
14
- "types": "./dist/client.d.mts",
15
- "default": "./dist/client.mjs"
19
+ "./schemas": {
20
+ "require": {
21
+ "types": "./dist/schemas.d.cts",
22
+ "default": "./dist/schemas.cjs"
23
+ },
24
+ "import": {
25
+ "types": "./dist/schemas.d.mts",
26
+ "default": "./dist/schemas.mjs"
27
+ }
16
28
  }
17
29
  },
18
30
  "dependencies": {
@@ -22,17 +34,19 @@
22
34
  "i18next": "^25.6.0",
23
35
  "i18next-fs-backend": "^2.6.0",
24
36
  "react-type-animation": "^3.2.0",
37
+ "zod": "^3.23.8",
25
38
  "@kolaveri/money": "1.1.4"
26
39
  },
27
40
  "devDependencies": {
28
41
  "@types/node": "^24.10.0",
29
42
  "esbuild": "^0.26.0",
30
43
  "openapi-typescript": "^7.6.1",
44
+ "openapi-zod-client": "^1.18.3",
31
45
  "pkgroll": "^2.26.3",
32
46
  "prettier": "^3.7.4",
33
47
  "tsx": "^4.19.2",
34
48
  "typescript": "^5.9.3",
35
- "@kolaveri/eslint-config": "1.5.1",
49
+ "@kolaveri/eslint-config": "1.5.2",
36
50
  "@kolaveri/prettier-config": "1.0.6",
37
51
  "@kolaveri/tsconfig": "1.0.1"
38
52
  },
@@ -43,6 +57,7 @@
43
57
  "scripts": {
44
58
  "dev": "scripts/dev.sh tsx src/dev.ts",
45
59
  "build:types": "openapi-typescript ../order3000/public/openapi.json -o src/types/generated.d.ts",
46
- "build": "npm run build:types && pkgroll"
60
+ "build:zod": "tsx scripts/generate-zod-schemas.ts",
61
+ "build": "npm run build:types && npm run build:zod && pkgroll"
47
62
  }
48
63
  }