@trycourier/courier 6.3.1 → 6.4.1

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 (425) hide show
  1. package/Client.d.ts +49 -108
  2. package/Client.js +89 -148
  3. package/README.md +113 -808
  4. package/api/client/requests/SendMessageRequest.d.ts +8 -76
  5. package/api/resources/audiences/client/Client.d.ts +26 -21
  6. package/api/resources/audiences/client/Client.js +97 -90
  7. package/api/resources/audiences/client/requests/AudienceMembersListParams.d.ts +1 -3
  8. package/api/resources/audiences/client/requests/AudienceUpdateParams.d.ts +3 -7
  9. package/api/resources/audiences/client/requests/AudiencesListParams.d.ts +1 -3
  10. package/api/resources/audiences/types/ComparisonOperator.d.ts +1 -1
  11. package/api/resources/audiences/types/Filter.d.ts +1 -1
  12. package/api/resources/audiences/types/FilterConfig.d.ts +1 -1
  13. package/api/resources/audiences/types/LogicalOperator.d.ts +1 -1
  14. package/api/resources/audiences/types/Operator.d.ts +1 -1
  15. package/api/resources/auditEvents/client/Client.d.ts +14 -6
  16. package/api/resources/auditEvents/client/Client.js +48 -38
  17. package/api/resources/auditEvents/client/requests/ListAuditEventsRequest.d.ts +1 -3
  18. package/api/resources/authTokens/client/Client.d.ts +13 -4
  19. package/api/resources/authTokens/client/Client.js +35 -26
  20. package/api/resources/authTokens/client/requests/IssueTokenParams.d.ts +2 -2
  21. package/api/resources/automations/client/Client.d.ts +19 -15
  22. package/api/resources/automations/client/Client.js +52 -50
  23. package/api/resources/automations/types/AutomationAddToBatchMaxItemsType.d.ts +1 -1
  24. package/api/resources/automations/types/AutomationAddToBatchRetainType.d.ts +1 -1
  25. package/api/resources/automations/types/AutomationAddToBatchScope.d.ts +1 -1
  26. package/api/resources/automations/types/AutomationFetchDataWebhookMethod.d.ts +1 -1
  27. package/api/resources/automations/types/AutomationStepOption.d.ts +1 -1
  28. package/api/resources/automations/types/AutomationThrottleScope.d.ts +1 -1
  29. package/api/resources/automations/types/MergeAlgorithm.d.ts +1 -1
  30. package/api/resources/automations/types/Profile.d.ts +1 -1
  31. package/api/resources/brands/client/Client.d.ts +32 -63
  32. package/api/resources/brands/client/Client.js +103 -134
  33. package/api/resources/brands/client/requests/BrandUpdateParameters.d.ts +3 -26
  34. package/api/resources/brands/client/requests/ListBrandsRequest.d.ts +1 -3
  35. package/api/resources/bulk/client/Client.d.ts +40 -126
  36. package/api/resources/bulk/client/Client.js +111 -201
  37. package/api/resources/bulk/client/requests/BulkCreateJobParams.d.ts +6 -86
  38. package/api/resources/bulk/client/requests/BulkGetUsersParams.d.ts +1 -3
  39. package/api/resources/bulk/types/BulkJobStatus.d.ts +1 -1
  40. package/api/resources/bulk/types/BulkJobUserStatus.d.ts +1 -1
  41. package/api/resources/bulk/types/InboundBulkMessageV2.d.ts +3 -5
  42. package/api/resources/commons/errors/AlreadyExistsError.d.ts +2 -1
  43. package/api/resources/commons/errors/AlreadyExistsError.js +19 -8
  44. package/api/resources/commons/errors/BadRequestError.d.ts +2 -1
  45. package/api/resources/commons/errors/BadRequestError.js +19 -8
  46. package/api/resources/commons/errors/ConflictError.d.ts +2 -1
  47. package/api/resources/commons/errors/ConflictError.js +19 -8
  48. package/api/resources/commons/errors/MessageNotFoundError.d.ts +2 -1
  49. package/api/resources/commons/errors/MessageNotFoundError.js +19 -8
  50. package/api/resources/commons/errors/NotFoundError.d.ts +2 -1
  51. package/api/resources/commons/errors/NotFoundError.js +19 -8
  52. package/api/resources/commons/errors/PaymentRequiredError.d.ts +2 -1
  53. package/api/resources/commons/errors/PaymentRequiredError.js +19 -8
  54. package/api/resources/commons/types/ChannelClassification.d.ts +1 -1
  55. package/api/resources/commons/types/NotificationPreferences.d.ts +1 -1
  56. package/api/resources/commons/types/PreferenceStatus.d.ts +1 -1
  57. package/api/resources/inbound/client/Client.d.ts +11 -2
  58. package/api/resources/inbound/client/Client.js +35 -24
  59. package/api/resources/index.js +17 -7
  60. package/api/resources/lists/client/Client.d.ts +51 -44
  61. package/api/resources/lists/client/Client.js +181 -174
  62. package/api/resources/lists/client/requests/AddSubscribersToList.d.ts +5 -5
  63. package/api/resources/lists/client/requests/GetAllListsRequest.d.ts +1 -4
  64. package/api/resources/lists/client/requests/GetSubscriptionForListRequest.d.ts +1 -3
  65. package/api/resources/lists/client/requests/SubscribeUserToListRequest.d.ts +1 -4
  66. package/api/resources/lists/client/requests/SubscribeUsersToListRequest.d.ts +5 -5
  67. package/api/resources/messages/client/Client.d.ts +26 -29
  68. package/api/resources/messages/client/Client.js +111 -114
  69. package/api/resources/messages/client/requests/GetMessageHistoryRequest.d.ts +1 -3
  70. package/api/resources/messages/client/requests/ListMessagesRequest.d.ts +1 -16
  71. package/api/resources/messages/types/MessageDetailsExtended.d.ts +7 -0
  72. package/api/resources/messages/types/MessageDetailsExtended.js +5 -0
  73. package/api/resources/messages/types/MessageStatus.d.ts +25 -5
  74. package/api/resources/messages/types/MessageStatus.js +6 -1
  75. package/api/resources/messages/types/Reason.d.ts +1 -1
  76. package/api/resources/messages/types/index.d.ts +1 -0
  77. package/api/resources/messages/types/index.js +1 -0
  78. package/api/resources/notifications/client/Client.d.ts +32 -17
  79. package/api/resources/notifications/client/Client.js +119 -93
  80. package/api/resources/notifications/client/requests/NotificationListParams.d.ts +1 -4
  81. package/api/resources/notifications/client/requests/SubmissionChecksReplaceParams.d.ts +6 -2
  82. package/api/resources/notifications/types/BlockType.d.ts +1 -1
  83. package/api/resources/notifications/types/CheckStatus.d.ts +1 -1
  84. package/api/resources/notifications/types/MessageRoutingChannel.d.ts +1 -1
  85. package/api/resources/notifications/types/MessageRoutingMethod.d.ts +1 -1
  86. package/api/resources/notifications/types/NotificationContent.d.ts +1 -1
  87. package/api/resources/profiles/client/Client.d.ts +50 -30
  88. package/api/resources/profiles/client/Client.js +160 -139
  89. package/api/resources/profiles/client/requests/GetListSubscriptionsRequest.d.ts +1 -3
  90. package/api/resources/profiles/client/requests/MergeProfileRequest.d.ts +1 -1
  91. package/api/resources/profiles/client/requests/ReplaceProfileRequest.d.ts +1 -1
  92. package/api/resources/profiles/types/DeviceType.d.ts +1 -1
  93. package/api/resources/profiles/types/Discord.d.ts +1 -1
  94. package/api/resources/profiles/types/Expo.d.ts +1 -1
  95. package/api/resources/profiles/types/MsTeams.d.ts +1 -1
  96. package/api/resources/profiles/types/ProfileUpdateRequest.d.ts +8 -0
  97. package/api/resources/profiles/types/ProfileUpdateRequest.js +5 -0
  98. package/api/resources/profiles/types/Slack.d.ts +1 -1
  99. package/api/resources/profiles/types/SnoozeRuleType.d.ts +1 -1
  100. package/api/resources/profiles/types/UserProfileFirebaseToken.d.ts +1 -1
  101. package/api/resources/profiles/types/WebhookAuthMode.d.ts +1 -1
  102. package/api/resources/profiles/types/WebhookMethod.d.ts +1 -1
  103. package/api/resources/profiles/types/WebhookProfileType.d.ts +1 -1
  104. package/api/resources/profiles/types/index.d.ts +1 -0
  105. package/api/resources/profiles/types/index.js +1 -0
  106. package/api/resources/send/types/Attachment.d.ts +1 -1
  107. package/api/resources/send/types/ChannelSource.d.ts +1 -1
  108. package/api/resources/send/types/Content.d.ts +1 -1
  109. package/api/resources/send/types/Criteria.d.ts +1 -1
  110. package/api/resources/send/types/ElementalNode.d.ts +1 -1
  111. package/api/resources/send/types/ExpiresInType.d.ts +1 -1
  112. package/api/resources/send/types/IActionButtonStyle.d.ts +1 -1
  113. package/api/resources/send/types/IAlignment.d.ts +1 -1
  114. package/api/resources/send/types/IPreferences.d.ts +1 -1
  115. package/api/resources/send/types/InAppPlacement.d.ts +1 -1
  116. package/api/resources/send/types/Locales.d.ts +1 -1
  117. package/api/resources/send/types/Message.d.ts +1 -1
  118. package/api/resources/send/types/MessageChannels.d.ts +1 -1
  119. package/api/resources/send/types/MessageData.d.ts +1 -1
  120. package/api/resources/send/types/MessageProviders.d.ts +1 -1
  121. package/api/resources/send/types/MessageRecipient.d.ts +1 -1
  122. package/api/resources/send/types/Recipient.d.ts +1 -1
  123. package/api/resources/send/types/RecipientData.d.ts +1 -1
  124. package/api/resources/send/types/RoutingChannel.d.ts +1 -1
  125. package/api/resources/send/types/RoutingMethod.d.ts +1 -1
  126. package/api/resources/send/types/RuleType.d.ts +1 -1
  127. package/api/resources/send/types/TextAlign.d.ts +1 -1
  128. package/api/resources/send/types/TextStyle.d.ts +1 -1
  129. package/api/resources/templates/client/Client.d.ts +11 -4
  130. package/api/resources/templates/client/Client.js +34 -25
  131. package/api/resources/templates/client/requests/ListTemplatesRequest.d.ts +1 -3
  132. package/api/resources/templates/types/ChannelIdentifier.d.ts +1 -1
  133. package/api/resources/templates/types/RoutingStrategyMethod.d.ts +1 -1
  134. package/api/resources/tenants/client/Client.d.ts +37 -44
  135. package/api/resources/tenants/client/Client.js +130 -135
  136. package/api/resources/tenants/client/requests/ListTenantParams.d.ts +1 -5
  137. package/api/resources/tenants/client/requests/ListUsersForTenantParams.d.ts +1 -4
  138. package/api/resources/tenants/client/requests/TenantCreateOrReplaceParams.d.ts +6 -21
  139. package/api/resources/tenants/types/SubscriptionTopicStatus.d.ts +1 -1
  140. package/api/resources/tenants/types/TemplateProperty.d.ts +1 -1
  141. package/api/resources/translations/client/Client.d.ts +14 -4
  142. package/api/resources/translations/client/Client.js +49 -37
  143. package/api/resources/users/client/Client.d.ts +5 -7
  144. package/api/resources/users/resources/index.js +17 -7
  145. package/api/resources/users/resources/preferences/client/Client.d.ts +19 -12
  146. package/api/resources/users/resources/preferences/client/Client.js +77 -59
  147. package/api/resources/users/resources/preferences/client/requests/UserPreferencesParams.d.ts +1 -3
  148. package/api/resources/users/resources/preferences/client/requests/UserPreferencesTopicParams.d.ts +1 -3
  149. package/api/resources/users/resources/preferences/client/requests/UserPreferencesUpdateParams.d.ts +2 -2
  150. package/api/resources/users/resources/tenants/client/Client.d.ts +33 -26
  151. package/api/resources/users/resources/tenants/client/Client.js +104 -92
  152. package/api/resources/users/resources/tenants/client/requests/AddUserToMultipleTenantsParams.d.ts +9 -8
  153. package/api/resources/users/resources/tenants/client/requests/AddUserToSingleTenantsParams.d.ts +1 -5
  154. package/api/resources/users/resources/tenants/client/requests/ListTenantsForUserParams.d.ts +1 -4
  155. package/api/resources/users/resources/tokens/client/Client.d.ts +39 -35
  156. package/api/resources/users/resources/tokens/client/Client.js +121 -115
  157. package/api/resources/users/resources/tokens/types/ExpiryDate.d.ts +1 -1
  158. package/api/resources/users/resources/tokens/types/GetAllTokensResponse.d.ts +1 -1
  159. package/api/resources/users/resources/tokens/types/PatchOp.d.ts +1 -1
  160. package/api/resources/users/resources/tokens/types/ProviderKey.d.ts +1 -1
  161. package/api/resources/users/resources/tokens/types/TokenStatus.d.ts +1 -1
  162. package/core/auth/BearerToken.d.ts +1 -1
  163. package/core/fetcher/APIResponse.d.ts +11 -1
  164. package/core/fetcher/Fetcher.d.ts +7 -3
  165. package/core/fetcher/Fetcher.js +37 -135
  166. package/core/fetcher/Headers.d.ts +2 -0
  167. package/core/fetcher/Headers.js +84 -0
  168. package/core/fetcher/HttpResponsePromise.d.ts +58 -0
  169. package/core/fetcher/HttpResponsePromise.js +103 -0
  170. package/core/fetcher/RawResponse.d.ts +29 -0
  171. package/core/fetcher/RawResponse.js +44 -0
  172. package/core/fetcher/Supplier.d.ts +1 -1
  173. package/core/fetcher/createRequestUrl.d.ts +1 -0
  174. package/core/fetcher/createRequestUrl.js +12 -0
  175. package/core/fetcher/getFetchFn.d.ts +4 -0
  176. package/core/fetcher/getFetchFn.js +68 -0
  177. package/core/fetcher/getHeader.js +1 -2
  178. package/core/fetcher/getRequestBody.d.ts +7 -0
  179. package/core/fetcher/getRequestBody.js +23 -0
  180. package/core/fetcher/getResponseBody.d.ts +1 -0
  181. package/core/fetcher/getResponseBody.js +54 -0
  182. package/core/fetcher/index.d.ts +3 -0
  183. package/core/fetcher/index.js +7 -1
  184. package/core/fetcher/makeRequest.d.ts +1 -0
  185. package/core/fetcher/makeRequest.js +42 -0
  186. package/core/fetcher/requestWithRetries.d.ts +1 -0
  187. package/core/fetcher/requestWithRetries.js +40 -0
  188. package/core/fetcher/signals.d.ts +11 -0
  189. package/core/fetcher/signals.js +36 -0
  190. package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
  191. package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
  192. package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +21 -0
  193. package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +126 -0
  194. package/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
  195. package/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
  196. package/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
  197. package/core/fetcher/stream-wrappers/chooseStreamWrapper.js +59 -0
  198. package/core/index.d.ts +1 -1
  199. package/core/index.js +1 -1
  200. package/core/json.d.ts +15 -0
  201. package/core/json.js +24 -0
  202. package/core/runtime/runtime.d.ts +2 -1
  203. package/core/runtime/runtime.js +57 -36
  204. package/dist/Client.d.ts +49 -108
  205. package/dist/Client.js +89 -148
  206. package/dist/api/client/requests/SendMessageRequest.d.ts +8 -76
  207. package/dist/api/resources/audiences/client/Client.d.ts +26 -21
  208. package/dist/api/resources/audiences/client/Client.js +97 -90
  209. package/dist/api/resources/audiences/client/requests/AudienceMembersListParams.d.ts +1 -3
  210. package/dist/api/resources/audiences/client/requests/AudienceUpdateParams.d.ts +3 -7
  211. package/dist/api/resources/audiences/client/requests/AudiencesListParams.d.ts +1 -3
  212. package/dist/api/resources/audiences/types/ComparisonOperator.d.ts +1 -1
  213. package/dist/api/resources/audiences/types/Filter.d.ts +1 -1
  214. package/dist/api/resources/audiences/types/FilterConfig.d.ts +1 -1
  215. package/dist/api/resources/audiences/types/LogicalOperator.d.ts +1 -1
  216. package/dist/api/resources/audiences/types/Operator.d.ts +1 -1
  217. package/dist/api/resources/auditEvents/client/Client.d.ts +14 -6
  218. package/dist/api/resources/auditEvents/client/Client.js +48 -38
  219. package/dist/api/resources/auditEvents/client/requests/ListAuditEventsRequest.d.ts +1 -3
  220. package/dist/api/resources/authTokens/client/Client.d.ts +13 -4
  221. package/dist/api/resources/authTokens/client/Client.js +35 -26
  222. package/dist/api/resources/authTokens/client/requests/IssueTokenParams.d.ts +2 -2
  223. package/dist/api/resources/automations/client/Client.d.ts +19 -15
  224. package/dist/api/resources/automations/client/Client.js +52 -50
  225. package/dist/api/resources/automations/types/AutomationAddToBatchMaxItemsType.d.ts +1 -1
  226. package/dist/api/resources/automations/types/AutomationAddToBatchRetainType.d.ts +1 -1
  227. package/dist/api/resources/automations/types/AutomationAddToBatchScope.d.ts +1 -1
  228. package/dist/api/resources/automations/types/AutomationFetchDataWebhookMethod.d.ts +1 -1
  229. package/dist/api/resources/automations/types/AutomationStepOption.d.ts +1 -1
  230. package/dist/api/resources/automations/types/AutomationThrottleScope.d.ts +1 -1
  231. package/dist/api/resources/automations/types/MergeAlgorithm.d.ts +1 -1
  232. package/dist/api/resources/automations/types/Profile.d.ts +1 -1
  233. package/dist/api/resources/brands/client/Client.d.ts +32 -63
  234. package/dist/api/resources/brands/client/Client.js +103 -134
  235. package/dist/api/resources/brands/client/requests/BrandUpdateParameters.d.ts +3 -26
  236. package/dist/api/resources/brands/client/requests/ListBrandsRequest.d.ts +1 -3
  237. package/dist/api/resources/bulk/client/Client.d.ts +40 -126
  238. package/dist/api/resources/bulk/client/Client.js +111 -201
  239. package/dist/api/resources/bulk/client/requests/BulkCreateJobParams.d.ts +6 -86
  240. package/dist/api/resources/bulk/client/requests/BulkGetUsersParams.d.ts +1 -3
  241. package/dist/api/resources/bulk/types/BulkJobStatus.d.ts +1 -1
  242. package/dist/api/resources/bulk/types/BulkJobUserStatus.d.ts +1 -1
  243. package/dist/api/resources/bulk/types/InboundBulkMessageV2.d.ts +3 -5
  244. package/dist/api/resources/commons/errors/AlreadyExistsError.d.ts +2 -1
  245. package/dist/api/resources/commons/errors/AlreadyExistsError.js +19 -8
  246. package/dist/api/resources/commons/errors/BadRequestError.d.ts +2 -1
  247. package/dist/api/resources/commons/errors/BadRequestError.js +19 -8
  248. package/dist/api/resources/commons/errors/ConflictError.d.ts +2 -1
  249. package/dist/api/resources/commons/errors/ConflictError.js +19 -8
  250. package/dist/api/resources/commons/errors/MessageNotFoundError.d.ts +2 -1
  251. package/dist/api/resources/commons/errors/MessageNotFoundError.js +19 -8
  252. package/dist/api/resources/commons/errors/NotFoundError.d.ts +2 -1
  253. package/dist/api/resources/commons/errors/NotFoundError.js +19 -8
  254. package/dist/api/resources/commons/errors/PaymentRequiredError.d.ts +2 -1
  255. package/dist/api/resources/commons/errors/PaymentRequiredError.js +19 -8
  256. package/dist/api/resources/commons/types/ChannelClassification.d.ts +1 -1
  257. package/dist/api/resources/commons/types/NotificationPreferences.d.ts +1 -1
  258. package/dist/api/resources/commons/types/PreferenceStatus.d.ts +1 -1
  259. package/dist/api/resources/inbound/client/Client.d.ts +11 -2
  260. package/dist/api/resources/inbound/client/Client.js +35 -24
  261. package/dist/api/resources/index.js +17 -7
  262. package/dist/api/resources/lists/client/Client.d.ts +51 -44
  263. package/dist/api/resources/lists/client/Client.js +181 -174
  264. package/dist/api/resources/lists/client/requests/AddSubscribersToList.d.ts +5 -5
  265. package/dist/api/resources/lists/client/requests/GetAllListsRequest.d.ts +1 -4
  266. package/dist/api/resources/lists/client/requests/GetSubscriptionForListRequest.d.ts +1 -3
  267. package/dist/api/resources/lists/client/requests/SubscribeUserToListRequest.d.ts +1 -4
  268. package/dist/api/resources/lists/client/requests/SubscribeUsersToListRequest.d.ts +5 -5
  269. package/dist/api/resources/messages/client/Client.d.ts +26 -29
  270. package/dist/api/resources/messages/client/Client.js +111 -114
  271. package/dist/api/resources/messages/client/requests/GetMessageHistoryRequest.d.ts +1 -3
  272. package/dist/api/resources/messages/client/requests/ListMessagesRequest.d.ts +1 -16
  273. package/dist/api/resources/messages/types/MessageDetailsExtended.d.ts +7 -0
  274. package/dist/api/resources/messages/types/MessageDetailsExtended.js +5 -0
  275. package/dist/api/resources/messages/types/MessageStatus.d.ts +25 -5
  276. package/dist/api/resources/messages/types/MessageStatus.js +6 -1
  277. package/dist/api/resources/messages/types/Reason.d.ts +1 -1
  278. package/dist/api/resources/messages/types/index.d.ts +1 -0
  279. package/dist/api/resources/messages/types/index.js +1 -0
  280. package/dist/api/resources/notifications/client/Client.d.ts +32 -17
  281. package/dist/api/resources/notifications/client/Client.js +119 -93
  282. package/dist/api/resources/notifications/client/requests/NotificationListParams.d.ts +1 -4
  283. package/dist/api/resources/notifications/client/requests/SubmissionChecksReplaceParams.d.ts +6 -2
  284. package/dist/api/resources/notifications/types/BlockType.d.ts +1 -1
  285. package/dist/api/resources/notifications/types/CheckStatus.d.ts +1 -1
  286. package/dist/api/resources/notifications/types/MessageRoutingChannel.d.ts +1 -1
  287. package/dist/api/resources/notifications/types/MessageRoutingMethod.d.ts +1 -1
  288. package/dist/api/resources/notifications/types/NotificationContent.d.ts +1 -1
  289. package/dist/api/resources/profiles/client/Client.d.ts +50 -30
  290. package/dist/api/resources/profiles/client/Client.js +160 -139
  291. package/dist/api/resources/profiles/client/requests/GetListSubscriptionsRequest.d.ts +1 -3
  292. package/dist/api/resources/profiles/client/requests/MergeProfileRequest.d.ts +1 -1
  293. package/dist/api/resources/profiles/client/requests/ReplaceProfileRequest.d.ts +1 -1
  294. package/dist/api/resources/profiles/types/DeviceType.d.ts +1 -1
  295. package/dist/api/resources/profiles/types/Discord.d.ts +1 -1
  296. package/dist/api/resources/profiles/types/Expo.d.ts +1 -1
  297. package/dist/api/resources/profiles/types/MsTeams.d.ts +1 -1
  298. package/dist/api/resources/profiles/types/ProfileUpdateRequest.d.ts +8 -0
  299. package/dist/api/resources/profiles/types/ProfileUpdateRequest.js +5 -0
  300. package/dist/api/resources/profiles/types/Slack.d.ts +1 -1
  301. package/dist/api/resources/profiles/types/SnoozeRuleType.d.ts +1 -1
  302. package/dist/api/resources/profiles/types/UserProfileFirebaseToken.d.ts +1 -1
  303. package/dist/api/resources/profiles/types/WebhookAuthMode.d.ts +1 -1
  304. package/dist/api/resources/profiles/types/WebhookMethod.d.ts +1 -1
  305. package/dist/api/resources/profiles/types/WebhookProfileType.d.ts +1 -1
  306. package/dist/api/resources/profiles/types/index.d.ts +1 -0
  307. package/dist/api/resources/profiles/types/index.js +1 -0
  308. package/dist/api/resources/send/types/Attachment.d.ts +1 -1
  309. package/dist/api/resources/send/types/ChannelSource.d.ts +1 -1
  310. package/dist/api/resources/send/types/Content.d.ts +1 -1
  311. package/dist/api/resources/send/types/Criteria.d.ts +1 -1
  312. package/dist/api/resources/send/types/ElementalNode.d.ts +1 -1
  313. package/dist/api/resources/send/types/ExpiresInType.d.ts +1 -1
  314. package/dist/api/resources/send/types/IActionButtonStyle.d.ts +1 -1
  315. package/dist/api/resources/send/types/IAlignment.d.ts +1 -1
  316. package/dist/api/resources/send/types/IPreferences.d.ts +1 -1
  317. package/dist/api/resources/send/types/InAppPlacement.d.ts +1 -1
  318. package/dist/api/resources/send/types/Locales.d.ts +1 -1
  319. package/dist/api/resources/send/types/Message.d.ts +1 -1
  320. package/dist/api/resources/send/types/MessageChannels.d.ts +1 -1
  321. package/dist/api/resources/send/types/MessageData.d.ts +1 -1
  322. package/dist/api/resources/send/types/MessageProviders.d.ts +1 -1
  323. package/dist/api/resources/send/types/MessageRecipient.d.ts +1 -1
  324. package/dist/api/resources/send/types/Recipient.d.ts +1 -1
  325. package/dist/api/resources/send/types/RecipientData.d.ts +1 -1
  326. package/dist/api/resources/send/types/RoutingChannel.d.ts +1 -1
  327. package/dist/api/resources/send/types/RoutingMethod.d.ts +1 -1
  328. package/dist/api/resources/send/types/RuleType.d.ts +1 -1
  329. package/dist/api/resources/send/types/TextAlign.d.ts +1 -1
  330. package/dist/api/resources/send/types/TextStyle.d.ts +1 -1
  331. package/dist/api/resources/templates/client/Client.d.ts +11 -4
  332. package/dist/api/resources/templates/client/Client.js +34 -25
  333. package/dist/api/resources/templates/client/requests/ListTemplatesRequest.d.ts +1 -3
  334. package/dist/api/resources/templates/types/ChannelIdentifier.d.ts +1 -1
  335. package/dist/api/resources/templates/types/RoutingStrategyMethod.d.ts +1 -1
  336. package/dist/api/resources/tenants/client/Client.d.ts +37 -44
  337. package/dist/api/resources/tenants/client/Client.js +130 -135
  338. package/dist/api/resources/tenants/client/requests/ListTenantParams.d.ts +1 -5
  339. package/dist/api/resources/tenants/client/requests/ListUsersForTenantParams.d.ts +1 -4
  340. package/dist/api/resources/tenants/client/requests/TenantCreateOrReplaceParams.d.ts +6 -21
  341. package/dist/api/resources/tenants/types/SubscriptionTopicStatus.d.ts +1 -1
  342. package/dist/api/resources/tenants/types/TemplateProperty.d.ts +1 -1
  343. package/dist/api/resources/translations/client/Client.d.ts +14 -4
  344. package/dist/api/resources/translations/client/Client.js +49 -37
  345. package/dist/api/resources/users/client/Client.d.ts +5 -7
  346. package/dist/api/resources/users/resources/index.js +17 -7
  347. package/dist/api/resources/users/resources/preferences/client/Client.d.ts +19 -12
  348. package/dist/api/resources/users/resources/preferences/client/Client.js +77 -59
  349. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesParams.d.ts +1 -3
  350. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesTopicParams.d.ts +1 -3
  351. package/dist/api/resources/users/resources/preferences/client/requests/UserPreferencesUpdateParams.d.ts +2 -2
  352. package/dist/api/resources/users/resources/tenants/client/Client.d.ts +33 -26
  353. package/dist/api/resources/users/resources/tenants/client/Client.js +104 -92
  354. package/dist/api/resources/users/resources/tenants/client/requests/AddUserToMultipleTenantsParams.d.ts +9 -8
  355. package/dist/api/resources/users/resources/tenants/client/requests/AddUserToSingleTenantsParams.d.ts +1 -5
  356. package/dist/api/resources/users/resources/tenants/client/requests/ListTenantsForUserParams.d.ts +1 -4
  357. package/dist/api/resources/users/resources/tokens/client/Client.d.ts +39 -35
  358. package/dist/api/resources/users/resources/tokens/client/Client.js +121 -115
  359. package/dist/api/resources/users/resources/tokens/types/ExpiryDate.d.ts +1 -1
  360. package/dist/api/resources/users/resources/tokens/types/GetAllTokensResponse.d.ts +1 -1
  361. package/dist/api/resources/users/resources/tokens/types/PatchOp.d.ts +1 -1
  362. package/dist/api/resources/users/resources/tokens/types/ProviderKey.d.ts +1 -1
  363. package/dist/api/resources/users/resources/tokens/types/TokenStatus.d.ts +1 -1
  364. package/dist/core/auth/BearerToken.d.ts +1 -1
  365. package/dist/core/fetcher/APIResponse.d.ts +11 -1
  366. package/dist/core/fetcher/Fetcher.d.ts +7 -3
  367. package/dist/core/fetcher/Fetcher.js +37 -135
  368. package/dist/core/fetcher/Headers.d.ts +2 -0
  369. package/dist/core/fetcher/Headers.js +84 -0
  370. package/dist/core/fetcher/HttpResponsePromise.d.ts +58 -0
  371. package/dist/core/fetcher/HttpResponsePromise.js +103 -0
  372. package/dist/core/fetcher/RawResponse.d.ts +29 -0
  373. package/dist/core/fetcher/RawResponse.js +44 -0
  374. package/dist/core/fetcher/Supplier.d.ts +1 -1
  375. package/dist/core/fetcher/createRequestUrl.d.ts +1 -0
  376. package/dist/core/fetcher/createRequestUrl.js +12 -0
  377. package/dist/core/fetcher/getFetchFn.d.ts +4 -0
  378. package/dist/core/fetcher/getFetchFn.js +68 -0
  379. package/dist/core/fetcher/getHeader.js +1 -2
  380. package/dist/core/fetcher/getRequestBody.d.ts +7 -0
  381. package/dist/core/fetcher/getRequestBody.js +23 -0
  382. package/dist/core/fetcher/getResponseBody.d.ts +1 -0
  383. package/dist/core/fetcher/getResponseBody.js +54 -0
  384. package/dist/core/fetcher/index.d.ts +3 -0
  385. package/dist/core/fetcher/index.js +7 -1
  386. package/dist/core/fetcher/makeRequest.d.ts +1 -0
  387. package/dist/core/fetcher/makeRequest.js +42 -0
  388. package/dist/core/fetcher/requestWithRetries.d.ts +1 -0
  389. package/dist/core/fetcher/requestWithRetries.js +40 -0
  390. package/dist/core/fetcher/signals.d.ts +11 -0
  391. package/dist/core/fetcher/signals.js +36 -0
  392. package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
  393. package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
  394. package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +21 -0
  395. package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +126 -0
  396. package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
  397. package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
  398. package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
  399. package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.js +59 -0
  400. package/dist/core/index.d.ts +1 -1
  401. package/dist/core/index.js +1 -1
  402. package/dist/core/json.d.ts +15 -0
  403. package/dist/core/json.js +24 -0
  404. package/dist/core/runtime/runtime.d.ts +2 -1
  405. package/dist/core/runtime/runtime.js +57 -36
  406. package/dist/environments.d.ts +1 -1
  407. package/dist/errors/CourierError.d.ts +4 -1
  408. package/dist/errors/CourierError.js +6 -8
  409. package/dist/errors/CourierTimeoutError.d.ts +1 -1
  410. package/dist/errors/CourierTimeoutError.js +2 -2
  411. package/dist/index.js +17 -7
  412. package/dist/version.d.ts +1 -0
  413. package/dist/version.js +4 -0
  414. package/environments.d.ts +1 -1
  415. package/errors/CourierError.d.ts +4 -1
  416. package/errors/CourierError.js +6 -8
  417. package/errors/CourierTimeoutError.d.ts +1 -1
  418. package/errors/CourierTimeoutError.js +2 -2
  419. package/index.js +17 -7
  420. package/{jest.config.js → jest.config.mjs} +4 -1
  421. package/package.json +25 -15
  422. package/reference.md +5142 -0
  423. package/scripts/rename-to-esm-files.js +115 -0
  424. package/version.d.ts +1 -0
  425. package/version.js +4 -0
