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,211 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PhoneNumberPricingSchema = exports.PhoneNumberPurchaseRequestSchema = exports.BusinessPhoneNumberPurchaseRequestSchema = exports.CreatePhoneNumberPurchaseSchema = exports.PhoneNumberPurchaseSchema = exports.PhoneProviderResponseSchema = exports.BasePhoneNumberInfoSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const service_config_definitions_1 = require("../type-definitions/service-config.definitions");
6
+ const base_schema_1 = require("../base.schema");
7
+ /**
8
+ * @fileoverview Phone number configuration and purchase schema definitions.
9
+ *
10
+ * Phone number schemas manage the complete lifecycle of phone number acquisition from telephony providers:
11
+ * discovery of available inventory, purchase transactions, and provisioning into Phone Configurations.
12
+ * Supports multiple providers (SignalWire, Twilio) with provider-specific extensions.
13
+ *
14
+ * @module service-configuration/phone-number
15
+ */
16
+ /**
17
+ * Zod schema for base phone number information.
18
+ *
19
+ * Common properties shared across all phone number providers.
20
+ *
21
+ * @typedef {Object} BasePhoneNumberInfoProperties
22
+ * @property {string} friendlyName - Human-readable name for the phone number
23
+ * @property {string} phoneNumber - The phone number in E.164 format
24
+ * @property {string | null} [lata] - Local Access and Transport Area code
25
+ * @property {string} [rateCenter] - Rate center for the phone number
26
+ * @property {string} [region] - Geographic region
27
+ * @property {string} [postalCode] - Postal/ZIP code for the phone number
28
+ * @property {string} countryCode - ISO country code
29
+ * @property {Object} capabilities - Phone number capabilities
30
+ * @property {boolean} capabilities.voice - Supports voice calls
31
+ * @property {boolean} capabilities.SMS - Supports SMS messaging
32
+ * @property {boolean} capabilities.MMS - Supports MMS messaging
33
+ * @property {boolean} beta - Whether this is a beta number
34
+ * @property {PhoneNumberType} numberType - Type of phone number (local, toll-free, etc.)
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * const phoneInfo: BasePhoneNumberInfo = {
39
+ * friendlyName: 'Customer Support Line',
40
+ * phoneNumber: '+12125551234',
41
+ * countryCode: 'US',
42
+ * capabilities: { voice: true, SMS: true, MMS: false },
43
+ * beta: false,
44
+ * numberType: PhoneNumberType.LOCAL
45
+ * };
46
+ * ```
47
+ */
48
+ exports.BasePhoneNumberInfoSchema = zod_1.z.object({
49
+ friendlyName: zod_1.z.string().describe("Human-readable display name for this phone number (e.g., 'New York Local', 'Customer Support Line')"),
50
+ phoneNumber: zod_1.z.string().describe("Phone number in E.164 international format (e.g., '+12125551234')"),
51
+ lata: zod_1.z.string().nullable().optional().describe("Local Access and Transport Area (LATA) code for North American numbers (telecom routing identifier)"),
52
+ rateCenter: zod_1.z.string().optional().describe("Rate center name for billing and routing purposes (North American telephony concept)"),
53
+ region: zod_1.z.string().optional().describe("State or province code where the number is registered (e.g., 'NY', 'CA', 'ON')"),
54
+ postalCode: zod_1.z.string().optional().describe("Postal or ZIP code associated with this phone number's geographic location"),
55
+ countryCode: zod_1.z.string().describe("ISO 3166-1 alpha-2 country code for this phone number (e.g., 'US', 'GB', 'CA')"),
56
+ capabilities: zod_1.z.object({
57
+ voice: zod_1.z.boolean().describe("Whether this phone number supports voice calls (inbound/outbound telephony)"),
58
+ SMS: zod_1.z.boolean().describe("Whether this phone number supports SMS text messaging"),
59
+ MMS: zod_1.z.boolean().describe("Whether this phone number supports MMS multimedia messaging"),
60
+ }).describe("Capabilities supported by this phone number for voice and messaging"),
61
+ beta: zod_1.z.boolean().describe("Whether this is a beta phone number (experimental or limited availability)"),
62
+ numberType: zod_1.z.enum(service_config_definitions_1.PhoneNumberType).describe("Type of phone number (LOCAL for geographic, TOLL_FREE for 1-800 numbers, MOBILE for cellular, etc.)"),
63
+ });
64
+ /**
65
+ * Zod schema for phone provider response.
66
+ *
67
+ * Response from phone number provider API calls.
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * const response: PhoneProviderResponse = {
72
+ * success: true,
73
+ * status: 200,
74
+ * data: { availableNumbers: [...] }
75
+ * };
76
+ * ```
77
+ */
78
+ exports.PhoneProviderResponseSchema = zod_1.z.object({
79
+ success: zod_1.z.boolean(),
80
+ status: zod_1.z.number().optional(),
81
+ data: zod_1.z.unknown(),
82
+ });
83
+ /**
84
+ * Zod schema for phone number purchase transaction.
85
+ *
86
+ * Represents a phone number purchase request and its lifecycle through the purchase process.
87
+ *
88
+ * @typedef {Object} PhoneNumberPurchaseProperties
89
+ * @property {string} id - Unique identifier for the purchase transaction
90
+ * @property {string} friendlyName - Human-readable name for the purchased number
91
+ * @property {string} phoneNumber - The phone number being purchased
92
+ * @property {ProviderType} providerType - Provider from which the number is being purchased
93
+ * @property {string} countryCode - ISO country code for the phone number (e.g., 'US', 'GB', 'CA')
94
+ * @property {number} amount - Purchase amount (must be positive)
95
+ * @property {string} currency - Currency code (3 characters, default: "USD")
96
+ * @property {PhonePurchaseStatus} status - Current status of the purchase (default: PENDING)
97
+ * @property {PhoneNumberType} numberType - Type of phone number (default: LOCAL)
98
+ * @property {string | null} [statusDetails] - Additional details about the current status
99
+ * @property {number | null} [completedAt] - Timestamp when purchase was completed
100
+ * @property {Record<string, any> | null} [metadata] - Additional metadata for the purchase
101
+ * @property {number} [createdAt] - Timestamp when created
102
+ * @property {number} [updatedAt] - Timestamp when last updated
103
+ *
104
+ * @example
105
+ * ```typescript
106
+ * const purchase: PhoneNumberPurchase = {
107
+ * id: '32422DEGER56',
108
+ * friendlyName: 'Main Support Line',
109
+ * phoneNumber: '+12125551234',
110
+ * countryCode: 'US',
111
+ * chargedCredits: 1500,
112
+ * status: PhonePurchaseStatus.COMPLETED,
113
+ * numberType: PhoneNumberType.LOCAL,
114
+ * completedAt: Date.now(),
115
+ * createdAt: Date.now(),
116
+ * updatedAt: Date.now()
117
+ * };
118
+ * ```
119
+ */
120
+ exports.PhoneNumberPurchaseSchema = base_schema_1.BaseModelSchema.safeExtend({
121
+ friendlyName: zod_1.z.string().describe("Human-readable name for the phone number being purchased (e.g., 'Customer Support Line', 'Sales Main Number')"),
122
+ phoneNumber: base_schema_1.PhoneNumberSchema.describe("Phone number in E.164 international format being purchased (e.g., '+12125551234')"),
123
+ countryCode: zod_1.z.string().length(2).describe("ISO 3166-1 alpha-2 country code for the phone number (e.g., 'US', 'GB', 'CA')"),
124
+ chargedCredits: zod_1.z.number().positive().describe("Amount charged for the phone number purchase (must be a positive number)"),
125
+ status: zod_1.z.enum(service_config_definitions_1.PhonePurchaseStatus).default(service_config_definitions_1.PhonePurchaseStatus.PENDING).describe("Current status of the purchase transaction (PENDING, PROCESSING, COMPLETED, FAILED, CANCELLED)"),
126
+ numberType: zod_1.z.enum(service_config_definitions_1.PhoneNumberType).default(service_config_definitions_1.PhoneNumberType.LOCAL).describe("Type of phone number being purchased (LOCAL for geographic, TOLL_FREE for 1-800, MOBILE for cellular)"),
127
+ statusDetails: zod_1.z.string().nullable().optional().describe("Additional details about the current status (error messages, provider notes, or completion details)"),
128
+ completedAt: zod_1.z.number().nullable().optional().describe("Unix timestamp (milliseconds) when the purchase was successfully completed and number became active"),
129
+ metadata: zod_1.z.record(zod_1.z.string(), zod_1.z.any()).nullable().optional().describe("Additional metadata for the purchase including provider-specific details, billing information, or custom attributes"),
130
+ });
131
+ /**
132
+ * Zod schema for creating a new phone number purchase.
133
+ *
134
+ * Omits auto-generated and transaction-specific fields.
135
+ *
136
+ * @remarks
137
+ * Use this schema when initiating a new phone number purchase.
138
+ *
139
+ * @example
140
+ * ```typescript
141
+ * const newPurchase: CreatePhoneNumberPurchase = {
142
+ * friendlyName: 'New Support Line',
143
+ * phoneNumber: '+12125551234',
144
+ * countryCode: 'US',
145
+ * providerType: ProviderType.TWILIO,
146
+ * phoneNumberInfo: { ... },
147
+ * numberType: PhoneNumberType.LOCAL
148
+ * };
149
+ * ```
150
+ */
151
+ exports.CreatePhoneNumberPurchaseSchema = exports.PhoneNumberPurchaseSchema.omit({
152
+ id: true,
153
+ amount: true,
154
+ chargedCredits: true,
155
+ status: true,
156
+ createdAt: true,
157
+ updatedAt: true,
158
+ statusDetails: true,
159
+ completedAt: true,
160
+ metadata: true,
161
+ });
162
+ exports.BusinessPhoneNumberPurchaseRequestSchema = zod_1.z.object({
163
+ phoneNumber: base_schema_1.PhoneNumberSchema.describe("Phone number in international format to be purchased"),
164
+ friendlyName: zod_1.z.string().optional().describe("Human-readable display name for the phone number being purchased"),
165
+ }).describe("Schema for business phone number purchase request, containing necessary information to initiate a phone number purchase for a business account");
166
+ /**
167
+ * Legacy schema export for backwards compatibility.
168
+ * @deprecated Use CreatePhoneNumberPurchaseSchema instead.
169
+ */
170
+ exports.PhoneNumberPurchaseRequestSchema = exports.CreatePhoneNumberPurchaseSchema;
171
+ /**
172
+ * Zod schema for phone number pricing information.
173
+ *
174
+ * Represents pricing details for phone numbers from various providers.
175
+ *
176
+ * @typedef {Object} PhoneNumberPricingProperties
177
+ * @property {PhoneNumberType} number_type - Type of phone number
178
+ * @property {string} country - Full country name
179
+ * @property {string} countryCode - ISO country code
180
+ * @property {Array} phoneNumberPrices - Array of pricing tiers
181
+ * @property {number} price - Final price for the number
182
+ * @property {string} priceUnit - Unit of pricing (e.g., "per month")
183
+ * @property {string} currency - Currency code (3 characters, default: "USD")
184
+ *
185
+ * @example
186
+ * ```typescript
187
+ * const pricing: PhoneNumberPricing = {
188
+ * number_type: PhoneNumberType.LOCAL,
189
+ * country: 'United States',
190
+ * countryCode: 'US',
191
+ * phoneNumberPrices: [
192
+ * { base_price: '1.00', current_price: '1.00' }
193
+ * ],
194
+ * price: 1.00,
195
+ * priceUnit: 'per month',
196
+ * currency: 'USD'
197
+ * };
198
+ * ```
199
+ */
200
+ exports.PhoneNumberPricingSchema = zod_1.z.object({
201
+ number_type: zod_1.z.enum(service_config_definitions_1.PhoneNumberType),
202
+ country: zod_1.z.string(),
203
+ countryCode: zod_1.z.string(),
204
+ phoneNumberPrices: zod_1.z.array(zod_1.z.object({
205
+ base_price: zod_1.z.string(),
206
+ current_price: zod_1.z.string(),
207
+ })),
208
+ price: zod_1.z.number(),
209
+ priceUnit: zod_1.z.string(),
210
+ currency: zod_1.z.string().length(3).default('USD'),
211
+ });
@@ -0,0 +1,429 @@
1
+ import z from "zod";
2
+ /**
3
+ * @fileoverview Provisioning configuration chain schema definitions.
4
+ *
5
+ * Provisioning chains orchestrate the complete voice interaction pipeline by linking Speech-to-Text (STT),
6
+ * Agent Configuration, and Text-to-Speech (TTS) models. Used for voice-based deployments with CHAINED
7
+ * provisioning type.
8
+ *
9
+ * @module service-configuration/provisioning-config
10
+ */
11
+ /**
12
+ * Zod schema for Speech-to-Text (STT) model configuration.
13
+ *
14
+ * Defines the STT model used to convert user speech to text in voice-based interactions.
15
+ * Part of the provisioning chain's input processing stage.
16
+ *
17
+ * @remarks
18
+ * **Architecture Context:**
19
+ * - **Used In**: ProvisioningConfigChain (sttConfig field)
20
+ * - **Purpose**: Converts incoming voice to text for agent processing
21
+ * - **Pipeline Position**: First stage (Speech → Text)
22
+ *
23
+ * @typedef {Object} SttModelConfigProperties
24
+ * @property {string} modelId - Identifier of the STT model from Wiil registry (e.g., 'whisper-v3', 'google-stt-enhanced')
25
+ * @property {string} defaultLanguage - Default language code for speech recognition in ISO format (default: "en-US")
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * const sttConfig: SttModelConfig = {
30
+ * modelId: 'whisper-v3',
31
+ * defaultLanguage: 'en-US'
32
+ * };
33
+ * ```
34
+ */
35
+ export declare const SttModelConfigSchema: z.ZodObject<{
36
+ modelId: z.ZodString;
37
+ defaultLanguage: z.ZodDefault<z.ZodString>;
38
+ }, z.core.$strip>;
39
+ /**
40
+ * Type definition for STT model configuration.
41
+ */
42
+ export type SttModelConfig = z.infer<typeof SttModelConfigSchema>;
43
+ /**
44
+ * Zod schema for Text-to-Speech (TTS) model configuration.
45
+ *
46
+ * Defines the TTS model and voice used to convert agent text responses to speech in voice interactions.
47
+ * Part of the provisioning chain's output generation stage.
48
+ *
49
+ * @remarks
50
+ * **Architecture Context:**
51
+ * - **Used In**: ProvisioningConfigChain (ttsConfig field)
52
+ * - **Purpose**: Converts agent text responses to natural speech
53
+ * - **Pipeline Position**: Final stage (Text → Speech)
54
+ * - **Voice Selection**: References voices from WiilSupportModel.supportedVoices
55
+ *
56
+ * @typedef {Object} TtsModelConfigProperties
57
+ * @property {string} modelId - Identifier of the TTS model from Wiil registry (e.g., 'eleven-labs-v2', 'google-tts-wavenet')
58
+ * @property {string} voiceId - Identifier of the specific voice for speech synthesis (e.g., 'adam', 'rachel', 'en-us-neural-female')
59
+ * @property {string} defaultLanguage - Default language code for speech synthesis (default: "en-US")
60
+ * @property {Record<string, any>} [voiceSettings] - Optional voice-specific settings (pitch, speed, stability, etc.)
61
+ *
62
+ * @example
63
+ * ```typescript
64
+ * const ttsConfig: TtsModelConfig = {
65
+ * modelId: 'eleven-labs-v2',
66
+ * voiceId: 'adam',
67
+ * defaultLanguage: 'en-US',
68
+ * voiceSettings: { stability: 0.75, similarity_boost: 0.5 }
69
+ * };
70
+ * ```
71
+ */
72
+ export declare const TtsModelConfigSchema: z.ZodObject<{
73
+ modelId: z.ZodString;
74
+ voiceId: z.ZodString;
75
+ defaultLanguage: z.ZodDefault<z.ZodString>;
76
+ voiceSettings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
77
+ }, z.core.$strip>;
78
+ /**
79
+ * Type definition for TTS model configuration.
80
+ */
81
+ export type TtsModelConfig = z.infer<typeof TtsModelConfigSchema>;
82
+ /**
83
+ * Zod schema for provisioning configuration chain.
84
+ *
85
+ * Represents a complete voice interaction processing pipeline that chains Speech-to-Text (STT),
86
+ * Agent Configuration, and Text-to-Speech (TTS) for end-to-end voice conversations. Referenced
87
+ * by Deployment Configurations with CHAINED provisioning type.
88
+ *
89
+ * @remarks
90
+ * **Architecture Context:**
91
+ * - **Used By**: Deployment Configuration (provisioningConfigChainId for CHAINED type)
92
+ * - **Purpose**: Orchestrates complete voice interaction pipeline
93
+ * - **Pipeline Flow**: User Speech → STT → Text → Agent → Text Response → TTS → Agent Speech
94
+ * - **Organization**: Scoped to organization for multi-tenant isolation
95
+ *
96
+ * **Voice Processing Pipeline:**
97
+ * 1. **STT Stage**: Converts incoming user speech to text using sttConfig
98
+ * 2. **Agent Stage**: Processes text through agent (referenced by agentConfigurationId)
99
+ * 3. **TTS Stage**: Converts agent text response to speech using ttsConfig
100
+ *
101
+ * @typedef {Object} ProvisioningConfigChainProperties
102
+ * @property {string} id - Unique identifier for the provisioning chain
103
+ * @property {string} chainName - Human-readable name for the provisioning chain for administrative identification
104
+ * @property {string} [description] - Optional description of the chain's purpose, use case, and configuration details
105
+ * @property {SttModelConfig} sttConfig - Speech-to-text model configuration for converting user voice to text (pipeline stage 1)
106
+ * @property {string} agentConfigurationId - ID of the agent configuration to use for processing text interactions (pipeline stage 2)
107
+ * @property {TtsModelConfig} ttsConfig - Text-to-speech model configuration for converting agent responses to voice (pipeline stage 3)
108
+ * @property {number} [createdAt] - Unix timestamp (milliseconds) when created
109
+ * @property {number} [updatedAt] - Unix timestamp (milliseconds) when last updated
110
+ *
111
+ * @example
112
+ * ```typescript
113
+ * const provisioningChain: ProvisioningConfigChain = {
114
+ * id: 'chain-123',
115
+ * chainName: 'Customer Support Voice Chain',
116
+ * description: 'Voice processing chain for customer support calls',
117
+ * sttConfig: {
118
+ * modelId: 'whisper-v3',
119
+ * defaultLanguage: 'en-US'
120
+ * },
121
+ * agentConfigurationId: 'agent-789',
122
+ * ttsConfig: {
123
+ * modelId: 'eleven-labs-v2',
124
+ * voiceId: 'adam',
125
+ * defaultLanguage: 'en-US'
126
+ * },
127
+ * createdAt: Date.now(),
128
+ * updatedAt: Date.now()
129
+ * };
130
+ * ```
131
+ */
132
+ export declare const ProvisioningConfigChainSchema: z.ZodObject<{
133
+ id: z.ZodString;
134
+ createdAt: z.ZodOptional<z.ZodNumber>;
135
+ updatedAt: z.ZodOptional<z.ZodNumber>;
136
+ chainName: z.ZodString;
137
+ description: z.ZodOptional<z.ZodString>;
138
+ sttConfig: z.ZodObject<{
139
+ modelId: z.ZodString;
140
+ defaultLanguage: z.ZodDefault<z.ZodString>;
141
+ }, z.core.$strip>;
142
+ agentConfigurationId: z.ZodString;
143
+ ttsConfig: z.ZodObject<{
144
+ modelId: z.ZodString;
145
+ voiceId: z.ZodString;
146
+ defaultLanguage: z.ZodDefault<z.ZodString>;
147
+ voiceSettings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
148
+ }, z.core.$strip>;
149
+ }, z.core.$strip>;
150
+ /**
151
+ * Type definition for provisioning configuration chain.
152
+ */
153
+ export type ProvisioningConfigChain = z.infer<typeof ProvisioningConfigChainSchema>;
154
+ /**
155
+ * Zod schema for creating a new provisioning configuration chain.
156
+ *
157
+ * Omits auto-generated fields that are populated by the system.
158
+ *
159
+ * @remarks
160
+ * Use this schema when creating new provisioning chains.
161
+ *
162
+ * @example
163
+ * ```typescript
164
+ * const newChain: CreateProvisioningConfig = {
165
+ * chainName: 'New Voice Chain',
166
+ * description: 'Processing chain for multilingual support',
167
+ * sttConfig: {
168
+ * providerType: 'Deepgram',
169
+ * providerModelId: 'nova-2',
170
+ * languageId: 'en'
171
+ * },
172
+ * processingConfig: {
173
+ * providerType: 'OpenAI',
174
+ * providerModelId: 'gpt-4o-mini'
175
+ * },
176
+ * ttsConfig: {
177
+ * providerType: 'ElevenLabs',
178
+ * providerModelId: 'eleven_multilingual_v2',
179
+ * languageId: 'en',
180
+ * voiceId: 'rachel'
181
+ * }
182
+ * };
183
+ * ```
184
+ */
185
+ export declare const CreateProvisioningConfigSchema: z.ZodObject<{
186
+ chainName: z.ZodString;
187
+ description: z.ZodOptional<z.ZodString>;
188
+ sttConfig: z.ZodObject<{
189
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
190
+ providerModelId: z.ZodString;
191
+ languageId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
192
+ }, z.core.$strip>;
193
+ processingConfig: z.ZodObject<{
194
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
195
+ providerModelId: z.ZodString;
196
+ }, z.core.$strip>;
197
+ ttsConfig: z.ZodObject<{
198
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
199
+ providerModelId: z.ZodString;
200
+ languageId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
201
+ voiceId: z.ZodOptional<z.ZodString>;
202
+ }, z.core.$strip>;
203
+ }, z.core.$strip>;
204
+ /**
205
+ * Type definition for creating a provisioning configuration chain.
206
+ */
207
+ export type CreateProvisioningConfig = z.infer<typeof CreateProvisioningConfigSchema>;
208
+ /**
209
+ * Zod schema for updating an existing provisioning configuration chain.
210
+ *
211
+ * All fields are optional (partial) except id, which is required to identify the chain.
212
+ *
213
+ * @remarks
214
+ * Supports partial updates - only include the fields you want to modify.
215
+ *
216
+ * @example
217
+ * ```typescript
218
+ * const updateChain: UpdateProvisioningConfig = {
219
+ * id: 'chain-123',
220
+ * chainName: 'Updated Voice Chain',
221
+ * description: 'Updated description'
222
+ * };
223
+ * ```
224
+ */
225
+ export declare const UpdateProvisioningConfigSchema: z.ZodObject<{
226
+ chainName: z.ZodOptional<z.ZodString>;
227
+ description: z.ZodOptional<z.ZodOptional<z.ZodString>>;
228
+ sttConfig: z.ZodOptional<z.ZodObject<{
229
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
230
+ providerModelId: z.ZodString;
231
+ languageId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
232
+ }, z.core.$strip>>;
233
+ processingConfig: z.ZodOptional<z.ZodObject<{
234
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
235
+ providerModelId: z.ZodString;
236
+ }, z.core.$strip>>;
237
+ ttsConfig: z.ZodOptional<z.ZodObject<{
238
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
239
+ providerModelId: z.ZodString;
240
+ languageId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
241
+ voiceId: z.ZodOptional<z.ZodString>;
242
+ }, z.core.$strip>>;
243
+ id: z.ZodString;
244
+ }, z.core.$strip>;
245
+ /**
246
+ * Type definition for updating a provisioning configuration chain.
247
+ */
248
+ export type UpdateProvisioningConfig = z.infer<typeof UpdateProvisioningConfigSchema>;
249
+ /**
250
+ * Zod schema for translation chain configuration.
251
+ *
252
+ * Extends the provisioning chain concept with translation-specific processing capabilities.
253
+ * Enables real-time language translation in voice interactions (e.g., English caller to Spanish agent).
254
+ *
255
+ * @remarks
256
+ * **Architecture Context:**
257
+ * - **Extension Of**: ProvisioningConfigChain with translation capabilities
258
+ * - **Purpose**: Real-time language translation for multilingual support
259
+ * - **Pipeline Flow**: Speech (Lang A) → STT → Text (Lang A) → Translation → Text (Lang B) → TTS → Speech (Lang B)
260
+ * - **Use Case**: Cross-language customer support, international business
261
+ *
262
+ * **Translation Pipeline:**
263
+ * 1. **STT Stage**: Converts incoming speech to text in source language
264
+ * 2. **Translation Stage**: Translates text between languages using processingModelId
265
+ * 3. **TTS Stage**: Converts translated text to speech in target language
266
+ *
267
+ * @typedef {Object} TranslationChainConfigProperties
268
+ * @property {string} id - Unique identifier for the translation chain
269
+ * @property {string} chainName - Human-readable name for the translation chain (e.g., 'EN-ES Translation', 'Multilingual Support')
270
+ * @property {string} [description] - Optional description of language pair, use case, and configuration
271
+ * @property {SttModelConfig} sttConfig - Speech-to-text configuration for source language recognition
272
+ * @property {string} processingModelId - ID of the LLM model used for translation processing between languages
273
+ * @property {TtsModelConfig} ttsConfig - Text-to-speech configuration for target language synthesis
274
+ * @property {boolean} isTranslation - Flag indicating this chain performs translation (default: true)
275
+ * @property {number} [createdAt] - Unix timestamp (milliseconds) when created
276
+ * @property {number} [updatedAt] - Unix timestamp (milliseconds) when last updated
277
+ *
278
+ * @example
279
+ * ```typescript
280
+ * const translationChain: TranslationChainConfig = {
281
+ * id: 'chain-123',
282
+ * chainName: 'EN-ES Translation Chain',
283
+ * description: 'English to Spanish translation for customer support',
284
+ * sttConfig: {
285
+ * modelId: 'whisper-v3',
286
+ * defaultLanguage: 'en-US'
287
+ * },
288
+ * processingModelId: 'gpt-4-translator',
289
+ * ttsConfig: {
290
+ * modelId: 'eleven-labs-v2',
291
+ * voiceId: 'spanish-voice',
292
+ * defaultLanguage: 'es-ES'
293
+ * },
294
+ * isTranslation: true,
295
+ * createdAt: Date.now(),
296
+ * updatedAt: Date.now()
297
+ * };
298
+ * ```
299
+ */
300
+ export declare const TranslationChainConfigSchema: z.ZodObject<{
301
+ id: z.ZodString;
302
+ createdAt: z.ZodOptional<z.ZodNumber>;
303
+ updatedAt: z.ZodOptional<z.ZodNumber>;
304
+ chainName: z.ZodString;
305
+ description: z.ZodOptional<z.ZodString>;
306
+ sttConfig: z.ZodObject<{
307
+ modelId: z.ZodString;
308
+ defaultLanguage: z.ZodDefault<z.ZodString>;
309
+ }, z.core.$strip>;
310
+ processingModelId: z.ZodString;
311
+ ttsConfig: z.ZodObject<{
312
+ modelId: z.ZodString;
313
+ voiceId: z.ZodString;
314
+ defaultLanguage: z.ZodDefault<z.ZodString>;
315
+ voiceSettings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
316
+ }, z.core.$strip>;
317
+ isTranslation: z.ZodDefault<z.ZodBoolean>;
318
+ }, z.core.$strip>;
319
+ /**
320
+ * Type definition for translation chain configuration.
321
+ */
322
+ export type TranslationChainConfig = z.infer<typeof TranslationChainConfigSchema>;
323
+ /**
324
+ * Zod schema for creating a new translation chain configuration.
325
+ *
326
+ * Omits auto-generated fields and sets isTranslation to true by default.
327
+ *
328
+ * @example
329
+ * ```typescript
330
+ * const newTranslationChain: CreateTranslationChainConfig = {
331
+ * chainName: 'FR-EN Translation',
332
+ * description: 'French to English translation chain',
333
+ * sttConfig: {
334
+ * providerType: 'Deepgram',
335
+ * providerModelId: 'nova-2',
336
+ * languageId: 'fr'
337
+ * },
338
+ * processingConfig: {
339
+ * providerType: 'OpenAI',
340
+ * providerModelId: 'gpt-4o-mini'
341
+ * },
342
+ * ttsConfig: {
343
+ * providerType: 'ElevenLabs',
344
+ * providerModelId: 'eleven_multilingual_v2',
345
+ * languageId: 'en',
346
+ * voiceId: 'english-voice'
347
+ * },
348
+ * isTranslation: true
349
+ * };
350
+ * ```
351
+ */
352
+ export declare const CreateTranslationChainConfigSchema: z.ZodObject<{
353
+ chainName: z.ZodString;
354
+ description: z.ZodOptional<z.ZodString>;
355
+ sttConfig: z.ZodObject<{
356
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
357
+ providerModelId: z.ZodString;
358
+ languageId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
359
+ }, z.core.$strip>;
360
+ processingConfig: z.ZodObject<{
361
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
362
+ providerModelId: z.ZodString;
363
+ }, z.core.$strip>;
364
+ ttsConfig: z.ZodObject<{
365
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
366
+ providerModelId: z.ZodString;
367
+ languageId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
368
+ voiceId: z.ZodOptional<z.ZodString>;
369
+ }, z.core.$strip>;
370
+ isTranslation: z.ZodDefault<z.ZodBoolean>;
371
+ }, z.core.$strip>;
372
+ /**
373
+ * Type definition for creating a translation chain configuration.
374
+ */
375
+ export type CreateTranslationChainConfig = z.infer<typeof CreateTranslationChainConfigSchema>;
376
+ /**
377
+ * Zod schema for updating an existing translation chain configuration.
378
+ *
379
+ * All fields are optional (partial) except id.
380
+ *
381
+ * @example
382
+ * ```typescript
383
+ * const updateTranslationChain: UpdateTranslationChainConfig = {
384
+ * id: 'chain-123',
385
+ * chainName: 'Updated Translation Chain',
386
+ * processingConfig: {
387
+ * providerType: 'OpenAI',
388
+ * providerModelId: 'gpt-4.1-mini'
389
+ * }
390
+ * };
391
+ * ```
392
+ */
393
+ export declare const UpdateTranslationChainConfigSchema: z.ZodObject<{
394
+ chainName: z.ZodOptional<z.ZodString>;
395
+ description: z.ZodOptional<z.ZodOptional<z.ZodString>>;
396
+ sttConfig: z.ZodOptional<z.ZodObject<{
397
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
398
+ providerModelId: z.ZodString;
399
+ languageId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
400
+ }, z.core.$strip>>;
401
+ processingConfig: z.ZodOptional<z.ZodObject<{
402
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
403
+ providerModelId: z.ZodString;
404
+ }, z.core.$strip>>;
405
+ ttsConfig: z.ZodOptional<z.ZodObject<{
406
+ providerType: z.ZodEnum<typeof import("..").SupportedProprietor>;
407
+ providerModelId: z.ZodString;
408
+ languageId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
409
+ voiceId: z.ZodOptional<z.ZodString>;
410
+ }, z.core.$strip>>;
411
+ isTranslation: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
412
+ id: z.ZodString;
413
+ }, z.core.$strip>;
414
+ /**
415
+ * Type definition for updating a translation chain configuration.
416
+ */
417
+ export type UpdateTranslationChainConfig = z.infer<typeof UpdateTranslationChainConfigSchema>;
418
+ /**
419
+ * Union type for any chain configuration (provisioning or translation).
420
+ */
421
+ export type ChainConfiguration = ProvisioningConfigChain | TranslationChainConfig;
422
+ /**
423
+ * Union type for creating any chain configuration.
424
+ */
425
+ export type CreateChainConfiguration = CreateProvisioningConfig | CreateTranslationChainConfig;
426
+ /**
427
+ * Union type for updating any chain configuration.
428
+ */
429
+ export type UpdateChainConfiguration = UpdateProvisioningConfig | UpdateTranslationChainConfig;