tnzapi-ts 3.0.0

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 (363) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2203 -0
  3. package/dist/Api/Actions/AbortApi.d.ts +17 -0
  4. package/dist/Api/Actions/AbortApi.js +78 -0
  5. package/dist/Api/Actions/PacingApi.d.ts +17 -0
  6. package/dist/Api/Actions/PacingApi.js +84 -0
  7. package/dist/Api/Actions/RescheduleApi.d.ts +17 -0
  8. package/dist/Api/Actions/RescheduleApi.js +84 -0
  9. package/dist/Api/Actions/ResubmitApi.d.ts +17 -0
  10. package/dist/Api/Actions/ResubmitApi.js +86 -0
  11. package/dist/Api/Actions/dtos/AbortApiRequestDTO.d.ts +4 -0
  12. package/dist/Api/Actions/dtos/AbortApiRequestDTO.js +14 -0
  13. package/dist/Api/Actions/dtos/ActionApiResponseDTO.d.ts +8 -0
  14. package/dist/Api/Actions/dtos/ActionApiResponseDTO.js +14 -0
  15. package/dist/Api/Actions/dtos/ActionBaseRequestDTO.d.ts +5 -0
  16. package/dist/Api/Actions/dtos/ActionBaseRequestDTO.js +7 -0
  17. package/dist/Api/Actions/dtos/PacingApiRequestDTO.d.ts +5 -0
  18. package/dist/Api/Actions/dtos/PacingApiRequestDTO.js +15 -0
  19. package/dist/Api/Actions/dtos/RescheduleApiRequestDTO.d.ts +5 -0
  20. package/dist/Api/Actions/dtos/RescheduleApiRequestDTO.js +14 -0
  21. package/dist/Api/Actions/dtos/ResubmitApiRequestDTO.d.ts +5 -0
  22. package/dist/Api/Actions/dtos/ResubmitApiRequestDTO.js +14 -0
  23. package/dist/Api/Actions/dtos/index.d.ts +6 -0
  24. package/dist/Api/Actions/dtos/index.js +22 -0
  25. package/dist/Api/Actions/helpers/MapApiResponse.d.ts +3 -0
  26. package/dist/Api/Actions/helpers/MapApiResponse.js +16 -0
  27. package/dist/Api/Actions/helpers/index.d.ts +1 -0
  28. package/dist/Api/Actions/helpers/index.js +17 -0
  29. package/dist/Api/Actions/index.d.ts +12 -0
  30. package/dist/Api/Actions/index.js +17 -0
  31. package/dist/Api/Actions/interfaces/IActionArgs.d.ts +19 -0
  32. package/dist/Api/Actions/interfaces/IActionArgs.js +2 -0
  33. package/dist/Api/Actions/interfaces/index.d.ts +1 -0
  34. package/dist/Api/Actions/interfaces/index.js +17 -0
  35. package/dist/Api/Addressbook/ContactGroups/ContactGroupCreateApi.d.ts +14 -0
  36. package/dist/Api/Addressbook/ContactGroups/ContactGroupCreateApi.js +84 -0
  37. package/dist/Api/Addressbook/ContactGroups/ContactGroupDeleteApi.d.ts +14 -0
  38. package/dist/Api/Addressbook/ContactGroups/ContactGroupDeleteApi.js +84 -0
  39. package/dist/Api/Addressbook/ContactGroups/ContactGroupDetailApi.d.ts +14 -0
  40. package/dist/Api/Addressbook/ContactGroups/ContactGroupDetailApi.js +84 -0
  41. package/dist/Api/Addressbook/ContactGroups/ContactGroupListApi.d.ts +14 -0
  42. package/dist/Api/Addressbook/ContactGroups/ContactGroupListApi.js +79 -0
  43. package/dist/Api/Addressbook/ContactGroups/dtos/BaseListApiRequestDTO.d.ts +4 -0
  44. package/dist/Api/Addressbook/ContactGroups/dtos/BaseListApiRequestDTO.js +7 -0
  45. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupApiRequestDTO.d.ts +9 -0
  46. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupApiRequestDTO.js +19 -0
  47. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupApiResponseDTO.d.ts +8 -0
  48. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupApiResponseDTO.js +14 -0
  49. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupBaseRequestDTO.d.ts +6 -0
  50. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupBaseRequestDTO.js +7 -0
  51. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupListApiRequestDTO.d.ts +4 -0
  52. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupListApiRequestDTO.js +14 -0
  53. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupListApiResponseDTO.d.ts +12 -0
  54. package/dist/Api/Addressbook/ContactGroups/dtos/ContactGroupListApiResponseDTO.js +14 -0
  55. package/dist/Api/Addressbook/ContactGroups/dtos/index.d.ts +6 -0
  56. package/dist/Api/Addressbook/ContactGroups/dtos/index.js +22 -0
  57. package/dist/Api/Addressbook/ContactGroups/helpers/MapApiResponse.d.ts +3 -0
  58. package/dist/Api/Addressbook/ContactGroups/helpers/MapApiResponse.js +24 -0
  59. package/dist/Api/Addressbook/ContactGroups/helpers/MapListApiResponse.d.ts +3 -0
  60. package/dist/Api/Addressbook/ContactGroups/helpers/MapListApiResponse.js +28 -0
  61. package/dist/Api/Addressbook/ContactGroups/helpers/index.d.ts +2 -0
  62. package/dist/Api/Addressbook/ContactGroups/helpers/index.js +18 -0
  63. package/dist/Api/Addressbook/ContactGroups/index.d.ts +11 -0
  64. package/dist/Api/Addressbook/ContactGroups/index.js +21 -0
  65. package/dist/Api/Addressbook/Contacts/ContactCreateApi.d.ts +17 -0
  66. package/dist/Api/Addressbook/Contacts/ContactCreateApi.js +76 -0
  67. package/dist/Api/Addressbook/Contacts/ContactDeleteApi.d.ts +17 -0
  68. package/dist/Api/Addressbook/Contacts/ContactDeleteApi.js +82 -0
  69. package/dist/Api/Addressbook/Contacts/ContactDetailApi.d.ts +17 -0
  70. package/dist/Api/Addressbook/Contacts/ContactDetailApi.js +78 -0
  71. package/dist/Api/Addressbook/Contacts/ContactListApi.d.ts +17 -0
  72. package/dist/Api/Addressbook/Contacts/ContactListApi.js +78 -0
  73. package/dist/Api/Addressbook/Contacts/ContactUpdateApi.d.ts +17 -0
  74. package/dist/Api/Addressbook/Contacts/ContactUpdateApi.js +81 -0
  75. package/dist/Api/Addressbook/Contacts/dtos/ContactApiRequestDTO.d.ts +7 -0
  76. package/dist/Api/Addressbook/Contacts/dtos/ContactApiRequestDTO.js +22 -0
  77. package/dist/Api/Addressbook/Contacts/dtos/ContactApiResponseDTO.d.ts +6 -0
  78. package/dist/Api/Addressbook/Contacts/dtos/ContactApiResponseDTO.js +14 -0
  79. package/dist/Api/Addressbook/Contacts/dtos/ContactListApiRequestDTO.d.ts +4 -0
  80. package/dist/Api/Addressbook/Contacts/dtos/ContactListApiRequestDTO.js +17 -0
  81. package/dist/Api/Addressbook/Contacts/dtos/ContactListApiResponseDTO.d.ts +10 -0
  82. package/dist/Api/Addressbook/Contacts/dtos/ContactListApiResponseDTO.js +19 -0
  83. package/dist/Api/Addressbook/Contacts/dtos/index.d.ts +4 -0
  84. package/dist/Api/Addressbook/Contacts/dtos/index.js +20 -0
  85. package/dist/Api/Addressbook/Contacts/helpers/MapApiResponse.d.ts +3 -0
  86. package/dist/Api/Addressbook/Contacts/helpers/MapApiResponse.js +20 -0
  87. package/dist/Api/Addressbook/Contacts/helpers/MapListApiResponse.d.ts +3 -0
  88. package/dist/Api/Addressbook/Contacts/helpers/MapListApiResponse.js +16 -0
  89. package/dist/Api/Addressbook/Contacts/helpers/index.d.ts +2 -0
  90. package/dist/Api/Addressbook/Contacts/helpers/index.js +18 -0
  91. package/dist/Api/Addressbook/Contacts/index.d.ts +12 -0
  92. package/dist/Api/Addressbook/Contacts/index.js +24 -0
  93. package/dist/Api/Addressbook/Contacts/models/ContactModel.d.ts +37 -0
  94. package/dist/Api/Addressbook/Contacts/models/ContactModel.js +11 -0
  95. package/dist/Api/Addressbook/Contacts/models/index.d.ts +1 -0
  96. package/dist/Api/Addressbook/Contacts/models/index.js +17 -0
  97. package/dist/Api/Addressbook/GroupContacts/GroupContactCreateApi.d.ts +14 -0
  98. package/dist/Api/Addressbook/GroupContacts/GroupContactCreateApi.js +84 -0
  99. package/dist/Api/Addressbook/GroupContacts/GroupContactDeleteApi.d.ts +14 -0
  100. package/dist/Api/Addressbook/GroupContacts/GroupContactDeleteApi.js +84 -0
  101. package/dist/Api/Addressbook/GroupContacts/GroupContactDetailApi.d.ts +14 -0
  102. package/dist/Api/Addressbook/GroupContacts/GroupContactDetailApi.js +84 -0
  103. package/dist/Api/Addressbook/GroupContacts/GroupContactListApi.d.ts +14 -0
  104. package/dist/Api/Addressbook/GroupContacts/GroupContactListApi.js +83 -0
  105. package/dist/Api/Addressbook/GroupContacts/dtos/BaseListApiRequestDTO.d.ts +7 -0
  106. package/dist/Api/Addressbook/GroupContacts/dtos/BaseListApiRequestDTO.js +7 -0
  107. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactApiRequestDTO.d.ts +7 -0
  108. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactApiRequestDTO.js +14 -0
  109. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactApiResponseDTO.d.ts +8 -0
  110. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactApiResponseDTO.js +14 -0
  111. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactBaseRequestDTO.d.ts +7 -0
  112. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactBaseRequestDTO.js +7 -0
  113. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactListApiRequestDTO.d.ts +4 -0
  114. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactListApiRequestDTO.js +14 -0
  115. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactListApiResponseDTO.d.ts +12 -0
  116. package/dist/Api/Addressbook/GroupContacts/dtos/GroupContactListApiResponseDTO.js +14 -0
  117. package/dist/Api/Addressbook/GroupContacts/dtos/index.d.ts +6 -0
  118. package/dist/Api/Addressbook/GroupContacts/dtos/index.js +22 -0
  119. package/dist/Api/Addressbook/GroupContacts/helpers/MapApiResponse.d.ts +3 -0
  120. package/dist/Api/Addressbook/GroupContacts/helpers/MapApiResponse.js +24 -0
  121. package/dist/Api/Addressbook/GroupContacts/helpers/MapListApiResponse.d.ts +3 -0
  122. package/dist/Api/Addressbook/GroupContacts/helpers/MapListApiResponse.js +28 -0
  123. package/dist/Api/Addressbook/GroupContacts/helpers/index.d.ts +2 -0
  124. package/dist/Api/Addressbook/GroupContacts/helpers/index.js +18 -0
  125. package/dist/Api/Addressbook/GroupContacts/index.d.ts +11 -0
  126. package/dist/Api/Addressbook/GroupContacts/index.js +21 -0
  127. package/dist/Api/Addressbook/Groups/GroupCreateApi.d.ts +17 -0
  128. package/dist/Api/Addressbook/Groups/GroupCreateApi.js +87 -0
  129. package/dist/Api/Addressbook/Groups/GroupDeleteApi.d.ts +17 -0
  130. package/dist/Api/Addressbook/Groups/GroupDeleteApi.js +78 -0
  131. package/dist/Api/Addressbook/Groups/GroupDetailApi.d.ts +17 -0
  132. package/dist/Api/Addressbook/Groups/GroupDetailApi.js +78 -0
  133. package/dist/Api/Addressbook/Groups/GroupListApi.d.ts +17 -0
  134. package/dist/Api/Addressbook/Groups/GroupListApi.js +78 -0
  135. package/dist/Api/Addressbook/Groups/GroupUpdateApi.d.ts +17 -0
  136. package/dist/Api/Addressbook/Groups/GroupUpdateApi.js +89 -0
  137. package/dist/Api/Addressbook/Groups/dtos/GroupApiRequestDTO.d.ts +5 -0
  138. package/dist/Api/Addressbook/Groups/dtos/GroupApiRequestDTO.js +22 -0
  139. package/dist/Api/Addressbook/Groups/dtos/GroupApiResponseDTO.d.ts +6 -0
  140. package/dist/Api/Addressbook/Groups/dtos/GroupApiResponseDTO.js +14 -0
  141. package/dist/Api/Addressbook/Groups/dtos/GroupListApiRequestDTO.d.ts +4 -0
  142. package/dist/Api/Addressbook/Groups/dtos/GroupListApiRequestDTO.js +14 -0
  143. package/dist/Api/Addressbook/Groups/dtos/GroupListApiResponseDTO.d.ts +10 -0
  144. package/dist/Api/Addressbook/Groups/dtos/GroupListApiResponseDTO.js +14 -0
  145. package/dist/Api/Addressbook/Groups/dtos/index.d.ts +4 -0
  146. package/dist/Api/Addressbook/Groups/dtos/index.js +20 -0
  147. package/dist/Api/Addressbook/Groups/helpers/MapApiResponse.d.ts +3 -0
  148. package/dist/Api/Addressbook/Groups/helpers/MapApiResponse.js +20 -0
  149. package/dist/Api/Addressbook/Groups/helpers/MapListApiResponse.d.ts +3 -0
  150. package/dist/Api/Addressbook/Groups/helpers/MapListApiResponse.js +24 -0
  151. package/dist/Api/Addressbook/Groups/helpers/index.d.ts +2 -0
  152. package/dist/Api/Addressbook/Groups/helpers/index.js +18 -0
  153. package/dist/Api/Addressbook/Groups/index.d.ts +12 -0
  154. package/dist/Api/Addressbook/Groups/index.js +24 -0
  155. package/dist/Api/Addressbook/Groups/models/GroupModel.d.ts +14 -0
  156. package/dist/Api/Addressbook/Groups/models/GroupModel.js +17 -0
  157. package/dist/Api/Addressbook/Groups/models/index.d.ts +1 -0
  158. package/dist/Api/Addressbook/Groups/models/index.js +17 -0
  159. package/dist/Api/Addressbook/index.d.ts +12 -0
  160. package/dist/Api/Addressbook/index.js +17 -0
  161. package/dist/Api/Addressbook/interfaces/IContactArgs.d.ts +45 -0
  162. package/dist/Api/Addressbook/interfaces/IContactArgs.js +2 -0
  163. package/dist/Api/Addressbook/interfaces/IContactGroupArgs.d.ts +15 -0
  164. package/dist/Api/Addressbook/interfaces/IContactGroupArgs.js +2 -0
  165. package/dist/Api/Addressbook/interfaces/IGroupArgs.d.ts +24 -0
  166. package/dist/Api/Addressbook/interfaces/IGroupArgs.js +2 -0
  167. package/dist/Api/Addressbook/interfaces/IGroupContactArgs.d.ts +16 -0
  168. package/dist/Api/Addressbook/interfaces/IGroupContactArgs.js +2 -0
  169. package/dist/Api/Addressbook/interfaces/index.d.ts +4 -0
  170. package/dist/Api/Addressbook/interfaces/index.js +20 -0
  171. package/dist/Api/Messaging/BaseMessagingApi.d.ts +28 -0
  172. package/dist/Api/Messaging/BaseMessagingApi.js +152 -0
  173. package/dist/Api/Messaging/EmailApi.d.ts +21 -0
  174. package/dist/Api/Messaging/EmailApi.js +47 -0
  175. package/dist/Api/Messaging/FaxApi.d.ts +18 -0
  176. package/dist/Api/Messaging/FaxApi.js +47 -0
  177. package/dist/Api/Messaging/RCSApi.d.ts +21 -0
  178. package/dist/Api/Messaging/RCSApi.js +44 -0
  179. package/dist/Api/Messaging/SMSApi.d.ts +21 -0
  180. package/dist/Api/Messaging/SMSApi.js +44 -0
  181. package/dist/Api/Messaging/TTSApi.d.ts +22 -0
  182. package/dist/Api/Messaging/TTSApi.js +67 -0
  183. package/dist/Api/Messaging/VoiceApi.d.ts +24 -0
  184. package/dist/Api/Messaging/VoiceApi.js +95 -0
  185. package/dist/Api/Messaging/WhatsAppApi.d.ts +21 -0
  186. package/dist/Api/Messaging/WhatsAppApi.js +44 -0
  187. package/dist/Api/Messaging/WorkflowApi.d.ts +21 -0
  188. package/dist/Api/Messaging/WorkflowApi.js +41 -0
  189. package/dist/Api/Messaging/dtos/EmailApiRequestDTO.d.ts +13 -0
  190. package/dist/Api/Messaging/dtos/EmailApiRequestDTO.js +15 -0
  191. package/dist/Api/Messaging/dtos/FaxApiRequestDTO.d.ts +13 -0
  192. package/dist/Api/Messaging/dtos/FaxApiRequestDTO.js +15 -0
  193. package/dist/Api/Messaging/dtos/MessagingApiSuccessResponseDTO.d.ts +7 -0
  194. package/dist/Api/Messaging/dtos/MessagingApiSuccessResponseDTO.js +14 -0
  195. package/dist/Api/Messaging/dtos/MessagingBaseRequestDTO.d.ts +33 -0
  196. package/dist/Api/Messaging/dtos/MessagingBaseRequestDTO.js +9 -0
  197. package/dist/Api/Messaging/dtos/RCSApiRequestDTO.d.ts +9 -0
  198. package/dist/Api/Messaging/dtos/RCSApiRequestDTO.js +15 -0
  199. package/dist/Api/Messaging/dtos/SMSApiRequestDTO.d.ts +11 -0
  200. package/dist/Api/Messaging/dtos/SMSApiRequestDTO.js +16 -0
  201. package/dist/Api/Messaging/dtos/TTSApiRequestDTO.d.ts +20 -0
  202. package/dist/Api/Messaging/dtos/TTSApiRequestDTO.js +18 -0
  203. package/dist/Api/Messaging/dtos/VoiceApiRequestDTO.d.ts +20 -0
  204. package/dist/Api/Messaging/dtos/VoiceApiRequestDTO.js +36 -0
  205. package/dist/Api/Messaging/dtos/WhatsAppApiRequestDTO.d.ts +8 -0
  206. package/dist/Api/Messaging/dtos/WhatsAppApiRequestDTO.js +15 -0
  207. package/dist/Api/Messaging/dtos/WorkflowApiRequestDTO.d.ts +5 -0
  208. package/dist/Api/Messaging/dtos/WorkflowApiRequestDTO.js +14 -0
  209. package/dist/Api/Messaging/dtos/index.d.ts +10 -0
  210. package/dist/Api/Messaging/dtos/index.js +26 -0
  211. package/dist/Api/Messaging/helpers/AddRecipient.d.ts +3 -0
  212. package/dist/Api/Messaging/helpers/AddRecipient.js +19 -0
  213. package/dist/Api/Messaging/helpers/MapApiResponse.d.ts +3 -0
  214. package/dist/Api/Messaging/helpers/MapApiResponse.js +17 -0
  215. package/dist/Api/Messaging/helpers/index.d.ts +2 -0
  216. package/dist/Api/Messaging/helpers/index.js +18 -0
  217. package/dist/Api/Messaging/index.d.ts +20 -0
  218. package/dist/Api/Messaging/index.js +25 -0
  219. package/dist/Api/Messaging/interfaces/IEmailArgs.d.ts +50 -0
  220. package/dist/Api/Messaging/interfaces/IEmailArgs.js +2 -0
  221. package/dist/Api/Messaging/interfaces/IFaxArgs.d.ts +49 -0
  222. package/dist/Api/Messaging/interfaces/IFaxArgs.js +2 -0
  223. package/dist/Api/Messaging/interfaces/IMessagingDestination.d.ts +9 -0
  224. package/dist/Api/Messaging/interfaces/IMessagingDestination.js +2 -0
  225. package/dist/Api/Messaging/interfaces/IRCSArgs.d.ts +43 -0
  226. package/dist/Api/Messaging/interfaces/IRCSArgs.js +2 -0
  227. package/dist/Api/Messaging/interfaces/ISMSArgs.d.ts +48 -0
  228. package/dist/Api/Messaging/interfaces/ISMSArgs.js +2 -0
  229. package/dist/Api/Messaging/interfaces/ITTSArgs.d.ts +61 -0
  230. package/dist/Api/Messaging/interfaces/ITTSArgs.js +2 -0
  231. package/dist/Api/Messaging/interfaces/IVoiceArgs.d.ts +67 -0
  232. package/dist/Api/Messaging/interfaces/IVoiceArgs.js +2 -0
  233. package/dist/Api/Messaging/interfaces/IWhatsAppArgs.d.ts +44 -0
  234. package/dist/Api/Messaging/interfaces/IWhatsAppArgs.js +2 -0
  235. package/dist/Api/Messaging/interfaces/IWorkflowArgs.d.ts +41 -0
  236. package/dist/Api/Messaging/interfaces/IWorkflowArgs.js +2 -0
  237. package/dist/Api/Messaging/interfaces/index.d.ts +9 -0
  238. package/dist/Api/Messaging/interfaces/index.js +25 -0
  239. package/dist/Api/Messaging/models/CommonModel.d.ts +17 -0
  240. package/dist/Api/Messaging/models/CommonModel.js +6 -0
  241. package/dist/Api/Messaging/models/EmailModel.d.ts +20 -0
  242. package/dist/Api/Messaging/models/EmailModel.js +17 -0
  243. package/dist/Api/Messaging/models/FaxModel.d.ts +20 -0
  244. package/dist/Api/Messaging/models/FaxModel.js +17 -0
  245. package/dist/Api/Messaging/models/IMessagingModel.d.ts +6 -0
  246. package/dist/Api/Messaging/models/IMessagingModel.js +2 -0
  247. package/dist/Api/Messaging/models/RCSModel.d.ts +16 -0
  248. package/dist/Api/Messaging/models/RCSModel.js +17 -0
  249. package/dist/Api/Messaging/models/SMSModel.d.ts +18 -0
  250. package/dist/Api/Messaging/models/SMSModel.js +17 -0
  251. package/dist/Api/Messaging/models/TTSModel.d.ts +28 -0
  252. package/dist/Api/Messaging/models/TTSModel.js +22 -0
  253. package/dist/Api/Messaging/models/VoiceModel.d.ts +31 -0
  254. package/dist/Api/Messaging/models/VoiceModel.js +23 -0
  255. package/dist/Api/Messaging/models/WhatsAppModel.d.ts +15 -0
  256. package/dist/Api/Messaging/models/WhatsAppModel.js +17 -0
  257. package/dist/Api/Messaging/models/WorkflowModel.d.ts +14 -0
  258. package/dist/Api/Messaging/models/WorkflowModel.js +17 -0
  259. package/dist/Api/Messaging/models/index.d.ts +10 -0
  260. package/dist/Api/Messaging/models/index.js +26 -0
  261. package/dist/Api/OptOut/OptOutCreateApi.d.ts +17 -0
  262. package/dist/Api/OptOut/OptOutCreateApi.js +49 -0
  263. package/dist/Api/OptOut/OptOutDeleteApi.d.ts +17 -0
  264. package/dist/Api/OptOut/OptOutDeleteApi.js +47 -0
  265. package/dist/Api/OptOut/OptOutDetailApi.d.ts +17 -0
  266. package/dist/Api/OptOut/OptOutDetailApi.js +47 -0
  267. package/dist/Api/OptOut/OptOutListApi.d.ts +17 -0
  268. package/dist/Api/OptOut/OptOutListApi.js +62 -0
  269. package/dist/Api/OptOut/dtos/OptOutApiRequestDTO.d.ts +4 -0
  270. package/dist/Api/OptOut/dtos/OptOutApiRequestDTO.js +14 -0
  271. package/dist/Api/OptOut/dtos/OptOutApiResponseDTO.d.ts +20 -0
  272. package/dist/Api/OptOut/dtos/OptOutApiResponseDTO.js +14 -0
  273. package/dist/Api/OptOut/dtos/OptOutListApiRequestDTO.d.ts +8 -0
  274. package/dist/Api/OptOut/dtos/OptOutListApiRequestDTO.js +14 -0
  275. package/dist/Api/OptOut/dtos/OptOutListApiResponseDTO.d.ts +10 -0
  276. package/dist/Api/OptOut/dtos/OptOutListApiResponseDTO.js +17 -0
  277. package/dist/Api/OptOut/dtos/index.d.ts +4 -0
  278. package/dist/Api/OptOut/dtos/index.js +20 -0
  279. package/dist/Api/OptOut/index.d.ts +11 -0
  280. package/dist/Api/OptOut/index.js +21 -0
  281. package/dist/Api/OptOut/interfaces/IOptOutArgs.d.ts +22 -0
  282. package/dist/Api/OptOut/interfaces/IOptOutArgs.js +2 -0
  283. package/dist/Api/OptOut/interfaces/index.d.ts +1 -0
  284. package/dist/Api/OptOut/interfaces/index.js +17 -0
  285. package/dist/Api/OptOut/models/OptOutModel.d.ts +11 -0
  286. package/dist/Api/OptOut/models/OptOutModel.js +12 -0
  287. package/dist/Api/OptOut/models/index.d.ts +1 -0
  288. package/dist/Api/OptOut/models/index.js +17 -0
  289. package/dist/Api/Reports/SMSReceivedApi.d.ts +18 -0
  290. package/dist/Api/Reports/SMSReceivedApi.js +92 -0
  291. package/dist/Api/Reports/SMSReplyApi.d.ts +18 -0
  292. package/dist/Api/Reports/SMSReplyApi.js +62 -0
  293. package/dist/Api/Reports/StatusApi.d.ts +18 -0
  294. package/dist/Api/Reports/StatusApi.js +76 -0
  295. package/dist/Api/Reports/dtos/RecipientDTO.d.ts +24 -0
  296. package/dist/Api/Reports/dtos/RecipientDTO.js +12 -0
  297. package/dist/Api/Reports/dtos/SMSReceivedApiRequestDTO.d.ts +7 -0
  298. package/dist/Api/Reports/dtos/SMSReceivedApiRequestDTO.js +17 -0
  299. package/dist/Api/Reports/dtos/SMSReceivedApiResponseDTO.d.ts +6 -0
  300. package/dist/Api/Reports/dtos/SMSReceivedApiResponseDTO.js +15 -0
  301. package/dist/Api/Reports/dtos/SMSReceivedDTO.d.ts +14 -0
  302. package/dist/Api/Reports/dtos/SMSReceivedDTO.js +12 -0
  303. package/dist/Api/Reports/dtos/SMSReplyApiRequestDTO.d.ts +5 -0
  304. package/dist/Api/Reports/dtos/SMSReplyApiRequestDTO.js +14 -0
  305. package/dist/Api/Reports/dtos/SMSReplyApiResponseDTO.d.ts +23 -0
  306. package/dist/Api/Reports/dtos/SMSReplyApiResponseDTO.js +24 -0
  307. package/dist/Api/Reports/dtos/SMSReplyRecipientDTO.d.ts +6 -0
  308. package/dist/Api/Reports/dtos/SMSReplyRecipientDTO.js +19 -0
  309. package/dist/Api/Reports/dtos/SMSReplyRecipientSMSReplyDTO.d.ts +9 -0
  310. package/dist/Api/Reports/dtos/SMSReplyRecipientSMSReplyDTO.js +12 -0
  311. package/dist/Api/Reports/dtos/StatusApiRequestDTO.d.ts +6 -0
  312. package/dist/Api/Reports/dtos/StatusApiRequestDTO.js +14 -0
  313. package/dist/Api/Reports/dtos/StatusApiResponseDTO.d.ts +27 -0
  314. package/dist/Api/Reports/dtos/StatusApiResponseDTO.js +15 -0
  315. package/dist/Api/Reports/dtos/index.d.ts +10 -0
  316. package/dist/Api/Reports/dtos/index.js +26 -0
  317. package/dist/Api/Reports/index.d.ts +10 -0
  318. package/dist/Api/Reports/index.js +15 -0
  319. package/dist/Api/Reports/interfaces/IReportsArgs.d.ts +18 -0
  320. package/dist/Api/Reports/interfaces/IReportsArgs.js +2 -0
  321. package/dist/Api/Reports/interfaces/index.d.ts +1 -0
  322. package/dist/Api/Reports/interfaces/index.js +17 -0
  323. package/dist/Common/IHttpClient.d.ts +6 -0
  324. package/dist/Common/IHttpClient.js +2 -0
  325. package/dist/Common/NodeHttpClient.d.ts +10 -0
  326. package/dist/Common/NodeHttpClient.js +24 -0
  327. package/dist/Common/Result.d.ts +6 -0
  328. package/dist/Common/Result.js +13 -0
  329. package/dist/Common/ValidationResult.d.ts +4 -0
  330. package/dist/Common/ValidationResult.js +2 -0
  331. package/dist/Common/dtos/CommonApiRequestDTO.d.ts +3 -0
  332. package/dist/Common/dtos/CommonApiRequestDTO.js +7 -0
  333. package/dist/Common/dtos/CommonApiResponseDTO.d.ts +4 -0
  334. package/dist/Common/dtos/CommonApiResponseDTO.js +10 -0
  335. package/dist/Common/dtos/CommonListApiRequestDTO.d.ts +6 -0
  336. package/dist/Common/dtos/CommonListApiRequestDTO.js +12 -0
  337. package/dist/Common/dtos/CommonListApiResponseDTO.d.ts +8 -0
  338. package/dist/Common/dtos/CommonListApiResponseDTO.js +14 -0
  339. package/dist/Common/dtos/ErrorResponseDTO.d.ts +6 -0
  340. package/dist/Common/dtos/ErrorResponseDTO.js +15 -0
  341. package/dist/Common/dtos/index.d.ts +5 -0
  342. package/dist/Common/dtos/index.js +21 -0
  343. package/dist/Common/enums/MessagingEnums.d.ts +45 -0
  344. package/dist/Common/enums/MessagingEnums.js +56 -0
  345. package/dist/Common/index.d.ts +7 -0
  346. package/dist/Common/index.js +23 -0
  347. package/dist/Common/isSuccessResult.d.ts +1 -0
  348. package/dist/Common/isSuccessResult.js +9 -0
  349. package/dist/Functions/FileHandler.d.ts +6 -0
  350. package/dist/Functions/FileHandler.js +57 -0
  351. package/dist/Functions/HttpRequest.d.ts +10 -0
  352. package/dist/Functions/HttpRequest.js +156 -0
  353. package/dist/Functions/Mapper.d.ts +1 -0
  354. package/dist/Functions/Mapper.js +23 -0
  355. package/dist/Functions/UsefulStuff.d.ts +20 -0
  356. package/dist/Functions/UsefulStuff.js +136 -0
  357. package/dist/Functions/index.d.ts +5 -0
  358. package/dist/Functions/index.js +48 -0
  359. package/dist/index.d.ts +17 -0
  360. package/dist/index.js +43 -0
  361. package/dist/interfaces.d.ts +4 -0
  362. package/dist/interfaces.js +2 -0
  363. package/package.json +47 -0
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./IContactArgs"), exports);
18
+ __exportStar(require("./IGroupArgs"), exports);
19
+ __exportStar(require("./IContactGroupArgs"), exports);
20
+ __exportStar(require("./IGroupContactArgs"), exports);
@@ -0,0 +1,28 @@
1
+ import { IMessagingModel } from './models';
2
+ import { MessagingApiSuccessResponseDTO, MessagingBaseRequestDTO } from './dtos';
3
+ import { ErrorResponseDTO } from "../../Common/dtos";
4
+ import { IHttpClient } from "../../Common/IHttpClient";
5
+ import { ValidationResult } from "../../Common/ValidationResult";
6
+ import { IAddRecipientArg } from "./helpers/AddRecipient";
7
+ export declare abstract class BaseMessagingApi<T extends IMessagingModel> {
8
+ protected readonly baseUrl: string;
9
+ protected readonly authToken: string;
10
+ protected readonly httpClient: IHttpClient;
11
+ protected abstract entity: T;
12
+ protected abstract readonly apiEndpoint: string;
13
+ constructor(baseUrl: string, authToken: string, httpClient?: IHttpClient);
14
+ protected abstract createEntity(): T;
15
+ protected abstract validate(entity: T): ValidationResult;
16
+ protected abstract createRequestDTO(entity: T): MessagingBaseRequestDTO;
17
+ /**
18
+ * Single-destination shorthand fields this channel accepts, as [inputFieldName, destinationKey]
19
+ * pairs. Override in subclasses; default is none. See resolveSingleDestinations().
20
+ */
21
+ protected singleDestinationFields(): Array<[string, string]>;
22
+ private resolveSingleDestinations;
23
+ SendMessage(args?: any): Promise<MessagingApiSuccessResponseDTO | ErrorResponseDTO>;
24
+ protected processAttachments(entity: T): Promise<void>;
25
+ protected baseValidate(entity: T): ValidationResult;
26
+ AddRecipient(recipient: IAddRecipientArg<T['Destinations'][number]>): this;
27
+ AddAttachment(attachment: string): this;
28
+ }
@@ -0,0 +1,152 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.BaseMessagingApi = void 0;
37
+ const Functions_1 = require("../../Functions");
38
+ const helpers = __importStar(require("./helpers"));
39
+ const NodeHttpClient_1 = require("../../Common/NodeHttpClient");
40
+ class BaseMessagingApi {
41
+ constructor(baseUrl, authToken, httpClient = new NodeHttpClient_1.NodeHttpClient(authToken)) {
42
+ this.baseUrl = baseUrl;
43
+ this.authToken = authToken;
44
+ this.httpClient = httpClient;
45
+ }
46
+ /**
47
+ * Single-destination shorthand fields this channel accepts, as [inputFieldName, destinationKey]
48
+ * pairs. Override in subclasses; default is none. See resolveSingleDestinations().
49
+ */
50
+ singleDestinationFields() {
51
+ return [];
52
+ }
53
+ resolveSingleDestinations(entity) {
54
+ for (const [field, destinationKey] of this.singleDestinationFields()) {
55
+ const raw = entity[field];
56
+ if (typeof raw === 'string' && !Functions_1.UsefulStuff.isEmpty(raw)) {
57
+ for (const value of raw.split(',').map(v => v.trim()).filter(v => v.length > 0)) {
58
+ entity.Destinations.push({ [destinationKey]: value });
59
+ }
60
+ }
61
+ // Clear unconditionally so this transient field can never leak into the
62
+ // outbound request DTO — Map() copies any own property of `entity`, not just
63
+ // ones the target DTO class declares (see Functions/Mapper.ts).
64
+ entity[field] = undefined;
65
+ }
66
+ }
67
+ async SendMessage(args) {
68
+ if (args) {
69
+ (0, Functions_1.Map)(this.entity, args);
70
+ }
71
+ const currentEntity = this.entity;
72
+ this.entity = this.createEntity(); // Reset state for next call
73
+ this.resolveSingleDestinations(currentEntity);
74
+ const validation = this.validate(currentEntity);
75
+ if (!validation.valid) {
76
+ return helpers.MapApiResponse({
77
+ "Result": "Error",
78
+ "ErrorMessage": [validation.error || "An error occurred while processing."]
79
+ });
80
+ }
81
+ try {
82
+ await this.processAttachments(currentEntity);
83
+ }
84
+ catch (err) {
85
+ return helpers.MapApiResponse({
86
+ "Result": "Error",
87
+ "ErrorMessage": [`Failed to process attachments: ${err?.message ?? err}`]
88
+ });
89
+ }
90
+ const responseData = await this.httpClient.post(`${this.baseUrl}${this.apiEndpoint}`, this.createRequestDTO(currentEntity));
91
+ return helpers.MapApiResponse(responseData);
92
+ }
93
+ async processAttachments(entity) {
94
+ if (!Functions_1.UsefulStuff.isEmpty(entity.Attachments)) {
95
+ const files = await Promise.all(entity.Attachments.map(async (attachment) => {
96
+ const baseName = Functions_1.FileHandler.getBaseName(attachment);
97
+ const fileData = await Functions_1.FileHandler.getFileData(attachment);
98
+ return {
99
+ Name: baseName,
100
+ Data: fileData
101
+ };
102
+ }));
103
+ entity.Files.push(...files);
104
+ }
105
+ }
106
+ baseValidate(entity) {
107
+ if (Functions_1.UsefulStuff.isEmpty(this.authToken)) {
108
+ return { valid: false, error: "Missing AuthToken" };
109
+ }
110
+ if (!Functions_1.UsefulStuff.isEmpty(entity.WebhookCallbackURL)) {
111
+ const validFormats = ["JSON", "XML", "POST", "GET"];
112
+ if (Functions_1.UsefulStuff.isEmpty(entity.WebhookCallbackFormat) ||
113
+ !validFormats.includes(entity.WebhookCallbackFormat?.toUpperCase() ?? "")) {
114
+ return { valid: false, error: "Missing or invalid WebhookCallbackFormat - JSON, XML, POST or GET" };
115
+ }
116
+ }
117
+ if (!Functions_1.UsefulStuff.isEmpty(entity.SendTime) && !Functions_1.UsefulStuff.isDateTime(entity.SendTime)) {
118
+ return { valid: false, error: "Unable to parse SendTime. Use YYYY-MM-DD hh:mm format." };
119
+ }
120
+ if (Functions_1.UsefulStuff.isEmpty(entity.Destinations)) {
121
+ return { valid: false, error: "Empty Destination(s)" };
122
+ }
123
+ if (!Functions_1.UsefulStuff.isEmpty(entity.Files)) {
124
+ for (let i = 0; i < entity.Files.length; i++) {
125
+ if (Functions_1.UsefulStuff.isEmpty(entity.Files[i].Name)) {
126
+ return { valid: false, error: "Could not find attachment file name." };
127
+ }
128
+ if (Functions_1.UsefulStuff.isEmpty(entity.Files[i].Data)) {
129
+ return { valid: false, error: `Could not parse attachment file data ${entity.Files[i].Name}` };
130
+ }
131
+ }
132
+ }
133
+ if (!Functions_1.UsefulStuff.isEmpty(entity.Mode) && entity.Mode?.toUpperCase() !== "TEST") {
134
+ return { valid: false, error: "Only Mode=Test is allowed" };
135
+ }
136
+ return { valid: true };
137
+ }
138
+ AddRecipient(recipient) {
139
+ const targets = helpers.AddRecipient(recipient);
140
+ if (!Functions_1.UsefulStuff.isEmpty(targets)) {
141
+ this.entity.Destinations.push(...targets);
142
+ }
143
+ return this;
144
+ }
145
+ AddAttachment(attachment) {
146
+ if (Functions_1.FileHandler.fileExists(attachment)) {
147
+ this.entity.Attachments.push(attachment);
148
+ }
149
+ return this;
150
+ }
151
+ }
152
+ exports.BaseMessagingApi = BaseMessagingApi;
@@ -0,0 +1,21 @@
1
+ import { EmailModel } from './models';
2
+ import { MessagingApiSuccessResponseDTO, MessagingBaseRequestDTO } from './dtos';
3
+ import { BaseMessagingApi } from './BaseMessagingApi';
4
+ import { IHttpClient } from '../../Common/IHttpClient';
5
+ import { ErrorResponseDTO } from '../../Common/dtos';
6
+ import { ValidationResult } from '../../Common/ValidationResult';
7
+ import { IEmailArgs } from './interfaces';
8
+ export declare class EmailApi extends BaseMessagingApi<EmailModel> {
9
+ protected entity: EmailModel;
10
+ protected readonly apiEndpoint = "/email";
11
+ constructor(args: {
12
+ URL: string;
13
+ AuthToken?: string;
14
+ httpClient?: IHttpClient;
15
+ });
16
+ protected createEntity(): EmailModel;
17
+ protected singleDestinationFields(): Array<[string, string]>;
18
+ SendMessage(args?: IEmailArgs): Promise<MessagingApiSuccessResponseDTO | ErrorResponseDTO>;
19
+ protected validate(entity: EmailModel): ValidationResult;
20
+ protected createRequestDTO(entity: EmailModel): MessagingBaseRequestDTO;
21
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EmailApi = void 0;
4
+ const Functions_1 = require("../../Functions");
5
+ const models_1 = require("./models");
6
+ const dtos_1 = require("./dtos");
7
+ const BaseMessagingApi_1 = require("./BaseMessagingApi");
8
+ class EmailApi extends BaseMessagingApi_1.BaseMessagingApi {
9
+ constructor(args) {
10
+ super(args.URL, args.AuthToken || "", args.httpClient);
11
+ this.apiEndpoint = "/email";
12
+ this.entity = new models_1.EmailModel(args);
13
+ }
14
+ createEntity() {
15
+ return new models_1.EmailModel();
16
+ }
17
+ singleDestinationFields() {
18
+ return [['EmailAddress', 'EmailAddress'], ['GroupID', 'GroupID'], ['ContactID', 'ContactID']];
19
+ }
20
+ async SendMessage(args) {
21
+ return super.SendMessage(args);
22
+ }
23
+ validate(entity) {
24
+ const baseValidation = this.baseValidate(entity);
25
+ if (!baseValidation.valid) {
26
+ return baseValidation;
27
+ }
28
+ if (Functions_1.UsefulStuff.isEmpty(entity.EmailSubject)) {
29
+ return { valid: false, error: "Missing EmailSubject" };
30
+ }
31
+ if (Functions_1.UsefulStuff.isEmpty(entity.MessagePlain) && Functions_1.UsefulStuff.isEmpty(entity.MessageHTML) && Functions_1.UsefulStuff.isEmpty(entity.TemplateID)) {
32
+ return { valid: false, error: "Missing MessagePlain, MessageHTML or TemplateID" };
33
+ }
34
+ for (let i = 0; i < entity.Destinations.length; i++) {
35
+ const destination = entity.Destinations[i];
36
+ const address = destination.EmailAddress ?? destination.Recipient;
37
+ if (!Functions_1.UsefulStuff.isEmpty(address) && !Functions_1.UsefulStuff.isEmail(address)) {
38
+ return { valid: false, error: `Invalid EmailAddress - must be email address - ${address}` };
39
+ }
40
+ }
41
+ return { valid: true };
42
+ }
43
+ createRequestDTO(entity) {
44
+ return new dtos_1.EmailApiRequestDTO(entity);
45
+ }
46
+ }
47
+ exports.EmailApi = EmailApi;
@@ -0,0 +1,18 @@
1
+ import { FaxModel } from './models';
2
+ import { MessagingBaseRequestDTO } from './dtos';
3
+ import { BaseMessagingApi } from './BaseMessagingApi';
4
+ import { IHttpClient } from '../../Common/IHttpClient';
5
+ import { ValidationResult } from '../../Common/ValidationResult';
6
+ export declare class FaxApi extends BaseMessagingApi<FaxModel> {
7
+ protected entity: FaxModel;
8
+ protected readonly apiEndpoint = "/fax";
9
+ constructor(args: {
10
+ URL: string;
11
+ AuthToken?: string;
12
+ httpClient?: IHttpClient;
13
+ });
14
+ protected createEntity(): FaxModel;
15
+ protected singleDestinationFields(): Array<[string, string]>;
16
+ protected validate(entity: FaxModel): ValidationResult;
17
+ protected createRequestDTO(entity: FaxModel): MessagingBaseRequestDTO;
18
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FaxApi = void 0;
4
+ const Functions_1 = require("../../Functions");
5
+ const models_1 = require("./models");
6
+ const dtos_1 = require("./dtos");
7
+ const BaseMessagingApi_1 = require("./BaseMessagingApi");
8
+ class FaxApi extends BaseMessagingApi_1.BaseMessagingApi {
9
+ constructor(args) {
10
+ super(args.URL, args.AuthToken || "", args.httpClient);
11
+ this.apiEndpoint = "/fax";
12
+ this.entity = new models_1.FaxModel(args);
13
+ }
14
+ createEntity() {
15
+ return new models_1.FaxModel();
16
+ }
17
+ singleDestinationFields() {
18
+ return [['ToNumber', 'ToNumber'], ['GroupID', 'GroupID'], ['ContactID', 'ContactID']];
19
+ }
20
+ validate(entity) {
21
+ const baseValidation = this.baseValidate(entity);
22
+ if (!baseValidation.valid) {
23
+ return baseValidation;
24
+ }
25
+ if (Functions_1.UsefulStuff.isEmpty(entity.TemplateID) && Functions_1.UsefulStuff.isEmpty(entity.Files) && Functions_1.UsefulStuff.isEmpty(entity.Attachments)) {
26
+ return { valid: false, error: "Missing fax contents - TemplateID or File Attachments required" };
27
+ }
28
+ if (!Functions_1.UsefulStuff.isEmpty(entity.RetryAttempts) && !Functions_1.UsefulStuff.isNumber(entity.RetryAttempts)) {
29
+ return { valid: false, error: "RetryAttempts must be a number" };
30
+ }
31
+ if (!Functions_1.UsefulStuff.isEmpty(entity.RetryPeriod) && !Functions_1.UsefulStuff.isNumber(entity.RetryPeriod)) {
32
+ return { valid: false, error: "RetryPeriod must be a number" };
33
+ }
34
+ for (let i = 0; i < entity.Destinations.length; i++) {
35
+ const destination = entity.Destinations[i];
36
+ const number = destination.ToNumber ?? destination.Recipient;
37
+ if (!Functions_1.UsefulStuff.isEmpty(number) && !Functions_1.UsefulStuff.isPhoneNumber(number)) {
38
+ return { valid: false, error: `Invalid Recipient - must be phone number - ${number}` };
39
+ }
40
+ }
41
+ return { valid: true };
42
+ }
43
+ createRequestDTO(entity) {
44
+ return new dtos_1.FaxApiRequestDTO(entity);
45
+ }
46
+ }
47
+ exports.FaxApi = FaxApi;
@@ -0,0 +1,21 @@
1
+ import { RCSModel } from './models';
2
+ import { MessagingApiSuccessResponseDTO, MessagingBaseRequestDTO } from './dtos';
3
+ import { ErrorResponseDTO } from "../../Common/dtos";
4
+ import { IHttpClient } from "../../Common/IHttpClient";
5
+ import { ValidationResult } from "../../Common/ValidationResult";
6
+ import { BaseMessagingApi } from './BaseMessagingApi';
7
+ import { IRCSArgs } from './interfaces';
8
+ export declare class RCSApi extends BaseMessagingApi<RCSModel> {
9
+ protected entity: RCSModel;
10
+ protected readonly apiEndpoint = "/rcs";
11
+ constructor(args: {
12
+ URL: string;
13
+ AuthToken?: string;
14
+ httpClient?: IHttpClient;
15
+ });
16
+ SendMessage(args?: IRCSArgs): Promise<MessagingApiSuccessResponseDTO | ErrorResponseDTO>;
17
+ protected createEntity(): RCSModel;
18
+ protected singleDestinationFields(): Array<[string, string]>;
19
+ protected validate(entity: RCSModel): ValidationResult;
20
+ protected createRequestDTO(entity: RCSModel): MessagingBaseRequestDTO;
21
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RCSApi = void 0;
4
+ const Functions_1 = require("../../Functions");
5
+ const models_1 = require("./models");
6
+ const dtos_1 = require("./dtos");
7
+ const BaseMessagingApi_1 = require("./BaseMessagingApi");
8
+ class RCSApi extends BaseMessagingApi_1.BaseMessagingApi {
9
+ constructor(args) {
10
+ super(args.URL, args.AuthToken || "", args.httpClient);
11
+ this.apiEndpoint = "/rcs";
12
+ this.entity = new models_1.RCSModel();
13
+ }
14
+ async SendMessage(args) {
15
+ return super.SendMessage(args);
16
+ }
17
+ createEntity() {
18
+ return new models_1.RCSModel();
19
+ }
20
+ singleDestinationFields() {
21
+ return [['ToNumber', 'ToNumber'], ['GroupID', 'GroupID'], ['ContactID', 'ContactID']];
22
+ }
23
+ validate(entity) {
24
+ const base = this.baseValidate(entity);
25
+ if (!base.valid)
26
+ return base;
27
+ if (Functions_1.UsefulStuff.isEmpty(entity.Message) && Functions_1.UsefulStuff.isEmpty(entity.TemplateID)) {
28
+ return { valid: false, error: "Missing Message or TemplateID" };
29
+ }
30
+ for (const destination of entity.Destinations) {
31
+ if (!destination)
32
+ continue;
33
+ const number = destination.ToNumber || destination.Recipient;
34
+ if (!Functions_1.UsefulStuff.isEmpty(number) && !Functions_1.UsefulStuff.isPhoneNumber(number)) {
35
+ return { valid: false, error: `Invalid ToNumber - must be phone number - ${number}` };
36
+ }
37
+ }
38
+ return { valid: true };
39
+ }
40
+ createRequestDTO(entity) {
41
+ return new dtos_1.RCSApiRequestDTO(entity);
42
+ }
43
+ }
44
+ exports.RCSApi = RCSApi;
@@ -0,0 +1,21 @@
1
+ import { SMSModel } from './models';
2
+ import { MessagingApiSuccessResponseDTO, MessagingBaseRequestDTO } from './dtos';
3
+ import { BaseMessagingApi } from './BaseMessagingApi';
4
+ import { IHttpClient } from '../../Common/IHttpClient';
5
+ import { ErrorResponseDTO } from '../../Common/dtos';
6
+ import { ValidationResult } from '../../Common/ValidationResult';
7
+ import { ISMSArgs } from './interfaces';
8
+ export declare class SMSApi extends BaseMessagingApi<SMSModel> {
9
+ protected entity: SMSModel;
10
+ protected readonly apiEndpoint = "/sms";
11
+ constructor(args: {
12
+ URL: string;
13
+ AuthToken?: string;
14
+ httpClient?: IHttpClient;
15
+ });
16
+ protected createEntity(): SMSModel;
17
+ protected singleDestinationFields(): Array<[string, string]>;
18
+ SendMessage(args?: ISMSArgs): Promise<MessagingApiSuccessResponseDTO | ErrorResponseDTO>;
19
+ protected validate(entity: SMSModel): ValidationResult;
20
+ protected createRequestDTO(entity: SMSModel): MessagingBaseRequestDTO;
21
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SMSApi = void 0;
4
+ const Functions_1 = require("../../Functions");
5
+ const models_1 = require("./models");
6
+ const dtos_1 = require("./dtos");
7
+ const BaseMessagingApi_1 = require("./BaseMessagingApi");
8
+ class SMSApi extends BaseMessagingApi_1.BaseMessagingApi {
9
+ constructor(args) {
10
+ super(args.URL, args.AuthToken || "", args.httpClient);
11
+ this.apiEndpoint = "/sms";
12
+ this.entity = new models_1.SMSModel(args);
13
+ }
14
+ createEntity() {
15
+ return new models_1.SMSModel();
16
+ }
17
+ singleDestinationFields() {
18
+ return [['ToNumber', 'ToNumber'], ['GroupID', 'GroupID'], ['ContactID', 'ContactID']];
19
+ }
20
+ async SendMessage(args) {
21
+ return super.SendMessage(args);
22
+ }
23
+ validate(entity) {
24
+ const baseValidation = this.baseValidate(entity);
25
+ if (!baseValidation.valid) {
26
+ return baseValidation;
27
+ }
28
+ if (Functions_1.UsefulStuff.isEmpty(entity.Message) && Functions_1.UsefulStuff.isEmpty(entity.TemplateID)) {
29
+ return { valid: false, error: "Missing Message or TemplateID" };
30
+ }
31
+ for (let i = 0; i < entity.Destinations.length; i++) {
32
+ const destination = entity.Destinations[i];
33
+ const number = destination.ToNumber ?? destination.Recipient;
34
+ if (!Functions_1.UsefulStuff.isEmpty(number) && !Functions_1.UsefulStuff.isMobileNumber(number)) {
35
+ return { valid: false, error: `Invalid ToNumber - must be mobile number - ${number}` };
36
+ }
37
+ }
38
+ return { valid: true };
39
+ }
40
+ createRequestDTO(entity) {
41
+ return new dtos_1.SMSApiRequestDTO(entity);
42
+ }
43
+ }
44
+ exports.SMSApi = SMSApi;
@@ -0,0 +1,22 @@
1
+ import { TTSModel } from './models';
2
+ import { MessagingApiSuccessResponseDTO, MessagingBaseRequestDTO } from './dtos';
3
+ import { ErrorResponseDTO } from "../../Common/dtos";
4
+ import { IHttpClient } from "../../Common/IHttpClient";
5
+ import { ValidationResult } from "../../Common/ValidationResult";
6
+ import { BaseMessagingApi } from './BaseMessagingApi';
7
+ import { ITTSArgs } from './interfaces';
8
+ export declare class TTSApi extends BaseMessagingApi<TTSModel> {
9
+ protected entity: TTSModel;
10
+ protected readonly apiEndpoint = "/tts";
11
+ constructor(args: {
12
+ URL: string;
13
+ AuthToken?: string;
14
+ httpClient?: IHttpClient;
15
+ });
16
+ SendMessage(args?: ITTSArgs): Promise<MessagingApiSuccessResponseDTO | ErrorResponseDTO>;
17
+ protected createEntity(): TTSModel;
18
+ protected singleDestinationFields(): Array<[string, string]>;
19
+ protected validate(entity: TTSModel): ValidationResult;
20
+ protected createRequestDTO(entity: TTSModel): MessagingBaseRequestDTO;
21
+ AddKeypad(tone: number, routeNumber: string, play?: string, playSection?: string): this;
22
+ }
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TTSApi = void 0;
4
+ const Functions_1 = require("../../Functions");
5
+ const models_1 = require("./models");
6
+ const dtos_1 = require("./dtos");
7
+ const BaseMessagingApi_1 = require("./BaseMessagingApi");
8
+ class TTSApi extends BaseMessagingApi_1.BaseMessagingApi {
9
+ constructor(args) {
10
+ super(args.URL, args.AuthToken || "", args.httpClient);
11
+ this.apiEndpoint = "/tts";
12
+ this.entity = new models_1.TTSModel(args);
13
+ }
14
+ async SendMessage(args) {
15
+ return super.SendMessage(args);
16
+ }
17
+ createEntity() {
18
+ return new models_1.TTSModel();
19
+ }
20
+ singleDestinationFields() {
21
+ return [['ToNumber', 'MainPhone'], ['GroupID', 'GroupID'], ['ContactID', 'ContactID']];
22
+ }
23
+ validate(entity) {
24
+ const base = this.baseValidate(entity);
25
+ if (!base.valid)
26
+ return base;
27
+ if (Functions_1.UsefulStuff.isEmpty(entity.MessageToPeople) && Functions_1.UsefulStuff.isEmpty(entity.TemplateID)) {
28
+ return { valid: false, error: "Missing MessageToPeople or TemplateID" };
29
+ }
30
+ if (!Functions_1.UsefulStuff.isEmpty(entity.RetryAttempts) && !Functions_1.UsefulStuff.isNumber(entity.RetryAttempts)) {
31
+ return { valid: false, error: "RetryAttempts must be a number" };
32
+ }
33
+ if (!Functions_1.UsefulStuff.isEmpty(entity.RetryPeriod) && !Functions_1.UsefulStuff.isNumber(entity.RetryPeriod)) {
34
+ return { valid: false, error: "RetryPeriod must be a number" };
35
+ }
36
+ if (!Functions_1.UsefulStuff.isEmpty(entity.NumberOfOperators) && !Functions_1.UsefulStuff.isNumber(entity.NumberOfOperators)) {
37
+ return { valid: false, error: "NumberOfOperators must be a number" };
38
+ }
39
+ for (const destination of entity.Destinations) {
40
+ const phone = destination.MainPhone ?? destination.Recipient;
41
+ if (!Functions_1.UsefulStuff.isEmpty(phone) && !Functions_1.UsefulStuff.isPhoneNumber(phone)) {
42
+ return { valid: false, error: `Invalid Recipient - must be phone number - ${phone}` };
43
+ }
44
+ }
45
+ if (!Functions_1.UsefulStuff.isEmpty(entity.Keypads)) {
46
+ for (const keypad of entity.Keypads) {
47
+ if (Functions_1.UsefulStuff.isEmpty(keypad.RouteNumber) && Functions_1.UsefulStuff.isEmpty(keypad.Play) && Functions_1.UsefulStuff.isEmpty(keypad.PlaySection)) {
48
+ return { valid: false, error: `Empty Keypad ${keypad.Tone} Data: Please specify RouteNumber OR Play OR PlaySection` };
49
+ }
50
+ }
51
+ }
52
+ return { valid: true };
53
+ }
54
+ createRequestDTO(entity) {
55
+ return new dtos_1.TTSApiRequestDTO(entity);
56
+ }
57
+ AddKeypad(tone, routeNumber, play = "", playSection = "") {
58
+ this.entity.Keypads.push({
59
+ "Tone": tone,
60
+ "RouteNumber": routeNumber,
61
+ "Play": play,
62
+ "PlaySection": playSection
63
+ });
64
+ return this;
65
+ }
66
+ }
67
+ exports.TTSApi = TTSApi;
@@ -0,0 +1,24 @@
1
+ import { VoiceModel } from './models';
2
+ import { MessagingApiSuccessResponseDTO, MessagingBaseRequestDTO } from './dtos';
3
+ import { ErrorResponseDTO } from "../../Common/dtos";
4
+ import { IHttpClient } from "../../Common/IHttpClient";
5
+ import { ValidationResult } from "../../Common/ValidationResult";
6
+ import { BaseMessagingApi } from './BaseMessagingApi';
7
+ import { IVoiceArgs } from './interfaces';
8
+ export declare class VoiceApi extends BaseMessagingApi<VoiceModel> {
9
+ protected entity: VoiceModel;
10
+ protected readonly apiEndpoint = "/voice";
11
+ constructor(args: {
12
+ URL: string;
13
+ AuthToken?: string;
14
+ httpClient?: IHttpClient;
15
+ });
16
+ SendMessage(args?: IVoiceArgs): Promise<MessagingApiSuccessResponseDTO | ErrorResponseDTO>;
17
+ protected createEntity(): VoiceModel;
18
+ protected singleDestinationFields(): Array<[string, string]>;
19
+ protected validate(entity: VoiceModel): ValidationResult;
20
+ protected processAttachments(entity: VoiceModel): Promise<void>;
21
+ protected createRequestDTO(entity: VoiceModel): MessagingBaseRequestDTO;
22
+ AddVoiceFile(field: string, file: string): this;
23
+ AddKeypad(tone: number, routeNumber: string, play_file?: string, playSection?: string): this;
24
+ }