@webex/contact-center 3.11.0 → 3.12.0-llmrefactor.2

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 (267) hide show
  1. package/.sdd/manifest.json +882 -0
  2. package/AGENTS.md +94 -0
  3. package/ai-docs/ARCHITECTURE.md +168 -0
  4. package/ai-docs/CONTRACTS.md +46 -0
  5. package/ai-docs/GETTING_STARTED.md +168 -0
  6. package/ai-docs/GLOSSARY.md +43 -0
  7. package/ai-docs/README.md +138 -0
  8. package/ai-docs/REVIEW_CHECKLIST.md +41 -0
  9. package/ai-docs/RULES.md +444 -0
  10. package/ai-docs/SECURITY.md +52 -0
  11. package/ai-docs/SERVICE_STATE.md +48 -0
  12. package/ai-docs/SPEC_INDEX.md +65 -0
  13. package/ai-docs/adr/0001-spec-source-policy.md +55 -0
  14. package/ai-docs/adr/README.md +8 -0
  15. package/ai-docs/adr/_adr-template.md +31 -0
  16. package/ai-docs/contact-center-spec.md +341 -0
  17. package/ai-docs/features/generated-spec-conformance-fidelity-remediation/spec/feature-spec.md +117 -0
  18. package/ai-docs/features/residual-warning-coverage-completion/spec/feature-spec.md +203 -0
  19. package/ai-docs/features/validator-code-fidelity-drift-fix/spec/feature-spec.md +315 -0
  20. package/ai-docs/patterns/event-driven-patterns.md +485 -0
  21. package/ai-docs/patterns/testing-patterns.md +480 -0
  22. package/ai-docs/patterns/typescript-patterns.md +365 -0
  23. package/ai-docs/templates/README.md +102 -0
  24. package/ai-docs/templates/documentation/create-agents-md.md +240 -0
  25. package/ai-docs/templates/documentation/create-architecture-md.md +295 -0
  26. package/ai-docs/templates/existing-service/bug-fix.md +254 -0
  27. package/ai-docs/templates/existing-service/feature-enhancement.md +450 -0
  28. package/ai-docs/templates/new-method/00-master.md +80 -0
  29. package/ai-docs/templates/new-method/01-requirements.md +232 -0
  30. package/ai-docs/templates/new-method/02-implementation.md +295 -0
  31. package/ai-docs/templates/new-method/03-tests.md +201 -0
  32. package/ai-docs/templates/new-method/04-validation.md +141 -0
  33. package/ai-docs/templates/new-service/00-master.md +109 -0
  34. package/ai-docs/templates/new-service/01-pre-questions.md +159 -0
  35. package/ai-docs/templates/new-service/02-code-generation.md +346 -0
  36. package/ai-docs/templates/new-service/03-integration.md +178 -0
  37. package/ai-docs/templates/new-service/04-test-generation.md +205 -0
  38. package/ai-docs/templates/new-service/05-validation.md +145 -0
  39. package/dist/cc.js +379 -50
  40. package/dist/cc.js.map +1 -1
  41. package/dist/config.js +6 -0
  42. package/dist/config.js.map +1 -1
  43. package/dist/constants.js +22 -2
  44. package/dist/constants.js.map +1 -1
  45. package/dist/index.js +27 -5
  46. package/dist/index.js.map +1 -1
  47. package/dist/metrics/behavioral-events.js +114 -0
  48. package/dist/metrics/behavioral-events.js.map +1 -1
  49. package/dist/metrics/constants.js +32 -3
  50. package/dist/metrics/constants.js.map +1 -1
  51. package/dist/services/ApiAiAssistant.js +318 -0
  52. package/dist/services/ApiAiAssistant.js.map +1 -0
  53. package/dist/services/UserPreference.js +427 -0
  54. package/dist/services/UserPreference.js.map +1 -0
  55. package/dist/services/agent/types.js.map +1 -1
  56. package/dist/services/config/Util.js +8 -4
  57. package/dist/services/config/Util.js.map +1 -1
  58. package/dist/services/config/constants.js +35 -2
  59. package/dist/services/config/constants.js.map +1 -1
  60. package/dist/services/config/index.js +41 -2
  61. package/dist/services/config/index.js.map +1 -1
  62. package/dist/services/config/types.js +66 -8
  63. package/dist/services/config/types.js.map +1 -1
  64. package/dist/services/constants.js +27 -1
  65. package/dist/services/constants.js.map +1 -1
  66. package/dist/services/core/Err.js.map +1 -1
  67. package/dist/services/core/Utils.js +122 -25
  68. package/dist/services/core/Utils.js.map +1 -1
  69. package/dist/services/core/aqm-reqs.js +92 -17
  70. package/dist/services/core/aqm-reqs.js.map +1 -1
  71. package/dist/services/core/websocket/WebSocketManager.js +22 -6
  72. package/dist/services/core/websocket/WebSocketManager.js.map +1 -1
  73. package/dist/services/core/websocket/connection-service.js +3 -1
  74. package/dist/services/core/websocket/connection-service.js.map +1 -1
  75. package/dist/services/core/websocket/types.js.map +1 -1
  76. package/dist/services/index.js +6 -0
  77. package/dist/services/index.js.map +1 -1
  78. package/dist/services/task/Task.js +688 -0
  79. package/dist/services/task/Task.js.map +1 -0
  80. package/dist/services/task/TaskFactory.js +45 -0
  81. package/dist/services/task/TaskFactory.js.map +1 -0
  82. package/dist/services/task/TaskManager.js +751 -457
  83. package/dist/services/task/TaskManager.js.map +1 -1
  84. package/dist/services/task/TaskUtils.js +220 -23
  85. package/dist/services/task/TaskUtils.js.map +1 -1
  86. package/dist/services/task/constants.js +23 -2
  87. package/dist/services/task/constants.js.map +1 -1
  88. package/dist/services/task/dialer.js +129 -0
  89. package/dist/services/task/dialer.js.map +1 -1
  90. package/dist/services/task/digital/Digital.js +77 -0
  91. package/dist/services/task/digital/Digital.js.map +1 -0
  92. package/dist/services/task/state-machine/TaskStateMachine.js +873 -0
  93. package/dist/services/task/state-machine/TaskStateMachine.js.map +1 -0
  94. package/dist/services/task/state-machine/actions.js +567 -0
  95. package/dist/services/task/state-machine/actions.js.map +1 -0
  96. package/dist/services/task/state-machine/constants.js +161 -0
  97. package/dist/services/task/state-machine/constants.js.map +1 -0
  98. package/dist/services/task/state-machine/guards.js +382 -0
  99. package/dist/services/task/state-machine/guards.js.map +1 -0
  100. package/dist/services/task/state-machine/index.js +53 -0
  101. package/dist/services/task/state-machine/index.js.map +1 -0
  102. package/dist/services/task/state-machine/types.js +54 -0
  103. package/dist/services/task/state-machine/types.js.map +1 -0
  104. package/dist/services/task/state-machine/uiControlsComputer.js +603 -0
  105. package/dist/services/task/state-machine/uiControlsComputer.js.map +1 -0
  106. package/dist/services/task/taskDataNormalizer.js +99 -0
  107. package/dist/services/task/taskDataNormalizer.js.map +1 -0
  108. package/dist/services/task/types.js +227 -4
  109. package/dist/services/task/types.js.map +1 -1
  110. package/dist/services/task/voice/Voice.js +1044 -0
  111. package/dist/services/task/voice/Voice.js.map +1 -0
  112. package/dist/services/task/voice/WebRTC.js +149 -0
  113. package/dist/services/task/voice/WebRTC.js.map +1 -0
  114. package/dist/types/cc.d.ts +894 -0
  115. package/dist/types/config.d.ts +72 -0
  116. package/dist/types/constants.d.ts +66 -0
  117. package/dist/types/index.d.ts +199 -0
  118. package/dist/types/logger-proxy.d.ts +71 -0
  119. package/dist/types/metrics/MetricsManager.d.ts +223 -0
  120. package/dist/types/metrics/behavioral-events.d.ts +29 -0
  121. package/dist/types/metrics/constants.d.ts +181 -0
  122. package/dist/types/services/AddressBook.d.ts +74 -0
  123. package/dist/types/services/ApiAiAssistant.d.ts +49 -0
  124. package/dist/types/services/EntryPoint.d.ts +67 -0
  125. package/dist/types/services/Queue.d.ts +76 -0
  126. package/dist/types/services/UserPreference.d.ts +118 -0
  127. package/dist/types/services/WebCallingService.d.ts +1 -0
  128. package/dist/types/services/agent/index.d.ts +46 -0
  129. package/dist/types/services/agent/types.d.ts +413 -0
  130. package/dist/types/services/config/Util.d.ts +20 -0
  131. package/dist/types/services/config/constants.d.ts +270 -0
  132. package/dist/types/services/config/index.d.ts +177 -0
  133. package/dist/types/services/config/types.d.ts +1368 -0
  134. package/dist/types/services/constants.d.ts +110 -0
  135. package/dist/types/services/core/Err.d.ts +125 -0
  136. package/dist/types/services/core/GlobalTypes.d.ts +58 -0
  137. package/dist/types/services/core/Utils.d.ts +121 -0
  138. package/dist/types/services/core/WebexRequest.d.ts +22 -0
  139. package/dist/types/services/core/aqm-reqs.d.ts +65 -0
  140. package/dist/types/services/core/constants.d.ts +99 -0
  141. package/dist/types/services/core/types.d.ts +47 -0
  142. package/dist/types/services/core/websocket/WebSocketManager.d.ts +36 -0
  143. package/dist/types/services/core/websocket/connection-service.d.ts +27 -0
  144. package/dist/types/services/core/websocket/keepalive.worker.d.ts +2 -0
  145. package/dist/types/services/core/websocket/types.d.ts +37 -0
  146. package/dist/types/services/index.d.ts +54 -0
  147. package/dist/types/services/task/AutoWrapup.d.ts +40 -0
  148. package/dist/types/services/task/Task.d.ts +157 -0
  149. package/dist/types/services/task/TaskFactory.d.ts +12 -0
  150. package/dist/types/services/task/TaskManager.d.ts +1 -0
  151. package/dist/types/services/task/TaskUtils.d.ts +138 -0
  152. package/dist/types/services/task/constants.d.ts +91 -0
  153. package/dist/types/services/task/contact.d.ts +69 -0
  154. package/dist/types/services/task/dialer.d.ts +73 -0
  155. package/dist/types/services/task/digital/Digital.d.ts +22 -0
  156. package/dist/types/services/task/state-machine/TaskStateMachine.d.ts +1194 -0
  157. package/dist/types/services/task/state-machine/actions.d.ts +10 -0
  158. package/dist/types/services/task/state-machine/constants.d.ts +107 -0
  159. package/dist/types/services/task/state-machine/guards.d.ts +102 -0
  160. package/dist/types/services/task/state-machine/index.d.ts +13 -0
  161. package/dist/types/services/task/state-machine/types.d.ts +269 -0
  162. package/dist/types/services/task/state-machine/uiControlsComputer.d.ts +9 -0
  163. package/dist/types/services/task/taskDataNormalizer.d.ts +10 -0
  164. package/dist/types/services/task/types.d.ts +1856 -0
  165. package/dist/types/services/task/voice/Voice.d.ts +184 -0
  166. package/dist/types/services/task/voice/WebRTC.d.ts +53 -0
  167. package/dist/types/types.d.ts +778 -0
  168. package/dist/types/utils/PageCache.d.ts +173 -0
  169. package/dist/types/webex-config.d.ts +53 -0
  170. package/dist/types/webex.d.ts +8 -0
  171. package/dist/types.js +130 -1
  172. package/dist/types.js.map +1 -1
  173. package/dist/webex.js +14 -2
  174. package/dist/webex.js.map +1 -1
  175. package/package.json +16 -12
  176. package/src/cc.ts +477 -51
  177. package/src/config.ts +6 -0
  178. package/src/constants.ts +21 -1
  179. package/src/index.ts +24 -5
  180. package/src/metrics/ai-docs/AGENTS.md +350 -0
  181. package/src/metrics/ai-docs/ARCHITECTURE.md +338 -0
  182. package/src/metrics/ai-docs/metrics-spec.md +854 -0
  183. package/src/metrics/behavioral-events.ts +120 -0
  184. package/src/metrics/constants.ts +37 -3
  185. package/src/services/ApiAiAssistant.ts +412 -0
  186. package/src/services/UserPreference.ts +509 -0
  187. package/src/services/agent/ai-docs/AGENTS.md +240 -0
  188. package/src/services/agent/ai-docs/ARCHITECTURE.md +304 -0
  189. package/src/services/agent/ai-docs/agent-spec.md +504 -0
  190. package/src/services/agent/types.ts +1 -1
  191. package/src/services/ai-docs/AGENTS.md +386 -0
  192. package/src/services/ai-docs/services-spec.md +492 -0
  193. package/src/services/config/Util.ts +10 -2
  194. package/src/services/config/ai-docs/AGENTS.md +255 -0
  195. package/src/services/config/ai-docs/ARCHITECTURE.md +426 -0
  196. package/src/services/config/ai-docs/config-spec.md +669 -0
  197. package/src/services/config/constants.ts +37 -1
  198. package/src/services/config/index.ts +45 -1
  199. package/src/services/config/types.ts +241 -11
  200. package/src/services/constants.ts +29 -0
  201. package/src/services/core/Err.ts +3 -0
  202. package/src/services/core/Utils.ts +143 -30
  203. package/src/services/core/ai-docs/AGENTS.md +381 -0
  204. package/src/services/core/ai-docs/ARCHITECTURE.md +698 -0
  205. package/src/services/core/ai-docs/core-spec.md +783 -0
  206. package/src/services/core/aqm-reqs.ts +100 -22
  207. package/src/services/core/websocket/WebSocketManager.ts +23 -6
  208. package/src/services/core/websocket/connection-service.ts +5 -1
  209. package/src/services/core/websocket/types.ts +1 -1
  210. package/src/services/index.ts +4 -0
  211. package/src/services/task/Task.ts +837 -0
  212. package/src/services/task/TaskFactory.ts +55 -0
  213. package/src/services/task/TaskManager.ts +793 -521
  214. package/src/services/task/TaskUtils.ts +314 -24
  215. package/src/services/task/ai-docs/AGENTS.md +457 -0
  216. package/src/services/task/ai-docs/ARCHITECTURE.md +594 -0
  217. package/src/services/task/ai-docs/task-spec.md +1319 -0
  218. package/src/services/task/constants.ts +23 -0
  219. package/src/services/task/dialer.ts +136 -1
  220. package/src/services/task/digital/Digital.ts +95 -0
  221. package/src/services/task/state-machine/TaskStateMachine.ts +1166 -0
  222. package/src/services/task/state-machine/actions.ts +738 -0
  223. package/src/services/task/state-machine/ai-docs/AGENTS.md +458 -0
  224. package/src/services/task/state-machine/ai-docs/ARCHITECTURE.md +1137 -0
  225. package/src/services/task/state-machine/ai-docs/task-state-machine-spec.md +2177 -0
  226. package/src/services/task/state-machine/constants.ts +172 -0
  227. package/src/services/task/state-machine/guards.ts +445 -0
  228. package/src/services/task/state-machine/index.ts +28 -0
  229. package/src/services/task/state-machine/types.ts +243 -0
  230. package/src/services/task/state-machine/uiControlsComputer.ts +961 -0
  231. package/src/services/task/taskDataNormalizer.ts +137 -0
  232. package/src/services/task/types.ts +734 -71
  233. package/src/services/task/voice/Voice.ts +1270 -0
  234. package/src/services/task/voice/WebRTC.ts +187 -0
  235. package/src/types.ts +205 -2
  236. package/src/utils/AGENTS.md +278 -0
  237. package/src/utils/ai-docs/utils-spec.md +381 -0
  238. package/src/webex.js +2 -0
  239. package/test/unit/spec/cc.ts +503 -43
  240. package/test/unit/spec/logger-proxy.ts +70 -0
  241. package/test/unit/spec/services/ApiAiAssistant.ts +273 -0
  242. package/test/unit/spec/services/UserPreference.ts +401 -0
  243. package/test/unit/spec/services/WebCallingService.ts +7 -1
  244. package/test/unit/spec/services/config/index.ts +85 -29
  245. package/test/unit/spec/services/core/Utils.ts +481 -2
  246. package/test/unit/spec/services/core/websocket/WebSocketManager.ts +137 -41
  247. package/test/unit/spec/services/core/websocket/connection-service.ts +3 -1
  248. package/test/unit/spec/services/task/AutoWrapup.ts +63 -0
  249. package/test/unit/spec/services/task/Task.ts +477 -0
  250. package/test/unit/spec/services/task/TaskFactory.ts +62 -0
  251. package/test/unit/spec/services/task/TaskManager.ts +1001 -1003
  252. package/test/unit/spec/services/task/TaskUtils.ts +235 -0
  253. package/test/unit/spec/services/task/dialer.ts +372 -96
  254. package/test/unit/spec/services/task/digital/Digital.ts +105 -0
  255. package/test/unit/spec/services/task/state-machine/TaskStateMachine.ts +2651 -0
  256. package/test/unit/spec/services/task/state-machine/guards.ts +637 -0
  257. package/test/unit/spec/services/task/state-machine/types.ts +18 -0
  258. package/test/unit/spec/services/task/state-machine/uiControlsComputer.ts +2663 -0
  259. package/test/unit/spec/services/task/taskTestUtils.ts +87 -0
  260. package/test/unit/spec/services/task/voice/Voice.ts +649 -0
  261. package/test/unit/spec/services/task/voice/WebRTC.ts +235 -0
  262. package/umd/contact-center.min.js +2 -2
  263. package/umd/contact-center.min.js.map +1 -1
  264. package/dist/services/task/index.js +0 -1525
  265. package/dist/services/task/index.js.map +0 -1
  266. package/src/services/task/index.ts +0 -1801
  267. package/test/unit/spec/services/task/index.ts +0 -2184
