@wix/auto_sdk_bookings_services 1.0.68 → 1.0.70

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.
Files changed (29) hide show
  1. package/build/cjs/{bookings-services-v2-service-services.universal-Cy9SqUQp.d.ts → bookings-services-v2-service-services.universal-DYRSxPXw.d.ts} +835 -2
  2. package/build/cjs/index.d.ts +58 -24
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/cjs/index.typings.d.ts +48 -0
  5. package/build/cjs/index.typings.js +2946 -0
  6. package/build/cjs/index.typings.js.map +1 -0
  7. package/build/cjs/meta.d.ts +1 -1
  8. package/build/es/{bookings-services-v2-service-services.universal-Cy9SqUQp.d.mts → bookings-services-v2-service-services.universal-DYRSxPXw.d.mts} +835 -2
  9. package/build/es/index.d.mts +58 -24
  10. package/build/es/index.mjs.map +1 -1
  11. package/build/es/index.typings.d.mts +48 -0
  12. package/build/es/index.typings.mjs +2875 -0
  13. package/build/es/index.typings.mjs.map +1 -0
  14. package/build/es/meta.d.mts +1 -1
  15. package/build/internal/cjs/{bookings-services-v2-service-services.universal-Cy9SqUQp.d.ts → bookings-services-v2-service-services.universal-DYRSxPXw.d.ts} +835 -2
  16. package/build/internal/cjs/index.d.ts +58 -24
  17. package/build/internal/cjs/index.js.map +1 -1
  18. package/build/internal/cjs/index.typings.d.ts +48 -0
  19. package/build/internal/cjs/index.typings.js +2946 -0
  20. package/build/internal/cjs/index.typings.js.map +1 -0
  21. package/build/internal/cjs/meta.d.ts +1 -1
  22. package/build/internal/es/{bookings-services-v2-service-services.universal-Cy9SqUQp.d.mts → bookings-services-v2-service-services.universal-DYRSxPXw.d.mts} +835 -2
  23. package/build/internal/es/index.d.mts +58 -24
  24. package/build/internal/es/index.mjs.map +1 -1
  25. package/build/internal/es/index.typings.d.mts +48 -0
  26. package/build/internal/es/index.typings.mjs +2875 -0
  27. package/build/internal/es/index.typings.mjs.map +1 -0
  28. package/build/internal/es/meta.d.mts +1 -1
  29. package/package.json +2 -2
@@ -1,4 +1,4 @@
1
- import { SearchSpec, Search } from '@wix/sdk-types';
1
+ import { SearchSpec, Search, NonNullablePaths } from '@wix/sdk-types';
2
2
 
3
3
  /** The `service` object represents an offering that a business provides to its customers. */
