@wix/auto_sdk_bookings_services 1.0.271 → 1.0.273

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-Bd9XLcFP.d.ts} +27 -26
  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 +14 -3
  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-Bd9XLcFP.d.mts} +27 -26
  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 +14 -3
  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-CROlUGF1.d.ts} +16 -27
  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 +3 -4
  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-CROlUGF1.d.mts} +16 -27
  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 +3 -4
  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 +3 -3
@@ -89,7 +89,7 @@ module.exports = __toCommonJS(schemas_exports);
89
89
 
90
90
  // src/bookings-services-v2-service-services.schemas.ts
91
91
  var z = __toESM(require("zod"));
92
- var CreateServiceRequest = z.object({
92
+ var CreateServiceRequest = /* @__PURE__ */ z.object({
93
93
  service: z.object({
94
94
  _id: z.string().describe("Service ID.").regex(
95
95
  /^[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}$/,
@@ -636,7 +636,44 @@ var CreateServiceRequest = z.object({
636
636
  sessionDurations: z.array(z.number().int()).max(50).optional(),
637
637
  timeBetweenSessions: z.number().int().describe(
638
638
  "The number of minutes between the end of a session and the start of the next."
639
- ).min(0).max(720).optional()
639
+ ).min(0).max(720).optional(),
640
+ durationRange: z.intersection(
641
+ z.object({ unitType: z.enum(["HOUR", "DAY"]).optional() }),
642
+ z.xor([
643
+ z.object({
644
+ hourOptions: z.never().optional(),
645
+ dayOptions: z.never().optional()
646
+ }),
647
+ z.object({
648
+ dayOptions: z.never().optional(),
649
+ hourOptions: z.object({
650
+ minDurationInMinutes: z.number().int().describe(
651
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
652
+ ).min(30).max(1440).optional(),
653
+ maxDurationInMinutes: z.number().int().describe(
654
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
655
+ ).min(30).max(1440).optional()
656
+ }).describe(
657
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
658
+ )
659
+ }),
660
+ z.object({
661
+ hourOptions: z.never().optional(),
662
+ dayOptions: z.object({
663
+ minDurationInDays: z.number().int().describe(
664
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
665
+ ).min(1).max(8).optional(),
666
+ maxDurationInDays: z.number().int().describe(
667
+ "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`."
668
+ ).min(1).max(8).optional()
669
+ }).describe(
670
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
671
+ )
672
+ })
673
+ ])
674
+ ).describe(
675
+ "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."
676
+ ).optional()
640
677
  }).describe("Limitations affecting the service availability.").optional()
641
678
  }).describe(
642
679
  "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)."
@@ -831,7 +868,7 @@ Default: The staff resource type.`
831
868
  ).optional().nullable()
832
869
  }).describe("Service to create.")
833
870
  });
834
- var CreateServiceResponse = z.object({
871
+ var CreateServiceResponse = /* @__PURE__ */ z.object({
835
872
  _id: z.string().describe("Service ID.").regex(
836
873
  /^[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}$/,
837
874
  "Must be a valid GUID"
@@ -1379,7 +1416,48 @@ var CreateServiceResponse = z.object({
1379
1416
  sessionDurations: z.array(z.number().int()).max(50).optional(),
1380
1417
  timeBetweenSessions: z.number().int().describe(
1381
1418
  "The number of minutes between the end of a session and the start of the next."
1382
- ).min(0).max(720).optional()
1419
+ ).min(0).max(720).optional(),
1420
+ durationRange: z.intersection(
1421
+ z.object({
1422
+ unitType: z.enum(["HOUR", "DAY"]).describe(
1423
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
1424
+ ).optional()
1425
+ }),
1426
+ z.xor([
1427
+ z.object({
1428
+ hourOptions: z.never().optional(),
1429
+ dayOptions: z.never().optional()
1430
+ }),
1431
+ z.object({
1432
+ dayOptions: z.never().optional(),
1433
+ hourOptions: z.object({
1434
+ minDurationInMinutes: z.number().int().describe(
1435
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
1436
+ ).min(30).max(1440).optional(),
1437
+ maxDurationInMinutes: z.number().int().describe(
1438
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
1439
+ ).min(30).max(1440).optional()
1440
+ }).describe(
1441
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
1442
+ )
1443
+ }),
1444
+ z.object({
1445
+ hourOptions: z.never().optional(),
1446
+ dayOptions: z.object({
1447
+ minDurationInDays: z.number().int().describe(
1448
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
1449
+ ).min(1).max(8).optional(),
1450
+ maxDurationInDays: z.number().int().describe(
1451
+ "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`."
1452
+ ).min(1).max(8).optional()
1453
+ }).describe(
1454
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
1455
+ )
1456
+ })
1457
+ ])
1458
+ ).describe(
1459
+ "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."
1460
+ ).optional()
1383
1461
  }).describe("Limitations affecting the service availability.").optional()
1384
1462
  }).describe(
1385
1463
  "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)."
@@ -1569,7 +1647,7 @@ Default: The staff resource type.`
1569
1647
  "Must be a valid GUID"
1570
1648
  ).optional().nullable()
1571
1649
  });
1572
- var BulkCreateServicesRequest = z.object({
1650
+ var BulkCreateServicesRequest = /* @__PURE__ */ z.object({
1573
1651
  services: z.array(
1574
1652
  z.object({
1575
1653
  _id: z.string().describe("Service ID.").regex(
@@ -2121,7 +2199,44 @@ var BulkCreateServicesRequest = z.object({
2121
2199
  sessionDurations: z.array(z.number().int()).max(50).optional(),
2122
2200
  timeBetweenSessions: z.number().int().describe(
2123
2201
  "The number of minutes between the end of a session and the start of the next."
2124
- ).min(0).max(720).optional()
2202
+ ).min(0).max(720).optional(),
2203
+ durationRange: z.intersection(
2204
+ z.object({ unitType: z.enum(["HOUR", "DAY"]).optional() }),
2205
+ z.xor([
2206
+ z.object({
2207
+ hourOptions: z.never().optional(),
2208
+ dayOptions: z.never().optional()
2209
+ }),
2210
+ z.object({
2211
+ dayOptions: z.never().optional(),
2212
+ hourOptions: z.object({
2213
+ minDurationInMinutes: z.number().int().describe(
2214
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
2215
+ ).min(30).max(1440).optional(),
2216
+ maxDurationInMinutes: z.number().int().describe(
2217
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
2218
+ ).min(30).max(1440).optional()
2219
+ }).describe(
2220
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
2221
+ )
2222
+ }),
2223
+ z.object({
2224
+ hourOptions: z.never().optional(),
2225
+ dayOptions: z.object({
2226
+ minDurationInDays: z.number().int().describe(
2227
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
2228
+ ).min(1).max(8).optional(),
2229
+ maxDurationInDays: z.number().int().describe(
2230
+ "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`."
2231
+ ).min(1).max(8).optional()
2232
+ }).describe(
2233
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
2234
+ )
2235
+ })
2236
+ ])
2237
+ ).describe(
2238
+ "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."
2239
+ ).optional()
2125
2240
  }).describe("Limitations affecting the service availability.").optional()
