@wix/auto_sdk_bookings_bookings 1.0.39 → 1.0.41

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.
@@ -1,7 +1,8 @@
1
- import { HttpClient, EventDefinition, MaybeContext, BuildRESTFunction, BuildEventDefinition } from '@wix/sdk-types';
1
+ import { HttpClient, NonNullablePaths, EventDefinition, MaybeContext, BuildRESTFunction, BuildEventDefinition } from '@wix/sdk-types';
2
2
  import { ConfirmOrDeclineBookingOptions, ConfirmOrDeclineBookingResponse, ConfirmOrDeclineBookingApplicationErrors, BulkConfirmOrDeclineBookingRequestBookingDetails, BulkConfirmOrDeclineBookingOptions, BulkConfirmOrDeclineBookingResponse, BulkConfirmOrDeclineBookingApplicationErrors, Booking, CreateBookingOptions, CreateBookingResponse, CreateBookingApplicationErrors, CreateBookingInfo, BulkCreateBookingOptions, BulkCreateBookingResponse, BulkCreateBookingApplicationErrors, V2Slot, RescheduleBookingOptions, RescheduleBookingResponse, RescheduleBookingApplicationErrors, ConfirmBookingOptions, ConfirmBookingResponse, ConfirmBookingApplicationErrors, SetBookingSubmissionIdResponse, SetBookingSubmissionIdApplicationErrors, UpdateExtendedFieldsOptions, UpdateExtendedFieldsResponse, UpdateExtendedFieldsApplicationErrors, DeclineBookingOptions, DeclineBookingResponse, DeclineBookingApplicationErrors, CancelBookingOptions, CancelBookingResponse, CancelBookingApplicationErrors, UpdateNumberOfParticipantsOptions, UpdateNumberOfParticipantsResponse, UpdateNumberOfParticipantsApplicationErrors, CreateMultiServiceBookingOptions, CreateMultiServiceBookingResponse, CreateMultiServiceBookingApplicationErrors, RescheduleBookingInfo, RescheduleMultiServiceBookingOptions, RescheduleMultiServiceBookingResponse, RescheduleMultiServiceBookingApplicationErrors, GetMultiServiceBookingAvailabilityResponse, GetMultiServiceBookingAvailabilityApplicationErrors, CancelMultiServiceBookingOptions, CancelMultiServiceBookingResponse, CancelMultiServiceBookingApplicationErrors, MarkMultiServiceBookingAsPendingOptions, MarkMultiServiceBookingAsPendingResponse, MarkMultiServiceBookingAsPendingApplicationErrors, ConfirmMultiServiceBookingOptions, ConfirmMultiServiceBookingResponse, ConfirmMultiServiceBookingApplicationErrors, DeclineMultiServiceBookingOptions, DeclineMultiServiceBookingResponse, DeclineMultiServiceBookingApplicationErrors, BulkGetMultiServiceBookingAllowedActionsResponse, MultiServiceBooking, AddBookingsToMultiServiceBookingOptions, AddBookingsToMultiServiceBookingResponse, AddBookingsToMultiServiceBookingApplicationErrors, RemoveBookingsFromMultiServiceBookingOptions, RemoveBookingsFromMultiServiceBookingResponse, RemoveBookingsFromMultiServiceBookingApplicationErrors, BookingCanceledEnvelope, BookingConfirmedEnvelope, BookingCreatedEnvelope, BookingDeclinedEnvelope, BookingNumberOfParticipantsUpdatedEnvelope, BookingRescheduledEnvelope, BookingUpdatedEnvelope } from './index.typings.js';
3
3
  export { ActionEvent, Actor, AddBookingsToMultiServiceBookingRequest, Address, AddressLocation, AddressStreetOneOf, AllowedActions, ApplicationError, AvailableResources, BaseEventMetadata, BookedAddOn, BookedEntity, BookedEntityItemOneOf, BookedResource, BookedSchedule, BookedSlot, BookingCanceled, BookingChanged, BookingConfirmed, BookingDeclined, BookingDetails, BookingFormFilled, BookingIdAndRevision, BookingInfo, BookingMarkedAsPending, BookingParticipantsInfoOneOf, BookingPolicySettings, BookingPolicyViolations, BookingRescheduled, BookingRescheduledPreviousParticipantsInfoOneOf, BookingResult, BookingSource, BookingStatus, BulkActionMetadata, BulkBookingResult, BulkCalculateAllowedActionsRequest, BulkCalculateAllowedActionsResponse, BulkCalculateAllowedActionsResult, BulkConfirmOrDeclineBookingRequest, BulkCreateBookingRequest, BulkGetMultiServiceBookingAllowedActionsRequest, BulkRescheduleBookingRequest, BulkRescheduleBookingRequestBooking, BulkRescheduleBookingResponse, BulkUpdateBookedScheduleRequest, BulkUpdateBookedScheduleResponse, BulkUpdateBookingRequest, BulkUpdateBookingResponse, CancelBookingFlowControlSettings, CancelBookingRequest, CancelBookingRequestFlowControlSettings, CancelMultiServiceBookingRequest, Clash, CommonIdentificationData, CommonIdentificationDataIdOneOf, ConfirmBookingFlowControlSettings, ConfirmBookingRequest, ConfirmMultiServiceBookingRequest, ConfirmOrDeclineBookingRequest, ConfirmRequest, ConfirmResponse, ConsistentQueryBookingsRequest, ConsistentQueryBookingsResponse, ContactDetails, CountBookingsRequest, CountBookingsResponse, CreateBookingFlowControlSettings, CreateBookingRequest, CreateBookingRequestFlowControlSettings, CreateMultiServiceBookingRequest, CursorPaging, Cursors, CustomFormField, DeclineBookingFlowControlSettings, DeclineBookingRequest, DeclineMultiServiceBookingRequest, DomainEvent, DomainEventBodyOneOf, Duration, EntityCreatedEvent, EntityDeletedEvent, EntityUpdatedEvent, EventMetadata, ExtendedFields, FlowControlSettings, GetMultiServiceBookingAvailabilityRequest, GetMultiServiceBookingAvailabilityResponseBookingInfo, GetMultiServiceBookingRequest, GetMultiServiceBookingResponse, GetScheduleAvailabilityRequest, GetScheduleAvailabilityResponse, GetSlotAvailabilityRequest, GetSlotAvailabilityResponse, IdentificationData, IdentificationDataIdOneOf, IdentificationDataIdentityType, IdentityType, ItemMetadata, LegacyCreateBookingRequest, LegacyCreateBookingResponse, Location, LocationLocationType, LocationType, MarkBookingAsPendingFlowControlSettings, MarkBookingAsPendingRequest, MarkBookingAsPendingResponse, MarkMultiServiceBookingAsPendingRequest, MaskedBooking, MessageEnvelope, MigrationCheckIfClashesWithBlockedTimeRequest, MigrationCheckIfClashesWithBlockedTimeResponse, MsidAndBookingId, MultiServiceBookingInfo, MultiServiceBookingMetadata, MultiServiceBookingType, NumberOfParticipantsUpdated, NumberOfParticipantsUpdatedPreviousParticipantsInfoOneOf, Paging, PagingMetadataV2, ParticipantChoices, ParticipantNotification, PaymentStatus, Platform, QueryBookingsRequest, QueryBookingsResponse, QueryV2, QueryV2PagingMethodOneOf, RemoveBookingsFromMultiServiceBookingRequest, RescheduleBookingFlowControlSettings, RescheduleBookingInfoParticipantsInfoOneOf, RescheduleBookingOptionsParticipantsInfoOneOf, RescheduleBookingRequest, RescheduleBookingRequestFlowControlSettings, RescheduleBookingRequestParticipantsInfoOneOf, RescheduleMultiServiceBookingRequest, RestoreInfo, ScheduleAvailability, SelectedPaymentOption, ServiceChoice, ServiceChoiceChoiceOneOf, ServiceChoices, SetBookingFormAndSubmissionIdRequest, SetBookingFormAndSubmissionIdRequestCreatedByOneOf, SetBookingFormAndSubmissionIdResponse, SetBookingSessionIdRequest, SetBookingSessionIdResponse, SetBookingSubmissionIdRequest, Slot, SlotAvailability, SlotBookings, SlotLocation, SlotResource, SlotSlotResource, SortOrder, Sorting, StreetAddress, Subdivision, UpdateBookingRequest, UpdateBookingResponse, UpdateExtendedFieldsRequest, UpdateNumberOfParticipantsOptionsParticipantsInfoOneOf, UpdateNumberOfParticipantsRequest, UpdateNumberOfParticipantsRequestParticipantsInfoOneOf, V2CancelBookingRequest, V2CancelBookingResponse, V2ConfirmBookingRequest, V2ConfirmBookingResponse, V2CreateBookingRequest, V2CreateBookingRequestBookableItemOneOf, V2CreateBookingRequestParticipantsInfoOneOf, V2CreateBookingResponse, V2DeclineBookingRequest, V2DeclineBookingResponse, V2RescheduleBookingRequest, V2RescheduleBookingRequestParticipantsInfoOneOf, V2RescheduleBookingResponse, V2UpdateNumberOfParticipantsRequest, V2UpdateNumberOfParticipantsRequestParticipantsInfoOneOf, V2UpdateNumberOfParticipantsResponse, ValueType, WaitingList, WebhookIdentityType, WebhooksIdentificationData, WebhooksIdentificationDataIdOneOf } from './index.typings.js';