@@ -0,0 +1,181 @@
1
+ type Enum<T extends Record<string, unknown>> = T[keyof T];
2
+ /**
3
+ * @ignore
4
+ * @module METRIC_EVENT_NAMES
5
+ * @export
6
+ * @description
7
+ * A constant object containing all metric event names used for tracking various agent and task-related events
8
+ * within the Contact Center plugin. Each property represents a specific event and its corresponding string value
9
+ * as reported in metrics.
10
+ *
11
+ * @property {string} STATION_LOGIN_SUCCESS - Event name for successful station login.
12
+ * @property {string} STATION_LOGIN_FAILED - Event name for failed station login.
13
+ * @property {string} STATION_LOGOUT_SUCCESS - Event name for successful station logout.
14
+ * @property {string} STATION_LOGOUT_FAILED - Event name for failed station logout.
15
+ * @property {string} STATION_RELOGIN_SUCCESS - Event name for successful station relogin.
16
+ * @property {string} STATION_RELOGIN_FAILED - Event name for failed station relogin.
17
+ * @property {string} AGENT_STATE_CHANGE_SUCCESS - Event name for successful agent state change.
18
+ * @property {string} AGENT_STATE_CHANGE_FAILED - Event name for failed agent state change.
19
+ * @property {string} FETCH_BUDDY_AGENTS_SUCCESS - Event name for successfully fetching buddy agents.
20
+ * @property {string} FETCH_BUDDY_AGENTS_FAILED - Event name for failed attempt to fetch buddy agents.
21
+ * @property {string} WEBSOCKET_REGISTER_SUCCESS - Event name for successful websocket registration.
22
+ * @property {string} WEBSOCKET_REGISTER_FAILED - Event name for failed websocket registration.
23
+ * @property {string} AGENT_RONA - Event name for agent RONA (Ring No Answer).
24
+ * @property {string} AGENT_CONTACT_ASSIGN_FAILED - Event name for failed agent contact assignment.
25
+ * @property {string} AGENT_INVITE_FAILED - Event name for failed agent invite.
26
+ *
27
+ * @property {string} TASK_ACCEPT_SUCCESS - Event name for successful task acceptance.
28
+ * @property {string} TASK_ACCEPT_FAILED - Event name for failed task acceptance.
29
+ * @property {string} TASK_DECLINE_SUCCESS - Event name for successful task decline.
30
+ * @property {string} TASK_DECLINE_FAILED - Event name for failed task decline.
31
+ * @property {string} TASK_END_SUCCESS - Event name for successful task end.
32
+ * @property {string} TASK_END_FAILED - Event name for failed task end.
33
+ * @property {string} TASK_WRAPUP_SUCCESS - Event name for successful task wrap-up.
34
+ * @property {string} TASK_WRAPUP_FAILED - Event name for failed task wrap-up.
35
+ * @property {string} TASK_HOLD_SUCCESS - Event name for successful task hold.
36
+ * @property {string} TASK_HOLD_FAILED - Event name for failed task hold.
37
+ * @property {string} TASK_RESUME_SUCCESS - Event name for successful task resume.
38
+ * @property {string} TASK_RESUME_FAILED - Event name for failed task resume.
39
+ * @property {string} TASK_CONSULT_START_SUCCESS - Event name for successful consult start.
40
+ * @property {string} TASK_CONSULT_START_FAILED - Event name for failed consult start.
41
+ * @property {string} TASK_CONSULT_END_SUCCESS - Event name for successful consult end.
42
+ * @property {string} TASK_CONSULT_END_FAILED - Event name for failed consult end.
43
+ * @property {string} TASK_TRANSFER_SUCCESS - Event name for successful task transfer.
44
+ * @property {string} TASK_TRANSFER_FAILED - Event name for failed task transfer.
45
+ * @property {string} TASK_RESUME_RECORDING_SUCCESS - Event name for successful resume of recording.
46
+ * @property {string} TASK_RESUME_RECORDING_FAILED - Event name for failed resume of recording.
47
+ * @property {string} TASK_PAUSE_RECORDING_SUCCESS - Event name for successful pause of recording.
48
+ * @property {string} TASK_PAUSE_RECORDING_FAILED - Event name for failed pause of recording.
49
+ * @property {string} TASK_ACCEPT_CONSULT_SUCCESS - Event name for successful consult acceptance.
50
+ * @property {string} TASK_ACCEPT_CONSULT_FAILED - Event name for failed consult acceptance.
51
+ * @property {string} TASK_AUTO_ANSWER_SUCCESS - Event name for successful auto-answer.
52
+ * @property {string} TASK_AUTO_ANSWER_FAILED - Event name for failed auto-answer.
53
+ *
54
+ * @property {string} TASK_CONFERENCE_START_SUCCESS - Event name for successful conference start.
55
+ * @property {string} TASK_CONFERENCE_START_FAILED - Event name for failed conference start.
56
+ * @property {string} TASK_CONFERENCE_END_SUCCESS - Event name for successful conference end.
57
+ * @property {string} TASK_CONFERENCE_END_FAILED - Event name for failed conference end.
58
+ * @property {string} TASK_CONFERENCE_TRANSFER_SUCCESS - Event name for successful conference transfer.
59
+ * @property {string} TASK_CONFERENCE_TRANSFER_FAILED - Event name for failed conference transfer.
60
+ *
61
+ * @property {string} TASK_OUTDIAL_SUCCESS - Event name for successful outdial task.
62
+ * @property {string} TASK_OUTDIAL_FAILED - Event name for failed outdial task.
63
+ *
64
+ * @property {string} UPLOAD_LOGS_SUCCESS - Event name for successful log upload.
65
+ * @property {string} UPLOAD_LOGS_FAILED - Event name for failed log upload.
66
+ * @property {string} WEBSOCKET_DEREGISTER_SUCCESS - Event name for successful websocket deregistration.
67
+ * @property {string} WEBSOCKET_DEREGISTER_FAIL - Event name for failed websocket deregistration.
68
+ *
69
+ * @property {string} AGENT_DEVICE_TYPE_UPDATE_SUCCESS - Event name for successful agent device type update.
70
+ * @property {string} AGENT_DEVICE_TYPE_UPDATE_FAILED - Event name for failed agent device type update.
71
+ *
72
+ * @property {string} OUTDIAL_ANI_EP_FETCH_SUCCESS - Event name for successful outdial ANI entries fetch.
73
+ * @property {string} OUTDIAL_ANI_EP_FETCH_FAILED - Event name for failed outdial ANI entries fetch.
74
+ *
75
+ * @readonly
76
+ */
77
+ export declare const METRIC_EVENT_NAMES: {
78
+ readonly STATION_LOGIN_SUCCESS: "Station Login Success";
79
+ readonly STATION_LOGIN_FAILED: "Station Login Failed";
80
+ readonly STATION_LOGOUT_SUCCESS: "Station Logout Success";
81
+ readonly STATION_LOGOUT_FAILED: "Station Logout Failed";
82
+ readonly STATION_RELOGIN_SUCCESS: "Station Relogin Success";
83
+ readonly STATION_RELOGIN_FAILED: "Station Relogin Failed";
84
+ readonly AGENT_STATE_CHANGE_SUCCESS: "Agent State Change Success";
85
+ readonly AGENT_STATE_CHANGE_FAILED: "Agent State Change Failed";
86
+ readonly FETCH_BUDDY_AGENTS_SUCCESS: "Fetch Buddy Agents Success";
87
+ readonly FETCH_BUDDY_AGENTS_FAILED: "Fetch Buddy Agents Failed";
88
+ readonly WEBSOCKET_REGISTER_SUCCESS: "Websocket Register Success";
89
+ readonly WEBSOCKET_REGISTER_FAILED: "Websocket Register Failed";
90
+ readonly AGENT_RONA: "Agent RONA";
91
+ readonly AGENT_CONTACT_ASSIGN_FAILED: "Agent Contact Assign Failed";
92
+ readonly AGENT_INVITE_FAILED: "Agent Invite Failed";
93
+ readonly TASK_ACCEPT_SUCCESS: "Task Accept Success";
94
+ readonly TASK_ACCEPT_FAILED: "Task Accept Failed";
95
+ readonly TASK_DECLINE_SUCCESS: "Task Decline Success";
96
+ readonly TASK_DECLINE_FAILED: "Task Decline Failed";
97
+ readonly TASK_END_SUCCESS: "Task End Success";
98
+ readonly TASK_END_FAILED: "Task End Failed";
99
+ readonly TASK_WRAPUP_SUCCESS: "Task Wrapup Success";
100
+ readonly TASK_WRAPUP_FAILED: "Task Wrapup Failed";
101
+ readonly TASK_HOLD_SUCCESS: "Task Hold Success";
102
+ readonly TASK_HOLD_FAILED: "Task Hold Failed";
103
+ readonly TASK_RESUME_SUCCESS: "Task Resume Success";
104
+ readonly TASK_RESUME_FAILED: "Task Resume Failed";
105
+ readonly TASK_CONSULT_START_SUCCESS: "Task Consult Start Success";
106
+ readonly TASK_CONSULT_START_FAILED: "Task Consult Start Failed";
107
+ readonly TASK_CONSULT_END_SUCCESS: "Task Consult End Success";
108
+ readonly TASK_CONSULT_END_FAILED: "Task Consult End Failed";
109
+ readonly TASK_TRANSFER_SUCCESS: "Task Transfer Success";
110
+ readonly TASK_TRANSFER_FAILED: "Task Transfer Failed";
111
+ readonly TASK_RESUME_RECORDING_SUCCESS: "Task Resume Recording Success";
112
+ readonly TASK_RESUME_RECORDING_FAILED: "Task Resume Recording Failed";
113
+ readonly TASK_PAUSE_RECORDING_SUCCESS: "Task Pause Recording Success";
114
+ readonly TASK_PAUSE_RECORDING_FAILED: "Task Pause Recording Failed";
115
+ readonly TASK_ACCEPT_CONSULT_SUCCESS: "Task Accept Consult Success";
116
+ readonly TASK_ACCEPT_CONSULT_FAILED: "Task Accept Consult Failed";
117
+ readonly TASK_AUTO_ANSWER_SUCCESS: "Task Auto Answer Success";
118
+ readonly TASK_AUTO_ANSWER_FAILED: "Task Auto Answer Failed";
119
+ readonly TASK_CONFERENCE_START_SUCCESS: "Task Conference Start Success";
120
+ readonly TASK_CONFERENCE_START_FAILED: "Task Conference Start Failed";
121
+ readonly TASK_CONFERENCE_END_SUCCESS: "Task Conference End Success";
122
+ readonly TASK_CONFERENCE_END_FAILED: "Task Conference End Failed";
123
+ readonly TASK_CONFERENCE_TRANSFER_SUCCESS: "Task Conference Transfer Success";
124
+ readonly TASK_CONFERENCE_TRANSFER_FAILED: "Task Conference Transfer Failed";
125
+ readonly TASK_CONFERENCE_EXIT_SUCCESS: "Task Conference Exit Success";
126
+ readonly TASK_CONFERENCE_EXIT_FAILED: "Task Conference Exit Failed";
127
+ readonly TASK_SWITCH_CALL_SUCCESS: "Task Switch Call Success";
128
+ readonly TASK_SWITCH_CALL_FAILED: "Task Switch Call Failed";
129
+ readonly TASK_OUTDIAL_SUCCESS: "Task Outdial Success";
130
+ readonly TASK_OUTDIAL_FAILED: "Task Outdial Failed";
131
+ readonly UPLOAD_LOGS_SUCCESS: "Upload Logs Success";
132
+ readonly UPLOAD_LOGS_FAILED: "Upload Logs Failed";
133
+ readonly WEBSOCKET_DEREGISTER_SUCCESS: "Websocket Deregister Success";
134
+ readonly WEBSOCKET_DEREGISTER_FAIL: "Websocket Deregister Failed";
135
+ readonly AGENT_DEVICE_TYPE_UPDATE_SUCCESS: "Agent Device Type Update Success";
136
+ readonly AGENT_DEVICE_TYPE_UPDATE_FAILED: "Agent Device Type Update Failed";
137
+ readonly WEBSOCKET_EVENT_RECEIVED: "Websocket Event Received";
138
+ readonly ENTRYPOINT_FETCH_SUCCESS: "Entrypoint Fetch Success";
139
+ readonly ENTRYPOINT_FETCH_FAILED: "Entrypoint Fetch Failed";
140
+ readonly ADDRESSBOOK_FETCH_SUCCESS: "AddressBook Fetch Success";
141
+ readonly ADDRESSBOOK_FETCH_FAILED: "AddressBook Fetch Failed";
142
+ readonly QUEUE_FETCH_SUCCESS: "Queue Fetch Success";
143
+ readonly QUEUE_FETCH_FAILED: "Queue Fetch Failed";
144
+ readonly OUTDIAL_ANI_EP_FETCH_SUCCESS: "Outdial ANI Entries Fetch Success";
145
+ readonly OUTDIAL_ANI_EP_FETCH_FAILED: "Outdial ANI Entries Fetch Failed";
146
+ readonly CAMPAIGN_PREVIEW_ACCEPT_SUCCESS: "Campaign Preview Accept Success";
147
+ readonly CAMPAIGN_PREVIEW_ACCEPT_FAILED: "Campaign Preview Accept Failed";
148
+ readonly CAMPAIGN_PREVIEW_SKIP_SUCCESS: "Campaign Preview Skip Success";
149
+ readonly CAMPAIGN_PREVIEW_SKIP_FAILED: "Campaign Preview Skip Failed";
150
+ readonly CAMPAIGN_PREVIEW_REMOVE_SUCCESS: "Campaign Preview Remove Success";
151
+ readonly CAMPAIGN_PREVIEW_REMOVE_FAILED: "Campaign Preview Remove Failed";
152
+ readonly AI_ASSISTANT_SEND_EVENT_SUCCESS: "AI Assistant Send Event Success";
153
+ readonly AI_ASSISTANT_SEND_EVENT_FAILED: "AI Assistant Send Event Failed";
154
+ readonly AI_ASSISTANT_GET_REAL_TIME_ASSISTANCE_SUCCESS: "AI Assistant Get Real Time Assistance Success";
155
+ readonly AI_ASSISTANT_GET_REAL_TIME_ASSISTANCE_FAILED: "AI Assistant Get Real Time Assistance Failed";
156
+ readonly AI_ASSISTANT_SEND_REAL_TIME_ASSISTANCE_USER_ACTION_SUCCESS: "AI Assistant Send Real Time Assistance User Action Success";
157
+ readonly AI_ASSISTANT_SEND_REAL_TIME_ASSISTANCE_USER_ACTION_FAILED: "AI Assistant Send Real Time Assistance User Action Failed";
158
+ readonly AI_ASSISTANT_FETCH_HISTORIC_TRANSCRIPTS_SUCCESS: "AI Assistant Fetch Historic Transcripts Success";
159
+ readonly AI_ASSISTANT_FETCH_HISTORIC_TRANSCRIPTS_FAILED: "AI Assistant Fetch Historic Transcripts Failed";
160
+ readonly USER_PREFERENCE_GET_SUCCESS: "User Preference Get Success";
161
+ readonly USER_PREFERENCE_GET_FAILED: "User Preference Get Failed";
162
+ readonly USER_PREFERENCE_CREATE_SUCCESS: "User Preference Create Success";
163
+ readonly USER_PREFERENCE_CREATE_FAILED: "User Preference Create Failed";
164
+ readonly USER_PREFERENCE_UPDATE_SUCCESS: "User Preference Update Success";
165
+ readonly USER_PREFERENCE_UPDATE_FAILED: "User Preference Update Failed";
166
+ readonly USER_PREFERENCE_DELETE_SUCCESS: "User Preference Delete Success";
167
+ readonly USER_PREFERENCE_DELETE_FAILED: "User Preference Delete Failed";
168
+ };
169
+ /**
170
+ * Represents the possible metric event names used within the metrics system.
171
+ *
172
+ * This type is derived from the keys of the `METRIC_EVENT_NAMES` constant, ensuring
173
+ * type safety and consistency when referring to metric event names throughout the codebase.
174
+ * @export
175
+ * @typedef {Enum<typeof METRIC_EVENT_NAMES>} METRIC_EVENT_NAMES
176
+ * @typeParam T - The type of the `METRIC_EVENT_NAMES` constant.
177
+ *
178
+ * @see {@link METRIC_EVENT_NAMES}
179
+ */
180
+ export type METRIC_EVENT_NAMES = Enum<typeof METRIC_EVENT_NAMES>;
181
+ export {};
@@ -0,0 +1,74 @@
1
+ import { WebexSDK } from '../types';
2
+ import type { AddressBookEntriesResponse, AddressBookEntrySearchParams } from '../types';
3
+ /**
4
+ * AddressBook API class for managing Webex Contact Center address book entries.
5
+ * Provides functionality to fetch address book entries using the entry API.
6
+ *
7
+ * @class AddressBook
8
+ * @public
9
+ * @example
10
+ * ```typescript
11
+ * import Webex from 'webex';
12
+ *
13
+ * const webex = new Webex({ credentials: 'YOUR_ACCESS_TOKEN' });
14
+ * const cc = webex.cc;
15
+ *
16
+ * // Register and login first
17
+ * await cc.register();
18
+ * await cc.stationLogin({ teamId: 'team123', loginOption: 'BROWSER' });
19
+ *
20
+ * // Get AddressBook API instance from ContactCenter
21
+ * const addressBookAPI = cc.addressBook;
22
+ *
23
+ * // Get entries from agent's default address book
24
+ * const entries = await addressBookAPI.getEntries();
25
+ *
26
+ * // Get entries from a specific address book with pagination
27
+ * const entries = await addressBookAPI.getEntries({
28
+ * addressBookId: 'addressBookId123',
29
+ * page: 0,
30
+ * pageSize: 50
31
+ * });
32
+ *
33
+ * // Search for specific entries
34
+ * const searchResults = await addressBook.getEntries({
35
+ * search: 'john',
36
+ * filter: 'name=="John Doe"'
37
+ * });
38
+ * ```
39
+ */
40
+ export declare class AddressBook {
41
+ private webexRequest;
42
+ private webex;
43
+ private getAddressBookId;
44
+ private metricsManager;
45
+ private pageCache;
46
+ /**
47
+ * Creates an instance of AddressBook
48
+ * @param {WebexSDK} webex - The Webex SDK instance
49
+ * @param {() => string} getAddressBookId - Function to get the addressBookId from agent profile
50
+ * @public
51
+ */
52
+ constructor(webex: WebexSDK, getAddressBookId: () => string);
53
+ /**
54
+ * Fetches address book entries for a specific address book using the entry API
55
+ * @param {AddressBookEntrySearchParams} [params] - Search and pagination parameters including addressBookId
56
+ * @returns {Promise<AddressBookEntriesResponse>} Promise resolving to address book entries
57
+ * @throws {Error} If the API call fails
58
+ * @public
59
+ * @example
60
+ * ```typescript
61
+ * // Get entries from agent's default address book
62
+ * const response = await addressBookAPI.getEntries();
63
+ *
64
+ * // Get entries from a specific address book with pagination
65
+ * const response = await addressBookAPI.getEntries({
66
+ * addressBookId: 'addressBookId123',
67
+ * page: 0,
68
+ * pageSize: 25
69
+ * });
70
+ * ```
71
+ */
72
+ getEntries(params?: AddressBookEntrySearchParams): Promise<AddressBookEntriesResponse>;
73
+ }
74
+ export default AddressBook;
@@ -0,0 +1,49 @@
1
+ import { WebexSDK, AIAssistantEventType, AIAssistantEventName, HistoricTranscriptsResponse, RealTimeAssistanceParams, RealTimeAssistanceUserActionParams } from '../types';
2
+ import { AIFeatureFlags } from './config/types';
3
+ /**
4
+ * ApiAIAssistant provides AI Assistant APIs for transcript controls.
5
+ * @public
6
+ */
7
+ export declare class ApiAIAssistant {
8
+ private webex;
9
+ private metricsManager;
10
+ private aiFeature;
11
+ constructor(webex: WebexSDK);
12
+ setAIFeatureFlags(aiFeature: AIFeatureFlags): void;
13
+ private getBaseUrl;
14
+ /**
15
+ * Sends an event to the AI Assistant service.
16
+ * @param agentId - agent identifier
17
+ * @param interactionId - interaction/conversation identifier
18
+ * @param eventType - the type of event (e.g. 'CUSTOM_EVENT')
19
+ * @param eventName - the name of the event (e.g. 'GET_TRANSCRIPTS')
20
+ * @param eventMetaData - event-specific fields to include in eventDetails.data
21
+ * @param languageCode - language code within eventDetails.data
22
+ * @param trackingId - tracking identifier within eventDetails.data
23
+ */
24
+ sendEvent(agentId: string, interactionId: string, eventType: AIAssistantEventType, eventName: AIAssistantEventName, eventMetaData?: Record<string, unknown>, languageCode?: string, trackingId?: string): Promise<Record<string, unknown>>;
25
+ /**
26
+ * Requests real-time assistance for an interaction.
27
+ *
28
+ * @param params - Real-time assistance request parameters
29
+ * @returns HTTP response body from the AI Assistant event API
30
+ * @public
31
+ */
32
+ getRealTimeAssistance(params: RealTimeAssistanceParams): Promise<Record<string, unknown>>;
33
+ /**
34
+ * Sends user action feedback for a real-time assistance adaptive card.
35
+ *
36
+ * @param params - Real-time assistance user action parameters
37
+ * @returns HTTP response body from the AI Assistant event API
38
+ * @public
39
+ */
40
+ sendRealTimeAssistanceUserAction(params: RealTimeAssistanceUserActionParams): Promise<Record<string, unknown>>;
41
+ /**
42
+ * Fetches historic transcripts for an interaction.
43
+ * This API is allowed only when real-time transcription feature is enabled.
44
+ *
45
+ * @param interactionId - interaction/conversation identifier
46
+ */
47
+ fetchHistoricTranscripts(agentId: string, interactionId: string): Promise<HistoricTranscriptsResponse>;
48
+ }
49
+ export default ApiAIAssistant;
@@ -0,0 +1,67 @@
1
+ import { WebexSDK } from '../types';
2
+ import type { EntryPointListResponse, EntryPointSearchParams } from '../types';
3
+ /**
4
+ * EntryPoint class for managing Webex Contact Center entry points.
5
+ * Provides functionality to fetch, search, and paginate through entry points.
6
+ *
7
+ * @class EntryPoint
8
+ * @public
9
+ * @example
10
+ * ```typescript
11
+ * import Webex from 'webex';
12
+ *
13
+ * const webex = new Webex({ credentials: 'YOUR_ACCESS_TOKEN' });
14
+ * const cc = webex.cc;
15
+ *
16
+ * // Register and login first
17
+ * await cc.register();
18
+ * await cc.stationLogin({ teamId: 'team123', loginOption: 'BROWSER' });
19
+ *
20
+ * // Get EntryPoint API instance from ContactCenter
21
+ * const entryPointAPI = cc.entryPoint;
22
+ *
23
+ * // Get all entry points with pagination
24
+ * const response = await entryPointAPI.getEntryPoints({
25
+ * page: 0,
26
+ * pageSize: 50
27
+ * });
28
+ *
29
+ * // Search for specific entry points
30
+ * const searchResults = await entryPointAPI.searchEntryPoints({
31
+ * search: 'support',
32
+ * filter: 'type=="voice"'
33
+ * });
34
+ * ```
35
+ */
36
+ export declare class EntryPoint {
37
+ private webexRequest;
38
+ private webex;
39
+ private metricsManager;
40
+ private pageCache;
41
+ /**
42
+ * Creates an instance of EntryPoint
43
+ * @param {WebexSDK} webex - The Webex SDK instance
44
+ * @public
45
+ */
46
+ constructor(webex: WebexSDK);
47
+ /**
48
+ * Fetches entry points for the organization with pagination support
49
+ * @param {EntryPointSearchParams} [params] - Search and pagination parameters
50
+ * @returns {Promise<EntryPointListResponse>} Promise resolving to paginated entry points
51
+ * @throws {Error} If the API call fails
52
+ * @public
53
+ * @example
54
+ * ```typescript
55
+ * // Get first page of entry points
56
+ * const response = await entryPointAPI.getEntryPoints();
57
+ *
58
+ * // Get specific page with custom page size
59
+ * const response = await entryPointAPI.getEntryPoints({
60
+ * page: 2,
61
+ * pageSize: 25
62
+ * });
63
+ * ```
64
+ */
65
+ getEntryPoints(params?: EntryPointSearchParams): Promise<EntryPointListResponse>;
66
+ }
67
+ export default EntryPoint;
@@ -0,0 +1,76 @@
1
+ import { WebexSDK } from '../types';
2
+ import type { ContactServiceQueuesResponse, ContactServiceQueueSearchParams } from '../types';
3
+ /**
4
+ * Queue API class for managing Webex Contact Center contact service queues.
5
+ * Provides functionality to fetch contact service queues using the queue API.
6
+ *
7
+ * @class Queue
8
+ * @public
9
+ * @example
10
+ * ```typescript
11
+ * import Webex from 'webex';
12
+ *
13
+ * const webex = new Webex({ credentials: 'YOUR_ACCESS_TOKEN' });
14
+ * const cc = webex.cc;
15
+ *
16
+ * // Register and login first
17
+ * await cc.register();
18
+ * await cc.stationLogin({ teamId: 'team123', loginOption: 'BROWSER' });
19
+ *
20
+ * // Get Queue API instance from ContactCenter
21
+ * const queueAPI = cc.queue;
22
+ *
23
+ * // Get all queues
24
+ * const queues = await queueAPI.getQueues();
25
+ *
26
+ * // Get queues with pagination
27
+ * const queues = await queueAPI.getQueues({
28
+ * page: 0,
29
+ * pageSize: 50
30
+ * });
31
+ *
32
+ * // Search for specific queues
33
+ * const searchResults = await queueAPI.getQueues({
34
+ * search: 'support',
35
+ * filter: 'name=="Support Queue"'
36
+ * });
37
+ * ```
38
+ */
39
+ export declare class Queue {
40
+ private webexRequest;
41
+ private webex;
42
+ private metricsManager;
43
+ private pageCache;
44
+ /**
45
+ * Creates an instance of Queue
46
+ * @param {WebexSDK} webex - The Webex SDK instance
47
+ * @public
48
+ */
49
+ constructor(webex: WebexSDK);
50
+ /**
51
+ * Fetches contact service queues for the organization
52
+ * @param {ContactServiceQueueSearchParams} [params] - Search and pagination parameters
53
+ * @returns {Promise<ContactServiceQueuesResponse>} Promise resolving to contact service queues
54
+ * @throws {Error} If the API call fails
55
+ * @public
56
+ * @example
57
+ * ```typescript
58
+ * // Get all queues with default pagination
59
+ * const response = await queueAPI.getQueues();
60
+ *
61
+ * // Get queues with specific pagination
62
+ * const response = await queueAPI.getQueues({
63
+ * page: 0,
64
+ * pageSize: 25
65
+ * });
66
+ *
67
+ * // Search for queues
68
+ * const response = await queueAPI.getQueues({
69
+ * search: 'support',
70
+ * filter: 'queueType=="INBOUND"'
71
+ * });
72
+ * ```
73
+ */
74
+ getQueues(params?: ContactServiceQueueSearchParams): Promise<ContactServiceQueuesResponse>;
75
+ }
76
+ export default Queue;
@@ -0,0 +1,118 @@
1
+ import { WebexSDK } from '../types';
2
+ import type { UserPreference as UserPreferenceResponse, CreateUserPreferenceRequest, UpdateUserPreferenceRequest, GetUserPreferenceParams } from './config/types';
3
+ /**
4
+ * UserPreference API class for managing Webex Contact Center user preferences.
5
+ * Provides functionality to get, create, update, and delete user preferences.
6
+ *
7
+ * @class UserPreference
8
+ * @public
9
+ * @example
10
+ * ```typescript
11
+ * import Webex from 'webex';
12
+ *
13
+ * const webex = new Webex({ credentials: 'YOUR_ACCESS_TOKEN' });
14
+ * const cc = webex.cc;
15
+ *
16
+ * // Register and login first
17
+ * await cc.register();
18
+ * await cc.stationLogin({ teamId: 'team123', loginOption: 'BROWSER' });
19
+ *
20
+ * // Get UserPreference API instance from ContactCenter
21
+ * const userPreferenceAPI = cc.userPreference;
22
+ *
23
+ * // Get user preferences for the current user
24
+ * const preferences = await userPreferenceAPI.getUserPreference();
25
+ *
26
+ * // Create new user preferences
27
+ * const newPreferences = await userPreferenceAPI.createUserPreference({
28
+ * userId: 'user123',
29
+ * preferences: { e911Reminder: true }
30
+ * });
31
+ *
32
+ * // Update user preferences
33
+ * const updatedPreferences = await userPreferenceAPI.updateUserPreference('user123', {
34
+ * preferences: { e911Reminder: false }
35
+ * });
36
+ *
37
+ * // Delete user preferences
38
+ * await userPreferenceAPI.deleteUserPreference('user123');
39
+ * ```
40
+ */
41
+ export declare class UserPreference {
42
+ private webexRequest;
43
+ private webex;
44
+ private getUserId;
45
+ private metricsManager;
46
+ /**
47
+ * Creates an instance of UserPreference
48
+ * @param {WebexSDK} webex - The Webex SDK instance
49
+ * @param {() => string} getUserId - Function to get the current user's CI user ID
50
+ * @public
51
+ */
52
+ constructor(webex: WebexSDK, getUserId: () => string);
53
+ /**
54
+ * Fetches user preferences for a specific user
55
+ * @param {GetUserPreferenceParams} [params] - Optional parameters for fetching preferences
56
+ * @param {string} [params.userId] - User ID to fetch preferences for. Defaults to current user's CI user ID.
57
+ * @param {number} [params.page=0] - Page number (0-indexed). Default: 0
58
+ * @param {number} [params.pageSize=100] - Number of items per page. Default: 100
59
+ * @returns {Promise<UserPreferenceResponse>} Promise resolving to user preferences
60
+ * @throws {Error} If the API call fails
61
+ * @public
62
+ * @example
63
+ * ```typescript
64
+ * // Get preferences for current user
65
+ * const preferences = await userPreferenceAPI.getUserPreference();
66
+ *
67
+ * // Get preferences for a specific user
68
+ * const preferences = await userPreferenceAPI.getUserPreference({ userId: 'user123' });
69
+ *
70
+ * // Get preferences with pagination
71
+ * const preferences = await userPreferenceAPI.getUserPreference({ page: 0, pageSize: 50 });
72
+ * ```
73
+ */
74
+ getUserPreference(params?: GetUserPreferenceParams): Promise<UserPreferenceResponse>;
75
+ /**
76
+ * Creates new user preferences
77
+ * @param {CreateUserPreferenceRequest} data - The user preference data to create
78
+ * @returns {Promise<UserPreference>} Promise resolving to created user preferences
79
+ * @throws {Error} If the API call fails
80
+ * @public
81
+ * @example
82
+ * ```typescript
83
+ * const newPreferences = await userPreferenceAPI.createUserPreference({
84
+ * userId: 'user123',
85
+ * preferences: { e911Reminder: true, notificationSettings: { email: true } }
86
+ * });
87
+ * ```
88
+ */
89
+ createUserPreference(data: CreateUserPreferenceRequest): Promise<UserPreferenceResponse>;
90
+ /**
91
+ * Updates existing user preferences
92
+ * @param {string} userId - User ID to update preferences for
93
+ * @param {UpdateUserPreferenceRequest} data - The user preference data to update
94
+ * @returns {Promise<UserPreference>} Promise resolving to updated user preferences
95
+ * @throws {Error} If the API call fails
96
+ * @public
97
+ * @example
98
+ * ```typescript
99
+ * const updatedPreferences = await userPreferenceAPI.updateUserPreference('user123', {
100
+ * preferences: { e911Reminder: false }
101
+ * });
102
+ * ```
103
+ */
104
+ updateUserPreference(userId: string, data: UpdateUserPreferenceRequest): Promise<UserPreferenceResponse>;
105
+ /**
106
+ * Deletes user preferences for a specific user
107
+ * @param {string} userId - User ID to delete preferences for
108
+ * @returns {Promise<void>} Promise resolving when deletion is complete
109
+ * @throws {Error} If the API call fails
110
+ * @public
111
+ * @example
112
+ * ```typescript
113
+ * await userPreferenceAPI.deleteUserPreference('user123');
114
+ * ```
115
+ */
116
+ deleteUserPreference(userId: string): Promise<void>;
117
+ }
118
+ export default UserPreference;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,46 @@
1
+ import * as Agent from './types';
2
+ import AqmReqs from '../core/aqm-reqs';
3
+ /**
4
+ * Agent Service provides methods to manage agent states and operations
5
+ * @param routing - AqmReqs instance for making API requests
6
+ * @ignore
7
+ */
8
+ export default function routingAgent(routing: AqmReqs): {
9
+ /**
10
+ * Reloads the agent session
11
+ * @public
12
+ */
13
+ reload: import("../core/types").ResEmpty<Agent.ReloginSuccess>;
14
+ /**
15
+ * Logs out the agent
16
+ * @param p.data - Logout parameters
17
+ * @public
18
+ */
19
+ logout: import("../core/types").Res<Agent.LogoutSuccess, {
20
+ data: Agent.Logout;
21
+ }>;
22
+ /**
23
+ * Logs in the agent to a station
24
+ * @param p.data - Station login parameters
25
+ * @public
26
+ */
27
+ stationLogin: import("../core/types").Res<Agent.StationLoginSuccess, {
28
+ data: Agent.UserStationLogin;
29
+ }>;
30
+ /**
31
+ * Changes the agent's state
32
+ * @param p.data - State change parameters
33
+ * @public
34
+ */
35
+ stateChange: import("../core/types").Res<Agent.StateChangeSuccess, {
36
+ data: Agent.StateChange;
37
+ }>;
38
+ /**
39
+ * Retrieves list of buddy agents
40
+ * @param p.data - Buddy agent query parameters
41
+ * @public
42
+ */
43
+ buddyAgents: import("../core/types").Res<Agent.BuddyAgentsSuccess, {
44
+ data: Agent.BuddyAgents;
45
+ }>;
46
+ };