@wix/auto_sdk_bookings_services 1.0.271 → 1.0.272

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 (49) hide show
  1. package/build/cjs/{bookings-services-v2-service-services.universal-CX9VmnYo.d.ts → bookings-services-v2-service-services.universal-ChMXm7Uf.d.ts} +25 -24
  2. package/build/cjs/index.d.ts +10 -10
  3. package/build/cjs/index.js +15 -13
  4. package/build/cjs/index.js.map +1 -1
  5. package/build/cjs/index.typings.d.ts +2 -2
  6. package/build/cjs/index.typings.js +2 -6
  7. package/build/cjs/index.typings.js.map +1 -1
  8. package/build/cjs/meta.d.ts +12 -1
  9. package/build/cjs/meta.js.map +1 -1
  10. package/build/cjs/schemas.d.ts +401 -2
  11. package/build/cjs/schemas.js +834 -73
  12. package/build/cjs/schemas.js.map +1 -1
  13. package/build/es/{bookings-services-v2-service-services.universal-CX9VmnYo.d.mts → bookings-services-v2-service-services.universal-ChMXm7Uf.d.mts} +25 -24
  14. package/build/es/index.d.mts +10 -10
  15. package/build/es/index.mjs +15 -13
  16. package/build/es/index.mjs.map +1 -1
  17. package/build/es/index.typings.d.mts +2 -2
  18. package/build/es/index.typings.mjs +2 -6
  19. package/build/es/index.typings.mjs.map +1 -1
  20. package/build/es/meta.d.mts +12 -1
  21. package/build/es/meta.mjs.map +1 -1
  22. package/build/es/schemas.d.mts +401 -2
  23. package/build/es/schemas.mjs +834 -73
  24. package/build/es/schemas.mjs.map +1 -1
  25. package/build/internal/cjs/{bookings-services-v2-service-services.universal-BPq_5F3f.d.ts → bookings-services-v2-service-services.universal-Bh8NcGST.d.ts} +14 -25
  26. package/build/internal/cjs/index.d.ts +10 -10
  27. package/build/internal/cjs/index.js +15 -13
  28. package/build/internal/cjs/index.js.map +1 -1
  29. package/build/internal/cjs/index.typings.d.ts +2 -2
  30. package/build/internal/cjs/index.typings.js +2 -6
  31. package/build/internal/cjs/index.typings.js.map +1 -1
  32. package/build/internal/cjs/meta.d.ts +1 -2
  33. package/build/internal/cjs/meta.js.map +1 -1
  34. package/build/internal/cjs/schemas.d.ts +401 -2
  35. package/build/internal/cjs/schemas.js +834 -73
  36. package/build/internal/cjs/schemas.js.map +1 -1
  37. package/build/internal/es/{bookings-services-v2-service-services.universal-BPq_5F3f.d.mts → bookings-services-v2-service-services.universal-Bh8NcGST.d.mts} +14 -25
  38. package/build/internal/es/index.d.mts +10 -10
  39. package/build/internal/es/index.mjs +15 -13
  40. package/build/internal/es/index.mjs.map +1 -1
  41. package/build/internal/es/index.typings.d.mts +2 -2
  42. package/build/internal/es/index.typings.mjs +2 -6
  43. package/build/internal/es/index.typings.mjs.map +1 -1
  44. package/build/internal/es/meta.d.mts +1 -2
  45. package/build/internal/es/meta.mjs.map +1 -1
  46. package/build/internal/es/schemas.d.mts +401 -2
  47. package/build/internal/es/schemas.mjs +834 -73
  48. package/build/internal/es/schemas.mjs.map +1 -1
  49. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  // src/bookings-services-v2-service-services.schemas.ts
2
2
  import * as z from "zod";
