@azure/service-bus 7.10.0-beta.1 → 7.10.0-beta.3

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 (848) hide show
  1. package/README.md +114 -57
  2. package/dist/browser/connectionContext.d.ts +109 -0
  3. package/dist/browser/connectionContext.d.ts.map +1 -0
  4. package/{dist-esm/src → dist/browser}/connectionContext.js +9 -9
  5. package/dist/browser/connectionContext.js.map +1 -0
  6. package/dist/browser/constructorHelpers.d.ts +79 -0
  7. package/dist/browser/constructorHelpers.d.ts.map +1 -0
  8. package/{dist-esm/src → dist/browser}/constructorHelpers.js +5 -5
  9. package/dist/browser/constructorHelpers.js.map +1 -0
  10. package/dist/browser/core/autoLockRenewer.d.ts +58 -0
  11. package/dist/browser/core/autoLockRenewer.d.ts.map +1 -0
  12. package/{dist-esm/src → dist/browser}/core/autoLockRenewer.js +12 -8
  13. package/dist/browser/core/autoLockRenewer.js.map +1 -0
  14. package/dist/browser/core/batchingReceiver.d.ts +120 -0
  15. package/dist/browser/core/batchingReceiver.d.ts.map +1 -0
  16. package/{dist-esm/src → dist/browser}/core/batchingReceiver.js +23 -13
  17. package/dist/browser/core/batchingReceiver.js.map +1 -0
  18. package/dist/browser/core/linkEntity.d.ts +192 -0
  19. package/dist/browser/core/linkEntity.d.ts.map +1 -0
  20. package/{dist-esm/src → dist/browser}/core/linkEntity.js +77 -14
  21. package/dist/browser/core/linkEntity.js.map +1 -0
  22. package/dist/browser/core/managementClient.d.ts +312 -0
  23. package/dist/browser/core/managementClient.d.ts.map +1 -0
  24. package/{dist-esm/src → dist/browser}/core/managementClient.js +37 -33
  25. package/dist/browser/core/managementClient.js.map +1 -0
  26. package/dist/browser/core/messageReceiver.d.ts +147 -0
  27. package/dist/browser/core/messageReceiver.d.ts.map +1 -0
  28. package/{dist-esm/src → dist/browser}/core/messageReceiver.js +36 -14
  29. package/dist/browser/core/messageReceiver.js.map +1 -0
  30. package/dist/browser/core/messageSender.d.ts +93 -0
  31. package/dist/browser/core/messageSender.d.ts.map +1 -0
  32. package/{dist-esm/src → dist/browser}/core/messageSender.js +36 -12
  33. package/dist/browser/core/messageSender.js.map +1 -0
  34. package/dist/browser/core/receiverHelper.d.ts +45 -0
  35. package/dist/browser/core/receiverHelper.d.ts.map +1 -0
  36. package/{dist-esm/src → dist/browser}/core/receiverHelper.js +6 -5
  37. package/dist/browser/core/receiverHelper.js.map +1 -0
  38. package/dist/browser/core/shared.d.ts +34 -0
  39. package/dist/browser/core/shared.d.ts.map +1 -0
  40. package/{dist-esm/src → dist/browser}/core/shared.js +3 -3
  41. package/dist/browser/core/shared.js.map +1 -0
  42. package/dist/browser/core/streamingReceiver.d.ts +142 -0
  43. package/dist/browser/core/streamingReceiver.d.ts.map +1 -0
  44. package/{dist-esm/src → dist/browser}/core/streamingReceiver.js +73 -36
  45. package/dist/browser/core/streamingReceiver.js.map +1 -0
  46. package/dist/browser/dataTransformer.d.ts +77 -0
  47. package/dist/browser/dataTransformer.d.ts.map +1 -0
  48. package/{dist-esm/src → dist/browser}/dataTransformer.js +2 -2
  49. package/dist/browser/dataTransformer.js.map +1 -0
  50. package/dist/browser/diagnostics/instrumentServiceBusMessage.d.ts +50 -0
  51. package/dist/browser/diagnostics/instrumentServiceBusMessage.d.ts.map +1 -0
  52. package/{dist-esm/src → dist/browser}/diagnostics/instrumentServiceBusMessage.js +2 -2
  53. package/dist/browser/diagnostics/instrumentServiceBusMessage.js.map +1 -0
  54. package/dist/browser/diagnostics/tracing.d.ts +21 -0
  55. package/dist/browser/diagnostics/tracing.d.ts.map +1 -0
  56. package/{dist-esm/src → dist/browser}/diagnostics/tracing.js +2 -2
  57. package/dist/browser/diagnostics/tracing.js.map +1 -0
  58. package/dist/browser/experimental/index.d.ts +10 -0
  59. package/dist/browser/experimental/index.d.ts.map +1 -0
  60. package/dist/browser/experimental/index.js +4 -0
  61. package/dist/browser/experimental/index.js.map +1 -0
  62. package/dist/browser/index.d.ts +26 -0
  63. package/dist/browser/index.d.ts.map +1 -0
  64. package/{dist-esm/src → dist/browser}/index.js +5 -5
  65. package/dist/browser/index.js.map +1 -0
  66. package/dist/browser/log.d.ts +70 -0
  67. package/dist/browser/log.d.ts.map +1 -0
  68. package/{dist-esm/src → dist/browser}/log.js +1 -1
  69. package/dist/browser/log.js.map +1 -0
  70. package/dist/browser/models.d.ts +328 -0
  71. package/dist/browser/models.d.ts.map +1 -0
  72. package/dist/browser/models.js +4 -0
  73. package/dist/browser/models.js.map +1 -0
  74. package/dist/browser/modelsToBeSharedWithEventHubs.d.ts +18 -0
  75. package/dist/browser/modelsToBeSharedWithEventHubs.d.ts.map +1 -0
  76. package/dist/browser/modelsToBeSharedWithEventHubs.js +4 -0
  77. package/dist/browser/modelsToBeSharedWithEventHubs.js.map +1 -0
  78. package/dist/browser/package.json +3 -0
  79. package/dist/browser/receivers/receiver.d.ts +299 -0
  80. package/dist/browser/receivers/receiver.d.ts.map +1 -0
  81. package/{dist-esm/src → dist/browser}/receivers/receiver.js +40 -22
  82. package/dist/browser/receivers/receiver.js.map +1 -0
  83. package/dist/browser/receivers/receiverCommon.d.ts +81 -0
  84. package/dist/browser/receivers/receiverCommon.d.ts.map +1 -0
  85. package/{dist-esm/src → dist/browser}/receivers/receiverCommon.js +7 -8
  86. package/dist/browser/receivers/receiverCommon.js.map +1 -0
  87. package/dist/browser/receivers/sessionReceiver.d.ts +189 -0
  88. package/dist/browser/receivers/sessionReceiver.d.ts.map +1 -0
  89. package/{dist-esm/src → dist/browser}/receivers/sessionReceiver.js +32 -24
  90. package/dist/browser/receivers/sessionReceiver.js.map +1 -0
  91. package/dist/browser/sender.d.ts +125 -0
  92. package/dist/browser/sender.d.ts.map +1 -0
  93. package/{dist-esm/src → dist/browser}/sender.js +19 -13
  94. package/dist/browser/sender.js.map +1 -0
  95. package/dist/browser/serializers/namespaceResourceSerializer.d.ts +46 -0
  96. package/dist/browser/serializers/namespaceResourceSerializer.d.ts.map +1 -0
  97. package/{dist-esm/src → dist/browser}/serializers/namespaceResourceSerializer.js +3 -3
  98. package/dist/browser/serializers/namespaceResourceSerializer.js.map +1 -0
  99. package/dist/browser/serializers/queueResourceSerializer.d.ts +461 -0
  100. package/dist/browser/serializers/queueResourceSerializer.d.ts.map +1 -0
  101. package/{dist-esm/src → dist/browser}/serializers/queueResourceSerializer.js +4 -4
  102. package/dist/browser/serializers/queueResourceSerializer.js.map +1 -0
  103. package/dist/browser/serializers/ruleResourceSerializer.d.ts +135 -0
  104. package/dist/browser/serializers/ruleResourceSerializer.d.ts.map +1 -0
  105. package/{dist-esm/src → dist/browser}/serializers/ruleResourceSerializer.js +4 -4
  106. package/dist/browser/serializers/ruleResourceSerializer.js.map +1 -0
  107. package/dist/browser/serializers/subscriptionResourceSerializer.d.ts +396 -0
  108. package/dist/browser/serializers/subscriptionResourceSerializer.d.ts.map +1 -0
  109. package/{dist-esm/src → dist/browser}/serializers/subscriptionResourceSerializer.js +5 -5
  110. package/dist/browser/serializers/subscriptionResourceSerializer.js.map +1 -0
  111. package/dist/browser/serializers/topicResourceSerializer.d.ts +335 -0
  112. package/dist/browser/serializers/topicResourceSerializer.d.ts.map +1 -0
  113. package/{dist-esm/src → dist/browser}/serializers/topicResourceSerializer.js +4 -4
  114. package/dist/browser/serializers/topicResourceSerializer.js.map +1 -0
  115. package/dist/browser/serviceBusAtomManagementClient.d.ts +652 -0
  116. package/dist/browser/serviceBusAtomManagementClient.d.ts.map +1 -0
  117. package/{dist-esm/src → dist/browser}/serviceBusAtomManagementClient.js +78 -109
  118. package/dist/browser/serviceBusAtomManagementClient.js.map +1 -0
  119. package/dist/browser/serviceBusClient.d.ts +231 -0
  120. package/dist/browser/serviceBusClient.d.ts.map +1 -0
  121. package/{dist-esm/src → dist/browser}/serviceBusClient.js +24 -11
  122. package/dist/browser/serviceBusClient.js.map +1 -0
  123. package/dist/browser/serviceBusError.d.ts +119 -0
  124. package/dist/browser/serviceBusError.d.ts.map +1 -0
  125. package/{dist-esm/src → dist/browser}/serviceBusError.js +21 -1
  126. package/dist/browser/serviceBusError.js.map +1 -0
  127. package/dist/browser/serviceBusMessage.d.ts +529 -0
  128. package/dist/browser/serviceBusMessage.d.ts.map +1 -0
  129. package/{dist-esm/src → dist/browser}/serviceBusMessage.js +193 -5
  130. package/dist/browser/serviceBusMessage.js.map +1 -0
  131. package/dist/browser/serviceBusMessageBatch.d.ts +153 -0
  132. package/dist/browser/serviceBusMessageBatch.d.ts.map +1 -0
  133. package/{dist-esm/src → dist/browser}/serviceBusMessageBatch.js +37 -13
  134. package/dist/browser/serviceBusMessageBatch.js.map +1 -0
  135. package/dist/browser/serviceBusRuleManager.d.ts +103 -0
  136. package/dist/browser/serviceBusRuleManager.d.ts.map +1 -0
  137. package/{dist-esm/src → dist/browser}/serviceBusRuleManager.js +16 -13
  138. package/dist/browser/serviceBusRuleManager.js.map +1 -0
  139. package/dist/browser/session/messageSession.d.ts +236 -0
  140. package/dist/browser/session/messageSession.d.ts.map +1 -0
  141. package/{dist-esm/src → dist/browser}/session/messageSession.js +145 -30
  142. package/dist/browser/session/messageSession.js.map +1 -0
  143. package/dist/browser/util/atomXmlHelper.d.ts +56 -0
  144. package/dist/browser/util/atomXmlHelper.d.ts.map +1 -0
  145. package/{dist-esm/src → dist/browser}/util/atomXmlHelper.js +7 -7
  146. package/dist/browser/util/atomXmlHelper.js.map +1 -0
  147. package/dist/browser/util/compat/compatibility.d.ts +109 -0
  148. package/dist/browser/util/compat/compatibility.d.ts.map +1 -0
  149. package/{dist-esm/src → dist/browser}/util/compat/compatibility.js +2 -2
  150. package/dist/browser/util/compat/compatibility.js.map +1 -0
  151. package/dist/browser/util/compat/httpHeaders.d.ts +136 -0
  152. package/dist/browser/util/compat/httpHeaders.d.ts.map +1 -0
  153. package/{dist-esm/src → dist/browser}/util/compat/httpHeaders.js +2 -1
  154. package/dist/browser/util/compat/httpHeaders.js.map +1 -0
  155. package/dist/browser/util/compat/index.d.ts +3 -0
  156. package/dist/browser/util/compat/index.d.ts.map +1 -0
  157. package/dist/browser/util/compat/index.js +5 -0
  158. package/dist/browser/util/compat/index.js.map +1 -0
  159. package/dist/browser/util/connectionStringUtils.d.ts +53 -0
  160. package/dist/browser/util/connectionStringUtils.d.ts.map +1 -0
  161. package/{dist-esm/src → dist/browser}/util/connectionStringUtils.js +8 -2
  162. package/dist/browser/util/connectionStringUtils.js.map +1 -0
  163. package/dist/browser/util/constants.d.ts +322 -0
  164. package/dist/browser/util/constants.d.ts.map +1 -0
  165. package/{dist-esm/src → dist/browser}/util/constants.js +3 -3
  166. package/{dist-esm/src → dist/browser}/util/constants.js.map +1 -1
  167. package/dist/browser/util/crypto-browser.d.mts.map +1 -0
  168. package/dist/browser/util/crypto-browser.mjs.map +1 -0
  169. package/dist/browser/util/crypto.d.ts +5 -0
  170. package/{dist-esm/src/util/crypto.browser.js → dist/browser/util/crypto.js} +2 -4
  171. package/dist/browser/util/errors.d.ts +130 -0
  172. package/dist/browser/util/errors.d.ts.map +1 -0
  173. package/{dist-esm/src → dist/browser}/util/errors.js +4 -4
  174. package/dist/browser/util/errors.js.map +1 -0
  175. package/dist/browser/util/parseUrl-browser.d.mts.map +1 -0
  176. package/dist/browser/util/parseUrl-browser.mjs.map +1 -0
  177. package/dist/browser/util/parseUrl.d.ts +5 -0
  178. package/{dist-esm/src/util/parseUrl.browser.js → dist/browser/util/parseUrl.js} +1 -3
  179. package/dist/browser/util/runtimeInfo-browser.d.mts.map +1 -0
  180. package/dist/browser/util/runtimeInfo-browser.mjs.map +1 -0
  181. package/dist/browser/util/runtimeInfo.d.ts +7 -0
  182. package/{dist-esm/src/util/runtimeInfo.browser.js → dist/browser/util/runtimeInfo.js} +2 -2
  183. package/dist/browser/util/sasServiceClientCredentials.d.ts +31 -0
  184. package/dist/browser/util/sasServiceClientCredentials.d.ts.map +1 -0
  185. package/{dist-esm/src → dist/browser}/util/sasServiceClientCredentials.js +9 -3
  186. package/dist/browser/util/sasServiceClientCredentials.js.map +1 -0
  187. package/dist/browser/util/semaphore.d.ts +38 -0
  188. package/dist/browser/util/semaphore.d.ts.map +1 -0
  189. package/{dist-esm/src → dist/browser}/util/semaphore.js +7 -3
  190. package/dist/browser/util/semaphore.js.map +1 -0
  191. package/dist/browser/util/typeGuards.d.ts +8 -0
  192. package/dist/browser/util/typeGuards.d.ts.map +1 -0
  193. package/{dist-esm/src → dist/browser}/util/typeGuards.js +2 -2
  194. package/dist/browser/util/typeGuards.js.map +1 -0
  195. package/dist/browser/util/utils.d.ts +247 -0
  196. package/dist/browser/util/utils.d.ts.map +1 -0
  197. package/{dist-esm/src → dist/browser}/util/utils.js +5 -7
  198. package/dist/browser/util/utils.js.map +1 -0
  199. package/dist/commonjs/connectionContext.d.ts +109 -0
  200. package/dist/commonjs/connectionContext.d.ts.map +1 -0
  201. package/dist/commonjs/connectionContext.js +358 -0
  202. package/dist/commonjs/connectionContext.js.map +1 -0
  203. package/dist/commonjs/constructorHelpers.d.ts +79 -0
  204. package/dist/commonjs/constructorHelpers.d.ts.map +1 -0
  205. package/dist/commonjs/constructorHelpers.js +103 -0
  206. package/dist/commonjs/constructorHelpers.js.map +1 -0
  207. package/dist/commonjs/core/autoLockRenewer.d.ts +58 -0
  208. package/dist/commonjs/core/autoLockRenewer.d.ts.map +1 -0
  209. package/dist/commonjs/core/autoLockRenewer.js +178 -0
  210. package/dist/commonjs/core/autoLockRenewer.js.map +1 -0
  211. package/dist/commonjs/core/batchingReceiver.d.ts +120 -0
  212. package/dist/commonjs/core/batchingReceiver.d.ts.map +1 -0
  213. package/dist/commonjs/core/batchingReceiver.js +405 -0
  214. package/dist/commonjs/core/batchingReceiver.js.map +1 -0
  215. package/dist/commonjs/core/linkEntity.d.ts +192 -0
  216. package/dist/commonjs/core/linkEntity.d.ts.map +1 -0
  217. package/dist/commonjs/core/linkEntity.js +344 -0
  218. package/dist/commonjs/core/linkEntity.js.map +1 -0
  219. package/dist/commonjs/core/managementClient.d.ts +312 -0
  220. package/dist/commonjs/core/managementClient.d.ts.map +1 -0
  221. package/dist/commonjs/core/managementClient.js +1078 -0
  222. package/dist/commonjs/core/managementClient.js.map +1 -0
  223. package/dist/commonjs/core/messageReceiver.d.ts +147 -0
  224. package/dist/commonjs/core/messageReceiver.d.ts.map +1 -0
  225. package/dist/commonjs/core/messageReceiver.js +169 -0
  226. package/dist/commonjs/core/messageReceiver.js.map +1 -0
  227. package/dist/commonjs/core/messageSender.d.ts +93 -0
  228. package/dist/commonjs/core/messageSender.d.ts.map +1 -0
  229. package/dist/commonjs/core/messageSender.js +307 -0
  230. package/dist/commonjs/core/messageSender.js.map +1 -0
  231. package/dist/commonjs/core/receiverHelper.d.ts +45 -0
  232. package/dist/commonjs/core/receiverHelper.d.ts.map +1 -0
  233. package/dist/commonjs/core/receiverHelper.js +123 -0
  234. package/dist/commonjs/core/receiverHelper.js.map +1 -0
  235. package/dist/commonjs/core/shared.d.ts +34 -0
  236. package/dist/commonjs/core/shared.d.ts.map +1 -0
  237. package/dist/commonjs/core/shared.js +70 -0
  238. package/dist/commonjs/core/shared.js.map +1 -0
  239. package/dist/commonjs/core/streamingReceiver.d.ts +142 -0
  240. package/dist/commonjs/core/streamingReceiver.d.ts.map +1 -0
  241. package/dist/commonjs/core/streamingReceiver.js +526 -0
  242. package/dist/commonjs/core/streamingReceiver.js.map +1 -0
  243. package/dist/commonjs/dataTransformer.d.ts +77 -0
  244. package/dist/commonjs/dataTransformer.d.ts.map +1 -0
  245. package/dist/commonjs/dataTransformer.js +169 -0
  246. package/dist/commonjs/dataTransformer.js.map +1 -0
  247. package/dist/commonjs/diagnostics/instrumentServiceBusMessage.d.ts +50 -0
  248. package/dist/commonjs/diagnostics/instrumentServiceBusMessage.d.ts.map +1 -0
  249. package/dist/commonjs/diagnostics/instrumentServiceBusMessage.js +107 -0
  250. package/dist/commonjs/diagnostics/instrumentServiceBusMessage.js.map +1 -0
  251. package/dist/commonjs/diagnostics/tracing.d.ts +21 -0
  252. package/dist/commonjs/diagnostics/tracing.d.ts.map +1 -0
  253. package/dist/commonjs/diagnostics/tracing.js +41 -0
  254. package/dist/commonjs/diagnostics/tracing.js.map +1 -0
  255. package/dist/commonjs/experimental/index.d.ts +10 -0
  256. package/dist/commonjs/experimental/index.d.ts.map +1 -0
  257. package/dist/commonjs/experimental/index.js +5 -0
  258. package/dist/commonjs/experimental/index.js.map +1 -0
  259. package/dist/commonjs/index.d.ts +26 -0
  260. package/dist/commonjs/index.d.ts.map +1 -0
  261. package/dist/commonjs/index.js +22 -0
  262. package/dist/commonjs/index.js.map +1 -0
  263. package/dist/commonjs/log.d.ts +70 -0
  264. package/dist/commonjs/log.d.ts.map +1 -0
  265. package/dist/commonjs/log.js +94 -0
  266. package/dist/commonjs/log.js.map +1 -0
  267. package/dist/commonjs/models.d.ts +328 -0
  268. package/dist/commonjs/models.d.ts.map +1 -0
  269. package/dist/commonjs/models.js +5 -0
  270. package/dist/commonjs/models.js.map +1 -0
  271. package/dist/commonjs/modelsToBeSharedWithEventHubs.d.ts +18 -0
  272. package/dist/commonjs/modelsToBeSharedWithEventHubs.d.ts.map +1 -0
  273. package/dist/commonjs/modelsToBeSharedWithEventHubs.js +5 -0
  274. package/dist/commonjs/modelsToBeSharedWithEventHubs.js.map +1 -0
  275. package/dist/commonjs/package.json +3 -0
  276. package/dist/commonjs/receivers/receiver.d.ts +299 -0
  277. package/dist/commonjs/receivers/receiver.d.ts.map +1 -0
  278. package/dist/commonjs/receivers/receiver.js +383 -0
  279. package/dist/commonjs/receivers/receiver.js.map +1 -0
  280. package/dist/commonjs/receivers/receiverCommon.d.ts +81 -0
  281. package/dist/commonjs/receivers/receiverCommon.d.ts.map +1 -0
  282. package/dist/commonjs/receivers/receiverCommon.js +269 -0
  283. package/dist/commonjs/receivers/receiverCommon.js.map +1 -0
  284. package/dist/commonjs/receivers/sessionReceiver.d.ts +189 -0
  285. package/dist/commonjs/receivers/sessionReceiver.d.ts.map +1 -0
  286. package/dist/commonjs/receivers/sessionReceiver.js +432 -0
  287. package/dist/commonjs/receivers/sessionReceiver.js.map +1 -0
  288. package/dist/commonjs/sender.d.ts +125 -0
  289. package/dist/commonjs/sender.d.ts.map +1 -0
  290. package/dist/commonjs/sender.js +191 -0
  291. package/dist/commonjs/sender.js.map +1 -0
  292. package/dist/commonjs/serializers/namespaceResourceSerializer.d.ts +46 -0
  293. package/dist/commonjs/serializers/namespaceResourceSerializer.d.ts.map +1 -0
  294. package/dist/commonjs/serializers/namespaceResourceSerializer.js +39 -0
  295. package/dist/commonjs/serializers/namespaceResourceSerializer.js.map +1 -0
  296. package/dist/commonjs/serializers/queueResourceSerializer.d.ts +461 -0
  297. package/dist/commonjs/serializers/queueResourceSerializer.d.ts.map +1 -0
  298. package/dist/commonjs/serializers/queueResourceSerializer.js +107 -0
  299. package/dist/commonjs/serializers/queueResourceSerializer.js.map +1 -0
  300. package/dist/commonjs/serializers/ruleResourceSerializer.d.ts +135 -0
  301. package/dist/commonjs/serializers/ruleResourceSerializer.d.ts.map +1 -0
  302. package/dist/commonjs/serializers/ruleResourceSerializer.js +287 -0
  303. package/dist/commonjs/serializers/ruleResourceSerializer.js.map +1 -0
  304. package/dist/commonjs/serializers/subscriptionResourceSerializer.d.ts +396 -0
  305. package/dist/commonjs/serializers/subscriptionResourceSerializer.d.ts.map +1 -0
  306. package/dist/commonjs/serializers/subscriptionResourceSerializer.js +103 -0
  307. package/dist/commonjs/serializers/subscriptionResourceSerializer.js.map +1 -0
  308. package/dist/commonjs/serializers/topicResourceSerializer.d.ts +335 -0
  309. package/dist/commonjs/serializers/topicResourceSerializer.d.ts.map +1 -0
  310. package/dist/commonjs/serializers/topicResourceSerializer.js +97 -0
  311. package/dist/commonjs/serializers/topicResourceSerializer.js.map +1 -0
  312. package/dist/commonjs/serviceBusAtomManagementClient.d.ts +652 -0
  313. package/dist/commonjs/serviceBusAtomManagementClient.d.ts.map +1 -0
  314. package/dist/commonjs/serviceBusAtomManagementClient.js +1648 -0
  315. package/dist/commonjs/serviceBusAtomManagementClient.js.map +1 -0
  316. package/dist/commonjs/serviceBusClient.d.ts +231 -0
  317. package/dist/commonjs/serviceBusClient.d.ts.map +1 -0
  318. package/dist/commonjs/serviceBusClient.js +221 -0
  319. package/dist/commonjs/serviceBusClient.js.map +1 -0
  320. package/dist/commonjs/serviceBusError.d.ts +119 -0
  321. package/dist/commonjs/serviceBusError.d.ts.map +1 -0
  322. package/dist/commonjs/serviceBusError.js +109 -0
  323. package/dist/commonjs/serviceBusError.js.map +1 -0
  324. package/dist/commonjs/serviceBusMessage.d.ts +529 -0
  325. package/dist/commonjs/serviceBusMessage.d.ts.map +1 -0
  326. package/dist/commonjs/serviceBusMessage.js +611 -0
  327. package/dist/commonjs/serviceBusMessage.js.map +1 -0
  328. package/dist/commonjs/serviceBusMessageBatch.d.ts +153 -0
  329. package/dist/commonjs/serviceBusMessageBatch.d.ts.map +1 -0
  330. package/dist/commonjs/serviceBusMessageBatch.js +196 -0
  331. package/dist/commonjs/serviceBusMessageBatch.js.map +1 -0
  332. package/dist/commonjs/serviceBusRuleManager.d.ts +103 -0
  333. package/dist/commonjs/serviceBusRuleManager.d.ts.map +1 -0
  334. package/dist/commonjs/serviceBusRuleManager.js +153 -0
  335. package/dist/commonjs/serviceBusRuleManager.js.map +1 -0
  336. package/dist/commonjs/session/messageSession.d.ts +236 -0
  337. package/dist/commonjs/session/messageSession.d.ts.map +1 -0
  338. package/dist/commonjs/session/messageSession.js +759 -0
  339. package/dist/commonjs/session/messageSession.js.map +1 -0
  340. package/dist/commonjs/tsdoc-metadata.json +11 -0
  341. package/dist/commonjs/util/atomXmlHelper.d.ts +56 -0
  342. package/dist/commonjs/util/atomXmlHelper.d.ts.map +1 -0
  343. package/dist/commonjs/util/atomXmlHelper.js +386 -0
  344. package/dist/commonjs/util/atomXmlHelper.js.map +1 -0
  345. package/dist/commonjs/util/compat/compatibility.d.ts +109 -0
  346. package/dist/commonjs/util/compat/compatibility.d.ts.map +1 -0
  347. package/dist/commonjs/util/compat/compatibility.js +30 -0
  348. package/dist/commonjs/util/compat/compatibility.js.map +1 -0
  349. package/dist/commonjs/util/compat/httpHeaders.d.ts +136 -0
  350. package/dist/commonjs/util/compat/httpHeaders.d.ts.map +1 -0
  351. package/dist/commonjs/util/compat/httpHeaders.js +157 -0
  352. package/dist/commonjs/util/compat/httpHeaders.js.map +1 -0
  353. package/dist/commonjs/util/compat/index.d.ts +3 -0
  354. package/dist/commonjs/util/compat/index.d.ts.map +1 -0
  355. package/dist/commonjs/util/compat/index.js +8 -0
  356. package/dist/commonjs/util/compat/index.js.map +1 -0
  357. package/dist/commonjs/util/connectionStringUtils.d.ts +53 -0
  358. package/dist/commonjs/util/connectionStringUtils.d.ts.map +1 -0
  359. package/dist/commonjs/util/connectionStringUtils.js +51 -0
  360. package/dist/commonjs/util/connectionStringUtils.js.map +1 -0
  361. package/dist/commonjs/util/constants.d.ts +322 -0
  362. package/dist/commonjs/util/constants.d.ts.map +1 -0
  363. package/dist/commonjs/util/constants.js +327 -0
  364. package/dist/commonjs/util/constants.js.map +1 -0
  365. package/dist/commonjs/util/crypto.d.ts +5 -0
  366. package/dist/commonjs/util/crypto.d.ts.map +1 -0
  367. package/dist/commonjs/util/crypto.js +15 -0
  368. package/dist/commonjs/util/crypto.js.map +1 -0
  369. package/dist/commonjs/util/errors.d.ts +130 -0
  370. package/dist/commonjs/util/errors.d.ts.map +1 -0
  371. package/dist/commonjs/util/errors.js +236 -0
  372. package/dist/commonjs/util/errors.js.map +1 -0
  373. package/dist/commonjs/util/parseUrl.d.ts +5 -0
  374. package/dist/commonjs/util/parseUrl.d.ts.map +1 -0
  375. package/dist/commonjs/util/parseUrl.js +13 -0
  376. package/dist/commonjs/util/parseUrl.js.map +1 -0
  377. package/dist/commonjs/util/runtimeInfo.d.ts +7 -0
  378. package/dist/commonjs/util/runtimeInfo.d.ts.map +1 -0
  379. package/dist/commonjs/util/runtimeInfo.js +24 -0
  380. package/dist/commonjs/util/runtimeInfo.js.map +1 -0
  381. package/dist/commonjs/util/sasServiceClientCredentials.d.ts +31 -0
  382. package/dist/commonjs/util/sasServiceClientCredentials.d.ts.map +1 -0
  383. package/dist/commonjs/util/sasServiceClientCredentials.js +56 -0
  384. package/dist/commonjs/util/sasServiceClientCredentials.js.map +1 -0
  385. package/dist/commonjs/util/semaphore.d.ts +38 -0
  386. package/dist/commonjs/util/semaphore.d.ts.map +1 -0
  387. package/dist/commonjs/util/semaphore.js +85 -0
  388. package/dist/commonjs/util/semaphore.js.map +1 -0
  389. package/dist/commonjs/util/typeGuards.d.ts +8 -0
  390. package/dist/commonjs/util/typeGuards.d.ts.map +1 -0
  391. package/dist/commonjs/util/typeGuards.js +15 -0
  392. package/dist/commonjs/util/typeGuards.js.map +1 -0
  393. package/dist/commonjs/util/utils.d.ts +247 -0
  394. package/dist/commonjs/util/utils.d.ts.map +1 -0
  395. package/dist/commonjs/util/utils.js +524 -0
  396. package/dist/commonjs/util/utils.js.map +1 -0
  397. package/dist/esm/connectionContext.d.ts +109 -0
  398. package/dist/esm/connectionContext.d.ts.map +1 -0
  399. package/dist/esm/connectionContext.js +355 -0
  400. package/dist/esm/connectionContext.js.map +1 -0
  401. package/dist/esm/constructorHelpers.d.ts +79 -0
  402. package/dist/esm/constructorHelpers.d.ts.map +1 -0
  403. package/dist/esm/constructorHelpers.js +96 -0
  404. package/dist/esm/constructorHelpers.js.map +1 -0
  405. package/dist/esm/core/autoLockRenewer.d.ts +58 -0
  406. package/dist/esm/core/autoLockRenewer.d.ts.map +1 -0
  407. package/dist/esm/core/autoLockRenewer.js +174 -0
  408. package/dist/esm/core/autoLockRenewer.js.map +1 -0
  409. package/dist/esm/core/batchingReceiver.d.ts +120 -0
  410. package/dist/esm/core/batchingReceiver.d.ts.map +1 -0
  411. package/dist/esm/core/batchingReceiver.js +399 -0
  412. package/dist/esm/core/batchingReceiver.js.map +1 -0
  413. package/dist/esm/core/linkEntity.d.ts +192 -0
  414. package/dist/esm/core/linkEntity.d.ts.map +1 -0
  415. package/dist/esm/core/linkEntity.js +340 -0
  416. package/dist/esm/core/linkEntity.js.map +1 -0
  417. package/dist/esm/core/managementClient.d.ts +312 -0
  418. package/dist/esm/core/managementClient.d.ts.map +1 -0
  419. package/dist/esm/core/managementClient.js +1072 -0
  420. package/dist/esm/core/managementClient.js.map +1 -0
  421. package/dist/esm/core/messageReceiver.d.ts +147 -0
  422. package/dist/esm/core/messageReceiver.d.ts.map +1 -0
  423. package/dist/esm/core/messageReceiver.js +165 -0
  424. package/dist/esm/core/messageReceiver.js.map +1 -0
  425. package/dist/esm/core/messageSender.d.ts +93 -0
  426. package/dist/esm/core/messageSender.d.ts.map +1 -0
  427. package/dist/esm/core/messageSender.js +303 -0
  428. package/dist/esm/core/messageSender.js.map +1 -0
  429. package/dist/esm/core/receiverHelper.d.ts +45 -0
  430. package/dist/esm/core/receiverHelper.d.ts.map +1 -0
  431. package/dist/esm/core/receiverHelper.js +119 -0
  432. package/dist/esm/core/receiverHelper.js.map +1 -0
  433. package/dist/esm/core/shared.d.ts +34 -0
  434. package/dist/esm/core/shared.d.ts.map +1 -0
  435. package/dist/esm/core/shared.js +66 -0
  436. package/dist/esm/core/shared.js.map +1 -0
  437. package/dist/esm/core/streamingReceiver.d.ts +142 -0
  438. package/dist/esm/core/streamingReceiver.d.ts.map +1 -0
  439. package/dist/esm/core/streamingReceiver.js +522 -0
  440. package/dist/esm/core/streamingReceiver.js.map +1 -0
  441. package/dist/esm/dataTransformer.d.ts +77 -0
  442. package/dist/esm/dataTransformer.d.ts.map +1 -0
  443. package/dist/esm/dataTransformer.js +163 -0
  444. package/dist/esm/dataTransformer.js.map +1 -0
  445. package/dist/esm/diagnostics/instrumentServiceBusMessage.d.ts +50 -0
  446. package/dist/esm/diagnostics/instrumentServiceBusMessage.d.ts.map +1 -0
  447. package/dist/esm/diagnostics/instrumentServiceBusMessage.js +101 -0
  448. package/dist/esm/diagnostics/instrumentServiceBusMessage.js.map +1 -0
  449. package/dist/esm/diagnostics/tracing.d.ts +21 -0
  450. package/dist/esm/diagnostics/tracing.d.ts.map +1 -0
  451. package/dist/esm/diagnostics/tracing.js +37 -0
  452. package/dist/esm/diagnostics/tracing.js.map +1 -0
  453. package/dist/esm/experimental/index.d.ts +10 -0
  454. package/dist/esm/experimental/index.d.ts.map +1 -0
  455. package/dist/esm/experimental/index.js +4 -0
  456. package/dist/esm/experimental/index.js.map +1 -0
  457. package/dist/esm/index.d.ts +26 -0
  458. package/dist/esm/index.d.ts.map +1 -0
  459. package/dist/esm/index.js +10 -0
  460. package/dist/esm/index.js.map +1 -0
  461. package/dist/esm/log.d.ts +70 -0
  462. package/dist/esm/log.d.ts.map +1 -0
  463. package/dist/esm/log.js +89 -0
  464. package/dist/esm/log.js.map +1 -0
  465. package/dist/esm/models.d.ts +328 -0
  466. package/dist/esm/models.d.ts.map +1 -0
  467. package/dist/esm/models.js +4 -0
  468. package/dist/esm/models.js.map +1 -0
  469. package/dist/esm/modelsToBeSharedWithEventHubs.d.ts +18 -0
  470. package/dist/esm/modelsToBeSharedWithEventHubs.d.ts.map +1 -0
  471. package/dist/esm/modelsToBeSharedWithEventHubs.js +4 -0
  472. package/dist/esm/modelsToBeSharedWithEventHubs.js.map +1 -0
  473. package/dist/esm/package.json +3 -0
  474. package/dist/esm/receivers/receiver.d.ts +299 -0
  475. package/dist/esm/receivers/receiver.d.ts.map +1 -0
  476. package/dist/esm/receivers/receiver.js +379 -0
  477. package/dist/esm/receivers/receiver.js.map +1 -0
  478. package/dist/esm/receivers/receiverCommon.d.ts +81 -0
  479. package/dist/esm/receivers/receiverCommon.d.ts.map +1 -0
  480. package/dist/esm/receivers/receiverCommon.js +257 -0
  481. package/dist/esm/receivers/receiverCommon.js.map +1 -0
  482. package/dist/esm/receivers/sessionReceiver.d.ts +189 -0
  483. package/dist/esm/receivers/sessionReceiver.d.ts.map +1 -0
  484. package/dist/esm/receivers/sessionReceiver.js +428 -0
  485. package/dist/esm/receivers/sessionReceiver.js.map +1 -0
  486. package/dist/esm/sender.d.ts +125 -0
  487. package/dist/esm/sender.d.ts.map +1 -0
  488. package/dist/esm/sender.js +186 -0
  489. package/dist/esm/sender.js.map +1 -0
  490. package/dist/esm/serializers/namespaceResourceSerializer.d.ts +46 -0
  491. package/dist/esm/serializers/namespaceResourceSerializer.d.ts.map +1 -0
  492. package/dist/esm/serializers/namespaceResourceSerializer.js +34 -0
  493. package/dist/esm/serializers/namespaceResourceSerializer.js.map +1 -0
  494. package/dist/esm/serializers/queueResourceSerializer.d.ts +461 -0
  495. package/dist/esm/serializers/queueResourceSerializer.d.ts.map +1 -0
  496. package/dist/esm/serializers/queueResourceSerializer.js +99 -0
  497. package/dist/esm/serializers/queueResourceSerializer.js.map +1 -0
  498. package/dist/esm/serializers/ruleResourceSerializer.d.ts +135 -0
  499. package/dist/esm/serializers/ruleResourceSerializer.d.ts.map +1 -0
  500. package/dist/esm/serializers/ruleResourceSerializer.js +278 -0
  501. package/dist/esm/serializers/ruleResourceSerializer.js.map +1 -0
  502. package/dist/esm/serializers/subscriptionResourceSerializer.d.ts +396 -0
  503. package/dist/esm/serializers/subscriptionResourceSerializer.d.ts.map +1 -0
  504. package/dist/esm/serializers/subscriptionResourceSerializer.js +95 -0
  505. package/dist/esm/serializers/subscriptionResourceSerializer.js.map +1 -0
  506. package/dist/esm/serializers/topicResourceSerializer.d.ts +335 -0
  507. package/dist/esm/serializers/topicResourceSerializer.d.ts.map +1 -0
  508. package/dist/esm/serializers/topicResourceSerializer.js +89 -0
  509. package/dist/esm/serializers/topicResourceSerializer.js.map +1 -0
  510. package/dist/esm/serviceBusAtomManagementClient.d.ts +652 -0
  511. package/dist/esm/serviceBusAtomManagementClient.d.ts.map +1 -0
  512. package/dist/esm/serviceBusAtomManagementClient.js +1643 -0
  513. package/dist/esm/serviceBusAtomManagementClient.js.map +1 -0
  514. package/dist/esm/serviceBusClient.d.ts +231 -0
  515. package/dist/esm/serviceBusClient.d.ts.map +1 -0
  516. package/dist/esm/serviceBusClient.js +216 -0
  517. package/dist/esm/serviceBusClient.js.map +1 -0
  518. package/dist/esm/serviceBusError.d.ts +119 -0
  519. package/dist/esm/serviceBusError.d.ts.map +1 -0
  520. package/dist/esm/serviceBusError.js +103 -0
  521. package/dist/esm/serviceBusError.js.map +1 -0
  522. package/dist/esm/serviceBusMessage.d.ts +529 -0
  523. package/dist/esm/serviceBusMessage.d.ts.map +1 -0
  524. package/dist/esm/serviceBusMessage.js +598 -0
  525. package/dist/esm/serviceBusMessage.js.map +1 -0
  526. package/dist/esm/serviceBusMessageBatch.d.ts +153 -0
  527. package/dist/esm/serviceBusMessageBatch.d.ts.map +1 -0
  528. package/dist/esm/serviceBusMessageBatch.js +192 -0
  529. package/dist/esm/serviceBusMessageBatch.js.map +1 -0
  530. package/dist/esm/serviceBusRuleManager.d.ts +103 -0
  531. package/dist/esm/serviceBusRuleManager.d.ts.map +1 -0
  532. package/dist/esm/serviceBusRuleManager.js +149 -0
  533. package/dist/esm/serviceBusRuleManager.js.map +1 -0
  534. package/dist/esm/session/messageSession.d.ts +236 -0
  535. package/dist/esm/session/messageSession.d.ts.map +1 -0
  536. package/dist/esm/session/messageSession.js +755 -0
  537. package/dist/esm/session/messageSession.js.map +1 -0
  538. package/dist/esm/util/atomXmlHelper.d.ts +56 -0
  539. package/dist/esm/util/atomXmlHelper.d.ts.map +1 -0
  540. package/dist/esm/util/atomXmlHelper.js +378 -0
  541. package/dist/esm/util/atomXmlHelper.js.map +1 -0
  542. package/dist/esm/util/compat/compatibility.d.ts +109 -0
  543. package/dist/esm/util/compat/compatibility.d.ts.map +1 -0
  544. package/dist/esm/util/compat/compatibility.js +27 -0
  545. package/dist/esm/util/compat/compatibility.js.map +1 -0
  546. package/dist/esm/util/compat/httpHeaders.d.ts +136 -0
  547. package/dist/esm/util/compat/httpHeaders.d.ts.map +1 -0
  548. package/dist/esm/util/compat/httpHeaders.js +152 -0
  549. package/dist/esm/util/compat/httpHeaders.js.map +1 -0
  550. package/dist/esm/util/compat/index.d.ts +3 -0
  551. package/dist/esm/util/compat/index.d.ts.map +1 -0
  552. package/dist/esm/util/compat/index.js +5 -0
  553. package/dist/esm/util/compat/index.js.map +1 -0
  554. package/dist/esm/util/connectionStringUtils.d.ts +53 -0
  555. package/dist/esm/util/connectionStringUtils.d.ts.map +1 -0
  556. package/dist/esm/util/connectionStringUtils.js +48 -0
  557. package/dist/esm/util/connectionStringUtils.js.map +1 -0
  558. package/dist/esm/util/constants.d.ts +322 -0
  559. package/dist/esm/util/constants.d.ts.map +1 -0
  560. package/dist/esm/util/constants.js +324 -0
  561. package/dist/esm/util/constants.js.map +1 -0
  562. package/dist/esm/util/crypto.d.ts +5 -0
  563. package/dist/esm/util/crypto.d.ts.map +1 -0
  564. package/{dist-esm/src → dist/esm}/util/crypto.js +1 -3
  565. package/dist/esm/util/crypto.js.map +1 -0
  566. package/dist/esm/util/errors.d.ts +130 -0
  567. package/dist/esm/util/errors.d.ts.map +1 -0
  568. package/dist/esm/util/errors.js +220 -0
  569. package/dist/esm/util/errors.js.map +1 -0
  570. package/dist/esm/util/parseUrl.d.ts +5 -0
  571. package/dist/esm/util/parseUrl.d.ts.map +1 -0
  572. package/{dist-esm/src → dist/esm}/util/parseUrl.js +0 -6
  573. package/dist/esm/util/parseUrl.js.map +1 -0
  574. package/dist/esm/util/runtimeInfo.d.ts +7 -0
  575. package/dist/esm/util/runtimeInfo.d.ts.map +1 -0
  576. package/{dist-esm/src → dist/esm}/util/runtimeInfo.js +2 -2
  577. package/dist/esm/util/runtimeInfo.js.map +1 -0
  578. package/dist/esm/util/sasServiceClientCredentials.d.ts +31 -0
  579. package/dist/esm/util/sasServiceClientCredentials.d.ts.map +1 -0
  580. package/dist/esm/util/sasServiceClientCredentials.js +52 -0
  581. package/dist/esm/util/sasServiceClientCredentials.js.map +1 -0
  582. package/dist/esm/util/semaphore.d.ts +38 -0
  583. package/dist/esm/util/semaphore.d.ts.map +1 -0
  584. package/dist/esm/util/semaphore.js +81 -0
  585. package/dist/esm/util/semaphore.js.map +1 -0
  586. package/dist/esm/util/typeGuards.d.ts +8 -0
  587. package/dist/esm/util/typeGuards.d.ts.map +1 -0
  588. package/dist/esm/util/typeGuards.js +12 -0
  589. package/dist/esm/util/typeGuards.js.map +1 -0
  590. package/dist/esm/util/utils.d.ts +247 -0
  591. package/dist/esm/util/utils.d.ts.map +1 -0
  592. package/dist/esm/util/utils.js +496 -0
  593. package/dist/esm/util/utils.js.map +1 -0
  594. package/dist/react-native/connectionContext.d.ts +109 -0
  595. package/dist/react-native/connectionContext.d.ts.map +1 -0
  596. package/dist/react-native/connectionContext.js +355 -0
  597. package/dist/react-native/connectionContext.js.map +1 -0
  598. package/dist/react-native/constructorHelpers.d.ts +79 -0
  599. package/dist/react-native/constructorHelpers.d.ts.map +1 -0
  600. package/dist/react-native/constructorHelpers.js +96 -0
  601. package/dist/react-native/constructorHelpers.js.map +1 -0
  602. package/dist/react-native/core/autoLockRenewer.d.ts +58 -0
  603. package/dist/react-native/core/autoLockRenewer.d.ts.map +1 -0
  604. package/dist/react-native/core/autoLockRenewer.js +174 -0
  605. package/dist/react-native/core/autoLockRenewer.js.map +1 -0
  606. package/dist/react-native/core/batchingReceiver.d.ts +120 -0
  607. package/dist/react-native/core/batchingReceiver.d.ts.map +1 -0
  608. package/dist/react-native/core/batchingReceiver.js +399 -0
  609. package/dist/react-native/core/batchingReceiver.js.map +1 -0
  610. package/dist/react-native/core/linkEntity.d.ts +192 -0
  611. package/dist/react-native/core/linkEntity.d.ts.map +1 -0
  612. package/dist/react-native/core/linkEntity.js +340 -0
  613. package/dist/react-native/core/linkEntity.js.map +1 -0
  614. package/dist/react-native/core/managementClient.d.ts +312 -0
  615. package/dist/react-native/core/managementClient.d.ts.map +1 -0
  616. package/dist/react-native/core/managementClient.js +1072 -0
  617. package/dist/react-native/core/managementClient.js.map +1 -0
  618. package/dist/react-native/core/messageReceiver.d.ts +147 -0
  619. package/dist/react-native/core/messageReceiver.d.ts.map +1 -0
  620. package/dist/react-native/core/messageReceiver.js +165 -0
  621. package/dist/react-native/core/messageReceiver.js.map +1 -0
  622. package/dist/react-native/core/messageSender.d.ts +93 -0
  623. package/dist/react-native/core/messageSender.d.ts.map +1 -0
  624. package/dist/react-native/core/messageSender.js +303 -0
  625. package/dist/react-native/core/messageSender.js.map +1 -0
  626. package/dist/react-native/core/receiverHelper.d.ts +45 -0
  627. package/dist/react-native/core/receiverHelper.d.ts.map +1 -0
  628. package/dist/react-native/core/receiverHelper.js +119 -0
  629. package/dist/react-native/core/receiverHelper.js.map +1 -0
  630. package/dist/react-native/core/shared.d.ts +34 -0
  631. package/dist/react-native/core/shared.d.ts.map +1 -0
  632. package/dist/react-native/core/shared.js +66 -0
  633. package/dist/react-native/core/shared.js.map +1 -0
  634. package/dist/react-native/core/streamingReceiver.d.ts +142 -0
  635. package/dist/react-native/core/streamingReceiver.d.ts.map +1 -0
  636. package/dist/react-native/core/streamingReceiver.js +522 -0
  637. package/dist/react-native/core/streamingReceiver.js.map +1 -0
  638. package/dist/react-native/dataTransformer.d.ts +77 -0
  639. package/dist/react-native/dataTransformer.d.ts.map +1 -0
  640. package/dist/react-native/dataTransformer.js +163 -0
  641. package/dist/react-native/dataTransformer.js.map +1 -0
  642. package/dist/react-native/diagnostics/instrumentServiceBusMessage.d.ts +50 -0
  643. package/dist/react-native/diagnostics/instrumentServiceBusMessage.d.ts.map +1 -0
  644. package/dist/react-native/diagnostics/instrumentServiceBusMessage.js +101 -0
  645. package/dist/react-native/diagnostics/instrumentServiceBusMessage.js.map +1 -0
  646. package/dist/react-native/diagnostics/tracing.d.ts +21 -0
  647. package/dist/react-native/diagnostics/tracing.d.ts.map +1 -0
  648. package/dist/react-native/diagnostics/tracing.js +37 -0
  649. package/dist/react-native/diagnostics/tracing.js.map +1 -0
  650. package/dist/react-native/experimental/index.d.ts +10 -0
  651. package/dist/react-native/experimental/index.d.ts.map +1 -0
  652. package/dist/react-native/experimental/index.js +4 -0
  653. package/dist/react-native/experimental/index.js.map +1 -0
  654. package/dist/react-native/index.d.ts +26 -0
  655. package/dist/react-native/index.d.ts.map +1 -0
  656. package/dist/react-native/index.js +10 -0
  657. package/dist/react-native/index.js.map +1 -0
  658. package/dist/react-native/log.d.ts +70 -0
  659. package/dist/react-native/log.d.ts.map +1 -0
  660. package/dist/react-native/log.js +89 -0
  661. package/dist/react-native/log.js.map +1 -0
  662. package/dist/react-native/models.d.ts +328 -0
  663. package/dist/react-native/models.d.ts.map +1 -0
  664. package/dist/react-native/models.js +4 -0
  665. package/dist/react-native/models.js.map +1 -0
  666. package/dist/react-native/modelsToBeSharedWithEventHubs.d.ts +18 -0
  667. package/dist/react-native/modelsToBeSharedWithEventHubs.d.ts.map +1 -0
  668. package/dist/react-native/modelsToBeSharedWithEventHubs.js +4 -0
  669. package/dist/react-native/modelsToBeSharedWithEventHubs.js.map +1 -0
  670. package/dist/react-native/package.json +3 -0
  671. package/dist/react-native/receivers/receiver.d.ts +299 -0
  672. package/dist/react-native/receivers/receiver.d.ts.map +1 -0
  673. package/dist/react-native/receivers/receiver.js +379 -0
  674. package/dist/react-native/receivers/receiver.js.map +1 -0
  675. package/dist/react-native/receivers/receiverCommon.d.ts +81 -0
  676. package/dist/react-native/receivers/receiverCommon.d.ts.map +1 -0
  677. package/dist/react-native/receivers/receiverCommon.js +257 -0
  678. package/dist/react-native/receivers/receiverCommon.js.map +1 -0
  679. package/dist/react-native/receivers/sessionReceiver.d.ts +189 -0
  680. package/dist/react-native/receivers/sessionReceiver.d.ts.map +1 -0
  681. package/dist/react-native/receivers/sessionReceiver.js +428 -0
  682. package/dist/react-native/receivers/sessionReceiver.js.map +1 -0
  683. package/dist/react-native/sender.d.ts +125 -0
  684. package/dist/react-native/sender.d.ts.map +1 -0
  685. package/dist/react-native/sender.js +186 -0
  686. package/dist/react-native/sender.js.map +1 -0
  687. package/dist/react-native/serializers/namespaceResourceSerializer.d.ts +46 -0
  688. package/dist/react-native/serializers/namespaceResourceSerializer.d.ts.map +1 -0
  689. package/dist/react-native/serializers/namespaceResourceSerializer.js +34 -0
  690. package/dist/react-native/serializers/namespaceResourceSerializer.js.map +1 -0
  691. package/dist/react-native/serializers/queueResourceSerializer.d.ts +461 -0
  692. package/dist/react-native/serializers/queueResourceSerializer.d.ts.map +1 -0
  693. package/dist/react-native/serializers/queueResourceSerializer.js +99 -0
  694. package/dist/react-native/serializers/queueResourceSerializer.js.map +1 -0
  695. package/dist/react-native/serializers/ruleResourceSerializer.d.ts +135 -0
  696. package/dist/react-native/serializers/ruleResourceSerializer.d.ts.map +1 -0
  697. package/dist/react-native/serializers/ruleResourceSerializer.js +278 -0
  698. package/dist/react-native/serializers/ruleResourceSerializer.js.map +1 -0
  699. package/dist/react-native/serializers/subscriptionResourceSerializer.d.ts +396 -0
  700. package/dist/react-native/serializers/subscriptionResourceSerializer.d.ts.map +1 -0
  701. package/dist/react-native/serializers/subscriptionResourceSerializer.js +95 -0
  702. package/dist/react-native/serializers/subscriptionResourceSerializer.js.map +1 -0
  703. package/dist/react-native/serializers/topicResourceSerializer.d.ts +335 -0
  704. package/dist/react-native/serializers/topicResourceSerializer.d.ts.map +1 -0
  705. package/dist/react-native/serializers/topicResourceSerializer.js +89 -0
  706. package/dist/react-native/serializers/topicResourceSerializer.js.map +1 -0
  707. package/dist/react-native/serviceBusAtomManagementClient.d.ts +652 -0
  708. package/dist/react-native/serviceBusAtomManagementClient.d.ts.map +1 -0
  709. package/dist/react-native/serviceBusAtomManagementClient.js +1643 -0
  710. package/dist/react-native/serviceBusAtomManagementClient.js.map +1 -0
  711. package/dist/react-native/serviceBusClient.d.ts +231 -0
  712. package/dist/react-native/serviceBusClient.d.ts.map +1 -0
  713. package/dist/react-native/serviceBusClient.js +216 -0
  714. package/dist/react-native/serviceBusClient.js.map +1 -0
  715. package/dist/react-native/serviceBusError.d.ts +119 -0
  716. package/dist/react-native/serviceBusError.d.ts.map +1 -0
  717. package/dist/react-native/serviceBusError.js +103 -0
  718. package/dist/react-native/serviceBusError.js.map +1 -0
  719. package/dist/react-native/serviceBusMessage.d.ts +529 -0
  720. package/dist/react-native/serviceBusMessage.d.ts.map +1 -0
  721. package/dist/react-native/serviceBusMessage.js +598 -0
  722. package/dist/react-native/serviceBusMessage.js.map +1 -0
  723. package/dist/react-native/serviceBusMessageBatch.d.ts +153 -0
  724. package/dist/react-native/serviceBusMessageBatch.d.ts.map +1 -0
  725. package/dist/react-native/serviceBusMessageBatch.js +192 -0
  726. package/dist/react-native/serviceBusMessageBatch.js.map +1 -0
  727. package/dist/react-native/serviceBusRuleManager.d.ts +103 -0
  728. package/dist/react-native/serviceBusRuleManager.d.ts.map +1 -0
  729. package/dist/react-native/serviceBusRuleManager.js +149 -0
  730. package/dist/react-native/serviceBusRuleManager.js.map +1 -0
  731. package/dist/react-native/session/messageSession.d.ts +236 -0
  732. package/dist/react-native/session/messageSession.d.ts.map +1 -0
  733. package/dist/react-native/session/messageSession.js +755 -0
  734. package/dist/react-native/session/messageSession.js.map +1 -0
  735. package/dist/react-native/util/atomXmlHelper.d.ts +56 -0
  736. package/dist/react-native/util/atomXmlHelper.d.ts.map +1 -0
  737. package/dist/react-native/util/atomXmlHelper.js +378 -0
  738. package/dist/react-native/util/atomXmlHelper.js.map +1 -0
  739. package/dist/react-native/util/compat/compatibility.d.ts +109 -0
  740. package/dist/react-native/util/compat/compatibility.d.ts.map +1 -0
  741. package/dist/react-native/util/compat/compatibility.js +27 -0
  742. package/dist/react-native/util/compat/compatibility.js.map +1 -0
  743. package/dist/react-native/util/compat/httpHeaders.d.ts +136 -0
  744. package/dist/react-native/util/compat/httpHeaders.d.ts.map +1 -0
  745. package/dist/react-native/util/compat/httpHeaders.js +152 -0
  746. package/dist/react-native/util/compat/httpHeaders.js.map +1 -0
  747. package/dist/react-native/util/compat/index.d.ts +3 -0
  748. package/dist/react-native/util/compat/index.d.ts.map +1 -0
  749. package/dist/react-native/util/compat/index.js +5 -0
  750. package/dist/react-native/util/compat/index.js.map +1 -0
  751. package/dist/react-native/util/connectionStringUtils.d.ts +53 -0
  752. package/dist/react-native/util/connectionStringUtils.d.ts.map +1 -0
  753. package/dist/react-native/util/connectionStringUtils.js +48 -0
  754. package/dist/react-native/util/connectionStringUtils.js.map +1 -0
  755. package/dist/react-native/util/constants.d.ts +322 -0
  756. package/dist/react-native/util/constants.d.ts.map +1 -0
  757. package/dist/react-native/util/constants.js +324 -0
  758. package/dist/react-native/util/constants.js.map +1 -0
  759. package/dist/react-native/util/crypto.d.ts +5 -0
  760. package/dist/react-native/util/crypto.d.ts.map +1 -0
  761. package/dist/react-native/util/crypto.js +11 -0
  762. package/dist/react-native/util/crypto.js.map +1 -0
  763. package/dist/react-native/util/errors.d.ts +130 -0
  764. package/dist/react-native/util/errors.d.ts.map +1 -0
  765. package/dist/react-native/util/errors.js +220 -0
  766. package/dist/react-native/util/errors.js.map +1 -0
  767. package/dist/react-native/util/parseUrl.d.ts +5 -0
  768. package/dist/react-native/util/parseUrl.d.ts.map +1 -0
  769. package/dist/react-native/util/parseUrl.js +9 -0
  770. package/dist/react-native/util/parseUrl.js.map +1 -0
  771. package/dist/react-native/util/runtimeInfo-react-native.d.mts.map +1 -0
  772. package/dist/react-native/util/runtimeInfo-react-native.mjs.map +1 -0
  773. package/dist/react-native/util/runtimeInfo.d.ts +7 -0
  774. package/{dist-esm/src/util/runtimeInfo.native.js → dist/react-native/util/runtimeInfo.js} +3 -3
  775. package/dist/react-native/util/sasServiceClientCredentials.d.ts +31 -0
  776. package/dist/react-native/util/sasServiceClientCredentials.d.ts.map +1 -0
  777. package/dist/react-native/util/sasServiceClientCredentials.js +52 -0
  778. package/dist/react-native/util/sasServiceClientCredentials.js.map +1 -0
  779. package/dist/react-native/util/semaphore.d.ts +38 -0
  780. package/dist/react-native/util/semaphore.d.ts.map +1 -0
  781. package/dist/react-native/util/semaphore.js +81 -0
  782. package/dist/react-native/util/semaphore.js.map +1 -0
  783. package/dist/react-native/util/typeGuards.d.ts +8 -0
  784. package/dist/react-native/util/typeGuards.d.ts.map +1 -0
  785. package/dist/react-native/util/typeGuards.js +12 -0
  786. package/dist/react-native/util/typeGuards.js.map +1 -0
  787. package/dist/react-native/util/utils.d.ts +247 -0
  788. package/dist/react-native/util/utils.d.ts.map +1 -0
  789. package/dist/react-native/util/utils.js +496 -0
  790. package/dist/react-native/util/utils.js.map +1 -0
  791. package/package.json +123 -104
  792. package/dist/index.js +0 -10438
  793. package/dist/index.js.map +0 -1
  794. package/dist-esm/src/connectionContext.js.map +0 -1
  795. package/dist-esm/src/constructorHelpers.js.map +0 -1
  796. package/dist-esm/src/core/autoLockRenewer.js.map +0 -1
  797. package/dist-esm/src/core/batchingReceiver.js.map +0 -1
  798. package/dist-esm/src/core/linkEntity.js.map +0 -1
  799. package/dist-esm/src/core/managementClient.js.map +0 -1
  800. package/dist-esm/src/core/messageReceiver.js.map +0 -1
  801. package/dist-esm/src/core/messageSender.js.map +0 -1
  802. package/dist-esm/src/core/receiverHelper.js.map +0 -1
  803. package/dist-esm/src/core/shared.js.map +0 -1
  804. package/dist-esm/src/core/streamingReceiver.js.map +0 -1
  805. package/dist-esm/src/dataTransformer.js.map +0 -1
  806. package/dist-esm/src/diagnostics/instrumentServiceBusMessage.js.map +0 -1
  807. package/dist-esm/src/diagnostics/tracing.js.map +0 -1
  808. package/dist-esm/src/index.js.map +0 -1
  809. package/dist-esm/src/log.js.map +0 -1
  810. package/dist-esm/src/models.js +0 -4
  811. package/dist-esm/src/models.js.map +0 -1
  812. package/dist-esm/src/modelsToBeSharedWithEventHubs.js +0 -4
  813. package/dist-esm/src/modelsToBeSharedWithEventHubs.js.map +0 -1
  814. package/dist-esm/src/receivers/receiver.js.map +0 -1
  815. package/dist-esm/src/receivers/receiverCommon.js.map +0 -1
  816. package/dist-esm/src/receivers/sessionReceiver.js.map +0 -1
  817. package/dist-esm/src/sender.js.map +0 -1
  818. package/dist-esm/src/serializers/namespaceResourceSerializer.js.map +0 -1
  819. package/dist-esm/src/serializers/queueResourceSerializer.js.map +0 -1
  820. package/dist-esm/src/serializers/ruleResourceSerializer.js.map +0 -1
  821. package/dist-esm/src/serializers/subscriptionResourceSerializer.js.map +0 -1
  822. package/dist-esm/src/serializers/topicResourceSerializer.js.map +0 -1
  823. package/dist-esm/src/serviceBusAtomManagementClient.js.map +0 -1
  824. package/dist-esm/src/serviceBusClient.js.map +0 -1
  825. package/dist-esm/src/serviceBusError.js.map +0 -1
  826. package/dist-esm/src/serviceBusMessage.js.map +0 -1
  827. package/dist-esm/src/serviceBusMessageBatch.js.map +0 -1
  828. package/dist-esm/src/serviceBusRuleManager.js.map +0 -1
  829. package/dist-esm/src/session/messageSession.js.map +0 -1
  830. package/dist-esm/src/util/atomXmlHelper.js.map +0 -1
  831. package/dist-esm/src/util/compat/compatibility.js.map +0 -1
  832. package/dist-esm/src/util/compat/httpHeaders.js.map +0 -1
  833. package/dist-esm/src/util/compat/index.js +0 -5
  834. package/dist-esm/src/util/compat/index.js.map +0 -1
  835. package/dist-esm/src/util/connectionStringUtils.js.map +0 -1
  836. package/dist-esm/src/util/crypto.browser.js.map +0 -1
  837. package/dist-esm/src/util/crypto.js.map +0 -1
  838. package/dist-esm/src/util/errors.js.map +0 -1
  839. package/dist-esm/src/util/parseUrl.browser.js.map +0 -1
  840. package/dist-esm/src/util/parseUrl.js.map +0 -1
  841. package/dist-esm/src/util/runtimeInfo.browser.js.map +0 -1
  842. package/dist-esm/src/util/runtimeInfo.js.map +0 -1
  843. package/dist-esm/src/util/runtimeInfo.native.js.map +0 -1
  844. package/dist-esm/src/util/sasServiceClientCredentials.js.map +0 -1
  845. package/dist-esm/src/util/semaphore.js.map +0 -1
  846. package/dist-esm/src/util/typeGuards.js.map +0 -1
  847. package/dist-esm/src/util/utils.js.map +0 -1
  848. package/types/latest/service-bus-beta.d.ts +0 -3197