@@ -6,12 +6,20 @@ import * as core from "../../../../core";
6
6
  export declare namespace Translations {
7
7
  interface Options {
8
8
  environment?: core.Supplier<environments.CourierEnvironment | string>;
9
+ /** Specify a custom URL to connect the client to. */
10
+ baseUrl?: core.Supplier<string>;
9
11
  authorizationToken?: core.Supplier<core.BearerToken | undefined>;
10
12
  fetcher?: core.FetchFunction;
11
13
  }
12
14
  interface RequestOptions {
15
+ /** The maximum time to wait for a response in seconds. */
13
16
  timeoutInSeconds?: number;
17
+ /** The number of times to retry the request. Defaults to 2. */
14
18
  maxRetries?: number;
19
+ /** A hook to abort the request. */
20
+ abortSignal?: AbortSignal;
21
+ /** Additional headers to include in the request. */
22
+ headers?: Record<string, string>;
15
23
  }
16
24
  }
17
25
  export declare class Translations {
@@ -27,9 +35,10 @@ export declare class Translations {
27
35
  * @throws {@link Courier.NotFoundError}
28
36
  *
29
37
  * @example
30
- * await courier.translations.get("string", "string")
38
+ * await client.translations.get("domain", "locale")
31
39
  */
32
- get(domain: string, locale: string, requestOptions?: Translations.RequestOptions): Promise<string>;
40
+ get(domain: string, locale: string, requestOptions?: Translations.RequestOptions): core.HttpResponsePromise<string>;
41
+ private __get;
33
42
  /**
34
43
  * Update a translation
35
44
  *
@@ -41,8 +50,9 @@ export declare class Translations {
41
50
  * @throws {@link Courier.NotFoundError}
42
51
  *
43
52
  * @example
44
- * await courier.translations.update("string", "string", "string")
53
+ * await client.translations.update("domain", "locale", "string")
45
54
  */
46
- update(domain: string, locale: string, request: string, requestOptions?: Translations.RequestOptions): Promise<void>;
55
+ update(domain: string, locale: string, request: string, requestOptions?: Translations.RequestOptions): core.HttpResponsePromise<void>;
56
+ private __update;
47
57
  protected _getAuthorizationHeader(): Promise<string>;
48
58
  }
@@ -18,13 +18,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
18
18
  }) : function(o, v) {
19
19
  o["default"] = v;
20
20
  });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