4
4
 
5
+ type BookingNonNullablePaths = `totalParticipants` | `participantsChoices.serviceChoices` | `bookedEntity.slot.serviceId` | `bookedEntity.slot.scheduleId` | `bookedEntity.slot.resource._id` | `bookedEntity.slot.location.locationType` | `bookedEntity.schedule.scheduleId` | `bookedEntity.tags` | `contactDetails.fullAddress.streetAddress.number` | `contactDetails.fullAddress.streetAddress.name` | `contactDetails.fullAddress.streetAddress.apt` | `contactDetails.fullAddress.subdivisions` | `contactDetails.fullAddress.subdivisions.${number}.code` | `contactDetails.fullAddress.subdivisions.${number}.name` | `additionalFields` | `additionalFields.${number}._id` | `additionalFields.${number}.valueType` | `status` | `paymentStatus` | `selectedPaymentOption` | `createdBy.anonymousVisitorId` | `createdBy.memberId` | `createdBy.wixUserId` | `createdBy.appId`;
5
6
  declare function confirmOrDeclineBooking$1(httpClient: HttpClient): ConfirmOrDeclineBookingSignature;
6
7
  interface ConfirmOrDeclineBookingSignature {
7
8
  /**
@@ -47,8 +48,10 @@ interface ConfirmOrDeclineBookingSignature {
47
48
  * immediately.
48
49
  * @param - ID of the booking to confirm or decline.
49
50
  */
50
- (bookingId: string, options?: ConfirmOrDeclineBookingOptions | undefined): Promise<ConfirmOrDeclineBookingResponse & {
51
- __applicationErrorsType?: ConfirmOrDeclineBookingApplicationErrors | undefined;
51
+ (bookingId: string, options?: ConfirmOrDeclineBookingOptions): Promise<NonNullablePaths<ConfirmOrDeclineBookingResponse, {
52
+ [P in BookingNonNullablePaths]: `booking.${P}`;
53
+ }[BookingNonNullablePaths]> & {
54
+ __applicationErrorsType?: ConfirmOrDeclineBookingApplicationErrors;
52
55
  }>;
53
56
  }
54
57
  declare function bulkConfirmOrDeclineBooking$1(httpClient: HttpClient): BulkConfirmOrDeclineBookingSignature;
@@ -62,8 +65,10 @@ interface BulkConfirmOrDeclineBookingSignature {
62
65
  * for details about when a booking is confirmed or declined.
63
66
  * @param - Bookings to confirm or decline.
64
67
  */
65
- (details: BulkConfirmOrDeclineBookingRequestBookingDetails[], options?: BulkConfirmOrDeclineBookingOptions | undefined): Promise<BulkConfirmOrDeclineBookingResponse & {
66
- __applicationErrorsType?: BulkConfirmOrDeclineBookingApplicationErrors | undefined;
68
+ (details: NonNullablePaths<BulkConfirmOrDeclineBookingRequestBookingDetails, `bookingId`>[], options?: BulkConfirmOrDeclineBookingOptions): Promise<NonNullablePaths<BulkConfirmOrDeclineBookingResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | {
69
+ [P in BookingNonNullablePaths]: `results.${number}.item.${P}`;
70
+ }[BookingNonNullablePaths] | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`> & {
71
+ __applicationErrorsType?: BulkConfirmOrDeclineBookingApplicationErrors;
67
72
  }>;
68
73
  }
69
74
  declare function createBooking$1(httpClient: HttpClient): CreateBookingSignature;
@@ -76,16 +81,16 @@ interface CreateBookingSignature {
76
81
  *
77
82
  * For appointment-based services, specify the relevant `slot` in
78
83
  * `bookedEntity.slot`. We recommend specifying the complete
79
- * `availabilityEntries.slot` returned in *Query Availability*
84
+ * `availabilityEntries.slot` returned in Query Availability
80
85
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability))
81
86
  * in your call's request to avoid failed calls due to unavailability.
82
87
  *
83
88
  * ## Class session booking
84
89
  *
85
- * For class services, specify the relevant *event ID*
90
+ * For class services, specify the relevant event ID
86
91
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/calendar/events/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction))
87
92
  * as `bookedEntity.slot.eventId`.
88
- * We recommend retrieving the event ID from *Query Availability's*
93
+ * We recommend retrieving the event ID from Query Availability's
89
94
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability))
90
95
  * `availabilityEntries.slot.eventId` to avoid failed calls due to unavailability.
91
96
  * Specifying an event ID leads to automatic calculations of `slot.startDate`, `slot.endDate`,
@@ -140,12 +145,12 @@ interface CreateBookingSignature {
140
145
  * _eCommerce checkout_
141
146
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/orders/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)),
142
147
  * Wix Bookings automatically syncs the booking's payment status from
143
- * the corresponding *eCommerce order*
148
+ * the corresponding eCommerce order
144
149
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)).
145
150
  *
146
151
  * If a booking doesn't have a corresponding eCommerce order, for example, since
147
152
  * the customer didn't use the eCommerce checkout, you can update the booking's
148
- * payment status with *Confirm Or Decline Booking*
153
+ * payment status with Confirm Or Decline Booking
149
154
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)).
150
155
  *
151
156
  * ## Booking form data
@@ -185,8 +190,10 @@ interface CreateBookingSignature {
185
190
  * them intentionally and securely.
186
191
  * @param - The booking to create.
187
192
  */
188
- (booking: Booking, options?: CreateBookingOptions | undefined): Promise<CreateBookingResponse & {
189
- __applicationErrorsType?: CreateBookingApplicationErrors | undefined;
193
+ (booking: NonNullablePaths<Booking, `additionalFields.${number}._id` | `bookedEntity`>, options?: CreateBookingOptions): Promise<NonNullablePaths<CreateBookingResponse, {
194
+ [P in BookingNonNullablePaths]: `booking.${P}`;
195
+ }[BookingNonNullablePaths]> & {
196
+ __applicationErrorsType?: CreateBookingApplicationErrors;
190
197
  }>;
191
198
  }
192
199
  declare function bulkCreateBooking$1(httpClient: HttpClient): BulkCreateBookingSignature;
@@ -195,7 +202,7 @@ interface BulkCreateBookingSignature {
195
202
  * Creates up to 8 bookings.
196
203
  *
197
204
  *
198
- * See *Create Booking*
205
+ * See Create Booking
199
206
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/create-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-booking))
200
207
  * for more information.
201
208
  *
@@ -209,8 +216,10 @@ interface BulkCreateBookingSignature {
209
216
  *
210
217
  * Max: 8 bookings
211
218
  */
212
- (createBookingsInfo: CreateBookingInfo[], options?: BulkCreateBookingOptions | undefined): Promise<BulkCreateBookingResponse & {
213
- __applicationErrorsType?: BulkCreateBookingApplicationErrors | undefined;
219
+ (createBookingsInfo: NonNullablePaths<CreateBookingInfo, `booking` | `booking.additionalFields.${number}._id` | `booking.bookedEntity`>[], options?: BulkCreateBookingOptions): Promise<NonNullablePaths<BulkCreateBookingResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | {
220
+ [P in BookingNonNullablePaths]: `results.${number}.item.${P}`;
221
+ }[BookingNonNullablePaths] | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`> & {
222
+ __applicationErrorsType?: BulkCreateBookingApplicationErrors;
214
223
  }>;
215
224
  }
216
225
  declare function rescheduleBooking$1(httpClient: HttpClient): RescheduleBookingSignature;
@@ -227,7 +236,7 @@ interface RescheduleBookingSignature {
227
236
  * ## Appointment sessions
228
237
  *
229
238
  * For appointments, the old session is removed from the business calendar
230
- * while a new session is added. We recommend calling *Query Availability*
239
+ * while a new session is added. We recommend calling Query Availability
231
240
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability))
232
241
  * first and specifying the entire retrieved `slot`.
233
242
  *
@@ -235,7 +244,7 @@ interface RescheduleBookingSignature {
235
244
  *
236
245
  * For classes, the new session must be an existing session belonging to the
237
246
  * same class. We recommend retrieving `availabilityEntries.slot.eventId`
238
- * from *Query Availability*
247
+ * from Query Availability
239
248
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/availability-calendar/query-availability) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/availability-calendar/query-availability))
240
249
  * to avoid failed Reschedule Booking calls due to unavailability. Specify
