softphone-vendor-headsets 2.0.0-develop.8 → 2.0.0-develop.9

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 (188) hide show
  1. package/dist/cjs/src/config/i18n.d.ts +2 -0
  2. package/dist/cjs/src/config/i18n.js +28 -0
  3. package/dist/cjs/src/config/i18n.js.map +1 -0
  4. package/dist/cjs/src/library/index.d.ts +8 -0
  5. package/dist/cjs/src/library/index.js +29 -0
  6. package/dist/cjs/src/library/index.js.map +1 -0
  7. package/dist/cjs/src/library/services/headset.d.ts +44 -0
  8. package/dist/cjs/src/library/services/headset.js +313 -0
  9. package/dist/cjs/src/library/services/headset.js.map +1 -0
  10. package/dist/cjs/src/library/services/headset.test.d.ts +1 -0
  11. package/dist/cjs/src/library/services/headset.test.js +800 -0
  12. package/dist/cjs/src/library/services/headset.test.js.map +1 -0
  13. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.d.ts +45 -0
  14. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.js +254 -0
  15. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.js.map +1 -0
  16. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.d.ts +1 -0
  17. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.js +569 -0
  18. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.js.map +1 -0
  19. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/types.d.ts +33 -0
  20. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/types.js +20 -0
  21. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/types.js.map +1 -0
  22. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.d.ts +48 -0
  23. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.js +396 -0
  24. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.js.map +1 -0
  25. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.test.d.ts +1 -0
  26. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.test.js +945 -0
  27. package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.test.js.map +1 -0
  28. package/dist/cjs/src/library/services/vendor-implementations/jabra/mock-jabra-sdk.d.ts +7 -0
  29. package/dist/cjs/src/library/services/vendor-implementations/jabra/mock-jabra-sdk.js +11 -0
  30. package/dist/cjs/src/library/services/vendor-implementations/jabra/mock-jabra-sdk.js.map +1 -0
  31. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.d.ts +47 -0
  32. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.js +51 -0
  33. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.js.map +1 -0
  34. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.d.ts +1 -0
  35. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.js +111 -0
  36. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.js.map +1 -0
  37. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.d.ts +352 -0
  38. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.js +390 -0
  39. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.js.map +1 -0
  40. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.d.ts +62 -0
  41. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.js +394 -0
  42. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.js.map +1 -0
  43. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.test.d.ts +2 -0
  44. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.test.js +983 -0
  45. package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.test.js.map +1 -0
  46. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.d.ts +42 -0
  47. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.js +277 -0
  48. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.js.map +1 -0
  49. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.test.d.ts +1 -0
  50. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.test.js +708 -0
  51. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.test.js.map +1 -0
  52. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/types.d.ts +40 -0
  53. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/types.js +32 -0
  54. package/dist/cjs/src/library/services/vendor-implementations/sennheiser/types.js.map +1 -0
  55. package/dist/cjs/src/library/services/vendor-implementations/vendor-implementation.d.ts +49 -0
  56. package/dist/cjs/src/library/services/vendor-implementations/vendor-implementation.js +99 -0
  57. package/dist/cjs/src/library/services/vendor-implementations/vendor-implementation.js.map +1 -0
  58. package/dist/cjs/src/library/services/vendor-implementations/vendor-implemntation.test.d.ts +1 -0
  59. package/dist/cjs/src/library/services/vendor-implementations/vendor-implemntation.test.js +106 -0
  60. package/dist/cjs/src/library/services/vendor-implementations/vendor-implemntation.test.js.map +1 -0
  61. package/dist/cjs/src/library/test-utils.d.ts +16 -0
  62. package/dist/cjs/src/library/test-utils.js +43 -0
  63. package/dist/cjs/src/library/test-utils.js.map +1 -0
  64. package/dist/cjs/src/library/types/call-info.d.ts +4 -0
  65. package/dist/cjs/src/library/types/call-info.js +3 -0
  66. package/dist/cjs/src/library/types/call-info.js.map +1 -0
  67. package/dist/cjs/src/library/types/consumed-headset-events.d.ts +32 -0
  68. package/dist/cjs/src/library/types/consumed-headset-events.js +18 -0
  69. package/dist/cjs/src/library/types/consumed-headset-events.js.map +1 -0
  70. package/dist/cjs/src/library/types/device-info.d.ts +8 -0
  71. package/dist/cjs/src/library/types/device-info.js +3 -0
  72. package/dist/cjs/src/library/types/device-info.js.map +1 -0
  73. package/dist/cjs/src/library/types/emitted-headset-events.d.ts +34 -0
  74. package/dist/cjs/src/library/types/emitted-headset-events.js +3 -0
  75. package/dist/cjs/src/library/types/emitted-headset-events.js.map +1 -0
  76. package/dist/cjs/src/library/types/headset-states.d.ts +10 -0
  77. package/dist/cjs/src/library/types/headset-states.js +3 -0
  78. package/dist/cjs/src/library/types/headset-states.js.map +1 -0
  79. package/dist/cjs/src/library/utils.d.ts +14 -0
  80. package/dist/cjs/src/library/utils.js +80 -0
  81. package/dist/cjs/src/library/utils.js.map +1 -0
  82. package/dist/cjs/src/library/utils.test.d.ts +1 -0
  83. package/dist/cjs/src/library/utils.test.js +46 -0
  84. package/dist/cjs/src/library/utils.test.js.map +1 -0
  85. package/dist/cjs/src/mocks/call.d.ts +11 -0
  86. package/dist/cjs/src/mocks/call.js +55 -0
  87. package/dist/cjs/src/mocks/call.js.map +1 -0
  88. package/dist/cjs/src/mocks/device-service.d.ts +8 -0
  89. package/dist/cjs/src/mocks/device-service.js +44 -0
  90. package/dist/cjs/src/mocks/device-service.js.map +1 -0
  91. package/dist/cjs/src/setupTests.d.ts +1 -0
  92. package/dist/cjs/src/setupTests.js +8 -0
  93. package/dist/cjs/src/setupTests.js.map +1 -0
  94. package/dist/deploy-info.json +560 -2
  95. package/dist/es/src/config/i18n.d.ts +2 -0
  96. package/dist/es/src/config/i18n.js +23 -0
  97. package/dist/es/src/config/i18n.js.map +1 -0
  98. package/dist/es/src/library/index.d.ts +8 -0
  99. package/dist/es/src/library/index.js +9 -0
  100. package/dist/es/src/library/index.js.map +1 -0
  101. package/dist/es/src/library/services/headset.d.ts +44 -0
  102. package/dist/es/src/library/services/headset.js +307 -0
  103. package/dist/es/src/library/services/headset.js.map +1 -0
  104. package/dist/es/src/library/services/headset.test.d.ts +1 -0
  105. package/dist/es/src/library/services/headset.test.js +795 -0
  106. package/dist/es/src/library/services/headset.test.js.map +1 -0
  107. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.d.ts +45 -0
  108. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.js +251 -0
  109. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.js.map +1 -0
  110. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.d.ts +1 -0
  111. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.js +541 -0
  112. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.js.map +1 -0
  113. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/types.d.ts +33 -0
  114. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/types.js +17 -0
  115. package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/types.js.map +1 -0
  116. package/dist/es/src/library/services/vendor-implementations/jabra/jabra.d.ts +48 -0
  117. package/dist/es/src/library/services/vendor-implementations/jabra/jabra.js +393 -0
  118. package/dist/es/src/library/services/vendor-implementations/jabra/jabra.js.map +1 -0
  119. package/dist/es/src/library/services/vendor-implementations/jabra/jabra.test.d.ts +1 -0
  120. package/dist/es/src/library/services/vendor-implementations/jabra/jabra.test.js +940 -0
  121. package/dist/es/src/library/services/vendor-implementations/jabra/jabra.test.js.map +1 -0
  122. package/dist/es/src/library/services/vendor-implementations/jabra/mock-jabra-sdk.d.ts +7 -0
  123. package/dist/es/src/library/services/vendor-implementations/jabra/mock-jabra-sdk.js +7 -0
  124. package/dist/es/src/library/services/vendor-implementations/jabra/mock-jabra-sdk.js.map +1 -0
  125. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.d.ts +47 -0
  126. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.js +48 -0
  127. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.js.map +1 -0
  128. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.d.ts +1 -0
  129. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.js +109 -0
  130. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.js.map +1 -0
  131. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.d.ts +352 -0
  132. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.js +388 -0
  133. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.js.map +1 -0
  134. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.d.ts +62 -0
  135. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.js +388 -0
  136. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.js.map +1 -0
  137. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.test.d.ts +2 -0
  138. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.test.js +978 -0
  139. package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.test.js.map +1 -0
  140. package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.d.ts +42 -0
  141. package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.js +251 -0
  142. package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.js.map +1 -0
  143. package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.test.d.ts +1 -0
  144. package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.test.js +680 -0
  145. package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.test.js.map +1 -0
  146. package/dist/es/src/library/services/vendor-implementations/sennheiser/types.d.ts +40 -0
  147. package/dist/es/src/library/services/vendor-implementations/sennheiser/types.js +29 -0
  148. package/dist/es/src/library/services/vendor-implementations/sennheiser/types.js.map +1 -0
  149. package/dist/es/src/library/services/vendor-implementations/vendor-implementation.d.ts +49 -0
  150. package/dist/es/src/library/services/vendor-implementations/vendor-implementation.js +95 -0
  151. package/dist/es/src/library/services/vendor-implementations/vendor-implementation.js.map +1 -0
  152. package/dist/es/src/library/services/vendor-implementations/vendor-implemntation.test.d.ts +1 -0
  153. package/dist/es/src/library/services/vendor-implementations/vendor-implemntation.test.js +104 -0
  154. package/dist/es/src/library/services/vendor-implementations/vendor-implemntation.test.js.map +1 -0
  155. package/dist/es/src/library/test-utils.d.ts +16 -0
  156. package/dist/es/src/library/test-utils.js +38 -0
  157. package/dist/es/src/library/test-utils.js.map +1 -0
  158. package/dist/es/src/library/types/call-info.d.ts +4 -0
  159. package/dist/es/src/library/types/call-info.js +2 -0
  160. package/dist/es/src/library/types/call-info.js.map +1 -0
  161. package/dist/es/src/library/types/consumed-headset-events.d.ts +32 -0
  162. package/dist/es/src/library/types/consumed-headset-events.js +15 -0
  163. package/dist/es/src/library/types/consumed-headset-events.js.map +1 -0
  164. package/dist/es/src/library/types/device-info.d.ts +8 -0
  165. package/dist/es/src/library/types/device-info.js +2 -0
  166. package/dist/es/src/library/types/device-info.js.map +1 -0
  167. package/dist/es/src/library/types/emitted-headset-events.d.ts +34 -0
  168. package/dist/es/src/library/types/emitted-headset-events.js +2 -0
  169. package/dist/es/src/library/types/emitted-headset-events.js.map +1 -0
  170. package/dist/es/src/library/types/headset-states.d.ts +10 -0
  171. package/dist/es/src/library/types/headset-states.js +2 -0
  172. package/dist/es/src/library/types/headset-states.js.map +1 -0
  173. package/dist/es/src/library/utils.d.ts +14 -0
  174. package/dist/es/src/library/utils.js +69 -0
  175. package/dist/es/src/library/utils.js.map +1 -0
  176. package/dist/es/src/library/utils.test.d.ts +1 -0
  177. package/dist/es/src/library/utils.test.js +44 -0
  178. package/dist/es/src/library/utils.test.js.map +1 -0
  179. package/dist/es/src/mocks/call.d.ts +11 -0
  180. package/dist/es/src/mocks/call.js +52 -0
  181. package/dist/es/src/mocks/call.js.map +1 -0
  182. package/dist/es/src/mocks/device-service.d.ts +8 -0
  183. package/dist/es/src/mocks/device-service.js +41 -0
  184. package/dist/es/src/mocks/device-service.js.map +1 -0
  185. package/dist/es/src/setupTests.d.ts +1 -0
  186. package/dist/es/src/setupTests.js +6 -0
  187. package/dist/es/src/setupTests.js.map +1 -0
  188. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sennheiser.test.js","sourceRoot":"","sources":["../../../../../../../react-app/src/library/services/vendor-implementations/sennheiser/sennheiser.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ export interface SennheiserPayload {
2
+ CallID?: string;
3
+ DNDOption?: 'Yes' | 'No';
4
+ Event?: SennheiserEvents;
5
+ EventType?: SennheiserEventTypes;
6
+ HeadsetName?: string;
7
+ HeadsetType?: string;
8
+ MuteSupport?: 'Yes' | 'No';
9
+ OffHookSupport?: 'Yes' | 'No';
10
+ RedialSupport?: 'Yes' | 'No';
11
+ ReturnCode?: number;
12
+ SPName?: string;
13
+ SPIconImage?: string;
14
+ }
15
+ export declare enum SennheiserEvents {
16
+ SocketConnected = "SocketConnected",
17
+ EstablishConnection = "EstablishConnection",
18
+ SPLogin = "SPLoggedIn",
19
+ SPLogout = "SPLoggedOut",
20
+ TerminateConnection = "TerminateConnection",
21
+ IncomingCall = "IncomingCall",
22
+ IncomingCallRejected = "InCallRejected",
23
+ IncomingCallAccepted = "InCallAccepted",
24
+ OutgoingCall = "OutgoingCall",
25
+ CallEnded = "CallEnded",
26
+ SystemInformation = "SystemInformation",
27
+ HeadsetConnected = "HeadsetConnected",
28
+ HeadsetDisconnected = "HeadsetDisconnected",
29
+ Hold = "CallHold",
30
+ Resume = "HeldCallResumed",
31
+ MuteFromApp = "MuteHeadset",
32
+ UnmuteFromApp = "UnmuteHeadset",
33
+ MuteFromHeadset = "MuteSoftphone",
34
+ UnmuteFromHeadset = "UnmuteSoftphone"
35
+ }
36
+ export declare enum SennheiserEventTypes {
37
+ Request = "Request",
38
+ Notification = "Notification",
39
+ Ack = "Acknowledgement"
40
+ }
@@ -0,0 +1,29 @@
1
+ export var SennheiserEvents;
2
+ (function (SennheiserEvents) {
3
+ SennheiserEvents["SocketConnected"] = "SocketConnected";
4
+ SennheiserEvents["EstablishConnection"] = "EstablishConnection";
5
+ SennheiserEvents["SPLogin"] = "SPLoggedIn";
6
+ SennheiserEvents["SPLogout"] = "SPLoggedOut";
7
+ SennheiserEvents["TerminateConnection"] = "TerminateConnection";
8
+ SennheiserEvents["IncomingCall"] = "IncomingCall";
9
+ SennheiserEvents["IncomingCallRejected"] = "InCallRejected";
10
+ SennheiserEvents["IncomingCallAccepted"] = "InCallAccepted";
11
+ SennheiserEvents["OutgoingCall"] = "OutgoingCall";
12
+ SennheiserEvents["CallEnded"] = "CallEnded";
13
+ SennheiserEvents["SystemInformation"] = "SystemInformation";
14
+ SennheiserEvents["HeadsetConnected"] = "HeadsetConnected";
15
+ SennheiserEvents["HeadsetDisconnected"] = "HeadsetDisconnected";
16
+ SennheiserEvents["Hold"] = "CallHold";
17
+ SennheiserEvents["Resume"] = "HeldCallResumed";
18
+ SennheiserEvents["MuteFromApp"] = "MuteHeadset";
19
+ SennheiserEvents["UnmuteFromApp"] = "UnmuteHeadset";
20
+ SennheiserEvents["MuteFromHeadset"] = "MuteSoftphone";
21
+ SennheiserEvents["UnmuteFromHeadset"] = "UnmuteSoftphone";
22
+ })(SennheiserEvents || (SennheiserEvents = {}));
23
+ export var SennheiserEventTypes;
24
+ (function (SennheiserEventTypes) {
25
+ SennheiserEventTypes["Request"] = "Request";
26
+ SennheiserEventTypes["Notification"] = "Notification";
27
+ SennheiserEventTypes["Ack"] = "Acknowledgement";
28
+ })(SennheiserEventTypes || (SennheiserEventTypes = {}));
29
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../react-app/src/library/services/vendor-implementations/sennheiser/types.ts"],"names":[],"mappings":"AAeA,MAAM,CAAN,IAAY,gBAoBX;AApBD,WAAY,gBAAgB;IAC1B,uDAAmC,CAAA;IACnC,+DAA2C,CAAA;IAC3C,0CAAsB,CAAA;IACtB,4CAAwB,CAAA;IACxB,+DAA2C,CAAA;IAC3C,iDAA6B,CAAA;IAC7B,2DAAuC,CAAA;IACvC,2DAAuC,CAAA;IACvC,iDAA6B,CAAA;IAC7B,2CAAuB,CAAA;IACvB,2DAAuC,CAAA;IACvC,yDAAqC,CAAA;IACrC,+DAA2C,CAAA;IAC3C,qCAAiB,CAAA;IACjB,8CAA0B,CAAA;IAC1B,+CAA2B,CAAA;IAC3B,mDAA+B,CAAA;IAC/B,qDAAiC,CAAA;IACjC,yDAAqC,CAAA;AACvC,CAAC,EApBW,gBAAgB,KAAhB,gBAAgB,QAoB3B;AAED,MAAM,CAAN,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,2CAAmB,CAAA;IACnB,qDAA6B,CAAA;IAC7B,+CAAuB,CAAA;AACzB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,QAI/B"}
@@ -0,0 +1,49 @@
1
+ import DeviceInfo from '../../types/device-info';
2
+ import StrictEventEmitter from 'strict-event-emitter-types';
3
+ import { EventEmitter } from 'events';
4
+ import { EmittedHeadsetEvents, EventInfo, EventInfoWithConversationId, HoldEventInfo, MutedEventInfo } from '../../types/emitted-headset-events';
5
+ import { CallInfo } from '../..';
6
+ export interface ImplementationConfig {
7
+ logger: any;
8
+ vendorName?: string;
9
+ createNew?: boolean;
10
+ }
11
+ declare const VendorImplementation_base: new () => StrictEventEmitter<EventEmitter, EmittedHeadsetEvents>;
12
+ export declare abstract class VendorImplementation extends VendorImplementation_base {
13
+ vendorName: string;
14
+ isConnecting: boolean;
15
+ isConnected: boolean;
16
+ isMuted: boolean;
17
+ errorCode: string;
18
+ disableRetry: boolean;
19
+ logger: any;
20
+ config: ImplementationConfig;
21
+ constructor(config: ImplementationConfig);
22
+ get isDeviceAttached(): boolean;
23
+ isSupported(): boolean;
24
+ abstract get deviceInfo(): DeviceInfo;
25
+ deviceLabelMatchesVendor(label: string): boolean;
26
+ connect(selectedMicLabel?: string): Promise<any>;
27
+ disconnect(): Promise<any>;
28
+ incomingCall(callInfo: CallInfo, hasOtherActiveCalls?: boolean): Promise<any>;
29
+ outgoingCall(callInfo: CallInfo): Promise<any>;
30
+ answerCall(conversationId: string): Promise<any>;
31
+ rejectCall(conversationId: string): Promise<any>;
32
+ endCall(conversationId: string, hasOtherActiveCalls: boolean): Promise<any>;
33
+ endAllCalls(): Promise<any>;
34
+ setMute(value: boolean): Promise<any>;
35
+ setHold(conversationId: string, value: boolean): Promise<any>;
36
+ private emitEvent;
37
+ requestWebHidPermissions(callback: any): void;
38
+ deviceAnsweredCall(eventInfo: EventInfoWithConversationId): void;
39
+ deviceRejectedCall(eventInfo: EventInfoWithConversationId): void;
40
+ deviceEndedCall(eventInfo: EventInfoWithConversationId): void;
41
+ deviceMuteChanged(eventInfo: MutedEventInfo): void;
42
+ deviceHoldStatusChanged(eventInfo: HoldEventInfo): void;
43
+ deviceEventLogs(eventInfo: EventInfo): void;
44
+ changeConnectionStatus(headsetState: {
45
+ isConnected: boolean;
46
+ isConnecting: boolean;
47
+ }): void;
48
+ }
49
+ export {};
@@ -0,0 +1,95 @@
1
+ import { EventEmitter } from 'events';
2
+ export class VendorImplementation extends EventEmitter {
3
+ constructor(config) {
4
+ super();
5
+ // TODO: rename this to something more descriptive
6
+ this.vendorName = 'Not Specified';
7
+ this.isConnecting = false; // trying to connect with the headset controlling software, ex: plantronics hub
8
+ this.isConnected = false; // represents a connection to the headset controlling software, ex: plantronics hub
9
+ this.isMuted = false;
10
+ this.errorCode = null;
11
+ this.disableRetry = false;
12
+ const eventEmitter = new EventEmitter();
13
+ Object.keys(eventEmitter.__proto__).forEach((name) => {
14
+ this[name] = eventEmitter[name];
15
+ });
16
+ this.config = config;
17
+ this.vendorName = config.vendorName;
18
+ this.logger = config.logger;
19
+ }
20
+ get isDeviceAttached() {
21
+ throw new Error(`${this.vendorName} - isDeviceAttatched getter not implemented`);
22
+ }
23
+ isSupported() {
24
+ return true;
25
+ }
26
+ /* eslint-disable @typescript-eslint/no-unused-vars */
27
+ deviceLabelMatchesVendor(label) {
28
+ throw new Error(`${this.vendorName} - deviceLabelMatchesVendor() not implemented`);
29
+ }
30
+ connect(selectedMicLabel) {
31
+ return Promise.reject(new Error(`${this.vendorName} - connect() not implemented`));
32
+ }
33
+ disconnect() {
34
+ return Promise.reject(new Error(`${this.vendorName} - disconnect() not implemented`));
35
+ }
36
+ incomingCall(callInfo, hasOtherActiveCalls) {
37
+ // TODO: propagate this changed parameter (used to be callInfo, but there are several differents signatures in the implementing classes)
38
+ return Promise.reject(new Error(`${this.vendorName} - incomingCall() not implemented`));
39
+ }
40
+ outgoingCall(callInfo) {
41
+ return Promise.reject(new Error(`${this.vendorName} - outgoingCall() not implemented`));
42
+ }
43
+ answerCall(conversationId) {
44
+ return Promise.reject(new Error(`${this.vendorName} - answerCall() not implemented`));
45
+ }
46
+ rejectCall(conversationId) {
47
+ return Promise.reject(new Error(`${this.vendorName} - rejectCall() not implemented`));
48
+ }
49
+ endCall(conversationId, hasOtherActiveCalls) {
50
+ return Promise.reject(new Error(`${this.vendorName} - endCall() not implemented`));
51
+ }
52
+ endAllCalls() {
53
+ return Promise.reject(new Error(`${this.vendorName} - endAllCalls() not implemented`));
54
+ }
55
+ setMute(value) {
56
+ return Promise.reject(new Error(`${this.vendorName} - setMute() not implemented`));
57
+ }
58
+ setHold(conversationId, value) {
59
+ return Promise.reject(new Error(`${this.vendorName} - setHold() not implemented`));
60
+ }
61
+ /* eslint-enable */
62
+ emitEvent(eventName, eventBody) {
63
+ this.emit(eventName, { vendor: this, body: Object.assign({}, eventBody) });
64
+ }
65
+ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
66
+ requestWebHidPermissions(callback) {
67
+ /* eslint-enable */
68
+ this.logger.debug('Emitting premission request event');
69
+ this.emitEvent('webHidPermissionRequested', { callback });
70
+ }
71
+ deviceAnsweredCall(eventInfo) {
72
+ this.emitEvent('deviceAnsweredCall', eventInfo);
73
+ }
74
+ deviceRejectedCall(eventInfo) {
75
+ this.emitEvent('deviceRejectedCall', eventInfo);
76
+ }
77
+ deviceEndedCall(eventInfo) {
78
+ this.emitEvent('deviceEndedCall', eventInfo);
79
+ }
80
+ deviceMuteChanged(eventInfo) {
81
+ this.emitEvent('deviceMuteChanged', Object.assign({}, eventInfo));
82
+ }
83
+ deviceHoldStatusChanged(eventInfo) {
84
+ this.emitEvent('deviceHoldStatusChanged', Object.assign({}, eventInfo));
85
+ }
86
+ deviceEventLogs(eventInfo) {
87
+ this.emitEvent('deviceEventLogs', eventInfo);
88
+ }
89
+ changeConnectionStatus(headsetState) {
90
+ this.isConnected = headsetState.isConnected;
91
+ this.isConnecting = headsetState.isConnecting;
92
+ this.emitEvent('deviceConnectionStatusChanged', Object.assign({ currentVendor: this }, headsetState));
93
+ }
94
+ }
95
+ //# sourceMappingURL=vendor-implementation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor-implementation.js","sourceRoot":"","sources":["../../../../../../react-app/src/library/services/vendor-implementations/vendor-implementation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { VendorImplementation } from "./vendor-implementation";
11
+ class TestImplementation extends VendorImplementation {
12
+ get deviceInfo() {
13
+ return { deviceName: 'fake device' };
14
+ }
15
+ }
16
+ let implementation;
17
+ beforeEach(() => {
18
+ implementation = new TestImplementation({ logger: console, vendorName: 'test' });
19
+ });
20
+ describe('constructor', () => {
21
+ it('should extend EventEmitter', () => {
22
+ // just testing a few event emitter fns
23
+ expect(implementation.on).toBeDefined();
24
+ expect(implementation.emit).toBeDefined();
25
+ expect(implementation.off).toBeDefined();
26
+ });
27
+ });
28
+ describe('requestWebHidPermissions', () => {
29
+ it('should emit event', () => {
30
+ const callback = {};
31
+ expect.assertions(2);
32
+ implementation.on('webHidPermissionRequested', (event) => {
33
+ expect(event.vendor).toBe(implementation);
34
+ expect(event.body.callback).toBe(callback);
35
+ });
36
+ implementation.requestWebHidPermissions(callback);
37
+ });
38
+ });
39
+ describe('setHold', () => {
40
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
41
+ yield expect(() => implementation.setHold('convo', true)).rejects.toThrow('not implemented');
42
+ }));
43
+ });
44
+ describe('setMute', () => {
45
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
46
+ yield expect(() => implementation.setMute(true)).rejects.toThrow('not implemented');
47
+ }));
48
+ });
49
+ describe('endAllCalls', () => {
50
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
51
+ yield expect(() => implementation.endAllCalls()).rejects.toThrow('not implemented');
52
+ }));
53
+ });
54
+ describe('endCall', () => {
55
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
56
+ yield expect(() => implementation.endCall('convo', true)).rejects.toThrow('not implemented');
57
+ }));
58
+ });
59
+ describe('answerCall', () => {
60
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
61
+ yield expect(() => implementation.answerCall('convo')).rejects.toThrow('not implemented');
62
+ }));
63
+ });
64
+ describe('rejectCall', () => {
65
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
66
+ yield expect(() => implementation.rejectCall('convo')).rejects.toThrow('not implemented');
67
+ }));
68
+ });
69
+ describe('outgoingCall', () => {
70
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
71
+ yield expect(() => implementation.outgoingCall({ conversationId: 'convo' })).rejects.toThrow('not implemented');
72
+ }));
73
+ });
74
+ describe('incomingCall', () => {
75
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
76
+ yield expect(() => implementation.incomingCall({ conversationId: 'convo' })).rejects.toThrow('not implemented');
77
+ }));
78
+ });
79
+ describe('disconnect', () => {
80
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
81
+ yield expect(() => implementation.disconnect()).rejects.toThrow('not implemented');
82
+ }));
83
+ });
84
+ describe('connect', () => {
85
+ it('should throw not implemented', () => __awaiter(void 0, void 0, void 0, function* () {
86
+ yield expect(() => implementation.connect()).rejects.toThrow('not implemented');
87
+ }));
88
+ });
89
+ describe('deviceLabelMatchesVendor', () => {
90
+ it('should throw not implemented', () => {
91
+ expect(() => implementation.deviceLabelMatchesVendor('my mic')).toThrow('not implemented');
92
+ });
93
+ });
94
+ describe('isDeviceAttached', () => {
95
+ it('should throw not implemented', () => {
96
+ expect(() => implementation.isDeviceAttached).toThrow('not implemented');
97
+ });
98
+ });
99
+ describe('isSupported', () => {
100
+ it('should default to true', () => {
101
+ expect(implementation.isSupported()).toBeTruthy();
102
+ });
103
+ });
104
+ //# sourceMappingURL=vendor-implemntation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vendor-implemntation.test.js","sourceRoot":"","sources":["../../../../../../react-app/src/library/services/vendor-implementations/vendor-implemntation.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { VendorImplementation } from "./services/vendor-implementations/vendor-implementation";
2
+ import { EmittedHeadsetEvents } from "./types/emitted-headset-events";
3
+ export declare function createMockWebSocket(): {
4
+ readyState: number;
5
+ send: () => void;
6
+ close: () => void;
7
+ onOpen: () => void;
8
+ onClose: () => void;
9
+ };
10
+ export declare const mockLogger: {
11
+ info: () => void;
12
+ warn: () => void;
13
+ error: () => void;
14
+ debug: () => void;
15
+ };
16
+ export declare function eventValidation(headsetService: VendorImplementation, eventName: keyof EmittedHeadsetEvents, assertHandler?: Function): Promise<void>;
@@ -0,0 +1,38 @@
1
+ /* istanbul ignore file */
2
+ /* eslint-disable */
3
+ export function createMockWebSocket() {
4
+ return {
5
+ readyState: 0,
6
+ send: () => { },
7
+ close: () => { },
8
+ onOpen: () => { },
9
+ onClose: () => { },
10
+ };
11
+ }
12
+ export const mockLogger = {
13
+ info: () => { },
14
+ warn: () => { },
15
+ error: () => { },
16
+ debug: () => { },
17
+ };
18
+ export function eventValidation(headsetService, eventName, assertHandler) {
19
+ return new Promise((resolve, reject) => {
20
+ let timeout;
21
+ const handler = function ( /* arguments */) {
22
+ clearTimeout(timeout);
23
+ if (assertHandler) {
24
+ assertHandler(...arguments);
25
+ }
26
+ headsetService.off(eventName, handler);
27
+ resolve();
28
+ };
29
+ // wait up to 3 seconds for the event to be polled/triggered
30
+ timeout = setTimeout(() => {
31
+ headsetService.off(eventName, handler);
32
+ reject(new Error(`${eventName} was never triggered on the service`));
33
+ }, 3000);
34
+ headsetService.on(eventName, handler);
35
+ });
36
+ }
37
+ /* eslint-enable */
38
+ //# sourceMappingURL=test-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-utils.js","sourceRoot":"","sources":["../../../../react-app/src/library/test-utils.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,oBAAoB;AAKpB,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,UAAU,EAAE,CAAC;QACb,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;QACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;QACf,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;QAChB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;IACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;IACf,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;CAChB,CAAC;AAEF,MAAM,UAAU,eAAe,CAAE,cAAoC,EAAE,SAAqC,EAAE,aAAwB;IACpI,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,OAAY,CAAC;QAEjB,MAAM,OAAO,GAAG,WAAU,eAAe;YACvC,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,IAAI,aAAa,EAAE;gBACjB,aAAa,CAAC,GAAG,SAAS,CAAC,CAAC;aAC7B;YACD,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACvC,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QACF,4DAA4D;QAC5D,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACxB,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,SAAS,qCAAqC,CAAC,CAAC,CAAC;QACvE,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AACD,mBAAmB"}
@@ -0,0 +1,4 @@
1
+ export declare type CallInfo = {
2
+ conversationId: string;
3
+ contactName?: string;
4
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=call-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-info.js","sourceRoot":"","sources":["../../../../../react-app/src/library/types/call-info.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ import { VendorImplementation } from "../services/vendor-implementations/vendor-implementation";
2
+ import { EventInfoWithConversationId, HoldEventInfo, MutedEventInfo, WebHidPermissionRequest } from "./emitted-headset-events";
3
+ export declare enum HeadsetEvents {
4
+ implementationChanged = "implementationChanged",
5
+ deviceHoldStatusChanged = "deviceHoldStatusChanged",
6
+ deviceMuteStatusChanged = "deviceMuteStatusChanged",
7
+ deviceAnsweredCall = "deviceAnsweredCall",
8
+ deviceEndedCall = "deviceEndedCall",
9
+ deviceRejectedCall = "deviceRejectedCall",
10
+ loggableEvent = "loggableEvent",
11
+ webHidPermissionRequested = "webHidPermissionRequested",
12
+ deviceConnectionStatusChanged = "deviceConnectionStatusChanged",
13
+ deviceMuteChanged = "deviceMuteChanged",
14
+ deviceEventLogs = "deviceEventLogs"
15
+ }
16
+ declare type Events = {
17
+ [HeadsetEvents.implementationChanged]: VendorImplementation;
18
+ [HeadsetEvents.deviceHoldStatusChanged]: HoldEventInfo;
19
+ [HeadsetEvents.deviceMuteStatusChanged]: MutedEventInfo;
20
+ [HeadsetEvents.deviceAnsweredCall]: EventInfoWithConversationId;
21
+ [HeadsetEvents.deviceEndedCall]: EventInfoWithConversationId;
22
+ [HeadsetEvents.deviceRejectedCall]: EventInfoWithConversationId;
23
+ [HeadsetEvents.loggableEvent]: any;
24
+ [HeadsetEvents.webHidPermissionRequested]: WebHidPermissionRequest;
25
+ [HeadsetEvents.deviceConnectionStatusChanged]: DeviceConnectionStatus;
26
+ };
27
+ export declare type DeviceConnectionStatus = 'checking' | 'running' | 'notRunning' | 'noVendor';
28
+ export declare type ConsumedHeadsetEvents<T = keyof Events> = T extends keyof Events ? {
29
+ event: T;
30
+ payload: Events[T];
31
+ } : never;
32
+ export {};
@@ -0,0 +1,15 @@
1
+ export var HeadsetEvents;
2
+ (function (HeadsetEvents) {
3
+ HeadsetEvents["implementationChanged"] = "implementationChanged";
4
+ HeadsetEvents["deviceHoldStatusChanged"] = "deviceHoldStatusChanged";
5
+ HeadsetEvents["deviceMuteStatusChanged"] = "deviceMuteStatusChanged";
6
+ HeadsetEvents["deviceAnsweredCall"] = "deviceAnsweredCall";
7
+ HeadsetEvents["deviceEndedCall"] = "deviceEndedCall";
8
+ HeadsetEvents["deviceRejectedCall"] = "deviceRejectedCall";
9
+ HeadsetEvents["loggableEvent"] = "loggableEvent";
10
+ HeadsetEvents["webHidPermissionRequested"] = "webHidPermissionRequested";
11
+ HeadsetEvents["deviceConnectionStatusChanged"] = "deviceConnectionStatusChanged";
12
+ HeadsetEvents["deviceMuteChanged"] = "deviceMuteChanged";
13
+ HeadsetEvents["deviceEventLogs"] = "deviceEventLogs";
14
+ })(HeadsetEvents || (HeadsetEvents = {}));
15
+ //# sourceMappingURL=consumed-headset-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consumed-headset-events.js","sourceRoot":"","sources":["../../../../../react-app/src/library/types/consumed-headset-events.ts"],"names":[],"mappings":"AAGA,MAAM,CAAN,IAAY,aAYX;AAZD,WAAY,aAAa;IACrB,gEAA+C,CAAA;IAC/C,oEAAmD,CAAA;IACnD,oEAAmD,CAAA;IACnD,0DAAyC,CAAA;IACzC,oDAAmC,CAAA;IACnC,0DAAyC,CAAA;IACzC,gDAA+B,CAAA;IAC/B,wEAAuD,CAAA;IACvD,gFAA+D,CAAA;IAC/D,wDAAuC,CAAA;IACvC,oDAAmC,CAAA;AACvC,CAAC,EAZW,aAAa,KAAb,aAAa,QAYxB"}
@@ -0,0 +1,8 @@
1
+ export default interface DeviceInfo {
2
+ ProductName?: string;
3
+ deviceName?: string;
4
+ deviceId?: string;
5
+ deviceID?: string;
6
+ headsetType?: string;
7
+ attached?: boolean;
8
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=device-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-info.js","sourceRoot":"","sources":["../../../../../react-app/src/library/types/device-info.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ import { VendorImplementation } from "../services/vendor-implementations/vendor-implementation";
2
+ export interface EmittedHeadsetEvents {
3
+ deviceAnsweredCall: VendorEvent<EventInfoWithConversationId>;
4
+ deviceRejectedCall: VendorEvent<EventInfoWithConversationId>;
5
+ deviceEndedCall: VendorEvent<EventInfoWithConversationId>;
6
+ deviceMuteChanged: VendorEvent<MutedEventInfo>;
7
+ deviceHoldStatusChanged: VendorEvent<HoldEventInfo>;
8
+ deviceEventLogs: VendorEvent<any>;
9
+ webHidPermissionRequested: VendorEvent<WebHidPermissionRequest>;
10
+ deviceConnectionStatusChanged: VendorEvent<any>;
11
+ }
12
+ export declare type VendorEvent<Type> = {
13
+ vendor: VendorImplementation;
14
+ body: Type;
15
+ };
16
+ export interface EventInfo {
17
+ name: string;
18
+ code?: string | number;
19
+ event?: any;
20
+ conversationId?: string;
21
+ }
22
+ export interface EventInfoWithConversationId extends EventInfo {
23
+ conversationId: string;
24
+ }
25
+ export interface MutedEventInfo extends EventInfo {
26
+ isMuted: boolean;
27
+ }
28
+ export interface HoldEventInfo extends EventInfoWithConversationId {
29
+ holdRequested: boolean;
30
+ toggle?: boolean;
31
+ }
32
+ export interface WebHidPermissionRequest {
33
+ callback: any;
34
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=emitted-headset-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emitted-headset-events.js","sourceRoot":"","sources":["../../../../../react-app/src/library/types/emitted-headset-events.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ export interface HeadsetState {
2
+ offHook: boolean;
3
+ muted: boolean;
4
+ held: boolean;
5
+ ringing: boolean;
6
+ }
7
+ export interface HeadsetStateRecord extends HeadsetState {
8
+ conversationId: string;
9
+ removeTimer?: any;
10
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=headset-states.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headset-states.js","sourceRoot":"","sources":["../../../../../react-app/src/library/types/headset-states.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ export declare function isFirefox(): boolean;
2
+ /**
3
+ *
4
+ * @param promise
5
+ * @param timeoutInMillis
6
+ *
7
+ * Returns a promise that resolves if the passed in promise resolves before the timeout
8
+ * time elapses. If the timeout elapses, then the returned promise rejects with a
9
+ * message that the timeout time was exceeded.
10
+ */
11
+ export declare function timedPromise(promise: Promise<any>, timeoutInMillis: number, timeoutError?: Error): Promise<any>;
12
+ export declare function debounce(func: () => void, delay: number): any;
13
+ export declare function isCefHosted(): boolean;
14
+ export declare function requestCefPromise(cmd: any): Promise<any>;