28
38
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
39
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
40
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -58,37 +68,36 @@ class Translations {
58
68
  * @throws {@link Courier.NotFoundError}
59
69
  *
60
70
  * @example
61
- * await courier.translations.get("string", "string")
71
+ * await client.translations.get("domain", "locale")
62
72
  */
63
73
  get(domain, locale, requestOptions) {
64
- var _a, _b;
74
+ return core.HttpResponsePromise.fromPromise(this.__get(domain, locale, requestOptions));
75
+ }
76
+ __get(domain, locale, requestOptions) {
65
77
  return __awaiter(this, void 0, void 0, function* () {
78
+ var _a, _b, _c;
66
79
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
67
- url: (0, url_join_1.default)((_b = (yield core.Supplier.get(this._options.environment))) !== null && _b !== void 0 ? _b : environments.CourierEnvironment.Production, `/translations/${encodeURIComponent(domain)}/${encodeURIComponent(locale)}`),
80
+ url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.CourierEnvironment.Production, `/translations/${encodeURIComponent(domain)}/${encodeURIComponent(locale)}`),
68
81
  method: "GET",
69
- headers: {
70
- Authorization: yield this._getAuthorizationHeader(),
71
- "X-Fern-Language": "JavaScript",
72
- "X-Fern-SDK-Name": "@trycourier/courier",
73
- "X-Fern-SDK-Version": "v6.3.1",
74
- "X-Fern-Runtime": core.RUNTIME.type,
75
- "X-Fern-Runtime-Version": core.RUNTIME.version,
76
- },
82
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.1", "User-Agent": "@trycourier/courier/6.4.1", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
77
83
  contentType: "application/json",
84
+ requestType: "json",
78
85
  timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
79
86
  maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
87
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
80
88
  });
81
89
  if (_response.ok) {
82
- return _response.body;
90
+ return { data: _response.body, rawResponse: _response.rawResponse };
83
91
  }
84
92
  if (_response.error.reason === "status-code") {
85
93
  switch (_response.error.statusCode) {
86
94
  case 404:
87
- throw new Courier.NotFoundError(_response.error.body);
95
+ throw new Courier.NotFoundError(_response.error.body, _response.rawResponse);
88
96
  default:
89
97
  throw new errors.CourierError({
90
98
  statusCode: _response.error.statusCode,
91
99
  body: _response.error.body,
100
+ rawResponse: _response.rawResponse,
92
101
  });
93
102
  }
94
103
  }
@@ -97,12 +106,14 @@ class Translations {
97
106
  throw new errors.CourierError({
98
107
  statusCode: _response.error.statusCode,
99
108
  body: _response.error.rawBody,
109
+ rawResponse: _response.rawResponse,
100
110
  });
101
111
  case "timeout":
102
- throw new errors.CourierTimeoutError();
112
+ throw new errors.CourierTimeoutError("Timeout exceeded when calling GET /translations/{domain}/{locale}.");
103
113
  case "unknown":
104
114
  throw new errors.CourierError({
105
115
  message: _response.error.errorMessage,
116
+ rawResponse: _response.rawResponse,
106
117
  });
107
118
  }
108
119
  });