4
4
  interface Service {
@@ -1604,6 +1604,8 @@ declare enum V2RequestedFields {
1604
1604
  /** When passed, `service.service_resources.resource_type.name` is returned. */
1605
1605
  RESOURCE_TYPE_DETAILS = "RESOURCE_TYPE_DETAILS"
1606
1606
  }
1607
+ /** @enumType */
1608
+ type V2RequestedFieldsWithLiterals = V2RequestedFields | 'UNKNOWN_REQUESTED_FIELD' | 'STAFF_MEMBER_DETAILS' | 'RESOURCE_TYPE_DETAILS';
1607
1609
  interface GetServiceResponse {
1608
1610
  /** Retrieved service. */
1609
1611
  service?: Service;
@@ -3410,6 +3412,119 @@ interface SiteCloned {
3410
3412
  /** Origin site id. */
3411
3413
  originMetaSiteId?: string;
3412
3414
  }
3415
+ type CreateServiceValidationErrors = {
3416
+ ruleName?: 'INVALID_FORM';
3417
+ } | {
3418
+ ruleName?: 'INVALID_CATEGORY';
3419
+ } | {
3420
+ ruleName?: 'INVALID_BOOKING_POLICY';
3421
+ } | {
3422
+ ruleName?: 'INVALID_SERVICE_TYPE';
3423
+ } | {
3424
+ ruleName?: 'INVALID_SERVICE_NAME';
3425
+ } | {
3426
+ ruleName?: 'INVALID_ONLINE_BOOKING';
3427
+ } | {
3428
+ ruleName?: 'INVALID_STAFF_MEMBER_IDS';
3429
+ } | {
3430
+ ruleName?: 'PAYMENT_REQUIRED';
3431
+ } | {
3432
+ ruleName?: 'INVALID_PAYMENT_TYPE';
3433
+ } | {
3434
+ ruleName?: 'INVALID_RATE';
3435
+ } | {
3436
+ ruleName?: 'INVALID_PAYMENT_OPTIONS';
3437
+ } | {
3438
+ ruleName?: 'INVALID_BUSINESS_LOCATIONS';
3439
+ } | {
3440
+ ruleName?: 'INVALID_LOCATIONS';
3441
+ } | {
3442
+ ruleName?: 'INVALID_BUSINESS_LOCATION';
3443
+ } | {
3444
+ ruleName?: 'INVALID_CUSTOM_LOCATION';
3445
+ } | {
3446
+ ruleName?: 'INVALID_CUSTOMER_LOCATION';
3447
+ } | {
3448
+ ruleName?: 'INVALID_UNKNOWN_LOCATION';
3449
+ } | {
3450
+ ruleName?: 'INVALID_MANUAL_APPROVAL_WITH_PRICING_PLANS';
3451
+ } | {
3452
+ ruleName?: 'INVALID_DEFAULT_CAPACITY';
3453
+ } | {
3454
+ ruleName?: 'INVALID_APPOINTMENT_CAPACITY';
3455
+ } | {
3456
+ ruleName?: 'INVALID_SESSION_DURATION';
3457
+ };
3458
+ type UpdateServiceValidationErrors = {
3459
+ ruleName?: 'INVALID_FORM';
3460
+ } | {
3461
+ ruleName?: 'INVALID_CATEGORY';
3462
+ } | {
3463
+ ruleName?: 'INVALID_BOOKING_POLICY';
3464
+ } | {
3465
+ ruleName?: 'INVALID_SERVICE_TYPE';
3466
+ } | {
3467
+ ruleName?: 'INVALID_SERVICE_NAME';
3468
+ } | {
3469
+ ruleName?: 'INVALID_ONLINE_BOOKING';
3470
+ } | {
3471
+ ruleName?: 'INVALID_STAFF_MEMBER_IDS';
3472
+ } | {
3473
+ ruleName?: 'PAYMENT_REQUIRED';
3474
+ } | {
3475
+ ruleName?: 'INVALID_PAYMENT_TYPE';
3476
+ } | {
3477
+ ruleName?: 'INVALID_RATE';
3478
+ } | {
3479
+ ruleName?: 'INVALID_PAYMENT_OPTIONS';
3480
+ } | {
3481
+ ruleName?: 'INVALID_BUSINESS_LOCATIONS';
3482
+ } | {
3483
+ ruleName?: 'INVALID_LOCATIONS';
3484
+ } | {
3485
+ ruleName?: 'INVALID_BUSINESS_LOCATION';
3486
+ } | {
3487
+ ruleName?: 'INVALID_CUSTOM_LOCATION';
3488
+ } | {
3489
+ ruleName?: 'INVALID_CUSTOMER_LOCATION';
3490
+ } | {
3491
+ ruleName?: 'INVALID_UNKNOWN_LOCATION';
3492
+ } | {
3493
+ ruleName?: 'INVALID_MANUAL_APPROVAL_WITH_PRICING_PLANS';
3494
+ } | {
3495
+ ruleName?: 'INVALID_DEFAULT_CAPACITY';
3496
+ } | {
3497
+ ruleName?: 'INVALID_APPOINTMENT_CAPACITY';
3498
+ } | {
3499
+ ruleName?: 'INVALID_SESSION_DURATION';
3500
+ };
3501
+ type QueryBookingFormsApplicationErrors = {
3502
+ code?: 'DEFAULT_BOOKING_FORM_NOT_FOUND';
3503
+ description?: string;
3504
+ data?: Record<string, any>;
3505
+ };
3506
+ type EnablePricingPlansForServiceApplicationErrors = {
3507
+ code?: 'INVALID_PRICING_PLAN';
3508
+ description?: string;
3509
+ data?: InvalidPricingPlan;
3510
+ } | {
3511
+ code?: 'SERVICE_DOES_NOT_SUPPORT_PRICING_PLANS';
3512
+ description?: string;
3513
+ data?: Record<string, any>;
3514
+ };
3515
+ type DisablePricingPlansForServiceApplicationErrors = {
3516
+ code?: 'INVALID_PRICING_PLAN';
3517
+ description?: string;
3518
+ data?: InvalidPricingPlan;
3519
+ };
3520
+ type SetCustomSlugApplicationErrors = {
3521
+ code?: 'SLUG_ALREADY_EXISTS';
3522
+ description?: string;
3523
+ data?: Record<string, any>;
3524
+ };
3525
+ type SetCustomSlugValidationErrors = {
3526
+ ruleName?: 'SLUG_CONTAINS_ILLEGAL_CHARACTERS';
3527
+ };
3413
3528
  interface BaseEventMetadata {
3414
3529
  /**
3415
3530
  * App instance ID.
@@ -3458,18 +3573,198 @@ interface ServiceCreatedEnvelope {
3458
3573
  entity: Service;
3459
3574
  metadata: EventMetadata;
3460
3575
  }
3576
+ /**
3577
+ * Triggered when a service is created.
3578
+ * @permissionScope Manage Stores
3579
+ * @permissionScopeId SCOPE.STORES.MANAGE-STORES
3580
+ * @permissionScope Read Bookings - Public Data
3581
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-PUBLIC
3582
+ * @permissionScope Manage Bookings Services and Settings
3583
+ * @permissionScopeId SCOPE.BOOKINGS.CONFIGURATION
3584
+ * @permissionScope Manage Bookings
3585
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
3586
+ * @permissionScope Read Bookings - Including Participants
3587
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-SENSITIVE
3588
+ * @permissionScope Read Bookings - all read permissions
3589
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.READ-BOOKINGS
3590
+ * @permissionScope Manage Bookings - all permissions
3591
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
3592
+ * @permissionId BOOKINGS.SERVICES_READ
3593
+ * @webhook
3594
+ * @eventType wix.bookings.services.v2.service_created
3595
+ * @slug created
3596
+ */
3597
+ declare function onServiceCreated(handler: (event: ServiceCreatedEnvelope) => void | Promise<void>): void;
3461
3598
  interface ServiceDeletedEnvelope {
3462
3599
  entity: Service;
3463
3600
  metadata: EventMetadata;
3464
3601
  }
3602
+ /**
3603
+ * Triggered when a service is deleted.
3604
+ * @permissionScope Manage Stores
3605
+ * @permissionScopeId SCOPE.STORES.MANAGE-STORES
3606
+ * @permissionScope Read Bookings - Public Data
3607
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-PUBLIC
3608
+ * @permissionScope Manage Bookings Services and Settings
3609
+ * @permissionScopeId SCOPE.BOOKINGS.CONFIGURATION
3610
+ * @permissionScope Manage Bookings
3611
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
3612
+ * @permissionScope Read Bookings - Including Participants
3613
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-SENSITIVE
3614
+ * @permissionScope Read Bookings - all read permissions
3615
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.READ-BOOKINGS
3616
+ * @permissionScope Manage Bookings - all permissions
3617
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
3618
+ * @permissionId BOOKINGS.SERVICES_READ
3619
+ * @webhook
3620
+ * @eventType wix.bookings.services.v2.service_deleted
3621
+ * @slug deleted
3622
+ */
3623
+ declare function onServiceDeleted(handler: (event: ServiceDeletedEnvelope) => void | Promise<void>): void;
3465
3624
  interface ServiceUpdatedEnvelope {
3466
3625
  entity: Service;
3467
3626
  metadata: EventMetadata;
3468
3627
  }
3628
+ /**
3629
+ * Triggered when a service is updated.
3630
+ * @permissionScope Manage Stores
3631
+ * @permissionScopeId SCOPE.STORES.MANAGE-STORES
3632
+ * @permissionScope Read Bookings - Public Data
3633
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-PUBLIC
3634
+ * @permissionScope Manage Bookings Services and Settings
3635
+ * @permissionScopeId SCOPE.BOOKINGS.CONFIGURATION
3636
+ * @permissionScope Manage Bookings
3637
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
3638
+ * @permissionScope Read Bookings - Including Participants
3639
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-SENSITIVE
3640
+ * @permissionScope Read Bookings - all read permissions
3641
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.READ-BOOKINGS
3642
+ * @permissionScope Manage Bookings - all permissions
3643
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
3644
+ * @permissionId BOOKINGS.SERVICES_READ
3645
+ * @webhook
3646
+ * @eventType wix.bookings.services.v2.service_updated
3647
+ * @slug updated
3648
+ */
3649
+ declare function onServiceUpdated(handler: (event: ServiceUpdatedEnvelope) => void | Promise<void>): void;
3650
+ type ServiceNonNullablePaths = `type` | `media.items` | `category._id` | `form._id` | `payment.fixed.price.value` | `payment.fixed.price.currency` | `payment.rateType` | `payment.pricingPlanIds` | `locations` | `locations.${number}.business._id` | `locations.${number}.business.name` | `locations.${number}.business.address.streetAddress.number` | `locations.${number}.business.address.streetAddress.name` | `locations.${number}.business.address.streetAddress.apt` | `locations.${number}.custom._id` | `locations.${number}._id` | `locations.${number}.type` | `bookingPolicy._id` | `bookingPolicy.customPolicyDescription.enabled` | `bookingPolicy.customPolicyDescription.description` | `bookingPolicy.limitEarlyBookingPolicy.enabled` | `bookingPolicy.limitEarlyBookingPolicy.earliestBookingInMinutes` | `bookingPolicy.limitLateBookingPolicy.enabled` | `bookingPolicy.limitLateBookingPolicy.latestBookingInMinutes` | `bookingPolicy.bookAfterStartPolicy.enabled` | `bookingPolicy.cancellationPolicy.enabled` | `bookingPolicy.cancellationPolicy.limitLatestCancellation` | `bookingPolicy.cancellationPolicy.latestCancellationInMinutes` | `bookingPolicy.reschedulePolicy.enabled` | `bookingPolicy.reschedulePolicy.limitLatestReschedule` | `bookingPolicy.reschedulePolicy.latestRescheduleInMinutes` | `bookingPolicy.waitlistPolicy.enabled` | `bookingPolicy.waitlistPolicy.capacity` | `bookingPolicy.waitlistPolicy.reservationTimeInMinutes` | `bookingPolicy.participantsPolicy.maxParticipantsPerBooking` | `bookingPolicy.resourcesPolicy.enabled` | `bookingPolicy.resourcesPolicy.autoAssignAllowed` | `bookingPolicy.cancellationFeePolicy.enabled` | `bookingPolicy.cancellationFeePolicy.cancellationWindows` | `bookingPolicy.cancellationFeePolicy.cancellationWindows.${number}.amount.value` | `bookingPolicy.cancellationFeePolicy.cancellationWindows.${number}.amount.currency` | `bookingPolicy.cancellationFeePolicy.cancellationWindows.${number}.percentage` | `bookingPolicy.saveCreditCardPolicy.enabled` | `schedule.availabilityConstraints.durations` | `schedule.availabilityConstraints.durations.${number}.minutes` | `schedule.availabilityConstraints.sessionDurations` | `schedule.availabilityConstraints.timeBetweenSessions` | `staffMemberIds` | `serviceResources` | `supportedSlugs` | `supportedSlugs.${number}.name` | `mainSlug.name` | `seoData.tags` | `seoData.tags.${number}.type` | `seoData.tags.${number}.children` | `seoData.tags.${number}.custom` | `seoData.tags.${number}.disabled` | `seoData.settings.preventAutoRedirect` | `seoData.settings.keywords` | `seoData.settings.keywords.${number}.term` | `seoData.settings.keywords.${number}.isMain`;
3651
+ /**
3652
+ * Creates a service.
3653
+ *
3654
+ *
3655
+ * ## Required fields
3656
+ *
3657
+ * When creating a service you must specify the following fields:
3658
+ * - `type`
3659
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/about-service-types) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/about-service-types)):
3660
+ * Whether it's an appointment-based service, class, or course.
3661
+ * - `name`: Service name that's displayed to customers.
3662
+ * - `onlineBooking`:
3663
+ * Settings determining whether customers can book online, whether the business
3664
+ * must manually confirm bookings, and whether customers can request to book an
3665
+ * appointment time slot that already has a booking request awaiting business
3666
+ * confirmation.
3667
+ * - `payment`
3668
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/about-service-payments) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/about-service-payments)):
3669
+ * How customers can pay when signing up for the service.
3670
+ *
3671
+ * ### Session durations
3672
+ *
3673
+ * Depending on which type of service you're creating, you may also need to specify
3674
+ * supported session durations.
3675
+ *
3676
+ * __Classes and courses__
3677
+ *
3678
+ * Don't specify `schedule.availabilityConstraints.sessionDurations`.
3679
+ *
3680
+ * __Appointment-based services without varied pricing based on session length__
3681
+ *
3682
+ * Specify the single supported session duration in the
3683
+ * `schedule.availabilityConstraints.sessionDurations` array.
3684
+ *
3685
+ * __Appointment-based services with varied pricing based on session length__
3686
+ *
3687
+ * - Specify all supported session durations in `schedule.availabilityConstraints.sessionDurations`.
3688
+ * - Note that Wix Bookings doesn't display these values to customers and
3689
+ * ignores them in pricing and availability calculations. Instead session
3690
+ * durations are retrieved from the relevant service *variants*
3691
+ * ([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)).
3692
+ * - It is mandatory to specify `schedule.availabilityConstraints.sessionDurations`,
3693
+ * even though these values are ignored.
3694
+ * @param service - Service to create.
3695
+ * @public
3696
+ * @requiredField service
3697
+ * @permissionId BOOKINGS.SERVICES_CREATE
3698
+ * @applicableIdentity APP
3699
+ * @returns Created service.
3700
+ * @fqn wix.bookings.services.v2.ServicesService.CreateService
3701
+ */
3702
+ declare function createService(service: Service): Promise<NonNullablePaths<Service, ServiceNonNullablePaths> & {
3703
+ __validationErrorsType?: CreateServiceValidationErrors;
3704
+ }>;
3705
+ /**
3706
+ * Creates multiple services.
3707
+ *
3708
+ *
3709
+ * See *Create Service*
3710
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/create-service) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/create-service))
3711
+ * for more details.
3712
+ * @param services - Services to create.
3713
+ * @public
3714
+ * @requiredField services
3715
+ * @permissionId BOOKINGS.SERVICES_CREATE
3716
+ * @applicableIdentity APP
3717
+ * @fqn wix.bookings.services.v2.ServicesService.BulkCreateServices
3718
+ */
3719
+ declare function bulkCreateServices(services: Service[], options?: BulkCreateServicesOptions): Promise<NonNullablePaths<BulkCreateServicesResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | {
3720
+ [P in ServiceNonNullablePaths]: `results.${number}.item.${P}`;
3721
+ }[ServiceNonNullablePaths] | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`>>;
3469
3722
  interface BulkCreateServicesOptions {
3470
3723
  /** Whether to return the created service objects. */
3471
3724
  returnEntity?: boolean;
3472
3725
  }
3726
+ /**
3727
+ * Retrieves a service.
3728
+ * @param serviceId - ID of the service to retrieve.
3729
+ * @public
3730
+ * @requiredField serviceId
3731
+ * @permissionId BOOKINGS.SERVICES_READ
3732
+ * @applicableIdentity APP
3733
+ * @applicableIdentity VISITOR
3734
+ * @returns Retrieved service.
3735
+ * @fqn wix.bookings.services.v2.ServicesService.GetService
3736
+ */
3737
+ declare function getService(serviceId: string): Promise<NonNullablePaths<Service, ServiceNonNullablePaths>>;
3738
+ /**
3739
+ * Updates a service.
3740
+ *
3741
+ *
3742
+ * Each time the service is updated, `revision` increments by 1. You must
3743
+ * include the number of the existing revision when updating the service.
3744
+ * This ensures you're working with the latest service information and
3745
+ * prevents unintended overwrites.
3746
+ *
3747
+ * ## Session durations
3748
+ *
3749
+ * Specify `schedule.availabilityConstraints.sessionDurations`
3750
+ * only if you want to update it for appointment-based services without varied
3751
+ * pricing based on session length. Don't specify `schedule.availabilityConstraints.sessionDurations`
3752
+ * for all other appointment-based services, classes, or courses. See *Create Service*
3753
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/create-service#session-durations) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/create-service#session-durations))
3754
+ * for more details.
3755
+ * @param _id - Service ID.
3756
+ * @public
3757
+ * @requiredField _id
3758
+ * @requiredField service
3759
+ * @requiredField service.revision
3760
+ * @permissionId BOOKINGS.SERVICES_UPDATE
3761
+ * @applicableIdentity APP
3762
+ * @returns Updated service.
3763
+ * @fqn wix.bookings.services.v2.ServicesService.UpdateService
3764
+ */
3765
+ declare function updateService(_id: string, service: NonNullablePaths<UpdateService, `revision`>): Promise<NonNullablePaths<Service, ServiceNonNullablePaths> & {
3766
+ __validationErrorsType?: UpdateServiceValidationErrors;
3767
+ }>;
3473
3768
  interface UpdateService {
3474
3769
  /**
3475
3770
  * Service ID.
@@ -3607,6 +3902,27 @@ interface UpdateService {
3607
3902
  */
3608
3903
  revision?: string | null;
3609
3904
  }
3905
+ /**
3906
+ * Updates up to 100 services.
3907
+ *
3908
+ *
3909
+ * See *Update Service*
3910
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/update-service) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/update-service))
3911
+ * for more details.
3912
+ *
3913
+ * The call succeeds even if one or more individual services can't be updated.
3914
+ * Information about failures is returned in `bulkActionMetadata`.
3915
+ * @public
3916
+ * @requiredField options.services.service
3917
+ * @requiredField options.services.service._id
3918
+ * @requiredField options.services.service.revision
3919
+ * @permissionId BOOKINGS.SERVICES_UPDATE
3920
+ * @applicableIdentity APP
3921
+ * @fqn wix.bookings.services.v2.ServicesService.BulkUpdateServices
3922
+ */
3923
+ declare function bulkUpdateServices(options?: NonNullablePaths<BulkUpdateServicesOptions, `services.${number}.service` | `services.${number}.service._id` | `services.${number}.service.revision`>): Promise<NonNullablePaths<BulkUpdateServicesResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | {
3924
+ [P in ServiceNonNullablePaths]: `results.${number}.item.${P}`;
3925
+ }[ServiceNonNullablePaths] | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`>>;
3610
3926
  interface BulkUpdateServicesOptions {
3611
3927
  /**
3612
3928
  * Services to update.
@@ -3616,10 +3932,49 @@ interface BulkUpdateServicesOptions {
3616
3932
  /** Whether to include the updated services in the response. Default: `false` */
3617
3933
  returnEntity?: boolean;
3618
3934
  }
3935
+ /**
3936
+ * Updates multiple services by filter.
3937
+ *
3938
+ *
3939
+ * Refer to the supported filters article
3940
+ * ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/filtering-and-sorting#filtering))
3941
+ * for more details.
3942
+ *
3943
+ * See *Update Service*
3944
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/update-service) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/update-service))
3945
+ * for more details about updating a service.
3946
+ *
3947
+ * The call succeeds even if one or more individual services can't be updated.
3948
+ * Information about failures is returned in `bulkActionMetadata`.
3949
+ * @param filter - Filter to identify the services to update.
3950
+ * @public
3951
+ * @requiredField filter
3952
+ * @requiredField options
3953
+ * @requiredField options.service
3954
+ * @permissionId BOOKINGS.SERVICES_UPDATE
3955
+ * @applicableIdentity APP
3956
+ * @fqn wix.bookings.services.v2.ServicesService.BulkUpdateServicesByFilter
3957
+ */
3958
+ declare function bulkUpdateServicesByFilter(filter: Record<string, any>, options: NonNullablePaths<BulkUpdateServicesByFilterOptions, `service`>): Promise<NonNullablePaths<BulkUpdateServicesByFilterResponse, `jobId`>>;
3619
3959
  interface BulkUpdateServicesByFilterOptions {
3620
3960
  /** Service to update. */
3621
3961
  service: Service;
3622
3962
  }
3963
+ /**
3964
+ * Deletes a service.
3965
+ *
3966
+ *
3967
+ * Specify `{"preserveFutureSessionsWithParticipants": true}` to retain all
3968
+ * future sessions for the service. By default, all future sessions are canceled.
3969
+ * @param serviceId - ID of the service to delete.
3970
+ * @public
3971
+ * @requiredField serviceId
3972
+ * @param options - Allows you to configure how to handle the deleted service's future sessions and how to notify the sessions participants.
3973
+ * @permissionId BOOKINGS.SERVICES_DELETE
3974
+ * @applicableIdentity APP
3975
+ * @fqn wix.bookings.services.v2.ServicesService.DeleteService
3976
+ */
3977
+ declare function deleteService(serviceId: string, options?: DeleteServiceOptions): Promise<void>;
3623
3978
  interface DeleteServiceOptions {
3624
3979
  /**
3625
3980
  * Whether to preserve future sessions with participants.
@@ -3633,6 +3988,26 @@ interface DeleteServiceOptions {
3633
3988
  */
3634
3989
  participantNotification?: ParticipantNotification;
3635
3990
  }
3991
+ /**
3992
+ * Deletes multiple services.
3993
+ *
3994
+ *
3995
+ * See *Delete Service*
3996
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/delete-service) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/delete-service))
3997
+ * for more details about deleting a service.
3998
+ *
3999
+ * The call succeeds even if one or more individual services can't be deleted.
4000
+ * Information about failures is returned in `bulkActionMetadata`.
4001
+ * @param ids - IDs of the services to delete.
4002
+ * @public
4003
+ * @requiredField ids
4004
+ * @permissionId BOOKINGS.SERVICES_DELETE
4005
+ * @applicableIdentity APP
4006
+ * @fqn wix.bookings.services.v2.ServicesService.BulkDeleteServices
4007
+ */
4008
+ declare function bulkDeleteServices(ids: string[], options?: BulkDeleteServicesOptions): Promise<NonNullablePaths<BulkDeleteServicesResponse, `results` | `results.${number}.itemMetadata.originalIndex` | `results.${number}.itemMetadata.success` | `results.${number}.itemMetadata.error.code` | `results.${number}.itemMetadata.error.description` | {
4009
+ [P in ServiceNonNullablePaths]: `results.${number}.item.${P}`;
4010
+ }[ServiceNonNullablePaths] | `bulkActionMetadata.totalSuccesses` | `bulkActionMetadata.totalFailures` | `bulkActionMetadata.undetailedFailures`>>;
3636
4011
  interface BulkDeleteServicesOptions {
3637
4012
  /**
3638
4013
  * Whether to preserve future sessions with participants.
@@ -3646,6 +4021,31 @@ interface BulkDeleteServicesOptions {
3646
4021
  */
3647
4022
  participantNotification?: ParticipantNotification;
3648
4023
  }
4024
+ /**
4025
+ * Deletes multiple services by filter.
4026
+ *
4027
+ *
4028
+ * See *Delete Service*
4029
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/delete-service) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/delete-service))
4030
+ * for more details about deleting a service.
4031
+ *
4032
+ * The call succeeds even if one or more individual services can't be deleted.
4033
+ * Information about failures is returned in `bulkActionMetadata`.
4034
+ *
4035
+ * Refer to the supported filters article
4036
+ * ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/filtering-and-sorting#filtering))
4037
+ * for more details.
4038
+ *
4039
+ * To learn about working with filters in general, see
4040
+ * [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters).
4041
+ * @param filter - Filter to identify the services that need to be deleted.
4042
+ * @public
4043
+ * @requiredField filter
4044
+ * @permissionId BOOKINGS.SERVICES_DELETE
4045
+ * @applicableIdentity APP
4046
+ * @fqn wix.bookings.services.v2.ServicesService.BulkDeleteServicesByFilter
4047
+ */
4048
+ declare function bulkDeleteServicesByFilter(filter: Record<string, any>, options?: BulkDeleteServicesByFilterOptions): Promise<NonNullablePaths<BulkDeleteServicesByFilterResponse, `jobId`>>;
3649
4049
  interface BulkDeleteServicesByFilterOptions {
3650
4050
  /**
3651
4051
  * Whether to preserve future sessions with participants.
@@ -3656,6 +4056,30 @@ interface BulkDeleteServicesByFilterOptions {
3656
4056
  /** Whether to notify participants about the change and an optional custom message. */
3657
4057
  participantNotification?: ParticipantNotification;
3658
4058
  }
4059
+ /**
4060
+ * Creates a query to retrieve a list of `service` objects.
4061
+ *
4062
+ * The `queryServices()` function builds a query to retrieve a list of `service` objects and returns a `ServicesQueryBuilder` object.
4063
+ *
4064
+ * The returned object contains the query definition, which is typically used to run the query using the [find()](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/services-query-builder/find) function.
4065
+ *
4066
+ * You can refine the query by chaining `ServicesQueryBuilder` functions onto the query. `ServicesQueryBuilder` functions enable you to sort, filter, and control the results that `queryServices()` returns.
4067
+ *
4068
+ * `queryServices()` runs with the following `ServicesQueryBuilder` defaults that you can override:
4069
+ *
4070
+ * + `limit` is `100`.
4071
+ * + Sorted by `createdDate` in ascending order.
4072
+ *
4073
+ * The functions that are chained to `queryServices()` are applied in the order they are called. For example, if you apply `ascending("category.name")` and then `ascending("name")`, the results are sorted first by `category.name`, and then, if there are multiple results with the same `category.name`, the items are sorted by `name`.
4074
+ *
4075
+ * The following `ServicesQueryBuilder` functions are supported for the `queryServices()` function. For a full description of the `service` object, see the object returned for the [items](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/services-query-result/items) property in `ServicesQueryResult`.
4076
+ * @public
4077
+ * @permissionId BOOKINGS.SERVICES_READ
4078
+ * @applicableIdentity APP
4079
+ * @applicableIdentity VISITOR
4080
+ * @fqn wix.bookings.services.v2.ServicesService.QueryServices
4081
+ */
4082
+ declare function queryServices(): ServicesQueryBuilder;
3659
4083
  interface QueryOffsetResult {
3660
4084
  currentPage: number | undefined;
3661
4085
  totalPages: number | undefined;
@@ -3911,6 +4335,113 @@ type ServiceSearch = {
3911
4335
  */
3912
4336
  timeZone?: CommonSearchWithEntityContext['timeZone'] | null;
3913
4337
  };
4338
+ /**
4339
+ * Retrieves a list of up to 100 *booking policies*
4340
+ * ([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)),
4341
+ * and information about the services that are connected to them,
4342
+ * given the provided filtering, paging, and sorting.
4343
+ *
4344
+ * ## Defaults
4345
+ *
4346
+ * Query Policies has the following default settings, which you can override:
4347
+ *
4348
+ * + Sorted by `id` in ascending order.
4349
+ * + `cursorPaging.limit` set to `100`.
4350
+ *
4351
+ * ## Filters
4352
+ *
4353
+ * For a complete list of supported filters, refer to **Booking Policies API: Supported Filters**
4354
+ * ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/supported-filters)).
4355
+ *
4356
+ * When using date filters, you must use
4357
+ * [UTC time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time).
4358
+ *
4359
+ * ## Returned services
4360
+ *
4361
+ * If a booking policy is connected to more than 5 services, only a subset of
4362
+ * those services is returned. The `bookingPolicies.totalServiceCount` values
4363
+ * indicate the total number of services linked to each policy. You can call *Search Services*
4364
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/search-services) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/search-services))
4365
+ * and specify the relevant policy ID in the filter to retrieve all services
4366
+ * connected to the booking policy.
4367
+ *
4368
+ * ## See also
4369
+ *
4370
+ * To learn about working with *Query* endpoints, see
4371
+ * [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language)
4372
+ * and [Sorting and Paging](https://dev.wix.com/docs/rest/articles/getting-started/sorting-and-paging).
4373
+ * @param query - Information about filters, paging, and sorting. See the article about
4374
+ * booking policy filters
4375
+ * ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/policies/booking-policies/supported-filters))
4376
+ * for all supported filters and sorting options.
4377
+ * @public
4378
+ * @documentationMaturity preview
4379
+ * @requiredField query
4380
+ * @permissionId BOOKINGS.BOOKING_POLICY_READ
4381
+ * @permissionId BOOKINGS.SERVICES_READ
4382
+ * @applicableIdentity APP
4383
+ * @applicableIdentity VISITOR
4384
+ * @fqn wix.bookings.services.v2.ServicesService.QueryPolicies
4385
+ */
4386
+ declare function queryPolicies(query: CursorQuery): Promise<NonNullablePaths<QueryPoliciesResponse, `bookingPolicies` | `bookingPolicies.${number}.bookingPolicy._id` | `bookingPolicies.${number}.bookingPolicy.customPolicyDescription.enabled` | `bookingPolicies.${number}.bookingPolicy.customPolicyDescription.description` | `bookingPolicies.${number}.bookingPolicy.limitEarlyBookingPolicy.enabled` | `bookingPolicies.${number}.bookingPolicy.limitEarlyBookingPolicy.earliestBookingInMinutes` | `bookingPolicies.${number}.bookingPolicy.limitLateBookingPolicy.enabled` | `bookingPolicies.${number}.bookingPolicy.limitLateBookingPolicy.latestBookingInMinutes` | `bookingPolicies.${number}.bookingPolicy.bookAfterStartPolicy.enabled` | `bookingPolicies.${number}.bookingPolicy.cancellationPolicy.enabled` | `bookingPolicies.${number}.bookingPolicy.cancellationPolicy.limitLatestCancellation` | `bookingPolicies.${number}.bookingPolicy.cancellationPolicy.latestCancellationInMinutes` | `bookingPolicies.${number}.bookingPolicy.reschedulePolicy.enabled` | `bookingPolicies.${number}.bookingPolicy.reschedulePolicy.limitLatestReschedule` | `bookingPolicies.${number}.bookingPolicy.reschedulePolicy.latestRescheduleInMinutes` | `bookingPolicies.${number}.bookingPolicy.waitlistPolicy.enabled` | `bookingPolicies.${number}.bookingPolicy.waitlistPolicy.capacity` | `bookingPolicies.${number}.bookingPolicy.waitlistPolicy.reservationTimeInMinutes` | `bookingPolicies.${number}.bookingPolicy.participantsPolicy.maxParticipantsPerBooking` | `bookingPolicies.${number}.bookingPolicy.resourcesPolicy.enabled` | `bookingPolicies.${number}.bookingPolicy.resourcesPolicy.autoAssignAllowed` | `bookingPolicies.${number}.bookingPolicy.cancellationFeePolicy.enabled` | `bookingPolicies.${number}.bookingPolicy.saveCreditCardPolicy.enabled` | {
4387
+ [P in ServiceNonNullablePaths]: `bookingPolicies.${number}.connectedServices.${number}.${P}`;
4388
+ }[ServiceNonNullablePaths] | `bookingPolicies.${number}.totalServiceCount`>>;
4389
+ /**
4390
+ * Retrieves a list of up to 100 *booking forms*
4391
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/forms/introduction) | [REST](https://dev.wix.com/docs/rest/crm/forms/form-schemas/form-object)),
4392
+ * and information about the services that are connected to them,
4393
+ * given the provided filtering, paging, and sorting.
4394
+ *
4395
+ *
4396
+ * ## Defaults
4397
+ *
4398
+ * Query Booking Forms has the following default settings, which you can override:
4399
+ *
4400
+ * + Sorted by `id` in ascending order.
4401
+ * + `cursorPaging.limit` set to `100`.
4402
+ *
4403
+ * ## Filters
4404
+ *
4405
+ * For a complete list of supported filters, refer to **Forms API: Supported Filters**
4406
+ * ([REST](https://dev.wix.com/docs/rest/crm/forms/form-schemas/form-object)).
4407
+ *
4408
+ * When using date filters, you must use
4409
+ * [UTC time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time).
4410
+ *
4411
+ * ## Returned services
4412
+ *
4413
+ * If a booking policy is connected to more than 5 services, only a subset of
4414
+ * these service IDs and names is returned. The `bookingForms.totalServiceCount`
4415
+ * values indicate the total number of services linked to each form. You can call *Query Services*
4416
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/query-services) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/query-services))
4417
+ * and specify the relevant form ID in the filter to retrieve all services
4418
+ * connected to the booking form.
4419
+ *
4420
+ * ## Default booking forms
4421
+ *
4422
+ * By default, all Wix Bookings services use a standard booking form. To retrieve
4423
+ * a site's default booking form with Query Booking Forms, specify
4424
+ * `{"conditionalFields": ["DEFAULT_BOOKING_FORM"]}`.
4425
+ *
4426
+ * ## See also
4427
+ *
4428
+ * To learn about working with *Query* endpoints, see
4429
+ * [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language)
4430
+ * and [Sorting and Paging](https://dev.wix.com/docs/rest/articles/getting-started/sorting-and-paging).
4431
+ * @param query - Information about filters, paging, and sorting. See the article about
4432
+ * form filters ([REST](https://dev.wix.com/docs/rest/crm/forms/form-schemas/form-object))
4433
+ * for all supported filters and sorting options.
4434
+ * @public
4435
+ * @requiredField query
4436
+ * @permissionId BOOKINGS.SERVICE_BOOKING_FORMS_READ
4437
+ * @permissionId BOOKINGS.SERVICES_READ
4438
+ * @applicableIdentity APP
4439
+ * @applicableIdentity VISITOR
4440
+ * @fqn wix.bookings.services.v2.ServicesService.QueryBookingForms
4441
+ */
4442
+ declare function queryBookingForms(query: CursorQuery, options?: QueryBookingFormsOptions): Promise<NonNullablePaths<QueryBookingFormsResponse, `bookingForms` | `bookingForms.${number}.formDetails.formId` | `bookingForms.${number}.totalServiceCount` | `defaultBookingForm.formDetails.formId` | `defaultBookingForm.connectedServices` | `defaultBookingForm.totalServiceCount`> & {
4443
+ __applicationErrorsType?: QueryBookingFormsApplicationErrors;
4444
+ }>;
3914
4445
  interface QueryBookingFormsOptions {
3915
4446
  /**
3916
4447
  * Conditional fields to return.
@@ -3918,6 +4449,23 @@ interface QueryBookingFormsOptions {
3918
4449
  */
3919
4450
  conditionalFields?: RequestedFieldsWithLiterals[];
3920
4451
  }
4452
+ /**
4453
+ * Counts how many services match the given filter.
4454
+ *
4455
+ *
4456
+ * Refer to the supported filters article
4457
+ * ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/filtering-and-sorting#filtering))
4458
+ * for more details.
4459
+ *
4460
+ * To learn about working with filters in general, see
4461
+ * [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters)
4462
+ * @public
4463
+ * @permissionId BOOKINGS.SERVICES_COUNT
4464
+ * @applicableIdentity APP
4465
+ * @applicableIdentity VISITOR
4466
+ * @fqn wix.bookings.services.v2.ServicesService.CountServices
4467
+ */
4468
+ declare function countServices(options?: CountServicesOptions): Promise<NonNullablePaths<CountServicesResponse, `count`>>;
3921
4469
  interface CountServicesOptions {
3922
4470
  /**
3923
4471
  * Query filter to base the count on. See supported filters
@@ -3926,14 +4474,141 @@ interface CountServicesOptions {
3926
4474
  */
3927
4475
  filter?: Record<string, any> | null;
3928
4476
  }
4477
+ /**
4478
+ * Retrieves 3 separate lists of business, custom, and customer *locations*
4479
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/business-tools/locations/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/locations/introduction)),
4480
+ * given the provided filtering, and whether each location is connected to at
4481
+ * least one of the site's services.
4482
+ *
4483
+ *
4484
+ * ## Defaults
4485
+ *
4486
+ * Query Locations has the following default setting, which you can't override:
4487
+ * Sorted by `id` in ascending order.
4488
+ *
4489
+ * ## Filters
4490
+ *
4491
+ * For a complete list of supported filters, refer to the `location` object
4492
+ * ([REST](https://dev.wix.com/docs/rest/business-management/locations/location-object)).
4493
+ *
4494
+ * When using date filters, you must use
4495
+ * [UTC time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time).
4496
+ *
4497
+ * ## See also
4498
+ *
4499
+ * To learn about working with *Query* endpoints, see
4500
+ * [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language)
4501
+ * and [Sorting and Paging](https://dev.wix.com/docs/rest/articles/getting-started/sorting-and-paging).
4502
+ * @public
4503
+ * @documentationMaturity preview
4504
+ * @permissionId BOOKINGS.SERVICES_READ
4505
+ * @applicableIdentity APP
4506
+ * @applicableIdentity VISITOR
4507
+ * @fqn wix.bookings.services.v2.ServicesService.QueryLocations
4508
+ */
4509
+ declare function queryLocations(options?: QueryLocationsOptions): Promise<NonNullablePaths<QueryLocationsResponse, `businessLocations.exists` | `businessLocations.locations` | `businessLocations.locations.${number}.business._id` | `businessLocations.locations.${number}.business.name` | `businessLocations.locations.${number}.business.address.streetAddress.number` | `businessLocations.locations.${number}.business.address.streetAddress.name` | `businessLocations.locations.${number}.business.address.streetAddress.apt` | `businessLocations.locations.${number}.custom._id` | `businessLocations.locations.${number}._id` | `businessLocations.locations.${number}.type` | `customLocations.exists` | `customerLocations.exists`>>;
3929
4510
  interface QueryLocationsOptions {
3930
4511
  /** Filter. */
3931
4512
  filter?: QueryLocationsFilter;
3932
4513
  }
4514
+ /**
4515
+ * Retrieves a list of service *categories*
4516
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/categories/setup) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/categories-v2/introduction)),
4517
+ * given the provided filtering.
4518
+ *
4519
+ *
4520
+ * ## Defaults
4521
+ *
4522
+ * Query Categories has the following default setting, which you can't override:
4523
+ * Sorted by `id` in ascending order.
4524
+ *
4525
+ * ## Filters
4526
+ *
4527
+ * For a complete list of supported filters, refer to the supported filters article
4528
+ * ([REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/filtering-and-sorting#filtering)).
4529
+ *
4530
+ * When using date filters, you must use
4531
+ * [UTC time](https://en.wikipedia.org/wiki/Coordinated_Universal_Time).
4532
+ *
4533
+ * ## See also
4534
+ *
4535
+ * To learn about working with *Query* endpoints, see
4536
+ * [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language)
4537
+ * and [Sorting and Paging](https://dev.wix.com/docs/rest/articles/getting-started/sorting-and-paging).
4538
+ * @public
4539
+ * @documentationMaturity preview
4540
+ * @permissionId BOOKINGS.SERVICES_READ
4541
+ * @applicableIdentity APP
4542
+ * @applicableIdentity VISITOR
4543
+ * @fqn wix.bookings.services.v2.ServicesService.QueryCategories
4544
+ */
4545
+ declare function queryCategories(options?: QueryCategoriesOptions): Promise<NonNullablePaths<QueryCategoriesResponse, `categories` | `categories.${number}._id`>>;
3933
4546
  interface QueryCategoriesOptions {
3934
4547
  /** Filter. */
3935
4548
  filter?: QueryCategoriesFilter;
3936
4549
  }
4550
+ /**
4551
+ * Replaces the list of the *locations*
4552
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/business-tools/locations/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/locations/introduction))
4553
+ * where the business offers the service.
4554
+ *
4555
+ *
4556
+ * ## Consequences for customers
4557
+ *
4558
+ * Removing a service location may impact existing sessions and their
4559
+ * participants. If you remove at least one service location, you must
4560
+ * specify `removedLocationSessionsAction` to indicate what happens to all
4561
+ * future sessions scheduled at this location.
4562
+ *
4563
+ * - **Keep existing location**: If you want to retain future sessions at their
4564
+ * originally scheduled location, specify
4565
+ * `{"removedLocationSessionsAction.action": "KEEP_AT_CURRENT_LOCATION"}`.
4566
+ * This ensures nothing changes for the customer, but the business must be
4567
+ * able to provide access to the removed location in the future.
4568
+ * - **Update location**: If you want to update the location for future sessions
4569
+ * scheduled at the removed location, specify
4570
+ * `{"removedLocationSessionsAction.action": "MOVE_TO_LOCATION"}` and
4571
+ * `moveToLocationOptions.newLocation`.
4572
+ *
4573
+ * You can't mix and match to keep some sessions at the previous location while
4574
+ * moving other sessions to an updated location.
4575
+ *
4576
+ * Past session details aren't changed, no matter which option you choose for
4577
+ * future sessions.
4578
+ *
4579
+ * Future sessions scheduled for a location defined by the customer are also not
4580
+ * updated.
4581
+ *
4582
+ * ## Specify location details
4583
+ *
4584
+ * Depending on whether the new or updated location is a business or custom location,
4585
+ * you need to specify different fields.
4586
+ *
4587
+ * - **Business location**: Specify the relevant *location ID*
4588
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/business-tools/locations/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/locations/introduction))
4589
+ * in `locations.business.id`.
4590
+ * - **Custom location**: Specify the complete address object as
4591
+ * `locations.custom.address`.
4592
+ *
4593
+ * ## Participant notifications
4594
+ *
4595
+ * You can specify a `participantNotification.message` that's immediately send
4596
+ * to all customers who had booked at a changed location. Ensure
4597
+ * `participantNotification.notifyParticipants` is set to `true` to send the
4598
+ * message.
4599
+ * @param serviceId - ID of the service.
4600
+ * @param locations - List of locations replacing existing service locations. Omitting an existing location removes it from the service. Specify `removedLocationSessionsAction` to determine the handling of future sessions scheduled at that location.
4601
+ * @public
4602
+ * @documentationMaturity preview
4603
+ * @requiredField locations
4604
+ * @requiredField serviceId
4605
+ * @permissionId BOOKINGS.SERVICES_LOCATIONS_SET
4606
+ * @applicableIdentity APP
4607
+ * @fqn wix.bookings.services.v2.ServicesService.SetServiceLocations
4608
+ */
4609
+ declare function setServiceLocations(serviceId: string, locations: Location[], options?: SetServiceLocationsOptions): Promise<NonNullablePaths<SetServiceLocationsResponse, {
4610
+ [P in ServiceNonNullablePaths]: `service.${P}`;
4611
+ }[ServiceNonNullablePaths]>>;
3937
4612
  interface SetServiceLocationsOptions {
3938
4613
  /**
3939
4614
  * The action to perform on sessions currently set to a removed location. For
@@ -3947,6 +4622,54 @@ interface SetServiceLocationsOptions {
3947
4622
  */
3948
4623
  participantNotification?: ParticipantNotification;
3949
4624
  }
4625
+ /**
4626
+ * Adds a list of *pricing plan IDs*
4627
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/pricing-plans/plans/introduction) | [REST](https://dev.wix.com/api/rest/wix-pricing-plans/pricing-plans/plans/plan-object))
4628
+ * to a service's `payment.pricingPlanIds` array.
4629
+ *
4630
+ *
4631
+ * The call doesn't validate whether the service's `payment.options.pricingPlan`
4632
+ * is set to `true`. If it's set to `false`, customers aren't able to pay
4633
+ * for their bookings using pricing plans. You can call *Update Service*
4634
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/update-service) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/update-service))
4635
+ * to change a service's supported payment methods.
4636
+ * @param serviceId - ID of the service to update.
4637
+ * @param pricingPlanIds - IDs of the *pricing plans*
4638
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/pricing-plans/plans/introduction) | [REST](https://dev.wix.com/api/rest/wix-pricing-plans/pricing-plans/plans/plan-object))
4639
+ * to add to the service's `payment.pricingPlanIds` array.
4640
+ * @public
4641
+ * @requiredField pricingPlanIds
4642
+ * @requiredField serviceId
4643
+ * @permissionId BOOKINGS.SERVICES_PRICING_PLANS_ADD
4644
+ * @applicableIdentity APP
4645
+ * @fqn wix.bookings.services.v2.ServicesService.EnablePricingPlansForService
4646
+ */
4647
+ declare function enablePricingPlansForService(serviceId: string, pricingPlanIds: string[]): Promise<NonNullablePaths<EnablePricingPlansForServiceResponse, {
4648
+ [P in ServiceNonNullablePaths]: `service.${P}`;
4649
+ }[ServiceNonNullablePaths]> & {
4650
+ __applicationErrorsType?: EnablePricingPlansForServiceApplicationErrors;
4651
+ }>;
4652
+ /**
4653
+ * Removes a list of *pricing plan IDs*
4654
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/pricing-plans/plans/introduction) | [REST](https://dev.wix.com/api/rest/wix-pricing-plans/pricing-plans/plans/plan-object))
4655
+ * from a service's `payment.pricingPlanIds` array.
4656
+ *
4657
+ *
4658
+ * If you remove all pricing plan IDs from `payment.pricingPlanIds` and the
4659
+ * service supports only payments by pricing plan, customers will no longer be
4660
+ * able to book the service, as they will have no payment options available.
4661
+ * @param serviceId - ID of the service to update.
4662
+ * @public
4663
+ * @requiredField serviceId
4664
+ * @permissionId BOOKINGS.SERVICES_PRICING_PLANS_REMOVE
4665
+ * @applicableIdentity APP
4666
+ * @fqn wix.bookings.services.v2.ServicesService.DisablePricingPlansForService
4667
+ */
4668
+ declare function disablePricingPlansForService(serviceId: string, options?: DisablePricingPlansForServiceOptions): Promise<NonNullablePaths<DisablePricingPlansForServiceResponse, {
4669
+ [P in ServiceNonNullablePaths]: `service.${P}`;
4670
+ }[ServiceNonNullablePaths]> & {
4671
+ __applicationErrorsType?: DisablePricingPlansForServiceApplicationErrors;
4672
+ }>;
3950
4673
  interface DisablePricingPlansForServiceOptions {
3951
4674
  /**
3952
4675
  * IDs of the *pricing plans*
@@ -3957,6 +4680,27 @@ interface DisablePricingPlansForServiceOptions {
3957
4680
  */
3958
4681
  pricingPlanIds?: string[];
3959
4682
  }
4683
+ /**
4684
+ * Sets a new active slug for the service.
4685
+ *
4686
+ *
4687
+ * The call fails if at least one of these conditions is met:
4688
+ * - The slug doesn't adheres to the supported format.
4689
+ * - Another service is currently using the slug.
4690
+ * - Another service has used the slug in the past.
4691
+ * @param serviceId - ID of the service for which to update the active slug.
4692
+ * @public
4693
+ * @requiredField serviceId
4694
+ * @permissionId BOOKINGS.SERVICES_CUSTOM_SLUGS_SET
4695
+ * @applicableIdentity APP
4696
+ * @fqn wix.bookings.services.v2.ServicesService.SetCustomSlug
4697
+ */
4698
+ declare function setCustomSlug(serviceId: string, options?: SetCustomSlugOptions): Promise<NonNullablePaths<SetCustomSlugResponse, `slug.name` | {
4699
+ [P in ServiceNonNullablePaths]: `service.${P}`;
4700
+ }[ServiceNonNullablePaths]> & {
4701
+ __applicationErrorsType?: SetCustomSlugApplicationErrors;
4702
+ __validationErrorsType?: SetCustomSlugValidationErrors;
4703
+ }>;
3960
4704
  interface SetCustomSlugOptions {
3961
4705
  /**
3962
4706
  * Slug to set as the active service slug.
@@ -3964,6 +4708,24 @@ interface SetCustomSlugOptions {
3964
4708
  */
3965
4709
  slug?: string;
3966
4710
  }
4711
+ /**
4712
+ * Checks whether a custom slug is validate for the service.
4713
+ *
4714
+ *
4715
+ * The checks include:
4716
+ * - The slug adheres to the supported format.
4717
+ * - No other service is currently using the slug.
4718
+ * - No other service has used the slug in the past.
4719
+ *
4720
+ * The call fails if at least one of the checks fails.
4721
+ * @param serviceId - IO of the service to check custom slug validity for.
4722
+ * @public
4723
+ * @requiredField serviceId
4724
+ * @permissionId BOOKINGS.SERVICES_CUSTOM_SLUGS_SET
4725
+ * @applicableIdentity APP
4726
+ * @fqn wix.bookings.services.v2.ServicesService.ValidateSlug
4727
+ */
4728
+ declare function validateSlug(serviceId: string, options?: ValidateSlugOptions): Promise<NonNullablePaths<ValidateSlugResponse, `valid` | `errors`>>;
3967
4729
  interface ValidateSlugOptions {
3968
4730
  /**
3969
4731
  * Custom slug to validate.
@@ -3971,5 +4733,76 @@ interface ValidateSlugOptions {
3971
4733
  */
3972
4734
  slug?: string;
3973
4735
  }
4736
+ /**
4737
+ * Clones a service.
4738
+ *
4739
+ *
4740
+ * ## Connected entities
4741
+ *
4742
+ * By default, not all entities connected to the service are cloned.
4743
+ *
4744
+ * ### Schedule
4745
+ *
4746
+ * Wix Bookings automatically creates a new active *schedule*
4747
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/calendar/schedules/introduction) | [REST](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction))
4748
+ * for the cloned service. If Wix Bookings can't create this schedule, the
4749
+ * Clone Service* call fails.
4750
+ *
4751
+ * - __For appointment-based services__: Future appointments aren't added to the
4752
+ * cloned service's schedule. Use the *Events API*
4753
+ * ([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))
4754
+ * to add them as needed.
4755
+ * - __For classes and courses__: Future one-time events aren't added to the
4756
+ * cloned service's schedule, while future recurring events are added
4757
+ * asynchronously. The *Clone Service* call always succeeds, whether or not
4758
+ * recurring events are added.
4759
+ * If the response includes `RECURRING_EVENTS` in the `errors` array, it means the
4760
+ * cloned service doesn't have future recurring events, even though the original
4761
+ * service does. You can either delete the cloned service and try again or use
4762
+ * the *Events API*
4763
+ * ([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))
4764
+ * to add missing events to the schedule.
4765
+ *
4766
+ * Wix Bookings never adds past events to the cloned service's schedule.
4767
+ *
4768
+ * ### Service options and variants
4769
+ *
4770
+ * If the original service has *variants*
4771
+ * ([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)),
4772
+ * they're cloned asynchronously. The *Clone Service* call always succeeds,
4773
+ * regardless of whether variants were cloned.
4774
+ *
4775
+ * If the response includes `OPTIONS_AND_VARIANTS` in the `errors` array, the cloned
4776
+ * service doesn't have variants, even though the original service does. You can
4777
+ * delete the cloned service and call *Clone Service* again, or use the
4778
+ * _Service Options And Variants API_
4779
+ * ([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))
4780
+ * to add variants.
4781
+ *
4782
+ * ### Booking form
4783
+ *
4784
+ * The original service's booking form isn't cloned, whether it's
4785
+ * the default or a custom booking form.
4786
+ *
4787
+ * ### Pricing plans
4788
+ *
4789
+ * If the original service's accepts payments via *pricing plans*
4790
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/pricing-plans/plans/introduction) | [REST](https://dev.wix.com/docs/rest/business-solutions/pricing-plans/pricing-plans/plans/introduction)),
4791
+ * the cloned service's `payment.options.pricingPlan` is also set to `true`. To
4792
+ * accept specific pricing plans, call *Enable Pricing Plans For Service*
4793
+ * ([SDK](https://dev.wix.com/docs/sdk/backend-modules/bookings/services/enable-pricing-plans-for-service) | [REST](https://dev.wix.com/docs/rest/business-solutions/bookings/services/services-v2/enable-pricing-plans-for-service)),
4794
+ * after cloning the service. If the original service accepts only
4795
+ * pricing plan payments and you don't call *Enable Pricing Plans For Service*
4796
+ * after cloning the service, customers will be unable to book the service.
4797
+ * @param sourceServiceId - ID of the service to clone.
4798
+ * @public
4799
+ * @requiredField sourceServiceId
4800
+ * @permissionId BOOKINGS.SERVICES_CREATE
4801
+ * @applicableIdentity APP
4802
+ * @fqn wix.bookings.services.v2.ServicesService.CloneService
4803
+ */
4804
+ declare function cloneService(sourceServiceId: string): Promise<NonNullablePaths<CloneServiceResponse, {
4805
+ [P in ServiceNonNullablePaths]: `service.${P}`;
4806
+ }[ServiceNonNullablePaths] | `errors`>>;
3974
4807
 
3975
- export { Mode as $, type ValidateSlugResponse as A, type BulkCreateServicesOptions as B, type CursorQuery as C, type DeleteServiceOptions as D, type EnablePricingPlansForServiceResponse as E, type CloneServiceResponse as F, type ServiceCreatedEnvelope as G, type ServiceDeletedEnvelope as H, type ServiceUpdatedEnvelope as I, ServiceType as J, LocationType as K, type Location as L, V2RequestedFields as M, SortOrder as N, SortType as O, SortDirection as P, type QueryPoliciesResponse as Q, RateType as R, type Service as S, MissingValues as T, type UpdateService as U, type ValidateSlugOptions as V, WebhookIdentityType as W, ScalarType as X, NestedAggregationType as Y, Interval as Z, AggregationType as _, type BulkCreateServicesResponse as a, type SeoSchema as a$, RequestedFields as a0, Action as a1, InvalidSlugError as a2, CloneErrors as a3, Status as a4, CategoryNotificationEvent as a5, BenefitType as a6, Event as a7, CrudType as a8, PlacementType as a9, type LimitEarlyBookingPolicy as aA, type LimitLateBookingPolicy as aB, type BookAfterStartPolicy as aC, type CancellationPolicy as aD, type ReschedulePolicy as aE, type WaitlistPolicy as aF, type ParticipantsPolicy as aG, type ResourcesPolicy as aH, type CancellationFeePolicy as aI, type CancellationWindow as aJ, type CancellationWindowFeeOneOf as aK, type SaveCreditCardPolicy as aL, type Schedule as aM, type AvailabilityConstraints as aN, type Duration as aO, type StaffMember as aP, type StaffMediaItem as aQ, type StaffMediaItemItemOneOf as aR, type StaffMemberDetails as aS, type ResourceGroup as aT, type ResourceIds as aU, type ServiceResource as aV, type ServiceResourceSelectionOneOf as aW, type ResourceType as aX, type Slug as aY, type URLs as aZ, type ExtendedFields as a_, DayOfWeek as aa, ResolutionMethod as ab, type Media as ac, type MediaItem as ad, type MediaItemItemOneOf as ae, type V2Category as af, type Form as ag, type FormSettings as ah, type Payment as ai, type PaymentRateOneOf as aj, type FixedPayment as ak, type Money as al, type CustomPayment as am, type VariedPayment as an, type PaymentOptions as ao, type OnlineBooking as ap, type Conferencing as aq, type LocationOptionsOneOf as ar, type CommonAddress as as, type CommonAddressStreetOneOf as at, type StreetAddress as au, type AddressLocation as av, type BusinessLocationOptions as aw, type CustomLocationOptions as ax, type BookingPolicy as ay, type PolicyDescription as az, type BulkUpdateServicesOptions as b, type BulkDeleteServicesByFilterRequest as b$, type Keyword as b0, type Tag as b1, type Settings as b2, type AddOnGroup as b3, type AddOnDetails as b4, type ReindexMessage as b5, type ReindexMessageActionOneOf as b6, type Upsert as b7, type Delete as b8, type Schema as b9, type ValidateAddOnsSelectionResponse as bA, type ValidationResult as bB, type CreateServiceRequest as bC, type CreateServiceResponse as bD, type ValidateServiceRequest as bE, type ValidateServiceResponse as bF, type FieldViolation as bG, type BulkCreateServicesRequest as bH, type BulkServiceResult as bI, type ItemMetadata as bJ, type ApplicationError as bK, type BulkActionMetadata as bL, type GetServiceRequest as bM, type GetServiceResponse as bN, type GetServiceAvailabilityConstraintsRequest as bO, type GetServiceAvailabilityConstraintsResponse as bP, type ServiceAvailabilityConstraints as bQ, type SplitInterval as bR, type UpdateServiceRequest as bS, type UpdateServiceResponse as bT, type BulkUpdateServicesRequest as bU, type MaskedService as bV, type BulkUpdateServicesByFilterRequest as bW, type DeleteServiceRequest as bX, type ParticipantNotification as bY, type DeleteServiceResponse as bZ, type BulkDeleteServicesRequest as b_, type SetCustomSlugEvent as ba, type ServicesUrlsChanged as bb, type DomainEvent as bc, type DomainEventBodyOneOf as bd, type EntityCreatedEvent as be, type RestoreInfo as bf, type EntityUpdatedEvent as bg, type EntityDeletedEvent as bh, type ActionEvent as bi, type MessageEnvelope as bj, type IdentificationData as bk, type IdentificationDataIdOneOf as bl, type CreateAddOnGroupRequest as bm, type CreateAddOnGroupResponse as bn, type DeleteAddOnGroupRequest as bo, type DeleteAddOnGroupResponse as bp, type UpdateAddOnGroupRequest as bq, type UpdateAddOnGroupResponse as br, type ListAddOnGroupsByServiceIdRequest as bs, type ListAddOnGroupsByServiceIdResponse as bt, type AddOn as bu, type AddOnAddOnInfoOneOf as bv, type AddOnGroupDetail as bw, type SetAddOnsForGroupRequest as bx, type SetAddOnsForGroupResponse as by, type ValidateAddOnsSelectionRequest as bz, type BulkUpdateServicesResponse as c, type QueryCategoriesFilter as c$, type QueryServicesRequest as c0, type QueryV2 as c1, type QueryV2PagingMethodOneOf as c2, type Sorting as c3, type Paging as c4, type CursorPaging as c5, type QueryServicesResponse as c6, type PagingMetadataV2 as c7, type Cursors as c8, type SearchServicesRequest as c9, type NestedValueAggregationResult as cA, type ValueResult as cB, type RangeResult as cC, type ScalarResult as cD, type NestedResultValue as cE, type NestedResultValueResultOneOf as cF, type Results as cG, type DateHistogramResult as cH, type GroupByValueResults as cI, type DateHistogramResults as cJ, type NestedResults as cK, type AggregationResults as cL, type AggregationResultsResultOneOf as cM, type QueryPoliciesRequest as cN, type CursorQueryPagingMethodOneOf as cO, type BookingPolicyWithServices as cP, type QueryBookingFormsRequest as cQ, type BookingForm as cR, type FormDetails as cS, type ConnectedService as cT, type CountServicesRequest as cU, type QueryLocationsRequest as cV, type QueryLocationsFilter as cW, type BusinessLocations as cX, type CustomLocations as cY, type CustomerLocations as cZ, type QueryCategoriesRequest as c_, type CursorSearch as ca, type CursorSearchPagingMethodOneOf as cb, type Aggregation as cc, type AggregationKindOneOf as cd, type RangeBucket as ce, type IncludeMissingValuesOptions as cf, type ValueAggregation as cg, type ValueAggregationOptionsOneOf as ch, type RangeAggregation as ci, type ScalarAggregation as cj, type DateHistogramAggregation as ck, type NestedAggregationItem as cl, type NestedAggregationItemKindOneOf as cm, type NestedAggregation as cn, type GroupByAggregation as co, type GroupByAggregationKindOneOf as cp, type SearchDetails as cq, type CursorPagingMetadata as cr, type AggregationData as cs, type ValueAggregationResult as ct, type RangeAggregationResult as cu, type NestedAggregationResults as cv, type NestedAggregationResultsResultOneOf as cw, type ValueResults as cx, type RangeResults as cy, type AggregationResultsScalarResult as cz, type BulkUpdateServicesByFilterOptions as d, type QueryServicesMultiLanguageRequest as d0, type QueryServicesMultiLanguageResponse as d1, type SetServiceLocationsRequest as d2, type RemovedLocationSessionsAction as d3, type RemovedLocationSessionsActionActionOptionsOneOf as d4, type MoveToNewLocationsOptions as d5, type EnablePricingPlansForServiceRequest as d6, type InvalidPricingPlan as d7, type DisablePricingPlansForServiceRequest as d8, type SetCustomSlugRequest as d9, type SpecialHourPeriod as dA, type Multilingual as dB, type SupportedLanguage as dC, type ConsentPolicy as dD, type Translation as dE, type ChangeContext as dF, type ChangeContextPayloadOneOf as dG, type PropertiesChange as dH, type SiteCreated as dI, type SiteCloned as dJ, type BaseEventMetadata as dK, type EventMetadata as dL, type ServicesQueryResult as dM, type ServiceSearchSpec as dN, type ValidateSlugRequest as da, type CloneServiceRequest as db, type CategoryNotification as dc, type Category as dd, type Empty as de, type BenefitNotification as df, type Benefit as dg, type EntryPass as dh, type Discount as di, type DiscountDiscountOneOf as dj, type Behavior as dk, type BehaviorBehaviorOneOf as dl, type UserDomainInfoChangedEvent as dm, type HtmlSitePublished as dn, type Page as dp, type SitePropertiesNotification as dq, type SitePropertiesEvent as dr, type Properties as ds, type Categories as dt, type Locale as du, type Address as dv, type AddressHint as dw, type GeoCoordinates as dx, type BusinessSchedule as dy, type TimePeriod as dz, type BulkUpdateServicesByFilterResponse as e, type BulkDeleteServicesOptions as f, type BulkDeleteServicesResponse as g, type BulkDeleteServicesByFilterOptions as h, type BulkDeleteServicesByFilterResponse as i, type ServicesQueryBuilder as j, type ServiceSearch as k, type SearchServicesResponse as l, type QueryBookingFormsOptions as m, type QueryBookingFormsResponse as n, type CountServicesOptions as o, type CountServicesResponse as p, type QueryLocationsOptions as q, type QueryLocationsResponse as r, type QueryCategoriesOptions as s, type QueryCategoriesResponse as t, type SetServiceLocationsOptions as u, type SetServiceLocationsResponse as v, type DisablePricingPlansForServiceOptions as w, type DisablePricingPlansForServiceResponse as x, type SetCustomSlugOptions as y, type SetCustomSlugResponse as z };
4808
+ export { SortType as $, type DisablePricingPlansForServiceOptions as A, type BulkCreateServicesOptions as B, type CreateServiceValidationErrors as C, type DeleteServiceOptions as D, type EnablePricingPlansForServiceResponse as E, type DisablePricingPlansForServiceResponse as F, type DisablePricingPlansForServiceApplicationErrors as G, type SetCustomSlugOptions as H, type SetCustomSlugResponse as I, type SetCustomSlugApplicationErrors as J, type SetCustomSlugValidationErrors as K, type Location as L, type ValidateSlugResponse as M, type CloneServiceResponse as N, type ServiceCreatedEnvelope as O, type ServiceDeletedEnvelope as P, type QueryPoliciesResponse as Q, type ServiceUpdatedEnvelope as R, type Service as S, ServiceType as T, type UpdateService as U, type ValidateSlugOptions as V, RateType as W, LocationType as X, WebhookIdentityType as Y, V2RequestedFields as Z, SortOrder as _, type BulkCreateServicesResponse as a, type ResourceIds as a$, SortDirection as a0, MissingValues as a1, ScalarType as a2, NestedAggregationType as a3, Interval as a4, AggregationType as a5, Mode as a6, RequestedFields as a7, Action as a8, InvalidSlugError as a9, type CommonAddressStreetOneOf as aA, type StreetAddress as aB, type AddressLocation as aC, type BusinessLocationOptions as aD, type CustomLocationOptions as aE, type BookingPolicy as aF, type PolicyDescription as aG, type LimitEarlyBookingPolicy as aH, type LimitLateBookingPolicy as aI, type BookAfterStartPolicy as aJ, type CancellationPolicy as aK, type ReschedulePolicy as aL, type WaitlistPolicy as aM, type ParticipantsPolicy as aN, type ResourcesPolicy as aO, type CancellationFeePolicy as aP, type CancellationWindow as aQ, type CancellationWindowFeeOneOf as aR, type SaveCreditCardPolicy as aS, type Schedule as aT, type AvailabilityConstraints as aU, type Duration as aV, type StaffMember as aW, type StaffMediaItem as aX, type StaffMediaItemItemOneOf as aY, type StaffMemberDetails as aZ, type ResourceGroup as a_, CloneErrors as aa, Status as ab, CategoryNotificationEvent as ac, BenefitType as ad, Event as ae, CrudType as af, PlacementType as ag, DayOfWeek as ah, ResolutionMethod as ai, type Media as aj, type MediaItem as ak, type MediaItemItemOneOf as al, type V2Category as am, type Form as an, type FormSettings as ao, type Payment as ap, type PaymentRateOneOf as aq, type FixedPayment as ar, type Money as as, type CustomPayment as at, type VariedPayment as au, type PaymentOptions as av, type OnlineBooking as aw, type Conferencing as ax, type LocationOptionsOneOf as ay, type CommonAddress as az, type UpdateServiceValidationErrors as b, type BulkUpdateServicesRequest as b$, type ServiceResource as b0, type ServiceResourceSelectionOneOf as b1, type ResourceType as b2, type Slug as b3, type URLs as b4, type ExtendedFields as b5, type SeoSchema as b6, type Keyword as b7, type Tag as b8, type Settings as b9, type ListAddOnGroupsByServiceIdResponse as bA, type AddOn as bB, type AddOnAddOnInfoOneOf as bC, type AddOnGroupDetail as bD, type SetAddOnsForGroupRequest as bE, type SetAddOnsForGroupResponse as bF, type ValidateAddOnsSelectionRequest as bG, type ValidateAddOnsSelectionResponse as bH, type ValidationResult as bI, type CreateServiceRequest as bJ, type CreateServiceResponse as bK, type ValidateServiceRequest as bL, type ValidateServiceResponse as bM, type FieldViolation as bN, type BulkCreateServicesRequest as bO, type BulkServiceResult as bP, type ItemMetadata as bQ, type ApplicationError as bR, type BulkActionMetadata as bS, type GetServiceRequest as bT, type GetServiceResponse as bU, type GetServiceAvailabilityConstraintsRequest as bV, type GetServiceAvailabilityConstraintsResponse as bW, type ServiceAvailabilityConstraints as bX, type SplitInterval as bY, type UpdateServiceRequest as bZ, type UpdateServiceResponse as b_, type AddOnGroup as ba, type AddOnDetails as bb, type ReindexMessage as bc, type ReindexMessageActionOneOf as bd, type Upsert as be, type Delete as bf, type Schema as bg, type SetCustomSlugEvent as bh, type ServicesUrlsChanged as bi, type DomainEvent as bj, type DomainEventBodyOneOf as bk, type EntityCreatedEvent as bl, type RestoreInfo as bm, type EntityUpdatedEvent as bn, type EntityDeletedEvent as bo, type ActionEvent as bp, type MessageEnvelope as bq, type IdentificationData as br, type IdentificationDataIdOneOf as bs, type CreateAddOnGroupRequest as bt, type CreateAddOnGroupResponse as bu, type DeleteAddOnGroupRequest as bv, type DeleteAddOnGroupResponse as bw, type UpdateAddOnGroupRequest as bx, type UpdateAddOnGroupResponse as by, type ListAddOnGroupsByServiceIdRequest as bz, type BulkUpdateServicesOptions as c, type CountServicesRequest as c$, type MaskedService as c0, type BulkUpdateServicesByFilterRequest as c1, type DeleteServiceRequest as c2, type ParticipantNotification as c3, type DeleteServiceResponse as c4, type BulkDeleteServicesRequest as c5, type BulkDeleteServicesByFilterRequest as c6, type QueryServicesRequest as c7, type QueryV2 as c8, type QueryV2PagingMethodOneOf as c9, type ValueAggregationResult as cA, type RangeAggregationResult as cB, type NestedAggregationResults as cC, type NestedAggregationResultsResultOneOf as cD, type ValueResults as cE, type RangeResults as cF, type AggregationResultsScalarResult as cG, type NestedValueAggregationResult as cH, type ValueResult as cI, type RangeResult as cJ, type ScalarResult as cK, type NestedResultValue as cL, type NestedResultValueResultOneOf as cM, type Results as cN, type DateHistogramResult as cO, type GroupByValueResults as cP, type DateHistogramResults as cQ, type NestedResults as cR, type AggregationResults as cS, type AggregationResultsResultOneOf as cT, type QueryPoliciesRequest as cU, type CursorQueryPagingMethodOneOf as cV, type BookingPolicyWithServices as cW, type QueryBookingFormsRequest as cX, type BookingForm as cY, type FormDetails as cZ, type ConnectedService as c_, type Sorting as ca, type Paging as cb, type CursorPaging as cc, type QueryServicesResponse as cd, type PagingMetadataV2 as ce, type Cursors as cf, type SearchServicesRequest as cg, type CursorSearch as ch, type CursorSearchPagingMethodOneOf as ci, type Aggregation as cj, type AggregationKindOneOf as ck, type RangeBucket as cl, type IncludeMissingValuesOptions as cm, type ValueAggregation as cn, type ValueAggregationOptionsOneOf as co, type RangeAggregation as cp, type ScalarAggregation as cq, type DateHistogramAggregation as cr, type NestedAggregationItem as cs, type NestedAggregationItemKindOneOf as ct, type NestedAggregation as cu, type GroupByAggregation as cv, type GroupByAggregationKindOneOf as cw, type SearchDetails as cx, type CursorPagingMetadata as cy, type AggregationData as cz, type BulkUpdateServicesResponse as d, type SortTypeWithLiterals as d$, type QueryLocationsRequest as d0, type QueryLocationsFilter as d1, type BusinessLocations as d2, type CustomLocations as d3, type CustomerLocations as d4, type QueryCategoriesRequest as d5, type QueryCategoriesFilter as d6, type QueryServicesMultiLanguageRequest as d7, type QueryServicesMultiLanguageResponse as d8, type SetServiceLocationsRequest as d9, type Categories as dA, type Locale as dB, type Address as dC, type AddressHint as dD, type GeoCoordinates as dE, type BusinessSchedule as dF, type TimePeriod as dG, type SpecialHourPeriod as dH, type Multilingual as dI, type SupportedLanguage as dJ, type ConsentPolicy as dK, type Translation as dL, type ChangeContext as dM, type ChangeContextPayloadOneOf as dN, type PropertiesChange as dO, type SiteCreated as dP, type SiteCloned as dQ, type BaseEventMetadata as dR, type EventMetadata as dS, type ServicesQueryResult as dT, type ServiceSearchSpec as dU, type ServiceTypeWithLiterals as dV, type RateTypeWithLiterals as dW, type LocationTypeWithLiterals as dX, type WebhookIdentityTypeWithLiterals as dY, type V2RequestedFieldsWithLiterals as dZ, type SortOrderWithLiterals as d_, type RemovedLocationSessionsAction as da, type RemovedLocationSessionsActionActionOptionsOneOf as db, type MoveToNewLocationsOptions as dc, type EnablePricingPlansForServiceRequest as dd, type InvalidPricingPlan as de, type DisablePricingPlansForServiceRequest as df, type SetCustomSlugRequest as dg, type ValidateSlugRequest as dh, type CloneServiceRequest as di, type CategoryNotification as dj, type Category as dk, type Empty as dl, type BenefitNotification as dm, type Benefit as dn, type EntryPass as dp, type Discount as dq, type DiscountDiscountOneOf as dr, type Behavior as ds, type BehaviorBehaviorOneOf as dt, type UserDomainInfoChangedEvent as du, type HtmlSitePublished as dv, type Page as dw, type SitePropertiesNotification as dx, type SitePropertiesEvent as dy, type Properties as dz, type BulkUpdateServicesByFilterOptions as e, type SortDirectionWithLiterals as e0, type MissingValuesWithLiterals as e1, type ScalarTypeWithLiterals as e2, type NestedAggregationTypeWithLiterals as e3, type IntervalWithLiterals as e4, type AggregationTypeWithLiterals as e5, type ModeWithLiterals as e6, type RequestedFieldsWithLiterals as e7, type ActionWithLiterals as e8, type InvalidSlugErrorWithLiterals as e9, queryLocations as eA, queryCategories as eB, setServiceLocations as eC, enablePricingPlansForService as eD, disablePricingPlansForService as eE, setCustomSlug as eF, validateSlug as eG, cloneService as eH, type CloneErrorsWithLiterals as ea, type StatusWithLiterals as eb, type CategoryNotificationEventWithLiterals as ec, type BenefitTypeWithLiterals as ed, type EventWithLiterals as ee, type CrudTypeWithLiterals as ef, type PlacementTypeWithLiterals as eg, type DayOfWeekWithLiterals as eh, type ResolutionMethodWithLiterals as ei, onServiceCreated as ej, onServiceDeleted as ek, onServiceUpdated as el, createService as em, bulkCreateServices as en, getService as eo, updateService as ep, bulkUpdateServices as eq, bulkUpdateServicesByFilter as er, deleteService as es, bulkDeleteServices as et, bulkDeleteServicesByFilter as eu, queryServices as ev, type CommonSearchWithEntityContext as ew, queryPolicies as ex, queryBookingForms as ey, countServices as ez, type BulkUpdateServicesByFilterResponse as f, type BulkDeleteServicesOptions as g, type BulkDeleteServicesResponse as h, type BulkDeleteServicesByFilterOptions as i, type BulkDeleteServicesByFilterResponse as j, type ServicesQueryBuilder as k, type ServiceSearch as l, type SearchServicesResponse as m, type CursorQuery as n, type QueryBookingFormsOptions as o, type QueryBookingFormsResponse as p, type QueryBookingFormsApplicationErrors as q, type CountServicesOptions as r, type CountServicesResponse as s, type QueryLocationsOptions as t, type QueryLocationsResponse as u, type QueryCategoriesOptions as v, type QueryCategoriesResponse as w, type SetServiceLocationsOptions as x, type SetServiceLocationsResponse as y, type EnablePricingPlansForServiceApplicationErrors as z };