@ale-rainbow/web-sdk 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (556) hide show
  1. package/README.md +44 -0
  2. package/lib/index.d.ts +8 -0
  3. package/lib/index.d.ts.map +1 -0
  4. package/lib/index.js +501 -0
  5. package/lib/index.js.map +7 -0
  6. package/lib/libs/index.d.ts +3 -0
  7. package/lib/libs/index.d.ts.map +1 -0
  8. package/lib/libs/strophe/strophe-plugin.d.ts +13 -0
  9. package/lib/libs/strophe/strophe-plugin.d.ts.map +1 -0
  10. package/lib/libs/strophe/strophe.jingle.d.ts +35 -0
  11. package/lib/libs/strophe/strophe.jingle.d.ts.map +1 -0
  12. package/lib/libs/strophe/strophe.jingle.sdp.d.ts +44 -0
  13. package/lib/libs/strophe/strophe.jingle.sdp.d.ts.map +1 -0
  14. package/lib/libs/strophe/strophe.jingle.session.d.ts +624 -0
  15. package/lib/libs/strophe/strophe.jingle.session.d.ts.map +1 -0
  16. package/lib/libs/strophe/strophe.jingle.session.stats.d.ts +791 -0
  17. package/lib/libs/strophe/strophe.jingle.session.stats.d.ts.map +1 -0
  18. package/lib/libs/strophe/strophe.lastactivity.d.ts +9 -0
  19. package/lib/libs/strophe/strophe.lastactivity.d.ts.map +1 -0
  20. package/lib/libs/strophe/strophe.mam.d.ts +11 -0
  21. package/lib/libs/strophe/strophe.mam.d.ts.map +1 -0
  22. package/lib/libs/strophe/strophe.ping.d.ts +39 -0
  23. package/lib/libs/strophe/strophe.ping.d.ts.map +1 -0
  24. package/lib/libs/strophe/strophe.rsm.d.ts +24 -0
  25. package/lib/libs/strophe/strophe.rsm.d.ts.map +1 -0
  26. package/lib/libs/strophe/types.d.ts +23 -0
  27. package/lib/libs/strophe/types.d.ts.map +1 -0
  28. package/lib/models/authSettings.model.d.ts +38 -0
  29. package/lib/models/authSettings.model.d.ts.map +1 -0
  30. package/lib/models/bubble.model.d.ts +1114 -0
  31. package/lib/models/bubble.model.d.ts.map +1 -0
  32. package/lib/models/bubbleConferenceRecap.model.d.ts +532 -0
  33. package/lib/models/bubbleConferenceRecap.model.d.ts.map +1 -0
  34. package/lib/models/call.model.d.ts +1271 -0
  35. package/lib/models/call.model.d.ts.map +1 -0
  36. package/lib/models/callLog.model.d.ts +361 -0
  37. package/lib/models/callLog.model.d.ts.map +1 -0
  38. package/lib/models/channel.model.d.ts +692 -0
  39. package/lib/models/channel.model.d.ts.map +1 -0
  40. package/lib/models/channelMessage.model.d.ts +300 -0
  41. package/lib/models/channelMessage.model.d.ts.map +1 -0
  42. package/lib/models/cli.model.d.ts +59 -0
  43. package/lib/models/cli.model.d.ts.map +1 -0
  44. package/lib/models/common/context.d.ts +37 -0
  45. package/lib/models/common/context.d.ts.map +1 -0
  46. package/lib/models/common/error.d.ts +26 -0
  47. package/lib/models/common/error.d.ts.map +1 -0
  48. package/lib/models/common/fileDescriptor.d.ts +317 -0
  49. package/lib/models/common/fileDescriptor.d.ts.map +1 -0
  50. package/lib/models/common/filePublicDownload.d.ts +26 -0
  51. package/lib/models/common/filePublicDownload.d.ts.map +1 -0
  52. package/lib/models/common/fileViewer.d.ts +20 -0
  53. package/lib/models/common/fileViewer.d.ts.map +1 -0
  54. package/lib/models/common/index.d.ts +9 -0
  55. package/lib/models/common/index.d.ts.map +1 -0
  56. package/lib/models/common/theme.d.ts +185 -0
  57. package/lib/models/common/theme.d.ts.map +1 -0
  58. package/lib/models/common/themeColor.d.ts +47 -0
  59. package/lib/models/common/themeColor.d.ts.map +1 -0
  60. package/lib/models/common/userTheme.d.ts +42 -0
  61. package/lib/models/common/userTheme.d.ts.map +1 -0
  62. package/lib/models/company-invitation.model.d.ts +42 -0
  63. package/lib/models/company-invitation.model.d.ts.map +1 -0
  64. package/lib/models/company.model.d.ts +639 -0
  65. package/lib/models/company.model.d.ts.map +1 -0
  66. package/lib/models/contact.model.d.ts +1208 -0
  67. package/lib/models/contact.model.d.ts.map +1 -0
  68. package/lib/models/conversation.model.d.ts +768 -0
  69. package/lib/models/conversation.model.d.ts.map +1 -0
  70. package/lib/models/customManifest.model.d.ts +82 -0
  71. package/lib/models/customManifest.model.d.ts.map +1 -0
  72. package/lib/models/dataChannel.model.d.ts +178 -0
  73. package/lib/models/dataChannel.model.d.ts.map +1 -0
  74. package/lib/models/dial-in-phone-numbers.model.d.ts +18 -0
  75. package/lib/models/dial-in-phone-numbers.model.d.ts.map +1 -0
  76. package/lib/models/directoryContact.model.d.ts +205 -0
  77. package/lib/models/directoryContact.model.d.ts.map +1 -0
  78. package/lib/models/event.model.d.ts +14 -0
  79. package/lib/models/event.model.d.ts.map +1 -0
  80. package/lib/models/favorite.model.d.ts +94 -0
  81. package/lib/models/favorite.model.d.ts.map +1 -0
  82. package/lib/models/fileDocument.model.d.ts +345 -0
  83. package/lib/models/fileDocument.model.d.ts.map +1 -0
  84. package/lib/models/geoLoc.model.d.ts +6 -0
  85. package/lib/models/geoLoc.model.d.ts.map +1 -0
  86. package/lib/models/index.d.ts +46 -0
  87. package/lib/models/index.d.ts.map +1 -0
  88. package/lib/models/invitation.model.d.ts +88 -0
  89. package/lib/models/invitation.model.d.ts.map +1 -0
  90. package/lib/models/invoices.model.d.ts +76 -0
  91. package/lib/models/invoices.model.d.ts.map +1 -0
  92. package/lib/models/logEntry.model.d.ts +23 -0
  93. package/lib/models/logEntry.model.d.ts.map +1 -0
  94. package/lib/models/message.model.d.ts +400 -0
  95. package/lib/models/message.model.d.ts.map +1 -0
  96. package/lib/models/messageAdditionalContent.parsers.d.ts +32 -0
  97. package/lib/models/messageAdditionalContent.parsers.d.ts.map +1 -0
  98. package/lib/models/offer.model.d.ts +16 -0
  99. package/lib/models/offer.model.d.ts.map +1 -0
  100. package/lib/models/p2pRecap.model.d.ts +372 -0
  101. package/lib/models/p2pRecap.model.d.ts.map +1 -0
  102. package/lib/models/paymentMethods.model.d.ts +98 -0
  103. package/lib/models/paymentMethods.model.d.ts.map +1 -0
  104. package/lib/models/personalRoutine.model.d.ts +173 -0
  105. package/lib/models/personalRoutine.model.d.ts.map +1 -0
  106. package/lib/models/poll.model.d.ts +139 -0
  107. package/lib/models/poll.model.d.ts.map +1 -0
  108. package/lib/models/rainbow-auth.model.d.ts +137 -0
  109. package/lib/models/rainbow-auth.model.d.ts.map +1 -0
  110. package/lib/models/searchTextConvResults.model.d.ts +30 -0
  111. package/lib/models/searchTextConvResults.model.d.ts.map +1 -0
  112. package/lib/models/site.model.d.ts +165 -0
  113. package/lib/models/site.model.d.ts.map +1 -0
  114. package/lib/models/subscription.model.d.ts +592 -0
  115. package/lib/models/subscription.model.d.ts.map +1 -0
  116. package/lib/models/telephonyConfig.model.d.ts +144 -0
  117. package/lib/models/telephonyConfig.model.d.ts.map +1 -0
  118. package/lib/models/telephonyForward.model.d.ts +47 -0
  119. package/lib/models/telephonyForward.model.d.ts.map +1 -0
  120. package/lib/models/todo.model.d.ts +103 -0
  121. package/lib/models/todo.model.d.ts.map +1 -0
  122. package/lib/models/transcription.model.d.ts +59 -0
  123. package/lib/models/transcription.model.d.ts.map +1 -0
  124. package/lib/models/user.model.d.ts +1008 -0
  125. package/lib/models/user.model.d.ts.map +1 -0
  126. package/lib/models/userProfileTemplate.model.d.ts +735 -0
  127. package/lib/models/userProfileTemplate.model.d.ts.map +1 -0
  128. package/lib/models/usersList.model.d.ts +117 -0
  129. package/lib/models/usersList.model.d.ts.map +1 -0
  130. package/lib/models/webConferenceParticipant.model.d.ts +135 -0
  131. package/lib/models/webConferenceParticipant.model.d.ts.map +1 -0
  132. package/lib/models/webConferenceSession.model.d.ts +658 -0
  133. package/lib/models/webConferenceSession.model.d.ts.map +1 -0
  134. package/lib/models/webinar.model.d.ts +738 -0
  135. package/lib/models/webinar.model.d.ts.map +1 -0
  136. package/lib/models/webinarRecap.model.d.ts +118 -0
  137. package/lib/models/webinarRecap.model.d.ts.map +1 -0
  138. package/lib/node.d.ts +3 -0
  139. package/lib/node.d.ts.map +1 -0
  140. package/lib/node.js +423 -0
  141. package/lib/node.js.map +7 -0
  142. package/lib/node.sdk.d.ts +41 -0
  143. package/lib/node.sdk.d.ts.map +1 -0
  144. package/lib/plugins/admin.plugin.d.ts +6 -0
  145. package/lib/plugins/admin.plugin.d.ts.map +1 -0
  146. package/lib/plugins/bubbleConference.plugin.d.ts +6 -0
  147. package/lib/plugins/bubbleConference.plugin.d.ts.map +1 -0
  148. package/lib/plugins/bubbleTag.plugin.d.ts +6 -0
  149. package/lib/plugins/bubbleTag.plugin.d.ts.map +1 -0
  150. package/lib/plugins/bubbles.plugin.d.ts +6 -0
  151. package/lib/plugins/bubbles.plugin.d.ts.map +1 -0
  152. package/lib/plugins/businessDirectory.plugin.d.ts +6 -0
  153. package/lib/plugins/businessDirectory.plugin.d.ts.map +1 -0
  154. package/lib/plugins/callRecorder.plugin.d.ts +6 -0
  155. package/lib/plugins/callRecorder.plugin.d.ts.map +1 -0
  156. package/lib/plugins/calllog.plugin.d.ts +6 -0
  157. package/lib/plugins/calllog.plugin.d.ts.map +1 -0
  158. package/lib/plugins/calls.plugin.d.ts +6 -0
  159. package/lib/plugins/calls.plugin.d.ts.map +1 -0
  160. package/lib/plugins/channels.plugin.d.ts +6 -0
  161. package/lib/plugins/channels.plugin.d.ts.map +1 -0
  162. package/lib/plugins/dataChannel.plugin.d.ts +6 -0
  163. package/lib/plugins/dataChannel.plugin.d.ts.map +1 -0
  164. package/lib/plugins/deviceManagement.plugin.d.ts +6 -0
  165. package/lib/plugins/deviceManagement.plugin.d.ts.map +1 -0
  166. package/lib/plugins/favorites.plugin.d.ts +6 -0
  167. package/lib/plugins/favorites.plugin.d.ts.map +1 -0
  168. package/lib/plugins/fileDocument.plugin.d.ts +6 -0
  169. package/lib/plugins/fileDocument.plugin.d.ts.map +1 -0
  170. package/lib/plugins/helpCenter.plugin.d.ts +6 -0
  171. package/lib/plugins/helpCenter.plugin.d.ts.map +1 -0
  172. package/lib/plugins/index.d.ts +27 -0
  173. package/lib/plugins/index.d.ts.map +1 -0
  174. package/lib/plugins/microsoft0365Ad.plugin.d.ts +6 -0
  175. package/lib/plugins/microsoft0365Ad.plugin.d.ts.map +1 -0
  176. package/lib/plugins/pbxUsers.plugin.d.ts +6 -0
  177. package/lib/plugins/pbxUsers.plugin.d.ts.map +1 -0
  178. package/lib/plugins/personalDirectory.plugin.d.ts +6 -0
  179. package/lib/plugins/personalDirectory.plugin.d.ts.map +1 -0
  180. package/lib/plugins/plugin.d.ts +8 -0
  181. package/lib/plugins/plugin.d.ts.map +1 -0
  182. package/lib/plugins/polls.plugin.d.ts +6 -0
  183. package/lib/plugins/polls.plugin.d.ts.map +1 -0
  184. package/lib/plugins/rpc.plugin.d.ts +6 -0
  185. package/lib/plugins/rpc.plugin.d.ts.map +1 -0
  186. package/lib/plugins/telemetry.plugin.d.ts +6 -0
  187. package/lib/plugins/telemetry.plugin.d.ts.map +1 -0
  188. package/lib/plugins/telephony.plugin.d.ts +6 -0
  189. package/lib/plugins/telephony.plugin.d.ts.map +1 -0
  190. package/lib/plugins/telephonyConfig.plugin.d.ts +6 -0
  191. package/lib/plugins/telephonyConfig.plugin.d.ts.map +1 -0
  192. package/lib/plugins/transcription.plugin.d.ts +6 -0
  193. package/lib/plugins/transcription.plugin.d.ts.map +1 -0
  194. package/lib/plugins/usersList.plugin.d.ts +6 -0
  195. package/lib/plugins/usersList.plugin.d.ts.map +1 -0
  196. package/lib/plugins/virtualBackground.plugin.d.ts +6 -0
  197. package/lib/plugins/virtualBackground.plugin.d.ts.map +1 -0
  198. package/lib/plugins/webinar.plugin.d.ts +6 -0
  199. package/lib/plugins/webinar.plugin.d.ts.map +1 -0
  200. package/lib/rainbow.sdk.d.ts +309 -0
  201. package/lib/rainbow.sdk.d.ts.map +1 -0
  202. package/lib/services/admin/admin-alarm.service.d.ts +42 -0
  203. package/lib/services/admin/admin-alarm.service.d.ts.map +1 -0
  204. package/lib/services/admin/admin-company.service.d.ts +167 -0
  205. package/lib/services/admin/admin-company.service.d.ts.map +1 -0
  206. package/lib/services/admin/admin-department.service.d.ts +39 -0
  207. package/lib/services/admin/admin-department.service.d.ts.map +1 -0
  208. package/lib/services/admin/admin-invitation.service.d.ts +114 -0
  209. package/lib/services/admin/admin-invitation.service.d.ts.map +1 -0
  210. package/lib/services/admin/admin-management.service.d.ts +100 -0
  211. package/lib/services/admin/admin-management.service.d.ts.map +1 -0
  212. package/lib/services/admin/admin-rvcp.service.d.ts +43 -0
  213. package/lib/services/admin/admin-rvcp.service.d.ts.map +1 -0
  214. package/lib/services/admin/admin-site.service.d.ts +64 -0
  215. package/lib/services/admin/admin-site.service.d.ts.map +1 -0
  216. package/lib/services/admin/admin-subscription.service.d.ts +135 -0
  217. package/lib/services/admin/admin-subscription.service.d.ts.map +1 -0
  218. package/lib/services/admin/admin-tag.service.d.ts +79 -0
  219. package/lib/services/admin/admin-tag.service.d.ts.map +1 -0
  220. package/lib/services/admin/admin-user-profile.service.d.ts +76 -0
  221. package/lib/services/admin/admin-user-profile.service.d.ts.map +1 -0
  222. package/lib/services/admin/admin-user.service.d.ts +338 -0
  223. package/lib/services/admin/admin-user.service.d.ts.map +1 -0
  224. package/lib/services/admin/admin.common.d.ts +40 -0
  225. package/lib/services/admin/admin.common.d.ts.map +1 -0
  226. package/lib/services/admin/admin.service.d.ts +138 -0
  227. package/lib/services/admin/admin.service.d.ts.map +1 -0
  228. package/lib/services/admin/index.d.ts +14 -0
  229. package/lib/services/admin/index.d.ts.map +1 -0
  230. package/lib/services/bot/bot.service.d.ts +121 -0
  231. package/lib/services/bot/bot.service.d.ts.map +1 -0
  232. package/lib/services/bubbles/bubble.service.d.ts +889 -0
  233. package/lib/services/bubbles/bubble.service.d.ts.map +1 -0
  234. package/lib/services/bubbles/bubbleTag.service.d.ts +132 -0
  235. package/lib/services/bubbles/bubbleTag.service.d.ts.map +1 -0
  236. package/lib/services/bubbles/index.d.ts +3 -0
  237. package/lib/services/bubbles/index.d.ts.map +1 -0
  238. package/lib/services/call/call.service.d.ts +297 -0
  239. package/lib/services/call/call.service.d.ts.map +1 -0
  240. package/lib/services/call/callRecorder.service.d.ts +358 -0
  241. package/lib/services/call/callRecorder.service.d.ts.map +1 -0
  242. package/lib/services/call/index.d.ts +3 -0
  243. package/lib/services/call/index.d.ts.map +1 -0
  244. package/lib/services/callLog/callLog.service.d.ts +563 -0
  245. package/lib/services/callLog/callLog.service.d.ts.map +1 -0
  246. package/lib/services/callLog/index.d.ts +5 -0
  247. package/lib/services/callLog/index.d.ts.map +1 -0
  248. package/lib/services/callLog/p2pRecap.service.d.ts +206 -0
  249. package/lib/services/callLog/p2pRecap.service.d.ts.map +1 -0
  250. package/lib/services/channels/channel.service.d.ts +626 -0
  251. package/lib/services/channels/channel.service.d.ts.map +1 -0
  252. package/lib/services/channels/index.d.ts +3 -0
  253. package/lib/services/channels/index.d.ts.map +1 -0
  254. package/lib/services/citrix/citrix.service.d.ts +30 -0
  255. package/lib/services/citrix/citrix.service.d.ts.map +1 -0
  256. package/lib/services/citrix/index.d.ts +3 -0
  257. package/lib/services/citrix/index.d.ts.map +1 -0
  258. package/lib/services/company/company-directory.service.d.ts +222 -0
  259. package/lib/services/company/company-directory.service.d.ts.map +1 -0
  260. package/lib/services/conference/bubbleConference.service.d.ts +1237 -0
  261. package/lib/services/conference/bubbleConference.service.d.ts.map +1 -0
  262. package/lib/services/conference/bubbleConferenceRecap.service.d.ts +159 -0
  263. package/lib/services/conference/bubbleConferenceRecap.service.d.ts.map +1 -0
  264. package/lib/services/conference/index.d.ts +5 -0
  265. package/lib/services/conference/index.d.ts.map +1 -0
  266. package/lib/services/conference/webConferenceHelper.d.ts +25 -0
  267. package/lib/services/conference/webConferenceHelper.d.ts.map +1 -0
  268. package/lib/services/conversation/conversation.service.d.ts +723 -0
  269. package/lib/services/conversation/conversation.service.d.ts.map +1 -0
  270. package/lib/services/conversation/conversationServiceBulkHistoryHandler.d.ts +39 -0
  271. package/lib/services/conversation/conversationServiceBulkHistoryHandler.d.ts.map +1 -0
  272. package/lib/services/conversation/conversationServiceEventHandler.d.ts +78 -0
  273. package/lib/services/conversation/conversationServiceEventHandler.d.ts.map +1 -0
  274. package/lib/services/conversation/index.d.ts +3 -0
  275. package/lib/services/conversation/index.d.ts.map +1 -0
  276. package/lib/services/core/account.service.d.ts +98 -0
  277. package/lib/services/core/account.service.d.ts.map +1 -0
  278. package/lib/services/core/auth.service.d.ts +303 -0
  279. package/lib/services/core/auth.service.d.ts.map +1 -0
  280. package/lib/services/core/company.service.d.ts +30 -0
  281. package/lib/services/core/company.service.d.ts.map +1 -0
  282. package/lib/services/core/connection.service.d.ts +209 -0
  283. package/lib/services/core/connection.service.d.ts.map +1 -0
  284. package/lib/services/core/contact.service.d.ts +617 -0
  285. package/lib/services/core/contact.service.d.ts.map +1 -0
  286. package/lib/services/core/country.service.d.ts +66 -0
  287. package/lib/services/core/country.service.d.ts.map +1 -0
  288. package/lib/services/core/directorySearch.service.d.ts +305 -0
  289. package/lib/services/core/directorySearch.service.d.ts.map +1 -0
  290. package/lib/services/core/event.service.d.ts +31 -0
  291. package/lib/services/core/event.service.d.ts.map +1 -0
  292. package/lib/services/core/i18n.service.d.ts +19 -0
  293. package/lib/services/core/i18n.service.d.ts.map +1 -0
  294. package/lib/services/core/imageUtils.service.d.ts +15 -0
  295. package/lib/services/core/imageUtils.service.d.ts.map +1 -0
  296. package/lib/services/core/index.d.ts +19 -0
  297. package/lib/services/core/index.d.ts.map +1 -0
  298. package/lib/services/core/logger.service.d.ts +143 -0
  299. package/lib/services/core/logger.service.d.ts.map +1 -0
  300. package/lib/services/core/logging.service.d.ts +51 -0
  301. package/lib/services/core/logging.service.d.ts.map +1 -0
  302. package/lib/services/core/main.service.d.ts +124 -0
  303. package/lib/services/core/main.service.d.ts.map +1 -0
  304. package/lib/services/core/presenceHelper.service.d.ts +73 -0
  305. package/lib/services/core/presenceHelper.service.d.ts.map +1 -0
  306. package/lib/services/core/profile.service.d.ts +453 -0
  307. package/lib/services/core/profile.service.d.ts.map +1 -0
  308. package/lib/services/core/settings.service.d.ts +82 -0
  309. package/lib/services/core/settings.service.d.ts.map +1 -0
  310. package/lib/services/core/userInfo.service.d.ts +25 -0
  311. package/lib/services/core/userInfo.service.d.ts.map +1 -0
  312. package/lib/services/core/userNetwork.service.d.ts +171 -0
  313. package/lib/services/core/userNetwork.service.d.ts.map +1 -0
  314. package/lib/services/core/xmpp.service.d.ts +99 -0
  315. package/lib/services/core/xmpp.service.d.ts.map +1 -0
  316. package/lib/services/dataChannel/dataChannel.service.d.ts +102 -0
  317. package/lib/services/dataChannel/dataChannel.service.d.ts.map +1 -0
  318. package/lib/services/dataChannel/index.d.ts +3 -0
  319. package/lib/services/dataChannel/index.d.ts.map +1 -0
  320. package/lib/services/deviceManagement/deviceEchoFilter.d.ts +86 -0
  321. package/lib/services/deviceManagement/deviceEchoFilter.d.ts.map +1 -0
  322. package/lib/services/deviceManagement/deviceManagement.service.d.ts +290 -0
  323. package/lib/services/deviceManagement/deviceManagement.service.d.ts.map +1 -0
  324. package/lib/services/deviceManagement/index.d.ts +2 -0
  325. package/lib/services/deviceManagement/index.d.ts.map +1 -0
  326. package/lib/services/deviceManagement/webHidManager.service.d.ts +616 -0
  327. package/lib/services/deviceManagement/webHidManager.service.d.ts.map +1 -0
  328. package/lib/services/directory/directory.service.d.ts +108 -0
  329. package/lib/services/directory/directory.service.d.ts.map +1 -0
  330. package/lib/services/directory/index.d.ts +3 -0
  331. package/lib/services/directory/index.d.ts.map +1 -0
  332. package/lib/services/directory/office365ad.service.d.ts +74 -0
  333. package/lib/services/directory/office365ad.service.d.ts.map +1 -0
  334. package/lib/services/directory/personal-directory.service.d.ts +425 -0
  335. package/lib/services/directory/personal-directory.service.d.ts.map +1 -0
  336. package/lib/services/directory/phonebook.service.d.ts +43 -0
  337. package/lib/services/directory/phonebook.service.d.ts.map +1 -0
  338. package/lib/services/event-mixin.d.ts +75 -0
  339. package/lib/services/event-mixin.d.ts.map +1 -0
  340. package/lib/services/favorites/favorites.service.d.ts +313 -0
  341. package/lib/services/favorites/favorites.service.d.ts.map +1 -0
  342. package/lib/services/favorites/index.d.ts +3 -0
  343. package/lib/services/favorites/index.d.ts.map +1 -0
  344. package/lib/services/fileDocument/fileDocument.service.d.ts +229 -0
  345. package/lib/services/fileDocument/fileDocument.service.d.ts.map +1 -0
  346. package/lib/services/fileDocument/index.d.ts +5 -0
  347. package/lib/services/fileDocument/index.d.ts.map +1 -0
  348. package/lib/services/files/fileDescriptorEventHandler.service.d.ts +18 -0
  349. package/lib/services/files/fileDescriptorEventHandler.service.d.ts.map +1 -0
  350. package/lib/services/files/fileServer.service.d.ts +268 -0
  351. package/lib/services/files/fileServer.service.d.ts.map +1 -0
  352. package/lib/services/files/fileStorage.service.d.ts +426 -0
  353. package/lib/services/files/fileStorage.service.d.ts.map +1 -0
  354. package/lib/services/helpcenter/helpCenter.service.d.ts +207 -0
  355. package/lib/services/helpcenter/helpCenter.service.d.ts.map +1 -0
  356. package/lib/services/helpcenter/index.d.ts +4 -0
  357. package/lib/services/helpcenter/index.d.ts.map +1 -0
  358. package/lib/services/helpcenter/whatsNew.service.d.ts +47 -0
  359. package/lib/services/helpcenter/whatsNew.service.d.ts.map +1 -0
  360. package/lib/services/horizon/horizon.service.d.ts +31 -0
  361. package/lib/services/horizon/horizon.service.d.ts.map +1 -0
  362. package/lib/services/horizon/index.d.ts +3 -0
  363. package/lib/services/horizon/index.d.ts.map +1 -0
  364. package/lib/services/index.d.ts +35 -0
  365. package/lib/services/index.d.ts.map +1 -0
  366. package/lib/services/launcher/config/sdkLaunchConfig.d.ts +8 -0
  367. package/lib/services/launcher/config/sdkLaunchConfig.d.ts.map +1 -0
  368. package/lib/services/localTranslation/chromeTranslation.engine.d.ts +79 -0
  369. package/lib/services/localTranslation/chromeTranslation.engine.d.ts.map +1 -0
  370. package/lib/services/localTranslation/index.d.ts +6 -0
  371. package/lib/services/localTranslation/index.d.ts.map +1 -0
  372. package/lib/services/localTranslation/localTranslation.service.d.ts +129 -0
  373. package/lib/services/localTranslation/localTranslation.service.d.ts.map +1 -0
  374. package/lib/services/localTranslation/translationEngine.d.ts +81 -0
  375. package/lib/services/localTranslation/translationEngine.d.ts.map +1 -0
  376. package/lib/services/metrics/analytics.service.d.ts +63 -0
  377. package/lib/services/metrics/analytics.service.d.ts.map +1 -0
  378. package/lib/services/metrics/index.d.ts +2 -0
  379. package/lib/services/metrics/index.d.ts.map +1 -0
  380. package/lib/services/notifications/index.d.ts +2 -0
  381. package/lib/services/notifications/index.d.ts.map +1 -0
  382. package/lib/services/notifications/notificationCenter.service.d.ts +178 -0
  383. package/lib/services/notifications/notificationCenter.service.d.ts.map +1 -0
  384. package/lib/services/notifications/notificationsViewer.service.d.ts +46 -0
  385. package/lib/services/notifications/notificationsViewer.service.d.ts.map +1 -0
  386. package/lib/services/personalRoutines/personal-routines.service.d.ts +159 -0
  387. package/lib/services/personalRoutines/personal-routines.service.d.ts.map +1 -0
  388. package/lib/services/polls/index.d.ts +2 -0
  389. package/lib/services/polls/index.d.ts.map +1 -0
  390. package/lib/services/polls/polls.service.d.ts +139 -0
  391. package/lib/services/polls/polls.service.d.ts.map +1 -0
  392. package/lib/services/ringing/index.d.ts +2 -0
  393. package/lib/services/ringing/index.d.ts.map +1 -0
  394. package/lib/services/ringing/ringing.service.d.ts +535 -0
  395. package/lib/services/ringing/ringing.service.d.ts.map +1 -0
  396. package/lib/services/rpc/index.d.ts +2 -0
  397. package/lib/services/rpc/index.d.ts.map +1 -0
  398. package/lib/services/rpc/rpc.service.d.ts +75 -0
  399. package/lib/services/rpc/rpc.service.d.ts.map +1 -0
  400. package/lib/services/service.d.ts +9 -0
  401. package/lib/services/service.d.ts.map +1 -0
  402. package/lib/services/speechRecognitionService/speechRecognition.service.d.ts +87 -0
  403. package/lib/services/speechRecognitionService/speechRecognition.service.d.ts.map +1 -0
  404. package/lib/services/subscription/index.d.ts +4 -0
  405. package/lib/services/subscription/index.d.ts.map +1 -0
  406. package/lib/services/subscription/invoices.service.d.ts +78 -0
  407. package/lib/services/subscription/invoices.service.d.ts.map +1 -0
  408. package/lib/services/subscription/paymentMethods.service.d.ts +164 -0
  409. package/lib/services/subscription/paymentMethods.service.d.ts.map +1 -0
  410. package/lib/services/subscription/subscription.service.d.ts +510 -0
  411. package/lib/services/subscription/subscription.service.d.ts.map +1 -0
  412. package/lib/services/support/index.d.ts +2 -0
  413. package/lib/services/support/index.d.ts.map +1 -0
  414. package/lib/services/support/support.model.d.ts +143 -0
  415. package/lib/services/support/support.model.d.ts.map +1 -0
  416. package/lib/services/support/support.service.d.ts +162 -0
  417. package/lib/services/support/support.service.d.ts.map +1 -0
  418. package/lib/services/telemetry/index.d.ts +3 -0
  419. package/lib/services/telemetry/index.d.ts.map +1 -0
  420. package/lib/services/telemetry/jsonRPC.service.d.ts +25 -0
  421. package/lib/services/telemetry/jsonRPC.service.d.ts.map +1 -0
  422. package/lib/services/telemetry/telemetry.service.d.ts +22 -0
  423. package/lib/services/telemetry/telemetry.service.d.ts.map +1 -0
  424. package/lib/services/telephony/index.d.ts +4 -0
  425. package/lib/services/telephony/index.d.ts.map +1 -0
  426. package/lib/services/telephony/supervision.service.d.ts +277 -0
  427. package/lib/services/telephony/supervision.service.d.ts.map +1 -0
  428. package/lib/services/telephony/telephony.service.d.ts +1476 -0
  429. package/lib/services/telephony/telephony.service.d.ts.map +1 -0
  430. package/lib/services/telephony/telephonyCcdAgent.service.d.ts +63 -0
  431. package/lib/services/telephony/telephonyCcdAgent.service.d.ts.map +1 -0
  432. package/lib/services/telephony/telephonyHybridEventHandler.d.ts +360 -0
  433. package/lib/services/telephony/telephonyHybridEventHandler.d.ts.map +1 -0
  434. package/lib/services/telephony/telephonyKeys.service.d.ts +86 -0
  435. package/lib/services/telephony/telephonyKeys.service.d.ts.map +1 -0
  436. package/lib/services/telephony/telephonySipWise.service.d.ts +543 -0
  437. package/lib/services/telephony/telephonySipWise.service.d.ts.map +1 -0
  438. package/lib/services/telephony/telephonySipWiseEventHandler.d.ts +462 -0
  439. package/lib/services/telephony/telephonySipWiseEventHandler.d.ts.map +1 -0
  440. package/lib/services/telephonyConfig/index.d.ts +3 -0
  441. package/lib/services/telephonyConfig/index.d.ts.map +1 -0
  442. package/lib/services/telephonyConfig/telephonyConfig.service.d.ts +150 -0
  443. package/lib/services/telephonyConfig/telephonyConfig.service.d.ts.map +1 -0
  444. package/lib/services/todo/todo.service.d.ts +358 -0
  445. package/lib/services/todo/todo.service.d.ts.map +1 -0
  446. package/lib/services/transcription/index.d.ts +2 -0
  447. package/lib/services/transcription/index.d.ts.map +1 -0
  448. package/lib/services/transcription/liveTranscription.service.d.ts +94 -0
  449. package/lib/services/transcription/liveTranscription.service.d.ts.map +1 -0
  450. package/lib/services/ulrMetadata/urlMetadata.service.d.ts +51 -0
  451. package/lib/services/ulrMetadata/urlMetadata.service.d.ts.map +1 -0
  452. package/lib/services/users/index.d.ts +3 -0
  453. package/lib/services/users/index.d.ts.map +1 -0
  454. package/lib/services/users/user.service.d.ts +146 -0
  455. package/lib/services/users/user.service.d.ts.map +1 -0
  456. package/lib/services/users/usersLists.service.d.ts +239 -0
  457. package/lib/services/users/usersLists.service.d.ts.map +1 -0
  458. package/lib/services/utilities/browserDatabase.service.d.ts +69 -0
  459. package/lib/services/utilities/browserDatabase.service.d.ts.map +1 -0
  460. package/lib/services/utilities/errorHelper.service.d.ts +24 -0
  461. package/lib/services/utilities/errorHelper.service.d.ts.map +1 -0
  462. package/lib/services/utilities/index.d.ts +4 -0
  463. package/lib/services/utilities/index.d.ts.map +1 -0
  464. package/lib/services/utilities/utilities.service.d.ts +74 -0
  465. package/lib/services/utilities/utilities.service.d.ts.map +1 -0
  466. package/lib/services/virtualBackground/RBVirtualBackground.service.d.ts +228 -0
  467. package/lib/services/virtualBackground/RBVirtualBackground.service.d.ts.map +1 -0
  468. package/lib/services/virtualBackground/index.d.ts +4 -0
  469. package/lib/services/virtualBackground/index.d.ts.map +1 -0
  470. package/lib/services/virtualBackground/personalVideoBackground.d.ts +190 -0
  471. package/lib/services/virtualBackground/personalVideoBackground.d.ts.map +1 -0
  472. package/lib/services/virtualBackground/pipeline/canvas2D/canvas2DPipeline.d.ts +66 -0
  473. package/lib/services/virtualBackground/pipeline/canvas2D/canvas2DPipeline.d.ts.map +1 -0
  474. package/lib/services/virtualBackground/pipeline/webgl2/blurStage.d.ts +88 -0
  475. package/lib/services/virtualBackground/pipeline/webgl2/blurStage.d.ts.map +1 -0
  476. package/lib/services/virtualBackground/pipeline/webgl2/imageStage.d.ts +69 -0
  477. package/lib/services/virtualBackground/pipeline/webgl2/imageStage.d.ts.map +1 -0
  478. package/lib/services/virtualBackground/pipeline/webgl2/jointBilateralFilter.d.ts +55 -0
  479. package/lib/services/virtualBackground/pipeline/webgl2/jointBilateralFilter.d.ts.map +1 -0
  480. package/lib/services/virtualBackground/pipeline/webgl2/resizingStage.d.ts +59 -0
  481. package/lib/services/virtualBackground/pipeline/webgl2/resizingStage.d.ts.map +1 -0
  482. package/lib/services/virtualBackground/pipeline/webgl2/softMax.d.ts +34 -0
  483. package/lib/services/virtualBackground/pipeline/webgl2/softMax.d.ts.map +1 -0
  484. package/lib/services/virtualBackground/pipeline/webgl2/webgl2Pipeline.d.ts +62 -0
  485. package/lib/services/virtualBackground/pipeline/webgl2/webgl2Pipeline.d.ts.map +1 -0
  486. package/lib/services/virtualBackground/pipeline/webgl2/webglHelper.d.ts +56 -0
  487. package/lib/services/virtualBackground/pipeline/webgl2/webglHelper.d.ts.map +1 -0
  488. package/lib/services/virtualBackground/virtualBackground.service.d.ts +399 -0
  489. package/lib/services/virtualBackground/virtualBackground.service.d.ts.map +1 -0
  490. package/lib/services/webinars/index.d.ts +10 -0
  491. package/lib/services/webinars/index.d.ts.map +1 -0
  492. package/lib/services/webinars/telemetry/webinarTelemetry.model.d.ts +71 -0
  493. package/lib/services/webinars/telemetry/webinarTelemetry.model.d.ts.map +1 -0
  494. package/lib/services/webinars/telemetry/webinarTelemetry.service.d.ts +86 -0
  495. package/lib/services/webinars/telemetry/webinarTelemetry.service.d.ts.map +1 -0
  496. package/lib/services/webinars/telemetry/webinarTelemetryDatabase.d.ts +31 -0
  497. package/lib/services/webinars/telemetry/webinarTelemetryDatabase.d.ts.map +1 -0
  498. package/lib/services/webinars/webinarAudioMixer.d.ts +45 -0
  499. package/lib/services/webinars/webinarAudioMixer.d.ts.map +1 -0
  500. package/lib/services/webinars/webinarConference.service.d.ts +323 -0
  501. package/lib/services/webinars/webinarConference.service.d.ts.map +1 -0
  502. package/lib/services/webinars/webinarConference.utils.d.ts +24 -0
  503. package/lib/services/webinars/webinarConference.utils.d.ts.map +1 -0
  504. package/lib/services/webinars/webinarParticipants.service.d.ts +43 -0
  505. package/lib/services/webinars/webinarParticipants.service.d.ts.map +1 -0
  506. package/lib/services/webinars/webinarSpeakers.service.d.ts +25 -0
  507. package/lib/services/webinars/webinarSpeakers.service.d.ts.map +1 -0
  508. package/lib/services/webinars/webinarStoryLine.service.d.ts +117 -0
  509. package/lib/services/webinars/webinarStoryLine.service.d.ts.map +1 -0
  510. package/lib/services/webinars/webinars.service.d.ts +600 -0
  511. package/lib/services/webinars/webinars.service.d.ts.map +1 -0
  512. package/lib/services/webrtc/index.d.ts +5 -0
  513. package/lib/services/webrtc/index.d.ts.map +1 -0
  514. package/lib/services/webrtc/webrtcConfigAndUtils.d.ts +170 -0
  515. package/lib/services/webrtc/webrtcConfigAndUtils.d.ts.map +1 -0
  516. package/lib/services/webrtc/webrtcP2P.service.d.ts +521 -0
  517. package/lib/services/webrtc/webrtcP2P.service.d.ts.map +1 -0
  518. package/lib/services/webrtc/webrtcP2PEventHandler.d.ts +55 -0
  519. package/lib/services/webrtc/webrtcP2PEventHandler.d.ts.map +1 -0
  520. package/lib/services/webrtcGateway/webrtcGateway.service.d.ts +605 -0
  521. package/lib/services/webrtcGateway/webrtcGateway.service.d.ts.map +1 -0
  522. package/lib/strophejs.d.ts +3 -0
  523. package/lib/strophejs.d.ts.map +1 -0
  524. package/lib/typings/helpers.d.ts +3 -0
  525. package/lib/typings/helpers.d.ts.map +1 -0
  526. package/lib/utils/allSettled.d.ts +2 -0
  527. package/lib/utils/allSettled.d.ts.map +1 -0
  528. package/lib/utils/anonymizer.d.ts +28 -0
  529. package/lib/utils/anonymizer.d.ts.map +1 -0
  530. package/lib/utils/branded.d.ts +4 -0
  531. package/lib/utils/branded.d.ts.map +1 -0
  532. package/lib/utils/browser.d.ts +231 -0
  533. package/lib/utils/browser.d.ts.map +1 -0
  534. package/lib/utils/index.d.ts +12 -0
  535. package/lib/utils/index.d.ts.map +1 -0
  536. package/lib/utils/mediaPermissionError.d.ts +2 -0
  537. package/lib/utils/mediaPermissionError.d.ts.map +1 -0
  538. package/lib/utils/promiseQueue.d.ts +10 -0
  539. package/lib/utils/promiseQueue.d.ts.map +1 -0
  540. package/lib/utils/randomString.d.ts +3 -0
  541. package/lib/utils/randomString.d.ts.map +1 -0
  542. package/lib/utils/recordingArchiveName.d.ts +13 -0
  543. package/lib/utils/recordingArchiveName.d.ts.map +1 -0
  544. package/lib/utils/serverTimestamp.d.ts +15 -0
  545. package/lib/utils/serverTimestamp.d.ts.map +1 -0
  546. package/lib/utils/stringifyError.d.ts +2 -0
  547. package/lib/utils/stringifyError.d.ts.map +1 -0
  548. package/lib/utils/video.d.ts +27 -0
  549. package/lib/utils/video.d.ts.map +1 -0
  550. package/lib/utils/wait.d.ts +2 -0
  551. package/lib/utils/wait.d.ts.map +1 -0
  552. package/lib/utils/xmlParser.d.ts +102 -0
  553. package/lib/utils/xmlParser.d.ts.map +1 -0
  554. package/lib/utils/xmlValidation.d.ts +119 -0
  555. package/lib/utils/xmlValidation.d.ts.map +1 -0
  556. package/package.json +58 -0