@@ -118,38 +129,37 @@ class Translations {
118
129
  * @throws {@link Courier.NotFoundError}
119
130
  *
120
131
  * @example
121
- * await courier.translations.update("string", "string", "string")
132
+ * await client.translations.update("domain", "locale", "string")
122
133
  */
123
134
  update(domain, locale, request, requestOptions) {
124
- var _a, _b;
135
+ return core.HttpResponsePromise.fromPromise(this.__update(domain, locale, request, requestOptions));
136
+ }
137
+ __update(domain, locale, request, requestOptions) {
125
138
  return __awaiter(this, void 0, void 0, function* () {
139
+ var _a, _b, _c;
126
140
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
127
- url: (0, url_join_1.default)((_b = (yield core.Supplier.get(this._options.environment))) !== null && _b !== void 0 ? _b : environments.CourierEnvironment.Production, `/translations/${encodeURIComponent(domain)}/${encodeURIComponent(locale)}`),
141
+ url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.CourierEnvironment.Production, `/translations/${encodeURIComponent(domain)}/${encodeURIComponent(locale)}`),
128
142
  method: "PUT",
129
- headers: {
130
- Authorization: yield this._getAuthorizationHeader(),
131
- "X-Fern-Language": "JavaScript",
132
- "X-Fern-SDK-Name": "@trycourier/courier",
133
- "X-Fern-SDK-Version": "v6.3.1",
134
- "X-Fern-Runtime": core.RUNTIME.type,
135
- "X-Fern-Runtime-Version": core.RUNTIME.version,
136
- },
143
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.1", "User-Agent": "@trycourier/courier/6.4.1", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
137
144
  contentType: "application/json",
145
+ requestType: "json",
138
146
  body: request,
139
147
  timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
140
148
  maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
149
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
141
150
  });
142
151
  if (_response.ok) {
143
- return;
152
+ return { data: undefined, rawResponse: _response.rawResponse };
144
153
  }
145
154
  if (_response.error.reason === "status-code") {
146
155
  switch (_response.error.statusCode) {
147
156
  case 404:
148
- throw new Courier.NotFoundError(_response.error.body);
157
+ throw new Courier.NotFoundError(_response.error.body, _response.rawResponse);
149
158
  default:
150
159
  throw new errors.CourierError({
151
160
  statusCode: _response.error.statusCode,
152
161
  body: _response.error.body,
162
+ rawResponse: _response.rawResponse,
153
163
  });
154
164
  }
155
165
  }
@@ -158,23 +168,25 @@ class Translations {
158
168
  throw new errors.CourierError({
159
169
  statusCode: _response.error.statusCode,
160
170
  body: _response.error.rawBody,
171
+ rawResponse: _response.rawResponse,
161
172
  });
162
173
  case "timeout":
163
- throw new errors.CourierTimeoutError();
174
+ throw new errors.CourierTimeoutError("Timeout exceeded when calling PUT /translations/{domain}/{locale}.");
164
175
  case "unknown":
165
176
  throw new errors.CourierError({
166
177
  message: _response.error.errorMessage,
178
+ rawResponse: _response.rawResponse,
167
179
  });
168
180
  }
169
181
  });
