@wix/auto_sdk_bookings_bookings 1.0.45 → 1.0.46

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 +1 @@
1
- {"version":3,"sources":["../../../src/bookings-v2-booking-bookings.http.ts","../../../src/bookings-v2-booking-bookings.meta.ts"],"sourcesContent":["import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKFloatToRESTFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n _: [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/multi_service_bookings',\n destPath: '/v2/bulk/multi_service_bookings',\n },\n {\n srcPath: '/bookings/multiServiceBookings/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/multi_service_bookings',\n destPath: '/v2/bulk/multi_service_bookings',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/bookings/multiServiceBookings/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'bo._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'wixbo.ai': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'wix-bo.com': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n '*.dev.wix-code.com': [\n {\n srcPath: '/_api/bookings-service',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/multiServiceBookings/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nfunction resolveComWixpressBookingsBookingsV2BookingsUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n _: [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/multi_service_bookings',\n destPath: '/v2/bulk/multi_service_bookings',\n },\n {\n srcPath: '/bookings/multiServiceBookings/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/multi_service_bookings',\n destPath: '/v2/bulk/multi_service_bookings',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/bookings/multiServiceBookings/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'bo._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'wixbo.ai': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'wix-bo.com': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n '*.dev.wix-code.com': [\n {\n srcPath: '/_api/bookings-service',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/multiServiceBookings/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nfunction resolveComWixpressBookingsConfirmatorV2ConfirmatorUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'www.wixapis.com': [\n {\n srcPath: '/_api/bookings-confirmator/v2/bookings/confirmation',\n destPath: '/v2/bookings/confirmation',\n },\n {\n srcPath: '/bookings/v2/confirmation',\n destPath: '/v2/confirmation',\n },\n {\n srcPath: '/bookings/v2/bulk/confirmation',\n destPath: '/v2/bulk/confirmation',\n },\n {\n srcPath: '/bookings/v2/bulk/bookings/confirmOrDecline',\n destPath: '/v2/bulk/bookings/confirmOrDecline',\n },\n {\n srcPath: '/_api/bookings-confirmator/v2/bulk/confirmation',\n destPath: '/v2/bulk/confirmation',\n },\n {\n srcPath: '/_api/bookings-confirmator/v2/bulk/bookings/confirmOrDecline',\n destPath: '/v2/bulk/bookings/confirmOrDecline',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_bookings_bookings';\n\n/**\n * Updates the booking `status` to `CONFIRMED`, `PENDING`, or `DECLINED` based\n * on the `paymentStatus` you provide, double booking conflicts, and whether\n * the service requires business approval.\n *\n * ## eCommerce checkout restriction\n *\n * Call this method only when using a custom checkout page. Don't\n * call it when using a *Wix eCommerce checkout*\n * ([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)).\n * In such cases, Wix automatically updates the booking status based on\n * the `paymentStatus` of the corresponding *Wix eCommerce order*\n * ([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)).\n *\n * ## New booking status\n *\n * The booking `status` is set to `DECLINED` if both of the following conditions\n * are met:\n * + You provide `UNDEFINED`, `NOT_PAID`, `REFUNDED`, or `EXEMPT` as payment status.\n * + There is a double booking conflict.\n *\n * If only one or none of these conditions is met, `status` is set to `PENDING`\n * or `CONFIRMED` depending on whether the service requires business approval.\n *\n * ## Double bookings\n *\n * If there is a double booking conflict, but the booking has already been at least\n * partially paid, the method still marks the booking as `PENDING` or `CONFIRMED`.\n * Then, it also sets `doubleBooked` to `true`.\n *\n * ## Admin overwrites\n *\n * There are small but important differences in confirmation behavior if the\n * booking was created with special `flowControlSettings`:\n * + If the booking's `flowControlSettings.skipAvailabilityValidation` was set to\n * `true`, the booking is never declined regardless of double booking conflicts.\n * Instead, it's marked `CONFIRMED` or `PENDING`, depending on whether the\n * service requires business approval.\n * + If the booking's `flowControlSettings.skipBusinessConfirmation` was set to\n * `true`, the booking skips `PENDING` status and is marked `CONFIRMED`\n * immediately.\n */\nexport function confirmOrDeclineBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __confirmOrDeclineBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.confirmator.v2.Confirmator.ConfirmOrDeclineBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsConfirmatorV2ConfirmatorUrl({\n protoPath: '/v2/confirmation/{bookingId}:confirmOrDecline',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __confirmOrDeclineBooking;\n}\n\n/**\n * Confirms or declines up to 300 bookings.\n *\n *\n * See *Confirm Or Decline Booking*\n * ([SDK](https://dev.wix.com/docs/velo/api-reference/wix-bookings-v2/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking))\n * for details about when a booking is confirmed or declined.\n */\nexport function bulkConfirmOrDeclineBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkConfirmOrDeclineBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.confirmator.v2.Confirmator.BulkConfirmOrDeclineBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsConfirmatorV2ConfirmatorUrl({\n protoPath: '/v2/bulk/bookings/confirmOrDecline',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.startDate' },\n { path: 'results.item.endDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'results.item.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'results.item.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkConfirmOrDeclineBooking;\n}\n\n/**\n * Creates a booking.\n *\n *\n * ## Appointment booking\n *\n * For appointment-based services, specify the relevant `slot` in\n * `bookedEntity.slot`. We recommend specifying the complete\n * `availabilityEntries.slot` returned in Query Availability\n * ([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))\n * in your call's request to avoid failed calls due to unavailability.\n *\n * ## Class session booking\n *\n * For class services, specify the relevant event ID\n * ([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))\n * as `bookedEntity.slot.eventId`.\n * We recommend retrieving the event ID from Query Availability's\n * ([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))\n * `availabilityEntries.slot.eventId` to avoid failed calls due to unavailability.\n * Specifying an event ID leads to automatic calculations of `slot.startDate`, `slot.endDate`,\n * `slot.timezone`, `slot.resource`, and `slot.location`. All manually specified\n * values are overridden.\n *\n * ## Course booking\n *\n * For course services, specify the course's schedule ID in `bookedEntity.schedule.scheduleId`.\n * We recommend following [this sample flow](https://dev.wix.com/docs/rest/business-solutions/bookings/end-to-end-booking-flows#book-a-course)\n * to minimize failed calls due to unavailability.\n *\n * ## Related resources\n *\n * Specifying a `resource` triggers an availability check, resulting in a failed\n * call if the resource is unavailable. Omitting a resource allows Wix Bookings\n * to assign a resource belonging to the relevant type randomly when the merchant\n * confirms the booking.\n *\n * ## Participant information\n *\n * You must specify either `participantsChoices` or `totalParticipants`.\n * The call fails if the specified `participantsChoices` aren't among the supported\n * _service options and variants_\n * ([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)).\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer that's send\n * immediately. Ensure `participantNotification.notifyParticipants` is set to `true`\n * to send the message.\n *\n * If you specify `{\"sendSmsReminder\": true}`, the customer receives an SMS 24 hours\n * before the session starts. The phone number is taken from `contactDetails.phone`.\n *\n * ## Booking status\n *\n * Bookings default to the `CREATED` status, not affecting the business calendar\n * or resource availability. You can specify a different status when the calling\n * [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities)\n * has `Manage Bookings` permissions.\n *\n * ## Payment options\n *\n * The specified `selectedPaymentOption` indicates how the customer intends to\n * pay, allowing for later changes to a different method supported by the service.\n *\n * ## Payment status\n *\n * A booking is initially created with `{\"paymentStatus\": \"UNDEFINED\"}` regardless\n * of the payment status specified in Create Booking. If a customer uses an\n * _eCommerce checkout_\n * ([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)),\n * Wix Bookings automatically syncs the booking's payment status from\n * the corresponding eCommerce order\n * ([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)).\n *\n * If a booking doesn't have a corresponding eCommerce order, for example, since\n * the customer didn't use the eCommerce checkout, you can update the booking's\n * payment status with Confirm Or Decline Booking\n * ([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)).\n *\n * ## Booking form data\n *\n * When customers sign up for a service, they must fill out the booking form.\n * To create a booking with a completed booking form, specify the relevant data in\n * `formSubmission`. Ensure the values of the corresponding fields in\n * `booking.contactDetails` and `formSubmission` are identical. If these values\n * don't match, Create Booking fails. Therefore, we recommend specifying\n * only `booking.contactDetails.contactId` when providing `formSubmission`.\n *\n * ## Admin overwrites\n *\n * There are small but important differences when you specify special\n * `flowControlSettings`:\n *\n * - `{\"skipAvailabilityValidation\": true}`: The call succeeds\n * regardless of availability. If you don't specify any resource, the call\n * succeeds even if no resource of the relevant type is available.\n * - `{\"skipBusinessConfirmation\": true}`: Automatically confirms `PENDING`\n * bookings that require manual confirmation.\n * - `{\"skipSelectedPaymentOptionValidation\": true}`: Allows customers to pay\n * with payment methods that aren't supported for the service.\n *\n * When using special `flowControlSettings`, ensure you have sufficient\n * permissions. If you encounter failed calls due to insufficient permissions,\n * consider the following options:\n *\n * - **App developers** can use a higher\n * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),\n * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.\n * - **Site developers** can utilize\n * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).\n *\n * Granting additional permissions and using elevation permits method calls that\n * would typically fail due to authorization checks. Therefore, you should use\n * them intentionally and securely.\n */\nexport function createBooking(payload: object): RequestOptionsFactory<any> {\n function __createBooking({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.CreateBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __createBooking;\n}\n\n/**\n * Creates up to 8 bookings.\n *\n *\n * See Create Booking\n * ([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))\n * for more information.\n *\n * If any of the specified bookings is missing a required field the entire call\n * fails.\n *\n * If you specify 1 or more unavailable bookings, the call succeeds\n * while the unavailable bookings aren't created. Instead, they're counted as\n * failures in the returned `bulkActionMetadata`.\n */\nexport function bulkCreateBooking(payload: object): RequestOptionsFactory<any> {\n function __bulkCreateBooking({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'createBookingsInfo.booking.createdDate' },\n { path: 'createBookingsInfo.booking.startDate' },\n { path: 'createBookingsInfo.booking.endDate' },\n { path: 'createBookingsInfo.booking.updatedDate' },\n { path: 'createBookingsInfo.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [\n {\n path: 'createBookingsInfo.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'createBookingsInfo.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.BulkCreateBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bulk/bookings/create',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.startDate' },\n { path: 'results.item.endDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'results.item.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'results.item.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkCreateBooking;\n}\n\n/**\n * Reschedules an appointment booking to a different slot or a class booking to\n * a different session.\n *\n *\n * ## Course booking limitation\n *\n * You can't reschedule course bookings.\n *\n * ## Appointment sessions\n *\n * For appointments, the old session is removed from the business calendar\n * while a new session is added. We recommend calling Query Availability\n * ([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))\n * first and specifying the entire retrieved `slot`.\n *\n * ## Class sessions\n *\n * For classes, the new session must be an existing session belonging to the\n * same class. We recommend retrieving `availabilityEntries.slot.eventId`\n * from Query Availability\n * ([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))\n * to avoid failed Reschedule Booking calls due to unavailability. Specify\n * only `slot.eventId` instead of the entire `slot` object.\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer. To send\n * the message, you must also specify `participantNotification.notifyParticipants`\n * as `true`.\n *\n * ## Admin overwrites\n *\n * There are small but important differences when you specify special\n * `flowControlSettings`:\n *\n * - `{\"ignoreReschedulePolicy\": true}`: The call succeeds even if the\n * service's `reschedulePolicy` doesn't allow it.\n * - `{\"skipAvailabilityValidation\": true}`: The call succeeds even if\n * the specified session, slot, or resource isn't available. If you don't\n * specify any resource, the call succeeds even if no resource of the relevant\n * type is available.\n * - `{\"skipBusinessConfirmation\": true}`: Any `PENDING` booking is\n * automatically confirmed even if the services requires the merchants's\n * manual confirmation.\n *\n * When using special `flowControlSettings`, ensure you have sufficient\n * permissions. If you encounter failed calls due to insufficient permissions,\n * consider the following options:\n *\n * - **App developers** can use a higher\n * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),\n * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.\n * - **Site developers** can utilize\n * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).\n *\n * Granting additional permissions and using elevation permits method calls that\n * would typically fail due to authorization checks. Therefore, you should use\n * them intentionally and securely.\n */\nexport function rescheduleBooking(payload: object): RequestOptionsFactory<any> {\n function __rescheduleBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.RescheduleBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/reschedule',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __rescheduleBooking;\n}\n\n/**\n * Updates the booking status to `CONFIRMED` without checking whether the relevant slot or schedule is still available.\n *\n *\n * ## eCommerce checkout restriction\n *\n * Call this method only when using a custom checkout page. Don't\n * call it when using a Wix eCommerce checkout\n * ([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)).\n * In such cases, Wix automatically updates the booking status based on\n * the `paymentStatus` of the corresponding Wix eCommerce order\n * ([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)).\n *\n * ## When to call Confirm Or Decline Booking instead\n *\n * Confirm Booking doesn't check whether a slot or schedule is still available.\n * 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.\n *\n * ## Original status validation\n *\n * You can only confirm bookings with a status of `PENDING`, `CREATED`, or\n * `WAITING_LIST`.\n *\n * ## Double bookings\n *\n * Confirm Booking doesn't check whether a slot or schedule is still available.\n * You can specify\n *\n * ```json\n * {\n * \"flowControlSettings\": {\n * \"checkAvailabilityValidation\": true\n * },\n * \"doubleBooked\": true\n * }\n * ```\n * to forcefully set the booking's `doubleBooked` flag to `true`, regardless of\n * a potential double booking conflict. You must call with `Manage Bookings`\n * permissions to do so. For the default flow control settings\n * `{\"checkAvailabilityValidation\": false}`, the specified `doubleBooked` value\n * is ignored.\n *\n * ## Payment status\n *\n * Also updates the booking's `paymentStatus`, if you specify a new payment\n * status.\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer. To send\n * the message, you must also specify `participantNotification.notifyParticipants`\n * as `true`.\n */\nexport function bookingsConfirmBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __bookingsConfirmBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.ConfirmBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/confirm',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bookingsConfirmBooking;\n}\n\n/** Setting `submission_id` for a booking after the form submission is created. */\nexport function setBookingSubmissionId(\n payload: object\n): RequestOptionsFactory<any> {\n function __setBookingSubmissionId({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.Bookings.SetBookingSubmissionId',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/set-booking-submission-id',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __setBookingSubmissionId;\n}\n\n/**\n * Updates the extended fields for a booking.\n *\n *\n * If you specify an extended field `namespace` that doesn't exist yet, it's\n * created.\n *\n * Learn more about [extended fields](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/about-backend-extensions#schema-plugin-extensions).\n */\nexport function updateExtendedFields(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateExtendedFields({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.Bookings.UpdateExtendedFields',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{id}/update_extended_fields',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateExtendedFields;\n}\n\n/**\n * Updates the booking status to `DECLINED` and updates the relevant session's\n * `participants.approvalStatus` to `DECLINED` without checking whether the relevant\n * slot or schedule is still available.\n *\n *\n * ## eCommerce checkout restriction\n *\n * Call this method only when using a custom checkout page. Don't\n * call it when using a Wix eCommerce checkout\n * ([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)).\n * In such cases, Wix automatically updates the booking status based on\n * the `paymentStatus` of the corresponding Wix eCommerce order\n * ([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)).\n *\n * ## When to call Confirm Or Decline Booking instead\n *\n * The method doesn't check whether a slot or schedule is still available. For\n * these checks you can call Confirm or Decline Booking\n * ([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)).\n *\n * ## Original status validation\n *\n * You can only decline bookings with a `status` of `PENDING`, `CREATED`, or\n * `WAITING_LIST`.\n *\n * ## Payment status\n *\n * Also updates the booking's `paymentStatus`, if you specify a new payment\n * status.\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer. To send\n * the message, you must also specify `participantNotification.notifyParticipants`\n * as `true`.\n */\nexport function bookingsDeclineBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __bookingsDeclineBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.DeclineBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/decline',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bookingsDeclineBooking;\n}\n\n/**\n * Updates the booking status to `CANCELED`.\n *\n *\n * ## Appointments\n *\n * For appointments, the corresponding event is removed from the Bookings\n * calendar.\n *\n * ## Class and course bookings\n *\n * For class or course bookings, the relevant participants are removed\n * from the class session or the course. However, the class session or course\n * remain on the business calendar.\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer. To send\n * the message, you must also specify `participantNotification.notifyParticipants`\n * as `true`.\n *\n * ## Admin overwrites\n *\n * There are small but important differences when you specify special\n * `flowControlSettings`:\n *\n * - `{\"ignoreCancellationPolicy\": true}`: The call succeeds even if the\n * service's `cancellationPolicy` doesn't allow it.\n * - `{\"withRefund\": true}`: The customer is refunded even if the service's\n * `refundPolicy` doesn't allow it.\n * - `{\"waiveCancellationFee\": true}`: The customer doesn't have to pay\n * the cancellation fee, even if the service's `cancellationPolicy` requires it.\n *\n * When using special `flowControlSettings`, ensure you have sufficient\n * permissions. If you encounter failed calls due to insufficient permissions,\n * consider the following options:\n *\n * - **App developers** can use a higher\n * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),\n * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.\n * - **Site developers** can utilize\n * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).\n *\n * Granting additional permissions and using elevation permits method calls that\n * would typically fail due to authorization checks. Therefore, you should use\n * them intentionally and securely.\n */\nexport function bookingsCancelBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __bookingsCancelBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.CancelBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/cancel',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bookingsCancelBooking;\n}\n\n/**\n * Updates the number of participants for a class or course booking and changes\n * the `totalNumberOfParticipants` for the relevant sessions.\n *\n *\n * ## Appointment limitation\n *\n * You can't update the number of participants for appointment bookings.\n *\n * ## Participant information\n *\n * You must specify either `participantsChoices` or `totalParticipants`.\n * The call fails if the specified `participantsChoices` aren't among the\n * supported service options and variants\n * ([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)).\n */\nexport function bookingsUpdateNumberOfParticipants(\n payload: object\n): RequestOptionsFactory<any> {\n function __bookingsUpdateNumberOfParticipants({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.Bookings.UpdateNumberOfParticipants',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/update_number_of_participants',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bookingsUpdateNumberOfParticipants;\n}\n\n/**\n * Creates a multi-service booking and all included single-service bookings simultaneously.\n *\n *\n * ## When to call this method\n *\n * Create sequential appointments where customers book related services together. 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.\n *\n * ## Requirements and behavior\n *\n * __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.\n *\n * __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.\n *\n * __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)).\n *\n * __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.\n *\n * ## Related methods\n *\n * 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)).\n *\n * 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.\n */\nexport function createMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __createMultiServiceBooking({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'bookings.createdDate' },\n { path: 'bookings.startDate' },\n { path: 'bookings.endDate' },\n { path: 'bookings.updatedDate' },\n { path: 'bookings.canceledDate' },\n ],\n },\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [\n { path: 'bookings.contactDetails.fullAddress.geocode.latitude' },\n { path: 'bookings.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.CreateMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __createMultiServiceBooking;\n}\n\n/**\n * Reschedules a multi-service booking by changing the timing for all or specific single-service bookings in the package.\n *\n *\n * 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.\n *\n * This method fails if it can't reschedule at least 1 single-service booking. You must provide the current revision number for each single-service booking you're rescheduling to prevent conflicting changes.\n *\n * 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.\n */\nexport function rescheduleMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __rescheduleMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.RescheduleMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/{multiServiceBookingId}/reschedule',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __rescheduleMultiServiceBooking;\n}\n\n/**\n * Checks if the business can still accommodate an existing multi-service booking and returns overall bookability status, capacity details, and policy violations.\n *\n *\n * Wix Bookings considers:\n * - 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)).\n * - 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)).\n *\n * Call this method to check if an existing multi-service booking is still valid after business configuration changes.\n * For example, staff changes, policy updates, or capacity modifications.\n *\n * For checking availability before creating new multi-service bookings, call List Multi Service Availability Time Slots\n * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/time-slots/multi-service-availability-time-slots/list-multi-service-availability-time-slots) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots)) instead.\n */\nexport function getMultiServiceBookingAvailability(\n payload: object\n): RequestOptionsFactory<any> {\n function __getMultiServiceBookingAvailability({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.GetMultiServiceBookingAvailability',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/{multiServiceBookingId}/get_availability',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __getMultiServiceBookingAvailability;\n}\n\n/**\n * Cancels a multi-service booking and all its associated single-service bookings.\n *\n *\n * Cancels the entire multi-service booking, updating the status of all single-service bookings to `CANCELED`.\n * The call fails if all single-service bookings are already canceled or declined.\n *\n * 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.\n */\nexport function cancelMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __cancelMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.CancelMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings/{multiServiceBookingId}/cancel',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __cancelMultiServiceBooking;\n}\n\n/**\n * Updates the status for all single-service bookings in a multi-service booking to `PENDING`.\n *\n *\n * Call this method for multi-service bookings requiring manual business approval before confirmation.\n *\n * ## Status requirements\n *\n * - __Original status__: All single-service bookings must have `CREATED` status.\n * - __Target status__: All bookings move to `PENDING` together (all-or-nothing operation).\n *\n * ## Checkout restrictions\n *\n * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,\n * Wix Bookings automatically manages the bookings' statuses based on payment processing.\n *\n * ## Additional updates\n *\n * - __Payment status__: Updates if you specify a new `markAsPendingBookingsInfo.paymentStatus`.\n * - __Customer notifications__: Send messages using `participantNotification`.\n * - __Revision control__: Requires current revision numbers for all single-service bookings.\n *\n * 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.\n */\nexport function markMultiServiceBookingAsPending(\n payload: object\n): RequestOptionsFactory<any> {\n function __markMultiServiceBookingAsPending({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.MarkMultiServiceBookingAsPending',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/{multiServiceBookingId}/mark_as_pending',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __markMultiServiceBookingAsPending;\n}\n\n/**\n * Updates the status for all single-service bookings in a multi-service booking to `CONFIRMED`.\n *\n *\n * Call this method for multi-service bookings requiring manual business approval.\n *\n * ## Status requirements\n *\n * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.\n * - __Target status__: All bookings move to `CONFIRMED` together (all-or-nothing operation).\n *\n * ## Checkout restrictions\n *\n * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,\n * Wix Bookings automatically manages the bookings' statuses based on payment processing.\n *\n * ## Additional updates\n *\n * - __Payment status__: Updates if you specify a new `confirmBookingsInfo.paymentStatus`.\n * - __Customer notifications__: Send messages using `participantNotification`.\n * - __Revision control__: Requires current revision numbers for all single-service bookings.\n *\n * 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.\n */\nexport function confirmMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __confirmMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.ConfirmMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings/{multiServiceBookingId}/confirm',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __confirmMultiServiceBooking;\n}\n\n/**\n * Updates the status for all single-service bookings in a multi-service booking to `DECLINED`.\n *\n *\n * Call this method to reject multi-service bookings that can't be accommodated or don't meet business requirements.\n *\n * ## Status requirements\n *\n * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.\n * - __Target status__: All bookings move to `DECLINED` together (all-or-nothing operation).\n *\n * ## Checkout restrictions\n *\n * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,\n * Wix Bookings automatically manages the bookings' statuses based on payment processing.\n *\n * ## Additional updates\n *\n * - __Payment status__: Updates if you specify a new `declineBookingsInfo.paymentStatus`.\n * - __Customer notifications__: Send messages using `participantNotification`.\n * - __Revision control__: Requires current revision numbers for all single-service bookings.\n *\n * 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.\n */\nexport function declineMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __declineMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.DeclineMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings/{multiServiceBookingId}/decline',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __declineMultiServiceBooking;\n}\n\n/**\n * Retrieves information about which actions the customer can perform for up to 50 multi-service bookings.\n *\n *\n * For each multi-service booking, the response indicates which actions are currently allowed:\n * - `cancel`: Whether the customer can cancel the multi-service booking.\n * - `reschedule`: Whether the customer can adjust the multi-service booking's timing.\n *\n * Bear the following considerations in mind when calling this method:\n *\n * __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.\n *\n * __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.\n *\n * __Status dependencies__: Allowed actions change as bookings progress through their lifecycle (`CREATED` → `PENDING` → `CONFIRMED`/`DECLINED` → `CANCELED`).\n * Bookings can skip `PENDING` and move directly from `CREATED` to `CONFIRMED`/`DECLINED` based on service configuration.\n */\nexport function bulkGetMultiServiceBookingAllowedActions(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkGetMultiServiceBookingAllowedActions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.BulkGetMultiServiceBookingAllowedActions',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/bulk/multi_service_bookings/get_allowed_actions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkGetMultiServiceBookingAllowedActions;\n}\n\n/**\n * Retrieves a multi-service booking and all its associated single-service bookings.\n *\n *\n * Returns the complete multi-service booking information including its ID, associated single-service bookings, and the total number of scheduled single-service bookings.\n *\n * If you call on behalf of an [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) with permissions to read only part of the multi-service booking, only the permitted single-service bookings are retrieved.\n * The returned total number includes single-service bookings for which you don't have permissions.\n *\n * See Query Extended Bookings ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/extended-bookings/query-extended-bookings) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/query-extended-bookings)) for details about retrieving individual single-service bookings and additional metadata.\n */\nexport function getMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __getMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'GET' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.GetMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings/{multiServiceBookingId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getMultiServiceBooking;\n}\n\n/**\n * Expands an existing multi-service booking by adding existing single-service bookings to the package.\n *\n *\n * ## When to call this method\n *\n * Call this method to add 1 or more existing single-service bookings to an existing multi-service booking.\n * 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.\n *\n * ## Package integration\n *\n * 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.\n *\n * ## Requirements and limitations\n *\n * - __Maximum capacity__: The total number of single-service bookings can't exceed 8.\n * - __Booking eligibility__: You can add only independent single-service bookings that aren't part of another multi-service booking.\n * - __Status compatibility__: Added bookings must have compatible status with the target multi-service booking.\n * - __Revision control__: You must provide current revision numbers for all single-service bookings to add.\n */\nexport function addBookingsToMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __addBookingsToMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.AddBookingsToMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/add_bookings_to_multi_service_booking',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'bookings.booking.createdDate' },\n { path: 'bookings.booking.startDate' },\n { path: 'bookings.booking.endDate' },\n { path: 'bookings.booking.updatedDate' },\n { path: 'bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __addBookingsToMultiServiceBooking;\n}\n\n/**\n * Removes single-service bookings from a multi-service booking and converts them to independent single-service bookings.\n *\n *\n * ## Removal options\n *\n * __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.\n *\n * __Selective removal__: Specify single-service booking IDs and revisions to remove only specific single-service bookings from the package.\n *\n * __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.\n *\n * ## Removal behavior\n *\n * __Independent bookings__: Removed single-service bookings become independent bookings.\n * You can manage them using single-service booking methods.\n *\n * __Automatic cleanup__: Multi-service bookings must contain at least 2 services.\n * 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.\n *\n * __Revision control__: Specify current revision numbers to prevent conflicting modifications during the removal process.\n */\nexport function removeBookingsFromMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeBookingsFromMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.RemoveBookingsFromMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/remove_bookings_from_multi_service_booking',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'bookings.booking.createdDate' },\n { path: 'bookings.booking.startDate' },\n { path: 'bookings.booking.endDate' },\n { path: 'bookings.booking.updatedDate' },\n { path: 'bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __removeBookingsFromMultiServiceBooking;\n}\n","import * as ambassadorWixBookingsV2Booking from './bookings-v2-booking-bookings.http.js';\nimport * as ambassadorWixBookingsV2BookingTypes from './bookings-v2-booking-bookings.types.js';\nimport * as ambassadorWixBookingsV2BookingUniversalTypes from './bookings-v2-booking-bookings.universal.js';\n\nexport type __PublicMethodMetaInfo<\n K = string,\n M = unknown,\n T = unknown,\n S = unknown,\n Q = unknown,\n R = unknown\n> = {\n getUrl: (context: any) => string;\n httpMethod: K;\n path: string;\n pathParams: M;\n __requestType: T;\n __originalRequestType: S;\n __responseType: Q;\n __originalResponseType: R;\n};\n\nexport function confirmOrDeclineBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmOrDeclineBookingRequest,\n ambassadorWixBookingsV2BookingTypes.ConfirmOrDeclineBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmOrDeclineBookingResponse,\n ambassadorWixBookingsV2BookingTypes.ConfirmOrDeclineBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.confirmOrDeclineBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/confirmation/{bookingId}:confirmOrDecline',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function bulkConfirmOrDeclineBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.BulkConfirmOrDeclineBookingRequest,\n ambassadorWixBookingsV2BookingTypes.BulkConfirmOrDeclineBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.BulkConfirmOrDeclineBookingResponse,\n ambassadorWixBookingsV2BookingTypes.BulkConfirmOrDeclineBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bulkConfirmOrDeclineBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bulk/bookings/confirmOrDecline',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function createBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.CreateBookingRequest,\n ambassadorWixBookingsV2BookingTypes.CreateBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.CreateBookingResponse,\n ambassadorWixBookingsV2BookingTypes.CreateBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.createBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function bulkCreateBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.BulkCreateBookingRequest,\n ambassadorWixBookingsV2BookingTypes.BulkCreateBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.BulkCreateBookingResponse,\n ambassadorWixBookingsV2BookingTypes.BulkCreateBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bulkCreateBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bulk/bookings/create',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function rescheduleBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.RescheduleBookingRequest,\n ambassadorWixBookingsV2BookingTypes.RescheduleBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.RescheduleBookingResponse,\n ambassadorWixBookingsV2BookingTypes.RescheduleBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.rescheduleBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/reschedule',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function confirmBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmBookingRequest,\n ambassadorWixBookingsV2BookingTypes.ConfirmBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmBookingResponse,\n ambassadorWixBookingsV2BookingTypes.ConfirmBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bookingsConfirmBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/confirm',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function setBookingSubmissionId(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.SetBookingSubmissionIdRequest,\n ambassadorWixBookingsV2BookingTypes.SetBookingSubmissionIdRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.SetBookingSubmissionIdResponse,\n ambassadorWixBookingsV2BookingTypes.SetBookingSubmissionIdResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.setBookingSubmissionId(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/set-booking-submission-id',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function updateExtendedFields(): __PublicMethodMetaInfo<\n 'POST',\n { id: string },\n ambassadorWixBookingsV2BookingUniversalTypes.UpdateExtendedFieldsRequest,\n ambassadorWixBookingsV2BookingTypes.UpdateExtendedFieldsRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.UpdateExtendedFieldsResponse,\n ambassadorWixBookingsV2BookingTypes.UpdateExtendedFieldsResponse\n> {\n const payload = { id: ':id' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.updateExtendedFields(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{id}/update_extended_fields',\n pathParams: { id: 'id' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function declineBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.DeclineBookingRequest,\n ambassadorWixBookingsV2BookingTypes.DeclineBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.DeclineBookingResponse,\n ambassadorWixBookingsV2BookingTypes.DeclineBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bookingsDeclineBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/decline',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function cancelBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.CancelBookingRequest,\n ambassadorWixBookingsV2BookingTypes.CancelBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.CancelBookingResponse,\n ambassadorWixBookingsV2BookingTypes.CancelBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bookingsCancelBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/cancel',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function updateNumberOfParticipants(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.UpdateNumberOfParticipantsRequest,\n ambassadorWixBookingsV2BookingTypes.UpdateNumberOfParticipantsRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.UpdateNumberOfParticipantsResponse,\n ambassadorWixBookingsV2BookingTypes.UpdateNumberOfParticipantsResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bookingsUpdateNumberOfParticipants(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/update_number_of_participants',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function createMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.CreateMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.CreateMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.CreateMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.CreateMultiServiceBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.createMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function rescheduleMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.RescheduleMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.RescheduleMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.RescheduleMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.RescheduleMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.rescheduleMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/reschedule',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function getMultiServiceBookingAvailability(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.GetMultiServiceBookingAvailabilityRequest,\n ambassadorWixBookingsV2BookingTypes.GetMultiServiceBookingAvailabilityRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.GetMultiServiceBookingAvailabilityResponse,\n ambassadorWixBookingsV2BookingTypes.GetMultiServiceBookingAvailabilityResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.getMultiServiceBookingAvailability(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/get_availability',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function cancelMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.CancelMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.CancelMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.CancelMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.CancelMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.cancelMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/cancel',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function markMultiServiceBookingAsPending(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.MarkMultiServiceBookingAsPendingRequest,\n ambassadorWixBookingsV2BookingTypes.MarkMultiServiceBookingAsPendingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.MarkMultiServiceBookingAsPendingResponse,\n ambassadorWixBookingsV2BookingTypes.MarkMultiServiceBookingAsPendingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.markMultiServiceBookingAsPending(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/mark_as_pending',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function confirmMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.ConfirmMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.ConfirmMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.confirmMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/confirm',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function declineMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.DeclineMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.DeclineMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.DeclineMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.DeclineMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.declineMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/decline',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function bulkGetMultiServiceBookingAllowedActions(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.BulkGetMultiServiceBookingAllowedActionsRequest,\n ambassadorWixBookingsV2BookingTypes.BulkGetMultiServiceBookingAllowedActionsRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.BulkGetMultiServiceBookingAllowedActionsResponse,\n ambassadorWixBookingsV2BookingTypes.BulkGetMultiServiceBookingAllowedActionsResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bulkGetMultiServiceBookingAllowedActions(\n payload\n );\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bulk/multi_service_bookings/get_allowed_actions',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function getMultiServiceBooking(): __PublicMethodMetaInfo<\n 'GET',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.GetMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.GetMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.GetMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.GetMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.getMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'GET',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function addBookingsToMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.AddBookingsToMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.AddBookingsToMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.AddBookingsToMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.AddBookingsToMultiServiceBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.addBookingsToMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/add_bookings_to_multi_service_booking',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function removeBookingsFromMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.RemoveBookingsFromMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.RemoveBookingsFromMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.RemoveBookingsFromMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.RemoveBookingsFromMultiServiceBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.removeBookingsFromMultiServiceBooking(\n payload\n );\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/remove_bookings_from_multi_service_booking',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n"],"mappings":"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","names":["payload","confirmOrDeclineBooking","bulkConfirmOrDeclineBooking","createBooking","bulkCreateBooking","rescheduleBooking","setBookingSubmissionId","updateExtendedFields","createMultiServiceBooking","rescheduleMultiServiceBooking","getMultiServiceBookingAvailability","cancelMultiServiceBooking","markMultiServiceBookingAsPending","confirmMultiServiceBooking","declineMultiServiceBooking","bulkGetMultiServiceBookingAllowedActions","getMultiServiceBooking","addBookingsToMultiServiceBooking","removeBookingsFromMultiServiceBooking"]}
1
+ {"version":3,"sources":["../../../src/bookings-v2-booking-bookings.http.ts","../../../src/bookings-v2-booking-bookings.meta.ts"],"sourcesContent":["import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformSDKFloatToRESTFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformRESTFloatToSDKFloat } from '@wix/sdk-runtime/transformations/float';\nimport { transformSDKTimestampToRESTTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n _: [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/multi_service_bookings',\n destPath: '/v2/bulk/multi_service_bookings',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/multi_service_bookings',\n destPath: '/v2/bulk/multi_service_bookings',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'bo._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'wixbo.ai': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'wix-bo.com': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n '*.dev.wix-code.com': [\n {\n srcPath: '/_api/bookings-service',\n destPath: '/v2/bookings',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nfunction resolveComWixpressBookingsBookingsV2BookingsUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n _: [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/multi_service_bookings',\n destPath: '/v2/bulk/multi_service_bookings',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/multi_service_bookings',\n destPath: '/v2/multi_service_bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bulk/multi_service_bookings',\n destPath: '/v2/bulk/multi_service_bookings',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/v2/bookings',\n destPath: '/v2/bookings',\n },\n {\n srcPath: '/bookings/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'bo._base_domain_': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'wixbo.ai': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n 'wix-bo.com': [\n {\n srcPath: '/_api/bookings-service/v2/bulk/bookings',\n destPath: '/v2/bulk/bookings',\n },\n {\n srcPath: '/_api/bookings-service/v2/bookings',\n destPath: '/v2/bookings',\n },\n ],\n '*.dev.wix-code.com': [\n {\n srcPath: '/_api/bookings-service',\n destPath: '/v2/bookings',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nfunction resolveComWixpressBookingsConfirmatorV2ConfirmatorUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'www.wixapis.com': [\n {\n srcPath: '/_api/bookings-confirmator/v2/bookings/confirmation',\n destPath: '/v2/bookings/confirmation',\n },\n {\n srcPath: '/bookings/v2/confirmation',\n destPath: '/v2/confirmation',\n },\n {\n srcPath: '/bookings/v2/bulk/confirmation',\n destPath: '/v2/bulk/confirmation',\n },\n {\n srcPath: '/bookings/v2/bulk/bookings/confirmOrDecline',\n destPath: '/v2/bulk/bookings/confirmOrDecline',\n },\n {\n srcPath: '/_api/bookings-confirmator/v2/bulk/confirmation',\n destPath: '/v2/bulk/confirmation',\n },\n {\n srcPath: '/_api/bookings-confirmator/v2/bulk/bookings/confirmOrDecline',\n destPath: '/v2/bulk/bookings/confirmOrDecline',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_bookings_bookings';\n\n/**\n * Updates the booking `status` to `CONFIRMED`, `PENDING`, or `DECLINED` based\n * on the `paymentStatus` you provide, double booking conflicts, and whether\n * the service requires business approval.\n *\n * ## eCommerce checkout restriction\n *\n * Call this method only when using a custom checkout page. Don't\n * call it when using a *Wix eCommerce checkout*\n * ([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)).\n * In such cases, Wix automatically updates the booking status based on\n * the `paymentStatus` of the corresponding *Wix eCommerce order*\n * ([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)).\n *\n * ## New booking status\n *\n * The booking `status` is set to `DECLINED` if both of the following conditions\n * are met:\n * + You provide `UNDEFINED`, `NOT_PAID`, `REFUNDED`, or `EXEMPT` as payment status.\n * + There is a double booking conflict.\n *\n * If only one or none of these conditions is met, `status` is set to `PENDING`\n * or `CONFIRMED` depending on whether the service requires business approval.\n *\n * ## Double bookings\n *\n * If there is a double booking conflict, but the booking has already been at least\n * partially paid, the method still marks the booking as `PENDING` or `CONFIRMED`.\n * Then, it also sets `doubleBooked` to `true`.\n *\n * ## Admin overwrites\n *\n * There are small but important differences in confirmation behavior if the\n * booking was created with special `flowControlSettings`:\n * + If the booking's `flowControlSettings.skipAvailabilityValidation` was set to\n * `true`, the booking is never declined regardless of double booking conflicts.\n * Instead, it's marked `CONFIRMED` or `PENDING`, depending on whether the\n * service requires business approval.\n * + If the booking's `flowControlSettings.skipBusinessConfirmation` was set to\n * `true`, the booking skips `PENDING` status and is marked `CONFIRMED`\n * immediately.\n */\nexport function confirmOrDeclineBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __confirmOrDeclineBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.confirmator.v2.Confirmator.ConfirmOrDeclineBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsConfirmatorV2ConfirmatorUrl({\n protoPath: '/v2/confirmation/{bookingId}:confirmOrDecline',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __confirmOrDeclineBooking;\n}\n\n/**\n * Confirms or declines up to 300 bookings.\n *\n *\n * See *Confirm Or Decline Booking*\n * ([SDK](https://dev.wix.com/docs/velo/api-reference/wix-bookings-v2/bookings/confirm-or-decline-booking) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-writer-v2/confirm-or-decline-booking))\n * for details about when a booking is confirmed or declined.\n */\nexport function bulkConfirmOrDeclineBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkConfirmOrDeclineBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.confirmator.v2.Confirmator.BulkConfirmOrDeclineBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsConfirmatorV2ConfirmatorUrl({\n protoPath: '/v2/bulk/bookings/confirmOrDecline',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.startDate' },\n { path: 'results.item.endDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'results.item.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'results.item.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkConfirmOrDeclineBooking;\n}\n\n/**\n * Creates a booking.\n *\n *\n * ## Appointment booking\n *\n * For appointment-based services, specify the relevant `slot` in\n * `bookedEntity.slot`. We recommend specifying the complete\n * `availabilityEntries.slot` returned in Query Availability\n * ([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))\n * in your call's request to avoid failed calls due to unavailability.\n *\n * ## Class session booking\n *\n * For class services, specify the relevant event ID\n * ([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))\n * as `bookedEntity.slot.eventId`.\n * We recommend retrieving the event ID from Query Availability's\n * ([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))\n * `availabilityEntries.slot.eventId` to avoid failed calls due to unavailability.\n * Specifying an event ID leads to automatic calculations of `slot.startDate`, `slot.endDate`,\n * `slot.timezone`, `slot.resource`, and `slot.location`. All manually specified\n * values are overridden.\n *\n * ## Course booking\n *\n * For course services, specify the course's schedule ID in `bookedEntity.schedule.scheduleId`.\n * We recommend following [this sample flow](https://dev.wix.com/docs/rest/business-solutions/bookings/end-to-end-booking-flows#book-a-course)\n * to minimize failed calls due to unavailability.\n *\n * ## Related resources\n *\n * Specifying a `resource` triggers an availability check, resulting in a failed\n * call if the resource is unavailable. Omitting a resource allows Wix Bookings\n * to assign a resource belonging to the relevant type randomly when the merchant\n * confirms the booking.\n *\n * ## Participant information\n *\n * You must specify either `participantsChoices` or `totalParticipants`.\n * The call fails if the specified `participantsChoices` aren't among the supported\n * _service options and variants_\n * ([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)).\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer that's send\n * immediately. Ensure `participantNotification.notifyParticipants` is set to `true`\n * to send the message.\n *\n * If you specify `{\"sendSmsReminder\": true}`, the customer receives an SMS 24 hours\n * before the session starts. The phone number is taken from `contactDetails.phone`.\n *\n * ## Booking status\n *\n * Bookings default to the `CREATED` status, not affecting the business calendar\n * or resource availability. You can specify a different status when the calling\n * [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities)\n * has `Manage Bookings` permissions.\n *\n * ## Payment options\n *\n * The specified `selectedPaymentOption` indicates how the customer intends to\n * pay, allowing for later changes to a different method supported by the service.\n *\n * ## Payment status\n *\n * A booking is initially created with `{\"paymentStatus\": \"UNDEFINED\"}` regardless\n * of the payment status specified in Create Booking. If a customer uses an\n * _eCommerce checkout_\n * ([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)),\n * Wix Bookings automatically syncs the booking's payment status from\n * the corresponding eCommerce order\n * ([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)).\n *\n * If a booking doesn't have a corresponding eCommerce order, for example, since\n * the customer didn't use the eCommerce checkout, you can update the booking's\n * payment status with Confirm Or Decline Booking\n * ([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)).\n *\n * ## Booking form data\n *\n * When customers sign up for a service, they must fill out the booking form.\n * To create a booking with a completed booking form, specify the relevant data in\n * `formSubmission`. Ensure the values of the corresponding fields in\n * `booking.contactDetails` and `formSubmission` are identical. If these values\n * don't match, Create Booking fails. Therefore, we recommend specifying\n * only `booking.contactDetails.contactId` when providing `formSubmission`.\n *\n * ## Admin overwrites\n *\n * There are small but important differences when you specify special\n * `flowControlSettings`:\n *\n * - `{\"skipAvailabilityValidation\": true}`: The call succeeds\n * regardless of availability. If you don't specify any resource, the call\n * succeeds even if no resource of the relevant type is available.\n * - `{\"skipBusinessConfirmation\": true}`: Automatically confirms `PENDING`\n * bookings that require manual confirmation.\n * - `{\"skipSelectedPaymentOptionValidation\": true}`: Allows customers to pay\n * with payment methods that aren't supported for the service.\n *\n * When using special `flowControlSettings`, ensure you have sufficient\n * permissions. If you encounter failed calls due to insufficient permissions,\n * consider the following options:\n *\n * - **App developers** can use a higher\n * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),\n * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.\n * - **Site developers** can utilize\n * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).\n *\n * Granting additional permissions and using elevation permits method calls that\n * would typically fail due to authorization checks. Therefore, you should use\n * them intentionally and securely.\n */\nexport function createBooking(payload: object): RequestOptionsFactory<any> {\n function __createBooking({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.CreateBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __createBooking;\n}\n\n/**\n * Creates up to 8 bookings.\n *\n *\n * See Create Booking\n * ([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))\n * for more information.\n *\n * If any of the specified bookings is missing a required field the entire call\n * fails.\n *\n * If you specify 1 or more unavailable bookings, the call succeeds\n * while the unavailable bookings aren't created. Instead, they're counted as\n * failures in the returned `bulkActionMetadata`.\n */\nexport function bulkCreateBooking(payload: object): RequestOptionsFactory<any> {\n function __bulkCreateBooking({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'createBookingsInfo.booking.createdDate' },\n { path: 'createBookingsInfo.booking.startDate' },\n { path: 'createBookingsInfo.booking.endDate' },\n { path: 'createBookingsInfo.booking.updatedDate' },\n { path: 'createBookingsInfo.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [\n {\n path: 'createBookingsInfo.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'createBookingsInfo.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.BulkCreateBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bulk/bookings/create',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'results.item.createdDate' },\n { path: 'results.item.startDate' },\n { path: 'results.item.endDate' },\n { path: 'results.item.updatedDate' },\n { path: 'results.item.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'results.item.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'results.item.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bulkCreateBooking;\n}\n\n/**\n * Reschedules an appointment booking to a different slot or a class booking to\n * a different session.\n *\n *\n * ## Course booking limitation\n *\n * You can't reschedule course bookings.\n *\n * ## Appointment sessions\n *\n * For appointments, the old session is removed from the business calendar\n * while a new session is added. We recommend calling Query Availability\n * ([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))\n * first and specifying the entire retrieved `slot`.\n *\n * ## Class sessions\n *\n * For classes, the new session must be an existing session belonging to the\n * same class. We recommend retrieving `availabilityEntries.slot.eventId`\n * from Query Availability\n * ([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))\n * to avoid failed Reschedule Booking calls due to unavailability. Specify\n * only `slot.eventId` instead of the entire `slot` object.\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer. To send\n * the message, you must also specify `participantNotification.notifyParticipants`\n * as `true`.\n *\n * ## Admin overwrites\n *\n * There are small but important differences when you specify special\n * `flowControlSettings`:\n *\n * - `{\"ignoreReschedulePolicy\": true}`: The call succeeds even if the\n * service's `reschedulePolicy` doesn't allow it.\n * - `{\"skipAvailabilityValidation\": true}`: The call succeeds even if\n * the specified session, slot, or resource isn't available. If you don't\n * specify any resource, the call succeeds even if no resource of the relevant\n * type is available.\n * - `{\"skipBusinessConfirmation\": true}`: Any `PENDING` booking is\n * automatically confirmed even if the services requires the merchants's\n * manual confirmation.\n *\n * When using special `flowControlSettings`, ensure you have sufficient\n * permissions. If you encounter failed calls due to insufficient permissions,\n * consider the following options:\n *\n * - **App developers** can use a higher\n * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),\n * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.\n * - **Site developers** can utilize\n * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).\n *\n * Granting additional permissions and using elevation permits method calls that\n * would typically fail due to authorization checks. Therefore, you should use\n * them intentionally and securely.\n */\nexport function rescheduleBooking(payload: object): RequestOptionsFactory<any> {\n function __rescheduleBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.RescheduleBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/reschedule',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __rescheduleBooking;\n}\n\n/**\n * Updates the booking status to `CONFIRMED` without checking whether the relevant slot or schedule is still available.\n *\n *\n * ## eCommerce checkout restriction\n *\n * Call this method only when using a custom checkout page. Don't\n * call it when using a Wix eCommerce checkout\n * ([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)).\n * In such cases, Wix automatically updates the booking status based on\n * the `paymentStatus` of the corresponding Wix eCommerce order\n * ([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)).\n *\n * ## When to call Confirm Or Decline Booking instead\n *\n * Confirm Booking doesn't check whether a slot or schedule is still available.\n * 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.\n *\n * ## Original status validation\n *\n * You can only confirm bookings with a status of `PENDING`, `CREATED`, or\n * `WAITING_LIST`.\n *\n * ## Double bookings\n *\n * Confirm Booking doesn't check whether a slot or schedule is still available.\n * You can specify\n *\n * ```json\n * {\n * \"flowControlSettings\": {\n * \"checkAvailabilityValidation\": true\n * },\n * \"doubleBooked\": true\n * }\n * ```\n * to forcefully set the booking's `doubleBooked` flag to `true`, regardless of\n * a potential double booking conflict. You must call with `Manage Bookings`\n * permissions to do so. For the default flow control settings\n * `{\"checkAvailabilityValidation\": false}`, the specified `doubleBooked` value\n * is ignored.\n *\n * ## Payment status\n *\n * Also updates the booking's `paymentStatus`, if you specify a new payment\n * status.\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer. To send\n * the message, you must also specify `participantNotification.notifyParticipants`\n * as `true`.\n */\nexport function bookingsConfirmBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __bookingsConfirmBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.ConfirmBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/confirm',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bookingsConfirmBooking;\n}\n\n/** Setting `submission_id` for a booking after the form submission is created. */\nexport function setBookingSubmissionId(\n payload: object\n): RequestOptionsFactory<any> {\n function __setBookingSubmissionId({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.Bookings.SetBookingSubmissionId',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/set-booking-submission-id',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __setBookingSubmissionId;\n}\n\n/**\n * Updates the extended fields for a booking.\n *\n *\n * If you specify an extended field `namespace` that doesn't exist yet, it's\n * created.\n *\n * Learn more about [extended fields](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/about-backend-extensions#schema-plugin-extensions).\n */\nexport function updateExtendedFields(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateExtendedFields({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.Bookings.UpdateExtendedFields',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{id}/update_extended_fields',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateExtendedFields;\n}\n\n/**\n * Updates the booking status to `DECLINED` and updates the relevant session's\n * `participants.approvalStatus` to `DECLINED` without checking whether the relevant\n * slot or schedule is still available.\n *\n *\n * ## eCommerce checkout restriction\n *\n * Call this method only when using a custom checkout page. Don't\n * call it when using a Wix eCommerce checkout\n * ([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)).\n * In such cases, Wix automatically updates the booking status based on\n * the `paymentStatus` of the corresponding Wix eCommerce order\n * ([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)).\n *\n * ## When to call Confirm Or Decline Booking instead\n *\n * The method doesn't check whether a slot or schedule is still available. For\n * these checks you can call Confirm or Decline Booking\n * ([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)).\n *\n * ## Original status validation\n *\n * You can only decline bookings with a `status` of `PENDING`, `CREATED`, or\n * `WAITING_LIST`.\n *\n * ## Payment status\n *\n * Also updates the booking's `paymentStatus`, if you specify a new payment\n * status.\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer. To send\n * the message, you must also specify `participantNotification.notifyParticipants`\n * as `true`.\n */\nexport function bookingsDeclineBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __bookingsDeclineBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.DeclineBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/decline',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bookingsDeclineBooking;\n}\n\n/**\n * Updates the booking status to `CANCELED`.\n *\n *\n * ## Appointments\n *\n * For appointments, the corresponding event is removed from the Bookings\n * calendar.\n *\n * ## Class and course bookings\n *\n * For class or course bookings, the relevant participants are removed\n * from the class session or the course. However, the class session or course\n * remain on the business calendar.\n *\n * ## Notify customers\n *\n * You can specify a `participantNotification.message` for the customer. To send\n * the message, you must also specify `participantNotification.notifyParticipants`\n * as `true`.\n *\n * ## Admin overwrites\n *\n * There are small but important differences when you specify special\n * `flowControlSettings`:\n *\n * - `{\"ignoreCancellationPolicy\": true}`: The call succeeds even if the\n * service's `cancellationPolicy` doesn't allow it.\n * - `{\"withRefund\": true}`: The customer is refunded even if the service's\n * `refundPolicy` doesn't allow it.\n * - `{\"waiveCancellationFee\": true}`: The customer doesn't have to pay\n * the cancellation fee, even if the service's `cancellationPolicy` requires it.\n *\n * When using special `flowControlSettings`, ensure you have sufficient\n * permissions. If you encounter failed calls due to insufficient permissions,\n * consider the following options:\n *\n * - **App developers** can use a higher\n * [permission](https://dev.wix.com/docs/build-apps/develop-your-app/access/authorization/about-permissions),\n * such as `MANAGE BOOKINGS - ALL PERMISSIONS`.\n * - **Site developers** can utilize\n * [elevation](https://dev.wix.com/docs/develop-websites/articles/coding-with-velo/authorization/elevation).\n *\n * Granting additional permissions and using elevation permits method calls that\n * would typically fail due to authorization checks. Therefore, you should use\n * them intentionally and securely.\n */\nexport function bookingsCancelBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __bookingsCancelBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn: 'com.wixpress.bookings.bookings.v2.Bookings.CancelBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/cancel',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bookingsCancelBooking;\n}\n\n/**\n * Updates the number of participants for a class or course booking and changes\n * the `totalNumberOfParticipants` for the relevant sessions.\n *\n *\n * ## Appointment limitation\n *\n * You can't update the number of participants for appointment bookings.\n *\n * ## Participant information\n *\n * You must specify either `participantsChoices` or `totalParticipants`.\n * The call fails if the specified `participantsChoices` aren't among the\n * supported service options and variants\n * ([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)).\n */\nexport function bookingsUpdateNumberOfParticipants(\n payload: object\n): RequestOptionsFactory<any> {\n function __bookingsUpdateNumberOfParticipants({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.Bookings.UpdateNumberOfParticipants',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2BookingsUrl({\n protoPath: '/v2/bookings/{bookingId}/update_number_of_participants',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'booking.createdDate' },\n { path: 'booking.startDate' },\n { path: 'booking.endDate' },\n { path: 'booking.updatedDate' },\n { path: 'booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n { path: 'booking.contactDetails.fullAddress.geocode.latitude' },\n { path: 'booking.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __bookingsUpdateNumberOfParticipants;\n}\n\n/**\n * Creates a multi-service booking and all included single-service bookings simultaneously.\n *\n *\n * ## When to call this method\n *\n * Create sequential appointments where customers book related services together. 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.\n *\n * ## Requirements and behavior\n *\n * __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.\n *\n * __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.\n *\n * __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)).\n *\n * __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.\n *\n * ## Related methods\n *\n * 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)).\n *\n * 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.\n */\nexport function createMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __createMultiServiceBooking({ host }: any) {\n const serializedData = transformPaths(payload, [\n {\n transformFn: transformSDKTimestampToRESTTimestamp,\n paths: [\n { path: 'bookings.createdDate' },\n { path: 'bookings.startDate' },\n { path: 'bookings.endDate' },\n { path: 'bookings.updatedDate' },\n { path: 'bookings.canceledDate' },\n ],\n },\n {\n transformFn: transformSDKFloatToRESTFloat,\n paths: [\n { path: 'bookings.contactDetails.fullAddress.geocode.latitude' },\n { path: 'bookings.contactDetails.fullAddress.geocode.longitude' },\n ],\n },\n ]);\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.CreateMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings',\n data: serializedData,\n host,\n }),\n data: serializedData,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __createMultiServiceBooking;\n}\n\n/**\n * Reschedules a multi-service booking by changing the timing for all or specific single-service bookings in the package.\n *\n *\n * 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.\n *\n * This method fails if it can't reschedule at least 1 single-service booking. You must provide the current revision number for each single-service booking you're rescheduling to prevent conflicting changes.\n *\n * 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.\n */\nexport function rescheduleMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __rescheduleMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.RescheduleMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/{multiServiceBookingId}/reschedule',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __rescheduleMultiServiceBooking;\n}\n\n/**\n * Checks if the business can still accommodate an existing multi-service booking and returns overall bookability status, capacity details, and policy violations.\n *\n *\n * Wix Bookings considers:\n * - 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)).\n * - 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)).\n *\n * Call this method to check if an existing multi-service booking is still valid after business configuration changes.\n * For example, staff changes, policy updates, or capacity modifications.\n *\n * For checking availability before creating new multi-service bookings, call List Multi Service Availability Time Slots\n * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/time-slots/multi-service-availability-time-slots/list-multi-service-availability-time-slots) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/time-slots/time-slots-v2/list-multi-service-availability-time-slots)) instead.\n */\nexport function getMultiServiceBookingAvailability(\n payload: object\n): RequestOptionsFactory<any> {\n function __getMultiServiceBookingAvailability({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.GetMultiServiceBookingAvailability',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/{multiServiceBookingId}/get_availability',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __getMultiServiceBookingAvailability;\n}\n\n/**\n * Cancels a multi-service booking and all its associated single-service bookings.\n *\n *\n * Cancels the entire multi-service booking, updating the status of all single-service bookings to `CANCELED`.\n * The call fails if all single-service bookings are already canceled or declined.\n *\n * 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.\n */\nexport function cancelMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __cancelMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.CancelMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings/{multiServiceBookingId}/cancel',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __cancelMultiServiceBooking;\n}\n\n/**\n * Updates the status for all single-service bookings in a multi-service booking to `PENDING`.\n *\n *\n * Call this method for multi-service bookings requiring manual business approval before confirmation.\n *\n * ## Status requirements\n *\n * - __Original status__: All single-service bookings must have `CREATED` status.\n * - __Target status__: All bookings move to `PENDING` together (all-or-nothing operation).\n *\n * ## Checkout restrictions\n *\n * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,\n * Wix Bookings automatically manages the bookings' statuses based on payment processing.\n *\n * ## Additional updates\n *\n * - __Payment status__: Updates if you specify a new `markAsPendingBookingsInfo.paymentStatus`.\n * - __Customer notifications__: Send messages using `participantNotification`.\n * - __Revision control__: Requires current revision numbers for all single-service bookings.\n *\n * 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.\n */\nexport function markMultiServiceBookingAsPending(\n payload: object\n): RequestOptionsFactory<any> {\n function __markMultiServiceBookingAsPending({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.MarkMultiServiceBookingAsPending',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/{multiServiceBookingId}/mark_as_pending',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __markMultiServiceBookingAsPending;\n}\n\n/**\n * Updates the status for all single-service bookings in a multi-service booking to `CONFIRMED`.\n *\n *\n * Call this method for multi-service bookings requiring manual business approval.\n *\n * ## Status requirements\n *\n * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.\n * - __Target status__: All bookings move to `CONFIRMED` together (all-or-nothing operation).\n *\n * ## Checkout restrictions\n *\n * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,\n * Wix Bookings automatically manages the bookings' statuses based on payment processing.\n *\n * ## Additional updates\n *\n * - __Payment status__: Updates if you specify a new `confirmBookingsInfo.paymentStatus`.\n * - __Customer notifications__: Send messages using `participantNotification`.\n * - __Revision control__: Requires current revision numbers for all single-service bookings.\n *\n * 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.\n */\nexport function confirmMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __confirmMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.ConfirmMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings/{multiServiceBookingId}/confirm',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __confirmMultiServiceBooking;\n}\n\n/**\n * Updates the status for all single-service bookings in a multi-service booking to `DECLINED`.\n *\n *\n * Call this method to reject multi-service bookings that can't be accommodated or don't meet business requirements.\n *\n * ## Status requirements\n *\n * - __Original status__: All single-service bookings must have `PENDING`, `CREATED`, or `WAITING_LIST` status.\n * - __Target status__: All bookings move to `DECLINED` together (all-or-nothing operation).\n *\n * ## Checkout restrictions\n *\n * Only call this method if the customer paid via a custom checkout. For Wix eCommerce checkouts,\n * Wix Bookings automatically manages the bookings' statuses based on payment processing.\n *\n * ## Additional updates\n *\n * - __Payment status__: Updates if you specify a new `declineBookingsInfo.paymentStatus`.\n * - __Customer notifications__: Send messages using `participantNotification`.\n * - __Revision control__: Requires current revision numbers for all single-service bookings.\n *\n * 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.\n */\nexport function declineMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __declineMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.DeclineMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings/{multiServiceBookingId}/decline',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __declineMultiServiceBooking;\n}\n\n/**\n * Retrieves information about which actions the customer can perform for up to 50 multi-service bookings.\n *\n *\n * For each multi-service booking, the response indicates which actions are currently allowed:\n * - `cancel`: Whether the customer can cancel the multi-service booking.\n * - `reschedule`: Whether the customer can adjust the multi-service booking's timing.\n *\n * Bear the following considerations in mind when calling this method:\n *\n * __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.\n *\n * __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.\n *\n * __Status dependencies__: Allowed actions change as bookings progress through their lifecycle (`CREATED` → `PENDING` → `CONFIRMED`/`DECLINED` → `CANCELED`).\n * Bookings can skip `PENDING` and move directly from `CREATED` to `CONFIRMED`/`DECLINED` based on service configuration.\n */\nexport function bulkGetMultiServiceBookingAllowedActions(\n payload: object\n): RequestOptionsFactory<any> {\n function __bulkGetMultiServiceBookingAllowedActions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.BulkGetMultiServiceBookingAllowedActions',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/bulk/multi_service_bookings/get_allowed_actions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __bulkGetMultiServiceBookingAllowedActions;\n}\n\n/**\n * Retrieves a multi-service booking and all its associated single-service bookings.\n *\n *\n * Returns the complete multi-service booking information including its ID, associated single-service bookings, and the total number of scheduled single-service bookings.\n *\n * If you call on behalf of an [identity](https://dev.wix.com/docs/build-apps/develop-your-app/access/about-identities) with permissions to read only part of the multi-service booking, only the permitted single-service bookings are retrieved.\n * The returned total number includes single-service bookings for which you don't have permissions.\n *\n * See Query Extended Bookings ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/extended-bookings/query-extended-bookings) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/bookings/bookings-reader-v2/query-extended-bookings)) for details about retrieving individual single-service bookings and additional metadata.\n */\nexport function getMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __getMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'GET' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.GetMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath: '/v2/multi_service_bookings/{multiServiceBookingId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'multiServiceBooking.bookings.booking.createdDate' },\n { path: 'multiServiceBooking.bookings.booking.startDate' },\n { path: 'multiServiceBooking.bookings.booking.endDate' },\n { path: 'multiServiceBooking.bookings.booking.updatedDate' },\n { path: 'multiServiceBooking.bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'multiServiceBooking.bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getMultiServiceBooking;\n}\n\n/**\n * Expands an existing multi-service booking by adding existing single-service bookings to the package.\n *\n *\n * ## When to call this method\n *\n * Call this method to add 1 or more existing single-service bookings to an existing multi-service booking.\n * 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.\n *\n * ## Package integration\n *\n * 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.\n *\n * ## Requirements and limitations\n *\n * - __Maximum capacity__: The total number of single-service bookings can't exceed 8.\n * - __Booking eligibility__: You can add only independent single-service bookings that aren't part of another multi-service booking.\n * - __Status compatibility__: Added bookings must have compatible status with the target multi-service booking.\n * - __Revision control__: You must provide current revision numbers for all single-service bookings to add.\n */\nexport function addBookingsToMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __addBookingsToMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.AddBookingsToMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/add_bookings_to_multi_service_booking',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'bookings.booking.createdDate' },\n { path: 'bookings.booking.startDate' },\n { path: 'bookings.booking.endDate' },\n { path: 'bookings.booking.updatedDate' },\n { path: 'bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __addBookingsToMultiServiceBooking;\n}\n\n/**\n * Removes single-service bookings from a multi-service booking and converts them to independent single-service bookings.\n *\n *\n * ## Removal options\n *\n * __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.\n *\n * __Selective removal__: Specify single-service booking IDs and revisions to remove only specific single-service bookings from the package.\n *\n * __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.\n *\n * ## Removal behavior\n *\n * __Independent bookings__: Removed single-service bookings become independent bookings.\n * You can manage them using single-service booking methods.\n *\n * __Automatic cleanup__: Multi-service bookings must contain at least 2 services.\n * 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.\n *\n * __Revision control__: Specify current revision numbers to prevent conflicting modifications during the removal process.\n */\nexport function removeBookingsFromMultiServiceBooking(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeBookingsFromMultiServiceBooking({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.bookings.v2.booking',\n method: 'POST' as any,\n methodFqn:\n 'com.wixpress.bookings.bookings.v2.MultiServiceBookings.RemoveBookingsFromMultiServiceBooking',\n packageName: PACKAGE_NAME,\n url: resolveComWixpressBookingsBookingsV2MultiServiceBookingsUrl({\n protoPath:\n '/v2/multi_service_bookings/remove_bookings_from_multi_service_booking',\n data: payload,\n host,\n }),\n data: payload,\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [\n { path: 'bookings.booking.createdDate' },\n { path: 'bookings.booking.startDate' },\n { path: 'bookings.booking.endDate' },\n { path: 'bookings.booking.updatedDate' },\n { path: 'bookings.booking.canceledDate' },\n ],\n },\n {\n transformFn: transformRESTFloatToSDKFloat,\n paths: [\n {\n path: 'bookings.booking.contactDetails.fullAddress.geocode.latitude',\n },\n {\n path: 'bookings.booking.contactDetails.fullAddress.geocode.longitude',\n },\n ],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __removeBookingsFromMultiServiceBooking;\n}\n","import * as ambassadorWixBookingsV2Booking from './bookings-v2-booking-bookings.http.js';\nimport * as ambassadorWixBookingsV2BookingTypes from './bookings-v2-booking-bookings.types.js';\nimport * as ambassadorWixBookingsV2BookingUniversalTypes from './bookings-v2-booking-bookings.universal.js';\n\nexport type __PublicMethodMetaInfo<\n K = string,\n M = unknown,\n T = unknown,\n S = unknown,\n Q = unknown,\n R = unknown\n> = {\n getUrl: (context: any) => string;\n httpMethod: K;\n path: string;\n pathParams: M;\n __requestType: T;\n __originalRequestType: S;\n __responseType: Q;\n __originalResponseType: R;\n};\n\nexport function confirmOrDeclineBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmOrDeclineBookingRequest,\n ambassadorWixBookingsV2BookingTypes.ConfirmOrDeclineBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmOrDeclineBookingResponse,\n ambassadorWixBookingsV2BookingTypes.ConfirmOrDeclineBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.confirmOrDeclineBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/confirmation/{bookingId}:confirmOrDecline',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function bulkConfirmOrDeclineBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.BulkConfirmOrDeclineBookingRequest,\n ambassadorWixBookingsV2BookingTypes.BulkConfirmOrDeclineBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.BulkConfirmOrDeclineBookingResponse,\n ambassadorWixBookingsV2BookingTypes.BulkConfirmOrDeclineBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bulkConfirmOrDeclineBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bulk/bookings/confirmOrDecline',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function createBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.CreateBookingRequest,\n ambassadorWixBookingsV2BookingTypes.CreateBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.CreateBookingResponse,\n ambassadorWixBookingsV2BookingTypes.CreateBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.createBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function bulkCreateBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.BulkCreateBookingRequest,\n ambassadorWixBookingsV2BookingTypes.BulkCreateBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.BulkCreateBookingResponse,\n ambassadorWixBookingsV2BookingTypes.BulkCreateBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bulkCreateBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bulk/bookings/create',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function rescheduleBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.RescheduleBookingRequest,\n ambassadorWixBookingsV2BookingTypes.RescheduleBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.RescheduleBookingResponse,\n ambassadorWixBookingsV2BookingTypes.RescheduleBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.rescheduleBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/reschedule',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function confirmBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmBookingRequest,\n ambassadorWixBookingsV2BookingTypes.ConfirmBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmBookingResponse,\n ambassadorWixBookingsV2BookingTypes.ConfirmBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bookingsConfirmBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/confirm',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function setBookingSubmissionId(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.SetBookingSubmissionIdRequest,\n ambassadorWixBookingsV2BookingTypes.SetBookingSubmissionIdRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.SetBookingSubmissionIdResponse,\n ambassadorWixBookingsV2BookingTypes.SetBookingSubmissionIdResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.setBookingSubmissionId(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/set-booking-submission-id',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function updateExtendedFields(): __PublicMethodMetaInfo<\n 'POST',\n { id: string },\n ambassadorWixBookingsV2BookingUniversalTypes.UpdateExtendedFieldsRequest,\n ambassadorWixBookingsV2BookingTypes.UpdateExtendedFieldsRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.UpdateExtendedFieldsResponse,\n ambassadorWixBookingsV2BookingTypes.UpdateExtendedFieldsResponse\n> {\n const payload = { id: ':id' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.updateExtendedFields(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{id}/update_extended_fields',\n pathParams: { id: 'id' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function declineBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.DeclineBookingRequest,\n ambassadorWixBookingsV2BookingTypes.DeclineBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.DeclineBookingResponse,\n ambassadorWixBookingsV2BookingTypes.DeclineBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bookingsDeclineBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/decline',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function cancelBooking(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.CancelBookingRequest,\n ambassadorWixBookingsV2BookingTypes.CancelBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.CancelBookingResponse,\n ambassadorWixBookingsV2BookingTypes.CancelBookingResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bookingsCancelBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/cancel',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function updateNumberOfParticipants(): __PublicMethodMetaInfo<\n 'POST',\n { bookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.UpdateNumberOfParticipantsRequest,\n ambassadorWixBookingsV2BookingTypes.UpdateNumberOfParticipantsRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.UpdateNumberOfParticipantsResponse,\n ambassadorWixBookingsV2BookingTypes.UpdateNumberOfParticipantsResponse\n> {\n const payload = { bookingId: ':bookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bookingsUpdateNumberOfParticipants(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bookings/{bookingId}/update_number_of_participants',\n pathParams: { bookingId: 'bookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function createMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.CreateMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.CreateMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.CreateMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.CreateMultiServiceBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.createMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function rescheduleMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.RescheduleMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.RescheduleMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.RescheduleMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.RescheduleMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.rescheduleMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/reschedule',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function getMultiServiceBookingAvailability(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.GetMultiServiceBookingAvailabilityRequest,\n ambassadorWixBookingsV2BookingTypes.GetMultiServiceBookingAvailabilityRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.GetMultiServiceBookingAvailabilityResponse,\n ambassadorWixBookingsV2BookingTypes.GetMultiServiceBookingAvailabilityResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.getMultiServiceBookingAvailability(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/get_availability',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function cancelMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.CancelMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.CancelMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.CancelMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.CancelMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.cancelMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/cancel',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function markMultiServiceBookingAsPending(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.MarkMultiServiceBookingAsPendingRequest,\n ambassadorWixBookingsV2BookingTypes.MarkMultiServiceBookingAsPendingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.MarkMultiServiceBookingAsPendingResponse,\n ambassadorWixBookingsV2BookingTypes.MarkMultiServiceBookingAsPendingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.markMultiServiceBookingAsPending(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/mark_as_pending',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function confirmMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.ConfirmMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.ConfirmMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.ConfirmMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.confirmMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/confirm',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function declineMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.DeclineMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.DeclineMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.DeclineMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.DeclineMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.declineMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}/decline',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function bulkGetMultiServiceBookingAllowedActions(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.BulkGetMultiServiceBookingAllowedActionsRequest,\n ambassadorWixBookingsV2BookingTypes.BulkGetMultiServiceBookingAllowedActionsRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.BulkGetMultiServiceBookingAllowedActionsResponse,\n ambassadorWixBookingsV2BookingTypes.BulkGetMultiServiceBookingAllowedActionsResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.bulkGetMultiServiceBookingAllowedActions(\n payload\n );\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/bulk/multi_service_bookings/get_allowed_actions',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function getMultiServiceBooking(): __PublicMethodMetaInfo<\n 'GET',\n { multiServiceBookingId: string },\n ambassadorWixBookingsV2BookingUniversalTypes.GetMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.GetMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.GetMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.GetMultiServiceBookingResponse\n> {\n const payload = { multiServiceBookingId: ':multiServiceBookingId' } as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.getMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'GET',\n path: '/v2/multi_service_bookings/{multiServiceBookingId}',\n pathParams: { multiServiceBookingId: 'multiServiceBookingId' },\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function addBookingsToMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.AddBookingsToMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.AddBookingsToMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.AddBookingsToMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.AddBookingsToMultiServiceBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.addBookingsToMultiServiceBooking(payload);\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/add_bookings_to_multi_service_booking',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n\nexport function removeBookingsFromMultiServiceBooking(): __PublicMethodMetaInfo<\n 'POST',\n {},\n ambassadorWixBookingsV2BookingUniversalTypes.RemoveBookingsFromMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingTypes.RemoveBookingsFromMultiServiceBookingRequest,\n ambassadorWixBookingsV2BookingUniversalTypes.RemoveBookingsFromMultiServiceBookingResponse,\n ambassadorWixBookingsV2BookingTypes.RemoveBookingsFromMultiServiceBookingResponse\n> {\n const payload = {} as any;\n\n const getRequestOptions =\n ambassadorWixBookingsV2Booking.removeBookingsFromMultiServiceBooking(\n payload\n );\n\n const getUrl = (context: any): string => {\n const { url } = getRequestOptions(context);\n return url!;\n };\n\n return {\n getUrl,\n httpMethod: 'POST',\n path: '/v2/multi_service_bookings/remove_bookings_from_multi_service_booking',\n pathParams: {},\n __requestType: null as any,\n __originalRequestType: null as any,\n __responseType: null as any,\n __originalResponseType: null as any,\n };\n}\n"],"mappings":"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","names":["payload","confirmOrDeclineBooking","bulkConfirmOrDeclineBooking","createBooking","bulkCreateBooking","rescheduleBooking","setBookingSubmissionId","updateExtendedFields","createMultiServiceBooking","rescheduleMultiServiceBooking","getMultiServiceBookingAvailability","cancelMultiServiceBooking","markMultiServiceBookingAsPending","confirmMultiServiceBooking","declineMultiServiceBooking","bulkGetMultiServiceBookingAllowedActions","getMultiServiceBooking","addBookingsToMultiServiceBooking","removeBookingsFromMultiServiceBooking"]}