2126
2241
  }).describe(
2127
2242
  "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)."
@@ -2320,7 +2435,7 @@ Default: The staff resource type.`
2320
2435
  returnEntity: z.boolean().describe("Whether to return the created service objects.").optional()
2321
2436
  }).optional()
2322
2437
  });
2323
- var BulkCreateServicesResponse = z.object({
2438
+ var BulkCreateServicesResponse = /* @__PURE__ */ z.object({
2324
2439
  results: z.array(
2325
2440
  z.object({
2326
2441
  itemMetadata: z.object({
@@ -2910,7 +3025,48 @@ var BulkCreateServicesResponse = z.object({
2910
3025
  sessionDurations: z.array(z.number().int()).max(50).optional(),
2911
3026
  timeBetweenSessions: z.number().int().describe(
2912
3027
  "The number of minutes between the end of a session and the start of the next."
2913
- ).min(0).max(720).optional()
3028
+ ).min(0).max(720).optional(),
3029
+ durationRange: z.intersection(
3030
+ z.object({
3031
+ unitType: z.enum(["HOUR", "DAY"]).describe(
3032
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
3033
+ ).optional()
3034
+ }),
3035
+ z.xor([
3036
+ z.object({
3037
+ hourOptions: z.never().optional(),
3038
+ dayOptions: z.never().optional()
3039
+ }),
3040
+ z.object({
3041
+ dayOptions: z.never().optional(),
3042
+ hourOptions: z.object({
3043
+ minDurationInMinutes: z.number().int().describe(
3044
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
3045
+ ).min(30).max(1440).optional(),
3046
+ maxDurationInMinutes: z.number().int().describe(
3047
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
3048
+ ).min(30).max(1440).optional()
3049
+ }).describe(
3050
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
3051
+ )
3052
+ }),
3053
+ z.object({
3054
+ hourOptions: z.never().optional(),
3055
+ dayOptions: z.object({
3056
+ minDurationInDays: z.number().int().describe(
3057
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
3058
+ ).min(1).max(8).optional(),
3059
+ maxDurationInDays: z.number().int().describe(
3060
+ "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`."
3061
+ ).min(1).max(8).optional()
3062
+ }).describe(
3063
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
3064
+ )
3065
+ })
3066
+ ])
3067
+ ).describe(
3068
+ "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."
3069
+ ).optional()
2914
3070
  }).describe("Limitations affecting the service availability.").optional()
2915
3071
  }).describe(
2916
3072
  "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)."
@@ -3116,7 +3272,7 @@ Default: The staff resource type.`
3116
3272
  ).optional()
3117
3273
  }).describe("Create statistics.").optional()
3118
3274
  });
3119
- var GetServiceRequest = z.object({
3275
+ var GetServiceRequest = /* @__PURE__ */ z.object({
3120
3276
  serviceId: z.string().describe("ID of the service to retrieve.").regex(
3121
3277
  /^[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}$/,
3122
3278
  "Must be a valid GUID"
@@ -3132,7 +3288,7 @@ var GetServiceRequest = z.object({
3132
3288
  ).max(5).optional()
3133
3289
  }).optional()
3134
3290
  });
3135
- var GetServiceResponse = z.object({
3291
+ var GetServiceResponse = /* @__PURE__ */ z.object({
3136
3292
  _id: z.string().describe("Service ID.").regex(
3137
3293
  /^[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}$/,
3138
3294
  "Must be a valid GUID"
@@ -3680,7 +3836,48 @@ var GetServiceResponse = z.object({
3680
3836
  sessionDurations: z.array(z.number().int()).max(50).optional(),
3681
3837
  timeBetweenSessions: z.number().int().describe(
3682
3838
  "The number of minutes between the end of a session and the start of the next."
3683
- ).min(0).max(720).optional()
3839
+ ).min(0).max(720).optional(),
3840
+ durationRange: z.intersection(
3841
+ z.object({
3842
+ unitType: z.enum(["HOUR", "DAY"]).describe(
3843
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
3844
+ ).optional()
3845
+ }),
3846
+ z.xor([
3847
+ z.object({
3848
+ hourOptions: z.never().optional(),
3849
+ dayOptions: z.never().optional()
3850
+ }),
3851
+ z.object({
3852
+ dayOptions: z.never().optional(),
3853
+ hourOptions: z.object({
3854
+ minDurationInMinutes: z.number().int().describe(
3855
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
3856
+ ).min(30).max(1440).optional(),
3857
+ maxDurationInMinutes: z.number().int().describe(
3858
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
3859
+ ).min(30).max(1440).optional()
3860
+ }).describe(
3861
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
3862
+ )
3863
+ }),
3864
+ z.object({
3865
+ hourOptions: z.never().optional(),
3866
+ dayOptions: z.object({
3867
+ minDurationInDays: z.number().int().describe(
3868
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
3869
+ ).min(1).max(8).optional(),
3870
+ maxDurationInDays: z.number().int().describe(
3871
+ "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`."
3872
+ ).min(1).max(8).optional()
3873
+ }).describe(
3874
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
3875
+ )
3876
+ })
3877
+ ])
3878
+ ).describe(
3879
+ "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."
3880
+ ).optional()
3684
3881
  }).describe("Limitations affecting the service availability.").optional()
3685
3882
  }).describe(
3686
3883
  "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)."
@@ -3870,7 +4067,7 @@ Default: The staff resource type.`
3870
4067
  "Must be a valid GUID"
3871
4068
  ).optional().nullable()
3872
4069
  });
3873
- var UpdateServiceRequest = z.object({
4070
+ var UpdateServiceRequest = /* @__PURE__ */ z.object({
3874
4071
  _id: z.string().describe("Service ID.").regex(
3875
4072
  /^[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}$/,
3876
4073
  "Must be a valid GUID"
@@ -4421,7 +4618,44 @@ var UpdateServiceRequest = z.object({
4421
4618
  sessionDurations: z.array(z.number().int()).max(50).optional(),
4422
4619
  timeBetweenSessions: z.number().int().describe(
4423
4620
  "The number of minutes between the end of a session and the start of the next."
4424
- ).min(0).max(720).optional()
4621
+ ).min(0).max(720).optional(),
4622
+ durationRange: z.intersection(
4623
+ z.object({ unitType: z.enum(["HOUR", "DAY"]).optional() }),
4624
+ z.xor([
4625
+ z.object({
4626
+ hourOptions: z.never().optional(),
4627
+ dayOptions: z.never().optional()
4628
+ }),
4629
+ z.object({
4630
+ dayOptions: z.never().optional(),
4631
+ hourOptions: z.object({
4632
+ minDurationInMinutes: z.number().int().describe(
4633
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
4634
+ ).min(30).max(1440).optional(),
4635
+ maxDurationInMinutes: z.number().int().describe(
4636
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
4637
+ ).min(30).max(1440).optional()
4638
+ }).describe(
4639
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
4640
+ )
4641
+ }),
4642
+ z.object({
4643
+ hourOptions: z.never().optional(),
4644
+ dayOptions: z.object({
4645
+ minDurationInDays: z.number().int().describe(
4646
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
4647
+ ).min(1).max(8).optional(),
4648
+ maxDurationInDays: z.number().int().describe(
4649
+ "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`."
4650
+ ).min(1).max(8).optional()
4651
+ }).describe(
4652
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
4653
+ )
4654
+ })
4655
+ ])
4656
+ ).describe(
4657
+ "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."
4658
+ ).optional()
4425
4659
  }).describe("Limitations affecting the service availability.").optional()