170
182
  }
171
183
  _getAuthorizationHeader() {
172
- var _a;
173
184
  return __awaiter(this, void 0, void 0, function* () {
185
+ var _a;
174
186
  const bearer = (_a = (yield core.Supplier.get(this._options.authorizationToken))) !== null && _a !== void 0 ? _a : process === null || process === void 0 ? void 0 : process.env["COURIER_AUTH_TOKEN"];
175
187
  if (bearer == null) {
176
188
  throw new errors.CourierError({
177
- message: "Please specify COURIER_AUTH_TOKEN when instantiating the client.",
189
+ message: "Please specify a bearer by either passing it in to the constructor or initializing a COURIER_AUTH_TOKEN environment variable",
178
190
  });
179
191
  }
180
192
  return `Bearer ${bearer}`;
@@ -9,21 +9,19 @@ import { Tokens } from "../resources/tokens/client/Client";
9
9
  export declare namespace Users {
10
10
  interface Options {
11
11
  environment?: core.Supplier<environments.CourierEnvironment | string>;
12
+ /** Specify a custom URL to connect the client to. */
13
+ baseUrl?: core.Supplier<string>;
12
14
  authorizationToken?: core.Supplier<core.BearerToken | undefined>;
13
15
  fetcher?: core.FetchFunction;
14
16
  }
15
- interface RequestOptions {
16
- timeoutInSeconds?: number;
17
- maxRetries?: number;
18
- }
19
17
  }
20
18
  export declare class Users {
21
19
  protected readonly _options: Users.Options;
22
- constructor(_options?: Users.Options);
23
20
  protected _preferences: Preferences | undefined;
24
- get preferences(): Preferences;
25
21
  protected _tenants: Tenants | undefined;
26
- get tenants(): Tenants;
27
22
  protected _tokens: Tokens | undefined;
23
+ constructor(_options?: Users.Options);
24
+ get preferences(): Preferences;
25
+ get tenants(): Tenants;
28
26
  get tokens(): Tokens;
29
27
  }
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
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
+ })();
25
35
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
37
  };