3
- var CreateServiceRequest = z.object({
3
+ var CreateServiceRequest = /* @__PURE__ */ z.object({
4
4
  service: z.object({
5
5
  _id: z.string().describe("Service ID.").regex(
6
6
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
@@ -547,7 +547,44 @@ var CreateServiceRequest = z.object({
547
547
  sessionDurations: z.array(z.number().int()).max(50).optional(),
548
548
  timeBetweenSessions: z.number().int().describe(
549
549
  "The number of minutes between the end of a session and the start of the next."
550
- ).min(0).max(720).optional()
550
+ ).min(0).max(720).optional(),
551
+ durationRange: z.intersection(
552
+ z.object({ unitType: z.enum(["HOUR", "DAY"]).optional() }),
553
+ z.xor([
554
+ z.object({
555
+ hourOptions: z.never().optional(),
556
+ dayOptions: z.never().optional()
557
+ }),
558
+ z.object({
559
+ dayOptions: z.never().optional(),
560
+ hourOptions: z.object({
561
+ minDurationInMinutes: z.number().int().describe(
562
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
563
+ ).min(30).max(1440).optional(),
564
+ maxDurationInMinutes: z.number().int().describe(
565
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
566
+ ).min(30).max(1440).optional()
567
+ }).describe(
568
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
569
+ )
570
+ }),
571
+ z.object({
572
+ hourOptions: z.never().optional(),
573
+ dayOptions: z.object({
574
+ minDurationInDays: z.number().int().describe(
575
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
576
+ ).min(1).max(8).optional(),
577
+ maxDurationInDays: z.number().int().describe(
578
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
579
+ ).min(1).max(8).optional()
580
+ }).describe(
581
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
582
+ )
583
+ })
584
+ ])
585
+ ).describe(
586
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
587
+ ).optional()
551
588
  }).describe("Limitations affecting the service availability.").optional()
552
589
  }).describe(
553
590
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -742,7 +779,7 @@ Default: The staff resource type.`
742
779
  ).optional().nullable()
743
780
  }).describe("Service to create.")
744
781
  });
745
- var CreateServiceResponse = z.object({
782
+ var CreateServiceResponse = /* @__PURE__ */ z.object({
746
783
  _id: z.string().describe("Service ID.").regex(
747
784
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
748
785
  "Must be a valid GUID"
@@ -1290,7 +1327,48 @@ var CreateServiceResponse = z.object({
1290
1327
  sessionDurations: z.array(z.number().int()).max(50).optional(),
1291
1328
  timeBetweenSessions: z.number().int().describe(
1292
1329
  "The number of minutes between the end of a session and the start of the next."
1293
- ).min(0).max(720).optional()
1330
+ ).min(0).max(720).optional(),
1331
+ durationRange: z.intersection(
1332
+ z.object({
1333
+ unitType: z.enum(["HOUR", "DAY"]).describe(
1334
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
1335
+ ).optional()
1336
+ }),
1337
+ z.xor([
1338
+ z.object({
1339
+ hourOptions: z.never().optional(),
1340
+ dayOptions: z.never().optional()
1341
+ }),
1342
+ z.object({
1343
+ dayOptions: z.never().optional(),
1344
+ hourOptions: z.object({
1345
+ minDurationInMinutes: z.number().int().describe(
1346
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
1347
+ ).min(30).max(1440).optional(),
1348
+ maxDurationInMinutes: z.number().int().describe(
1349
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
1350
+ ).min(30).max(1440).optional()
1351
+ }).describe(
1352
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
1353
+ )
1354
+ }),
1355
+ z.object({
1356
+ hourOptions: z.never().optional(),
1357
+ dayOptions: z.object({
1358
+ minDurationInDays: z.number().int().describe(
1359
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
1360
+ ).min(1).max(8).optional(),
1361
+ maxDurationInDays: z.number().int().describe(
1362
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
1363
+ ).min(1).max(8).optional()
1364
+ }).describe(
1365
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
1366
+ )
1367
+ })
1368
+ ])
1369
+ ).describe(
1370
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
1371
+ ).optional()
1294
1372
  }).describe("Limitations affecting the service availability.").optional()
1295
1373
  }).describe(
1296
1374
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -1480,7 +1558,7 @@ Default: The staff resource type.`
1480
1558
  "Must be a valid GUID"
1481
1559
  ).optional().nullable()
1482
1560
  });
1483
- var BulkCreateServicesRequest = z.object({
1561
+ var BulkCreateServicesRequest = /* @__PURE__ */ z.object({
1484
1562
  services: z.array(
1485
1563
  z.object({
1486
1564
  _id: z.string().describe("Service ID.").regex(
@@ -2032,7 +2110,44 @@ var BulkCreateServicesRequest = z.object({
2032
2110
  sessionDurations: z.array(z.number().int()).max(50).optional(),
2033
2111
  timeBetweenSessions: z.number().int().describe(
2034
2112
  "The number of minutes between the end of a session and the start of the next."
2035
- ).min(0).max(720).optional()
2113
+ ).min(0).max(720).optional(),
2114
+ durationRange: z.intersection(
2115
+ z.object({ unitType: z.enum(["HOUR", "DAY"]).optional() }),
2116
+ z.xor([
2117
+ z.object({
2118
+ hourOptions: z.never().optional(),
2119
+ dayOptions: z.never().optional()
2120
+ }),
2121
+ z.object({
2122
+ dayOptions: z.never().optional(),
2123
+ hourOptions: z.object({
2124
+ minDurationInMinutes: z.number().int().describe(
2125
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
2126
+ ).min(30).max(1440).optional(),
2127
+ maxDurationInMinutes: z.number().int().describe(
2128
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
2129
+ ).min(30).max(1440).optional()
2130
+ }).describe(
2131
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
2132
+ )
2133
+ }),
2134
+ z.object({
2135
+ hourOptions: z.never().optional(),
2136
+ dayOptions: z.object({
2137
+ minDurationInDays: z.number().int().describe(
2138
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
2139
+ ).min(1).max(8).optional(),
2140
+ maxDurationInDays: z.number().int().describe(
2141
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
2142
+ ).min(1).max(8).optional()
2143
+ }).describe(
2144
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
2145
+ )
2146
+ })
2147
+ ])
2148
+ ).describe(
2149
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
2150
+ ).optional()
2036
2151
  }).describe("Limitations affecting the service availability.").optional()
2037
2152
  }).describe(
2038
2153
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -2231,7 +2346,7 @@ Default: The staff resource type.`
2231
2346
  returnEntity: z.boolean().describe("Whether to return the created service objects.").optional()
2232
2347
  }).optional()
2233
2348
  });
2234
- var BulkCreateServicesResponse = z.object({
2349
+ var BulkCreateServicesResponse = /* @__PURE__ */ z.object({
2235
2350
  results: z.array(
2236
2351
  z.object({
2237
2352
  itemMetadata: z.object({
@@ -2821,7 +2936,48 @@ var BulkCreateServicesResponse = z.object({
2821
2936
  sessionDurations: z.array(z.number().int()).max(50).optional(),
2822
2937
  timeBetweenSessions: z.number().int().describe(
2823
2938
  "The number of minutes between the end of a session and the start of the next."
2824
- ).min(0).max(720).optional()
2939
+ ).min(0).max(720).optional(),
2940
+ durationRange: z.intersection(
2941
+ z.object({
2942
+ unitType: z.enum(["HOUR", "DAY"]).describe(
2943
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
2944
+ ).optional()
2945
+ }),
2946
+ z.xor([
2947
+ z.object({
2948
+ hourOptions: z.never().optional(),
2949
+ dayOptions: z.never().optional()
2950
+ }),
2951
+ z.object({
2952
+ dayOptions: z.never().optional(),
2953
+ hourOptions: z.object({
2954
+ minDurationInMinutes: z.number().int().describe(
2955
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
2956
+ ).min(30).max(1440).optional(),
2957
+ maxDurationInMinutes: z.number().int().describe(
2958
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
2959
+ ).min(30).max(1440).optional()
2960
+ }).describe(
2961
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
2962
+ )
2963
+ }),
2964
+ z.object({
2965
+ hourOptions: z.never().optional(),
2966
+ dayOptions: z.object({
2967
+ minDurationInDays: z.number().int().describe(
2968
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
2969
+ ).min(1).max(8).optional(),
2970
+ maxDurationInDays: z.number().int().describe(
2971
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
2972
+ ).min(1).max(8).optional()
2973
+ }).describe(
2974
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
2975
+ )
2976
+ })
2977
+ ])
2978
+ ).describe(
2979
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
2980
+ ).optional()
2825
2981
  }).describe("Limitations affecting the service availability.").optional()
2826
2982
  }).describe(
2827
2983
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -3027,7 +3183,7 @@ Default: The staff resource type.`
3027
3183
  ).optional()
3028
3184
  }).describe("Create statistics.").optional()
3029
3185
  });
3030
- var GetServiceRequest = z.object({
3186
+ var GetServiceRequest = /* @__PURE__ */ z.object({
3031
3187
  serviceId: z.string().describe("ID of the service to retrieve.").regex(
3032
3188
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
3033
3189
  "Must be a valid GUID"
@@ -3043,7 +3199,7 @@ var GetServiceRequest = z.object({
3043
3199
  ).max(5).optional()
3044
3200
  }).optional()
3045
3201
  });
3046
- var GetServiceResponse = z.object({
3202
+ var GetServiceResponse = /* @__PURE__ */ z.object({
3047
3203
  _id: z.string().describe("Service ID.").regex(
3048
3204
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
3049
3205
  "Must be a valid GUID"
@@ -3591,7 +3747,48 @@ var GetServiceResponse = z.object({
3591
3747
  sessionDurations: z.array(z.number().int()).max(50).optional(),
3592
3748
  timeBetweenSessions: z.number().int().describe(
3593
3749
  "The number of minutes between the end of a session and the start of the next."
3594
- ).min(0).max(720).optional()
3750
+ ).min(0).max(720).optional(),
3751
+ durationRange: z.intersection(
3752
+ z.object({
3753
+ unitType: z.enum(["HOUR", "DAY"]).describe(
3754
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
3755
+ ).optional()
3756
+ }),
3757
+ z.xor([
3758
+ z.object({
3759
+ hourOptions: z.never().optional(),
3760
+ dayOptions: z.never().optional()
3761
+ }),
3762
+ z.object({
3763
+ dayOptions: z.never().optional(),
3764
+ hourOptions: z.object({
3765
+ minDurationInMinutes: z.number().int().describe(
3766
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
3767
+ ).min(30).max(1440).optional(),
3768
+ maxDurationInMinutes: z.number().int().describe(
3769
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
3770
+ ).min(30).max(1440).optional()
3771
+ }).describe(
3772
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
3773
+ )
3774
+ }),
3775
+ z.object({
3776
+ hourOptions: z.never().optional(),
3777
+ dayOptions: z.object({
3778
+ minDurationInDays: z.number().int().describe(
3779
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
3780
+ ).min(1).max(8).optional(),
3781
+ maxDurationInDays: z.number().int().describe(
3782
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
3783
+ ).min(1).max(8).optional()
3784
+ }).describe(
3785
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
3786
+ )
3787
+ })
3788
+ ])
3789
+ ).describe(
3790
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
3791
+ ).optional()
3595
3792
  }).describe("Limitations affecting the service availability.").optional()
3596
3793
  }).describe(
3597
3794
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -3781,7 +3978,7 @@ Default: The staff resource type.`
3781
3978
  "Must be a valid GUID"
3782
3979
  ).optional().nullable()
3783
3980
  });
3784
- var UpdateServiceRequest = z.object({
3981
+ var UpdateServiceRequest = /* @__PURE__ */ z.object({
3785
3982
  _id: z.string().describe("Service ID.").regex(
3786
3983
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
3787
3984
  "Must be a valid GUID"
@@ -4332,7 +4529,44 @@ var UpdateServiceRequest = z.object({
4332
4529
  sessionDurations: z.array(z.number().int()).max(50).optional(),
4333
4530
  timeBetweenSessions: z.number().int().describe(
4334
4531
  "The number of minutes between the end of a session and the start of the next."
4335
- ).min(0).max(720).optional()
4532
+ ).min(0).max(720).optional(),
4533
+ durationRange: z.intersection(
4534
+ z.object({ unitType: z.enum(["HOUR", "DAY"]).optional() }),
4535
+ z.xor([
4536
+ z.object({
4537
+ hourOptions: z.never().optional(),
4538
+ dayOptions: z.never().optional()
4539
+ }),
4540
+ z.object({
4541
+ dayOptions: z.never().optional(),
4542
+ hourOptions: z.object({
4543
+ minDurationInMinutes: z.number().int().describe(
4544
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
4545
+ ).min(30).max(1440).optional(),
4546
+ maxDurationInMinutes: z.number().int().describe(
4547
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
4548
+ ).min(30).max(1440).optional()
4549
+ }).describe(
4550
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
4551
+ )
4552
+ }),
4553
+ z.object({
4554
+ hourOptions: z.never().optional(),
4555
+ dayOptions: z.object({
4556
+ minDurationInDays: z.number().int().describe(
4557
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
4558
+ ).min(1).max(8).optional(),
4559
+ maxDurationInDays: z.number().int().describe(
4560
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
4561
+ ).min(1).max(8).optional()
4562
+ }).describe(
4563
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
4564
+ )
4565
+ })
4566
+ ])
4567
+ ).describe(
4568
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
4569
+ ).optional()
4336
4570
  }).describe("Limitations affecting the service availability.").optional()
4337
4571
  }).describe(
4338
4572
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -4527,7 +4761,7 @@ Default: The staff resource type.`
4527
4761
  ).optional().nullable()
4528
4762
  }).describe("Service to update.")
4529
4763
  });
4530
- var UpdateServiceResponse = z.object({
4764
+ var UpdateServiceResponse = /* @__PURE__ */ z.object({
4531
4765
  _id: z.string().describe("Service ID.").regex(
4532
4766
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
4533
4767
  "Must be a valid GUID"
@@ -5075,7 +5309,48 @@ var UpdateServiceResponse = z.object({
5075
5309
  sessionDurations: z.array(z.number().int()).max(50).optional(),
5076
5310
  timeBetweenSessions: z.number().int().describe(
5077
5311
  "The number of minutes between the end of a session and the start of the next."
5078
- ).min(0).max(720).optional()
5312
+ ).min(0).max(720).optional(),
5313
+ durationRange: z.intersection(
5314
+ z.object({
5315
+ unitType: z.enum(["HOUR", "DAY"]).describe(
5316
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
5317
+ ).optional()
5318
+ }),
5319
+ z.xor([
5320
+ z.object({
5321
+ hourOptions: z.never().optional(),
5322
+ dayOptions: z.never().optional()
5323
+ }),
5324
+ z.object({
5325
+ dayOptions: z.never().optional(),
5326
+ hourOptions: z.object({
5327
+ minDurationInMinutes: z.number().int().describe(
5328
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
5329
+ ).min(30).max(1440).optional(),
5330
+ maxDurationInMinutes: z.number().int().describe(
5331
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
5332
+ ).min(30).max(1440).optional()
5333
+ }).describe(
5334
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
5335
+ )
5336
+ }),
5337
+ z.object({
5338
+ hourOptions: z.never().optional(),
5339
+ dayOptions: z.object({
5340
+ minDurationInDays: z.number().int().describe(
5341
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
5342
+ ).min(1).max(8).optional(),
5343
+ maxDurationInDays: z.number().int().describe(
5344
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
5345
+ ).min(1).max(8).optional()
5346
+ }).describe(
5347
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
5348
+ )
5349
+ })
5350
+ ])
5351
+ ).describe(
5352
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
5353
+ ).optional()
5079
5354
  }).describe("Limitations affecting the service availability.").optional()
5080
5355
  }).describe(
5081
5356
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -5265,7 +5540,7 @@ Default: The staff resource type.`
5265
5540
  "Must be a valid GUID"
5266
5541
  ).optional().nullable()
5267
5542
  });
5268
- var BulkUpdateServicesRequest = z.object({
5543
+ var BulkUpdateServicesRequest = /* @__PURE__ */ z.object({
5269
5544
  options: z.object({
5270
5545
  services: z.array(
5271
5546
  z.object({
@@ -5837,7 +6112,46 @@ var BulkUpdateServicesRequest = z.object({
5837
6112
  sessionDurations: z.array(z.number().int()).max(50).optional(),
5838
6113
  timeBetweenSessions: z.number().int().describe(
5839
6114
  "The number of minutes between the end of a session and the start of the next."
5840
- ).min(0).max(720).optional()
6115
+ ).min(0).max(720).optional(),
6116
+ durationRange: z.intersection(
6117
+ z.object({
6118
+ unitType: z.enum(["HOUR", "DAY"]).optional()
6119
+ }),
6120
+ z.xor([
6121
+ z.object({
6122
+ hourOptions: z.never().optional(),
6123
+ dayOptions: z.never().optional()
6124
+ }),
6125
+ z.object({
6126
+ dayOptions: z.never().optional(),
6127
+ hourOptions: z.object({
6128
+ minDurationInMinutes: z.number().int().describe(
6129
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
6130
+ ).min(30).max(1440).optional(),
6131
+ maxDurationInMinutes: z.number().int().describe(
6132
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
6133
+ ).min(30).max(1440).optional()
6134
+ }).describe(
6135
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
6136
+ )
6137
+ }),
6138
+ z.object({
6139
+ hourOptions: z.never().optional(),
6140
+ dayOptions: z.object({
6141
+ minDurationInDays: z.number().int().describe(
6142
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
6143
+ ).min(1).max(8).optional(),
6144
+ maxDurationInDays: z.number().int().describe(
6145
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
6146
+ ).min(1).max(8).optional()
6147
+ }).describe(
6148
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
6149
+ )
6150
+ })
6151
+ ])
6152
+ ).describe(
6153
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
6154
+ ).optional()
5841
6155
  }).describe(
5842
6156
  "Limitations affecting the service availability."
5843
6157
  ).optional()
@@ -6043,7 +6357,7 @@ Default: The staff resource type.`
6043
6357
  ).optional()
6044
6358
  }).optional()
6045
6359
  });
6046
- var BulkUpdateServicesResponse = z.object({
6360
+ var BulkUpdateServicesResponse = /* @__PURE__ */ z.object({
6047
6361
  results: z.array(
6048
6362
  z.object({
6049
6363
  itemMetadata: z.object({
@@ -6633,7 +6947,48 @@ var BulkUpdateServicesResponse = z.object({
6633
6947
  sessionDurations: z.array(z.number().int()).max(50).optional(),
6634
6948
  timeBetweenSessions: z.number().int().describe(
6635
6949
  "The number of minutes between the end of a session and the start of the next."
6636
- ).min(0).max(720).optional()
6950
+ ).min(0).max(720).optional(),
6951
+ durationRange: z.intersection(
6952
+ z.object({
6953
+ unitType: z.enum(["HOUR", "DAY"]).describe(
6954
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
6955
+ ).optional()
6956
+ }),
6957
+ z.xor([
6958
+ z.object({
6959
+ hourOptions: z.never().optional(),
6960
+ dayOptions: z.never().optional()
6961
+ }),
6962
+ z.object({
6963
+ dayOptions: z.never().optional(),
6964
+ hourOptions: z.object({
6965
+ minDurationInMinutes: z.number().int().describe(
6966
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
6967
+ ).min(30).max(1440).optional(),
6968
+ maxDurationInMinutes: z.number().int().describe(
6969
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
6970
+ ).min(30).max(1440).optional()
6971
+ }).describe(
6972
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
6973
+ )
6974
+ }),
6975
+ z.object({
6976
+ hourOptions: z.never().optional(),
6977
+ dayOptions: z.object({
6978
+ minDurationInDays: z.number().int().describe(
6979
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
6980
+ ).min(1).max(8).optional(),
6981
+ maxDurationInDays: z.number().int().describe(
6982
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
6983
+ ).min(1).max(8).optional()
6984
+ }).describe(
6985
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
6986
+ )
6987
+ })
6988
+ ])
6989
+ ).describe(
6990
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
6991
+ ).optional()
6637
6992
  }).describe("Limitations affecting the service availability.").optional()
6638
6993
  }).describe(
6639
6994
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -6839,7 +7194,7 @@ Default: The staff resource type.`
6839
7194
  ).optional()
6840
7195
  }).describe("Update statistics.").optional()
6841
7196
  });
6842
- var BulkUpdateServicesByFilterRequest = z.object({
7197
+ var BulkUpdateServicesByFilterRequest = /* @__PURE__ */ z.object({
6843
7198
  filter: z.record(z.string(), z.any()).describe("Filter to identify the services to update."),
6844
7199
  options: z.object({
6845
7200
  service: z.object({
@@ -7392,7 +7747,44 @@ var BulkUpdateServicesByFilterRequest = z.object({
7392
7747
  sessionDurations: z.array(z.number().int()).max(50).optional(),
7393
7748
  timeBetweenSessions: z.number().int().describe(
7394
7749
  "The number of minutes between the end of a session and the start of the next."
7395
- ).min(0).max(720).optional()
7750
+ ).min(0).max(720).optional(),
7751
+ durationRange: z.intersection(
7752
+ z.object({ unitType: z.enum(["HOUR", "DAY"]).optional() }),
7753
+ z.xor([
7754
+ z.object({
7755
+ hourOptions: z.never().optional(),
7756
+ dayOptions: z.never().optional()
7757
+ }),
7758
+ z.object({
7759
+ dayOptions: z.never().optional(),
7760
+ hourOptions: z.object({
7761
+ minDurationInMinutes: z.number().int().describe(
7762
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
7763
+ ).min(30).max(1440).optional(),
7764
+ maxDurationInMinutes: z.number().int().describe(
7765
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
7766
+ ).min(30).max(1440).optional()
7767
+ }).describe(
7768
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
7769
+ )
7770
+ }),
7771
+ z.object({
7772
+ hourOptions: z.never().optional(),
7773
+ dayOptions: z.object({
7774
+ minDurationInDays: z.number().int().describe(
7775
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
7776
+ ).min(1).max(8).optional(),
7777
+ maxDurationInDays: z.number().int().describe(
7778
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
7779
+ ).min(1).max(8).optional()
7780
+ }).describe(
7781
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
7782
+ )
7783
+ })
7784
+ ])
7785
+ ).describe(
7786
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
7787
+ ).optional()
7396
7788
  }).describe("Limitations affecting the service availability.").optional()
7397
7789
  }).describe(
7398
7790
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -7588,7 +7980,7 @@ Default: The staff resource type.`
7588
7980
  }).describe("Service to update.")
7589
7981
  })
7590
7982
  });
7591
- var BulkUpdateServicesByFilterResponse = z.object({
7983
+ var BulkUpdateServicesByFilterResponse = /* @__PURE__ */ z.object({
7592
7984
  jobId: z.string().describe(
7593
7985
  "ID of the service update job.\n\nPass this ID to [Get Async Job](https://dev.wix.com/docs/rest/business-management/async-job/introduction) to retrieve job details and metadata."
7594
7986
  ).regex(
@@ -7596,7 +7988,7 @@ var BulkUpdateServicesByFilterResponse = z.object({
7596
7988
  "Must be a valid GUID"
7597
7989
  ).optional()
7598
7990
  });
7599
- var DeleteServiceRequest = z.object({
7991
+ var DeleteServiceRequest = /* @__PURE__ */ z.object({
7600
7992
  serviceId: z.string().describe("ID of the service to delete.").regex(
7601
7993
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
7602
7994
  "Must be a valid GUID"
@@ -7619,8 +8011,8 @@ var DeleteServiceRequest = z.object({
7619
8011
  "Allows you to configure how to handle the deleted service's future sessions and how to notify the sessions participants."
7620
8012
  ).optional()
7621
8013
  });
7622
- var DeleteServiceResponse = z.object({});
7623
- var BulkDeleteServicesRequest = z.object({
8014
+ var DeleteServiceResponse = /* @__PURE__ */ z.object({});
8015
+ var BulkDeleteServicesRequest = /* @__PURE__ */ z.object({
7624
8016
  ids: z.array(z.string()).max(100),
7625
8017
  options: z.object({
7626
8018
  preserveFutureSessionsWithParticipants: z.boolean().describe(
@@ -7638,7 +8030,7 @@ var BulkDeleteServicesRequest = z.object({
7638
8030
  ).optional()
7639
8031
  }).optional()
7640
8032
  });
7641
- var BulkDeleteServicesResponse = z.object({
8033
+ var BulkDeleteServicesResponse = /* @__PURE__ */ z.object({
7642
8034
  results: z.array(
7643
8035
  z.object({
7644
8036
  itemMetadata: z.object({
@@ -8228,7 +8620,48 @@ var BulkDeleteServicesResponse = z.object({
8228
8620
  sessionDurations: z.array(z.number().int()).max(50).optional(),
8229
8621
  timeBetweenSessions: z.number().int().describe(
8230
8622
  "The number of minutes between the end of a session and the start of the next."
8231
- ).min(0).max(720).optional()
8623
+ ).min(0).max(720).optional(),
8624
+ durationRange: z.intersection(
8625
+ z.object({
8626
+ unitType: z.enum(["HOUR", "DAY"]).describe(
8627
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
8628
+ ).optional()
8629
+ }),
8630
+ z.xor([
8631
+ z.object({
8632
+ hourOptions: z.never().optional(),
8633
+ dayOptions: z.never().optional()
8634
+ }),
8635
+ z.object({
8636
+ dayOptions: z.never().optional(),
8637
+ hourOptions: z.object({
8638
+ minDurationInMinutes: z.number().int().describe(
8639
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
8640
+ ).min(30).max(1440).optional(),
8641
+ maxDurationInMinutes: z.number().int().describe(
8642
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
8643
+ ).min(30).max(1440).optional()
8644
+ }).describe(
8645
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
8646
+ )
8647
+ }),
8648
+ z.object({
8649
+ hourOptions: z.never().optional(),
8650
+ dayOptions: z.object({
8651
+ minDurationInDays: z.number().int().describe(
8652
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
8653
+ ).min(1).max(8).optional(),
8654
+ maxDurationInDays: z.number().int().describe(
8655
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
8656
+ ).min(1).max(8).optional()
8657
+ }).describe(
8658
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
8659
+ )
8660
+ })
8661
+ ])
8662
+ ).describe(
8663
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
8664
+ ).optional()
8232
8665
  }).describe("Limitations affecting the service availability.").optional()
8233
8666
  }).describe(
8234
8667
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -8434,7 +8867,7 @@ Default: The staff resource type.`
8434
8867
  ).optional()
8435
8868
  }).describe("Delete statistics.").optional()
8436
8869
  });
8437
- var BulkDeleteServicesByFilterRequest = z.object({
8870
+ var BulkDeleteServicesByFilterRequest = /* @__PURE__ */ z.object({
8438
8871
  filter: z.record(z.string(), z.any()).describe("Filter to identify the services that need to be deleted."),
8439
8872
  options: z.object({
8440
8873
  preserveFutureSessionsWithParticipants: z.boolean().describe(
@@ -8452,7 +8885,7 @@ var BulkDeleteServicesByFilterRequest = z.object({
8452
8885
  ).optional()
8453
8886
  }).optional()
8454
8887
  });
8455
- var BulkDeleteServicesByFilterResponse = z.object({
8888
+ var BulkDeleteServicesByFilterResponse = /* @__PURE__ */ z.object({
8456
8889
  jobId: z.string().describe(
8457
8890
  "ID of the service deletion job.\n\nPass this ID to [Get Async Job](https://dev.wix.com/docs/rest/business-management/async-job/introduction) to retrieve job details and metadata."
8458
8891
  ).regex(
@@ -8460,7 +8893,7 @@ var BulkDeleteServicesByFilterResponse = z.object({
8460
8893
  "Must be a valid GUID"
8461
8894
  ).optional()
8462
8895
  });
8463
- var QueryServicesRequest = z.object({
8896
+ var QueryServicesRequest = /* @__PURE__ */ z.object({
8464
8897
  query: z.object({
8465
8898
  filter: z.object({
8466
8899
  _id: z.object({
@@ -8801,7 +9234,7 @@ var QueryServicesRequest = z.object({
8801
9234
  ).max(5).optional()
8802
9235
  }).optional()
8803
9236
  });
8804
- var QueryServicesResponse = z.object({
9237
+ var QueryServicesResponse = /* @__PURE__ */ z.object({
8805
9238
  services: z.array(
8806
9239
  z.object({
8807
9240
  _id: z.string().describe("Service ID.").regex(
@@ -9359,7 +9792,48 @@ var QueryServicesResponse = z.object({
9359
9792
  sessionDurations: z.array(z.number().int()).max(50).optional(),
9360
9793
  timeBetweenSessions: z.number().int().describe(
9361
9794
  "The number of minutes between the end of a session and the start of the next."
9362
- ).min(0).max(720).optional()
9795
+ ).min(0).max(720).optional(),
9796
+ durationRange: z.intersection(
9797
+ z.object({
9798
+ unitType: z.enum(["HOUR", "DAY"]).describe(
9799
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
9800
+ ).optional()
9801
+ }),
9802
+ z.xor([
9803
+ z.object({
9804
+ hourOptions: z.never().optional(),
9805
+ dayOptions: z.never().optional()
9806
+ }),
9807
+ z.object({
9808
+ dayOptions: z.never().optional(),
9809
+ hourOptions: z.object({
9810
+ minDurationInMinutes: z.number().int().describe(
9811
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
9812
+ ).min(30).max(1440).optional(),
9813
+ maxDurationInMinutes: z.number().int().describe(
9814
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
9815
+ ).min(30).max(1440).optional()
9816
+ }).describe(
9817
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
9818
+ )
9819
+ }),
9820
+ z.object({
9821
+ hourOptions: z.never().optional(),
9822
+ dayOptions: z.object({
9823
+ minDurationInDays: z.number().int().describe(
9824
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
9825
+ ).min(1).max(8).optional(),
9826
+ maxDurationInDays: z.number().int().describe(
9827
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
9828
+ ).min(1).max(8).optional()
9829
+ }).describe(
9830
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
9831
+ )
9832
+ })
9833
+ ])
9834
+ ).describe(
9835
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
9836
+ ).optional()
9363
9837
  }).describe("Limitations affecting the service availability.").optional()
9364
9838
  }).describe(
9365
9839
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -9575,7 +10049,7 @@ Default: The staff resource type.`
9575
10049
  ).optional()
9576
10050
  }).describe("Paging metadata, including offset and count.").optional()
9577
10051
  });
9578
- var SearchServicesRequest = z.object({
10052
+ var SearchServicesRequest = /* @__PURE__ */ z.object({
9579
10053
  search: z.object({
9580
10054
  filter: z.object({
9581
10055
  _id: z.object({
@@ -9968,7 +10442,7 @@ var SearchServicesRequest = z.object({
9968
10442
  "Search criteria including filter, sort, aggregations, and paging options."
9969
10443
  )
9970
10444
  });
9971
- var SearchServicesResponse = z.object({
10445
+ var SearchServicesResponse = /* @__PURE__ */ z.object({
9972
10446
  services: z.array(
9973
10447
  z.object({
9974
10448
  _id: z.string().describe("Service ID.").regex(
@@ -10526,7 +11000,48 @@ var SearchServicesResponse = z.object({
10526
11000
  sessionDurations: z.array(z.number().int()).max(50).optional(),
10527
11001
  timeBetweenSessions: z.number().int().describe(
10528
11002
  "The number of minutes between the end of a session and the start of the next."
10529
- ).min(0).max(720).optional()
11003
+ ).min(0).max(720).optional(),
11004
+ durationRange: z.intersection(
11005
+ z.object({
11006
+ unitType: z.enum(["HOUR", "DAY"]).describe(
11007
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
11008
+ ).optional()
11009
+ }),
11010
+ z.xor([
11011
+ z.object({
11012
+ hourOptions: z.never().optional(),
11013
+ dayOptions: z.never().optional()
11014
+ }),
11015
+ z.object({
11016
+ dayOptions: z.never().optional(),
11017
+ hourOptions: z.object({
11018
+ minDurationInMinutes: z.number().int().describe(
11019
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
11020
+ ).min(30).max(1440).optional(),
11021
+ maxDurationInMinutes: z.number().int().describe(
11022
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
11023
+ ).min(30).max(1440).optional()
11024
+ }).describe(
11025
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
11026
+ )
11027
+ }),
11028
+ z.object({
11029
+ hourOptions: z.never().optional(),
11030
+ dayOptions: z.object({
11031
+ minDurationInDays: z.number().int().describe(
11032
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
11033
+ ).min(1).max(8).optional(),
11034
+ maxDurationInDays: z.number().int().describe(
11035
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
11036
+ ).min(1).max(8).optional()
11037
+ }).describe(
11038
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
11039
+ )
11040
+ })
11041
+ ])
11042
+ ).describe(
11043
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
11044
+ ).optional()
10530
11045
  }).describe("Limitations affecting the service availability.").optional()
10531
11046
  }).describe(
10532
11047
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -11033,7 +11548,7 @@ Default: The staff resource type.`
11033
11548
  "Aggregation results based on the aggregations specified in the search request.\n\nProvides categorized data summaries such as service counts by type, location distribution,\npayment method statistics, or custom aggregations. Available only when aggregations\nare requested in the search criteria."
11034
11549
  ).optional()
11035
11550
  });
11036
- var QueryPoliciesRequest = z.object({
11551
+ var QueryPoliciesRequest = /* @__PURE__ */ z.object({
11037
11552
  query: z.intersection(
11038
11553
  z.object({
11039
11554
  filter: z.record(z.string(), z.any()).describe(
@@ -11061,7 +11576,7 @@ var QueryPoliciesRequest = z.object({
11061
11576
  ])
11062
11577
  ).describe("Information about filters, paging, and sorting.")
11063
11578
  });
11064
- var QueryPoliciesResponse = z.object({
11579
+ var QueryPoliciesResponse = /* @__PURE__ */ z.object({
11065
11580
  bookingPolicies: z.array(
11066
11581
  z.object({
11067
11582
  bookingPolicy: z.object({
@@ -11778,7 +12293,48 @@ var QueryPoliciesResponse = z.object({
11778
12293
  sessionDurations: z.array(z.number().int()).max(50).optional(),
11779
12294
  timeBetweenSessions: z.number().int().describe(
11780
12295
  "The number of minutes between the end of a session and the start of the next."
11781
- ).min(0).max(720).optional()
12296
+ ).min(0).max(720).optional(),
12297
+ durationRange: z.intersection(
12298
+ z.object({
12299
+ unitType: z.enum(["HOUR", "DAY"]).describe(
12300
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
12301
+ ).optional()
12302
+ }),
12303
+ z.xor([
12304
+ z.object({
12305
+ hourOptions: z.never().optional(),
12306
+ dayOptions: z.never().optional()
12307
+ }),
12308
+ z.object({
12309
+ dayOptions: z.never().optional(),
12310
+ hourOptions: z.object({
12311
+ minDurationInMinutes: z.number().int().describe(
12312
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
12313
+ ).min(30).max(1440).optional(),
12314
+ maxDurationInMinutes: z.number().int().describe(
12315
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
12316
+ ).min(30).max(1440).optional()
12317
+ }).describe(
12318
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
12319
+ )
12320
+ }),
12321
+ z.object({
12322
+ hourOptions: z.never().optional(),
12323
+ dayOptions: z.object({
12324
+ minDurationInDays: z.number().int().describe(
12325
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
12326
+ ).min(1).max(8).optional(),
12327
+ maxDurationInDays: z.number().int().describe(
12328
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
12329
+ ).min(1).max(8).optional()
12330
+ }).describe(
12331
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
12332
+ )
12333
+ })
12334
+ ])
12335
+ ).describe(
12336
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
12337
+ ).optional()
11782
12338
  }).describe("Limitations affecting the service availability.").optional()
11783
12339
  }).describe(
11784
12340
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -11997,7 +12553,7 @@ Default: The staff resource type.`
11997
12553
  ).optional().nullable()
11998
12554
  }).describe("Paging metadata.").optional()
11999
12555
  });
12000
- var QueryBookingFormsRequest = z.object({
12556
+ var QueryBookingFormsRequest = /* @__PURE__ */ z.object({
12001
12557
  query: z.intersection(
12002
12558
  z.object({
12003
12559
  filter: z.record(z.string(), z.any()).describe(
@@ -12030,7 +12586,7 @@ var QueryBookingFormsRequest = z.object({
12030
12586
  conditionalFields: z.array(z.enum(["DEFAULT_BOOKING_FORM"])).max(5).optional()
12031
12587
  }).optional()
12032
12588
  });
12033
- var QueryBookingFormsResponse = z.object({
12589
+ var QueryBookingFormsResponse = /* @__PURE__ */ z.object({
12034
12590
  bookingForms: z.array(
12035
12591
  z.object({
12036
12592
  formDetails: z.object({
@@ -12098,17 +12654,17 @@ var QueryBookingFormsResponse = z.object({
12098
12654
  "The site's default booking form and information about connected services."
12099
12655
  ).optional()
12100
12656
  });
12101
- var CountServicesRequest = z.object({
12657
+ var CountServicesRequest = /* @__PURE__ */ z.object({
12102
12658
  options: z.object({
12103
12659
  filter: z.record(z.string(), z.any()).describe(
12104
12660
  "Query filter to base the count on. See [Query Services](https://dev.wix.com/docs/api-reference/business-solutions/bookings/services/services-v2/query-services) for a list of supported filters."
12105
12661
  ).optional().nullable()
12106
12662
  }).optional()
12107
12663
  });
12108
- var CountServicesResponse = z.object({
12664
+ var CountServicesResponse = /* @__PURE__ */ z.object({
12109
12665
  count: z.number().int().describe("Number of services matching the specified filter.").optional()
12110
12666
  });
12111
- var QueryLocationsRequest = z.object({
12667
+ var QueryLocationsRequest = /* @__PURE__ */ z.object({
12112
12668
  options: z.object({
12113
12669
  filter: z.object({
12114
12670
  services: z.record(z.string(), z.any()).describe(
@@ -12118,7 +12674,7 @@ var QueryLocationsRequest = z.object({
12118
12674
  }).describe("Filter.").optional()
12119
12675
  }).optional()
12120
12676
  });
12121
- var QueryLocationsResponse = z.object({
12677
+ var QueryLocationsResponse = /* @__PURE__ */ z.object({
12122
12678
  businessLocations: z.object({
12123
12679
  exists: z.boolean().describe(
12124
12680
  "Whether at least one service matching the filter is connected to any of the\nretrieved business locations."
@@ -12209,7 +12765,7 @@ var QueryLocationsResponse = z.object({
12209
12765
  "Retrieved customer locations and whether each location is connected to at\nleast one service."
12210
12766
  ).optional()
12211
12767
  });
12212
- var QueryCategoriesRequest = z.object({
12768
+ var QueryCategoriesRequest = /* @__PURE__ */ z.object({
12213
12769
  options: z.object({
12214
12770
  filter: z.object({
12215
12771
  services: z.record(z.string(), z.any()).describe(
@@ -12219,7 +12775,7 @@ var QueryCategoriesRequest = z.object({
12219
12775
  }).describe("Filter.").optional()
12220
12776
  }).optional()
12221
12777
  });
12222
- var QueryCategoriesResponse = z.object({
12778
+ var QueryCategoriesResponse = /* @__PURE__ */ z.object({
12223
12779
  categories: z.array(
12224
12780
  z.object({
12225
12781
  _id: z.string().describe("Category ID.").regex(
@@ -12231,7 +12787,7 @@ var QueryCategoriesResponse = z.object({
12231
12787
  })
12232
12788
  ).optional()
12233
12789
  });
12234
- var SetServiceLocationsRequest = z.object({
12790
+ var SetServiceLocationsRequest = /* @__PURE__ */ z.object({
12235
12791
  serviceId: z.string().describe("ID of the service.").regex(
12236
12792
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
12237
12793
  "Must be a valid GUID"
@@ -12403,7 +12959,7 @@ var SetServiceLocationsRequest = z.object({
12403
12959
  ).optional()
12404
12960
  }).optional()
12405
12961
  });
12406
- var SetServiceLocationsResponse = z.object({
12962
+ var SetServiceLocationsResponse = /* @__PURE__ */ z.object({
12407
12963
  service: z.object({
12408
12964
  _id: z.string().describe("Service ID.").regex(
12409
12965
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
@@ -12956,7 +13512,48 @@ var SetServiceLocationsResponse = z.object({
12956
13512
  sessionDurations: z.array(z.number().int()).max(50).optional(),
12957
13513
  timeBetweenSessions: z.number().int().describe(
12958
13514
  "The number of minutes between the end of a session and the start of the next."
12959
- ).min(0).max(720).optional()
13515
+ ).min(0).max(720).optional(),
13516
+ durationRange: z.intersection(
13517
+ z.object({
13518
+ unitType: z.enum(["HOUR", "DAY"]).describe(
13519
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
13520
+ ).optional()
13521
+ }),
13522
+ z.xor([
13523
+ z.object({
13524
+ hourOptions: z.never().optional(),
13525
+ dayOptions: z.never().optional()
13526
+ }),
13527
+ z.object({
13528
+ dayOptions: z.never().optional(),
13529
+ hourOptions: z.object({
13530
+ minDurationInMinutes: z.number().int().describe(
13531
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
13532
+ ).min(30).max(1440).optional(),
13533
+ maxDurationInMinutes: z.number().int().describe(
13534
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
13535
+ ).min(30).max(1440).optional()
13536
+ }).describe(
13537
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
13538
+ )
13539
+ }),
13540
+ z.object({
13541
+ hourOptions: z.never().optional(),
13542
+ dayOptions: z.object({
13543
+ minDurationInDays: z.number().int().describe(
13544
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
13545
+ ).min(1).max(8).optional(),
13546
+ maxDurationInDays: z.number().int().describe(
13547
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
13548
+ ).min(1).max(8).optional()
13549
+ }).describe(
13550
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
13551
+ )
13552
+ })
13553
+ ])
13554
+ ).describe(
13555
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
13556
+ ).optional()
12960
13557
  }).describe("Limitations affecting the service availability.").optional()
12961
13558
  }).describe(
12962
13559
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -13151,14 +13748,14 @@ Default: The staff resource type.`
13151
13748
  ).optional().nullable()
13152
13749
  }).describe("The updated service with the newly set locations.").optional()
13153
13750
  });
13154
- var EnablePricingPlansForServiceRequest = z.object({
13751
+ var EnablePricingPlansForServiceRequest = /* @__PURE__ */ z.object({
13155
13752
  serviceId: z.string().describe("ID of the service to update.").regex(
13156
13753
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
13157
13754
  "Must be a valid GUID"
13158
13755
  ),
13159
13756
  pricingPlanIds: z.array(z.string()).max(100)
13160
13757
  });
13161
- var EnablePricingPlansForServiceResponse = z.object({
13758
+ var EnablePricingPlansForServiceResponse = /* @__PURE__ */ z.object({
13162
13759
  service: z.object({
13163
13760
  _id: z.string().describe("Service ID.").regex(
13164
13761
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
@@ -13711,7 +14308,48 @@ var EnablePricingPlansForServiceResponse = z.object({
13711
14308
  sessionDurations: z.array(z.number().int()).max(50).optional(),
13712
14309
  timeBetweenSessions: z.number().int().describe(
13713
14310
  "The number of minutes between the end of a session and the start of the next."
13714
- ).min(0).max(720).optional()
14311
+ ).min(0).max(720).optional(),
14312
+ durationRange: z.intersection(
14313
+ z.object({
14314
+ unitType: z.enum(["HOUR", "DAY"]).describe(
14315
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
14316
+ ).optional()
14317
+ }),
14318
+ z.xor([
14319
+ z.object({
14320
+ hourOptions: z.never().optional(),
14321
+ dayOptions: z.never().optional()
14322
+ }),
14323
+ z.object({
14324
+ dayOptions: z.never().optional(),
14325
+ hourOptions: z.object({
14326
+ minDurationInMinutes: z.number().int().describe(
14327
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
14328
+ ).min(30).max(1440).optional(),
14329
+ maxDurationInMinutes: z.number().int().describe(
14330
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
14331
+ ).min(30).max(1440).optional()
14332
+ }).describe(
14333
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
14334
+ )
14335
+ }),
14336
+ z.object({
14337
+ hourOptions: z.never().optional(),
14338
+ dayOptions: z.object({
14339
+ minDurationInDays: z.number().int().describe(
14340
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
14341
+ ).min(1).max(8).optional(),
14342
+ maxDurationInDays: z.number().int().describe(
14343
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
14344
+ ).min(1).max(8).optional()
14345
+ }).describe(
14346
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
14347
+ )
14348
+ })
14349
+ ])
14350
+ ).describe(
14351
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
14352
+ ).optional()
13715
14353
  }).describe("Limitations affecting the service availability.").optional()
13716
14354
  }).describe(
13717
14355
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -13906,14 +14544,14 @@ Default: The staff resource type.`
13906
14544
  ).optional().nullable()
13907
14545
  }).describe("Updated service.").optional()
13908
14546
  });
13909
- var DisablePricingPlansForServiceRequest = z.object({
14547
+ var DisablePricingPlansForServiceRequest = /* @__PURE__ */ z.object({
13910
14548
  serviceId: z.string().describe("ID of the service to update.").regex(
13911
14549
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
13912
14550
  "Must be a valid GUID"
13913
14551
  ),
13914
14552
  options: z.object({ pricingPlanIds: z.array(z.string()).max(75).optional() }).optional()
13915
14553
  });
13916
- var DisablePricingPlansForServiceResponse = z.object({
14554
+ var DisablePricingPlansForServiceResponse = /* @__PURE__ */ z.object({
13917
14555
  service: z.object({
13918
14556
  _id: z.string().describe("Service ID.").regex(
13919
14557
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
@@ -14466,7 +15104,48 @@ var DisablePricingPlansForServiceResponse = z.object({
14466
15104
  sessionDurations: z.array(z.number().int()).max(50).optional(),
14467
15105
  timeBetweenSessions: z.number().int().describe(
14468
15106
  "The number of minutes between the end of a session and the start of the next."
14469
- ).min(0).max(720).optional()
15107
+ ).min(0).max(720).optional(),
15108
+ durationRange: z.intersection(
15109
+ z.object({
15110
+ unitType: z.enum(["HOUR", "DAY"]).describe(
15111
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
15112
+ ).optional()
15113
+ }),
15114
+ z.xor([
15115
+ z.object({
15116
+ hourOptions: z.never().optional(),
15117
+ dayOptions: z.never().optional()
15118
+ }),
15119
+ z.object({
15120
+ dayOptions: z.never().optional(),
15121
+ hourOptions: z.object({
15122
+ minDurationInMinutes: z.number().int().describe(
15123
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
15124
+ ).min(30).max(1440).optional(),
15125
+ maxDurationInMinutes: z.number().int().describe(
15126
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
15127
+ ).min(30).max(1440).optional()
15128
+ }).describe(
15129
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
15130
+ )
15131
+ }),
15132
+ z.object({
15133
+ hourOptions: z.never().optional(),
15134
+ dayOptions: z.object({
15135
+ minDurationInDays: z.number().int().describe(
15136
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
15137
+ ).min(1).max(8).optional(),
15138
+ maxDurationInDays: z.number().int().describe(
15139
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
15140
+ ).min(1).max(8).optional()
15141
+ }).describe(
15142
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
15143
+ )
15144
+ })
15145
+ ])
15146
+ ).describe(
15147
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
15148
+ ).optional()
14470
15149
  }).describe("Limitations affecting the service availability.").optional()
14471
15150
  }).describe(
14472
15151
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -14661,7 +15340,7 @@ Default: The staff resource type.`
14661
15340
  ).optional().nullable()
14662
15341
  }).describe("Updated service.").optional()
14663
15342
  });
14664
- var SetCustomSlugRequest = z.object({
15343
+ var SetCustomSlugRequest = /* @__PURE__ */ z.object({
14665
15344
  serviceId: z.string().describe("ID of the service for which to update the active slug.").regex(
14666
15345
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
14667
15346
  "Must be a valid GUID"
@@ -14670,7 +15349,7 @@ var SetCustomSlugRequest = z.object({
14670
15349
  slug: z.string().describe("Slug to set as the active service slug.").max(500).optional()
14671
15350
  }).optional()
14672
15351
  });
14673
- var SetCustomSlugResponse = z.object({
15352
+ var SetCustomSlugResponse = /* @__PURE__ */ z.object({
14674
15353
  slug: z.object({
14675
15354
  name: z.string().describe(
14676
15355
  "The unique part of service's URL that identifies the service's information page. For example, `service-1` in `https:/example.com/services/service-1`."
@@ -15232,7 +15911,48 @@ var SetCustomSlugResponse = z.object({
15232
15911
  sessionDurations: z.array(z.number().int()).max(50).optional(),
15233
15912
  timeBetweenSessions: z.number().int().describe(
15234
15913
  "The number of minutes between the end of a session and the start of the next."
15235
- ).min(0).max(720).optional()
15914
+ ).min(0).max(720).optional(),
15915
+ durationRange: z.intersection(
15916
+ z.object({
15917
+ unitType: z.enum(["HOUR", "DAY"]).describe(
15918
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
15919
+ ).optional()
15920
+ }),
15921
+ z.xor([
15922
+ z.object({
15923
+ hourOptions: z.never().optional(),
15924
+ dayOptions: z.never().optional()
15925
+ }),
15926
+ z.object({
15927
+ dayOptions: z.never().optional(),
15928
+ hourOptions: z.object({
15929
+ minDurationInMinutes: z.number().int().describe(
15930
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
15931
+ ).min(30).max(1440).optional(),
15932
+ maxDurationInMinutes: z.number().int().describe(
15933
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
15934
+ ).min(30).max(1440).optional()
15935
+ }).describe(
15936
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
15937
+ )
15938
+ }),
15939
+ z.object({
15940
+ hourOptions: z.never().optional(),
15941
+ dayOptions: z.object({
15942
+ minDurationInDays: z.number().int().describe(
15943
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
15944
+ ).min(1).max(8).optional(),
15945
+ maxDurationInDays: z.number().int().describe(
15946
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
15947
+ ).min(1).max(8).optional()
15948
+ }).describe(
15949
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
15950
+ )
15951
+ })
15952
+ ])
15953
+ ).describe(
15954
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
15955
+ ).optional()
15236
15956
  }).describe("Limitations affecting the service availability.").optional()
15237
15957
  }).describe(
15238
15958
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -15427,7 +16147,7 @@ Default: The staff resource type.`
15427
16147
  ).optional().nullable()
15428
16148
  }).describe("Updated service.").optional()
15429
16149
  });
15430
- var ValidateSlugRequest = z.object({
16150
+ var ValidateSlugRequest = /* @__PURE__ */ z.object({
15431
16151
  serviceId: z.string().describe("IO of the service to check custom slug validity for.").regex(
15432
16152
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
15433
16153
  "Must be a valid GUID"
@@ -15436,18 +16156,18 @@ var ValidateSlugRequest = z.object({
15436
16156
  slug: z.string().describe("Custom slug to validate.").max(500).optional()
15437
16157
  }).optional()
15438
16158
  });
15439
- var ValidateSlugResponse = z.object({
16159
+ var ValidateSlugResponse = /* @__PURE__ */ z.object({
15440
16160
  valid: z.boolean().describe("Whether the slug is valid.").optional(),
15441
16161
  slug: z.string().describe('Valid slug. Available only if `{"valid": true}`.').max(500).optional().nullable(),
15442
16162
  errors: z.array(z.enum(["SLUG_CONTAINS_ILLEGAL_CHARACTERS", "SLUG_ALREADY_EXISTS"])).max(3).optional()
15443
16163
  });
15444
- var CloneServiceRequest = z.object({
16164
+ var CloneServiceRequest = /* @__PURE__ */ z.object({
15445
16165
  sourceServiceId: z.string().describe("ID of the service to clone.").regex(
15446
16166
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
15447
16167
  "Must be a valid GUID"
15448
16168
  )
15449
16169
  });
15450
- var CloneServiceResponse = z.object({
16170
+ var CloneServiceResponse = /* @__PURE__ */ z.object({
15451
16171
  service: z.object({
15452
16172
  _id: z.string().describe("Service ID.").regex(
15453
16173
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
@@ -16000,7 +16720,48 @@ var CloneServiceResponse = z.object({
16000
16720
  sessionDurations: z.array(z.number().int()).max(50).optional(),
16001
16721
  timeBetweenSessions: z.number().int().describe(
16002
16722
  "The number of minutes between the end of a session and the start of the next."
16003
- ).min(0).max(720).optional()
16723
+ ).min(0).max(720).optional(),
16724
+ durationRange: z.intersection(
16725
+ z.object({
16726
+ unitType: z.enum(["HOUR", "DAY"]).describe(
16727
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
16728
+ ).optional()
16729
+ }),
16730
+ z.xor([
16731
+ z.object({
16732
+ hourOptions: z.never().optional(),
16733
+ dayOptions: z.never().optional()
16734
+ }),
16735
+ z.object({
16736
+ dayOptions: z.never().optional(),
16737
+ hourOptions: z.object({
16738
+ minDurationInMinutes: z.number().int().describe(
16739
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
16740
+ ).min(30).max(1440).optional(),
16741
+ maxDurationInMinutes: z.number().int().describe(
16742
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
16743
+ ).min(30).max(1440).optional()
16744
+ }).describe(
16745
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
16746
+ )
16747
+ }),
16748
+ z.object({
16749
+ hourOptions: z.never().optional(),
16750
+ dayOptions: z.object({
16751
+ minDurationInDays: z.number().int().describe(
16752
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
16753
+ ).min(1).max(8).optional(),
16754
+ maxDurationInDays: z.number().int().describe(
16755
+ "Maximum bookable duration in days. The customer can't book for more than this number of days.\n\nMust be greater than or equal to `minDurationInDays`."
16756
+ ).min(1).max(8).optional()
16757
+ }).describe(
16758
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
16759
+ )
16760
+ })
16761
+ ])
16762
+ ).describe(
16763
+ "Duration range for the service. When set, the customer picks a duration\nwithin the configured min/max range instead of a fixed session duration.\nMutually exclusive with `sessionDurations`. A service uses one or the other.\nCan't be combined with `workingHours`.\n\nUse `durationRange` for services where the customer chooses how long to book,\nsuch as equipment or space rentals. The `unitType` determines whether the range\nis measured in hours or days."
16764
+ ).optional()
16004
16765
  }).describe("Limitations affecting the service availability.").optional()
16005
16766
  }).describe(
16006
16767
  "The service's [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/introduction),\nwhich can be used to manage the service's [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/introduction)."
@@ -16196,7 +16957,7 @@ Default: The staff resource type.`
16196
16957
  }).describe("Cloned service.").optional(),
16197
16958
  errors: z.array(z.enum(["OPTIONS_AND_VARIANTS", "FORM"])).optional()
16198
16959
  });
16199
- var CreateAddOnGroupRequest = z.object({
16960
+ var CreateAddOnGroupRequest = /* @__PURE__ */ z.object({
16200
16961
  addOnGroup: z.object({
16201
16962
  _id: z.string().describe(
16202
16963
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."
@@ -16220,7 +16981,7 @@ var CreateAddOnGroupRequest = z.object({
16220
16981
  )
16221
16982
  })
16222
16983
  });
16223
- var CreateAddOnGroupResponse = z.object({
16984
+ var CreateAddOnGroupResponse = /* @__PURE__ */ z.object({
16224
16985
  addOnGroup: z.object({
16225
16986
  _id: z.string().describe(
16226
16987
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."
@@ -16238,7 +16999,7 @@ var CreateAddOnGroupResponse = z.object({
16238
16999
  ).max(200).optional().nullable()
16239
17000
  }).describe("Created add-on group.").optional()
16240
17001
  });
16241
- var DeleteAddOnGroupRequest = z.object({
17002
+ var DeleteAddOnGroupRequest = /* @__PURE__ */ z.object({
16242
17003
  addOnGroupId: z.string().describe("ID of the add-on group to delete.").regex(
16243
17004
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
16244
17005
  "Must be a valid GUID"
@@ -16250,8 +17011,8 @@ var DeleteAddOnGroupRequest = z.object({
16250
17011
  )
16251
17012
  })
16252
17013
  });
16253
- var DeleteAddOnGroupResponse = z.object({});
16254
- var UpdateAddOnGroupRequest = z.object({
17014
+ var DeleteAddOnGroupResponse = /* @__PURE__ */ z.object({});
17015
+ var UpdateAddOnGroupRequest = /* @__PURE__ */ z.object({
16255
17016
  addOnGroup: z.object({
16256
17017
  _id: z.string().describe(
16257
17018
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."
@@ -16275,7 +17036,7 @@ var UpdateAddOnGroupRequest = z.object({
16275
17036
  )
16276
17037
  })
16277
17038
  });
16278
- var UpdateAddOnGroupResponse = z.object({
17039
+ var UpdateAddOnGroupResponse = /* @__PURE__ */ z.object({
16279
17040
  addOnGroup: z.object({
16280
17041
  _id: z.string().describe(
16281
17042
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."
@@ -16293,14 +17054,14 @@ var UpdateAddOnGroupResponse = z.object({
16293
17054
  ).max(200).optional().nullable()
16294
17055
  }).describe("Updated add-on group.").optional()
16295
17056
  });
16296
- var ListAddOnGroupsByServiceIdRequest = z.object({
17057
+ var ListAddOnGroupsByServiceIdRequest = /* @__PURE__ */ z.object({
16297
17058
  serviceId: z.string().describe("ID of the service to retrieve add-on groups for.").regex(
16298
17059
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
16299
17060
  "Must be a valid GUID"
16300
17061
  ),
16301
17062
  options: z.object({ groupIds: z.array(z.string()).max(3).optional() }).optional()
16302
17063
  });
16303
- var ListAddOnGroupsByServiceIdResponse = z.object({
17064
+ var ListAddOnGroupsByServiceIdResponse = /* @__PURE__ */ z.object({
16304
17065
  addOnGroupsDetails: z.array(
16305
17066
  z.object({
16306
17067
  groupId: z.string().describe("Group ID.").regex(
@@ -16362,7 +17123,7 @@ var ListAddOnGroupsByServiceIdResponse = z.object({
16362
17123
  })
16363
17124
  ).max(3).optional()
16364
17125
  });
16365
- var SetAddOnsForGroupRequest = z.object({
17126
+ var SetAddOnsForGroupRequest = /* @__PURE__ */ z.object({
16366
17127
  serviceId: z.string().describe("Service ID containing the group.").regex(
16367
17128
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
16368
17129
  "Must be a valid GUID"
@@ -16375,7 +17136,7 @@ var SetAddOnsForGroupRequest = z.object({
16375
17136
  addOnIds: z.array(z.string()).min(1).max(7)
16376
17137
  })
16377
17138
  });
16378
- var SetAddOnsForGroupResponse = z.object({
17139
+ var SetAddOnsForGroupResponse = /* @__PURE__ */ z.object({
16379
17140
  addOnGroup: z.object({
16380
17141
  _id: z.string().describe(
16381
17142
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."