4426
4660
  }).describe(
4427
4661
  "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)."
@@ -4616,7 +4850,7 @@ Default: The staff resource type.`
4616
4850
  ).optional().nullable()
4617
4851
  }).describe("Service to update.")
4618
4852
  });
4619
- var UpdateServiceResponse = z.object({
4853
+ var UpdateServiceResponse = /* @__PURE__ */ z.object({
4620
4854
  _id: z.string().describe("Service ID.").regex(
4621
4855
  /^[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}$/,
4622
4856
  "Must be a valid GUID"
@@ -5164,7 +5398,48 @@ var UpdateServiceResponse = z.object({
5164
5398
  sessionDurations: z.array(z.number().int()).max(50).optional(),
5165
5399
  timeBetweenSessions: z.number().int().describe(
5166
5400
  "The number of minutes between the end of a session and the start of the next."
5167
- ).min(0).max(720).optional()
5401
+ ).min(0).max(720).optional(),
5402
+ durationRange: z.intersection(
5403
+ z.object({
5404
+ unitType: z.enum(["HOUR", "DAY"]).describe(
5405
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
5406
+ ).optional()
5407
+ }),
5408
+ z.xor([
5409
+ z.object({
5410
+ hourOptions: z.never().optional(),
5411
+ dayOptions: z.never().optional()
5412
+ }),
5413
+ z.object({
5414
+ dayOptions: z.never().optional(),
5415
+ hourOptions: z.object({
5416
+ minDurationInMinutes: z.number().int().describe(
5417
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
5418
+ ).min(30).max(1440).optional(),
5419
+ maxDurationInMinutes: z.number().int().describe(
5420
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
5421
+ ).min(30).max(1440).optional()
5422
+ }).describe(
5423
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
5424
+ )
5425
+ }),
5426
+ z.object({
5427
+ hourOptions: z.never().optional(),
5428
+ dayOptions: z.object({
5429
+ minDurationInDays: z.number().int().describe(
5430
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
5431
+ ).min(1).max(8).optional(),
5432
+ maxDurationInDays: z.number().int().describe(
5433
+ "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`."
5434
+ ).min(1).max(8).optional()
5435
+ }).describe(
5436
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
5437
+ )
5438
+ })
5439
+ ])
5440
+ ).describe(
5441
+ "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."
5442
+ ).optional()
5168
5443
  }).describe("Limitations affecting the service availability.").optional()
5169
5444
  }).describe(
5170
5445
  "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)."
@@ -5354,7 +5629,7 @@ Default: The staff resource type.`
5354
5629
  "Must be a valid GUID"
5355
5630
  ).optional().nullable()
5356
5631
  });
5357
- var BulkUpdateServicesRequest = z.object({
5632
+ var BulkUpdateServicesRequest = /* @__PURE__ */ z.object({
5358
5633
  options: z.object({
5359
5634
  services: z.array(
5360
5635
  z.object({
@@ -5926,7 +6201,46 @@ var BulkUpdateServicesRequest = z.object({
5926
6201
  sessionDurations: z.array(z.number().int()).max(50).optional(),
5927
6202
  timeBetweenSessions: z.number().int().describe(
5928
6203
  "The number of minutes between the end of a session and the start of the next."
5929
- ).min(0).max(720).optional()
6204
+ ).min(0).max(720).optional(),
6205
+ durationRange: z.intersection(
6206
+ z.object({
6207
+ unitType: z.enum(["HOUR", "DAY"]).optional()
6208
+ }),
6209
+ z.xor([
6210
+ z.object({
6211
+ hourOptions: z.never().optional(),
6212
+ dayOptions: z.never().optional()
6213
+ }),
6214
+ z.object({
6215
+ dayOptions: z.never().optional(),
6216
+ hourOptions: z.object({
6217
+ minDurationInMinutes: z.number().int().describe(
6218
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
6219
+ ).min(30).max(1440).optional(),
6220
+ maxDurationInMinutes: z.number().int().describe(
6221
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
6222
+ ).min(30).max(1440).optional()
6223
+ }).describe(
6224
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
6225
+ )
6226
+ }),
6227
+ z.object({
6228
+ hourOptions: z.never().optional(),
6229
+ dayOptions: z.object({
6230
+ minDurationInDays: z.number().int().describe(
6231
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
6232
+ ).min(1).max(8).optional(),
6233
+ maxDurationInDays: z.number().int().describe(
6234
+ "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`."
6235
+ ).min(1).max(8).optional()
6236
+ }).describe(
6237
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
6238
+ )
6239
+ })
6240
+ ])
6241
+ ).describe(
6242
+ "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."
6243
+ ).optional()
5930
6244
  }).describe(
5931
6245
  "Limitations affecting the service availability."
5932
6246
  ).optional()
@@ -6132,7 +6446,7 @@ Default: The staff resource type.`
6132
6446
  ).optional()
6133
6447
  }).optional()
6134
6448
  });
6135
- var BulkUpdateServicesResponse = z.object({
6449
+ var BulkUpdateServicesResponse = /* @__PURE__ */ z.object({
6136
6450
  results: z.array(
6137
6451
  z.object({
6138
6452
  itemMetadata: z.object({
@@ -6722,7 +7036,48 @@ var BulkUpdateServicesResponse = z.object({
6722
7036
  sessionDurations: z.array(z.number().int()).max(50).optional(),
6723
7037
  timeBetweenSessions: z.number().int().describe(
6724
7038
  "The number of minutes between the end of a session and the start of the next."
6725
- ).min(0).max(720).optional()
7039
+ ).min(0).max(720).optional(),
7040
+ durationRange: z.intersection(
7041
+ z.object({
7042
+ unitType: z.enum(["HOUR", "DAY"]).describe(
7043
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
7044
+ ).optional()
7045
+ }),
7046
+ z.xor([
7047
+ z.object({
7048
+ hourOptions: z.never().optional(),
7049
+ dayOptions: z.never().optional()
7050
+ }),
7051
+ z.object({
7052
+ dayOptions: z.never().optional(),
7053
+ hourOptions: z.object({
7054
+ minDurationInMinutes: z.number().int().describe(
7055
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
7056
+ ).min(30).max(1440).optional(),
7057
+ maxDurationInMinutes: z.number().int().describe(
7058
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
7059
+ ).min(30).max(1440).optional()
7060
+ }).describe(
7061
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
7062
+ )
7063
+ }),
7064
+ z.object({
7065
+ hourOptions: z.never().optional(),
7066
+ dayOptions: z.object({
7067
+ minDurationInDays: z.number().int().describe(
7068
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
7069
+ ).min(1).max(8).optional(),
7070
+ maxDurationInDays: z.number().int().describe(
7071
+ "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`."
7072
+ ).min(1).max(8).optional()
7073
+ }).describe(
7074
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
7075
+ )
7076
+ })
7077
+ ])
7078
+ ).describe(
7079
+ "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."
7080
+ ).optional()
6726
7081
  }).describe("Limitations affecting the service availability.").optional()
6727
7082
  }).describe(
6728
7083
  "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)."
@@ -6928,7 +7283,7 @@ Default: The staff resource type.`
6928
7283
  ).optional()
6929
7284
  }).describe("Update statistics.").optional()
6930
7285
  });
6931
- var BulkUpdateServicesByFilterRequest = z.object({
7286
+ var BulkUpdateServicesByFilterRequest = /* @__PURE__ */ z.object({
6932
7287
  filter: z.record(z.string(), z.any()).describe("Filter to identify the services to update."),
6933
7288
  options: z.object({
6934
7289
  service: z.object({
@@ -7481,7 +7836,44 @@ var BulkUpdateServicesByFilterRequest = z.object({
7481
7836
  sessionDurations: z.array(z.number().int()).max(50).optional(),
7482
7837
  timeBetweenSessions: z.number().int().describe(
7483
7838
  "The number of minutes between the end of a session and the start of the next."
7484
- ).min(0).max(720).optional()
7839
+ ).min(0).max(720).optional(),
7840
+ durationRange: z.intersection(
7841
+ z.object({ unitType: z.enum(["HOUR", "DAY"]).optional() }),
7842
+ z.xor([
7843
+ z.object({
7844
+ hourOptions: z.never().optional(),
7845
+ dayOptions: z.never().optional()
7846
+ }),
7847
+ z.object({
7848
+ dayOptions: z.never().optional(),
7849
+ hourOptions: z.object({
7850
+ minDurationInMinutes: z.number().int().describe(
7851
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
7852
+ ).min(30).max(1440).optional(),
7853
+ maxDurationInMinutes: z.number().int().describe(
7854
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
7855
+ ).min(30).max(1440).optional()
7856
+ }).describe(
7857
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
7858
+ )
7859
+ }),
7860
+ z.object({
7861
+ hourOptions: z.never().optional(),
7862
+ dayOptions: z.object({
7863
+ minDurationInDays: z.number().int().describe(
7864
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
7865
+ ).min(1).max(8).optional(),
7866
+ maxDurationInDays: z.number().int().describe(
7867
+ "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`."
7868
+ ).min(1).max(8).optional()
7869
+ }).describe(
7870
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
7871
+ )
7872
+ })
7873
+ ])
7874
+ ).describe(
7875
+ "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."
7876
+ ).optional()
7485
7877
  }).describe("Limitations affecting the service availability.").optional()