241
250
  * only `slot.eventId` instead of the entire `slot` object.
@@ -278,31 +287,31 @@ interface RescheduleBookingSignature {
278
287
  * @param - New slot of the booking.
279
288
  * @param - An object representing the available options for rescheduling a booking.
280
289
  */
281
- (bookingId: string, slot: V2Slot, options?: RescheduleBookingOptions | undefined): Promise<RescheduleBookingResponse & {
282
- __applicationErrorsType?: RescheduleBookingApplicationErrors | undefined;
290
+ (bookingId: string, slot: V2Slot, options?: NonNullablePaths<RescheduleBookingOptions, `revision`>): Promise<NonNullablePaths<RescheduleBookingResponse, {
291
+ [P in BookingNonNullablePaths]: `booking.${P}`;
292
+ }[BookingNonNullablePaths]> & {
293
+ __applicationErrorsType?: RescheduleBookingApplicationErrors;
283
294
  }>;
284
295
  }
285
296
  declare function confirmBooking$1(httpClient: HttpClient): ConfirmBookingSignature;
286
297
  interface ConfirmBookingSignature {
287
298
  /**
288
- * Updates the booking status to `CONFIRMED` and updates the relevant session's
289
- * `participants.approvalStatus` to `APPROVED` without checking whether the relevant
290
- * slot or schedule is still available.
299
+ * Updates the booking status to `CONFIRMED` without checking whether the relevant slot or schedule is still available.
300
+ *
291
301
  *
292
302
  * ## eCommerce checkout restriction
293
303
  *
294
304
  * Call this method only when using a custom checkout page. Don't
295
- * call it when using a *Wix eCommerce checkout*
305
+ * call it when using a Wix eCommerce checkout
296
306
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/orders/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)).
297
307
  * In such cases, Wix automatically updates the booking status based on
298
- * the `paymentStatus` of the corresponding *Wix eCommerce order*
308
+ * the `paymentStatus` of the corresponding Wix eCommerce order
299
309
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)).
300
310
  *
301
311
  * ## When to call Confirm Or Decline Booking instead
302
312
  *
303
- * Confirm Booking doesn't check whether a slot or schedule is still available. For
304
- * these checks you can call *Confirm or Decline Booking*
305
- * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)).
313
+ * Confirm Booking doesn't check whether a slot or schedule is still available.
314
+ * For these checks, call Confirm or Decline Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)) instead.
306
315
  *
307
316
  * ## Original status validation
308
317
  *
@@ -344,8 +353,10 @@ interface ConfirmBookingSignature {
344
353
  * updating the booking.
345
354
  * @param - An object representing the available options for canceling a booking.
346
355
  */
347
- (bookingId: string, revision: string, options?: ConfirmBookingOptions | undefined): Promise<ConfirmBookingResponse & {
348
- __applicationErrorsType?: ConfirmBookingApplicationErrors | undefined;
356
+ (bookingId: string, revision: string, options?: ConfirmBookingOptions): Promise<NonNullablePaths<ConfirmBookingResponse, {
357
+ [P in BookingNonNullablePaths]: `booking.${P}`;
358
+ }[BookingNonNullablePaths]> & {
359
+ __applicationErrorsType?: ConfirmBookingApplicationErrors;
349
360
  }>;
350
361
  }
351
362
  declare function setBookingSubmissionId$1(httpClient: HttpClient): SetBookingSubmissionIdSignature;
@@ -355,8 +366,10 @@ interface SetBookingSubmissionIdSignature {
355
366
  * @param - ID of the booking to set `submissionId` for.
356
367
  * @param - ID of the form submission to set on the booking.
357
368
  */
358
- (bookingId: string, submissionId: string): Promise<SetBookingSubmissionIdResponse & {
359
- __applicationErrorsType?: SetBookingSubmissionIdApplicationErrors | undefined;
369
+ (bookingId: string, submissionId: string): Promise<NonNullablePaths<SetBookingSubmissionIdResponse, {
370
+ [P in BookingNonNullablePaths]: `booking.${P}`;
371
+ }[BookingNonNullablePaths]> & {
372
+ __applicationErrorsType?: SetBookingSubmissionIdApplicationErrors;
360
373
  }>;
361
374
  }
362
375
  declare function updateExtendedFields$1(httpClient: HttpClient): UpdateExtendedFieldsSignature;
@@ -373,8 +386,8 @@ interface UpdateExtendedFieldsSignature {
373
386
  * @param - [Namespace](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/schema-plugins/about-reading-and-writing-schema-plugin-fields#namespaces) of the app for which to update extended fields.
374
387
  * @param - Options for updating the booking's extended fields.
375
388
  */
376
- (_id: string, namespace: string, options: UpdateExtendedFieldsOptions): Promise<UpdateExtendedFieldsResponse & {
377
- __applicationErrorsType?: UpdateExtendedFieldsApplicationErrors | undefined;
389
+ (_id: string, namespace: string, options: NonNullablePaths<UpdateExtendedFieldsOptions, `namespaceData`>): Promise<NonNullablePaths<UpdateExtendedFieldsResponse, `namespace`> & {
390
+ __applicationErrorsType?: UpdateExtendedFieldsApplicationErrors;
378
391
  }>;
379
392
  }
380
393
  declare function declineBooking$1(httpClient: HttpClient): DeclineBookingSignature;
@@ -388,16 +401,16 @@ interface DeclineBookingSignature {
388
401
  * ## eCommerce checkout restriction
389
402
  *
390
403
  * Call this method only when using a custom checkout page. Don't
391
- * call it when using a *Wix eCommerce checkout*
404
+ * call it when using a Wix eCommerce checkout
392
405
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/orders/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)).
393
406
  * In such cases, Wix automatically updates the booking status based on
394
- * the `paymentStatus` of the corresponding *Wix eCommerce order*
407
+ * the `paymentStatus` of the corresponding Wix eCommerce order
395
408
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecom/checkout/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)).
396
409
  *
397
410
  * ## When to call Confirm Or Decline Booking instead
398
411
  *
399
412
  * The method doesn't check whether a slot or schedule is still available. For
400
- * these checks you can call *Confirm or Decline Booking*
413
+ * these checks you can call Confirm or Decline Booking
401
414
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking)).
402
415
  *