@@ -0,0 +1,616 @@
1
+ /**
2
+ * @module DeviceManagement
3
+ */
4
+ import type { Subscription } from "rxjs";
5
+ import { RBEvent } from "../../models/event.model";
6
+ import { Service } from "../../services/service";
7
+ /** @internal */
8
+ export declare const WEB_HID_MANAGER_SVC = "WebHidManagerService";
9
+ /**
10
+ * Events emitted by {@link WebHidManagerService} in response to hardware button presses
11
+ * or device lifecycle changes. Subscribe via {@link WebHidManagerService.subscribe}.
12
+ *
13
+ * @eventProperty
14
+ */
15
+ export declare enum WebHidEvents {
16
+ /**
17
+ * The user pressed the mute button on the headset while a call was unmuted.
18
+ * The application should mute the active call's microphone.
19
+ */
20
+ MUTED_CALL_BY_DEVICE = "MUTED_CALL_BY_DEVICE",
21
+ /**
22
+ * The user pressed the mute button on the headset while a call was muted.
23
+ * The application should unmute the active call's microphone.
24
+ */
25
+ UNMUTED_CALL_BY_DEVICE = "UNMUTED_CALL_BY_DEVICE",
26
+ /**
27
+ * The user lifted the headset or pressed the answer button.
28
+ * The application should answer the current incoming or ringing call.
29
+ */
30
+ ANSWERED_CALL_BY_DEVICE = "ANSWERED_CALL_BY_DEVICE",
31
+ /**
32
+ * The user pressed the hang-up button or placed the headset back on the cradle.
33
+ * The application should release (hang up) the active call.
34
+ */
35
+ RELEASED_CALL_BY_DEVICE = "RELEASED_CALL_BY_DEVICE",
36
+ /**
37
+ * The user performed a long-press or double-click on the reject button.
38
+ * The application should decline the current incoming call without answering.
39
+ */
40
+ REJECTED_CALL_BY_DEVICE = "REJECTED_CALL_BY_DEVICE",
41
+ /**
42
+ * The physical HID device was unplugged or became unavailable.
43
+ * The application may notify the user and attempt to reconnect when a new device is selected.
44
+ */
45
+ DEVICE_DISCONNECTED = "DEVICE_DISCONNECTED",
46
+ /**
47
+ * No pre-granted HID device matching the current microphone could be found.
48
+ * The application should prompt the user to grant browser permission for their headset
49
+ * (typically by calling {@link WebHidManagerService.requestDevicePermission} from a button click).
50
+ */
51
+ ON_PERMISSION_ASKED = "ON_PERMISSION_ASKED",
52
+ /**
53
+ * A HID device has been successfully opened and configured.
54
+ * The application can call {@link IWebHidManager.getDeviceName} to retrieve the device name
55
+ * and update the UI accordingly.
56
+ */
57
+ DEVICE_CONNECTED = "DEVICE_CONNECTED",
58
+ /**
59
+ * The selected device was opened but its HID descriptor contains no telephony collections
60
+ * (no call-control input or output usages). The device cannot manage calls.
61
+ * The application should warn the user that their headset is not compatible.
62
+ * The event data contains `deviceName: string` with the product name of the incompatible device.
63
+ */
64
+ DEVICE_NO_TELEPHONY_SUPPORT = "DEVICE_NO_TELEPHONY_SUPPORT"
65
+ }
66
+ /**
67
+ * Public contract of the WebHID headset manager.
68
+ *
69
+ * Consumers should depend on this interface rather than the concrete class to ease
70
+ * testing and future substitution.
71
+ */
72
+ export interface WebHidManagerService {
73
+ /** Starts the service. Must be called before any other method. */
74
+ start: () => void;
75
+ /** Stops the service, releases the HID device, and completes the event stream. */
76
+ stop: () => Promise<void>;
77
+ /** Returns `true` when a HID device is currently open and ready. */
78
+ isConnected: () => boolean;
79
+ /**
80
+ * Opens the browser HID device picker so the user can grant permission to their headset.
81
+ *
82
+ * **Must be called from a user-gesture context** (e.g. a button click handler).
83
+ * Calling it programmatically is rejected by Chrome/Edge with a `SecurityError`.
84
+ */
85
+ requestDevicePermission: () => Promise<void>;
86
+ /**
87
+ * Notifies the service that the selected microphone has changed.
88
+ * Called by {@link DeviceManagementServiceRB} — do not call directly.
89
+ * @param mic - The newly selected audio input device, or `null` if none is selected.
90
+ */
91
+ onMicrophoneChanged: (mic: MediaDeviceInfo | null) => Promise<void>;
92
+ /** Returns the product name of the currently connected HID device, or an empty string. */
93
+ getDeviceName: () => string;
94
+ /**
95
+ * Signals a new call to the headset.
96
+ * For incoming calls the headset will start ringing; for outgoing calls it goes off-hook.
97
+ * @param id - Opaque call identifier used for logging.
98
+ * @param incoming - `true` for an incoming call (ring), `false` for an outgoing call (off-hook).
99
+ */
100
+ addCallToDevice: (id: string, incoming: boolean) => Promise<void>;
101
+ /**
102
+ * Signals that the call has been answered (the audio path is now active).
103
+ * Stops ringing, sets off-hook, and initialises the mute LED.
104
+ * @param id - Opaque call identifier used for logging.
105
+ * @param incoming - Whether the call was originally incoming.
106
+ */
107
+ answeredCallToDevice: (id: string, incoming: boolean) => Promise<void>;
108
+ /**
109
+ * Signals that a call has ended and the headset should return to idle.
110
+ * Stops any active ringing, clears off-hook and mute states.
111
+ * @param id - Opaque call identifier used for logging.
112
+ * @param incoming - Whether the call was incoming (used to decide whether to silence the ringer).
113
+ * @param ringing - Whether the headset was still ringing when the call ended (i.e. rejected before answer).
114
+ */
115
+ releaseCallToDevice: (id: string, incoming?: boolean, ringing?: boolean) => Promise<void>;
116
+ /**
117
+ * Synchronises the headset's mute LED with the application's mute state.
118
+ * No-op if the headset is already in the requested state.
119
+ * @param id - Opaque call identifier used for logging.
120
+ * @param mutedOn - `true` to show the mute indicator on the headset, `false` to clear it.
121
+ */
122
+ muteCallToDevice: (id: string, mutedOn: boolean) => Promise<void>;
123
+ /**
124
+ * Releases the HID device without stopping the service.
125
+ * Used when the microphone selection changes — the service stays alive to handle the next device.
126
+ */
127
+ releaseDevice: () => Promise<void>;
128
+ /**
129
+ * Subscribes to events emitted by the headset.
130
+ * @param handler - Callback invoked for every matching event.
131
+ * @param eventNames - Optional filter: one or several {@link WebHidEvents} values.
132
+ * When omitted, all events are delivered.
133
+ * @returns An RxJS {@link Subscription} — call `.unsubscribe()` to stop receiving events.
134
+ */
135
+ subscribe: (handler: (event: RBEvent<WebHidEvents>) => void, eventNames?: WebHidEvents | WebHidEvents[]) => Subscription;
136
+ }
137
+ /**
138
+ * Singleton service that bridges the browser WebHID API with the Rainbow call stack.
139
+ *
140
+ * ### Responsibilities
141
+ * - **Device discovery**: when the user selects a microphone, the service attempts to match a
142
+ * pre-granted HID device by vendor/product ID (parsed from the Chrome/Edge media label) or by
143
+ * product name substring. If no match is found it emits {@link WebHidEvents.ON_PERMISSION_ASKED}
144
+ * so the UI can invite the user to grant permission.
145
+ * - **Output reports** (application → headset): translates call-state changes into HID output
146
+ * reports that control the ring tone, off-hook indicator, and mute LED on the physical device.
147
+ * - **Input reports** (headset → application): translates raw HID bit-field reports into
148
+ * strongly-typed {@link WebHidEvents} events consumed by {@link HeadsetManagementService}.
149
+ *
150
+ * ### Lifecycle
151
+ * 1. {@link DeviceManagementServiceRB} calls `start()` after it has started.
152
+ * 2. Each time the selected microphone changes, `DeviceManagementServiceRB` calls
153
+ * {@link onMicrophoneChanged} — the service releases the current HID device and attempts to
154
+ * open the one matching the new microphone.
155
+ * 3. `stop()` releases the device and completes the RxJS subject, terminating all subscribers.
156
+ *
157
+ * ### Output-report pipeline
158
+ * When a call-state change method is called (e.g. `addCallToDevice`), the service:
159
+ * 1. Looks up the target usage ID in the {@link ControlMap}.
160
+ * 2. Updates the cached {@link lastOutputBuffers} buffer for that report ID, setting or clearing
161
+ * the individual bit at the pre-computed `bitOffset`.
162
+ * 3. Calls `HIDDevice.sendReport(reportId, buffer)`.
163
+ *
164
+ * Reusing the same buffer across calls preserves all previously set bits, which is required
165
+ * because a single output report byte may carry multiple independent control bits.
166
+ *
167
+ * ### Input-report pipeline
168
+ * On every `inputreport` event the service:
169
+ * 1. Looks up the report ID in the {@link ControlMap} input map.
170
+ * 2. Iterates the usages registered for that report, extracting each bit value.
171
+ * 3. Applies absolute/relative state-machine logic (see `isAbsoluteHookSwitch` /
172
+ * `isAbsolutePhoneMute`) to decide whether a transition has occurred.
173
+ * 4. Emits the appropriate {@link WebHidEvents} event.
174
+ *
175
+ * @internal
176
+ */
177
+ export declare class WebHidManagerServiceRB extends Service implements WebHidManagerService {
178
+ private readonly logger;
179
+ /**
180
+ * RxJS subject that fans out {@link WebHidEvents} to all active subscribers.
181
+ *
182
+ * Not `readonly`: {@link stop} completes it, and a completed Subject is terminal — `next()`
183
+ * becomes a no-op and every later `subscribe()` completes immediately. Because this service is
184
+ * a singleton reused across a logout/login in the same tab, {@link start} recreates it so
185
+ * headset events survive a re-login (CRRAINB-54489).
186
+ */
187
+ private rxSubject;
188
+ /**
189
+ * Serialises every device-facing operation so two callers can never interleave output reports
190
+ * on the shared {@link lastOutputBuffers}. The upper `HeadsetManagementService` queue already
191
+ * orders them, but its `DEVICE_CALL_TIMEOUT_MS` watchdog can advance that queue while a slow
192
+ * vendor workaround is still writing — a mute sent into the middle of the Konftel re-arm left
193
+ * the device deaf for the rest of the call and emitted a phantom unmute event. This lock keeps
194
+ * the device consistent regardless of what the caller does (CRRAINB-54986).
195
+ */
196
+ private deviceLock;
197
+ /**
198
+ * `true` when the Hook Switch usage reports its persistent state (the value reflects whether
199
+ * the device is currently off-hook). `false` (relative) when the device reports only
200
+ * momentary button-press events and the application must toggle state itself.
201
+ */
202
+ private isAbsoluteHookSwitch;
203
+ /**
204
+ * `true` when the Phone Mute usage reports its persistent state (the value reflects whether
205
+ * the microphone is currently muted). `false` (relative) when only button-press events are sent.
206
+ */
207
+ private isAbsolutePhoneMute;
208
+ /** Currently open HID device. `undefined` when no device is connected. */
209
+ private device;
210
+ /**
211
+ * Pre-built lookup table mapping report IDs to their usage bit offsets.
212
+ * Populated once in {@link openAndConfigureDevice} and reset in {@link clearVariables}.
213
+ */
214
+ private controlMap;
215
+ /**
216
+ * Last byte buffers sent for each output report ID.
217
+ * Reused on every `sendOutputUsage` call so that setting one bit does not clear others
218
+ * in the same report byte.
219
+ */
220
+ private lastOutputBuffers;
221
+ /**
222
+ * Last hook-switch value received from the hardware.
223
+ * Used to suppress duplicate absolute reports (CRRAINB-51267).
224
+ *
225
+ * Driven by what we command ({@link offHook} mirrors every write, {@link addCallToDevice} resets
226
+ * it for a ringing call) and by genuine gestures — never by acknowledgements, which on a Konftel
227
+ * can carry a transient value that would then make the next real press read as a repeat
228
+ * (CRRAINB-54986, CRRAINB-54424).
229
+ */
230
+ private lastHardwareHookState;
231
+ /**
232
+ * Last mute value received from the hardware.
233
+ * Used to synchronise the software mute state when a call is answered with the headset
234
+ * already in a muted position.
235
+ *
236
+ * Deliberately **not** reset by {@link addCallToDevice} (unlike {@link isMuted}): a mute
237
+ * pressed while idle or while the call was still ringing has already been acknowledged to the
238
+ * device, so the LED is on and the user expects to stay muted. The asymmetry is what makes the
239
+ * resync in {@link answeredCallToDevice} fire and emit the mute event the application ignored
240
+ * at press time (there was no managed call yet). Only {@link releaseCallToDevice} and
241
+ * {@link clearVariables} clear it.
242
+ */
243
+ private lastHardwareMuteState;
244
+ /**
245
+ * Current mute state: as last communicated to the headset via {@link mute}, or as last
246
+ * reported by the hardware in `onInputReport` — a device press updates it immediately so the
247
+ * application echo that follows is recognised as already-synced.
248
+ */
249
+ private isMuted;
250
+ /**
251
+ * Tells the device's acknowledgements of our own output reports apart from real button presses.
252
+ * Fed by {@link sendOutputUsage} and {@link offHook}, consulted by {@link onInputReport}.
253
+ */
254
+ private readonly echoFilter;
255
+ /** Software off-hook state as last communicated to the headset via {@link offHook}. */
256
+ private isOffHook;
257
+ /**
258
+ * When {@link releaseCallToDevice} last sent the device `OFF_HOOK=false`, or `null` once the
259
+ * resulting transition has been waited out (or when no release is pending). Read by
260
+ * {@link addCallToDevice} to hold a call taking over until an absolute-hook device has actually
261
+ * settled — see `ABSOLUTE_HOOK_RELEASE_SETTLE_MS` (CRRAINB-54489).
262
+ */
263
+ private lastOffHookClearedAt;
264
+ /**
265
+ * `true` once {@link answeredCallToDevice} has been called for the current call — i.e. the
266
+ * call/conference is genuinely connected, as opposed to still ringing (incoming) or dialling
267
+ * (outgoing). Needed because `isOffHook` alone can't make that distinction: `addCallToDevice`
268
+ * already sets it `true` for an outgoing call the moment it starts dialling. Reset in
269
+ * {@link addCallToDevice} and {@link releaseCallToDevice}. See CRRAINB-54420.
270
+ */
271
+ private isAnswered;
272
+ /**
273
+ * `true` once the Konftel Ego delayed mute re-send (CRRAINB-51238) has run for the current
274
+ * call. It is paid exactly once: paying it twice pushed the incoming answer sequence past the
275
+ * caller's 3 s ceiling and let the next queued command interleave with it (CRRAINB-54986). On an
276
+ * incoming call it is deliberately paid by the *nested* answer of the re-arm, not the outer one,
277
+ * so that it doubles as the settle the device needs after the synthetic release (CRRAINB-54424).
278
+ *
279
+ * Deliberately reset only by the **public** {@link addCallToDevice} / {@link releaseCallToDevice}
280
+ * entry points and {@link clearVariables}, never by the internal ones the re-arm drives, so the
281
+ * synthetic release→add→answer sequence does not re-arm the flag it is meant to respect.
282
+ */
283
+ private konftelMuteResyncDone;
284
+ /** If the HID is enabled by user. User can disable the HID in the app */
285
+ serviceEnabled: boolean;
286
+ /**
287
+ * `true` when the connected device is an Alcatel Temporis IP AT10.
288
+ * Enables a workaround that sends a double off-hook report so the device can be hung up
289
+ * during the outgoing dialling phase.
290
+ */
291
+ private isAT10;
292
+ /** `true` after {@link start} has been called and before {@link stop} completes. */
293
+ private started;
294
+ /** The `MediaDeviceInfo` for the currently selected microphone. Set by {@link onMicrophoneChanged}. */
295
+ private currentDevice;
296
+ /**
297
+ * Vendor ID parsed from the current microphone label, cached so that
298
+ * {@link requestDevicePermission} can pre-filter the browser device picker.
299
+ * `null` when the label does not carry ID information.
300
+ */
301
+ private parsedVendorId;
302
+ /**
303
+ * Product ID parsed from the current microphone label, cached so that
304
+ * {@link requestDevicePermission} can pre-filter the browser device picker.
305
+ * `null` when the label does not carry ID information.
306
+ */
307
+ private parsedProductId;
308
+ /**
309
+ * Stable bound reference for the `inputreport` event listener.
310
+ * Stored as a field because `removeEventListener` requires the exact same function reference
311
+ * that was passed to `addEventListener`; anonymous arrow functions cannot be unregistered.
312
+ */
313
+ private readonly boundInputReportHandler;
314
+ /**
315
+ * Stable bound reference for the HID `disconnect` event listener.
316
+ * Same rationale as {@link boundInputReportHandler}.
317
+ */
318
+ private readonly boundDisconnectHandler;
319
+ static getInstance(): WebHidManagerServiceRB;
320
+ static build(): WebHidManagerServiceRB;
321
+ private constructor();
322
+ /**
323
+ * If TRUE, all connected devices will be allowed to be connected.
324
+ * Otherwise we use on only the brandList
325
+ */
326
+ allowAllHeadsets: boolean;
327
+ /**
328
+ * Starts the service. Called by {@link DeviceManagementServiceRB} after it starts.
329
+ * Microphone changes are subsequently pushed via {@link onMicrophoneChanged}.
330
+ */
331
+ start(): void;
332
+ /**
333
+ * Runs `task` with exclusive access to the device, queued behind any operation already in
334
+ * flight. See {@link deviceLock}.
335
+ *
336
+ * A rejection is contained: the chain the next caller waits on is reset to a resolved promise,
337
+ * so one failing operation never wedges the lock, while the original rejection still reaches
338
+ * the caller that issued it.
339
+ */
340
+ private runExclusive;
341
+ /**
342
+ * Called by {@link DeviceManagementServiceRB} whenever the selected audio input device changes.
343
+ * Releases the current HID connection and reconnects to the device matching the new microphone.
344
+ */
345
+ onMicrophoneChanged(mic: MediaDeviceInfo | null, forceAllow?: boolean): Promise<void>;
346
+ /**
347
+ * List of brands that are allowed to be connected to WebHID. In that case we avoid asking for permissions
348
+ * on devices that have no HID capabilities
349
+ */
350
+ brandList: string[];
351
+ checkIfDeviceCouldBeManaged(mic: MediaDeviceInfo, forceAllow?: boolean): boolean;
352
+ /**
353
+ * Stops the service: releases the HID device and completes the event stream.
354
+ */
355
+ stop(): Promise<void>;
356
+ /**
357
+ * Returns `true` when a HID device is currently open and ready to receive output reports.
358
+ */
359
+ isConnected(): boolean;
360
+ isHidSupported(): boolean;
361
+ /**
362
+ * Opens the browser HID device picker, filtered to the vendor/product of the currently
363
+ * selected microphone when available, or to all telephony devices as a fallback.
364
+ *
365
+ * **Must be called from a user-gesture context** (e.g. a button click handler).
366
+ * Calling it programmatically will be rejected by Chrome/Edge with a `SecurityError`.
367
+ */
368
+ requestDevicePermission(): Promise<void>;
369
+ /**
370
+ * Returns the product name reported by the currently connected HID device.
371
+ * Returns an empty string when no device is connected.
372
+ */
373
+ getDeviceName(): string;
374
+ /**
375
+ * Signals a new call to the headset and sets the appropriate LED state.
376
+ *
377
+ * - **Incoming call** (`incoming = true`): starts the ring tone via {@link ring}.
378
+ * An extra ring command is sent on Konftel Ego devices to work around a firmware quirk
379
+ * where the first report is occasionally silently discarded.
380
+ * - **Outgoing call** (`incoming = false`): sets the headset off-hook immediately since the
381
+ * user has already initiated the call from the application.
382
+ * A duplicate off-hook is sent for AT10 devices so that the hang-up action is reliably
383
+ * recognised during the dialling phase.
384
+ *
385
+ * @param id - Opaque call identifier, used for logging only.
386
+ * @param incoming - `true` for an incoming call, `false` for an outgoing call.
387
+ */
388
+ addCallToDevice(id: string, incoming: boolean): Promise<void>;
389
+ /**
390
+ * {@link addCallToDevice} without the device lock — for callers that already hold it.
391
+ *
392
+ * `skipReleaseSettle` is set by the Konftel incoming re-arm: its preceding release is synthetic
393
+ * (the call is not going anywhere, the device is being re-driven in place), so waiting out the
394
+ * absolute-hook teardown there would add 800 ms inside a sequence that already has to fit the
395
+ * caller's device-call timeout. The settle the device does need is supplied instead by the
396
+ * delayed resend that closes the re-arm — see {@link konftelMuteResyncDone}.
397
+ */
398
+ private addCallToDeviceInternal;
399
+ /**
400
+ * Signals that the call has been answered and the audio path is now active.
401
+ *
402
+ * Sequence of output reports:
403
+ * 1. For incoming calls: stops the ring tone.
404
+ * 2. Sets the headset off-hook.
405
+ * 3. Initialises the mute LED to "unmuted" (important for devices that retain LED state).
406
+ * An extra mute command is sent after a 1 s delay on Konftel Ego devices to work around
407
+ * a firmware issue where mute events are silently dropped for outgoing calls (CRRAINB-51238).
408
+ * 4. Synchronises the software mute state with the hardware: if the user had already
409
+ * pressed the mute button before the call was answered, the corresponding
410
+ * {@link WebHidEvents.MUTED_CALL_BY_DEVICE} or {@link WebHidEvents.UNMUTED_CALL_BY_DEVICE}
411
+ * event is emitted to bring the call stack in sync.
412
+ *
413
+ * @param id - Opaque call identifier, used for logging only.
414
+ * @param incoming - Whether the call was originally incoming (determines ring-stop behaviour).
415
+ */
416
+ answeredCallToDevice(id: string, incoming: boolean): Promise<void>;
417
+ /** {@link answeredCallToDevice} without the device lock — for callers that already hold it. */
418
+ private answeredCallToDeviceInternal;
419
+ /**
420
+ * Synchronises the headset's mute LED with the application-side mute state.
421
+ * Skips the HID report when the headset is already in the requested state to avoid
422
+ * redundant USB traffic and potential firmware glitches.
423
+ *
424
+ * @param id - Opaque call identifier, used for logging only.
425
+ * @param mutedOn - `true` to illuminate the mute LED, `false` to extinguish it.
426
+ */
427
+ muteCallToDevice(id: string, mutedOn: boolean): Promise<void>;
428
+ /** {@link muteCallToDevice} without the device lock — for callers that already hold it. */
429
+ private muteCallToDeviceInternal;
430
+ /**
431
+ * Returns the headset to its idle state after a call ends.
432
+ *
433
+ * Sequence of output reports:
434
+ * 1. If the call was incoming or still ringing: stops the ring tone.
435
+ * 2. Konftel Ego workaround: sends an off-hook `true` before clearing it so the device
436
+ * correctly transitions out of the active state when the call was not a pure ring.
437
+ * 3. Clears the mute LED.
438
+ * 4. Clears off-hook.
439
+ *
440
+ * All software state flags (`isOffHook`, `isMuted`, hardware hook/mute snapshots) are reset.
441
+ *
442
+ * @param id - Opaque call identifier, used for logging only.
443
+ * @param incoming - Whether the call was incoming (used to decide whether to stop ringing).
444
+ * @param ringing - Whether the headset was ringing at release time (i.e. call was rejected before answer).
445
+ */
446
+ releaseCallToDevice(id: string, incoming?: boolean, ringing?: boolean): Promise<void>;
447
+ /** {@link releaseCallToDevice} without the device lock — for callers that already hold it. */
448
+ private releaseCallToDeviceInternal;
449
+ /**
450
+ * if set to FALSE, the service will no longer use the HID nor connect automatically
451
+ */
452
+ enableHidManagement(enable: boolean): void;
453
+ /**
454
+ * Releases the currently connected HID device without stopping the service.
455
+ *
456
+ * Called internally when the microphone selection changes so the service can reconnect
457
+ * to a different physical device. Unlike {@link stop}, this method does **not** complete
458
+ * the RxJS subject — existing subscribers survive across device switches.
459
+ *
460
+ * Steps:
461
+ * 1. Sends a final {@link releaseCallToDevice} to clear any active LED state on the device.
462
+ * 2. Removes the `inputreport` and `disconnect` event listeners.
463
+ * 3. Resets all internal state via {@link clearVariables}.
464
+ */
465
+ releaseDevice(): Promise<void>;
466
+ /**
467
+ * Subscribes to events emitted by the headset.
468
+ *
469
+ * The subscription survives device reconnections — the underlying RxJS subject is only
470
+ * completed by {@link stop}, so callers do not need to re-subscribe when the microphone
471
+ * changes.
472
+ *
473
+ * Subscriber errors are swallowed so that a faulty handler cannot break other subscribers
474
+ * or interrupt the input-report processing loop.
475
+ *
476
+ * @param handler - Callback invoked for every matching event.
477
+ * @param eventNames - Optional filter. When omitted, all {@link WebHidEvents} are delivered.
478
+ * Pass a single value or an array to receive only specific events.
479
+ * @returns An RxJS {@link Subscription} — call `.unsubscribe()` when the caller is destroyed.
480
+ */
481
+ subscribe(handler: (event: RBEvent<WebHidEvents>) => void, eventNames?: WebHidEvents | WebHidEvents[]): Subscription;
482
+ /**
483
+ * Tries to connect to a pre-granted HID device matching the given microphone.
484
+ * First attempts an exact match by vendor/product IDs parsed from the media label
485
+ * (Chrome/Edge embed `(vendorId:productId)` in the label), then falls back to a
486
+ * product name substring match.
487
+ *
488
+ * Does NOT call `requestDevice()` — use {@link requestDevicePermission} for that.
489
+ */
490
+ private tryConnectFromMediaDevice;
491
+ /**
492
+ * Alternative permission-request path that always opens the browser device picker
493
+ * restricted to the Telephony usage page, regardless of any parsed vendor/product IDs.
494
+ *
495
+ * Unlike {@link requestDevicePermission}, this method requires a currently selected
496
+ * microphone (`currentDevice` must be set). It is intended as a fallback when the
497
+ * label-based ID parsing fails and the caller still wants to offer a picker.
498
+ *
499
+ * **Must be called from a user-gesture context.**
500
+ */
501
+ requestAccessToDevice(): Promise<void>;
502
+ /**
503
+ * Opens the HID device, builds the control map, initializes output buffers,
504
+ * and attaches event listeners.
505
+ */
506
+ private openAndConfigureDevice;
507
+ /**
508
+ * Parses the `(vendorId:productId)` hex suffix embedded in Chrome/Edge media device labels.
509
+ * Example: `"Jabra Speak 710 (0b0e:2475)"` → `{ vendorId: 0x0b0e, productId: 0x2475 }`.
510
+ *
511
+ * Uses `lastIndexOf` so that device names containing parentheses (e.g. `"Jabra (USB)"`)
512
+ * do not confuse the parser — only the trailing segment is inspected.
513
+ */
514
+ private parseVendorProductFromLabel;
515
+ /**
516
+ * Strips the `(vendorId:productId)` suffix from a media label to get the plain device name
517
+ * for fallback name-based matching.
518
+ */
519
+ extractFriendlyName(label: string): string;
520
+ /**
521
+ * Starts or stops the headset ring tone by writing to the `RING` and `RINGER` output usages.
522
+ *
523
+ * Both usages are written when the device exposes them because some headsets require both
524
+ * to start ringing. The `RINGER` usage is skipped for Konftel Ego devices due to a firmware
525
+ * incompatibility (CRRAINB-51521).
526
+ *
527
+ * @param ringOn - `true` to start ringing, `false` to stop.
528
+ */
529
+ private ring;
530
+ /**
531
+ * Sets or clears the off-hook indicator on the headset.
532
+ * Controls the "active call" LED and audio path of the device.
533
+ * @param value - `true` to go off-hook (call active), `false` to return to idle.
534
+ */
535
+ private offHook;
536
+ /**
537
+ * Sets or clears the mute LED on the headset by writing to both `MUTE` and `MICROPHONE`
538
+ * output usages when available.
539
+ *
540
+ * The `MICROPHONE` usage is skipped for Konftel Ego devices due to a firmware
541
+ * incompatibility (CRRAINB-51521).
542
+ *
543
+ * @param muteOn - `true` to illuminate the mute LED, `false` to extinguish it.
544
+ */
545
+ private mute;
546
+ /**
547
+ * Publishes a {@link WebHidEvents} event to all active subscribers.
548
+ * @param name - The event to emit.
549
+ */
550
+ private sendEvent;
551
+ /**
552
+ * Case-insensitive substring check. Returns `false` (rather than throwing) when either
553
+ * argument is not a valid string, making it safe to use against untrusted device labels.
554
+ * @param str - The string to search within.
555
+ * @param includedStr - The substring to look for.
556
+ */
557
+ private includesCaseInsensitive;
558
+ /**
559
+ * Returns the key name for a numeric value in a constant object, or a hex string fallback.
560
+ * Used exclusively for human-readable log messages — not on the hot input-report path.
561
+ * @param obj - Constant map (e.g. `INPUT_USAGE`, `OUTPUT_USAGE`).
562
+ * @param value - The numeric value to look up.
563
+ */
564
+ private getKeyByValue;
565
+ /**
566
+ * Returns `true` when the connected device exposes the specified output usage in its
567
+ * HID descriptor, meaning a report can be sent for it.
568
+ * @param usage - Packed usage ID (`(page << 16) | id`).
569
+ */
570
+ private isAvailableUsage;
571
+ /**
572
+ * Resets all device-scoped state to its initial value.
573
+ * Called by {@link releaseDevice} and implicitly by {@link stop} so that the service is
574
+ * ready to accept a fresh connection without residual state from a previous device.
575
+ */
576
+ private clearVariables;
577
+ /**
578
+ * Determines the exact bit offset for every reported usage within a report descriptor item list.
579
+ */
580
+ private extractUsages;
581
+ /**
582
+ * Extracts the `isAbsolute` flag for Hook Switch and Phone Mute usages.
583
+ *
584
+ * - **Absolute (true)**: the report reflects the current persistent state of the control.
585
+ * - **Relative (false)**: the report signals a momentary event; the application must toggle.
586
+ */
587
+ private extractIsAbsoluteValues;
588
+ /**
589
+ * Handles a physical HID device disconnection.
590
+ *
591
+ * Filters out events from unrelated devices, then cleans up event listeners, nulls the
592
+ * device reference, and emits {@link WebHidEvents.DEVICE_DISCONNECTED} so the UI layer
593
+ * can inform the user and optionally attempt reconnection.
594
+ *
595
+ * @param event - The native `HIDConnectionEvent` fired by the browser.
596
+ */
597
+ private handleDeviceDisconnect;
598
+ /**
599
+ * Calculates the byte length of an output report by summing all item bit-widths.
600
+ */
601
+ private calculateReportByteLength;
602
+ /**
603
+ * Builds the control map by scanning Telephony-page collections of the device.
604
+ */
605
+ private buildControlMap;
606
+ /**
607
+ * Sends a command to the HID device by setting the specified usage bit in the correct output report.
608
+ */
609
+ private sendOutputUsage;
610
+ /**
611
+ * Handles an incoming input report from the HID device, translating raw bit values
612
+ * into call-control events (answer, release, mute, reject).
613
+ */
614
+ private onInputReport;
615
+ }
616
+ //# sourceMappingURL=webHidManager.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webHidManager.service.d.ts","sourceRoot":"","sources":["../../../src/services/deviceManagement/webHidManager.service.ts"],"names":[],"mappings":"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"}