7486
7878
  }).describe(
7487
7879
  "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)."
@@ -7677,7 +8069,7 @@ Default: The staff resource type.`
7677
8069
  }).describe("Service to update.")
7678
8070
  })
7679
8071
  });
7680
- var BulkUpdateServicesByFilterResponse = z.object({
8072
+ var BulkUpdateServicesByFilterResponse = /* @__PURE__ */ z.object({
7681
8073
  jobId: z.string().describe(
7682
8074
  "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."
7683
8075
  ).regex(
@@ -7685,7 +8077,7 @@ var BulkUpdateServicesByFilterResponse = z.object({
7685
8077
  "Must be a valid GUID"
7686
8078
  ).optional()
7687
8079
  });
7688
- var DeleteServiceRequest = z.object({
8080
+ var DeleteServiceRequest = /* @__PURE__ */ z.object({
7689
8081
  serviceId: z.string().describe("ID of the service to delete.").regex(
7690
8082
  /^[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}$/,
7691
8083
  "Must be a valid GUID"
@@ -7708,8 +8100,8 @@ var DeleteServiceRequest = z.object({
7708
8100
  "Allows you to configure how to handle the deleted service's future sessions and how to notify the sessions participants."
7709
8101
  ).optional()
7710
8102
  });
7711
- var DeleteServiceResponse = z.object({});
7712
- var BulkDeleteServicesRequest = z.object({
8103
+ var DeleteServiceResponse = /* @__PURE__ */ z.object({});
8104
+ var BulkDeleteServicesRequest = /* @__PURE__ */ z.object({
7713
8105
  ids: z.array(z.string()).max(100),
7714
8106
  options: z.object({
7715
8107
  preserveFutureSessionsWithParticipants: z.boolean().describe(
@@ -7727,7 +8119,7 @@ var BulkDeleteServicesRequest = z.object({
7727
8119
  ).optional()
7728
8120
  }).optional()
7729
8121
  });
7730
- var BulkDeleteServicesResponse = z.object({
8122
+ var BulkDeleteServicesResponse = /* @__PURE__ */ z.object({
7731
8123
  results: z.array(
7732
8124
  z.object({
7733
8125
  itemMetadata: z.object({
@@ -8317,7 +8709,48 @@ var BulkDeleteServicesResponse = z.object({
8317
8709
  sessionDurations: z.array(z.number().int()).max(50).optional(),
8318
8710
  timeBetweenSessions: z.number().int().describe(
8319
8711
  "The number of minutes between the end of a session and the start of the next."
8320
- ).min(0).max(720).optional()
8712
+ ).min(0).max(720).optional(),
8713
+ durationRange: z.intersection(
8714
+ z.object({
8715
+ unitType: z.enum(["HOUR", "DAY"]).describe(
8716
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
8717
+ ).optional()
8718
+ }),
8719
+ z.xor([
8720
+ z.object({
8721
+ hourOptions: z.never().optional(),
8722
+ dayOptions: z.never().optional()
8723
+ }),
8724
+ z.object({
8725
+ dayOptions: z.never().optional(),
8726
+ hourOptions: z.object({
8727
+ minDurationInMinutes: z.number().int().describe(
8728
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
8729
+ ).min(30).max(1440).optional(),
8730
+ maxDurationInMinutes: z.number().int().describe(
8731
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
8732
+ ).min(30).max(1440).optional()
8733
+ }).describe(
8734
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
8735
+ )
8736
+ }),
8737
+ z.object({
8738
+ hourOptions: z.never().optional(),
8739
+ dayOptions: z.object({
8740
+ minDurationInDays: z.number().int().describe(
8741
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
8742
+ ).min(1).max(8).optional(),
8743
+ maxDurationInDays: z.number().int().describe(
8744
+ "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`."
8745
+ ).min(1).max(8).optional()
8746
+ }).describe(
8747
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
8748
+ )
8749
+ })
8750
+ ])
8751
+ ).describe(
8752
+ "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."
8753
+ ).optional()
8321
8754
  }).describe("Limitations affecting the service availability.").optional()
8322
8755
  }).describe(
8323
8756
  "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)."
@@ -8523,7 +8956,7 @@ Default: The staff resource type.`
8523
8956
  ).optional()
8524
8957
  }).describe("Delete statistics.").optional()
8525
8958
  });
8526
- var BulkDeleteServicesByFilterRequest = z.object({
8959
+ var BulkDeleteServicesByFilterRequest = /* @__PURE__ */ z.object({
8527
8960
  filter: z.record(z.string(), z.any()).describe("Filter to identify the services that need to be deleted."),
8528
8961
  options: z.object({
8529
8962
  preserveFutureSessionsWithParticipants: z.boolean().describe(
@@ -8541,7 +8974,7 @@ var BulkDeleteServicesByFilterRequest = z.object({
8541
8974
  ).optional()
8542
8975
  }).optional()
8543
8976
  });
8544
- var BulkDeleteServicesByFilterResponse = z.object({
8977
+ var BulkDeleteServicesByFilterResponse = /* @__PURE__ */ z.object({
8545
8978
  jobId: z.string().describe(
8546
8979
  "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."
8547
8980
  ).regex(
@@ -8549,7 +8982,7 @@ var BulkDeleteServicesByFilterResponse = z.object({
8549
8982
  "Must be a valid GUID"
8550
8983
  ).optional()
8551
8984
  });
8552
- var QueryServicesRequest = z.object({
8985
+ var QueryServicesRequest = /* @__PURE__ */ z.object({
8553
8986
  query: z.object({
8554
8987
  filter: z.object({
8555
8988
  _id: z.object({
@@ -8890,7 +9323,7 @@ var QueryServicesRequest = z.object({
8890
9323
  ).max(5).optional()
8891
9324
  }).optional()
8892
9325
  });
8893
- var QueryServicesResponse = z.object({
9326
+ var QueryServicesResponse = /* @__PURE__ */ z.object({
8894
9327
  services: z.array(
8895
9328
  z.object({
8896
9329
  _id: z.string().describe("Service ID.").regex(
@@ -9448,7 +9881,48 @@ var QueryServicesResponse = z.object({
9448
9881
  sessionDurations: z.array(z.number().int()).max(50).optional(),
9449
9882
  timeBetweenSessions: z.number().int().describe(
9450
9883
  "The number of minutes between the end of a session and the start of the next."
9451
- ).min(0).max(720).optional()
9884
+ ).min(0).max(720).optional(),
9885
+ durationRange: z.intersection(
9886
+ z.object({
9887
+ unitType: z.enum(["HOUR", "DAY"]).describe(
9888
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
9889
+ ).optional()
9890
+ }),
9891
+ z.xor([
9892
+ z.object({
9893
+ hourOptions: z.never().optional(),
9894
+ dayOptions: z.never().optional()
9895
+ }),
9896
+ z.object({
9897
+ dayOptions: z.never().optional(),
9898
+ hourOptions: z.object({
9899
+ minDurationInMinutes: z.number().int().describe(
9900
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
9901
+ ).min(30).max(1440).optional(),
9902
+ maxDurationInMinutes: z.number().int().describe(
9903
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
9904
+ ).min(30).max(1440).optional()
9905
+ }).describe(
9906
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
9907
+ )
9908
+ }),
9909
+ z.object({
9910
+ hourOptions: z.never().optional(),
9911
+ dayOptions: z.object({
9912
+ minDurationInDays: z.number().int().describe(
9913
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
9914
+ ).min(1).max(8).optional(),
9915
+ maxDurationInDays: z.number().int().describe(
9916
+ "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`."
9917
+ ).min(1).max(8).optional()
9918
+ }).describe(
9919
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
9920
+ )
9921
+ })
9922
+ ])
9923
+ ).describe(
9924
+ "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."
9925
+ ).optional()
9452
9926
  }).describe("Limitations affecting the service availability.").optional()