@@ -7,12 +7,20 @@ import * as Courier from "../../../../../index";
7
7
  export declare namespace Preferences {
8
8
  interface Options {
9
9
  environment?: core.Supplier<environments.CourierEnvironment | string>;
10
+ /** Specify a custom URL to connect the client to. */
11
+ baseUrl?: core.Supplier<string>;
10
12
  authorizationToken?: core.Supplier<core.BearerToken | undefined>;
11
13
  fetcher?: core.FetchFunction;
12
14
  }
13
15
  interface RequestOptions {
16
+ /** The maximum time to wait for a response in seconds. */
14
17
  timeoutInSeconds?: number;
18
+ /** The number of times to retry the request. Defaults to 2. */
15
19
  maxRetries?: number;
20
+ /** A hook to abort the request. */
21
+ abortSignal?: AbortSignal;
22
+ /** Additional headers to include in the request. */
23
+ headers?: Record<string, string>;
16
24
  }
17
25
  }
18
26
  export declare class Preferences {
@@ -28,11 +36,10 @@ export declare class Preferences {
28
36
  * @throws {@link Courier.BadRequestError}
29
37
  *
30
38
  * @example
31
- * await courier.users.preferences.list("string", {
32
- * tenant_id: "string"
33
- * })
39
+ * await client.users.preferences.list("user_id")
34
40
  */
35
- list(userId: string, request?: Courier.users.UserPreferencesParams, requestOptions?: Preferences.RequestOptions): Promise<Courier.users.UserPreferencesListResponse>;
41
+ list(userId: string, request?: Courier.users.UserPreferencesParams, requestOptions?: Preferences.RequestOptions): core.HttpResponsePromise<Courier.users.UserPreferencesListResponse>;
42
+ private __list;
36
43
  /**
37
44
  * Fetch user preferences for a specific subscription topic.
38
45
  *
@@ -44,11 +51,10 @@ export declare class Preferences {
44
51
  * @throws {@link Courier.NotFoundError}
45
52
  *
46
53
  * @example
47
- * await courier.users.preferences.get("string", "string", {
48
- * tenant_id: "string"
49
- * })
54
+ * await client.users.preferences.get("user_id", "topic_id")
50
55
  */
51
- get(userId: string, topicId: string, request?: Courier.users.UserPreferencesTopicParams, requestOptions?: Preferences.RequestOptions): Promise<Courier.users.UserPreferencesGetResponse>;
56
+ get(userId: string, topicId: string, request?: Courier.users.UserPreferencesTopicParams, requestOptions?: Preferences.RequestOptions): core.HttpResponsePromise<Courier.users.UserPreferencesGetResponse>;
57
+ private __get;
52
58
  /**
53
59
  * Update or Create user preferences for a specific subscription topic.
54
60
  *
@@ -60,14 +66,15 @@ export declare class Preferences {
60
66
  * @throws {@link Courier.BadRequestError}
61
67
  *
62
68
  * @example
63
- * await courier.users.preferences.update("abc-123", "74Q4QGFBEX481DP6JRPMV751H4XT", {
69
+ * await client.users.preferences.update("abc-123", "74Q4QGFBEX481DP6JRPMV751H4XT", {
64
70
  * topic: {
65
- * status: Courier.PreferenceStatus.OptedIn,
71
+ * status: "OPTED_IN",
66
72
  * has_custom_routing: true,
67
- * custom_routing: [Courier.ChannelClassification.Inbox, Courier.ChannelClassification.Email]
73
+ * custom_routing: ["inbox", "email"]
68
74
  * }
69
75
  * })
70
76
  */
71
- update(userId: string, topicId: string, request: Courier.users.UserPreferencesUpdateParams, requestOptions?: Preferences.RequestOptions): Promise<Courier.users.UserPreferencesUpdateResponse>;
77
+ update(userId: string, topicId: string, request: Courier.users.UserPreferencesUpdateParams, requestOptions?: Preferences.RequestOptions): core.HttpResponsePromise<Courier.users.UserPreferencesUpdateResponse>;
78
+ private __update;
72
79
  protected _getAuthorizationHeader(): Promise<string>;
73
80
  }
@@ -18,13 +18,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
18
18
  }) : function(o, v) {
19
19
  o["default"] = v;
20
20
  });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