403
416
  * ## Original status validation
@@ -422,8 +435,10 @@ interface DeclineBookingSignature {
422
435
  * declining the booking.
423
436
  * @param - An object representing the available options for declining a booking.
424
437
  */
425
- (bookingId: string, revision: string, options?: DeclineBookingOptions | undefined): Promise<DeclineBookingResponse & {
426
- __applicationErrorsType?: DeclineBookingApplicationErrors | undefined;
438
+ (bookingId: string, revision: string, options?: DeclineBookingOptions): Promise<NonNullablePaths<DeclineBookingResponse, {
439
+ [P in BookingNonNullablePaths]: `booking.${P}`;
440
+ }[BookingNonNullablePaths]> & {
441
+ __applicationErrorsType?: DeclineBookingApplicationErrors;
427
442
  }>;
428
443
  }
429
444
  declare function cancelBooking$1(httpClient: HttpClient): CancelBookingSignature;
@@ -477,8 +492,10 @@ interface CancelBookingSignature {
477
492
  * @param - ID of the booking to cancel.
478
493
  * @param - An object representing the available options for canceling a booking.
479
494
  */
480
- (bookingId: string, options?: CancelBookingOptions | undefined): Promise<CancelBookingResponse & {
481
- __applicationErrorsType?: CancelBookingApplicationErrors | undefined;
495
+ (bookingId: string, options?: NonNullablePaths<CancelBookingOptions, `revision`>): Promise<NonNullablePaths<CancelBookingResponse, {
496
+ [P in BookingNonNullablePaths]: `booking.${P}`;
497
+ }[BookingNonNullablePaths]> & {
498
+ __applicationErrorsType?: CancelBookingApplicationErrors;
482
499
  }>;
483
500
  }
484
501
  declare function updateNumberOfParticipants$1(httpClient: HttpClient): UpdateNumberOfParticipantsSignature;
@@ -496,174 +513,314 @@ interface UpdateNumberOfParticipantsSignature {
496
513
  *
497
514
  * You must specify either `participantsChoices` or `totalParticipants`.
498
515
  * The call fails if the specified `participantsChoices` aren't among the
499
- * supported *service options and variants*
516
+ * supported service options and variants
500
517
  * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/service-options-and-variants/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/service-options-and-variants/introduction)).
501
518
  * @param - ID of the booking to update the number of participants for.
502
519
  */
503
- (bookingId: string, options?: UpdateNumberOfParticipantsOptions | undefined): Promise<UpdateNumberOfParticipantsResponse & {
504
- __applicationErrorsType?: UpdateNumberOfParticipantsApplicationErrors | undefined;
520
+ (bookingId: string, options?: NonNullablePaths<UpdateNumberOfParticipantsOptions, `revision`>): Promise<NonNullablePaths<UpdateNumberOfParticipantsResponse, {
521
+ [P in BookingNonNullablePaths]: `booking.${P}`;
522
+ }[BookingNonNullablePaths]> & {
523
+ __applicationErrorsType?: UpdateNumberOfParticipantsApplicationErrors;
505
524
  }>;
506
525
  }
507
526
  declare function createMultiServiceBooking$1(httpClient: HttpClient): CreateMultiServiceBookingSignature;
508
527
  interface CreateMultiServiceBookingSignature {
509
528
  /**
510
- * Creates a multi-service booking.
529
+ * Creates a multi-service booking and all included single-service bookings simultaneously.
530
+ *
531
+ *
532
+ * ## When to call this method
533
+ *
534
+ * Create sequential appointments where customers book related services. For adding existing single-service bookings to an existing multi-service booking, call Add Bookings to Multi Service Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/add-bookings-to-multi-service-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/add-bookings-to-multi-service-booking)) instead.
535
+ *
536
+ * ## Requirements and behavior
537
+ *
538
+ * *Package constraints**: Multi-service bookings support 2-8 appointment-based single-service bookings only (course and class bookings aren't supported). All single-service bookings must be at the same location with sequential scheduling and no gaps between appointments.
539
+ *
540
+ * *Timing specification**: You must provide complete `slot` details (`scheduleId`, `startDate`, `endDate`) for each single-service booking. Wix Bookings validates sequential timing but doesn't auto-calculate it.
541
+ *
542
+ * *Package pricing**: The total price equals the sum of individual services. Wix Bookings automatically syncs the payment status from the corresponding Wix eCommerce order ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecommerce/orders/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/orders/introduction)) if the customer paid via an eCommerce checkout ([SDK](https://dev.wix.com/docs/sdk/backend-modules/ecommerce/checkout/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/e-commerce/checkout/introduction)).
511
543
  *
544
+ * *Package notifications**: Customers receive 1 unified notification for the entire multi-service booking. Wix Bookings doesn't send notifications for the package's individual single-service bookings.
512
545
  *
513
- * See Create Booking for more information.
514
- * @param - Single-service bookings to combine in a multi-service booking.
546
+ * ## Related methods
547
+ *
548
+ * Verify availability first with List Multi Service Availability Time Slots ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-reader-v2/list-multi-service-availability-time-slots) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/list-multi-service-availability-time-slots)).
549
+ *
550
+ * See Create Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/create-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-booking)) for more details about constraints and effects of creating single-service bookings.
551
+ * @param - Between 2 to 8 new single-service booking specifications to create and combine in a multi-service booking.
552
+ *
553
+ * Each single-service booking specification must include `slot` details (`scheduleId`, `startDate`, and `endDate`).
554
+ * Specify contact details, number of participants, and any additional fields as needed.
555
+ *
556
+ * For sequential bookings, ensure the timing allows services to be scheduled back-to-back.
515
557
  */
516
- (bookings: Booking[], options?: CreateMultiServiceBookingOptions | undefined): Promise<CreateMultiServiceBookingResponse & {
517
- __applicationErrorsType?: CreateMultiServiceBookingApplicationErrors | undefined;
558
+ (bookings: NonNullablePaths<Booking, `additionalFields.${number}._id` | `bookedEntity` | `bookedEntity.slot` | `bookedEntity.slot.endDate` | `bookedEntity.slot.location.locationType` | `bookedEntity.slot.scheduleId` | `bookedEntity.slot.startDate`>[], options?: CreateMultiServiceBookingOptions): Promise<NonNullablePaths<CreateMultiServiceBookingResponse, `multiServiceBooking.bookings` | {
559
+ [P in BookingNonNullablePaths]: `multiServiceBooking.bookings.${number}.booking.${P}`;
560
+ }[BookingNonNullablePaths]> & {
561
+ __applicationErrorsType?: CreateMultiServiceBookingApplicationErrors;
518
562
  }>;
519
563
  }
520
564
  declare function rescheduleMultiServiceBooking$1(httpClient: HttpClient): RescheduleMultiServiceBookingSignature;
521
565
  interface RescheduleMultiServiceBookingSignature {
522
566
  /**
523
- * Reschedules a multi-service booking.
567
+ * Reschedules a multi-service booking by changing the timing for all or specific single-service bookings in the package.
524
568
  *
525
569
  *
526
- * The call fails if at least 1 individual booking can't be rescheduled due
527
- * the service being unavailable or a rescheduling policy violation.
570
+ * This method reschedules single-service bookings within the multi-service booking while maintaining sequential order. You must specify exact new timing for each service to ensure they remain back-to-back with no gaps or overlaps.
528
571
  *
572
+ * This method fails if it can't reschedule at least 1 single-service booking. You must provide the current revision number for each booking you're rescheduling to prevent conflicting changes.
529
573
  *
530
- * See Reschedule Booking for more information.
531
- * @param - ID of the multi service booking to reschedule.
574
+ * See Reschedule Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/reschedule-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/reschedule-booking)) for single-service booking rescheduling details.
575
+ * @param - ID of the multi-service booking to reschedule.
532
576
  * @param - Information about the single-service bookings to reschedule.
533
577
  */
534
- (multiServiceBookingId: string, rescheduleBookingsInfo: RescheduleBookingInfo[], options?: RescheduleMultiServiceBookingOptions | undefined): Promise<RescheduleMultiServiceBookingResponse & {
535
- __applicationErrorsType?: RescheduleMultiServiceBookingApplicationErrors | undefined;
578
+ (multiServiceBookingId: string, rescheduleBookingsInfo: NonNullablePaths<RescheduleBookingInfo, `bookingId` | `revision` | `slot`>[], options?: RescheduleMultiServiceBookingOptions): Promise<NonNullablePaths<RescheduleMultiServiceBookingResponse, `multiServiceBooking.bookings` | {
579
+ [P in BookingNonNullablePaths]: `multiServiceBooking.bookings.${number}.booking.${P}`;
580
+ }[BookingNonNullablePaths]> & {
581
+ __applicationErrorsType?: RescheduleMultiServiceBookingApplicationErrors;
536
582
  }>;
537
583
  }
538
584
  declare function getMultiServiceBookingAvailability$1(httpClient: HttpClient): GetMultiServiceBookingAvailabilitySignature;
539
585
  interface GetMultiServiceBookingAvailabilitySignature {
540
586
  /**
541
- * Retrieves a multi-service booking's availability.
587
+ * Checks if the business can still accommodate an existing multi-service booking and returns overall bookability status, capacity details, and policy violations.
588
+ *
589
+ *
590
+ * Wix Bookings considers:
591
+ * - The relevant services' booking policies ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/booking-policies/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/introduction)).
592
+ * - The availability of all required resources ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/resources/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/introduction)).
593
+ *
594
+ * ## When to call this method
595
+ *
596
+ * Check if an existing multi-service booking is still valid after business configuration changes. For example, staff changes, policy updates, or capacity modifications.
542
597
  *
598
+ * ## When to call List Multi Service Availability Time Slots instead
543
599
  *
544
- * Use List Multi Service Availability Time Slots to check availability for a
545
- * `SEQUENTIAL_BOOKINGS` multi-service booking.
600
+ * For checking availability before creating new multi-service bookings, call List Multi Service Availability Time Slots
601
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-reader-v2/list-multi-service-availability-time-slots) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/list-multi-service-availability-time-slots)) instead.
546
602
  * @param - ID of the multi-service booking to retrieve.
547
603
  */
548
- (multiServiceBookingId: string): Promise<GetMultiServiceBookingAvailabilityResponse & {
549
- __applicationErrorsType?: GetMultiServiceBookingAvailabilityApplicationErrors | undefined;
604
+ (multiServiceBookingId: string): Promise<NonNullablePaths<GetMultiServiceBookingAvailabilityResponse, `bookable` | `multiServiceBookingInfo`> & {
605
+ __applicationErrorsType?: GetMultiServiceBookingAvailabilityApplicationErrors;
550
606
  }>;
551
607
  }
552
608
  declare function cancelMultiServiceBooking$1(httpClient: HttpClient): CancelMultiServiceBookingSignature;
553
609
  interface CancelMultiServiceBookingSignature {
554
610
  /**
555
- * Cancels a multi-service booking and thus all its individual bookings.
611
+ * Cancels a multi-service booking and all its single-service bookings.
612
+ *
613
+ *
614
+ * Cancels the entire multi-service booking, updating the status of all single-service bookings to `CANCELED`.
615
+ * The call fails if all single-service bookings are already canceled or declined.
616
+ *
617
+ * See Cancel Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/cancel-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/cancel-booking)) for single-service booking cancellation details.
556
618
  * @param - ID of the multi-service booking to cancel.
557
619
  */
558
- (multiServiceBookingId: string, options?: CancelMultiServiceBookingOptions | undefined): Promise<CancelMultiServiceBookingResponse & {
559
- __applicationErrorsType?: CancelMultiServiceBookingApplicationErrors | undefined;
620
+ (multiServiceBookingId: string, options?: CancelMultiServiceBookingOptions): Promise<NonNullablePaths<CancelMultiServiceBookingResponse, `multiServiceBooking.bookings` | {
621
+ [P in BookingNonNullablePaths]: `multiServiceBooking.bookings.${number}.booking.${P}`;
622
+ }[BookingNonNullablePaths]> & {
623
+ __applicationErrorsType?: CancelMultiServiceBookingApplicationErrors;
560
624
  }>;
561
625
  }
562
626
  declare function markMultiServiceBookingAsPending$1(httpClient: HttpClient): MarkMultiServiceBookingAsPendingSignature;
563
627
  interface MarkMultiServiceBookingAsPendingSignature {
564
628
  /**
565
- * Updates the status of a multi-service booking to `PENDING`.
629
+ * Updates the status for all single-service bookings in a multi-service booking to `PENDING`.
630
+ *
631
+ *
632
+ * Call this method for multi-service bookings requiring manual business approval before confirmation.
633
+ *
634
+ * ## Status requirements
635
+ *
636
+ * - **Original status**: All single-service bookings must have `CREATED` status.
637
+ * - **Target status**: All bookings move to `PENDING` together (all-or-nothing operation).
566
638
  *
639
+ * ## Checkout restrictions
567
640
  *
568
- * Also updates the status of each of individual bookings within the multi-service booking to `PENDING`.
641
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
642
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
569
643
  *
570
- * The call fails if the status for at least a single individual booking can't be updated.
644
+ * ## Additional updates
571
645
  *
572
- * See Mark Booking as Pending for more information.
646
+ * - **Payment status**: Updates if you specify a new `markAsPendingBookingsInfo.paymentStatus`.
647
+ * - **Customer notifications**: Send messages using `participantNotification`.
648
+ * - **Revision control**: Requires current revision numbers for all single-service bookings.
649
+ *
650
+ * See Mark Booking as Pending ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/mark-booking-as-pending) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/mark-booking-as-pending)) for more details about marking single-service bookings as pending.
573
651
  * @param - ID of the multi-service booking to mark as `PENDING`.
574
652
  */
575
- (multiServiceBookingId: string, options?: MarkMultiServiceBookingAsPendingOptions | undefined): Promise<MarkMultiServiceBookingAsPendingResponse & {
576
- __applicationErrorsType?: MarkMultiServiceBookingAsPendingApplicationErrors | undefined;
653
+ (multiServiceBookingId: string, options?: MarkMultiServiceBookingAsPendingOptions): Promise<NonNullablePaths<MarkMultiServiceBookingAsPendingResponse, `multiServiceBooking.bookings` | {
654
+ [P in BookingNonNullablePaths]: `multiServiceBooking.bookings.${number}.booking.${P}`;
655
+ }[BookingNonNullablePaths]> & {
656
+ __applicationErrorsType?: MarkMultiServiceBookingAsPendingApplicationErrors;
577
657
  }>;
578
658
  }
579
659
  declare function confirmMultiServiceBooking$1(httpClient: HttpClient): ConfirmMultiServiceBookingSignature;
580
660
  interface ConfirmMultiServiceBookingSignature {
581
661
  /**
582
- * Updates the status of a multi-service booking to `CONFIRMED`.
662
+ * Updates the status for all single-service bookings in a multi-service booking to `CONFIRMED`.
663
+ *
664
+ *
665
+ * Call this method for multi-service bookings requiring manual business approval.
666
+ *
667
+ * ## Status requirements
583
668
  *
669
+ * - **Original status**: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.
670
+ * - **Target status**: All bookings move to `CONFIRMED` together (all-or-nothing operation).
584
671
  *
585
- * Also updates the status of each of individual bookings within the multi-service booking to `CONFIRMED`.
672
+ * ## Checkout restrictions
586
673
  *
587
- * The call fails if the status for at least a single individual booking can't be updated.
674
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
675
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
588
676
  *
589
- * See Confirm Booking for more information.
677
+ * ## Additional updates
678
+ *
679
+ * - **Payment status**: Updates if you specify a new `confirmBookingsInfo.paymentStatus`.
680
+ * - **Customer notifications**: Send messages using `participantNotification`.
681
+ * - **Revision control**: Requires current revision numbers for all single-service bookings.
682
+ *
683
+ * See Confirm Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/confirm-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-booking)) for more details about confirming single-service bookings.
590
684
  * @param - ID of the multi-service booking to confirm its related bookings.
591
685
  */
592
- (multiServiceBookingId: string, options?: ConfirmMultiServiceBookingOptions | undefined): Promise<ConfirmMultiServiceBookingResponse & {
593
- __applicationErrorsType?: ConfirmMultiServiceBookingApplicationErrors | undefined;
686
+ (multiServiceBookingId: string, options?: ConfirmMultiServiceBookingOptions): Promise<NonNullablePaths<ConfirmMultiServiceBookingResponse, `multiServiceBooking.bookings` | {
687
+ [P in BookingNonNullablePaths]: `multiServiceBooking.bookings.${number}.booking.${P}`;
688
+ }[BookingNonNullablePaths]> & {
689
+ __applicationErrorsType?: ConfirmMultiServiceBookingApplicationErrors;
594
690
  }>;
595
691
  }
596
692
  declare function declineMultiServiceBooking$1(httpClient: HttpClient): DeclineMultiServiceBookingSignature;
597
693
  interface DeclineMultiServiceBookingSignature {
598
694
  /**
599
- * Updates the status of a multi-service booking to `DECLINED`.
695
+ * Updates the status for all single-service bookings in a multi-service booking to `DECLINED`.
696
+ *
697
+ *
698
+ * Call this method to reject multi-service bookings that can't be accommodated or don't meet business requirements.
600
699
  *
700
+ * ## Status requirements
601
701
  *
602
- * Also updates the status of each of individual bookings within the multi-service booking to `DECLINED`.
702
+ * - **Original status**: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.
703
+ * - **Target status**: All bookings move to `DECLINED` together (all-or-nothing operation).
603
704
  *
604
- * The call fails if the status for at least a single individual booking can't be updated.
705
+ * ## Checkout restrictions
605
706
  *
606
- * See Decline Booking for more information.
607
- * @param - ID of the multi service booking to decline.
707
+ * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,
708
+ * Wix Bookings automatically manages the bookings' statuses based on payment processing.
709
+ *
710
+ * ## Additional updates
711
+ *
712
+ * - **Payment status**: Updates if you specify a new `declineBookingsInfo.paymentStatus`.
713
+ * - **Customer notifications**: Send messages using `participantNotification`.
714
+ * - **Revision control**: Requires current revision numbers for all single-service bookings.
715
+ *
716
+ * Refer to Decline Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/decline-booking)) for more details about declining single-service bookings.
717
+ * @param - ID of the multi-service booking to decline.
608
718
  */
609
- (multiServiceBookingId: string, options?: DeclineMultiServiceBookingOptions | undefined): Promise<DeclineMultiServiceBookingResponse & {
610
- __applicationErrorsType?: DeclineMultiServiceBookingApplicationErrors | undefined;
719
+ (multiServiceBookingId: string, options?: DeclineMultiServiceBookingOptions): Promise<NonNullablePaths<DeclineMultiServiceBookingResponse, `multiServiceBooking.bookings` | {
720
+ [P in BookingNonNullablePaths]: `multiServiceBooking.bookings.${number}.booking.${P}`;
721
+ }[BookingNonNullablePaths]> & {
722
+ __applicationErrorsType?: DeclineMultiServiceBookingApplicationErrors;
611
723
  }>;
612
724
  }
613
725
  declare function bulkGetMultiServiceBookingAllowedActions$1(httpClient: HttpClient): BulkGetMultiServiceBookingAllowedActionsSignature;
614
726
  interface BulkGetMultiServiceBookingAllowedActionsSignature {
615
727
  /**
616
- * Retrieves the allowed actions for a list of multi-service bookings.
728
+ * Retrieves information about which actions the customer can perform for up to 50 multi-service bookings.
729
+ *
730
+ *
731
+ * For each multi-service booking, the response indicates which actions are currently allowed:
732
+ * - `cancel`: Whether the customer can cancel the multi-service booking.
733
+ * - `reschedule`: Whether the customer can adjust the multi-service booking's timing.
734
+ *
735
+ * ## Important considerations
736
+ *
737
+ * *Real-time validation**: Wix Bookings calculates allowed actions based on current multi-service booking status, booking policies ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/booking-policies/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/introduction)), and available resources ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/resources/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/resources/resources-v2/introduction)) at the time of the call.
738
+ *
739
+ * *Permission context**: Depending on the permissions of the calling [identity](https://dev.wix.com/build-apps/develop-your-app/about-identities), you may see different allowed actions for the same multi-service booking. For example, if the identity has permissions to read only part of the multi-service booking, the response indicates which single-service bookings the identity can read.
740
+ *
741
+ * *Status dependencies**: Allowed actions change as bookings progress through their lifecycle (`CREATED` → `PENDING` → `CONFIRMED`/`DECLINED` → `CANCELED`).
742
+ * Bookings can skip `PENDING` and move directly from `CREATED` to `CONFIRMED`/`DECLINED` based on service configuration.
617
743
  * @param - IDs of the multi-service bookings to retrieve allowed actions for.
618
744
  */
619
- (multiServiceBookingIds: string[]): Promise<BulkGetMultiServiceBookingAllowedActionsResponse>;
745
+ (multiServiceBookingIds: string[]): Promise<NonNullablePaths<BulkGetMultiServiceBookingAllowedActionsResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | `results.${number}.item.cancel` | `results.${number}.item.reschedule` | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`>>;
620
746
  }
621
747
  declare function getMultiServiceBooking$1(httpClient: HttpClient): GetMultiServiceBookingSignature;
622
748
  interface GetMultiServiceBookingSignature {
623
749
  /**
624
- * Retrieves all single-service bookings belonging to a multi-service booking.
750
+ * Retrieves a multi-service booking and all its associated single-service bookings.
751
+ *
752
+ *
753
+ * Returns the complete multi-service booking information including its ID, included single-service bookings, and the total number of scheduled single-service bookings.
625
754
  *
755
+ * If you call as an [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) who has permissions to read only part of the multi-service booking, only the permitted single-service bookings are retrieved.
756
+ * The returned total number includes single-service bookings for which you don't have permissions.
626
757
  *
627
- * If you call as an [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities)
628
- * who has permissions to read only part of the bookings,
629
- * only the permitted bookings are retrieved. The returned total number of
630
- * bookings includes also the bookings for which you don't have permissions.
758
+ * See Query Extended Bookings ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-reader-v2/query-extended-bookings) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/query-extended-booking)) for details about retrieving individual single-service bookings and additional metadata.
631
759
  * @param - ID of the multi-service booking.
632
760
  * @returns Retrieved multi-service booking.
633
761
  */
634
- (multiServiceBookingId: string): Promise<MultiServiceBooking>;
762
+ (multiServiceBookingId: string): Promise<NonNullablePaths<MultiServiceBooking, `bookings` | {
763
+ [P in BookingNonNullablePaths]: `bookings.${number}.booking.${P}`;
764
+ }[BookingNonNullablePaths]>>;
635
765
  }
636
766
  declare function addBookingsToMultiServiceBooking$1(httpClient: HttpClient): AddBookingsToMultiServiceBookingSignature;
637
767
  interface AddBookingsToMultiServiceBookingSignature {
638
768
  /**
639
- * Adds a list of single-service bookings to a multi-service booking.
769
+ * Expands an existing multi-service booking by adding existing single-service bookings to the package.
770
+ *
771
+ *
772
+ * ## When to call this method
773
+ *
774
+ * Call this method to add 1 or more existing single-service bookings to an existing multi-service booking.
775
+ * For creating a new multi-service booking with new single-service bookings, call Create Multi Service Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/create-multi-service-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/create-multi-service-booking)) instead.
776
+ *
777
+ * ## Package integration
640
778
  *
779
+ * The timing of the single-service bookings to add must be compatible with the multi-service booking's sequential schedule to ensure no gaps or overlaps between services in the updated package.
641
780
  *
642
- * The call fails, if at least 1 of the specified booking is already part of a
643
- * multi-service booking.
781
+ * ## Requirements and limitations
782
+ *
783
+ * - **Maximum capacity**: The total number of single-service bookings can't exceed 8.
784
+ * - **Booking eligibility**: You can add only independent single-service bookings that aren't part of another multi-service booking.
785
+ * - **Status compatibility**: Added bookings must have compatible status with the target multi-service booking.
786
+ * - **Revision control**: You must provide current revision numbers for all single-service bookings to add.
644
787
  * @param - ID of the multi-service booking.
645
788
  */
646
- (multiServiceBookingId: string, options?: AddBookingsToMultiServiceBookingOptions | undefined): Promise<AddBookingsToMultiServiceBookingResponse & {
647
- __applicationErrorsType?: AddBookingsToMultiServiceBookingApplicationErrors | undefined;
789
+ (multiServiceBookingId: string, options?: NonNullablePaths<AddBookingsToMultiServiceBookingOptions, `bookings` | `bookings.${number}.bookingId` | `bookings.${number}.revision`>): Promise<NonNullablePaths<AddBookingsToMultiServiceBookingResponse, `bookings` | {
790
+ [P in BookingNonNullablePaths]: `bookings.${number}.booking.${P}`;
791
+ }[BookingNonNullablePaths]> & {
792
+ __applicationErrorsType?: AddBookingsToMultiServiceBookingApplicationErrors;
648
793
  }>;
649
794
  }
650
795
  declare function removeBookingsFromMultiServiceBooking$1(httpClient: HttpClient): RemoveBookingsFromMultiServiceBookingSignature;
651
796
  interface RemoveBookingsFromMultiServiceBookingSignature {
652
797
  /**
653
- * Removes single-service bookings from a multi-service booking and returns the
654
- * removed bookings.
798
+ * Removes single-service bookings from a multi-service booking and converts them to independent single-service bookings.
799
+ *
800
+ *
801
+ * ## Removal options
802
+ *
803
+ * *Remove all permitted bookings**: If you specify an empty `bookings` array, all single-service bookings for which the call's [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) has read permissions are removed from the multi-service booking.
804
+ *
805
+ * *Selective removal**: Specify single-service booking IDs and revisions to remove only specific single-service bookings from the package.
806
+ *
807
+ * *Sequential scheduling**: To maintain sequential scheduling, remove only first or last single-service bookings. For middle bookings, first reschedule all relevant single-service bookings to eliminate gaps. To do so, call Reschedule Multi Service Booking ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/bookings-writer-v2/reschedule-multi-service-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/multi-service-bookings/reschedule-multi-service-booking)) before removing the unwanted bookings.
808
+ *
809
+ * ## Removal behavior
655
810
  *
811
+ * *Independent bookings**: Removed single-service bookings become independent bookings.
812
+ * You can manage them using single-service booking methods.
656
813
  *
657
- * If you specify an empty `bookings` array, all single-service bookings for which
658
- * the call's [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities)
659
- * has read permissions are removed from the multi-service booking.
814
+ * *Automatic cleanup**: Multi-service bookings must contain at least 2 services.
815
+ * If removal results in only 1 remaining single-service booking for the multi-service booking, the entire multi-service booking is deleted and the remaining single-service booking becomes a standalone booking.
660
816
  *
661
- * If the call would create a multi-service booking including only 1 single-service
662
- * booking, the multi-service booking is also deleted.
817
+ * *Revision control**: Specify current revision numbers to prevent conflicting modifications during the removal process.
663
818
  * @param - ID of the multi-service booking.
664
819
  */
665
- (multiServiceBookingId: string, options?: RemoveBookingsFromMultiServiceBookingOptions | undefined): Promise<RemoveBookingsFromMultiServiceBookingResponse & {
666
- __applicationErrorsType?: RemoveBookingsFromMultiServiceBookingApplicationErrors | undefined;
820
+ (multiServiceBookingId: string, options?: RemoveBookingsFromMultiServiceBookingOptions): Promise<NonNullablePaths<RemoveBookingsFromMultiServiceBookingResponse, `bookings` | {
821
+ [P in BookingNonNullablePaths]: `bookings.${number}.booking.${P}`;
822
+ }[BookingNonNullablePaths]> & {
823
+ __applicationErrorsType?: RemoveBookingsFromMultiServiceBookingApplicationErrors;
667
824
  }>;
668
825
  }
669
826
  declare const onBookingCanceled$1: EventDefinition<BookingCanceledEnvelope, "wix.bookings.v2.booking_canceled">;