9453
9927
  }).describe(
9454
9928
  "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)."
@@ -9664,7 +10138,7 @@ Default: The staff resource type.`
9664
10138
  ).optional()
9665
10139
  }).describe("Paging metadata, including offset and count.").optional()
9666
10140
  });
9667
- var SearchServicesRequest = z.object({
10141
+ var SearchServicesRequest = /* @__PURE__ */ z.object({
9668
10142
  search: z.object({
9669
10143
  filter: z.object({
9670
10144
  _id: z.object({
@@ -10057,7 +10531,7 @@ var SearchServicesRequest = z.object({
10057
10531
  "Search criteria including filter, sort, aggregations, and paging options."
10058
10532
  )
10059
10533
  });
10060
- var SearchServicesResponse = z.object({
10534
+ var SearchServicesResponse = /* @__PURE__ */ z.object({
10061
10535
  services: z.array(
10062
10536
  z.object({
10063
10537
  _id: z.string().describe("Service ID.").regex(
@@ -10615,7 +11089,48 @@ var SearchServicesResponse = z.object({
10615
11089
  sessionDurations: z.array(z.number().int()).max(50).optional(),
10616
11090
  timeBetweenSessions: z.number().int().describe(
10617
11091
  "The number of minutes between the end of a session and the start of the next."
10618
- ).min(0).max(720).optional()
11092
+ ).min(0).max(720).optional(),
11093
+ durationRange: z.intersection(
11094
+ z.object({
11095
+ unitType: z.enum(["HOUR", "DAY"]).describe(
11096
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
11097
+ ).optional()
11098
+ }),
11099
+ z.xor([
11100
+ z.object({
11101
+ hourOptions: z.never().optional(),
11102
+ dayOptions: z.never().optional()
11103
+ }),
11104
+ z.object({
11105
+ dayOptions: z.never().optional(),
11106
+ hourOptions: z.object({
11107
+ minDurationInMinutes: z.number().int().describe(
11108
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
11109
+ ).min(30).max(1440).optional(),
11110
+ maxDurationInMinutes: z.number().int().describe(
11111
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
11112
+ ).min(30).max(1440).optional()
11113
+ }).describe(
11114
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
11115
+ )
11116
+ }),
11117
+ z.object({
11118
+ hourOptions: z.never().optional(),
11119
+ dayOptions: z.object({
11120
+ minDurationInDays: z.number().int().describe(
11121
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
11122
+ ).min(1).max(8).optional(),
11123
+ maxDurationInDays: z.number().int().describe(
11124
+ "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`."
11125
+ ).min(1).max(8).optional()
11126
+ }).describe(
11127
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
11128
+ )
11129
+ })
11130
+ ])
11131
+ ).describe(
11132
+ "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."
11133
+ ).optional()
10619
11134
  }).describe("Limitations affecting the service availability.").optional()
10620
11135
  }).describe(
10621
11136
  "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)."
@@ -11122,7 +11637,7 @@ Default: The staff resource type.`
11122
11637
  "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."
11123
11638
  ).optional()
11124
11639
  });
11125
- var QueryPoliciesRequest = z.object({
11640
+ var QueryPoliciesRequest = /* @__PURE__ */ z.object({
11126
11641
  query: z.intersection(
11127
11642
  z.object({
11128
11643
  filter: z.record(z.string(), z.any()).describe(
@@ -11150,7 +11665,7 @@ var QueryPoliciesRequest = z.object({
11150
11665
  ])
11151
11666
  ).describe("Information about filters, paging, and sorting.")
11152
11667
  });
11153
- var QueryPoliciesResponse = z.object({
11668
+ var QueryPoliciesResponse = /* @__PURE__ */ z.object({
11154
11669
  bookingPolicies: z.array(
11155
11670
  z.object({
11156
11671
  bookingPolicy: z.object({
@@ -11867,7 +12382,48 @@ var QueryPoliciesResponse = z.object({
11867
12382
  sessionDurations: z.array(z.number().int()).max(50).optional(),
11868
12383
  timeBetweenSessions: z.number().int().describe(
11869
12384
  "The number of minutes between the end of a session and the start of the next."
11870
- ).min(0).max(720).optional()
12385
+ ).min(0).max(720).optional(),
12386
+ durationRange: z.intersection(
12387
+ z.object({
12388
+ unitType: z.enum(["HOUR", "DAY"]).describe(
12389
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
12390
+ ).optional()
12391
+ }),
12392
+ z.xor([
12393
+ z.object({
12394
+ hourOptions: z.never().optional(),
12395
+ dayOptions: z.never().optional()
12396
+ }),
12397
+ z.object({
12398
+ dayOptions: z.never().optional(),
12399
+ hourOptions: z.object({
12400
+ minDurationInMinutes: z.number().int().describe(
12401
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
12402
+ ).min(30).max(1440).optional(),
12403
+ maxDurationInMinutes: z.number().int().describe(
12404
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
12405
+ ).min(30).max(1440).optional()
12406
+ }).describe(
12407
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
12408
+ )
12409
+ }),
12410
+ z.object({
12411
+ hourOptions: z.never().optional(),
12412
+ dayOptions: z.object({
12413
+ minDurationInDays: z.number().int().describe(
12414
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
12415
+ ).min(1).max(8).optional(),
12416
+ maxDurationInDays: z.number().int().describe(
12417
+ "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`."
12418
+ ).min(1).max(8).optional()
12419
+ }).describe(
12420
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
12421
+ )
12422
+ })
12423
+ ])
12424
+ ).describe(
12425
+ "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."
12426
+ ).optional()
11871
12427
  }).describe("Limitations affecting the service availability.").optional()