28
38
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
39
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
40
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -69,45 +79,45 @@ class Preferences {
69
79
  * @throws {@link Courier.BadRequestError}
70
80
  *
71
81
  * @example
72
- * await courier.users.preferences.list("string", {
73
- * tenant_id: "string"
74
- * })
82
+ * await client.users.preferences.list("user_id")
75
83
  */
76
84
  list(userId, request = {}, requestOptions) {
77
- var _a, _b;
78
- return __awaiter(this, void 0, void 0, function* () {
85
+ return core.HttpResponsePromise.fromPromise(this.__list(userId, request, requestOptions));
86
+ }
87
+ __list(userId_1) {
88
+ return __awaiter(this, arguments, void 0, function* (userId, request = {}, requestOptions) {
89
+ var _a, _b, _c;
79
90
  const { tenant_id: tenantId } = request;
80
91
  const _queryParams = {};
81
92
  if (tenantId != null) {
82
93
  _queryParams["tenant_id"] = tenantId;
83
94
  }
84
95
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
85
- url: (0, url_join_1.default)((_b = (yield core.Supplier.get(this._options.environment))) !== null && _b !== void 0 ? _b : environments.CourierEnvironment.Production, `/users/${encodeURIComponent(userId)}/preferences`),
96
+ url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.CourierEnvironment.Production, `/users/${encodeURIComponent(userId)}/preferences`),
86
97
  method: "GET",
87
- headers: {
88
- Authorization: yield this._getAuthorizationHeader(),
89
- "X-Fern-Language": "JavaScript",
90
- "X-Fern-SDK-Name": "@trycourier/courier",
91
- "X-Fern-SDK-Version": "v6.3.1",
92
- "X-Fern-Runtime": core.RUNTIME.type,
93
- "X-Fern-Runtime-Version": core.RUNTIME.version,
94
- },
98
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.1", "User-Agent": "@trycourier/courier/6.4.1", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
95
99
  contentType: "application/json",
96
100
  queryParameters: _queryParams,
101
+ requestType: "json",
97
102
  timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
98
103
  maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
104
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
99
105
  });
100
106
  if (_response.ok) {
101
- return _response.body;
107
+ return {
108
+ data: _response.body,
109
+ rawResponse: _response.rawResponse,
110
+ };
102
111
  }
103
112
  if (_response.error.reason === "status-code") {
104
113
  switch (_response.error.statusCode) {
105
114
  case 400:
106
- throw new Courier.BadRequestError(_response.error.body);
115
+ throw new Courier.BadRequestError(_response.error.body, _response.rawResponse);
107
116
  default:
108
117
  throw new errors.CourierError({
109
118
  statusCode: _response.error.statusCode,
110
119
  body: _response.error.body,
120
+ rawResponse: _response.rawResponse,
111
121
  });
112
122
  }
113
123
  }
@@ -116,12 +126,14 @@ class Preferences {
116
126
  throw new errors.CourierError({
117
127
  statusCode: _response.error.statusCode,
118
128
  body: _response.error.rawBody,
129
+ rawResponse: _response.rawResponse,
119
130
  });
120
131
  case "timeout":
121
- throw new errors.CourierTimeoutError();
132
+ throw new errors.CourierTimeoutError("Timeout exceeded when calling GET /users/{user_id}/preferences.");
122
133
  case "unknown":
123
134
  throw new errors.CourierError({
124
135
  message: _response.error.errorMessage,
136
+ rawResponse: _response.rawResponse,
125
137
  });
126
138
  }
127
139
  });
@@ -137,45 +149,45 @@ class Preferences {
137
149
  * @throws {@link Courier.NotFoundError}
138
150
  *
139
151
  * @example
140
- * await courier.users.preferences.get("string", "string", {
141
- * tenant_id: "string"
142
- * })
152
+ * await client.users.preferences.get("user_id", "topic_id")
143
153
  */
144
154
  get(userId, topicId, request = {}, requestOptions) {
145
- var _a, _b;
146
- return __awaiter(this, void 0, void 0, function* () {
155
+ return core.HttpResponsePromise.fromPromise(this.__get(userId, topicId, request, requestOptions));
156
+ }
157
+ __get(userId_1, topicId_1) {
158
+ return __awaiter(this, arguments, void 0, function* (userId, topicId, request = {}, requestOptions) {
159
+ var _a, _b, _c;
147
160
  const { tenant_id: tenantId } = request;
148
161
  const _queryParams = {};
149
162
  if (tenantId != null) {
150
163
  _queryParams["tenant_id"] = tenantId;
151
164
  }
152
165
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
153
- url: (0, url_join_1.default)((_b = (yield core.Supplier.get(this._options.environment))) !== null && _b !== void 0 ? _b : environments.CourierEnvironment.Production, `/users/${encodeURIComponent(userId)}/preferences/${encodeURIComponent(topicId)}`),
166
+ url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.CourierEnvironment.Production, `/users/${encodeURIComponent(userId)}/preferences/${encodeURIComponent(topicId)}`),
154
167
  method: "GET",
155
- headers: {
156
- Authorization: yield this._getAuthorizationHeader(),
157
- "X-Fern-Language": "JavaScript",
158
- "X-Fern-SDK-Name": "@trycourier/courier",
159
- "X-Fern-SDK-Version": "v6.3.1",
160
- "X-Fern-Runtime": core.RUNTIME.type,
161
- "X-Fern-Runtime-Version": core.RUNTIME.version,
162
- },
168
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.1", "User-Agent": "@trycourier/courier/6.4.1", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
163
169
  contentType: "application/json",
164
170
  queryParameters: _queryParams,
171
+ requestType: "json",
165
172
  timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
166
173
  maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
174
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
167
175
  });
168
176
  if (_response.ok) {
169
- return _response.body;
177
+ return {
178
+ data: _response.body,
179
+ rawResponse: _response.rawResponse,
180
+ };
170
181
  }
171
182
  if (_response.error.reason === "status-code") {
172
183
  switch (_response.error.statusCode) {
173
184
  case 404:
174
- throw new Courier.NotFoundError(_response.error.body);
185
+ throw new Courier.NotFoundError(_response.error.body, _response.rawResponse);
175
186
  default:
176
187
  throw new errors.CourierError({
177
188
  statusCode: _response.error.statusCode,
178
189
  body: _response.error.body,
190
+ rawResponse: _response.rawResponse,
179
191
  });
180
192
  }
181
193
  }
@@ -184,12 +196,14 @@ class Preferences {
184
196
  throw new errors.CourierError({
185
197
  statusCode: _response.error.statusCode,
186
198
  body: _response.error.rawBody,
199
+ rawResponse: _response.rawResponse,
187
200
  });
188
201
  case "timeout":
189
- throw new errors.CourierTimeoutError();
202
+ throw new errors.CourierTimeoutError("Timeout exceeded when calling GET /users/{user_id}/preferences/{topic_id}.");
190
203
  case "unknown":
191
204
  throw new errors.CourierError({
192
205
  message: _response.error.errorMessage,
206
+ rawResponse: _response.rawResponse,
193
207
  });
194
208
  }
195
209
  });
@@ -205,50 +219,52 @@ class Preferences {
205
219
  * @throws {@link Courier.BadRequestError}
206
220
  *
207
221
  * @example
208
- * await courier.users.preferences.update("abc-123", "74Q4QGFBEX481DP6JRPMV751H4XT", {
222
+ * await client.users.preferences.update("abc-123", "74Q4QGFBEX481DP6JRPMV751H4XT", {
209
223
  * topic: {
210
- * status: Courier.PreferenceStatus.OptedIn,
224
+ * status: "OPTED_IN",
211
225
  * has_custom_routing: true,
212
- * custom_routing: [Courier.ChannelClassification.Inbox, Courier.ChannelClassification.Email]
226
+ * custom_routing: ["inbox", "email"]
213
227
  * }
214
228
  * })
215
229
  */
216
230
  update(userId, topicId, request, requestOptions) {
217
- var _a, _b;
231
+ return core.HttpResponsePromise.fromPromise(this.__update(userId, topicId, request, requestOptions));
232
+ }
233
+ __update(userId, topicId, request, requestOptions) {
218
234
  return __awaiter(this, void 0, void 0, function* () {
235
+ var _a, _b, _c;
219
236
  const { tenant_id: tenantId } = request, _body = __rest(request, ["tenant_id"]);
220
237
  const _queryParams = {};
221
238
  if (tenantId != null) {
222
239
  _queryParams["tenant_id"] = tenantId;
223
240
  }
224
241
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
225
- url: (0, url_join_1.default)((_b = (yield core.Supplier.get(this._options.environment))) !== null && _b !== void 0 ? _b : environments.CourierEnvironment.Production, `/users/${encodeURIComponent(userId)}/preferences/${encodeURIComponent(topicId)}`),
242
+ url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.CourierEnvironment.Production, `/users/${encodeURIComponent(userId)}/preferences/${encodeURIComponent(topicId)}`),
226
243
  method: "PUT",
227
- headers: {
228
- Authorization: yield this._getAuthorizationHeader(),
229
- "X-Fern-Language": "JavaScript",
230
- "X-Fern-SDK-Name": "@trycourier/courier",
231
- "X-Fern-SDK-Version": "v6.3.1",
232
- "X-Fern-Runtime": core.RUNTIME.type,
233
- "X-Fern-Runtime-Version": core.RUNTIME.version,
234
- },
244
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@trycourier/courier", "X-Fern-SDK-Version": "6.4.1", "User-Agent": "@trycourier/courier/6.4.1", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
235
245
  contentType: "application/json",
236
246
  queryParameters: _queryParams,
247
+ requestType: "json",
237
248
  body: _body,
238
249
  timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
239
250
  maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
251
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
240
252
  });
241
253
  if (_response.ok) {
242
- return _response.body;
254
+ return {
255
+ data: _response.body,
256
+ rawResponse: _response.rawResponse,
257
+ };
243
258
  }
244
259
  if (_response.error.reason === "status-code") {
245
260
  switch (_response.error.statusCode) {
246
261
  case 400:
247
- throw new Courier.BadRequestError(_response.error.body);
262
+ throw new Courier.BadRequestError(_response.error.body, _response.rawResponse);
248
263
  default:
249
264
  throw new errors.CourierError({
250
265
  statusCode: _response.error.statusCode,
251
266
  body: _response.error.body,
267
+ rawResponse: _response.rawResponse,
252
268
  });
253
269
  }
254
270
  }
@@ -257,23 +273,25 @@ class Preferences {
257
273
  throw new errors.CourierError({
258
274
  statusCode: _response.error.statusCode,
259
275
  body: _response.error.rawBody,
276
+ rawResponse: _response.rawResponse,
260
277
  });
261
278
  case "timeout":
262
- throw new errors.CourierTimeoutError();
279
+ throw new errors.CourierTimeoutError("Timeout exceeded when calling PUT /users/{user_id}/preferences/{topic_id}.");
263
280
  case "unknown":
264
281
  throw new errors.CourierError({
265
282
  message: _response.error.errorMessage,
283
+ rawResponse: _response.rawResponse,
266
284
  });
267
285
  }
268
286
  });
269
287
  }
270
288
  _getAuthorizationHeader() {
271
- var _a;
272
289
  return __awaiter(this, void 0, void 0, function* () {
290
+ var _a;
273
291
  const bearer = (_a = (yield core.Supplier.get(this._options.authorizationToken))) !== null && _a !== void 0 ? _a : process === null || process === void 0 ? void 0 : process.env["COURIER_AUTH_TOKEN"];
274
292
  if (bearer == null) {
275
293
  throw new errors.CourierError({
276
- message: "Please specify COURIER_AUTH_TOKEN when instantiating the client.",
294
+ message: "Please specify a bearer by either passing it in to the constructor or initializing a COURIER_AUTH_TOKEN environment variable",
277
295
  });
278
296
  }
279
297
  return `Bearer ${bearer}`;