@splitsoftware/splitio-commons 1.6.2-rc.1 → 1.6.2-rc.4

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 (433) hide show
  1. package/cjs/listeners/browser.js +1 -2
  2. package/cjs/logger/constants.js +1 -2
  3. package/cjs/sdkClient/clientAttributesDecoration.js +1 -1
  4. package/cjs/sdkFactory/index.js +6 -13
  5. package/cjs/services/splitApi.js +1 -20
  6. package/cjs/storages/inMemory/AttributesCacheInMemory.js +1 -1
  7. package/cjs/sync/submitters/submitterManager.js +0 -3
  8. package/cjs/trackers/impressionsTracker.js +28 -7
  9. package/cjs/utils/constants/index.js +2 -3
  10. package/cjs/utils/key/index.js +1 -1
  11. package/cjs/utils/settingsValidation/impressionsMode.js +2 -2
  12. package/cjs/utils/settingsValidation/index.js +1 -3
  13. package/esm/listeners/browser.js +2 -3
  14. package/esm/logger/constants.js +0 -1
  15. package/esm/sdkClient/clientAttributesDecoration.js +1 -1
  16. package/esm/sdkFactory/index.js +6 -13
  17. package/esm/services/splitApi.js +1 -20
  18. package/esm/storages/inMemory/AttributesCacheInMemory.js +1 -1
  19. package/esm/sync/submitters/submitterManager.js +0 -3
  20. package/esm/trackers/impressionsTracker.js +28 -7
  21. package/esm/utils/constants/index.js +0 -1
  22. package/esm/utils/key/index.js +1 -1
  23. package/esm/utils/settingsValidation/impressionsMode.js +3 -3
  24. package/esm/utils/settingsValidation/index.js +1 -3
  25. package/package.json +4 -5
  26. package/src/consent/sdkUserConsent.ts +4 -3
  27. package/src/dtos/types.ts +0 -8
  28. package/src/evaluator/Engine.ts +3 -3
  29. package/src/evaluator/combiners/and.ts +1 -1
  30. package/src/evaluator/combiners/ifelseif.ts +3 -3
  31. package/src/evaluator/condition/engineUtils.ts +1 -1
  32. package/src/evaluator/condition/index.ts +6 -6
  33. package/src/evaluator/index.ts +10 -10
  34. package/src/evaluator/matchers/all.ts +1 -1
  35. package/src/evaluator/matchers/between.ts +1 -1
  36. package/src/evaluator/matchers/boolean.ts +1 -1
  37. package/src/evaluator/matchers/cont_all.ts +1 -1
  38. package/src/evaluator/matchers/cont_any.ts +1 -1
  39. package/src/evaluator/matchers/cont_str.ts +1 -1
  40. package/src/evaluator/matchers/dependency.ts +1 -1
  41. package/src/evaluator/matchers/eq.ts +1 -1
  42. package/src/evaluator/matchers/eq_set.ts +1 -1
  43. package/src/evaluator/matchers/ew.ts +1 -1
  44. package/src/evaluator/matchers/gte.ts +1 -1
  45. package/src/evaluator/matchers/index.ts +1 -1
  46. package/src/evaluator/matchers/lte.ts +1 -1
  47. package/src/evaluator/matchers/part_of.ts +1 -1
  48. package/src/evaluator/matchers/segment.ts +1 -1
  49. package/src/evaluator/matchers/string.ts +1 -1
  50. package/src/evaluator/matchers/sw.ts +1 -1
  51. package/src/evaluator/matchers/whitelist.ts +1 -1
  52. package/src/evaluator/parser/index.ts +3 -3
  53. package/src/evaluator/types.ts +6 -6
  54. package/src/evaluator/value/index.ts +4 -4
  55. package/src/evaluator/value/sanitize.ts +4 -4
  56. package/src/integrations/ga/GaToSplit.ts +6 -6
  57. package/src/integrations/ga/SplitToGa.ts +10 -10
  58. package/src/integrations/ga/types.ts +4 -4
  59. package/src/integrations/pluggable.ts +3 -3
  60. package/src/integrations/types.ts +2 -2
  61. package/src/listeners/browser.ts +2 -3
  62. package/src/logger/.DS_Store +0 -0
  63. package/src/logger/constants.ts +0 -1
  64. package/src/logger/index.ts +3 -3
  65. package/src/logger/sdkLogger.ts +1 -2
  66. package/src/logger/types.ts +0 -16
  67. package/src/readiness/sdkReadinessManager.ts +1 -1
  68. package/src/readiness/types.ts +2 -9
  69. package/src/sdkClient/client.ts +13 -13
  70. package/src/sdkClient/clientAttributesDecoration.ts +13 -13
  71. package/src/sdkClient/clientCS.ts +3 -4
  72. package/src/sdkClient/clientInputValidation.ts +15 -15
  73. package/src/sdkClient/sdkClient.ts +2 -2
  74. package/src/sdkClient/sdkClientMethod.ts +2 -2
  75. package/src/sdkClient/sdkClientMethodCS.ts +9 -9
  76. package/src/sdkClient/sdkClientMethodCSWithTT.ts +9 -9
  77. package/src/sdkFactory/index.ts +8 -17
  78. package/src/sdkFactory/types.ts +8 -11
  79. package/src/sdkManager/index.ts +5 -5
  80. package/src/services/splitApi.ts +1 -22
  81. package/src/services/types.ts +0 -6
  82. package/src/storages/dataLoader.ts +2 -2
  83. package/src/storages/inLocalStorage/MySegmentsCacheInLocal.ts +1 -1
  84. package/src/storages/inLocalStorage/SplitsCacheInLocal.ts +2 -2
  85. package/src/storages/inLocalStorage/index.ts +3 -2
  86. package/src/storages/inMemory/AttributesCacheInMemory.ts +13 -12
  87. package/src/storages/inMemory/EventsCacheInMemory.ts +4 -4
  88. package/src/storages/inRedis/EventsCacheInRedis.ts +4 -4
  89. package/src/storages/inRedis/ImpressionsCacheInRedis.ts +1 -1
  90. package/src/storages/inRedis/RedisAdapter.ts +1 -1
  91. package/src/storages/inRedis/SegmentsCacheInRedis.ts +1 -1
  92. package/src/storages/inRedis/SplitsCacheInRedis.ts +1 -1
  93. package/src/storages/inRedis/TelemetryCacheInRedis.ts +1 -1
  94. package/src/storages/inRedis/index.ts +3 -2
  95. package/src/storages/pluggable/EventsCachePluggable.ts +4 -4
  96. package/src/storages/pluggable/ImpressionsCachePluggable.ts +1 -1
  97. package/src/storages/pluggable/SegmentsCachePluggable.ts +1 -1
  98. package/src/storages/pluggable/SplitsCachePluggable.ts +1 -1
  99. package/src/storages/pluggable/TelemetryCachePluggable.ts +1 -1
  100. package/src/storages/pluggable/index.ts +3 -3
  101. package/src/storages/pluggable/wrapperAdapter.ts +1 -1
  102. package/src/storages/types.ts +46 -35
  103. package/src/sync/offline/LocalhostFromObject.ts +4 -4
  104. package/src/sync/offline/splitsParser/splitsParserFromSettings.ts +8 -8
  105. package/src/sync/polling/updaters/mySegmentsUpdater.ts +1 -1
  106. package/src/sync/polling/updaters/segmentChangesUpdater.ts +1 -1
  107. package/src/sync/polling/updaters/splitChangesUpdater.ts +1 -1
  108. package/src/sync/streaming/SSEHandler/index.ts +1 -1
  109. package/src/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.ts +1 -1
  110. package/src/sync/streaming/UpdateWorkers/SplitsUpdateWorker.ts +1 -1
  111. package/src/sync/submitters/submitter.ts +1 -1
  112. package/src/sync/submitters/submitterManager.ts +0 -2
  113. package/src/sync/submitters/types.ts +3 -22
  114. package/src/sync/syncTask.ts +1 -1
  115. package/src/trackers/eventTracker.ts +3 -3
  116. package/src/trackers/impressionsTracker.ts +37 -15
  117. package/src/trackers/types.ts +4 -34
  118. package/src/types.d.ts +1581 -0
  119. package/src/utils/constants/index.ts +1 -2
  120. package/src/utils/inputValidation/apiKey.ts +1 -1
  121. package/src/utils/inputValidation/attribute.ts +1 -1
  122. package/src/utils/inputValidation/attributes.ts +3 -3
  123. package/src/utils/inputValidation/event.ts +1 -1
  124. package/src/utils/inputValidation/eventProperties.ts +3 -3
  125. package/src/utils/inputValidation/eventValue.ts +1 -1
  126. package/src/utils/inputValidation/isOperational.ts +1 -1
  127. package/src/utils/inputValidation/key.ts +3 -3
  128. package/src/utils/inputValidation/preloadedData.ts +3 -3
  129. package/src/utils/inputValidation/split.ts +1 -1
  130. package/src/utils/inputValidation/splitExistance.ts +1 -1
  131. package/src/utils/inputValidation/splits.ts +1 -1
  132. package/src/utils/inputValidation/trafficType.ts +1 -1
  133. package/src/utils/inputValidation/trafficTypeExistance.ts +1 -1
  134. package/src/utils/key/index.ts +9 -9
  135. package/src/utils/settingsValidation/consent.ts +1 -2
  136. package/src/utils/settingsValidation/impressionsMode.ts +6 -6
  137. package/src/utils/settingsValidation/index.ts +1 -4
  138. package/src/utils/settingsValidation/integrations/common.ts +1 -1
  139. package/src/utils/settingsValidation/integrations/configurable.ts +1 -1
  140. package/src/utils/settingsValidation/integrations/pluggable.ts +1 -2
  141. package/src/utils/settingsValidation/localhost/builtin.ts +1 -2
  142. package/src/utils/settingsValidation/localhost/pluggable.ts +1 -2
  143. package/src/utils/settingsValidation/logger/builtinLogger.ts +1 -2
  144. package/src/utils/settingsValidation/logger/pluggableLogger.ts +1 -2
  145. package/src/utils/settingsValidation/splitFilters.ts +7 -9
  146. package/src/utils/settingsValidation/storage/storageCS.ts +1 -2
  147. package/cjs/sync/submitters/uniqueKeysSubmitter.js +0 -70
  148. package/cjs/trackers/strategy/strategyDebug.js +0 -25
  149. package/cjs/trackers/strategy/strategyNone.js +0 -29
  150. package/cjs/trackers/strategy/strategyOptimized.js +0 -34
  151. package/cjs/trackers/uniqueKeysTracker.js +0 -69
  152. package/cjs/types.js +0 -2
  153. package/esm/sync/submitters/uniqueKeysSubmitter.js +0 -64
  154. package/esm/trackers/strategy/strategyDebug.js +0 -21
  155. package/esm/trackers/strategy/strategyNone.js +0 -25
  156. package/esm/trackers/strategy/strategyOptimized.js +0 -30
  157. package/esm/trackers/uniqueKeysTracker.js +0 -65
  158. package/esm/types.js +0 -1
  159. package/src/sync/submitters/uniqueKeysSubmitter.ts +0 -79
  160. package/src/trackers/strategy/strategyDebug.ts +0 -28
  161. package/src/trackers/strategy/strategyNone.ts +0 -34
  162. package/src/trackers/strategy/strategyOptimized.ts +0 -42
  163. package/src/trackers/uniqueKeysTracker.ts +0 -80
  164. package/src/types.ts +0 -1264
  165. package/types/consent/index.d.ts +0 -2
  166. package/types/consent/sdkUserConsent.d.ts +0 -13
  167. package/types/dtos/types.d.ts +0 -172
  168. package/types/evaluator/Engine.d.ts +0 -15
  169. package/types/evaluator/combiners/and.d.ts +0 -4
  170. package/types/evaluator/combiners/ifelseif.d.ts +0 -3
  171. package/types/evaluator/condition/engineUtils.d.ts +0 -11
  172. package/types/evaluator/condition/index.d.ts +0 -6
  173. package/types/evaluator/convertions/index.d.ts +0 -2
  174. package/types/evaluator/index.d.ts +0 -7
  175. package/types/evaluator/matchers/all.d.ts +0 -2
  176. package/types/evaluator/matchers/between.d.ts +0 -3
  177. package/types/evaluator/matchers/boolean.d.ts +0 -2
  178. package/types/evaluator/matchers/cont_all.d.ts +0 -2
  179. package/types/evaluator/matchers/cont_any.d.ts +0 -2
  180. package/types/evaluator/matchers/cont_str.d.ts +0 -2
  181. package/types/evaluator/matchers/dependency.d.ts +0 -5
  182. package/types/evaluator/matchers/eq.d.ts +0 -2
  183. package/types/evaluator/matchers/eq_set.d.ts +0 -2
  184. package/types/evaluator/matchers/ew.d.ts +0 -2
  185. package/types/evaluator/matchers/gte.d.ts +0 -2
  186. package/types/evaluator/matchers/index.d.ts +0 -7
  187. package/types/evaluator/matchers/lte.d.ts +0 -2
  188. package/types/evaluator/matchers/matcherTypes.d.ts +0 -10
  189. package/types/evaluator/matchers/part_of.d.ts +0 -2
  190. package/types/evaluator/matchers/segment.d.ts +0 -6
  191. package/types/evaluator/matchers/string.d.ts +0 -2
  192. package/types/evaluator/matchers/sw.d.ts +0 -2
  193. package/types/evaluator/matchers/whitelist.d.ts +0 -3
  194. package/types/evaluator/matchersTransform/index.d.ts +0 -6
  195. package/types/evaluator/matchersTransform/segment.d.ts +0 -5
  196. package/types/evaluator/matchersTransform/set.d.ts +0 -5
  197. package/types/evaluator/matchersTransform/unaryNumeric.d.ts +0 -5
  198. package/types/evaluator/matchersTransform/whitelist.d.ts +0 -5
  199. package/types/evaluator/parser/index.d.ts +0 -5
  200. package/types/evaluator/treatments/index.d.ts +0 -8
  201. package/types/evaluator/types.d.ts +0 -28
  202. package/types/evaluator/value/index.d.ts +0 -7
  203. package/types/evaluator/value/sanitize.d.ts +0 -7
  204. package/types/index.d.ts +0 -5
  205. package/types/integrations/browser.d.ts +0 -12
  206. package/types/integrations/ga/GaToSplit.d.ts +0 -40
  207. package/types/integrations/ga/GoogleAnalyticsToSplit.d.ts +0 -3
  208. package/types/integrations/ga/SplitToGa.d.ts +0 -34
  209. package/types/integrations/ga/SplitToGoogleAnalytics.d.ts +0 -3
  210. package/types/integrations/ga/types.d.ts +0 -148
  211. package/types/integrations/pluggable.d.ts +0 -11
  212. package/types/integrations/types.d.ts +0 -17
  213. package/types/listeners/browser.d.ts +0 -40
  214. package/types/listeners/node.d.ts +0 -22
  215. package/types/listeners/types.d.ts +0 -4
  216. package/types/logger/browser/DebugLogger.d.ts +0 -2
  217. package/types/logger/browser/ErrorLogger.d.ts +0 -2
  218. package/types/logger/browser/InfoLogger.d.ts +0 -2
  219. package/types/logger/browser/WarnLogger.d.ts +0 -2
  220. package/types/logger/constants.d.ts +0 -142
  221. package/types/logger/index.d.ts +0 -22
  222. package/types/logger/messages/debug.d.ts +0 -1
  223. package/types/logger/messages/error.d.ts +0 -1
  224. package/types/logger/messages/info.d.ts +0 -1
  225. package/types/logger/messages/warn.d.ts +0 -1
  226. package/types/logger/sdkLogger.d.ts +0 -8
  227. package/types/logger/types.d.ts +0 -17
  228. package/types/readiness/constants.d.ts +0 -7
  229. package/types/readiness/readinessManager.d.ts +0 -6
  230. package/types/readiness/sdkReadinessManager.d.ts +0 -11
  231. package/types/readiness/types.d.ts +0 -60
  232. package/types/sdkClient/client.d.ts +0 -6
  233. package/types/sdkClient/clientAttributesDecoration.d.ts +0 -51
  234. package/types/sdkClient/clientCS.d.ts +0 -10
  235. package/types/sdkClient/clientInputValidation.d.ts +0 -7
  236. package/types/sdkClient/sdkClient.d.ts +0 -6
  237. package/types/sdkClient/sdkClientMethod.d.ts +0 -6
  238. package/types/sdkClient/sdkClientMethodCS.d.ts +0 -7
  239. package/types/sdkClient/sdkClientMethodCSWithTT.d.ts +0 -8
  240. package/types/sdkClient/types.d.ts +0 -18
  241. package/types/sdkFactory/index.d.ts +0 -6
  242. package/types/sdkFactory/types.d.ts +0 -82
  243. package/types/sdkManager/index.d.ts +0 -5
  244. package/types/services/splitApi.d.ts +0 -11
  245. package/types/services/splitHttpClient.d.ts +0 -10
  246. package/types/services/types.d.ts +0 -54
  247. package/types/storages/AbstractSegmentsCacheSync.d.ts +0 -55
  248. package/types/storages/AbstractSplitsCacheAsync.d.ts +0 -36
  249. package/types/storages/AbstractSplitsCacheSync.d.ts +0 -42
  250. package/types/storages/KeyBuilder.d.ts +0 -14
  251. package/types/storages/KeyBuilderCS.d.ts +0 -16
  252. package/types/storages/KeyBuilderSS.d.ts +0 -15
  253. package/types/storages/dataLoader.d.ts +0 -10
  254. package/types/storages/findLatencyIndex.d.ts +0 -7
  255. package/types/storages/inLocalStorage/MySegmentsCacheInLocal.d.ts +0 -25
  256. package/types/storages/inLocalStorage/SplitsCacheInLocal.d.ts +0 -51
  257. package/types/storages/inLocalStorage/constants.d.ts +0 -2
  258. package/types/storages/inLocalStorage/index.d.ts +0 -8
  259. package/types/storages/inMemory/AttributesCacheInMemory.d.ts +0 -43
  260. package/types/storages/inMemory/CountsCacheInMemory.d.ts +0 -20
  261. package/types/storages/inMemory/EventsCacheInMemory.d.ts +0 -35
  262. package/types/storages/inMemory/ImpressionCountsCacheInMemory.d.ts +0 -24
  263. package/types/storages/inMemory/ImpressionsCacheInMemory.d.ts +0 -30
  264. package/types/storages/inMemory/InMemoryStorage.d.ts +0 -10
  265. package/types/storages/inMemory/InMemoryStorageCS.d.ts +0 -10
  266. package/types/storages/inMemory/LatenciesCacheInMemory.d.ts +0 -20
  267. package/types/storages/inMemory/MySegmentsCacheInMemory.d.ts +0 -22
  268. package/types/storages/inMemory/SegmentsCacheInMemory.d.ts +0 -19
  269. package/types/storages/inMemory/SplitsCacheInMemory.d.ts +0 -20
  270. package/types/storages/inMemory/TelemetryCacheInMemory.d.ts +0 -53
  271. package/types/storages/inRedis/CountsCacheInRedis.d.ts +0 -9
  272. package/types/storages/inRedis/EventsCacheInRedis.d.ts +0 -32
  273. package/types/storages/inRedis/ImpressionsCacheInRedis.d.ts +0 -18
  274. package/types/storages/inRedis/LatenciesCacheInRedis.d.ts +0 -9
  275. package/types/storages/inRedis/RedisAdapter.d.ts +0 -24
  276. package/types/storages/inRedis/SegmentsCacheInRedis.d.ts +0 -18
  277. package/types/storages/inRedis/SplitsCacheInRedis.d.ts +0 -91
  278. package/types/storages/inRedis/TelemetryCacheInRedis.d.ts +0 -20
  279. package/types/storages/inRedis/constants.d.ts +0 -1
  280. package/types/storages/inRedis/index.d.ts +0 -10
  281. package/types/storages/metadataBuilder.d.ts +0 -3
  282. package/types/storages/pluggable/EventsCachePluggable.d.ts +0 -38
  283. package/types/storages/pluggable/ImpressionsCachePluggable.d.ts +0 -35
  284. package/types/storages/pluggable/SegmentsCachePluggable.d.ts +0 -54
  285. package/types/storages/pluggable/SplitsCachePluggable.d.ts +0 -89
  286. package/types/storages/pluggable/TelemetryCachePluggable.d.ts +0 -18
  287. package/types/storages/pluggable/constants.d.ts +0 -1
  288. package/types/storages/pluggable/inMemoryWrapper.d.ts +0 -13
  289. package/types/storages/pluggable/index.d.ts +0 -9
  290. package/types/storages/pluggable/wrapperAdapter.d.ts +0 -12
  291. package/types/storages/types.d.ts +0 -417
  292. package/types/sync/offline/LocalhostFromFile.d.ts +0 -2
  293. package/types/sync/offline/LocalhostFromObject.d.ts +0 -2
  294. package/types/sync/offline/splitsParser/parseCondition.d.ts +0 -7
  295. package/types/sync/offline/splitsParser/splitsParserFromFile.d.ts +0 -2
  296. package/types/sync/offline/splitsParser/splitsParserFromSettings.d.ts +0 -3
  297. package/types/sync/offline/splitsParser/types.d.ts +0 -3
  298. package/types/sync/offline/syncManagerOffline.d.ts +0 -10
  299. package/types/sync/offline/syncTasks/fromObjectSyncTask.d.ts +0 -17
  300. package/types/sync/polling/fetchers/mySegmentsFetcher.d.ts +0 -7
  301. package/types/sync/polling/fetchers/segmentChangesFetcher.d.ts +0 -7
  302. package/types/sync/polling/fetchers/splitChangesFetcher.d.ts +0 -7
  303. package/types/sync/polling/fetchers/types.d.ts +0 -5
  304. package/types/sync/polling/pollingManagerCS.d.ts +0 -7
  305. package/types/sync/polling/pollingManagerSS.d.ts +0 -6
  306. package/types/sync/polling/syncTasks/mySegmentsSyncTask.d.ts +0 -9
  307. package/types/sync/polling/syncTasks/segmentsSyncTask.d.ts +0 -9
  308. package/types/sync/polling/syncTasks/splitsSyncTask.d.ts +0 -9
  309. package/types/sync/polling/types.d.ts +0 -26
  310. package/types/sync/polling/updaters/mySegmentsUpdater.d.ts +0 -13
  311. package/types/sync/polling/updaters/segmentChangesUpdater.d.ts +0 -18
  312. package/types/sync/polling/updaters/splitChangesUpdater.d.ts +0 -39
  313. package/types/sync/streaming/AuthClient/index.d.ts +0 -12
  314. package/types/sync/streaming/AuthClient/types.d.ts +0 -17
  315. package/types/sync/streaming/SSEClient/index.d.ts +0 -34
  316. package/types/sync/streaming/SSEClient/types.d.ts +0 -11
  317. package/types/sync/streaming/SSEHandler/NotificationKeeper.d.ts +0 -14
  318. package/types/sync/streaming/SSEHandler/NotificationParser.d.ts +0 -20
  319. package/types/sync/streaming/SSEHandler/index.d.ts +0 -11
  320. package/types/sync/streaming/SSEHandler/types.d.ts +0 -67
  321. package/types/sync/streaming/UpdateWorkers/MySegmentsUpdateWorker.d.ts +0 -6
  322. package/types/sync/streaming/UpdateWorkers/SegmentsUpdateWorker.d.ts +0 -8
  323. package/types/sync/streaming/UpdateWorkers/SplitsUpdateWorker.d.ts +0 -12
  324. package/types/sync/streaming/UpdateWorkers/constants.d.ts +0 -3
  325. package/types/sync/streaming/UpdateWorkers/types.d.ts +0 -4
  326. package/types/sync/streaming/constants.d.ts +0 -34
  327. package/types/sync/streaming/mySegmentsV2utils.d.ts +0 -27
  328. package/types/sync/streaming/pushManager.d.ts +0 -9
  329. package/types/sync/streaming/types.d.ts +0 -35
  330. package/types/sync/submitters/eventsSubmitter.d.ts +0 -5
  331. package/types/sync/submitters/eventsSyncTask.d.ts +0 -8
  332. package/types/sync/submitters/impressionCountsSubmitter.d.ts +0 -10
  333. package/types/sync/submitters/impressionCountsSyncTask.d.ts +0 -13
  334. package/types/sync/submitters/impressionsSubmitter.d.ts +0 -11
  335. package/types/sync/submitters/impressionsSyncTask.d.ts +0 -14
  336. package/types/sync/submitters/metricsSyncTask.d.ts +0 -12
  337. package/types/sync/submitters/submitter.d.ts +0 -12
  338. package/types/sync/submitters/submitterManager.d.ts +0 -3
  339. package/types/sync/submitters/submitterSyncTask.d.ts +0 -10
  340. package/types/sync/submitters/telemetrySubmitter.d.ts +0 -25
  341. package/types/sync/submitters/types.d.ts +0 -194
  342. package/types/sync/submitters/uniqueKeysSubmitter.d.ts +0 -19
  343. package/types/sync/syncManagerOnline.d.ts +0 -13
  344. package/types/sync/syncTask.d.ts +0 -13
  345. package/types/sync/syncTaskComposite.d.ts +0 -5
  346. package/types/sync/types.d.ts +0 -43
  347. package/types/trackers/eventTracker.d.ts +0 -10
  348. package/types/trackers/filter/bloomFilter.d.ts +0 -10
  349. package/types/trackers/filter/dictionaryFilter.d.ts +0 -8
  350. package/types/trackers/filter/types.d.ts +0 -5
  351. package/types/trackers/impressionObserver/ImpressionObserver.d.ts +0 -8
  352. package/types/trackers/impressionObserver/buildKey.d.ts +0 -2
  353. package/types/trackers/impressionObserver/impressionObserverCS.d.ts +0 -4
  354. package/types/trackers/impressionObserver/impressionObserverSS.d.ts +0 -4
  355. package/types/trackers/impressionObserver/types.d.ts +0 -4
  356. package/types/trackers/impressionObserver/utils.d.ts +0 -13
  357. package/types/trackers/impressionsTracker.d.ts +0 -13
  358. package/types/trackers/strategy/strategyDebug.d.ts +0 -9
  359. package/types/trackers/strategy/strategyNone.d.ts +0 -10
  360. package/types/trackers/strategy/strategyOptimized.d.ts +0 -11
  361. package/types/trackers/telemetryTracker.d.ts +0 -3
  362. package/types/trackers/types.d.ts +0 -65
  363. package/types/trackers/uniqueKeysTracker.d.ts +0 -13
  364. package/types/types.d.ts +0 -1262
  365. package/types/utils/Backoff.d.ts +0 -25
  366. package/types/utils/LRUCache/LinkedList.d.ts +0 -34
  367. package/types/utils/LRUCache/index.d.ts +0 -16
  368. package/types/utils/MinEventEmitter.d.ts +0 -12
  369. package/types/utils/MinEvents.d.ts +0 -4
  370. package/types/utils/base64/index.d.ts +0 -30
  371. package/types/utils/constants/browser.d.ts +0 -3
  372. package/types/utils/constants/index.d.ts +0 -63
  373. package/types/utils/decompress/index.d.ts +0 -16
  374. package/types/utils/env/isLocalStorageAvailable.d.ts +0 -1
  375. package/types/utils/env/isNode.d.ts +0 -5
  376. package/types/utils/inputValidation/apiKey.d.ts +0 -7
  377. package/types/utils/inputValidation/attribute.d.ts +0 -2
  378. package/types/utils/inputValidation/attributes.d.ts +0 -4
  379. package/types/utils/inputValidation/event.d.ts +0 -2
  380. package/types/utils/inputValidation/eventProperties.d.ts +0 -6
  381. package/types/utils/inputValidation/eventValue.d.ts +0 -2
  382. package/types/utils/inputValidation/index.d.ts +0 -13
  383. package/types/utils/inputValidation/isOperational.d.ts +0 -4
  384. package/types/utils/inputValidation/key.d.ts +0 -3
  385. package/types/utils/inputValidation/preloadedData.d.ts +0 -3
  386. package/types/utils/inputValidation/split.d.ts +0 -2
  387. package/types/utils/inputValidation/splitExistance.d.ts +0 -7
  388. package/types/utils/inputValidation/splits.d.ts +0 -2
  389. package/types/utils/inputValidation/trafficType.d.ts +0 -2
  390. package/types/utils/inputValidation/trafficTypeExistance.d.ts +0 -9
  391. package/types/utils/jwt/index.d.ts +0 -5
  392. package/types/utils/jwt/types.d.ts +0 -5
  393. package/types/utils/key/index.d.ts +0 -8
  394. package/types/utils/labels/index.d.ts +0 -7
  395. package/types/utils/lang/binarySearch.d.ts +0 -9
  396. package/types/utils/lang/getFnName.d.ts +0 -4
  397. package/types/utils/lang/getGlobal.d.ts +0 -4
  398. package/types/utils/lang/index.d.ts +0 -105
  399. package/types/utils/lang/maps.d.ts +0 -55
  400. package/types/utils/lang/objectAssign.d.ts +0 -3
  401. package/types/utils/lang/sets.d.ts +0 -60
  402. package/types/utils/murmur3/common.d.ts +0 -12
  403. package/types/utils/murmur3/legacy.d.ts +0 -2
  404. package/types/utils/murmur3/murmur3.d.ts +0 -2
  405. package/types/utils/murmur3/murmur3_128.d.ts +0 -6
  406. package/types/utils/murmur3/murmur3_128_x86.d.ts +0 -7
  407. package/types/utils/murmur3/murmur3_64.d.ts +0 -10
  408. package/types/utils/murmur3/utfx.d.ts +0 -27
  409. package/types/utils/promise/thenable.d.ts +0 -1
  410. package/types/utils/promise/timeout.d.ts +0 -1
  411. package/types/utils/promise/wrapper.d.ts +0 -21
  412. package/types/utils/settingsValidation/consent.d.ts +0 -6
  413. package/types/utils/settingsValidation/impressionsMode.d.ts +0 -3
  414. package/types/utils/settingsValidation/index.d.ts +0 -52
  415. package/types/utils/settingsValidation/integrations/common.d.ts +0 -14
  416. package/types/utils/settingsValidation/integrations/configurable.d.ts +0 -13
  417. package/types/utils/settingsValidation/integrations/pluggable.d.ts +0 -13
  418. package/types/utils/settingsValidation/localhost/builtin.d.ts +0 -16
  419. package/types/utils/settingsValidation/localhost/pluggable.d.ts +0 -16
  420. package/types/utils/settingsValidation/logger/builtinLogger.d.ts +0 -10
  421. package/types/utils/settingsValidation/logger/commons.d.ts +0 -9
  422. package/types/utils/settingsValidation/logger/pluggableLogger.d.ts +0 -11
  423. package/types/utils/settingsValidation/mode.d.ts +0 -1
  424. package/types/utils/settingsValidation/runtime.d.ts +0 -2
  425. package/types/utils/settingsValidation/splitFilters.d.ts +0 -16
  426. package/types/utils/settingsValidation/storage/storageCS.d.ts +0 -21
  427. package/types/utils/settingsValidation/types.d.ts +0 -32
  428. package/types/utils/settingsValidation/url.d.ts +0 -10
  429. package/types/utils/time/index.d.ts +0 -4
  430. package/types/utils/timeTracker/index.d.ts +0 -70
  431. package/types/utils/timeTracker/now/browser.d.ts +0 -1
  432. package/types/utils/timeTracker/now/node.d.ts +0 -1
  433. package/types/utils/timeTracker/timer.d.ts +0 -1