11872
12428
  }).describe(
11873
12429
  "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)."
@@ -12086,7 +12642,7 @@ Default: The staff resource type.`
12086
12642
  ).optional().nullable()
12087
12643
  }).describe("Paging metadata.").optional()
12088
12644
  });
12089
- var QueryBookingFormsRequest = z.object({
12645
+ var QueryBookingFormsRequest = /* @__PURE__ */ z.object({
12090
12646
  query: z.intersection(
12091
12647
  z.object({
12092
12648
  filter: z.record(z.string(), z.any()).describe(
@@ -12119,7 +12675,7 @@ var QueryBookingFormsRequest = z.object({
12119
12675
  conditionalFields: z.array(z.enum(["DEFAULT_BOOKING_FORM"])).max(5).optional()
12120
12676
  }).optional()
12121
12677
  });
12122
- var QueryBookingFormsResponse = z.object({
12678
+ var QueryBookingFormsResponse = /* @__PURE__ */ z.object({
12123
12679
  bookingForms: z.array(
12124
12680
  z.object({
12125
12681
  formDetails: z.object({
@@ -12187,17 +12743,17 @@ var QueryBookingFormsResponse = z.object({
12187
12743
  "The site's default booking form and information about connected services."
12188
12744
  ).optional()
12189
12745
  });
12190
- var CountServicesRequest = z.object({
12746
+ var CountServicesRequest = /* @__PURE__ */ z.object({
12191
12747
  options: z.object({
12192
12748
  filter: z.record(z.string(), z.any()).describe(
12193
12749
  "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."
12194
12750
  ).optional().nullable()
12195
12751
  }).optional()
12196
12752
  });
12197
- var CountServicesResponse = z.object({
12753
+ var CountServicesResponse = /* @__PURE__ */ z.object({
12198
12754
  count: z.number().int().describe("Number of services matching the specified filter.").optional()
12199
12755
  });
12200
- var QueryLocationsRequest = z.object({
12756
+ var QueryLocationsRequest = /* @__PURE__ */ z.object({
12201
12757
  options: z.object({
12202
12758
  filter: z.object({
12203
12759
  services: z.record(z.string(), z.any()).describe(
@@ -12207,7 +12763,7 @@ var QueryLocationsRequest = z.object({
12207
12763
  }).describe("Filter.").optional()
12208
12764
  }).optional()
12209
12765
  });
12210
- var QueryLocationsResponse = z.object({
12766
+ var QueryLocationsResponse = /* @__PURE__ */ z.object({
12211
12767
  businessLocations: z.object({
12212
12768
  exists: z.boolean().describe(
12213
12769
  "Whether at least one service matching the filter is connected to any of the\nretrieved business locations."
@@ -12298,7 +12854,7 @@ var QueryLocationsResponse = z.object({
12298
12854
  "Retrieved customer locations and whether each location is connected to at\nleast one service."
12299
12855
  ).optional()
12300
12856
  });
12301
- var QueryCategoriesRequest = z.object({
12857
+ var QueryCategoriesRequest = /* @__PURE__ */ z.object({
12302
12858
  options: z.object({
12303
12859
  filter: z.object({
12304
12860
  services: z.record(z.string(), z.any()).describe(
@@ -12308,7 +12864,7 @@ var QueryCategoriesRequest = z.object({
12308
12864
  }).describe("Filter.").optional()
12309
12865
  }).optional()
12310
12866
  });
12311
- var QueryCategoriesResponse = z.object({
12867
+ var QueryCategoriesResponse = /* @__PURE__ */ z.object({
12312
12868
  categories: z.array(
12313
12869
  z.object({
12314
12870
  _id: z.string().describe("Category ID.").regex(
@@ -12320,7 +12876,7 @@ var QueryCategoriesResponse = z.object({
12320
12876
  })
12321
12877
  ).optional()
12322
12878
  });
12323
- var SetServiceLocationsRequest = z.object({
12879
+ var SetServiceLocationsRequest = /* @__PURE__ */ z.object({
12324
12880
  serviceId: z.string().describe("ID of the service.").regex(
12325
12881
  /^[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}$/,
12326
12882
  "Must be a valid GUID"
@@ -12492,7 +13048,7 @@ var SetServiceLocationsRequest = z.object({
12492
13048
  ).optional()
12493
13049
  }).optional()
12494
13050
  });
12495
- var SetServiceLocationsResponse = z.object({
13051
+ var SetServiceLocationsResponse = /* @__PURE__ */ z.object({
12496
13052
  service: z.object({
12497
13053
  _id: z.string().describe("Service ID.").regex(
12498
13054
  /^[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}$/,
@@ -13045,7 +13601,48 @@ var SetServiceLocationsResponse = z.object({
13045
13601
  sessionDurations: z.array(z.number().int()).max(50).optional(),
13046
13602
  timeBetweenSessions: z.number().int().describe(
13047
13603
  "The number of minutes between the end of a session and the start of the next."
13048
- ).min(0).max(720).optional()
13604
+ ).min(0).max(720).optional(),
13605
+ durationRange: z.intersection(
13606
+ z.object({
13607
+ unitType: z.enum(["HOUR", "DAY"]).describe(
13608
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
13609
+ ).optional()
13610
+ }),
13611
+ z.xor([
13612
+ z.object({
13613
+ hourOptions: z.never().optional(),
13614
+ dayOptions: z.never().optional()
13615
+ }),
13616
+ z.object({
13617
+ dayOptions: z.never().optional(),
13618
+ hourOptions: z.object({
13619
+ minDurationInMinutes: z.number().int().describe(
13620
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
13621
+ ).min(30).max(1440).optional(),
13622
+ maxDurationInMinutes: z.number().int().describe(
13623
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
13624
+ ).min(30).max(1440).optional()
13625
+ }).describe(
13626
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
13627
+ )
13628
+ }),
13629
+ z.object({
13630
+ hourOptions: z.never().optional(),
13631
+ dayOptions: z.object({
13632
+ minDurationInDays: z.number().int().describe(
13633
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
13634
+ ).min(1).max(8).optional(),
13635
+ maxDurationInDays: z.number().int().describe(
13636
+ "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`."
13637
+ ).min(1).max(8).optional()
13638
+ }).describe(
13639
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
13640
+ )
13641
+ })
13642
+ ])
13643
+ ).describe(
13644
+ "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."
13645
+ ).optional()
13049
13646
  }).describe("Limitations affecting the service availability.").optional()
13050
13647
  }).describe(
13051
13648
  "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)."
@@ -13240,14 +13837,14 @@ Default: The staff resource type.`
13240
13837
  ).optional().nullable()
13241
13838
  }).describe("The updated service with the newly set locations.").optional()
13242
13839
  });
13243
- var EnablePricingPlansForServiceRequest = z.object({
13840
+ var EnablePricingPlansForServiceRequest = /* @__PURE__ */ z.object({
13244
13841
  serviceId: z.string().describe("ID of the service to update.").regex(
13245
13842
  /^[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}$/,
13246
13843
  "Must be a valid GUID"
13247
13844
  ),
13248
13845
  pricingPlanIds: z.array(z.string()).max(100)
13249
13846
  });
13250
- var EnablePricingPlansForServiceResponse = z.object({
13847
+ var EnablePricingPlansForServiceResponse = /* @__PURE__ */ z.object({
13251
13848
  service: z.object({
13252
13849
  _id: z.string().describe("Service ID.").regex(
13253
13850
  /^[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}$/,
@@ -13800,7 +14397,48 @@ var EnablePricingPlansForServiceResponse = z.object({
13800
14397
  sessionDurations: z.array(z.number().int()).max(50).optional(),
13801
14398
  timeBetweenSessions: z.number().int().describe(
13802
14399
  "The number of minutes between the end of a session and the start of the next."
13803
- ).min(0).max(720).optional()
14400
+ ).min(0).max(720).optional(),
14401
+ durationRange: z.intersection(
14402
+ z.object({
14403
+ unitType: z.enum(["HOUR", "DAY"]).describe(
14404
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
14405
+ ).optional()
14406
+ }),
14407
+ z.xor([
14408
+ z.object({
14409
+ hourOptions: z.never().optional(),
14410
+ dayOptions: z.never().optional()
14411
+ }),
14412
+ z.object({
14413
+ dayOptions: z.never().optional(),
14414
+ hourOptions: z.object({
14415
+ minDurationInMinutes: z.number().int().describe(
14416
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
14417
+ ).min(30).max(1440).optional(),
14418
+ maxDurationInMinutes: z.number().int().describe(
14419
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
14420
+ ).min(30).max(1440).optional()
14421
+ }).describe(
14422
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
14423
+ )
14424
+ }),
14425
+ z.object({
14426
+ hourOptions: z.never().optional(),
14427
+ dayOptions: z.object({
14428
+ minDurationInDays: z.number().int().describe(
14429
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
14430
+ ).min(1).max(8).optional(),
14431
+ maxDurationInDays: z.number().int().describe(
14432
+ "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`."
14433
+ ).min(1).max(8).optional()
14434
+ }).describe(
14435
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
14436
+ )
14437
+ })
14438
+ ])
14439
+ ).describe(
14440
+ "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."
14441
+ ).optional()
13804
14442
  }).describe("Limitations affecting the service availability.").optional()
