wiil-core-js 0.0.82

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 (261) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +174 -0
  3. package/dist/core/account/index.d.ts +7 -0
  4. package/dist/core/account/index.js +23 -0
  5. package/dist/core/account/organization.schema.d.ts +118 -0
  6. package/dist/core/account/organization.schema.js +91 -0
  7. package/dist/core/account/project.schema.d.ts +121 -0
  8. package/dist/core/account/project.schema.js +102 -0
  9. package/dist/core/account/supported-business-verticals.d.ts +8 -0
  10. package/dist/core/account/supported-business-verticals.js +23 -0
  11. package/dist/core/assistant-setups/assistant-setup-result.schema.d.ts +115 -0
  12. package/dist/core/assistant-setups/assistant-setup-result.schema.js +17 -0
  13. package/dist/core/assistant-setups/base-assistant-setup.schema.d.ts +61 -0
  14. package/dist/core/assistant-setups/base-assistant-setup.schema.js +29 -0
  15. package/dist/core/assistant-setups/index.d.ts +4 -0
  16. package/dist/core/assistant-setups/index.js +21 -0
  17. package/dist/core/assistant-setups/phone-assistant-setup.schema.d.ts +63 -0
  18. package/dist/core/assistant-setups/phone-assistant-setup.schema.js +14 -0
  19. package/dist/core/assistant-setups/web-assitant-setup.schema.d.ts +56 -0
  20. package/dist/core/assistant-setups/web-assitant-setup.schema.js +17 -0
  21. package/dist/core/base.schema.d.ts +34 -0
  22. package/dist/core/base.schema.js +36 -0
  23. package/dist/core/business-mgt/appointment-additional-info.schema.d.ts +63 -0
  24. package/dist/core/business-mgt/appointment-additional-info.schema.js +53 -0
  25. package/dist/core/business-mgt/appointment-field-config.schema.d.ts +251 -0
  26. package/dist/core/business-mgt/appointment-field-config.schema.js +49 -0
  27. package/dist/core/business-mgt/bookings.shared.schema.d.ts +47 -0
  28. package/dist/core/business-mgt/bookings.shared.schema.js +60 -0
  29. package/dist/core/business-mgt/business-location.schema.d.ts +327 -0
  30. package/dist/core/business-mgt/business-location.schema.js +176 -0
  31. package/dist/core/business-mgt/customer-management/customer-group.schema.d.ts +87 -0
  32. package/dist/core/business-mgt/customer-management/customer-group.schema.js +53 -0
  33. package/dist/core/business-mgt/customer-management/customer.schema.d.ts +156 -0
  34. package/dist/core/business-mgt/customer-management/customer.schema.js +93 -0
  35. package/dist/core/business-mgt/customer-management/index.d.ts +7 -0
  36. package/dist/core/business-mgt/customer-management/index.js +23 -0
  37. package/dist/core/business-mgt/customer-management/shipping-address.schema.d.ts +112 -0
  38. package/dist/core/business-mgt/customer-management/shipping-address.schema.js +79 -0
  39. package/dist/core/business-mgt/customer.schema.d.ts +111 -0
  40. package/dist/core/business-mgt/customer.schema.js +73 -0
  41. package/dist/core/business-mgt/discount-rule.schema.d.ts +183 -0
  42. package/dist/core/business-mgt/discount-rule.schema.js +108 -0
  43. package/dist/core/business-mgt/index.d.ts +16 -0
  44. package/dist/core/business-mgt/index.js +38 -0
  45. package/dist/core/business-mgt/menu-config.schema.d.ts +165 -0
  46. package/dist/core/business-mgt/menu-config.schema.js +86 -0
  47. package/dist/core/business-mgt/menu-management/index.d.ts +11 -0
  48. package/dist/core/business-mgt/menu-management/index.js +27 -0
  49. package/dist/core/business-mgt/menu-management/menu-catalog.schema.d.ts +386 -0
  50. package/dist/core/business-mgt/menu-management/menu-catalog.schema.js +58 -0
  51. package/dist/core/business-mgt/menu-management/menu-config.schema.d.ts +301 -0
  52. package/dist/core/business-mgt/menu-management/menu-config.schema.js +169 -0
  53. package/dist/core/business-mgt/menu-management/menu-item-variant.schema.d.ts +143 -0
  54. package/dist/core/business-mgt/menu-management/menu-item-variant.schema.js +86 -0
  55. package/dist/core/business-mgt/menu-management/menu-pricing-rule.schema.d.ts +239 -0
  56. package/dist/core/business-mgt/menu-management/menu-pricing-rule.schema.js +117 -0
  57. package/dist/core/business-mgt/menu-management/menu-set.schema.d.ts +420 -0
  58. package/dist/core/business-mgt/menu-management/menu-set.schema.js +283 -0
  59. package/dist/core/business-mgt/menu-management/menu.order.schema.d.ts +654 -0
  60. package/dist/core/business-mgt/menu-management/menu.order.schema.js +204 -0
  61. package/dist/core/business-mgt/menu-management/modifier.schema.d.ts +585 -0
  62. package/dist/core/business-mgt/menu-management/modifier.schema.js +341 -0
  63. package/dist/core/business-mgt/menu.order.schema.d.ts +335 -0
  64. package/dist/core/business-mgt/menu.order.schema.js +149 -0
  65. package/dist/core/business-mgt/order.schema.d.ts +222 -0
  66. package/dist/core/business-mgt/order.schema.js +205 -0
  67. package/dist/core/business-mgt/pricing-rule.shared.schema.d.ts +56 -0
  68. package/dist/core/business-mgt/pricing-rule.shared.schema.js +68 -0
  69. package/dist/core/business-mgt/product-config.schema.d.ts +177 -0
  70. package/dist/core/business-mgt/product-config.schema.js +106 -0
  71. package/dist/core/business-mgt/product-management/index.d.ts +12 -0
  72. package/dist/core/business-mgt/product-management/index.js +28 -0
  73. package/dist/core/business-mgt/product-management/product-axis-binding.schema.d.ts +54 -0
  74. package/dist/core/business-mgt/product-management/product-axis-binding.schema.js +54 -0
  75. package/dist/core/business-mgt/product-management/product-config.schema.d.ts +1042 -0
  76. package/dist/core/business-mgt/product-management/product-config.schema.js +392 -0
  77. package/dist/core/business-mgt/product-management/product-display.schema.d.ts +548 -0
  78. package/dist/core/business-mgt/product-management/product-display.schema.js +80 -0
  79. package/dist/core/business-mgt/product-management/product-order.schema.d.ts +493 -0
  80. package/dist/core/business-mgt/product-management/product-order.schema.js +158 -0
  81. package/dist/core/business-mgt/product-management/product-pricing-rule.schema.d.ts +167 -0
  82. package/dist/core/business-mgt/product-management/product-pricing-rule.schema.js +68 -0
  83. package/dist/core/business-mgt/product-management/product-set.schema.d.ts +488 -0
  84. package/dist/core/business-mgt/product-management/product-set.schema.js +273 -0
  85. package/dist/core/business-mgt/product-management/product-variant-axis.schema.d.ts +156 -0
  86. package/dist/core/business-mgt/product-management/product-variant-axis.schema.js +98 -0
  87. package/dist/core/business-mgt/product-management/product-variant.schema.d.ts +219 -0
  88. package/dist/core/business-mgt/product-management/product-variant.schema.js +130 -0
  89. package/dist/core/business-mgt/product-order.schema.d.ts +326 -0
  90. package/dist/core/business-mgt/product-order.schema.js +153 -0
  91. package/dist/core/business-mgt/property-config.schema.d.ts +621 -0
  92. package/dist/core/business-mgt/property-config.schema.js +224 -0
  93. package/dist/core/business-mgt/property-inquiry.schema.d.ts +222 -0
  94. package/dist/core/business-mgt/property-inquiry.schema.js +112 -0
  95. package/dist/core/business-mgt/property-management/index.d.ts +6 -0
  96. package/dist/core/business-mgt/property-management/index.js +22 -0
  97. package/dist/core/business-mgt/property-management/property-config.schema.d.ts +1306 -0
  98. package/dist/core/business-mgt/property-management/property-config.schema.js +367 -0
  99. package/dist/core/business-mgt/property-management/property-inquiry.schema.d.ts +254 -0
  100. package/dist/core/business-mgt/property-management/property-inquiry.schema.js +131 -0
  101. package/dist/core/business-mgt/reservation-mgt/assignment/index.d.ts +3 -0
  102. package/dist/core/business-mgt/reservation-mgt/assignment/index.js +19 -0
  103. package/dist/core/business-mgt/reservation-mgt/assignment/reservation-rental-assignment.schema.d.ts +139 -0
  104. package/dist/core/business-mgt/reservation-mgt/assignment/reservation-rental-assignment.schema.js +90 -0
  105. package/dist/core/business-mgt/reservation-mgt/assignment/reservation-room-assignment.schema.d.ts +104 -0
  106. package/dist/core/business-mgt/reservation-mgt/assignment/reservation-room-assignment.schema.js +70 -0
  107. package/dist/core/business-mgt/reservation-mgt/assignment/reservation-table-assignment.schema.d.ts +104 -0
  108. package/dist/core/business-mgt/reservation-mgt/assignment/reservation-table-assignment.schema.js +72 -0
  109. package/dist/core/business-mgt/reservation-mgt/index.d.ts +14 -0
  110. package/dist/core/business-mgt/reservation-mgt/index.js +31 -0
  111. package/dist/core/business-mgt/reservation-mgt/reservation-floor-plan-definition.schema.d.ts +180 -0
  112. package/dist/core/business-mgt/reservation-mgt/reservation-floor-plan-definition.schema.js +75 -0
  113. package/dist/core/business-mgt/reservation-mgt/reservation-maintenance-block.schema.d.ts +91 -0
  114. package/dist/core/business-mgt/reservation-mgt/reservation-maintenance-block.schema.js +57 -0
  115. package/dist/core/business-mgt/reservation-mgt/reservation-rental.schema.d.ts +334 -0
  116. package/dist/core/business-mgt/reservation-mgt/reservation-rental.schema.js +179 -0
  117. package/dist/core/business-mgt/reservation-mgt/reservation-room.schema.d.ts +195 -0
  118. package/dist/core/business-mgt/reservation-mgt/reservation-room.schema.js +106 -0
  119. package/dist/core/business-mgt/reservation-mgt/reservation-section.schema.d.ts +402 -0
  120. package/dist/core/business-mgt/reservation-mgt/reservation-section.schema.js +198 -0
  121. package/dist/core/business-mgt/reservation-mgt/reservation-settings.schema.d.ts +229 -0
  122. package/dist/core/business-mgt/reservation-mgt/reservation-settings.schema.js +127 -0
  123. package/dist/core/business-mgt/reservation-mgt/reservation-slot-query.schema.d.ts +382 -0
  124. package/dist/core/business-mgt/reservation-mgt/reservation-slot-query.schema.js +322 -0
  125. package/dist/core/business-mgt/reservation-mgt/reservation-table-layout.schema.d.ts +123 -0
  126. package/dist/core/business-mgt/reservation-mgt/reservation-table-layout.schema.js +83 -0
  127. package/dist/core/business-mgt/reservation-mgt/reservation-table.schema.d.ts +167 -0
  128. package/dist/core/business-mgt/reservation-mgt/reservation-table.schema.js +84 -0
  129. package/dist/core/business-mgt/reservation-mgt/reservation.schema.d.ts +0 -0
  130. package/dist/core/business-mgt/reservation-mgt/reservation.schema.js +153 -0
  131. package/dist/core/business-mgt/reservation-mgt/resource/index.d.ts +4 -0
  132. package/dist/core/business-mgt/reservation-mgt/resource/index.js +20 -0
  133. package/dist/core/business-mgt/reservation-mgt/resource/reservation-resource-category.schema.d.ts +157 -0
  134. package/dist/core/business-mgt/reservation-mgt/resource/reservation-resource-category.schema.js +76 -0
  135. package/dist/core/business-mgt/reservation-mgt/resource/reservation-resource-instance.schema.d.ts +137 -0
  136. package/dist/core/business-mgt/reservation-mgt/resource/reservation-resource-instance.schema.js +94 -0
  137. package/dist/core/business-mgt/reservation-mgt/resource/reservation-resource.schema.d.ts +713 -0
  138. package/dist/core/business-mgt/reservation-mgt/resource/reservation-resource.schema.js +363 -0
  139. package/dist/core/business-mgt/reservation-mgt/resource/resource-versioning.schema.d.ts +151 -0
  140. package/dist/core/business-mgt/reservation-mgt/resource/resource-versioning.schema.js +147 -0
  141. package/dist/core/business-mgt/reservation-resource.schema.d.ts +154 -0
  142. package/dist/core/business-mgt/reservation-resource.schema.js +100 -0
  143. package/dist/core/business-mgt/reservation.schema.d.ts +119 -0
  144. package/dist/core/business-mgt/reservation.schema.js +89 -0
  145. package/dist/core/business-mgt/service-appointment.schema.d.ts +105 -0
  146. package/dist/core/business-mgt/service-appointment.schema.js +69 -0
  147. package/dist/core/business-mgt/service-config.schema.d.ts +453 -0
  148. package/dist/core/business-mgt/service-config.schema.js +102 -0
  149. package/dist/core/business-mgt/service-management/appointment-additional-info.schema.d.ts +110 -0
  150. package/dist/core/business-mgt/service-management/appointment-additional-info.schema.js +78 -0
  151. package/dist/core/business-mgt/service-management/appointment-field-config.schema.d.ts +304 -0
  152. package/dist/core/business-mgt/service-management/appointment-field-config.schema.js +75 -0
  153. package/dist/core/business-mgt/service-management/business-service-config.schema.d.ts +1226 -0
  154. package/dist/core/business-mgt/service-management/business-service-config.schema.js +317 -0
  155. package/dist/core/business-mgt/service-management/index.d.ts +13 -0
  156. package/dist/core/business-mgt/service-management/index.js +29 -0
  157. package/dist/core/business-mgt/service-management/service-appointment.schema.d.ts +531 -0
  158. package/dist/core/business-mgt/service-management/service-appointment.schema.js +116 -0
  159. package/dist/core/business-mgt/service-management/service-person.schema.d.ts +122 -0
  160. package/dist/core/business-mgt/service-management/service-person.schema.js +66 -0
  161. package/dist/core/business-mgt/service-management/service-pricing-rule.schema.d.ts +221 -0
  162. package/dist/core/business-mgt/service-management/service-pricing-rule.schema.js +118 -0
  163. package/dist/core/business-mgt/service-management/service-provider.schema.d.ts +90 -0
  164. package/dist/core/business-mgt/service-management/service-provider.schema.js +54 -0
  165. package/dist/core/business-mgt/service-management/service-slot-query.schema.d.ts +90 -0
  166. package/dist/core/business-mgt/service-management/service-slot-query.schema.js +113 -0
  167. package/dist/core/business-mgt/service-management/service-time-off.schema.d.ts +121 -0
  168. package/dist/core/business-mgt/service-management/service-time-off.schema.js +95 -0
  169. package/dist/core/business-mgt/service-person.schema.d.ts +43 -0
  170. package/dist/core/business-mgt/service-person.schema.js +38 -0
  171. package/dist/core/business-mgt/tax-rule.schema.d.ts +161 -0
  172. package/dist/core/business-mgt/tax-rule.schema.js +90 -0
  173. package/dist/core/conversation/conversation-config.schema.d.ts +644 -0
  174. package/dist/core/conversation/conversation-config.schema.js +351 -0
  175. package/dist/core/conversation/conversation-message.schema.d.ts +307 -0
  176. package/dist/core/conversation/conversation-message.schema.js +275 -0
  177. package/dist/core/conversation/index.d.ts +12 -0
  178. package/dist/core/conversation/index.js +28 -0
  179. package/dist/core/conversation/outbound-call.schema.d.ts +209 -0
  180. package/dist/core/conversation/outbound-call.schema.js +116 -0
  181. package/dist/core/conversation/outbound-email.schema.d.ts +338 -0
  182. package/dist/core/conversation/outbound-email.schema.js +150 -0
  183. package/dist/core/conversation/outbound-sms.schema.d.ts +163 -0
  184. package/dist/core/conversation/outbound-sms.schema.js +85 -0
  185. package/dist/core/conversation/outbound-template.schema.d.ts +375 -0
  186. package/dist/core/conversation/outbound-template.schema.js +160 -0
  187. package/dist/core/conversation/translation-config.schema.d.ts +92 -0
  188. package/dist/core/conversation/translation-config.schema.js +88 -0
  189. package/dist/core/conversation/translation-conversation.schema.d.ts +469 -0
  190. package/dist/core/conversation/translation-conversation.schema.js +175 -0
  191. package/dist/core/index.d.ts +12 -0
  192. package/dist/core/index.js +30 -0
  193. package/dist/core/service-configuration/agent-config.schema.d.ts +236 -0
  194. package/dist/core/service-configuration/agent-config.schema.js +152 -0
  195. package/dist/core/service-configuration/base-agent-setup.d.ts +147 -0
  196. package/dist/core/service-configuration/base-agent-setup.js +123 -0
  197. package/dist/core/service-configuration/call-transfer-config.schema.d.ts +60 -0
  198. package/dist/core/service-configuration/call-transfer-config.schema.js +53 -0
  199. package/dist/core/service-configuration/deployment-config.schema.d.ts +522 -0
  200. package/dist/core/service-configuration/deployment-config.schema.js +271 -0
  201. package/dist/core/service-configuration/dynamic_setup/base-agent-setup.d.ts +130 -0
  202. package/dist/core/service-configuration/dynamic_setup/base-agent-setup.js +110 -0
  203. package/dist/core/service-configuration/dynamic_setup/index.d.ts +10 -0
  204. package/dist/core/service-configuration/dynamic_setup/index.js +26 -0
  205. package/dist/core/service-configuration/dynamic_setup/phone-agent-setup.d.ts +111 -0
  206. package/dist/core/service-configuration/dynamic_setup/phone-agent-setup.js +56 -0
  207. package/dist/core/service-configuration/dynamic_setup/web-agent-setup.d.ts +113 -0
  208. package/dist/core/service-configuration/dynamic_setup/web-agent-setup.js +55 -0
  209. package/dist/core/service-configuration/index.d.ts +17 -0
  210. package/dist/core/service-configuration/index.js +33 -0
  211. package/dist/core/service-configuration/instruction-config.schema.d.ts +183 -0
  212. package/dist/core/service-configuration/instruction-config.schema.js +139 -0
  213. package/dist/core/service-configuration/interaction-channels.schema.d.ts +469 -0
  214. package/dist/core/service-configuration/interaction-channels.schema.js +390 -0
  215. package/dist/core/service-configuration/knowledge.schema.d.ts +107 -0
  216. package/dist/core/service-configuration/knowledge.schema.js +106 -0
  217. package/dist/core/service-configuration/phone-config.schema.d.ts +206 -0
  218. package/dist/core/service-configuration/phone-config.schema.js +121 -0
  219. package/dist/core/service-configuration/phone-number.schema.d.ts +236 -0
  220. package/dist/core/service-configuration/phone-number.schema.js +211 -0
  221. package/dist/core/service-configuration/provisioning-config.d.ts +429 -0
  222. package/dist/core/service-configuration/provisioning-config.js +307 -0
  223. package/dist/core/service-configuration/support-llm.d.ts +95 -0
  224. package/dist/core/service-configuration/support-llm.js +76 -0
  225. package/dist/core/service-configuration/voice-language.schema.d.ts +200 -0
  226. package/dist/core/service-configuration/voice-language.schema.js +166 -0
  227. package/dist/core/type-definitions/account-definitions.d.ts +82 -0
  228. package/dist/core/type-definitions/account-definitions.js +88 -0
  229. package/dist/core/type-definitions/business-definitions.d.ts +394 -0
  230. package/dist/core/type-definitions/business-definitions.js +447 -0
  231. package/dist/core/type-definitions/conversation.type.definition.d.ts +223 -0
  232. package/dist/core/type-definitions/conversation.type.definition.js +236 -0
  233. package/dist/core/type-definitions/display-order.d.ts +154 -0
  234. package/dist/core/type-definitions/display-order.js +154 -0
  235. package/dist/core/type-definitions/dynamic-fields/field-definition.schema.d.ts +165 -0
  236. package/dist/core/type-definitions/dynamic-fields/field-definition.schema.js +97 -0
  237. package/dist/core/type-definitions/dynamic-fields/field-types.d.ts +49 -0
  238. package/dist/core/type-definitions/dynamic-fields/field-types.js +104 -0
  239. package/dist/core/type-definitions/dynamic-fields/index.d.ts +9 -0
  240. package/dist/core/type-definitions/dynamic-fields/index.js +25 -0
  241. package/dist/core/type-definitions/index.d.ts +10 -0
  242. package/dist/core/type-definitions/index.js +26 -0
  243. package/dist/core/type-definitions/knowledge-definitions.d.ts +30 -0
  244. package/dist/core/type-definitions/knowledge-definitions.js +37 -0
  245. package/dist/core/type-definitions/service-config.definitions.d.ts +112 -0
  246. package/dist/core/type-definitions/service-config.definitions.js +135 -0
  247. package/dist/core/validators/channel-validation.d.ts +19 -0
  248. package/dist/core/validators/channel-validation.js +40 -0
  249. package/dist/core/validators/index.d.ts +5 -0
  250. package/dist/core/validators/index.js +21 -0
  251. package/dist/index.d.ts +6 -0
  252. package/dist/index.js +24 -0
  253. package/dist/request/index.d.ts +5 -0
  254. package/dist/request/index.js +21 -0
  255. package/dist/request/models/index.d.ts +6 -0
  256. package/dist/request/models/index.js +22 -0
  257. package/dist/request/models/paginated-quest.schema.d.ts +33 -0
  258. package/dist/request/models/paginated-quest.schema.js +35 -0
  259. package/dist/request/models/paginated-result.schema.d.ts +124 -0
  260. package/dist/request/models/paginated-result.schema.js +94 -0
  261. package/package.json +43 -0
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateResourceCategorySchema = exports.CreateResourceCategorySchema = exports.ResourceCategorySchema = exports.ResourceCategoryChannelMappingSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const base_schema_1 = require("../../../base.schema");
6
+ const display_order_1 = require("../../../type-definitions/display-order");
7
+ const type_definitions_1 = require("../../../type-definitions");
8
+ /**
9
+ * @fileoverview Reservation resource category schema definitions.
10
+ * @module business-mgt/reservation-mgt/resource-category
11
+ */
12
+ // ============================================================================
13
+ // CHANNEL MAPPING SCHEMAS
14
+ // ============================================================================
15
+ /**
16
+ * Resource category channel mapping schema.
17
+ * Maps reservation resource categories to external platform category IDs.
18
+ *
19
+ * @typedef {Object} ResourceCategoryChannelMapping
20
+ * @property {string} channelId - Channel identifier
21
+ * @property {string} externalCategoryId - External category ID
22
+ */
23
+ exports.ResourceCategoryChannelMappingSchema = zod_1.z.object({
24
+ channelId: zod_1.z.string().describe("Channel ID (e.g., opentable, booking-com, resy)"),
25
+ externalCategoryId: zod_1.z.string().describe("External category ID for this specific channel"),
26
+ }).describe("Per-channel external resource category ID mapping");
27
+ // ============================================================================
28
+ // RESOURCE CATEGORY SCHEMA
29
+ // ============================================================================
30
+ /**
31
+ * Resource category schema.
32
+ * Groups reservation resources by type, location, channel mapping, and display order.
33
+ *
34
+ * @typedef {Object} ResourceCategory
35
+ * @property {string} [resourceRevisionId] - Version control for resource category changes
36
+ * @property {string} [locationId] - Business location where the category applies
37
+ * @property {string} name - Category display name
38
+ * @property {string} [description] - Category description
39
+ * @property {ResourceCategoryChannelMapping[]} [channelMappings] - Per-channel category mappings
40
+ * @property {ResourceType} [resourceType] - Optional resource type scope
41
+ * @property {number} [displayOrder] - Display order in category lists
42
+ * @property {boolean} isActive - Whether the category is active
43
+ * @property {Object} [metadata] - Additional category metadata
44
+ */
45
+ exports.ResourceCategorySchema = base_schema_1.BaseModelSchema.safeExtend({
46
+ resourceRevisionId: zod_1.z.string().nullable().optional().describe("Optional resource revision ID for version-scoped data"),
47
+ locationId: zod_1.z.string().nullable().optional().describe("Business location ID where this resource category applies. Null applies across locations."),
48
+ name: zod_1.z.string().min(1, "Category name is required").describe("Display name for the reservation resource category."),
49
+ description: zod_1.z.string().nullable().optional().describe("Customer or staff-facing description of this resource category."),
50
+ channelMappings: zod_1.z.array(exports.ResourceCategoryChannelMappingSchema).nullable().optional().describe("Per-channel resource category ID mappings"),
51
+ resourceType: zod_1.z.enum(type_definitions_1.ResourceType).nullable().optional().describe("Optional resource type scope for this category."),
52
+ displayOrder: zod_1.z.number().int().nullable().optional().describe("Numeric display order for category lists. Lower numbers appear first."),
53
+ isActive: zod_1.z.boolean().default(true).describe("Whether this resource category is active and available for assignment."),
54
+ metadata: zod_1.z.record(zod_1.z.string(), zod_1.z.any()).nullable().optional().describe("Additional structured metadata for resource category integrations."),
55
+ });
56
+ // ============================================================================
57
+ // CREATE/UPDATE SCHEMAS
58
+ // ============================================================================
59
+ /**
60
+ * Schema for creating a new resource category.
61
+ * Omits auto-generated fields.
62
+ */
63
+ exports.CreateResourceCategorySchema = exports.ResourceCategorySchema.omit({
64
+ id: true,
65
+ createdAt: true,
66
+ updatedAt: true,
67
+ }).safeExtend({
68
+ placement: display_order_1.CreateDisplayOrderPlacementSchema.optional().describe("Optional placement for display ordering."),
69
+ });
70
+ /**
71
+ * Schema for updating an existing resource category.
72
+ * All fields optional except id.
73
+ */
74
+ exports.UpdateResourceCategorySchema = exports.CreateResourceCategorySchema.partial().safeExtend({
75
+ id: zod_1.z.string().describe("Unique identifier of the resource category to update."),
76
+ });
@@ -0,0 +1,137 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * @fileoverview Reservation resource instance schema definitions.
4
+ * @module business-mgt/reservation-mgt/resource-instance
5
+ */
6
+ /**
7
+ * Operational status of a physical resource instance.
8
+ *
9
+ * @enum {string}
10
+ */
11
+ export declare enum ResourceInstanceStatus {
12
+ AVAILABLE = "available",
13
+ RESERVED = "reserved",
14
+ OCCUPIED = "occupied",
15
+ MAINTENANCE = "maintenance",
16
+ CLEANING = "cleaning",
17
+ OUT_OF_SERVICE = "out_of_service"
18
+ }
19
+ /**
20
+ * Resource instance attribute schema.
21
+ * Stores flexible key/value attributes on physical reservation inventory.
22
+ *
23
+ * @typedef {Object} ResourceInstanceAttribute
24
+ * @property {string} key - Attribute key
25
+ * @property {string} value - Attribute value
26
+ */
27
+ export declare const ResourceInstanceAttributeSchema: z.ZodObject<{
28
+ key: z.ZodString;
29
+ value: z.ZodString;
30
+ }, z.core.$strip>;
31
+ /**
32
+ * Resource instance schema.
33
+ * Represents a physical table, room, rental unit, or other reservable unit.
34
+ *
35
+ * @typedef {Object} ResourceInstance
36
+ * @property {string} [resourceRevisionId] - Version control for resource instance changes
37
+ * @property {string} [locationId] - Business location where the instance is located
38
+ * @property {string} resourceId - Parent resource ID
39
+ * @property {string} [name] - Instance display name
40
+ * @property {string} [code] - Instance code or number
41
+ * @property {ResourceInstanceStatus} status - Current operational status
42
+ * @property {boolean} isAvailable - Whether the instance can be assigned
43
+ * @property {ResourceInstanceAttribute[]} [attributes] - Instance-level attributes
44
+ */
45
+ export declare const ResourceInstanceSchema: z.ZodObject<{
46
+ id: z.ZodString;
47
+ createdAt: z.ZodOptional<z.ZodNumber>;
48
+ updatedAt: z.ZodOptional<z.ZodNumber>;
49
+ resourceRevisionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
50
+ locationId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
51
+ resourceId: z.ZodString;
52
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
53
+ code: z.ZodOptional<z.ZodNullable<z.ZodString>>;
54
+ status: z.ZodDefault<z.ZodEnum<typeof ResourceInstanceStatus>>;
55
+ isAvailable: z.ZodDefault<z.ZodBoolean>;
56
+ attributes: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
57
+ key: z.ZodString;
58
+ value: z.ZodString;
59
+ }, z.core.$strip>>>>;
60
+ }, z.core.$strip>;
61
+ /**
62
+ * Schema for creating a new resource instance.
63
+ * Omits auto-generated fields.
64
+ */
65
+ export declare const CreateResourceInstanceSchema: z.ZodObject<{
66
+ code: z.ZodOptional<z.ZodNullable<z.ZodString>>;
67
+ status: z.ZodDefault<z.ZodEnum<typeof ResourceInstanceStatus>>;
68
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
69
+ locationId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
70
+ isAvailable: z.ZodDefault<z.ZodBoolean>;
71
+ attributes: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
72
+ key: z.ZodString;
73
+ value: z.ZodString;
74
+ }, z.core.$strip>>>>;
75
+ resourceId: z.ZodString;
76
+ resourceRevisionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
77
+ }, z.core.$strip>;
78
+ /**
79
+ * Schema for updating an existing resource instance.
80
+ * All fields optional except id.
81
+ */
82
+ export declare const UpdateResourceInstanceSchema: z.ZodObject<{
83
+ code: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
84
+ name: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
85
+ locationId: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
86
+ isAvailable: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
87
+ attributes: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
88
+ key: z.ZodString;
89
+ value: z.ZodString;
90
+ }, z.core.$strip>>>>>;
91
+ resourceId: z.ZodOptional<z.ZodString>;
92
+ resourceRevisionId: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
93
+ id: z.ZodString;
94
+ status: z.ZodOptional<z.ZodEnum<typeof ResourceInstanceStatus>>;
95
+ }, z.core.$strip>;
96
+ export type ResourceInstanceAttribute = z.infer<typeof ResourceInstanceAttributeSchema>;
97
+ export type ResourceInstance = z.infer<typeof ResourceInstanceSchema>;
98
+ export type CreateResourceInstance = z.infer<typeof CreateResourceInstanceSchema>;
99
+ export type UpdateResourceInstance = z.infer<typeof UpdateResourceInstanceSchema>;
100
+ /**
101
+ * Resource instance filter options.
102
+ * @interface ResourceInstanceFilters
103
+ */
104
+ export interface ResourceInstanceFilters {
105
+ /** Filter by parent resource ID */
106
+ resourceId?: string;
107
+ /** Filter by business location ID */
108
+ locationId?: string;
109
+ /** Filter by operational statuses */
110
+ status?: ResourceInstanceStatus[];
111
+ /** Filter by assignment availability */
112
+ isAvailable?: boolean;
113
+ }
114
+ /**
115
+ * Resource instance sorting options.
116
+ * @interface ResourceInstanceSorting
117
+ */
118
+ export interface ResourceInstanceSorting {
119
+ /** Field to sort by */
120
+ field: "name" | "status" | "createdAt";
121
+ /** Sort direction */
122
+ direction: "asc" | "desc";
123
+ }
124
+ /**
125
+ * Resource instance query options.
126
+ * @interface ResourceInstanceQueryOptions
127
+ */
128
+ export interface ResourceInstanceQueryOptions {
129
+ /** Page number (1-indexed) */
130
+ page: number;
131
+ /** Items per page */
132
+ pageSize: number;
133
+ /** Optional filters */
134
+ filters?: ResourceInstanceFilters;
135
+ /** Optional sorting */
136
+ sorting?: ResourceInstanceSorting;
137
+ }
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateResourceInstanceSchema = exports.CreateResourceInstanceSchema = exports.ResourceInstanceSchema = exports.ResourceInstanceAttributeSchema = exports.ResourceInstanceStatus = void 0;
4
+ const zod_1 = require("zod");
5
+ const base_schema_1 = require("../../../base.schema");
6
+ /**
7
+ * @fileoverview Reservation resource instance schema definitions.
8
+ * @module business-mgt/reservation-mgt/resource-instance
9
+ */
10
+ // ============================================================================
11
+ // ENUMS
12
+ // ============================================================================
13
+ /**
14
+ * Operational status of a physical resource instance.
15
+ *
16
+ * @enum {string}
17
+ */
18
+ var ResourceInstanceStatus;
19
+ (function (ResourceInstanceStatus) {
20
+ ResourceInstanceStatus["AVAILABLE"] = "available";
21
+ ResourceInstanceStatus["RESERVED"] = "reserved";
22
+ ResourceInstanceStatus["OCCUPIED"] = "occupied";
23
+ ResourceInstanceStatus["MAINTENANCE"] = "maintenance";
24
+ ResourceInstanceStatus["CLEANING"] = "cleaning";
25
+ ResourceInstanceStatus["OUT_OF_SERVICE"] = "out_of_service";
26
+ })(ResourceInstanceStatus || (exports.ResourceInstanceStatus = ResourceInstanceStatus = {}));
27
+ // ============================================================================
28
+ // RESOURCE INSTANCE SCHEMAS
29
+ // ============================================================================
30
+ /**
31
+ * Resource instance attribute schema.
32
+ * Stores flexible key/value attributes on physical reservation inventory.
33
+ *
34
+ * @typedef {Object} ResourceInstanceAttribute
35
+ * @property {string} key - Attribute key
36
+ * @property {string} value - Attribute value
37
+ */
38
+ exports.ResourceInstanceAttributeSchema = zod_1.z.object({
39
+ key: zod_1.z.string().describe("Attribute key used by operations or integrations."),
40
+ value: zod_1.z.string().describe("Attribute value for the instance-specific key."),
41
+ });
42
+ /**
43
+ * Resource instance schema.
44
+ * Represents a physical table, room, rental unit, or other reservable unit.
45
+ *
46
+ * @typedef {Object} ResourceInstance
47
+ * @property {string} [resourceRevisionId] - Version control for resource instance changes
48
+ * @property {string} [locationId] - Business location where the instance is located
49
+ * @property {string} resourceId - Parent resource ID
50
+ * @property {string} [name] - Instance display name
51
+ * @property {string} [code] - Instance code or number
52
+ * @property {ResourceInstanceStatus} status - Current operational status
53
+ * @property {boolean} isAvailable - Whether the instance can be assigned
54
+ * @property {ResourceInstanceAttribute[]} [attributes] - Instance-level attributes
55
+ */
56
+ exports.ResourceInstanceSchema = base_schema_1.BaseModelSchema.safeExtend({
57
+ resourceRevisionId: zod_1.z.string().nullable().optional().describe("Optional resource revision ID for version-scoped data"),
58
+ locationId: zod_1.z.string().nullable().optional().describe("Business location ID where this resource instance is located. Null applies when the instance is not location-specific."),
59
+ resourceId: zod_1.z.string().describe("Parent resource ID that defines this physical instance."),
60
+ name: zod_1.z.string().nullable().optional().describe("Instance name/label"),
61
+ code: zod_1.z.string().nullable().optional().describe("Optional instance code/number"),
62
+ status: zod_1.z.enum(ResourceInstanceStatus).default(ResourceInstanceStatus.AVAILABLE).describe("Current operational status"),
63
+ isAvailable: zod_1.z.boolean().default(true).describe("Quick availability toggle for assignment"),
64
+ attributes: zod_1.z.array(exports.ResourceInstanceAttributeSchema).nullable().optional().describe("Instance-level attributes"),
65
+ }).superRefine((data, ctx) => {
66
+ if (data.status !== ResourceInstanceStatus.AVAILABLE && data.isAvailable) {
67
+ ctx.addIssue({
68
+ code: "custom",
69
+ path: ["isAvailable"],
70
+ message: "isAvailable should be false when status is not available",
71
+ });
72
+ }
73
+ });
74
+ // ============================================================================
75
+ // CREATE/UPDATE SCHEMAS
76
+ // ============================================================================
77
+ /**
78
+ * Schema for creating a new resource instance.
79
+ * Omits auto-generated fields.
80
+ */
81
+ exports.CreateResourceInstanceSchema = exports.ResourceInstanceSchema.omit({
82
+ id: true,
83
+ createdAt: true,
84
+ updatedAt: true,
85
+ });
86
+ /**
87
+ * Schema for updating an existing resource instance.
88
+ * All fields optional except id.
89
+ */
90
+ exports.UpdateResourceInstanceSchema = exports.CreateResourceInstanceSchema.partial().safeExtend({
91
+ id: zod_1.z.string().describe("Unique identifier of the resource instance to update."),
92
+ // Re-declared without the base `.default()` so partial updates don't inject a status the caller never set
93
+ status: zod_1.z.enum(ResourceInstanceStatus).optional().describe("Current operational status"),
94
+ });