@@ -1,25 +0,0 @@
1
- import { ISegmentsCacheSync, ISplitsCacheSync, ITelemetryCacheSync } from '../../storages/types';
2
- import { TelemetryUsageStatsPayload, TelemetryConfigStatsPayload, TelemetryConfigStats } from './types';
3
- import { ISettings, SDKMode } from '../../types';
4
- import { ISdkFactoryContextSync } from '../../sdkFactory/types';
5
- /**
6
- * Converts data from telemetry cache into /metrics/usage request payload.
7
- */
8
- export declare function telemetryCacheStatsAdapter(telemetry: ITelemetryCacheSync, splits: ISplitsCacheSync, segments: ISegmentsCacheSync): {
9
- isEmpty(): boolean;
10
- clear(): void;
11
- pop(): TelemetryUsageStatsPayload;
12
- };
13
- export declare function getTelemetryConfigStats(mode: SDKMode, storageType: string): TelemetryConfigStats;
14
- /**
15
- * Converts data from telemetry cache and settings into /metrics/config request payload.
16
- */
17
- export declare function telemetryCacheConfigAdapter(telemetry: ITelemetryCacheSync, settings: ISettings): {
18
- isEmpty(): boolean;
19
- clear(): void;
20
- pop(): TelemetryConfigStatsPayload;
21
- };
22
- /**
23
- * Submitter that periodically posts telemetry data
24
- */
25
- export declare function telemetrySubmitterFactory(params: ISdkFactoryContextSync): import("../types").ISyncTask<[], any> | undefined;
@@ -1,194 +0,0 @@
1
- import { IMetadata } from '../../dtos/types';
2
- import { SplitIO } from '../../types';
3
- import { ISyncTask } from '../types';
4
- export declare type ImpressionsPayload = {
5
- /** Split name */
6
- f: string;
7
- /** Key Impressions */
8
- i: {
9
- /** Key */
10
- k: string;
11
- /** Treatment */
12
- t: string;
13
- /** Timestamp */
14
- m: number;
15
- /** ChangeNumber */
16
- c: number;
17
- /** Rule label */
18
- r?: string;
19
- /** Bucketing Key */
20
- b?: string;
21
- /** Previous time */
22
- pt?: number;
23
- }[];
24
- }[];
25
- export declare type ImpressionCountsPayload = {
26
- pf: {
27
- /** Split name */
28
- f: string;
29
- /** Time Frame */
30
- m: number;
31
- /** Count */
32
- rc: number;
33
- }[];
34
- };
35
- export declare type UniqueKeysPayloadSs = {
36
- keys: {
37
- /** Split name */
38
- f: string;
39
- /** keyNames */
40
- ks: string[];
41
- }[];
42
- };
43
- export declare type UniqueKeysPayloadCs = {
44
- keys: {
45
- /** keyNames */
46
- k: string;
47
- /** Split name */
48
- fs: string[];
49
- }[];
50
- };
51
- export declare type StoredImpressionWithMetadata = {
52
- /** Metadata */
53
- m: IMetadata;
54
- /** Stored impression */
55
- i: {
56
- /** keyName */
57
- k: string;
58
- /** bucketingKey */
59
- b?: string;
60
- /** Split name */
61
- f: string;
62
- /** treatment */
63
- t: string;
64
- /** label */
65
- r: string;
66
- /** changeNumber */
67
- c: number;
68
- /** time */
69
- m: number;
70
- };
71
- };
72
- export declare type StoredEventWithMetadata = {
73
- /** Metadata */
74
- m: IMetadata;
75
- /** Stored event */
76
- e: SplitIO.EventData;
77
- };
78
- /**
79
- * Telemetry usage stats
80
- */
81
- export declare type QUEUED = 0;
82
- export declare type DROPPED = 1;
83
- export declare type DEDUPED = 2;
84
- export declare type ImpressionDataType = QUEUED | DROPPED | DEDUPED;
85
- export declare type EventDataType = QUEUED | DROPPED;
86
- export declare type SPLITS = 'sp';
87
- export declare type IMPRESSIONS = 'im';
88
- export declare type IMPRESSIONS_COUNT = 'ic';
89
- export declare type EVENTS = 'ev';
90
- export declare type TELEMETRY = 'te';
91
- export declare type TOKEN = 'to';
92
- export declare type SEGMENT = 'se';
93
- export declare type MY_SEGMENT = 'ms';
94
- export declare type OperationType = SPLITS | IMPRESSIONS | IMPRESSIONS_COUNT | EVENTS | TELEMETRY | TOKEN | SEGMENT | MY_SEGMENT;
95
- export declare type LastSync = Record<OperationType, number | undefined>;
96
- export declare type HttpErrors = Record<OperationType, {
97
- [statusCode: string]: number;
98
- }>;
99
- export declare type HttpLatencies = Record<OperationType, Array<number>>;
100
- export declare type TREATMENT = 't';
101
- export declare type TREATMENTS = 'ts';
102
- export declare type TREATMENT_WITH_CONFIG = 'tc';
103
- export declare type TREATMENTS_WITH_CONFIG = 'tcs';
104
- export declare type TRACK = 'tr';
105
- export declare type Method = TREATMENT | TREATMENTS | TREATMENT_WITH_CONFIG | TREATMENTS_WITH_CONFIG | TRACK;
106
- export declare type MethodLatencies = Record<Method, Array<number>>;
107
- export declare type MethodExceptions = Record<Method, number>;
108
- export declare type CONNECTION_ESTABLISHED = 0;
109
- export declare type OCCUPANCY_PRI = 10;
110
- export declare type OCCUPANCY_SEC = 20;
111
- export declare type STREAMING_STATUS = 30;
112
- export declare type SSE_CONNECTION_ERROR = 40;
113
- export declare type TOKEN_REFRESH = 50;
114
- export declare type ABLY_ERROR = 60;
115
- export declare type SYNC_MODE_UPDATE = 70;
116
- export declare type StreamingEventType = CONNECTION_ESTABLISHED | OCCUPANCY_PRI | OCCUPANCY_SEC | STREAMING_STATUS | SSE_CONNECTION_ERROR | TOKEN_REFRESH | ABLY_ERROR | SYNC_MODE_UPDATE;
117
- export declare type StreamingEvent = {
118
- e: StreamingEventType;
119
- d?: number;
120
- t: number;
121
- };
122
- export declare type TelemetryUsageStatsPayload = {
123
- lS: LastSync;
124
- mL: MethodLatencies;
125
- mE: MethodExceptions;
126
- hE: HttpErrors;
127
- hL: HttpLatencies;
128
- tR: number;
129
- aR: number;
130
- iQ: number;
131
- iDe: number;
132
- iDr: number;
133
- spC: number;
134
- seC: number;
135
- skC: number;
136
- sL?: number;
137
- eQ: number;
138
- eD: number;
139
- sE: Array<StreamingEvent>;
140
- t?: Array<string>;
141
- };
142
- /**
143
- * Telemetry config stats
144
- */
145
- export declare type STANDALONE_ENUM = 0;
146
- export declare type CONSUMER_ENUM = 1;
147
- export declare type CONSUMER_PARTIAL_ENUM = 2;
148
- export declare type OperationMode = STANDALONE_ENUM | CONSUMER_ENUM | CONSUMER_PARTIAL_ENUM;
149
- export declare type OPTIMIZED_ENUM = 0;
150
- export declare type DEBUG_ENUM = 1;
151
- export declare type NONE_ENUM = 2;
152
- export declare type ImpressionsMode = OPTIMIZED_ENUM | DEBUG_ENUM | NONE_ENUM;
153
- export declare type RefreshRates = {
154
- sp: number;
155
- se?: number;
156
- ms?: number;
157
- im: number;
158
- ev: number;
159
- te: number;
160
- };
161
- export declare type UrlOverrides = {
162
- s: boolean;
163
- e: boolean;
164
- a: boolean;
165
- st: boolean;
166
- t: boolean;
167
- };
168
- export declare type TelemetryConfigStats = {
169
- oM: OperationMode;
170
- st: 'memory' | 'redis' | 'pluggable' | 'localstorage';
171
- aF: number;
172
- rF: number;
173
- t?: Array<string>;
174
- };
175
- export declare type TelemetryConfigStatsPayload = TelemetryConfigStats & {
176
- sE: boolean;
177
- rR: RefreshRates;
178
- uO: UrlOverrides;
179
- iQ: number;
180
- eQ: number;
181
- iM: ImpressionsMode;
182
- iL: boolean;
183
- hP: boolean;
184
- tR: number;
185
- tC?: number;
186
- nR: number;
187
- i?: Array<string>;
188
- uC: number;
189
- };
190
- export interface ISubmitterManager extends ISyncTask {
191
- start(onlyTelemetry?: boolean): void;
192
- stop(allExceptTelemetry?: boolean): void;
193
- execute(onlyTelemetry?: boolean): Promise<any>;
194
- }
@@ -1,19 +0,0 @@
1
- import { ISdkFactoryContextSync } from '../../sdkFactory/types';
2
- import { ISet } from '../../utils/lang/sets';
3
- import { UniqueKeysPayloadCs, UniqueKeysPayloadSs } from './types';
4
- /**
5
- * Converts `uniqueKeys` data from cache into request payload for CS.
6
- */
7
- export declare function fromUniqueKeysCollectorCs(uniqueKeys: {
8
- [featureName: string]: ISet<string>;
9
- }): UniqueKeysPayloadCs;
10
- /**
11
- * Converts `uniqueKeys` data from cache into request payload for SS.
12
- */
13
- export declare function fromUniqueKeysCollectorSs(uniqueKeys: {
14
- [featureName: string]: ISet<string>;
15
- }): UniqueKeysPayloadSs;
16
- /**
17
- * Submitter that periodically posts impression counts
18
- */
19
- export declare function uniqueKeysSubmitterFactory(params: ISdkFactoryContextSync): import("../types").ISyncTask<[], void>;
@@ -1,13 +0,0 @@
1
- import { ISyncManagerCS } from './types';
2
- import { IPushManager } from './streaming/types';
3
- import { IPollingManager } from './polling/types';
4
- import { ISdkFactoryContextSync } from '../sdkFactory/types';
5
- /**
6
- * Online SyncManager factory.
7
- * Can be used for server-side API, and client-side API with or without multiple clients.
8
- *
9
- * @param pollingManagerFactory allows to specialize the SyncManager for server-side or client-side API by passing
10
- * `pollingManagerSSFactory` or `pollingManagerCSFactory` respectively.
11
- * @param pushManagerFactory optional to build a SyncManager with or without streaming support
12
- */
13
- export declare function syncManagerOnlineFactory(pollingManagerFactory?: (params: ISdkFactoryContextSync) => IPollingManager, pushManagerFactory?: (params: ISdkFactoryContextSync, pollingManager: IPollingManager) => IPushManager | undefined): (params: ISdkFactoryContextSync) => ISyncManagerCS;
@@ -1,13 +0,0 @@
1
- import { ILogger } from '../logger/types';
2
- import { ISyncTask } from './types';
3
- /**
4
- * Creates an object that handles the periodic execution of a given task via "start" and "stop" methods.
5
- * The task can be also executed by calling the "execute" method. Multiple calls run sequentially to avoid race conditions (e.g., submitters executed on SDK destroy or full queue, while periodic execution is pending).
6
- *
7
- * @param log Logger instance.
8
- * @param task Task to execute that returns a promise that NEVER REJECTS. Otherwise, periodic execution can result in Unhandled Promise Rejections.
9
- * @param period Period in milliseconds to execute the task.
10
- * @param taskName Optional task name for logging.
11
- * @returns A sync task that wraps the given task.
12
- */
13
- export declare function syncTaskFactory<Input extends any[], Output = any>(log: ILogger, task: (...args: Input) => Promise<Output>, period: number, taskName?: string): ISyncTask<Input, Output>;
@@ -1,5 +0,0 @@
1
- import { ISyncTask } from './types';
2
- /**
3
- * Composite Sync Task: group of sync tasks that are treated as a single one.
4
- */
5
- export declare function syncTaskComposite(syncTasks: ISyncTask[]): ISyncTask;
@@ -1,43 +0,0 @@
1
- import { IReadinessManager } from '../readiness/types';
2
- import { IStorageSync } from '../storages/types';
3
- import { IPollingManager } from './polling/types';
4
- import { IPushManager } from './streaming/types';
5
- import { ISubmitterManager } from './submitters/types';
6
- export interface ITask<Input extends any[] = []> {
7
- /**
8
- * Start periodic execution of the task
9
- */
10
- start(...args: Input): any;
11
- /**
12
- * Stop periodic execution of the task
13
- */
14
- stop(): any;
15
- /**
16
- * Returns true if the task periodic execution is running
17
- */
18
- isRunning(): boolean;
19
- }
20
- export interface ISyncTask<Input extends any[] = [], Output = any> extends ITask<Input> {
21
- /**
22
- * Start periodic execution of the task, and returns the promise of the first execution
23
- */
24
- start(...args: Input): Promise<Output> | void;
25
- /**
26
- * Explicitly executes the task. It can be invoked multiple times. Returns a promise when the task is resolved
27
- */
28
- execute(...args: Input): Promise<Output>;
29
- /**
30
- * Returns true if the task is being executed
31
- */
32
- isExecuting(): boolean;
33
- }
34
- /** SyncManager */
35
- export interface ISyncManager extends ITask {
36
- flush(): Promise<any>;
37
- pushManager?: IPushManager;
38
- pollingManager?: IPollingManager;
39
- submitterManager?: ISubmitterManager;
40
- }
41
- export interface ISyncManagerCS extends ISyncManager {
42
- shared(matchingKey: string, readinessManager: IReadinessManager, storage: IStorageSync): ISyncManager | undefined;
43
- }
@@ -1,10 +0,0 @@
1
- import { IEventsCacheBase, ITelemetryCacheAsync, ITelemetryCacheSync } from '../storages/types';
2
- import { IEventsHandler, IEventTracker } from './types';
3
- import { ISettings } from '../types';
4
- /**
5
- * Event tracker stores events in cache and pass them to the integrations manager if provided.
6
- *
7
- * @param eventsCache cache to save events
8
- * @param integrationsManager optional event handler used for integrations
9
- */
10
- export declare function eventTrackerFactory(settings: ISettings, eventsCache: IEventsCacheBase, integrationsManager?: IEventsHandler, telemetryCache?: ITelemetryCacheSync | ITelemetryCacheAsync): IEventTracker;
@@ -1,10 +0,0 @@
1
- import { IFilter } from './types';
2
- export declare class BloomFilterImp implements IFilter {
3
- private spectedInsertions;
4
- private errorRate;
5
- private filter;
6
- constructor(spectedInsertions: number, errorRate: number);
7
- add(data: string): boolean;
8
- contains(data: string): boolean;
9
- clear(): void;
10
- }
@@ -1,8 +0,0 @@
1
- import { IFilter } from './types';
2
- export declare class DictionaryFilter implements IFilter {
3
- private filter;
4
- constructor();
5
- add(data: string): boolean;
6
- contains(data: string): boolean;
7
- clear(): void;
8
- }
@@ -1,5 +0,0 @@
1
- export interface IFilter {
2
- add(data: string): boolean;
3
- contains(data: string): boolean;
4
- clear(): void;
5
- }
@@ -1,8 +0,0 @@
1
- import { ImpressionDTO } from '../../types';
2
- import { IImpressionObserver } from './types';
3
- export declare class ImpressionObserver<K extends string | number = string> implements IImpressionObserver {
4
- private cache;
5
- private hasher;
6
- constructor(size: number, hasher: (impression: ImpressionDTO) => K);
7
- testAndSet(impression: ImpressionDTO): number | undefined;
8
- }
@@ -1,2 +0,0 @@
1
- import { ImpressionDTO } from '../../types';
2
- export declare function buildKey(impression: ImpressionDTO): string;
@@ -1,4 +0,0 @@
1
- import { ImpressionObserver } from './ImpressionObserver';
2
- import { ImpressionDTO } from '../../types';
3
- export declare function hashImpression32(impression: ImpressionDTO): number;
4
- export declare function impressionObserverCSFactory(): ImpressionObserver<number>;
@@ -1,4 +0,0 @@
1
- import { ImpressionObserver } from './ImpressionObserver';
2
- import { ImpressionDTO } from '../../types';
3
- export declare function hashImpression128(impression: ImpressionDTO): string;
4
- export declare function impressionObserverSSFactory(): ImpressionObserver<string>;
@@ -1,4 +0,0 @@
1
- import { ImpressionDTO } from '../../types';
2
- export interface IImpressionObserver {
3
- testAndSet(impression: ImpressionDTO): number | undefined;
4
- }
@@ -1,13 +0,0 @@
1
- import { ISettings } from '../../types';
2
- /**
3
- * Checks if impressions previous time should be added or not.
4
- */
5
- export declare function shouldAddPt(settings: ISettings): boolean;
6
- /**
7
- * Checks if it should dedupe impressions or not.
8
- */
9
- export declare function shouldBeOptimized(settings: ISettings): boolean;
10
- /**
11
- * Storage is async if mode is consumer or partial consumer
12
- */
13
- export declare function isStorageSync(settings: ISettings): boolean;
@@ -1,13 +0,0 @@
1
- import { IImpressionsCacheBase, ITelemetryCacheSync, ITelemetryCacheAsync } from '../storages/types';
2
- import { IImpressionsHandler, IImpressionsTracker, IStrategy } from './types';
3
- import { ISettings } from '../types';
4
- /**
5
- * Impressions tracker stores impressions in cache and pass them to the listener and integrations manager if provided.
6
- *
7
- * @param impressionsCache cache to save impressions
8
- * @param metadata runtime metadata (ip, hostname and version)
9
- * @param impressionListener optional impression listener
10
- * @param integrationsManager optional integrations manager
11
- * @param strategy strategy for impressions tracking.
12
- */
13
- export declare function impressionsTrackerFactory(settings: ISettings, impressionsCache: IImpressionsCacheBase, strategy: IStrategy, integrationsManager?: IImpressionsHandler, telemetryCache?: ITelemetryCacheSync | ITelemetryCacheAsync): IImpressionsTracker;
@@ -1,9 +0,0 @@
1
- import { IImpressionObserver } from '../impressionObserver/types';
2
- import { IStrategy } from '../types';
3
- /**
4
- * Debug strategy for impressions tracker. Wraps impressions to store and adds previousTime if it corresponds
5
- *
6
- * @param impressionsObserver impression observer. Previous time (pt property) is included in impression instances
7
- * @returns IStrategyResult
8
- */
9
- export declare function strategyDebugFactory(impressionsObserver: IImpressionObserver): IStrategy;
@@ -1,10 +0,0 @@
1
- import { IImpressionCountsCacheSync } from '../../storages/types';
2
- import { IStrategy, IUniqueKeysTracker } from '../types';
3
- /**
4
- * None strategy for impressions tracker.
5
- *
6
- * @param impressionsCounter cache to save impressions count. impressions will be deduped (OPTIMIZED mode)
7
- * @param uniqueKeysTracker unique keys tracker in charge of tracking the unique keys per split.
8
- * @returns IStrategyResult
9
- */
10
- export declare function strategyNoneFactory(impressionsCounter: IImpressionCountsCacheSync, uniqueKeysTracker: IUniqueKeysTracker): IStrategy;
@@ -1,11 +0,0 @@
1
- import { IImpressionCountsCacheSync } from '../../storages/types';
2
- import { IImpressionObserver } from '../impressionObserver/types';
3
- import { IStrategy } from '../types';
4
- /**
5
- * Optimized strategy for impressions tracker. Wraps impressions to store and adds previousTime if it corresponds
6
- *
7
- * @param impressionsObserver impression observer. previous time (pt property) is included in impression instances
8
- * @param impressionsCounter cache to save impressions count. impressions will be deduped (OPTIMIZED mode)
9
- * @returns IStrategyResult
10
- */
11
- export declare function strategyOptimizedFactory(impressionsObserver: IImpressionObserver, impressionsCounter: IImpressionCountsCacheSync): IStrategy;
@@ -1,3 +0,0 @@
1
- import { ITelemetryCacheSync, ITelemetryCacheAsync } from '../storages/types';
2
- import { ITelemetryTracker } from './types';
3
- export declare function telemetryTrackerFactory(telemetryCache?: ITelemetryCacheSync | ITelemetryCacheAsync, now?: () => number): ITelemetryTracker;
@@ -1,65 +0,0 @@
1
- import { SplitIO, ImpressionDTO } from '../types';
2
- import { StreamingEventType, Method, OperationType } from '../sync/submitters/types';
3
- import { IEventsCacheBase } from '../storages/types';
4
- import { NetworkError } from '../services/types';
5
- import { ISet } from '../utils/lang/sets';
6
- /** Events tracker */
7
- export interface IEventsHandler {
8
- handleEvent(eventData: SplitIO.EventData): any;
9
- }
10
- export declare type IEventTracker = IEventsCacheBase;
11
- /** Impressions tracker */
12
- export interface IImpressionsHandler {
13
- handleImpression(impressionData: SplitIO.ImpressionData): any;
14
- }
15
- export interface IImpressionsTracker {
16
- track(impressions: ImpressionDTO[], attributes?: SplitIO.Attributes): void;
17
- }
18
- /** Telemetry tracker */
19
- export declare type AUTH_REJECTION = 80;
20
- export interface ITelemetryTracker {
21
- /**
22
- * Creates a telemetry evaluator tracker, to record Latencies, Exceptions and NonReadyUsage of client operations (getTreatments and track method calls)
23
- */
24
- trackEval(method: Method): (label?: string) => void;
25
- /**
26
- * Creates a telemetry runtime tracker, to record Latencies and Exceptions of HTTP requests
27
- */
28
- trackHttp(method: OperationType): (error?: NetworkError) => void;
29
- /**
30
- * Records session length
31
- */
32
- sessionLength(): void;
33
- /**
34
- * Records streaming event
35
- */
36
- streamingEvent(e: StreamingEventType | AUTH_REJECTION, d?: number): void;
37
- }
38
- export interface IFilterAdapter {
39
- add(featureName: string, key: string): boolean;
40
- contains(featureName: string, key: string): boolean;
41
- clear(): void;
42
- }
43
- export interface IImpressionSenderAdapter {
44
- recordUniqueKeys(data: Object): void;
45
- recordImpressionCounts(data: Object): void;
46
- }
47
- /** Unique keys tracker */
48
- export interface IUniqueKeysTracker {
49
- track(featureName: string, key: string): void;
50
- pop(toMerge?: {
51
- [featureName: string]: ISet<string>;
52
- }): {
53
- [featureName: string]: ISet<string>;
54
- };
55
- clear(): void;
56
- isEmpty(): boolean;
57
- }
58
- export interface IStrategyResult {
59
- impressionsToStore: ImpressionDTO[];
60
- impressionsToListener: ImpressionDTO[];
61
- deduped: number;
62
- }
63
- export interface IStrategy {
64
- process(impressions: ImpressionDTO[]): IStrategyResult;
65
- }
@@ -1,13 +0,0 @@
1
- import { ILogger } from '../logger/types';
2
- import { IFilterAdapter, IUniqueKeysTracker } from './types';
3
- /**
4
- * Trackes uniques keys
5
- * Unique Keys Tracker will be in charge of checking if the MTK was already sent to the BE in the last period
6
- * or schedule to be sent; if not it will be added in an internal cache and sent in the next post.
7
- *
8
- * @param log Logger instance
9
- * @param filterAdapter filter adapter
10
- * @param cacheSize optional internal cache size
11
- * @param maxBulkSize optional max MTKs bulk size
12
- */
13
- export declare function uniqueKeysTrackerFactory(log: ILogger, filterAdapter?: IFilterAdapter, cacheSize?: number): IUniqueKeysTracker;