13805
14443
  }).describe(
13806
14444
  "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)."
@@ -13995,14 +14633,14 @@ Default: The staff resource type.`
13995
14633
  ).optional().nullable()
13996
14634
  }).describe("Updated service.").optional()
13997
14635
  });
13998
- var DisablePricingPlansForServiceRequest = z.object({
14636
+ var DisablePricingPlansForServiceRequest = /* @__PURE__ */ z.object({
13999
14637
  serviceId: z.string().describe("ID of the service to update.").regex(
14000
14638
  /^[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}$/,
14001
14639
  "Must be a valid GUID"
14002
14640
  ),
14003
14641
  options: z.object({ pricingPlanIds: z.array(z.string()).max(75).optional() }).optional()
14004
14642
  });
14005
- var DisablePricingPlansForServiceResponse = z.object({
14643
+ var DisablePricingPlansForServiceResponse = /* @__PURE__ */ z.object({
14006
14644
  service: z.object({
14007
14645
  _id: z.string().describe("Service ID.").regex(
14008
14646
  /^[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}$/,
@@ -14555,7 +15193,48 @@ var DisablePricingPlansForServiceResponse = z.object({
14555
15193
  sessionDurations: z.array(z.number().int()).max(50).optional(),
14556
15194
  timeBetweenSessions: z.number().int().describe(
14557
15195
  "The number of minutes between the end of a session and the start of the next."
14558
- ).min(0).max(720).optional()
15196
+ ).min(0).max(720).optional(),
15197
+ durationRange: z.intersection(
15198
+ z.object({
15199
+ unitType: z.enum(["HOUR", "DAY"]).describe(
15200
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
15201
+ ).optional()
15202
+ }),
15203
+ z.xor([
15204
+ z.object({
15205
+ hourOptions: z.never().optional(),
15206
+ dayOptions: z.never().optional()
15207
+ }),
15208
+ z.object({
15209
+ dayOptions: z.never().optional(),
15210
+ hourOptions: z.object({
15211
+ minDurationInMinutes: z.number().int().describe(
15212
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
15213
+ ).min(30).max(1440).optional(),
15214
+ maxDurationInMinutes: z.number().int().describe(
15215
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
15216
+ ).min(30).max(1440).optional()
15217
+ }).describe(
15218
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
15219
+ )
15220
+ }),
15221
+ z.object({
15222
+ hourOptions: z.never().optional(),
15223
+ dayOptions: z.object({
15224
+ minDurationInDays: z.number().int().describe(
15225
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
15226
+ ).min(1).max(8).optional(),
15227
+ maxDurationInDays: z.number().int().describe(
15228
+ "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`."
15229
+ ).min(1).max(8).optional()
15230
+ }).describe(
15231
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
15232
+ )
15233
+ })
15234
+ ])
15235
+ ).describe(
15236
+ "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."
15237
+ ).optional()
14559
15238
  }).describe("Limitations affecting the service availability.").optional()
14560
15239
  }).describe(
14561
15240
  "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)."
@@ -14750,7 +15429,7 @@ Default: The staff resource type.`
14750
15429
  ).optional().nullable()
14751
15430
  }).describe("Updated service.").optional()
14752
15431
  });
14753
- var SetCustomSlugRequest = z.object({
15432
+ var SetCustomSlugRequest = /* @__PURE__ */ z.object({
14754
15433
  serviceId: z.string().describe("ID of the service for which to update the active slug.").regex(
14755
15434
  /^[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}$/,
14756
15435
  "Must be a valid GUID"
@@ -14759,7 +15438,7 @@ var SetCustomSlugRequest = z.object({
14759
15438
  slug: z.string().describe("Slug to set as the active service slug.").max(500).optional()
14760
15439
  }).optional()
14761
15440
  });
14762
- var SetCustomSlugResponse = z.object({
15441
+ var SetCustomSlugResponse = /* @__PURE__ */ z.object({
14763
15442
  slug: z.object({
14764
15443
  name: z.string().describe(
14765
15444
  "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`."
@@ -15321,7 +16000,48 @@ var SetCustomSlugResponse = z.object({
15321
16000
  sessionDurations: z.array(z.number().int()).max(50).optional(),
15322
16001
  timeBetweenSessions: z.number().int().describe(
15323
16002
  "The number of minutes between the end of a session and the start of the next."
15324
- ).min(0).max(720).optional()
16003
+ ).min(0).max(720).optional(),
16004
+ durationRange: z.intersection(
16005
+ z.object({
16006
+ unitType: z.enum(["HOUR", "DAY"]).describe(
16007
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
16008
+ ).optional()
16009
+ }),
16010
+ z.xor([
16011
+ z.object({
16012
+ hourOptions: z.never().optional(),
16013
+ dayOptions: z.never().optional()
16014
+ }),
16015
+ z.object({
16016
+ dayOptions: z.never().optional(),
16017
+ hourOptions: z.object({
16018
+ minDurationInMinutes: z.number().int().describe(
16019
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
16020
+ ).min(30).max(1440).optional(),
16021
+ maxDurationInMinutes: z.number().int().describe(
16022
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
16023
+ ).min(30).max(1440).optional()
16024
+ }).describe(
16025
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
16026
+ )
16027
+ }),
16028
+ z.object({
16029
+ hourOptions: z.never().optional(),
16030
+ dayOptions: z.object({
16031
+ minDurationInDays: z.number().int().describe(
16032
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
16033
+ ).min(1).max(8).optional(),
16034
+ maxDurationInDays: z.number().int().describe(
16035
+ "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`."
16036
+ ).min(1).max(8).optional()
16037
+ }).describe(
16038
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
16039
+ )
16040
+ })
16041
+ ])
16042
+ ).describe(
16043
+ "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."
16044
+ ).optional()
15325
16045
  }).describe("Limitations affecting the service availability.").optional()