@@ -0,0 +1,496 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import Long from "long";
4
+ import { logger, receiverLogger, messageLogger } from "../log.js";
5
+ import { OperationTimeoutError, generate_uuid } from "rhea-promise";
6
+ import isBuffer from "is-buffer";
7
+ import * as Constants from "../util/constants.js";
8
+ import { AbortError } from "@azure/abort-controller";
9
+ import { isDefined } from "@azure/core-util";
10
+ import { toHttpResponse } from "./compat/index.js";
11
+ import { ErrorNameConditionMapper, StandardAbortMessage, delay } from "@azure/core-amqp";
12
+ import { translateServiceBusError } from "../serviceBusError.js";
13
+ /**
14
+ * @internal
15
+ * Provides a uniue name by appending a string guid to the given string in the following format:
16
+ * `{name}-{uuid}`.
17
+ * @param name - The nme of the entity
18
+ */
19
+ export function getUniqueName(name) {
20
+ return `${name}-${generate_uuid()}`;
21
+ }
22
+ /**
23
+ * @internal
24
+ * Returns the passed identifier if it is not undefined or empty;
25
+ * otherwise generate and returns a unique one in the following format;
26
+ * `{prefix}-{uuid}`.
27
+ * @param prefix - The prefix used to generate identifier
28
+ * @param identifier - an identifier name
29
+ */
30
+ export function ensureValidIdentifier(prefix, identifier) {
31
+ return identifier ? identifier : getUniqueName(prefix);
32
+ }
33
+ /**
34
+ * @internal
35
+ * If you try to turn a Guid into a Buffer in .NET, the bytes of the first three groups get
36
+ * flipped within the group, but the last two groups don't get flipped, so we end up with a
37
+ * different byte order. This is the order of bytes needed to make Service Bus recognize the token.
38
+ *
39
+ * @param lockToken - The lock token whose bytes need to be reorded.
40
+ * @returns Buffer representing reordered bytes.
41
+ */
42
+ export function reorderLockToken(lockTokenBytes) {
43
+ if (!lockTokenBytes || !Buffer.isBuffer(lockTokenBytes)) {
44
+ return lockTokenBytes;
45
+ }
46
+ return Buffer.from([
47
+ lockTokenBytes[3],
48
+ lockTokenBytes[2],
49
+ lockTokenBytes[1],
50
+ lockTokenBytes[0],
51
+ lockTokenBytes[5],
52
+ lockTokenBytes[4],
53
+ lockTokenBytes[7],
54
+ lockTokenBytes[6],
55
+ lockTokenBytes[8],
56
+ lockTokenBytes[9],
57
+ lockTokenBytes[10],
58
+ lockTokenBytes[11],
59
+ lockTokenBytes[12],
60
+ lockTokenBytes[13],
61
+ lockTokenBytes[14],
62
+ lockTokenBytes[15],
63
+ ]);
64
+ }
65
+ /**
66
+ * @internal
67
+ * Provides the time in milliseconds after which the lock renewal should occur.
68
+ * @param lockedUntilUtc - The time until which the message is locked.
69
+ */
70
+ export function calculateRenewAfterDuration(lockedUntilUtc) {
71
+ const now = Date.now();
72
+ const lockedUntil = lockedUntilUtc.getTime();
73
+ const remainingTime = lockedUntil - now;
74
+ receiverLogger.verbose("Locked until utc : %d", lockedUntil);
75
+ receiverLogger.verbose("Current time is : %d", now);
76
+ receiverLogger.verbose("Remaining time is : %d", remainingTime);
77
+ if (remainingTime < 1000) {
78
+ return 0;
79
+ }
80
+ const buffer = Math.min(remainingTime / 2, 10000); // 10 seconds
81
+ const renewAfter = remainingTime - buffer;
82
+ receiverLogger.verbose("Renew after : %d", renewAfter);
83
+ return renewAfter;
84
+ }
85
+ /**
86
+ * @internal
87
+ * Converts the .net ticks to a JS Date object.
88
+ *
89
+ * - The epoch for the DateTimeOffset type is `0000-01-01`, while the epoch for JS Dates is
90
+ * `1970-01-01`.
91
+ * - The DateTimeOffset ticks value for the date `1970-01-01` is `621355968000000000`.
92
+ * - Hence, to convert it to the JS epoch; we `subtract` the delta from the given value.
93
+ * - Ticks in DateTimeOffset is `1/10000000` second, while ticks in JS Date is `1/1000` second.
94
+ * - Thus, we `divide` the value by `10000` to convert it to JS Date ticks.
95
+ *
96
+ * @param buf - Input as a Buffer
97
+ * @returns The JS Date object.
98
+ */
99
+ export function convertTicksToDate(buf) {
100
+ const epochMicroDiff = 621355968000000000;
101
+ const longValue = Long.fromBytesBE(buf);
102
+ const timeInMS = longValue.sub(epochMicroDiff).div(10000).toNumber();
103
+ const result = new Date(timeInMS);
104
+ logger.verbose("The converted date is: %s", result.toString());
105
+ return result;
106
+ }
107
+ /**
108
+ * @internal
109
+ * Converts any given input to a Buffer.
110
+ * @param input - The input that needs to be converted to a Buffer.
111
+ */
112
+ export function toBuffer(input) {
113
+ let result;
114
+ messageLogger.verbose("[utils.toBuffer] The given message body that needs to be converted to buffer is: ", input);
115
+ if (isBuffer(input)) {
116
+ result = input;
117
+ }
118
+ else {
119
+ // string, undefined, null, boolean, array, object, number should end up here
120
+ // coercing undefined to null as that will ensure that null value will be given to the
121
+ // customer on receive.
122
+ if (input === undefined)
123
+ input = null;
124
+ try {
125
+ const inputStr = JSON.stringify(input);
126
+ result = Buffer.from(inputStr, "utf8");
127
+ }
128
+ catch (err) {
129
+ const msg = `An error occurred while executing JSON.stringify() on the given input ` +
130
+ input +
131
+ `${err instanceof Error ? err.stack : JSON.stringify(err)}`;
132
+ messageLogger.warning("[utils.toBuffer] " + msg);
133
+ throw err instanceof Error ? err : new Error(msg);
134
+ }
135
+ }
136
+ messageLogger.verbose("[utils.toBuffer] The converted buffer is: %O.", result);
137
+ return result;
138
+ }
139
+ /**
140
+ * @internal
141
+ * Helper utility to retrieve `string` value from given string,
142
+ * or throws error if undefined.
143
+ */
144
+ export function getString(value, nameOfProperty) {
145
+ const result = getStringOrUndefined(value);
146
+ if (result === undefined) {
147
+ throw new Error(`"${nameOfProperty}" received from service expected to be a string value and not undefined.`);
148
+ }
149
+ return result;
150
+ }
151
+ /**
152
+ * @internal
153
+ * Helper utility to retrieve `string` value from given input,
154
+ * or undefined if not passed in.
155
+ */
156
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
157
+ export function getStringOrUndefined(value) {
158
+ if (!isDefined(value)) {
159
+ return undefined;
160
+ }
161
+ return value.toString();
162
+ }
163
+ /**
164
+ * @internal
165
+ * Helper utility to retrieve `integer` value from given string,
166
+ * or throws error if undefined.
167
+ */
168
+ export function getInteger(value, nameOfProperty) {
169
+ const result = getIntegerOrUndefined(value);
170
+ if (result === undefined) {
171
+ throw new Error(`"${nameOfProperty}" received from service expected to be a number value and not undefined.`);
172
+ }
173
+ return result;
174
+ }
175
+ /**
176
+ * @internal
177
+ * Helper utility to retrieve `integer` value from given string,
178
+ * or undefined if not passed in.
179
+ */
180
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
181
+ export function getIntegerOrUndefined(value) {
182
+ if (!isDefined(value)) {
183
+ return undefined;
184
+ }
185
+ const result = parseInt(value.toString());
186
+ return isNaN(result) ? undefined : result;
187
+ }
188
+ /**
189
+ * @internal
190
+ * Helper utility to convert ISO-8601 time into Date type.
191
+ */
192
+ export function getDate(value, nameOfProperty) {
193
+ return new Date(getString(value, nameOfProperty));
194
+ }
195
+ /**
196
+ * @internal
197
+ * Helper utility to retrieve `boolean` value from given string,
198
+ * or throws error if undefined.
199
+ */
200
+ export function getBoolean(value, nameOfProperty) {
201
+ const result = getBooleanOrUndefined(value);
202
+ if (result === undefined) {
203
+ throw new Error(`"${nameOfProperty}" received from service expected to be a boolean value and not undefined.`);
204
+ }
205
+ return result;
206
+ }
207
+ /**
208
+ * @internal
209
+ * Helper utility to retrieve `boolean` value from given string,
210
+ * or undefined if not passed in.
211
+ */
212
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
213
+ export function getBooleanOrUndefined(value) {
214
+ if (!isDefined(value)) {
215
+ return undefined;
216
+ }
217
+ return value.toString().trim().toLowerCase() === "true";
218
+ }
219
+ /**
220
+ * @internal
221
+ * Helps in differentiating JSON like objects from other kinds of objects.
222
+ */
223
+ const EMPTY_JSON_OBJECT_CONSTRUCTOR = {}.constructor;
224
+ /**
225
+ * @internal
226
+ * Returns `true` if given input is a JSON like object.
227
+ */
228
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
229
+ export function isJSONLikeObject(value) {
230
+ // `value.constructor === {}.constructor` differentiates among the "object"s,
231
+ // would filter the JSON objects and won't match any array or other kinds of objects
232
+ // -------------------------------------------------------------------------------
233
+ // Few examples | typeof obj ==="object" | obj.constructor==={}.constructor
234
+ // -------------------------------------------------------------------------------
235
+ // {abc:1} | true | true
236
+ // ["a","b"] | true | false
237
+ // [{"a":1},{"b":2}] | true | false
238
+ // new Date() | true | false
239
+ // 123 | false | false
240
+ // -------------------------------------------------------------------------------
241
+ return typeof value === "object" && value.constructor === EMPTY_JSON_OBJECT_CONSTRUCTOR;
242
+ }
243
+ /**
244
+ * @internal
245
+ * Helper utility to retrieve message count details from given input,
246
+ */
247
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
248
+ export function getMessageCountDetails(value) {
249
+ const xmlnsPrefix = getXMLNSPrefix(value);
250
+ if (!isDefined(value)) {
251
+ value = {};
252
+ }
253
+ return {
254
+ activeMessageCount: parseInt(value[`${xmlnsPrefix}:ActiveMessageCount`]) || 0,
255
+ deadLetterMessageCount: parseInt(value[`${xmlnsPrefix}:DeadLetterMessageCount`]) || 0,
256
+ scheduledMessageCount: parseInt(value[`${xmlnsPrefix}:ScheduledMessageCount`]) || 0,
257
+ transferMessageCount: parseInt(value[`${xmlnsPrefix}:TransferMessageCount`]) || 0,
258
+ transferDeadLetterMessageCount: parseInt(value[`${xmlnsPrefix}:TransferDeadLetterMessageCount`]) || 0,
259
+ };
260
+ }
261
+ /**
262
+ * @internal
263
+ * Gets the xmlns prefix from the root of the objects that are part of the parsed response body.
264
+ */
265
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
266
+ export function getXMLNSPrefix(value) {
267
+ if (!value[Constants.XML_METADATA_MARKER]) {
268
+ throw new Error(`Error occurred while parsing the response body - cannot find the XML_METADATA_MARKER "$" on the object ${JSON.stringify(value)}`);
269
+ }
270
+ const keys = Object.keys(value[Constants.XML_METADATA_MARKER]);
271
+ if (keys.length !== 1) {
272
+ throw new Error(`Error occurred while parsing the response body - unexpected number of "xmlns:\${prefix}" keys at ${JSON.stringify(value[Constants.XML_METADATA_MARKER])}`);
273
+ }
274
+ if (!keys[0].startsWith("xmlns:")) {
275
+ throw new Error(`Error occurred while parsing the response body - unexpected key at ${JSON.stringify(value[Constants.XML_METADATA_MARKER])}`);
276
+ }
277
+ // Pick the substring that's after "xmlns:"
278
+ const xmlnsPrefix = keys[0].substring(6);
279
+ if (!xmlnsPrefix) {
280
+ throw new Error(`Error occurred while parsing the response body - unexpected xmlns prefix at ${JSON.stringify(value[Constants.XML_METADATA_MARKER])}`);
281
+ }
282
+ return xmlnsPrefix;
283
+ }
284
+ /**
285
+ * @internal
286
+ * Helper utility to retrieve array of `AuthorizationRule` from given input,
287
+ * or undefined if not passed in.
288
+ */
289
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
290
+ export function getAuthorizationRulesOrUndefined(value) {
291
+ const authorizationRules = [];
292
+ // Ignore special case as Service Bus treats "" as a valid value for authorization rules
293
+ if (typeof value === "string" && value.trim() === "") {
294
+ return undefined;
295
+ }
296
+ if (!isDefined(value)) {
297
+ return undefined;
298
+ }
299
+ const rawAuthorizationRules = value.AuthorizationRule;
300
+ if (Array.isArray(rawAuthorizationRules)) {
301
+ for (let i = 0; i < rawAuthorizationRules.length; i++) {
302
+ authorizationRules.push(buildAuthorizationRule(rawAuthorizationRules[i]));
303
+ }
304
+ }
305
+ else {
306
+ authorizationRules.push(buildAuthorizationRule(rawAuthorizationRules));
307
+ }
308
+ return authorizationRules;
309
+ }
310
+ /**
311
+ * @internal
312
+ * Helper utility to build an instance of parsed authorization rule as `AuthorizationRule` from given input.
313
+ */
314
+ function buildAuthorizationRule(value) {
315
+ let accessRights;
316
+ if (isDefined(value["Rights"])) {
317
+ accessRights = value["Rights"]["AccessRights"];
318
+ }
319
+ const authorizationRule = {
320
+ claimType: value["ClaimType"],
321
+ accessRights,
322
+ keyName: value["KeyName"],
323
+ primaryKey: value["PrimaryKey"],
324
+ secondaryKey: value["SecondaryKey"],
325
+ };
326
+ if (authorizationRule.accessRights && !Array.isArray(authorizationRule.accessRights)) {
327
+ authorizationRule.accessRights = [authorizationRule.accessRights];
328
+ }
329
+ return authorizationRule;
330
+ }
331
+ /**
332
+ * @internal
333
+ * Helper utility to extract output containing array of `RawAuthorizationRule` instances from given input,
334
+ * or undefined if not passed in.
335
+ */
336
+ export function getRawAuthorizationRules(authorizationRules) {
337
+ if (!isDefined(authorizationRules)) {
338
+ return undefined;
339
+ }
340
+ if (!Array.isArray(authorizationRules)) {
341
+ throw new TypeError(`authorizationRules must be an array of AuthorizationRule objects or undefined, but received ${JSON.stringify(authorizationRules, undefined, 2)}`);
342
+ }
343
+ const rawAuthorizationRules = [];
344
+ for (let i = 0; i < authorizationRules.length; i++) {
345
+ rawAuthorizationRules.push(buildRawAuthorizationRule(authorizationRules[i]));
346
+ }
347
+ return { AuthorizationRule: rawAuthorizationRules };
348
+ }
349
+ /**
350
+ * @internal
351
+ * Helper utility to build an instance of raw authorization rule as RawAuthorizationRule from given `AuthorizationRule` input.
352
+ * @param authorizationRule - parsed Authorization Rule instance
353
+ */
354
+ function buildRawAuthorizationRule(authorizationRule) {
355
+ if (!isJSONLikeObject(authorizationRule) || authorizationRule === null) {
356
+ throw new TypeError(`Expected authorizationRule input to be a JS object value, but received ${JSON.stringify(authorizationRule, undefined, 2)}`);
357
+ }
358
+ const rawAuthorizationRule = {
359
+ ClaimType: authorizationRule.claimType,
360
+ // ClaimValue is not settable by the users, but service expects the value for PUT requests
361
+ ClaimValue: "None",
362
+ Rights: {
363
+ AccessRights: authorizationRule.accessRights,
364
+ },
365
+ KeyName: authorizationRule.keyName,
366
+ PrimaryKey: authorizationRule.primaryKey,
367
+ SecondaryKey: authorizationRule.secondaryKey,
368
+ };
369
+ rawAuthorizationRule[Constants.XML_METADATA_MARKER] = {
370
+ "p5:type": "SharedAccessAuthorizationRule",
371
+ "xmlns:p5": "http://www.w3.org/2001/XMLSchema-instance",
372
+ };
373
+ return rawAuthorizationRule;
374
+ }
375
+ /**
376
+ * @internal
377
+ * Helper utility to check if given string is an absolute URL
378
+ */
379
+ export function isAbsoluteUrl(url) {
380
+ const _url = url.toLowerCase();
381
+ return _url.startsWith("sb://") || _url.startsWith("http://") || _url.startsWith("https://");
382
+ }
383
+ /**
384
+ * An executor for a function that returns a Promise that obeys both a timeout and an
385
+ * optional AbortSignal.
386
+ * @param timeoutMs - The number of milliseconds to allow before throwing an OperationTimeoutError.
387
+ * @param timeoutMessage - The message to place in the .description field for the thrown exception for Timeout.
388
+ * @param abortSignal - The abortSignal associated with containing operation.
389
+ * @param abortErrorMsg - The abort error message associated with containing operation.
390
+ * @param value - The value to be resolved with after a timeout of t milliseconds.
391
+ *
392
+ * @internal
393
+ */
394
+ export async function waitForTimeoutOrAbortOrResolve(args) {
395
+ if (args.abortSignal && args.abortSignal.aborted) {
396
+ throw new AbortError(StandardAbortMessage);
397
+ }
398
+ let timer = undefined;
399
+ let clearAbortSignal = undefined;
400
+ const clearAbortSignalAndTimer = () => {
401
+ (args.timeoutFunctions?.clearTimeoutFn ?? clearTimeout)(timer);
402
+ if (clearAbortSignal) {
403
+ clearAbortSignal();
404
+ }
405
+ };
406
+ const abortOrTimeoutPromise = new Promise((_resolve, reject) => {
407
+ clearAbortSignal = checkAndRegisterWithAbortSignal(reject, args.abortSignal);
408
+ timer = (args.timeoutFunctions?.setTimeoutFn ?? setTimeout)(() => {
409
+ reject(new OperationTimeoutError(args.timeoutMessage));
410
+ }, args.timeoutMs);
411
+ });
412
+ try {
413
+ return await Promise.race([abortOrTimeoutPromise, args.actionFn()]);
414
+ }
415
+ finally {
416
+ clearAbortSignalAndTimer();
417
+ }
418
+ }
419
+ /**
420
+ * Registers listener to the abort event on the abortSignal to call your abortFn and
421
+ * returns a function that will clear the same listener.
422
+ *
423
+ * If abort signal is already aborted, then throws an AbortError and returns a function that does nothing
424
+ *
425
+ * @returns A function that removes any of our attached event listeners on the abort signal or an empty function if
426
+ * the abortSignal was not defined.
427
+ *
428
+ * @internal
429
+ */
430
+ export function checkAndRegisterWithAbortSignal(onAbortFn, abortSignal) {
431
+ if (abortSignal == null) {
432
+ return () => {
433
+ /** Nothing to do here, no abort signal */
434
+ };
435
+ }
436
+ if (abortSignal.aborted) {
437
+ throw new AbortError(StandardAbortMessage);
438
+ }
439
+ const onAbort = () => {
440
+ abortSignal.removeEventListener("abort", onAbort);
441
+ onAbortFn(new AbortError(StandardAbortMessage));
442
+ };
443
+ abortSignal.addEventListener("abort", onAbort);
444
+ return () => abortSignal.removeEventListener("abort", onAbort);
445
+ }
446
+ /**
447
+ * @internal
448
+ * The user agent prefix string for the ServiceBus client.
449
+ * See guideline at https://azure.github.io/azure-sdk/general_azurecore.html#telemetry-policy
450
+ */
451
+ export const libInfo = `azsdk-js-azureservicebus/${Constants.packageJsonInfo.version}`;
452
+ /**
453
+ * @internal
454
+ * Returns the formatted prefix by removing the spaces, by appending the libInfo.
455
+ */
456
+ export function formatUserAgentPrefix(prefix) {
457
+ let userAgentPrefix = `${(prefix || "").replace(" ", "")}`;
458
+ userAgentPrefix = userAgentPrefix.length > 0 ? userAgentPrefix + " " : "";
459
+ return `${userAgentPrefix}${libInfo}`;
460
+ }
461
+ /**
462
+ * @internal
463
+ * Helper method which returns `HttpResponse` from an object of shape `PipelineResponse`.
464
+ * TODO: remove this and use toHttpResponse() directly
465
+ */
466
+ export const getHttpResponseOnly = (pipelineResponse) => toHttpResponse(pipelineResponse);
467
+ /**
468
+ * @internal
469
+ * Waits for one second if a sender is not sendable then check again. Throws
470
+ * SenderBusyError if it is still not sendable.
471
+ * Only waits when operation timeout is greater than one second.
472
+ * @returns the actual waiting time.
473
+ */
474
+ export async function waitForSendable(sendLogger, logPrefix, name, timeout, sender, outgoingAvaiable) {
475
+ let waitTimeForSendable = 1000;
476
+ if (!sender?.sendable() && timeout > waitTimeForSendable) {
477
+ sendLogger.verbose("%s Sender '%s', waiting for 1 second for sender to become sendable", logPrefix, name);
478
+ await delay(waitTimeForSendable);
479
+ sendLogger.verbose("%s Sender '%s' after waiting for a second, credit: %d available: %d", logPrefix, name, sender?.credit, outgoingAvaiable);
480
+ }
481
+ else {
482
+ waitTimeForSendable = 0;
483
+ }
484
+ if (!sender?.sendable()) {
485
+ // let us retry to send the message after some time.
486
+ const msg = `[${logPrefix}] Sender "${name}", ` + `cannot send the message right now. Please try later.`;
487
+ sendLogger.warning(msg);
488
+ const amqpError = {
489
+ condition: ErrorNameConditionMapper.SenderBusyError,
490
+ description: msg,
491
+ };
492
+ throw translateServiceBusError(amqpError);
493
+ }
494
+ return waitTimeForSendable;
495
+ }
496
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/util/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport Long from \"long\";\nimport type { ServiceBusLogger } from \"../log.js\";\nimport { logger, receiverLogger, messageLogger } from \"../log.js\";\nimport type { AmqpError } from \"rhea-promise\";\nimport { OperationTimeoutError, generate_uuid } from \"rhea-promise\";\nimport isBuffer from \"is-buffer\";\nimport * as Constants from \"../util/constants.js\";\nimport type { AbortSignalLike } from \"@azure/abort-controller\";\nimport { AbortError } from \"@azure/abort-controller\";\nimport type { PipelineResponse } from \"@azure/core-rest-pipeline\";\nimport { isDefined } from \"@azure/core-util\";\nimport type { HttpResponse } from \"./compat/index.js\";\nimport { toHttpResponse } from \"./compat/index.js\";\nimport { ErrorNameConditionMapper, StandardAbortMessage, delay } from \"@azure/core-amqp\";\nimport { translateServiceBusError } from \"../serviceBusError.js\";\n\n/**\n * @internal\n * Provides a uniue name by appending a string guid to the given string in the following format:\n * `{name}-{uuid}`.\n * @param name - The nme of the entity\n */\nexport function getUniqueName(name: string): string {\n return `${name}-${generate_uuid()}`;\n}\n\n/**\n * @internal\n * Returns the passed identifier if it is not undefined or empty;\n * otherwise generate and returns a unique one in the following format;\n * `{prefix}-{uuid}`.\n * @param prefix - The prefix used to generate identifier\n * @param identifier - an identifier name\n */\nexport function ensureValidIdentifier(prefix: string, identifier?: string): string {\n return identifier ? identifier : getUniqueName(prefix);\n}\n\n/**\n * @internal\n * If you try to turn a Guid into a Buffer in .NET, the bytes of the first three groups get\n * flipped within the group, but the last two groups don't get flipped, so we end up with a\n * different byte order. This is the order of bytes needed to make Service Bus recognize the token.\n *\n * @param lockToken - The lock token whose bytes need to be reorded.\n * @returns Buffer representing reordered bytes.\n */\nexport function reorderLockToken(lockTokenBytes: Buffer): Buffer {\n if (!lockTokenBytes || !Buffer.isBuffer(lockTokenBytes)) {\n return lockTokenBytes;\n }\n\n return Buffer.from([\n lockTokenBytes[3],\n lockTokenBytes[2],\n lockTokenBytes[1],\n lockTokenBytes[0],\n\n lockTokenBytes[5],\n lockTokenBytes[4],\n\n lockTokenBytes[7],\n lockTokenBytes[6],\n\n lockTokenBytes[8],\n lockTokenBytes[9],\n\n lockTokenBytes[10],\n lockTokenBytes[11],\n lockTokenBytes[12],\n lockTokenBytes[13],\n lockTokenBytes[14],\n lockTokenBytes[15],\n ]);\n}\n\n/**\n * @internal\n * Provides the time in milliseconds after which the lock renewal should occur.\n * @param lockedUntilUtc - The time until which the message is locked.\n */\nexport function calculateRenewAfterDuration(lockedUntilUtc: Date): number {\n const now = Date.now();\n const lockedUntil = lockedUntilUtc.getTime();\n const remainingTime = lockedUntil - now;\n receiverLogger.verbose(\"Locked until utc : %d\", lockedUntil);\n receiverLogger.verbose(\"Current time is : %d\", now);\n receiverLogger.verbose(\"Remaining time is : %d\", remainingTime);\n if (remainingTime < 1000) {\n return 0;\n }\n const buffer = Math.min(remainingTime / 2, 10000); // 10 seconds\n const renewAfter = remainingTime - buffer;\n receiverLogger.verbose(\"Renew after : %d\", renewAfter);\n return renewAfter;\n}\n\n/**\n * @internal\n * Converts the .net ticks to a JS Date object.\n *\n * - The epoch for the DateTimeOffset type is `0000-01-01`, while the epoch for JS Dates is\n * `1970-01-01`.\n * - The DateTimeOffset ticks value for the date `1970-01-01` is `621355968000000000`.\n * - Hence, to convert it to the JS epoch; we `subtract` the delta from the given value.\n * - Ticks in DateTimeOffset is `1/10000000` second, while ticks in JS Date is `1/1000` second.\n * - Thus, we `divide` the value by `10000` to convert it to JS Date ticks.\n *\n * @param buf - Input as a Buffer\n * @returns The JS Date object.\n */\nexport function convertTicksToDate(buf: number[]): Date {\n const epochMicroDiff: number = 621355968000000000;\n const longValue: Long = Long.fromBytesBE(buf);\n const timeInMS = longValue.sub(epochMicroDiff).div(10000).toNumber();\n const result = new Date(timeInMS);\n logger.verbose(\"The converted date is: %s\", result.toString());\n return result;\n}\n\n/**\n * @internal\n * Converts any given input to a Buffer.\n * @param input - The input that needs to be converted to a Buffer.\n */\nexport function toBuffer(input: unknown): Buffer {\n let result: any;\n messageLogger.verbose(\n \"[utils.toBuffer] The given message body that needs to be converted to buffer is: \",\n input,\n );\n if (isBuffer(input)) {\n result = input;\n } else {\n // string, undefined, null, boolean, array, object, number should end up here\n // coercing undefined to null as that will ensure that null value will be given to the\n // customer on receive.\n if (input === undefined) input = null;\n try {\n const inputStr = JSON.stringify(input);\n result = Buffer.from(inputStr, \"utf8\");\n } catch (err: any) {\n const msg =\n `An error occurred while executing JSON.stringify() on the given input ` +\n input +\n `${err instanceof Error ? err.stack : JSON.stringify(err)}`;\n messageLogger.warning(\"[utils.toBuffer] \" + msg);\n throw err instanceof Error ? err : new Error(msg);\n }\n }\n messageLogger.verbose(\"[utils.toBuffer] The converted buffer is: %O.\", result);\n return result;\n}\n\n/**\n * @internal\n * Helper utility to retrieve `string` value from given string,\n * or throws error if undefined.\n */\nexport function getString(value: unknown, nameOfProperty: string): string {\n const result = getStringOrUndefined(value);\n if (result === undefined) {\n throw new Error(\n `\"${nameOfProperty}\" received from service expected to be a string value and not undefined.`,\n );\n }\n return result;\n}\n\n/**\n * @internal\n * Helper utility to retrieve `string` value from given input,\n * or undefined if not passed in.\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function getStringOrUndefined(value: any): string | undefined {\n if (!isDefined(value)) {\n return undefined;\n }\n return value.toString();\n}\n\n/**\n * @internal\n * Helper utility to retrieve `integer` value from given string,\n * or throws error if undefined.\n */\nexport function getInteger(value: unknown, nameOfProperty: string): number {\n const result = getIntegerOrUndefined(value);\n if (result === undefined) {\n throw new Error(\n `\"${nameOfProperty}\" received from service expected to be a number value and not undefined.`,\n );\n }\n return result;\n}\n\n/**\n * @internal\n * Helper utility to retrieve `integer` value from given string,\n * or undefined if not passed in.\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function getIntegerOrUndefined(value: any): number | undefined {\n if (!isDefined(value)) {\n return undefined;\n }\n const result = parseInt(value.toString());\n return isNaN(result) ? undefined : result;\n}\n\n/**\n * @internal\n * Helper utility to convert ISO-8601 time into Date type.\n */\nexport function getDate(value: string, nameOfProperty: string): Date {\n return new Date(getString(value, nameOfProperty));\n}\n\n/**\n * @internal\n * Helper utility to retrieve `boolean` value from given string,\n * or throws error if undefined.\n */\nexport function getBoolean(value: unknown, nameOfProperty: string): boolean {\n const result = getBooleanOrUndefined(value);\n if (result === undefined) {\n throw new Error(\n `\"${nameOfProperty}\" received from service expected to be a boolean value and not undefined.`,\n );\n }\n return result;\n}\n\n/**\n * @internal\n * Helper utility to retrieve `boolean` value from given string,\n * or undefined if not passed in.\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function getBooleanOrUndefined(value: any): boolean | undefined {\n if (!isDefined(value)) {\n return undefined;\n }\n return value.toString().trim().toLowerCase() === \"true\";\n}\n\n/**\n * @internal\n * Helps in differentiating JSON like objects from other kinds of objects.\n */\nconst EMPTY_JSON_OBJECT_CONSTRUCTOR = {}.constructor;\n\n/**\n * @internal\n * Returns `true` if given input is a JSON like object.\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function isJSONLikeObject(value: any): boolean {\n // `value.constructor === {}.constructor` differentiates among the \"object\"s,\n // would filter the JSON objects and won't match any array or other kinds of objects\n\n // -------------------------------------------------------------------------------\n // Few examples | typeof obj ===\"object\" | obj.constructor==={}.constructor\n // -------------------------------------------------------------------------------\n // {abc:1} | true | true\n // [\"a\",\"b\"] | true | false\n // [{\"a\":1},{\"b\":2}] | true | false\n // new Date() | true | false\n // 123 | false | false\n // -------------------------------------------------------------------------------\n return typeof value === \"object\" && value.constructor === EMPTY_JSON_OBJECT_CONSTRUCTOR;\n}\n\n/**\n * @internal\n * Helper utility to retrieve message count details from given input,\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function getMessageCountDetails(value: any): MessageCountDetails {\n const xmlnsPrefix = getXMLNSPrefix(value);\n if (!isDefined(value)) {\n value = {};\n }\n return {\n activeMessageCount: parseInt(value[`${xmlnsPrefix}:ActiveMessageCount`]) || 0,\n deadLetterMessageCount: parseInt(value[`${xmlnsPrefix}:DeadLetterMessageCount`]) || 0,\n scheduledMessageCount: parseInt(value[`${xmlnsPrefix}:ScheduledMessageCount`]) || 0,\n transferMessageCount: parseInt(value[`${xmlnsPrefix}:TransferMessageCount`]) || 0,\n transferDeadLetterMessageCount:\n parseInt(value[`${xmlnsPrefix}:TransferDeadLetterMessageCount`]) || 0,\n };\n}\n\n/**\n * @internal\n * Gets the xmlns prefix from the root of the objects that are part of the parsed response body.\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function getXMLNSPrefix(value: any): string {\n if (!value[Constants.XML_METADATA_MARKER]) {\n throw new Error(\n `Error occurred while parsing the response body - cannot find the XML_METADATA_MARKER \"$\" on the object ${JSON.stringify(\n value,\n )}`,\n );\n }\n const keys = Object.keys(value[Constants.XML_METADATA_MARKER]);\n if (keys.length !== 1) {\n throw new Error(\n `Error occurred while parsing the response body - unexpected number of \"xmlns:\\${prefix}\" keys at ${JSON.stringify(\n value[Constants.XML_METADATA_MARKER],\n )}`,\n );\n }\n if (!keys[0].startsWith(\"xmlns:\")) {\n throw new Error(\n `Error occurred while parsing the response body - unexpected key at ${JSON.stringify(\n value[Constants.XML_METADATA_MARKER],\n )}`,\n );\n }\n // Pick the substring that's after \"xmlns:\"\n const xmlnsPrefix = keys[0].substring(6);\n if (!xmlnsPrefix) {\n throw new Error(\n `Error occurred while parsing the response body - unexpected xmlns prefix at ${JSON.stringify(\n value[Constants.XML_METADATA_MARKER],\n )}`,\n );\n }\n return xmlnsPrefix;\n}\n\n/**\n * Represents type of message count details in ATOM based management operations.\n * @internal\n */\nexport type MessageCountDetails = {\n activeMessageCount: number;\n deadLetterMessageCount: number;\n scheduledMessageCount: number;\n transferMessageCount: number;\n transferDeadLetterMessageCount: number;\n};\n\n/**\n * Represents type of `AuthorizationRule` in ATOM based management operations.\n */\nexport interface AuthorizationRule {\n /**\n * The claim type.\n */\n claimType: string;\n /**\n * The list of rights(\"Manage\" | \"Send\" | \"Listen\").\n */\n accessRights?: (\"Manage\" | \"Send\" | \"Listen\")[];\n /**\n * The authorization rule key name.\n */\n keyName: string;\n /**\n * The primary key for the authorization rule.\n */\n primaryKey?: string;\n /**\n * The secondary key for the authorization rule.\n */\n secondaryKey?: string;\n}\n\n/**\n * @internal\n * Helper utility to retrieve array of `AuthorizationRule` from given input,\n * or undefined if not passed in.\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function getAuthorizationRulesOrUndefined(value: any): AuthorizationRule[] | undefined {\n const authorizationRules: AuthorizationRule[] = [];\n\n // Ignore special case as Service Bus treats \"\" as a valid value for authorization rules\n if (typeof value === \"string\" && value.trim() === \"\") {\n return undefined;\n }\n\n if (!isDefined(value)) {\n return undefined;\n }\n\n const rawAuthorizationRules = value.AuthorizationRule;\n if (Array.isArray(rawAuthorizationRules)) {\n for (let i = 0; i < rawAuthorizationRules.length; i++) {\n authorizationRules.push(buildAuthorizationRule(rawAuthorizationRules[i]));\n }\n } else {\n authorizationRules.push(buildAuthorizationRule(rawAuthorizationRules));\n }\n return authorizationRules;\n}\n\n/**\n * @internal\n * Helper utility to build an instance of parsed authorization rule as `AuthorizationRule` from given input.\n */\nfunction buildAuthorizationRule(value: any): AuthorizationRule {\n let accessRights;\n if (isDefined(value[\"Rights\"])) {\n accessRights = value[\"Rights\"][\"AccessRights\"];\n }\n\n const authorizationRule: AuthorizationRule = {\n claimType: value[\"ClaimType\"],\n accessRights,\n keyName: value[\"KeyName\"],\n primaryKey: value[\"PrimaryKey\"],\n secondaryKey: value[\"SecondaryKey\"],\n };\n\n if (authorizationRule.accessRights && !Array.isArray(authorizationRule.accessRights)) {\n authorizationRule.accessRights = [authorizationRule.accessRights];\n }\n return authorizationRule;\n}\n\n/**\n * @internal\n * Helper utility to extract output containing array of `RawAuthorizationRule` instances from given input,\n * or undefined if not passed in.\n */\nexport function getRawAuthorizationRules(authorizationRules: AuthorizationRule[] | undefined): any {\n if (!isDefined(authorizationRules)) {\n return undefined;\n }\n\n if (!Array.isArray(authorizationRules)) {\n throw new TypeError(\n `authorizationRules must be an array of AuthorizationRule objects or undefined, but received ${JSON.stringify(\n authorizationRules,\n undefined,\n 2,\n )}`,\n );\n }\n\n const rawAuthorizationRules: any[] = [];\n for (let i = 0; i < authorizationRules.length; i++) {\n rawAuthorizationRules.push(buildRawAuthorizationRule(authorizationRules[i]));\n }\n return { AuthorizationRule: rawAuthorizationRules };\n}\n\n/**\n * @internal\n * Helper utility to build an instance of raw authorization rule as RawAuthorizationRule from given `AuthorizationRule` input.\n * @param authorizationRule - parsed Authorization Rule instance\n */\nfunction buildRawAuthorizationRule(authorizationRule: AuthorizationRule): any {\n if (!isJSONLikeObject(authorizationRule) || authorizationRule === null) {\n throw new TypeError(\n `Expected authorizationRule input to be a JS object value, but received ${JSON.stringify(\n authorizationRule,\n undefined,\n 2,\n )}`,\n );\n }\n\n const rawAuthorizationRule: any = {\n ClaimType: authorizationRule.claimType,\n // ClaimValue is not settable by the users, but service expects the value for PUT requests\n ClaimValue: \"None\",\n Rights: {\n AccessRights: authorizationRule.accessRights,\n },\n KeyName: authorizationRule.keyName,\n PrimaryKey: authorizationRule.primaryKey,\n SecondaryKey: authorizationRule.secondaryKey,\n };\n rawAuthorizationRule[Constants.XML_METADATA_MARKER] = {\n \"p5:type\": \"SharedAccessAuthorizationRule\",\n \"xmlns:p5\": \"http://www.w3.org/2001/XMLSchema-instance\",\n };\n return rawAuthorizationRule;\n}\n\n/**\n * @internal\n * Helper utility to check if given string is an absolute URL\n */\nexport function isAbsoluteUrl(url: string): boolean {\n const _url = url.toLowerCase();\n return _url.startsWith(\"sb://\") || _url.startsWith(\"http://\") || _url.startsWith(\"https://\");\n}\n\n/**\n * Possible values for `status` of the Service Bus messaging entities.\n */\nexport type EntityStatus =\n | \"Active\"\n | \"Creating\"\n | \"Deleting\"\n | \"ReceiveDisabled\"\n | \"SendDisabled\"\n | \"Disabled\"\n | \"Renaming\"\n | \"Restoring\"\n | \"Unknown\";\n\n/**\n * Possible values for `availabilityStatus` of the Service Bus messaging entities.\n */\nexport type EntityAvailabilityStatus =\n | \"Available\"\n | \"Limited\"\n | \"Renaming\"\n | \"Restoring\"\n | \"Unknown\";\n\n/**\n * @internal\n */\ntype setTimeoutArgs = (callback: (...args: any[]) => void, ms: number, ...args: any[]) => any;\n\n/**\n * An executor for a function that returns a Promise that obeys both a timeout and an\n * optional AbortSignal.\n * @param timeoutMs - The number of milliseconds to allow before throwing an OperationTimeoutError.\n * @param timeoutMessage - The message to place in the .description field for the thrown exception for Timeout.\n * @param abortSignal - The abortSignal associated with containing operation.\n * @param abortErrorMsg - The abort error message associated with containing operation.\n * @param value - The value to be resolved with after a timeout of t milliseconds.\n *\n * @internal\n */\nexport async function waitForTimeoutOrAbortOrResolve<T>(args: {\n actionFn: () => Promise<T>;\n timeoutMs: number;\n timeoutMessage: string;\n abortSignal?: AbortSignalLike;\n // these are optional and only here for testing.\n timeoutFunctions?: {\n setTimeoutFn: setTimeoutArgs;\n clearTimeoutFn: (timeoutId: any) => void;\n };\n}): Promise<T> {\n if (args.abortSignal && args.abortSignal.aborted) {\n throw new AbortError(StandardAbortMessage);\n }\n\n let timer: any | undefined = undefined;\n let clearAbortSignal: (() => void) | undefined = undefined;\n\n const clearAbortSignalAndTimer = (): void => {\n (args.timeoutFunctions?.clearTimeoutFn ?? clearTimeout)(timer);\n\n if (clearAbortSignal) {\n clearAbortSignal();\n }\n };\n\n const abortOrTimeoutPromise = new Promise<T>((_resolve, reject) => {\n clearAbortSignal = checkAndRegisterWithAbortSignal(reject, args.abortSignal);\n\n timer = (args.timeoutFunctions?.setTimeoutFn ?? setTimeout)(() => {\n reject(new OperationTimeoutError(args.timeoutMessage));\n }, args.timeoutMs);\n });\n\n try {\n return await Promise.race([abortOrTimeoutPromise, args.actionFn()]);\n } finally {\n clearAbortSignalAndTimer();\n }\n}\n\n/**\n * Registers listener to the abort event on the abortSignal to call your abortFn and\n * returns a function that will clear the same listener.\n *\n * If abort signal is already aborted, then throws an AbortError and returns a function that does nothing\n *\n * @returns A function that removes any of our attached event listeners on the abort signal or an empty function if\n * the abortSignal was not defined.\n *\n * @internal\n */\nexport function checkAndRegisterWithAbortSignal(\n onAbortFn: (abortError: AbortError) => void,\n abortSignal?: AbortSignalLike,\n): () => void {\n if (abortSignal == null) {\n return () => {\n /** Nothing to do here, no abort signal */\n };\n }\n\n if (abortSignal.aborted) {\n throw new AbortError(StandardAbortMessage);\n }\n\n const onAbort = (): void => {\n abortSignal.removeEventListener(\"abort\", onAbort);\n onAbortFn(new AbortError(StandardAbortMessage));\n };\n\n abortSignal.addEventListener(\"abort\", onAbort);\n\n return () => abortSignal.removeEventListener(\"abort\", onAbort);\n}\n\n/**\n * @internal\n * The user agent prefix string for the ServiceBus client.\n * See guideline at https://azure.github.io/azure-sdk/general_azurecore.html#telemetry-policy\n */\nexport const libInfo: string = `azsdk-js-azureservicebus/${Constants.packageJsonInfo.version}`;\n\n/**\n * @internal\n * Returns the formatted prefix by removing the spaces, by appending the libInfo.\n */\nexport function formatUserAgentPrefix(prefix?: string): string {\n let userAgentPrefix = `${(prefix || \"\").replace(\" \", \"\")}`;\n userAgentPrefix = userAgentPrefix.length > 0 ? userAgentPrefix + \" \" : \"\";\n return `${userAgentPrefix}${libInfo}`;\n}\n\n/**\n * @internal\n * Helper method which returns `HttpResponse` from an object of shape `PipelineResponse`.\n * TODO: remove this and use toHttpResponse() directly\n */\nexport const getHttpResponseOnly = (pipelineResponse: PipelineResponse): HttpResponse =>\n toHttpResponse(pipelineResponse);\n\n/**\n * @internal\n * Type with the service versions for the ATOM API.\n */\nexport type ServiceBusAtomAPIVersion = \"2021-05\" | \"2017-04\";\n\n/**\n * @internal\n * Waits for one second if a sender is not sendable then check again. Throws\n * SenderBusyError if it is still not sendable.\n * Only waits when operation timeout is greater than one second.\n * @returns the actual waiting time.\n */\nexport async function waitForSendable(\n sendLogger: ServiceBusLogger,\n logPrefix: string,\n name: string,\n timeout: number,\n sender:\n | {\n sendable: () => boolean;\n credit: number;\n }\n | undefined,\n outgoingAvaiable: number,\n): Promise<number> {\n let waitTimeForSendable = 1000;\n if (!sender?.sendable() && timeout > waitTimeForSendable) {\n sendLogger.verbose(\n \"%s Sender '%s', waiting for 1 second for sender to become sendable\",\n logPrefix,\n name,\n );\n\n await delay(waitTimeForSendable);\n\n sendLogger.verbose(\n \"%s Sender '%s' after waiting for a second, credit: %d available: %d\",\n logPrefix,\n name,\n sender?.credit,\n outgoingAvaiable,\n );\n } else {\n waitTimeForSendable = 0;\n }\n\n if (!sender?.sendable()) {\n // let us retry to send the message after some time.\n const msg =\n `[${logPrefix}] Sender \"${name}\", ` + `cannot send the message right now. Please try later.`;\n sendLogger.warning(msg);\n const amqpError: AmqpError = {\n condition: ErrorNameConditionMapper.SenderBusyError,\n description: msg,\n };\n throw translateServiceBusError(amqpError);\n }\n return waitTimeForSendable;\n}\n"]}