15326
16046
  }).describe(
15327
16047
  "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)."
@@ -15516,7 +16236,7 @@ Default: The staff resource type.`
15516
16236
  ).optional().nullable()
15517
16237
  }).describe("Updated service.").optional()
15518
16238
  });
15519
- var ValidateSlugRequest = z.object({
16239
+ var ValidateSlugRequest = /* @__PURE__ */ z.object({
15520
16240
  serviceId: z.string().describe("IO of the service to check custom slug validity for.").regex(
15521
16241
  /^[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}$/,
15522
16242
  "Must be a valid GUID"
@@ -15525,18 +16245,18 @@ var ValidateSlugRequest = z.object({
15525
16245
  slug: z.string().describe("Custom slug to validate.").max(500).optional()
15526
16246
  }).optional()
15527
16247
  });
15528
- var ValidateSlugResponse = z.object({
16248
+ var ValidateSlugResponse = /* @__PURE__ */ z.object({
15529
16249
  valid: z.boolean().describe("Whether the slug is valid.").optional(),
15530
16250
  slug: z.string().describe('Valid slug. Available only if `{"valid": true}`.').max(500).optional().nullable(),
15531
16251
  errors: z.array(z.enum(["SLUG_CONTAINS_ILLEGAL_CHARACTERS", "SLUG_ALREADY_EXISTS"])).max(3).optional()
15532
16252
  });
15533
- var CloneServiceRequest = z.object({
16253
+ var CloneServiceRequest = /* @__PURE__ */ z.object({
15534
16254
  sourceServiceId: z.string().describe("ID of the service to clone.").regex(
15535
16255
  /^[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}$/,
15536
16256
  "Must be a valid GUID"
15537
16257
  )
15538
16258
  });
15539
- var CloneServiceResponse = z.object({
16259
+ var CloneServiceResponse = /* @__PURE__ */ z.object({
15540
16260
  service: z.object({
15541
16261
  _id: z.string().describe("Service ID.").regex(
15542
16262
  /^[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}$/,
@@ -16089,7 +16809,48 @@ var CloneServiceResponse = z.object({
16089
16809
  sessionDurations: z.array(z.number().int()).max(50).optional(),
16090
16810
  timeBetweenSessions: z.number().int().describe(
16091
16811
  "The number of minutes between the end of a session and the start of the next."
16092
- ).min(0).max(720).optional()
16812
+ ).min(0).max(720).optional(),
16813
+ durationRange: z.intersection(
16814
+ z.object({
16815
+ unitType: z.enum(["HOUR", "DAY"]).describe(
16816
+ "The unit type for this duration range. Determines which configuration to use in the `config` union."
16817
+ ).optional()
16818
+ }),
16819
+ z.xor([
16820
+ z.object({
16821
+ hourOptions: z.never().optional(),
16822
+ dayOptions: z.never().optional()
16823
+ }),
16824
+ z.object({
16825
+ dayOptions: z.never().optional(),
16826
+ hourOptions: z.object({
16827
+ minDurationInMinutes: z.number().int().describe(
16828
+ "Minimum bookable duration in minutes. The customer can't book for less than this duration."
16829
+ ).min(30).max(1440).optional(),
16830
+ maxDurationInMinutes: z.number().int().describe(
16831
+ "Maximum bookable duration in minutes. The customer can't book for more than this duration.\n\nMust be greater than or equal to `minDurationInMinutes`."
16832
+ ).min(30).max(1440).optional()
16833
+ }).describe(
16834
+ "Configuration for hourly duration ranges. Set when `unitType` is `HOUR`."
16835
+ )
16836
+ }),
16837
+ z.object({
16838
+ hourOptions: z.never().optional(),
16839
+ dayOptions: z.object({
16840
+ minDurationInDays: z.number().int().describe(
16841
+ "Minimum bookable duration in days. The customer can't book for less than this number of days."
16842
+ ).min(1).max(8).optional(),
16843
+ maxDurationInDays: z.number().int().describe(
16844
+ "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`."
16845
+ ).min(1).max(8).optional()
16846
+ }).describe(
16847
+ "Configuration for daily duration ranges. Set when `unitType` is `DAY`."
16848
+ )
16849
+ })
16850
+ ])
16851
+ ).describe(
16852
+ "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."
16853
+ ).optional()
16093
16854
  }).describe("Limitations affecting the service availability.").optional()
16094
16855
  }).describe(
16095
16856
  "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)."
@@ -16285,7 +17046,7 @@ Default: The staff resource type.`
16285
17046
  }).describe("Cloned service.").optional(),
16286
17047
  errors: z.array(z.enum(["OPTIONS_AND_VARIANTS", "FORM"])).optional()
16287
17048
  });
16288
- var CreateAddOnGroupRequest = z.object({
17049
+ var CreateAddOnGroupRequest = /* @__PURE__ */ z.object({
16289
17050
  addOnGroup: z.object({
16290
17051
  _id: z.string().describe(
16291
17052
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."
@@ -16309,7 +17070,7 @@ var CreateAddOnGroupRequest = z.object({
16309
17070
  )
16310
17071
  })
16311
17072
  });
16312
- var CreateAddOnGroupResponse = z.object({
17073
+ var CreateAddOnGroupResponse = /* @__PURE__ */ z.object({
16313
17074
  addOnGroup: z.object({
16314
17075
  _id: z.string().describe(
16315
17076
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."
@@ -16327,7 +17088,7 @@ var CreateAddOnGroupResponse = z.object({
16327
17088
  ).max(200).optional().nullable()
16328
17089
  }).describe("Created add-on group.").optional()
16329
17090
  });
16330
- var DeleteAddOnGroupRequest = z.object({
17091
+ var DeleteAddOnGroupRequest = /* @__PURE__ */ z.object({
16331
17092
  addOnGroupId: z.string().describe("ID of the add-on group to delete.").regex(
16332
17093
  /^[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}$/,
16333
17094
  "Must be a valid GUID"
@@ -16339,8 +17100,8 @@ var DeleteAddOnGroupRequest = z.object({
16339
17100
  )
16340
17101
  })
16341
17102
  });
16342
- var DeleteAddOnGroupResponse = z.object({});
16343
- var UpdateAddOnGroupRequest = z.object({
17103
+ var DeleteAddOnGroupResponse = /* @__PURE__ */ z.object({});
17104
+ var UpdateAddOnGroupRequest = /* @__PURE__ */ z.object({
16344
17105
  addOnGroup: z.object({
16345
17106
  _id: z.string().describe(
16346
17107
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."
@@ -16364,7 +17125,7 @@ var UpdateAddOnGroupRequest = z.object({
16364
17125
  )
16365
17126
  })
16366
17127
  });
16367
- var UpdateAddOnGroupResponse = z.object({
17128
+ var UpdateAddOnGroupResponse = /* @__PURE__ */ z.object({
16368
17129
  addOnGroup: z.object({
16369
17130
  _id: z.string().describe(
16370
17131
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."
@@ -16382,14 +17143,14 @@ var UpdateAddOnGroupResponse = z.object({
16382
17143
  ).max(200).optional().nullable()
16383
17144
  }).describe("Updated add-on group.").optional()
16384
17145
  });
16385
- var ListAddOnGroupsByServiceIdRequest = z.object({
17146
+ var ListAddOnGroupsByServiceIdRequest = /* @__PURE__ */ z.object({
16386
17147
  serviceId: z.string().describe("ID of the service to retrieve add-on groups for.").regex(
16387
17148
  /^[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}$/,
16388
17149
  "Must be a valid GUID"
16389
17150
  ),
16390
17151
  options: z.object({ groupIds: z.array(z.string()).max(3).optional() }).optional()
16391
17152
  });
16392
- var ListAddOnGroupsByServiceIdResponse = z.object({
17153
+ var ListAddOnGroupsByServiceIdResponse = /* @__PURE__ */ z.object({
16393
17154
  addOnGroupsDetails: z.array(
16394
17155
  z.object({
16395
17156
  groupId: z.string().describe("Group ID.").regex(
@@ -16451,7 +17212,7 @@ var ListAddOnGroupsByServiceIdResponse = z.object({
16451
17212
  })
16452
17213
  ).max(3).optional()
16453
17214
  });
16454
- var SetAddOnsForGroupRequest = z.object({
17215
+ var SetAddOnsForGroupRequest = /* @__PURE__ */ z.object({
16455
17216
  serviceId: z.string().describe("Service ID containing the group.").regex(
16456
17217
  /^[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}$/,
16457
17218
  "Must be a valid GUID"
@@ -16464,7 +17225,7 @@ var SetAddOnsForGroupRequest = z.object({
16464
17225
  addOnIds: z.array(z.string()).min(1).max(7)
16465
17226
  })
16466
17227
  });
16467
- var SetAddOnsForGroupResponse = z.object({
17228
+ var SetAddOnsForGroupResponse = /* @__PURE__ */ z.object({
16468
17229
  addOnGroup: z.object({
16469
17230
  _id: z.string().describe(
16470
17231
  "ID of the add-on group.\nWix Bookings automatically populates this field when creating or updating an add-on group."