@plyaz/api 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (382) hide show
  1. package/README.md +632 -542
  2. package/dist/api/cache/index.d.ts +183 -0
  3. package/dist/api/cache/index.d.ts.map +1 -0
  4. package/dist/api/cache/patterns.d.ts +174 -0
  5. package/dist/api/cache/patterns.d.ts.map +1 -0
  6. package/dist/api/cache/strategies.d.ts +47 -0
  7. package/dist/api/cache/strategies.d.ts.map +1 -0
  8. package/dist/api/client/clientEventManager.d.ts +238 -0
  9. package/dist/api/client/clientEventManager.d.ts.map +1 -0
  10. package/dist/api/client/createApiClient.d.ts +5 -0
  11. package/dist/api/client/createApiClient.d.ts.map +1 -0
  12. package/dist/api/client/helpers/headers.d.ts +11 -0
  13. package/dist/api/client/helpers/headers.d.ts.map +1 -0
  14. package/dist/api/client/helpers/index.d.ts +9 -0
  15. package/dist/api/client/helpers/index.d.ts.map +1 -0
  16. package/dist/api/client/helpers/interceptors.d.ts +29 -0
  17. package/dist/api/client/helpers/interceptors.d.ts.map +1 -0
  18. package/dist/api/client/helpers/network.d.ts +21 -0
  19. package/dist/api/client/helpers/network.d.ts.map +1 -0
  20. package/dist/api/client/helpers/strategies.d.ts +30 -0
  21. package/dist/api/client/helpers/strategies.d.ts.map +1 -0
  22. package/dist/api/client/helpers/tracking.d.ts +15 -0
  23. package/dist/api/client/helpers/tracking.d.ts.map +1 -0
  24. package/dist/api/client/index.d.ts +7 -0
  25. package/dist/api/client/index.d.ts.map +1 -0
  26. package/dist/api/config/adapter.d.ts +25 -0
  27. package/dist/api/config/adapter.d.ts.map +1 -0
  28. package/dist/api/config/configBuilder.d.ts +62 -0
  29. package/dist/api/config/configBuilder.d.ts.map +1 -0
  30. package/dist/api/config/configManager.d.ts +67 -0
  31. package/dist/api/config/configManager.d.ts.map +1 -0
  32. package/dist/api/config/global.d.ts +106 -0
  33. package/dist/api/config/global.d.ts.map +1 -0
  34. package/dist/api/config/index.d.ts +11 -0
  35. package/dist/api/config/index.d.ts.map +1 -0
  36. package/dist/api/debugger/DebugReport.d.ts +71 -0
  37. package/dist/api/debugger/DebugReport.d.ts.map +1 -0
  38. package/dist/api/debugger/UnifiedDebugger.d.ts +444 -0
  39. package/dist/api/debugger/UnifiedDebugger.d.ts.map +1 -0
  40. package/dist/api/debugger/factories/conflict.d.ts +58 -0
  41. package/dist/api/debugger/factories/conflict.d.ts.map +1 -0
  42. package/dist/api/debugger/factories/eventTracking.d.ts +126 -0
  43. package/dist/api/debugger/factories/eventTracking.d.ts.map +1 -0
  44. package/dist/api/debugger/factories/history.d.ts +97 -0
  45. package/dist/api/debugger/factories/history.d.ts.map +1 -0
  46. package/dist/api/debugger/factories/index.d.ts +15 -0
  47. package/dist/api/debugger/factories/index.d.ts.map +1 -0
  48. package/dist/api/debugger/factories/issueAnalysis.d.ts +52 -0
  49. package/dist/api/debugger/factories/issueAnalysis.d.ts.map +1 -0
  50. package/dist/api/debugger/factories/performance.d.ts +53 -0
  51. package/dist/api/debugger/factories/performance.d.ts.map +1 -0
  52. package/dist/api/debugger/factories/report.d.ts +43 -0
  53. package/dist/api/debugger/factories/report.d.ts.map +1 -0
  54. package/dist/api/debugger/index.d.ts +99 -0
  55. package/dist/api/debugger/index.d.ts.map +1 -0
  56. package/dist/api/debugger/queue/DebuggerQueueManager.d.ts +61 -0
  57. package/dist/api/debugger/queue/DebuggerQueueManager.d.ts.map +1 -0
  58. package/dist/api/debugger/queue/OperationTracker.d.ts +86 -0
  59. package/dist/api/debugger/queue/OperationTracker.d.ts.map +1 -0
  60. package/dist/api/debugger/queue/index.d.ts +9 -0
  61. package/dist/api/debugger/queue/index.d.ts.map +1 -0
  62. package/dist/api/endpoints/builders.d.ts +109 -0
  63. package/dist/api/endpoints/builders.d.ts.map +1 -0
  64. package/dist/api/endpoints/campaigns.d.ts +43 -0
  65. package/dist/api/endpoints/campaigns.d.ts.map +1 -0
  66. package/dist/api/endpoints/index.d.ts +100 -0
  67. package/dist/api/endpoints/index.d.ts.map +1 -0
  68. package/dist/api/endpoints/polling.d.ts +83 -0
  69. package/dist/api/endpoints/polling.d.ts.map +1 -0
  70. package/dist/api/endpoints/utils.d.ts +128 -0
  71. package/dist/api/endpoints/utils.d.ts.map +1 -0
  72. package/dist/api/errors/ApiPackageError.d.ts +101 -0
  73. package/dist/api/errors/ApiPackageError.d.ts.map +1 -0
  74. package/dist/api/errors/definitions.d.ts +24 -0
  75. package/dist/api/errors/definitions.d.ts.map +1 -0
  76. package/dist/api/errors/error-codes.d.ts +116 -0
  77. package/dist/api/errors/error-codes.d.ts.map +1 -0
  78. package/dist/api/errors/error-events.d.ts +63 -0
  79. package/dist/api/errors/error-events.d.ts.map +1 -0
  80. package/dist/api/errors/index.d.ts +18 -0
  81. package/dist/api/errors/index.d.ts.map +1 -0
  82. package/dist/api/errors/types-constants.d.ts +64 -0
  83. package/dist/api/errors/types-constants.d.ts.map +1 -0
  84. package/dist/api/events/EventManager.d.ts +230 -0
  85. package/dist/api/events/EventManager.d.ts.map +1 -0
  86. package/dist/api/events/factories/base.d.ts +269 -0
  87. package/dist/api/events/factories/base.d.ts.map +1 -0
  88. package/dist/api/events/factories/cache.d.ts +31 -0
  89. package/dist/api/events/factories/cache.d.ts.map +1 -0
  90. package/dist/api/events/factories/client.d.ts +43 -0
  91. package/dist/api/events/factories/client.d.ts.map +1 -0
  92. package/dist/api/events/factories/config.d.ts +34 -0
  93. package/dist/api/events/factories/config.d.ts.map +1 -0
  94. package/dist/api/events/factories/debug.d.ts +74 -0
  95. package/dist/api/events/factories/debug.d.ts.map +1 -0
  96. package/dist/api/events/factories/errors.d.ts +91 -0
  97. package/dist/api/events/factories/errors.d.ts.map +1 -0
  98. package/dist/api/events/factories/headers.d.ts +54 -0
  99. package/dist/api/events/factories/headers.d.ts.map +1 -0
  100. package/dist/api/events/factories/index.d.ts +46 -0
  101. package/dist/api/events/factories/index.d.ts.map +1 -0
  102. package/dist/api/events/factories/network.d.ts +54 -0
  103. package/dist/api/events/factories/network.d.ts.map +1 -0
  104. package/dist/api/events/factories/performance.d.ts +43 -0
  105. package/dist/api/events/factories/performance.d.ts.map +1 -0
  106. package/dist/api/events/index.d.ts +34 -0
  107. package/dist/api/events/index.d.ts.map +1 -0
  108. package/dist/api/events/namespaces.d.ts +464 -0
  109. package/dist/api/events/namespaces.d.ts.map +1 -0
  110. package/dist/api/events/queue/ConfigUpdateQueueManager.d.ts +53 -0
  111. package/dist/api/events/queue/ConfigUpdateQueueManager.d.ts.map +1 -0
  112. package/dist/api/events/queue/EventQueueManager.d.ts +69 -0
  113. package/dist/api/events/queue/EventQueueManager.d.ts.map +1 -0
  114. package/dist/api/events/queue/index.d.ts +12 -0
  115. package/dist/api/events/queue/index.d.ts.map +1 -0
  116. package/dist/api/events/shared-emitter.d.ts +14 -0
  117. package/dist/api/events/shared-emitter.d.ts.map +1 -0
  118. package/dist/api/headers/cache.d.ts +17 -0
  119. package/dist/api/headers/cache.d.ts.map +1 -0
  120. package/dist/api/headers/enriched.d.ts +18 -0
  121. package/dist/api/headers/enriched.d.ts.map +1 -0
  122. package/dist/api/headers/events.d.ts +17 -0
  123. package/dist/api/headers/events.d.ts.map +1 -0
  124. package/dist/api/headers/extract.d.ts +73 -0
  125. package/dist/api/headers/extract.d.ts.map +1 -0
  126. package/dist/api/headers/headerBuilder.d.ts +308 -0
  127. package/dist/api/headers/headerBuilder.d.ts.map +1 -0
  128. package/dist/api/headers/index.d.ts +37 -0
  129. package/dist/api/headers/index.d.ts.map +1 -0
  130. package/dist/api/headers/merge.d.ts +32 -0
  131. package/dist/api/headers/merge.d.ts.map +1 -0
  132. package/dist/api/headers/presets.d.ts +24 -0
  133. package/dist/api/headers/presets.d.ts.map +1 -0
  134. package/dist/api/headers/utils.d.ts +38 -0
  135. package/dist/api/headers/utils.d.ts.map +1 -0
  136. package/dist/api/hooks/factories/createApiMutation.d.ts +57 -0
  137. package/dist/api/hooks/factories/createApiMutation.d.ts.map +1 -0
  138. package/dist/api/hooks/factories/createApiQuery.d.ts +55 -0
  139. package/dist/api/hooks/factories/createApiQuery.d.ts.map +1 -0
  140. package/dist/api/hooks/factories/defaults.d.ts +15 -0
  141. package/dist/api/hooks/factories/defaults.d.ts.map +1 -0
  142. package/dist/api/hooks/factories/index.d.ts +8 -0
  143. package/dist/api/hooks/factories/index.d.ts.map +1 -0
  144. package/dist/api/hooks/index.d.ts +11 -0
  145. package/dist/api/hooks/index.d.ts.map +1 -0
  146. package/dist/api/hooks/types.d.ts +82 -0
  147. package/dist/api/hooks/types.d.ts.map +1 -0
  148. package/dist/api/hooks/useApiConfigConflicts.d.ts +24 -0
  149. package/dist/api/hooks/useApiConfigConflicts.d.ts.map +1 -0
  150. package/dist/api/hooks/useApiDebugInfo.d.ts +24 -0
  151. package/dist/api/hooks/useApiDebugInfo.d.ts.map +1 -0
  152. package/dist/api/hooks/useApiMonitor.d.ts +25 -0
  153. package/dist/api/hooks/useApiMonitor.d.ts.map +1 -0
  154. package/dist/api/hooks/useApiNetworkQuality.d.ts +21 -0
  155. package/dist/api/hooks/useApiNetworkQuality.d.ts.map +1 -0
  156. package/dist/api/index.d.ts +26 -0
  157. package/dist/api/index.d.ts.map +1 -0
  158. package/dist/api/network/adaptive.d.ts +56 -0
  159. package/dist/api/network/adaptive.d.ts.map +1 -0
  160. package/dist/api/network/client-hints.d.ts +25 -0
  161. package/dist/api/network/client-hints.d.ts.map +1 -0
  162. package/dist/api/network/connection.d.ts +60 -0
  163. package/dist/api/network/connection.d.ts.map +1 -0
  164. package/dist/api/network/core.d.ts +26 -0
  165. package/dist/api/network/core.d.ts.map +1 -0
  166. package/dist/api/network/events.d.ts +18 -0
  167. package/dist/api/network/events.d.ts.map +1 -0
  168. package/dist/api/network/frameworks/express.d.ts +110 -0
  169. package/dist/api/network/frameworks/express.d.ts.map +1 -0
  170. package/dist/api/network/frameworks/index.d.ts +13 -0
  171. package/dist/api/network/frameworks/index.d.ts.map +1 -0
  172. package/dist/api/network/frameworks/nestjs/clientHintsInterceptor.d.ts +29 -0
  173. package/dist/api/network/frameworks/nestjs/clientHintsInterceptor.d.ts.map +1 -0
  174. package/dist/api/network/frameworks/nestjs/decorators.d.ts +48 -0
  175. package/dist/api/network/frameworks/nestjs/decorators.d.ts.map +1 -0
  176. package/dist/api/network/frameworks/nestjs/enrichedHeadersGuard.d.ts +80 -0
  177. package/dist/api/network/frameworks/nestjs/enrichedHeadersGuard.d.ts.map +1 -0
  178. package/dist/api/network/frameworks/nestjs/enrichedHeadersInterceptor.d.ts +83 -0
  179. package/dist/api/network/frameworks/nestjs/enrichedHeadersInterceptor.d.ts.map +1 -0
  180. package/dist/api/network/frameworks/nestjs/index.d.ts +13 -0
  181. package/dist/api/network/frameworks/nestjs/index.d.ts.map +1 -0
  182. package/dist/api/network/frameworks/nestjs/minimumConnectionGuard.d.ts +27 -0
  183. package/dist/api/network/frameworks/nestjs/minimumConnectionGuard.d.ts.map +1 -0
  184. package/dist/api/network/frameworks/nestjs/networkDetectionMiddleware.d.ts +31 -0
  185. package/dist/api/network/frameworks/nestjs/networkDetectionMiddleware.d.ts.map +1 -0
  186. package/dist/api/network/frameworks/nestjs/networkGuard.d.ts +33 -0
  187. package/dist/api/network/frameworks/nestjs/networkGuard.d.ts.map +1 -0
  188. package/dist/api/network/frameworks/nestjs/noDataSaverGuard.d.ts +25 -0
  189. package/dist/api/network/frameworks/nestjs/noDataSaverGuard.d.ts.map +1 -0
  190. package/dist/api/network/frameworks/nextjs.d.ts +86 -0
  191. package/dist/api/network/frameworks/nextjs.d.ts.map +1 -0
  192. package/dist/api/network/frameworks/shared.d.ts +45 -0
  193. package/dist/api/network/frameworks/shared.d.ts.map +1 -0
  194. package/dist/api/network/headers.d.ts +112 -0
  195. package/dist/api/network/headers.d.ts.map +1 -0
  196. package/dist/api/network/index.d.ts +17 -0
  197. package/dist/api/network/index.d.ts.map +1 -0
  198. package/dist/api/network/networkConfigurationManager.d.ts +225 -0
  199. package/dist/api/network/networkConfigurationManager.d.ts.map +1 -0
  200. package/dist/api/network/platform.d.ts +171 -0
  201. package/dist/api/network/platform.d.ts.map +1 -0
  202. package/dist/api/network/presets.d.ts +55 -0
  203. package/dist/api/network/presets.d.ts.map +1 -0
  204. package/dist/api/network/quality.d.ts +28 -0
  205. package/dist/api/network/quality.d.ts.map +1 -0
  206. package/dist/api/network/status.d.ts +74 -0
  207. package/dist/api/network/status.d.ts.map +1 -0
  208. package/dist/api/performance/adaptive.d.ts +35 -0
  209. package/dist/api/performance/adaptive.d.ts.map +1 -0
  210. package/dist/api/performance/index.d.ts +133 -0
  211. package/dist/api/performance/index.d.ts.map +1 -0
  212. package/dist/api/performance/patterns.d.ts +20 -0
  213. package/dist/api/performance/patterns.d.ts.map +1 -0
  214. package/dist/api/performance/performanceMonitor.d.ts +85 -0
  215. package/dist/api/performance/performanceMonitor.d.ts.map +1 -0
  216. package/dist/api/performance/presets.d.ts +18 -0
  217. package/dist/api/performance/presets.d.ts.map +1 -0
  218. package/dist/api/performance/utils.d.ts +98 -0
  219. package/dist/api/performance/utils.d.ts.map +1 -0
  220. package/dist/api/polling/index.d.ts +10 -0
  221. package/dist/api/polling/index.d.ts.map +1 -0
  222. package/dist/api/polling/strategies.d.ts +128 -0
  223. package/dist/api/polling/strategies.d.ts.map +1 -0
  224. package/dist/api/polling/utils.d.ts +133 -0
  225. package/dist/api/polling/utils.d.ts.map +1 -0
  226. package/dist/api/pubsub/index.d.ts +147 -0
  227. package/dist/api/pubsub/index.d.ts.map +1 -0
  228. package/dist/api/pubsub/react.d.ts +214 -0
  229. package/dist/api/pubsub/react.d.ts.map +1 -0
  230. package/dist/api/queue/BaseOperationTracker.d.ts +86 -0
  231. package/dist/api/queue/BaseOperationTracker.d.ts.map +1 -0
  232. package/dist/api/queue/BaseQueueManager.d.ts +54 -0
  233. package/dist/api/queue/BaseQueueManager.d.ts.map +1 -0
  234. package/dist/api/queue/BatchProcessor.d.ts +42 -0
  235. package/dist/api/queue/BatchProcessor.d.ts.map +1 -0
  236. package/dist/api/queue/EventQueueManager.d.ts +128 -0
  237. package/dist/api/queue/EventQueueManager.d.ts.map +1 -0
  238. package/dist/api/queue/PriorityQueue.d.ts +58 -0
  239. package/dist/api/queue/PriorityQueue.d.ts.map +1 -0
  240. package/dist/api/queue/QueueFactory.d.ts +57 -0
  241. package/dist/api/queue/QueueFactory.d.ts.map +1 -0
  242. package/dist/api/queue/QueueOrchestrator.d.ts +90 -0
  243. package/dist/api/queue/QueueOrchestrator.d.ts.map +1 -0
  244. package/dist/api/queue/QueueSystem.d.ts +102 -0
  245. package/dist/api/queue/QueueSystem.d.ts.map +1 -0
  246. package/dist/api/queue/index.d.ts +22 -0
  247. package/dist/api/queue/index.d.ts.map +1 -0
  248. package/dist/api/regional/constants.d.ts +76 -0
  249. package/dist/api/regional/constants.d.ts.map +1 -0
  250. package/dist/api/regional/core.d.ts +56 -0
  251. package/dist/api/regional/core.d.ts.map +1 -0
  252. package/dist/api/regional/helpers.d.ts +49 -0
  253. package/dist/api/regional/helpers.d.ts.map +1 -0
  254. package/dist/api/regional/index.d.ts +10 -0
  255. package/dist/api/regional/index.d.ts.map +1 -0
  256. package/dist/api/regional/presets.d.ts +16 -0
  257. package/dist/api/regional/presets.d.ts.map +1 -0
  258. package/dist/api/request/index.d.ts +18 -0
  259. package/dist/api/request/index.d.ts.map +1 -0
  260. package/dist/api/request/management.d.ts +46 -0
  261. package/dist/api/request/management.d.ts.map +1 -0
  262. package/dist/api/request/prepare.d.ts +34 -0
  263. package/dist/api/request/prepare.d.ts.map +1 -0
  264. package/dist/api/request/react.d.ts +98 -0
  265. package/dist/api/request/react.d.ts.map +1 -0
  266. package/dist/api/request/routing.d.ts +74 -0
  267. package/dist/api/request/routing.d.ts.map +1 -0
  268. package/dist/api/request/tracker.d.ts +76 -0
  269. package/dist/api/request/tracker.d.ts.map +1 -0
  270. package/dist/api/request/utils.d.ts +129 -0
  271. package/dist/api/request/utils.d.ts.map +1 -0
  272. package/dist/api/retry/conditions.d.ts +140 -0
  273. package/dist/api/retry/conditions.d.ts.map +1 -0
  274. package/dist/api/retry/index.d.ts +10 -0
  275. package/dist/api/retry/index.d.ts.map +1 -0
  276. package/dist/api/retry/strategies.d.ts +56 -0
  277. package/dist/api/retry/strategies.d.ts.map +1 -0
  278. package/dist/api/revalidation/index.d.ts +29 -0
  279. package/dist/api/revalidation/index.d.ts.map +1 -0
  280. package/dist/api/revalidation/presets.d.ts +71 -0
  281. package/dist/api/revalidation/presets.d.ts.map +1 -0
  282. package/dist/api/revalidation/strategies.d.ts +116 -0
  283. package/dist/api/revalidation/strategies.d.ts.map +1 -0
  284. package/dist/api/revalidation/utils.d.ts +78 -0
  285. package/dist/api/revalidation/utils.d.ts.map +1 -0
  286. package/dist/api/services/campaigns/DELETE/deleteCampaign.d.ts +30 -0
  287. package/dist/api/services/campaigns/DELETE/deleteCampaign.d.ts.map +1 -0
  288. package/dist/api/services/campaigns/DELETE/index.d.ts +7 -0
  289. package/dist/api/services/campaigns/DELETE/index.d.ts.map +1 -0
  290. package/dist/api/services/campaigns/DELETE/useDeleteCampaign.d.ts +24 -0
  291. package/dist/api/services/campaigns/DELETE/useDeleteCampaign.d.ts.map +1 -0
  292. package/dist/api/services/campaigns/GET/fetchCampaign.d.ts +36 -0
  293. package/dist/api/services/campaigns/GET/fetchCampaign.d.ts.map +1 -0
  294. package/dist/api/services/campaigns/GET/fetchCampaignParticipants.d.ts +40 -0
  295. package/dist/api/services/campaigns/GET/fetchCampaignParticipants.d.ts.map +1 -0
  296. package/dist/api/services/campaigns/GET/fetchCampaignStats.d.ts +31 -0
  297. package/dist/api/services/campaigns/GET/fetchCampaignStats.d.ts.map +1 -0
  298. package/dist/api/services/campaigns/GET/fetchCampaigns.d.ts +39 -0
  299. package/dist/api/services/campaigns/GET/fetchCampaigns.d.ts.map +1 -0
  300. package/dist/api/services/campaigns/GET/index.d.ts +13 -0
  301. package/dist/api/services/campaigns/GET/index.d.ts.map +1 -0
  302. package/dist/api/services/campaigns/GET/useCampaign.d.ts +47 -0
  303. package/dist/api/services/campaigns/GET/useCampaign.d.ts.map +1 -0
  304. package/dist/api/services/campaigns/GET/useCampaignParticipants.d.ts +43 -0
  305. package/dist/api/services/campaigns/GET/useCampaignParticipants.d.ts.map +1 -0
  306. package/dist/api/services/campaigns/GET/useCampaignStats.d.ts +33 -0
  307. package/dist/api/services/campaigns/GET/useCampaignStats.d.ts.map +1 -0
  308. package/dist/api/services/campaigns/GET/useCampaigns.d.ts +43 -0
  309. package/dist/api/services/campaigns/GET/useCampaigns.d.ts.map +1 -0
  310. package/dist/api/services/campaigns/POST/createCampaign.d.ts +37 -0
  311. package/dist/api/services/campaigns/POST/createCampaign.d.ts.map +1 -0
  312. package/dist/api/services/campaigns/POST/index.d.ts +11 -0
  313. package/dist/api/services/campaigns/POST/index.d.ts.map +1 -0
  314. package/dist/api/services/campaigns/POST/joinCampaign.d.ts +31 -0
  315. package/dist/api/services/campaigns/POST/joinCampaign.d.ts.map +1 -0
  316. package/dist/api/services/campaigns/POST/leaveCampaign.d.ts +31 -0
  317. package/dist/api/services/campaigns/POST/leaveCampaign.d.ts.map +1 -0
  318. package/dist/api/services/campaigns/POST/useCreateCampaign.d.ts +36 -0
  319. package/dist/api/services/campaigns/POST/useCreateCampaign.d.ts.map +1 -0
  320. package/dist/api/services/campaigns/POST/useJoinCampaign.d.ts +23 -0
  321. package/dist/api/services/campaigns/POST/useJoinCampaign.d.ts.map +1 -0
  322. package/dist/api/services/campaigns/POST/useLeaveCampaign.d.ts +23 -0
  323. package/dist/api/services/campaigns/POST/useLeaveCampaign.d.ts.map +1 -0
  324. package/dist/api/services/campaigns/PUT/index.d.ts +7 -0
  325. package/dist/api/services/campaigns/PUT/index.d.ts.map +1 -0
  326. package/dist/api/services/campaigns/PUT/updateCampaign.d.ts +37 -0
  327. package/dist/api/services/campaigns/PUT/updateCampaign.d.ts.map +1 -0
  328. package/dist/api/services/campaigns/PUT/useUpdateCampaign.d.ts +38 -0
  329. package/dist/api/services/campaigns/PUT/useUpdateCampaign.d.ts.map +1 -0
  330. package/dist/api/services/campaigns/index.d.ts +9 -0
  331. package/dist/api/services/campaigns/index.d.ts.map +1 -0
  332. package/dist/api/services/clients.d.ts +58 -0
  333. package/dist/api/services/clients.d.ts.map +1 -0
  334. package/dist/api/services/index.d.ts +8 -0
  335. package/dist/api/services/index.d.ts.map +1 -0
  336. package/dist/api/services/types.d.ts +65 -0
  337. package/dist/api/services/types.d.ts.map +1 -0
  338. package/dist/api/strategies/index.d.ts +8 -0
  339. package/dist/api/strategies/index.d.ts.map +1 -0
  340. package/dist/api/strategies/tracked.d.ts +15 -0
  341. package/dist/api/strategies/tracked.d.ts.map +1 -0
  342. package/dist/api/strategies/unified.d.ts +87 -0
  343. package/dist/api/strategies/unified.d.ts.map +1 -0
  344. package/dist/api/utils/async-control.d.ts +96 -0
  345. package/dist/api/utils/async-control.d.ts.map +1 -0
  346. package/dist/api/utils/colors.d.ts +88 -0
  347. package/dist/api/utils/colors.d.ts.map +1 -0
  348. package/dist/api/utils/environment.d.ts +595 -0
  349. package/dist/api/utils/environment.d.ts.map +1 -0
  350. package/dist/api/utils/generation/correlation-id.d.ts +206 -0
  351. package/dist/api/utils/generation/correlation-id.d.ts.map +1 -0
  352. package/dist/api/utils/generation/id-generator.d.ts +133 -0
  353. package/dist/api/utils/generation/id-generator.d.ts.map +1 -0
  354. package/dist/api/utils/generation/request-id.d.ts +106 -0
  355. package/dist/api/utils/generation/request-id.d.ts.map +1 -0
  356. package/dist/api/utils/index.d.ts +19 -0
  357. package/dist/api/utils/index.d.ts.map +1 -0
  358. package/dist/api/utils/interval-manager.d.ts +94 -0
  359. package/dist/api/utils/interval-manager.d.ts.map +1 -0
  360. package/dist/api/utils/json.d.ts +98 -0
  361. package/dist/api/utils/json.d.ts.map +1 -0
  362. package/dist/api/utils/math.d.ts +168 -0
  363. package/dist/api/utils/math.d.ts.map +1 -0
  364. package/dist/api/utils/object-merge.d.ts +34 -0
  365. package/dist/api/utils/object-merge.d.ts.map +1 -0
  366. package/dist/api/utils/object.d.ts +101 -0
  367. package/dist/api/utils/object.d.ts.map +1 -0
  368. package/dist/api/utils/string.d.ts +41 -0
  369. package/dist/api/utils/string.d.ts.map +1 -0
  370. package/dist/api/utils/time.d.ts +233 -0
  371. package/dist/api/utils/time.d.ts.map +1 -0
  372. package/dist/api/utils/type-guards.d.ts +59 -0
  373. package/dist/api/utils/type-guards.d.ts.map +1 -0
  374. package/dist/api/utils/validation.d.ts +21 -0
  375. package/dist/api/utils/validation.d.ts.map +1 -0
  376. package/dist/index.cjs +25594 -3
  377. package/dist/index.cjs.map +1 -1
  378. package/dist/index.d.ts +5 -1
  379. package/dist/index.d.ts.map +1 -1
  380. package/dist/index.mjs +25068 -3
  381. package/dist/index.mjs.map +1 -1
  382. package/package.json +18 -7
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Network connection detection utilities
3
+ */
4
+ import type { NetworkInfo, ConnectionType, EffectiveConnectionType } from '@plyaz/types/api';
5
+ export declare function getNetworkInfo(headers?: HeadersInit | Record<string, string | string[]>): NetworkInfo;
6
+ /**
7
+ * Get connection type
8
+ *
9
+ * @returns Connection type (wifi, cellular, etc.)
10
+ */
11
+ export declare function getConnectionType(): ConnectionType;
12
+ /**
13
+ * Get effective connection type (quality)
14
+ *
15
+ * @returns Effective type (4g, 3g, 2g, etc.)
16
+ */
17
+ export declare function getEffectiveConnectionType(): EffectiveConnectionType;
18
+ /**
19
+ * Check if on cellular connection
20
+ *
21
+ * @returns True if using cellular data
22
+ */
23
+ export declare function isCellularConnection(): boolean;
24
+ /**
25
+ * Check if on wifi connection
26
+ *
27
+ * @returns True if using wifi
28
+ */
29
+ export declare function isWifiConnection(): boolean;
30
+ /**
31
+ * Check if data saver is enabled
32
+ *
33
+ * @returns True if data saver mode is on
34
+ */
35
+ export declare function isDataSaverEnabled(): boolean;
36
+ /**
37
+ * Get network round-trip time (latency)
38
+ *
39
+ * @returns RTT in milliseconds or null
40
+ */
41
+ export declare function getNetworkRTT(): number | null;
42
+ /**
43
+ * Get network downlink speed
44
+ *
45
+ * @returns Speed in Mbps or null
46
+ */
47
+ export declare function getNetworkSpeed(): number | null;
48
+ /**
49
+ * Check if currently online
50
+ *
51
+ * @returns True if online
52
+ */
53
+ export declare function isOnline(): boolean;
54
+ /**
55
+ * Check if currently offline
56
+ *
57
+ * @returns True if offline
58
+ */
59
+ export declare function isOffline(): boolean;
60
+ //# sourceMappingURL=connection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/api/network/connection.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,uBAAuB,EAExB,MAAM,kBAAkB,CAAC;AAyI1B,wBAAgB,cAAc,CAC5B,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,GACxD,WAAW,CAQb;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,cAAc,CAGlD;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,uBAAuB,CAGpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAE9C;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAG5C;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAG7C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,IAAI,CAG/C;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;;;GAIG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC"}
@@ -0,0 +1,26 @@
1
+ import type { NetworkInformation } from '@plyaz/types/api';
2
+ /**
3
+ * Re-export fetchff's slow connection detection
4
+ * Checks if user is on a slow network (2G/3G)
5
+ *
6
+ * @returns True if connection is slow
7
+ *
8
+ * @example
9
+ * if (isSlowConnection()) {
10
+ * console.log('User on slow connection');
11
+ * }
12
+ */
13
+ export declare const isSlowConnection: () => boolean;
14
+ /**
15
+ * Check if Network Information API is supported
16
+ *
17
+ * @returns True if Network API is available
18
+ */
19
+ export declare function isNetworkAPISupported(): boolean;
20
+ /**
21
+ * Get network connection object
22
+ *
23
+ * @returns Network connection or null
24
+ */
25
+ export declare function getConnection(): NetworkInformation | null;
26
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/api/network/core.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAA2B,MAAM,kBAAkB,CAAC;AAGpF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,eAA0B,CAAC;AAExD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAK/C;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,kBAAkB,GAAG,IAAI,CAWzD"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Network Events System
3
+ * Event system for monitoring and responding to network changes
4
+ */
5
+ import type { NetworkEventStats } from '@plyaz/types/api';
6
+ /**
7
+ * Start monitoring network events
8
+ */
9
+ export declare function startNetworkEventMonitoring(): () => void;
10
+ /**
11
+ * Network event statistics
12
+ */
13
+ /**
14
+ * Get network event statistics for monitoring
15
+ * Returns statistics from the shared event system
16
+ */
17
+ export declare function getNetworkEventStats(): NetworkEventStats;
18
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/api/network/events.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,iBAAiB,EAIlB,MAAM,kBAAkB,CAAC;AAqG1B;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,IAAI,CAgExD;AAsDD;;GAEG;AACH;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,iBAAiB,CAwBxD"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Express middleware for network detection and enriched headers
3
+ */
4
+ import type { Request, Response, RequestHandler } from 'express';
5
+ import type { NetworkInfo, ApiHeaders, ExpressRequestWithNetwork, EnrichedHeadersMiddlewareOptions, ExpressRequestWithEnrichedHeaders, NetworkDetectionOptions } from '@plyaz/types/api';
6
+ /**
7
+ * Express middleware for network detection
8
+ * Adds network information to the request object and requests Client Hints from browser
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * import express from 'express';
13
+ * import { networkDetectionMiddleware } from '@plyaz/api/utils/network/frameworks/express';
14
+ *
15
+ * const app = express();
16
+ *
17
+ * // Apply to all routes
18
+ * app.use(networkDetectionMiddleware);
19
+ *
20
+ * app.get('/api/data', (req: ExpressRequestWithNetwork, res) => {
21
+ * const { networkInfo } = req;
22
+ *
23
+ * if (networkInfo?.effectiveType === '4g') {
24
+ * res.json({ quality: 'high', data: getHighQualityData() });
25
+ * } else {
26
+ * res.json({ quality: 'standard', data: getStandardData() });
27
+ * }
28
+ * });
29
+ * ```
30
+ */
31
+ export declare const networkDetectionMiddleware: RequestHandler;
32
+ export declare function createNetworkDetectionMiddleware(options?: NetworkDetectionOptions): RequestHandler;
33
+ /**
34
+ * Type guard to check if request has network info
35
+ *
36
+ * @param req - Request to check
37
+ * @returns True if request has network info
38
+ */
39
+ export declare function hasNetworkInfo(req: Request | ExpressRequestWithNetwork): req is ExpressRequestWithNetwork;
40
+ /**
41
+ * Express route handler wrapper that provides network info
42
+ *
43
+ * @param handler - Route handler that receives network info
44
+ * @returns Express route handler
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * app.get('/api/data', withNetworkInfo((req, res, networkInfo) => {
49
+ * if (networkInfo?.saveData) {
50
+ * return res.json({ mode: 'data-saver' });
51
+ * }
52
+ * return res.json({ mode: 'normal' });
53
+ * }));
54
+ * ```
55
+ */
56
+ export declare function withNetworkInfo(handler: (req: Request, res: Response, networkInfo: NetworkInfo) => void | Promise<void>): RequestHandler;
57
+ /**
58
+ * Express middleware for enriched context headers
59
+ * Collects device, network, platform, and compliance headers and sets them in AsyncLocalStorage context
60
+ *
61
+ * @param options - Middleware configuration options
62
+ * @returns Express middleware
63
+ *
64
+ * @example
65
+ * ```typescript
66
+ * import express from 'express';
67
+ * import { enrichedHeadersMiddleware } from '@plyaz/api/network/frameworks/express';
68
+ *
69
+ * const app = express();
70
+ *
71
+ * // Apply enriched headers middleware
72
+ * app.use(enrichedHeadersMiddleware({
73
+ * preset: 'standard',
74
+ * includePerformance: true,
75
+ * storeInLocals: true
76
+ * }));
77
+ *
78
+ * // Service functions will automatically have enriched headers
79
+ * app.get('/api/users', async (req, res) => {
80
+ * const users = await fetchUsers({ page: 1 }); // Headers auto-included
81
+ * res.json(users);
82
+ * });
83
+ * ```
84
+ */
85
+ export declare function enrichedHeadersMiddleware(options?: EnrichedHeadersMiddlewareOptions): RequestHandler;
86
+ /**
87
+ * Express route handler wrapper that provides enriched headers
88
+ *
89
+ * @param handler - Route handler that receives enriched headers
90
+ * @returns Express route handler
91
+ *
92
+ * @example
93
+ * ```typescript
94
+ * app.get('/api/data', withEnrichedHeaders(async (req, res, headers) => {
95
+ * if (headers['x-user-region'] === 'eu') {
96
+ * return res.json({ compliance: 'GDPR' });
97
+ * }
98
+ * return res.json({ compliance: 'standard' });
99
+ * }));
100
+ * ```
101
+ */
102
+ export declare function withEnrichedHeaders(handler: (req: Request, res: Response, headers: ApiHeaders) => void | Promise<void>): RequestHandler;
103
+ /**
104
+ * Type guard to check if request has enriched headers
105
+ *
106
+ * @param req - Request to check
107
+ * @returns True if request has enriched headers
108
+ */
109
+ export declare function hasEnrichedHeaders(req: Request | ExpressRequestWithEnrichedHeaders): req is ExpressRequestWithEnrichedHeaders;
110
+ //# sourceMappingURL=express.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"express.d.ts","sourceRoot":"","sources":["../../../../src/api/network/frameworks/express.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAgB,cAAc,EAAE,MAAM,SAAS,CAAC;AAI/E,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,yBAAyB,EACzB,gCAAgC,EAChC,iCAAiC,EACjC,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAK1B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,0BAA0B,EAAE,cA6BxC,CAAC;AAEF,wBAAgB,gCAAgC,CAC9C,OAAO,GAAE,uBAA4B,GACpC,cAAc,CAyChB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,OAAO,GAAG,yBAAyB,GACvC,GAAG,IAAI,yBAAyB,CAElC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GACvF,cAAc,CAkBhB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,GAAE,gCAAqC,GAC7C,cAAc,CAoGhB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAClF,cAAc,CAiDhB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,OAAO,GAAG,iCAAiC,GAC/C,GAAG,IAAI,iCAAiC,CAE1C"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Framework-specific middleware for network detection
3
+ *
4
+ * Provides middleware and utilities for:
5
+ * - Next.js (API Routes and Edge Runtime)
6
+ * - Express
7
+ * - NestJS
8
+ */
9
+ export { createAdaptiveResponse, shouldServeHighQuality, getAdaptiveCacheDuration, shouldUseAggressiveCaching, getFrameworkAdaptiveTimeout, getFrameworkAdaptiveBatchSize, } from './shared';
10
+ export { withNetworkDetection, getNetworkInfoFromRequest, addClientHintsToResponse, hasNetworkInfo as hasNetworkInfoNextjs, } from './nextjs';
11
+ export { networkDetectionMiddleware, createNetworkDetectionMiddleware, hasNetworkInfo as hasNetworkInfoExpress, withNetworkInfo, } from './express';
12
+ export { NetworkDetectionMiddleware, NetworkInfoParam, NetworkProperty, NetworkGuard, ClientHintsInterceptor, NoDataSaverGuard, MinimumConnectionGuard, type NestRequestWithNetwork, } from './nestjs/index';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/network/frameworks/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,GAC9B,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,IAAI,oBAAoB,GACvC,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,0BAA0B,EAC1B,gCAAgC,EAChC,cAAc,IAAI,qBAAqB,EACvC,eAAe,GAChB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,sBAAsB,GAC5B,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * NestJS interceptor to add Client Hints headers to response
3
+ */
4
+ import { ExecutionContext, CallHandler } from '@nestjs/common';
5
+ import type { Observable } from 'rxjs';
6
+ /**
7
+ * NestJS interceptor to add Client Hints headers to response
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import { Module } from '@nestjs/common';
12
+ * import { APP_INTERCEPTOR } from '@nestjs/core';
13
+ * import { ClientHintsInterceptor } from '@plyaz/api/network/frameworks/nestjs';
14
+ *
15
+ * @Module({
16
+ * providers: [
17
+ * {
18
+ * provide: APP_INTERCEPTOR,
19
+ * useClass: ClientHintsInterceptor,
20
+ * },
21
+ * ],
22
+ * })
23
+ * export class AppModule {}
24
+ * ```
25
+ */
26
+ export declare class ClientHintsInterceptor {
27
+ intercept(context: ExecutionContext, next: CallHandler): Observable<unknown>;
28
+ }
29
+ //# sourceMappingURL=clientHintsInterceptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientHintsInterceptor.d.ts","sourceRoot":"","sources":["../../../../../src/api/network/frameworks/nestjs/clientHintsInterceptor.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAc,gBAAgB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAIvC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBACa,sBAAsB;IACjC,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC;CAW7E"}
@@ -0,0 +1,48 @@
1
+ import type { NetworkInfo } from '@plyaz/types/api';
2
+ /**
3
+ * NestJS decorator to inject network info into controller methods
4
+ *
5
+ * @example
6
+ * ```typescript
7
+ * import { Controller, Get } from '@nestjs/common';
8
+ * import { NetworkInfoParam } from '@plyaz/api/network/frameworks/nestjs';
9
+ * import type { NetworkInfo } from '@plyaz/api/network';
10
+ *
11
+ * @Controller('api')
12
+ * export class DataController {
13
+ * @Get('data')
14
+ * getData(@NetworkInfoParam() networkInfo: NetworkInfo) {
15
+ * if (networkInfo?.saveData) {
16
+ * return { mode: 'data-saver', data: this.getMinimalData() };
17
+ * }
18
+ * return { mode: 'normal', data: this.getFullData() };
19
+ * }
20
+ * }
21
+ * ```
22
+ */
23
+ export declare const NetworkInfoParam: (...dataOrPipes: unknown[]) => ParameterDecorator;
24
+ /**
25
+ * NestJS decorator to get specific network property
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * @Controller('api')
30
+ * export class DataController {
31
+ * @Get('data')
32
+ * getData(
33
+ * @NetworkProperty('effectiveType') effectiveType: string,
34
+ * @NetworkProperty('saveData') saveData: boolean
35
+ * ) {
36
+ * if (saveData) {
37
+ * return { mode: 'data-saver' };
38
+ * }
39
+ * if (effectiveType === '4g') {
40
+ * return { mode: 'high-quality' };
41
+ * }
42
+ * return { mode: 'standard' };
43
+ * }
44
+ * }
45
+ * ```
46
+ */
47
+ export declare const NetworkProperty: (...dataOrPipes: (keyof NetworkInfo | import("@nestjs/common").PipeTransform<any, any> | import("@nestjs/common").Type<import("@nestjs/common").PipeTransform<any, any>>)[]) => ParameterDecorator;
48
+ //# sourceMappingURL=decorators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../../../../src/api/network/frameworks/nestjs/decorators.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAA0B,MAAM,kBAAkB,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,gBAAgB,mDAuB5B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,eAAe,oMA0B3B,CAAC"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * NestJS Guard for Enriched Context Headers
3
+ * Sets up enriched headers context before route handlers execute
4
+ */
5
+ import { CanActivate, ExecutionContext } from '@nestjs/common';
6
+ import type { EnrichedHeadersGuardOptions } from '@plyaz/types/api';
7
+ /**
8
+ * NestJS guard that collects enriched context headers
9
+ * Sets up AsyncLocalStorage context for service functions
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * import { Controller, Get, UseGuards } from '@nestjs/common';
14
+ * import { EnrichedHeadersGuard } from '@plyaz/api/network/frameworks/nestjs';
15
+ * import { fetchUsers } from '@plyaz/api/services';
16
+ *
17
+ * @Controller('users')
18
+ * @UseGuards(new EnrichedHeadersGuard({
19
+ * preset: 'standard',
20
+ * requiredCompliance: ['GDPR']
21
+ * }))
22
+ * export class UsersController {
23
+ * @Get()
24
+ * async getUsers() {
25
+ * // Service function automatically has enriched headers
26
+ * return await fetchUsers({ page: 1 });
27
+ * }
28
+ * }
29
+ * ```
30
+ */
31
+ export declare class EnrichedHeadersGuard implements CanActivate {
32
+ private readonly options;
33
+ /**
34
+ * Check if all required headers are present
35
+ */
36
+ private checkRequiredHeaders;
37
+ /**
38
+ * Check if required compliance is met
39
+ */
40
+ private checkRequiredCompliance;
41
+ /**
42
+ * Build enriched headers for request
43
+ */
44
+ private buildHeadersForRequest;
45
+ /**
46
+ * Perform validation checks on headers
47
+ */
48
+ private validateHeaders;
49
+ /**
50
+ * Handle successful header processing
51
+ */
52
+ private handleSuccess;
53
+ /**
54
+ * Handle error during header building
55
+ */
56
+ private handleBuildError;
57
+ constructor(options?: EnrichedHeadersGuardOptions);
58
+ canActivate(context: ExecutionContext): Promise<boolean>;
59
+ }
60
+ /**
61
+ * Create enriched headers guard with specific options
62
+ *
63
+ * @param options - Guard configuration
64
+ * @returns Configured guard instance
65
+ *
66
+ * @example
67
+ * ```typescript
68
+ * @UseGuards(createEnrichedHeadersGuard({
69
+ * preset: 'compliance-strict',
70
+ * requiredCompliance: ['GDPR'],
71
+ * debug: true
72
+ * }))
73
+ * export class EuComplianceController {
74
+ * // All methods require GDPR compliance
75
+ * }
76
+ * ```
77
+ */
78
+ export declare function createEnrichedHeadersGuard(options?: EnrichedHeadersGuardOptions): EnrichedHeadersGuard;
79
+ export declare function RequireEnrichedHeaders(options?: EnrichedHeadersGuardOptions): (target: object, propertyKey?: string, descriptor?: PropertyDescriptor) => void;
80
+ //# sourceMappingURL=enrichedHeadersGuard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enrichedHeadersGuard.d.ts","sourceRoot":"","sources":["../../../../../src/api/network/frameworks/nestjs/enrichedHeadersGuard.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAc,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAI3E,OAAO,KAAK,EAAc,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAKhF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBACa,oBAAqB,YAAW,WAAW;IAsL1C,OAAO,CAAC,QAAQ,CAAC,OAAO;IArLpC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAkC/B;;OAEG;YACW,sBAAsB;IAoCpC;;OAEG;IACH,OAAO,CAAC,eAAe;IAmBvB;;OAEG;YACW,aAAa;IAkB3B;;OAEG;YACW,gBAAgB;gBAoCD,OAAO,GAAE,2BAAgC;IAEhE,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;CA2B/D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,2BAAgC,GACxC,oBAAoB,CAEtB;AAuCD,wBAAgB,sBAAsB,CACpC,OAAO,GAAE,2BAAgC,GACxC,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,kBAAkB,KAAK,IAAI,CAejF"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * NestJS Interceptor for Enriched Context Headers
3
+ * Automatically collects enriched headers and sets AsyncLocalStorage context for service functions
4
+ */
5
+ import { NestInterceptor, ExecutionContext, CallHandler } from '@nestjs/common';
6
+ import { Observable } from 'rxjs';
7
+ import type { EnrichedHeadersInterceptorOptions } from '@plyaz/types/api';
8
+ /**
9
+ * NestJS interceptor that collects enriched context headers
10
+ * Automatically runs service functions with enriched headers in AsyncLocalStorage context
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * import { Controller, Get, UseInterceptors } from '@nestjs/common';
15
+ * import { EnrichedHeadersInterceptor } from '@plyaz/api/network/frameworks/nestjs';
16
+ * import { fetchUsers } from '@plyaz/api/services';
17
+ *
18
+ * @Controller('users')
19
+ * @UseInterceptors(new EnrichedHeadersInterceptor({
20
+ * preset: 'standard',
21
+ * includePerformance: true
22
+ * }))
23
+ * export class UsersController {
24
+ * @Get()
25
+ * async getUsers() {
26
+ * // Service function automatically has enriched headers
27
+ * return await fetchUsers({ page: 1 });
28
+ * }
29
+ * }
30
+ * ```
31
+ */
32
+ export declare class EnrichedHeadersInterceptor implements NestInterceptor {
33
+ private readonly options;
34
+ constructor(options?: EnrichedHeadersInterceptorOptions);
35
+ /**
36
+ * Build enriched headers for the request
37
+ */
38
+ private buildHeaders;
39
+ /**
40
+ * Add enriched headers to response
41
+ */
42
+ private addHeadersToResponse;
43
+ /**
44
+ * Create observable with context
45
+ */
46
+ private createContextObservable;
47
+ /**
48
+ * Handle context setup error
49
+ */
50
+ private handleContextError;
51
+ /**
52
+ * Handle error during header building
53
+ */
54
+ private handleBuildError;
55
+ /**
56
+ * Create fallback observable when headers fail
57
+ */
58
+ private createFallbackObservable;
59
+ /**
60
+ * Handle fallback error
61
+ */
62
+ private handleFallbackError;
63
+ intercept(context: ExecutionContext, next: CallHandler): Promise<Observable<unknown>>;
64
+ }
65
+ /**
66
+ * Create enriched headers interceptor with specific options
67
+ *
68
+ * @param options - Interceptor configuration
69
+ * @returns Configured interceptor instance
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * @UseInterceptors(createEnrichedHeadersInterceptor({
74
+ * preset: 'compliance-strict',
75
+ * debug: true
76
+ * }))
77
+ * export class ComplianceController {
78
+ * // All methods automatically have enriched headers
79
+ * }
80
+ * ```
81
+ */
82
+ export declare function createEnrichedHeadersInterceptor(options?: EnrichedHeadersInterceptorOptions): EnrichedHeadersInterceptor;
83
+ //# sourceMappingURL=enrichedHeadersInterceptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enrichedHeadersInterceptor.d.ts","sourceRoot":"","sources":["../../../../../src/api/network/frameworks/nestjs/enrichedHeadersInterceptor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAc,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAIlC,OAAO,KAAK,EAAc,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AAKtF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBACa,0BAA2B,YAAW,eAAe;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,GAAE,iCAAsC;IAE5E;;OAEG;YACW,YAAY;IAgB1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAqB/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAgCxB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAoBhC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAwBrB,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;CAqC5F;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,GAAE,iCAAsC,GAC9C,0BAA0B,CAE5B"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * NestJS middleware and decorators for network detection
3
+ */
4
+ export type { NestRequestWithNetwork } from '@plyaz/types/api';
5
+ export { NetworkDetectionMiddleware } from './networkDetectionMiddleware';
6
+ export { NetworkGuard } from './networkGuard';
7
+ export { ClientHintsInterceptor } from './clientHintsInterceptor';
8
+ export { NoDataSaverGuard } from './noDataSaverGuard';
9
+ export { MinimumConnectionGuard } from './minimumConnectionGuard';
10
+ export { EnrichedHeadersGuard } from './enrichedHeadersGuard';
11
+ export { EnrichedHeadersInterceptor } from './enrichedHeadersInterceptor';
12
+ export { NetworkInfoParam, NetworkProperty } from './decorators';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/api/network/frameworks/nestjs/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAG/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAG1E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Pre-built guard for minimum connection quality
3
+ */
4
+ import { ExecutionContext } from '@nestjs/common';
5
+ import { NetworkGuard } from './networkGuard';
6
+ /**
7
+ * Pre-built guard for minimum connection quality
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * @Controller('api')
12
+ * export class StreamingController {
13
+ * @Get('video-stream')
14
+ * @UseGuards(new MinimumConnectionGuard('3g'))
15
+ * streamVideo() {
16
+ * // This route requires at least 3G connection
17
+ * return this.videoStreamService.stream();
18
+ * }
19
+ * }
20
+ * ```
21
+ */
22
+ export declare class MinimumConnectionGuard extends NetworkGuard {
23
+ private readonly minimumType;
24
+ constructor(minimumType?: '4g' | '3g' | '2g');
25
+ canActivate(context: ExecutionContext): boolean;
26
+ }
27
+ //# sourceMappingURL=minimumConnectionGuard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimumConnectionGuard.d.ts","sourceRoot":"","sources":["../../../../../src/api/network/frameworks/nestjs/minimumConnectionGuard.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAc,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AACH,qBACa,sBAAuB,SAAQ,YAAY;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,GAAE,IAAI,GAAG,IAAI,GAAG,IAAW;IAInE,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO;CAShD"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * NestJS middleware class for network detection
3
+ */
4
+ import { NestMiddleware } from '@nestjs/common';
5
+ import type { Response, NextFunction } from 'express';
6
+ import type { NestRequestWithNetwork } from '@plyaz/types/api';
7
+ /**
8
+ * NestJS middleware class for network detection
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * // app.module.ts
13
+ * import { Module, NestModule, MiddlewareConsumer } from '@nestjs/common';
14
+ * import { NetworkDetectionMiddleware } from '@plyaz/api/network/frameworks/nestjs';
15
+ *
16
+ * @Module({
17
+ * // ... module configuration
18
+ * })
19
+ * export class AppModule implements NestModule {
20
+ * configure(consumer: MiddlewareConsumer) {
21
+ * consumer
22
+ * .apply(NetworkDetectionMiddleware)
23
+ * .forRoutes('*'); // Apply to all routes
24
+ * }
25
+ * }
26
+ * ```
27
+ */
28
+ export declare class NetworkDetectionMiddleware implements NestMiddleware {
29
+ use(req: NestRequestWithNetwork, res: Response, next: NextFunction): void;
30
+ }
31
+ //# sourceMappingURL=networkDetectionMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networkDetectionMiddleware.d.ts","sourceRoot":"","sources":["../../../../../src/api/network/frameworks/nestjs/networkDetectionMiddleware.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAc,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEtD,OAAO,KAAK,EAAe,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBACa,0BAA2B,YAAW,cAAc;IAC/D,GAAG,CAAC,GAAG,EAAE,sBAAsB,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI;CA0B1E"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * NestJS guard base class for network conditions
3
+ */
4
+ import { ExecutionContext } from '@nestjs/common';
5
+ import type { NetworkInfo } from '@plyaz/types/api';
6
+ /**
7
+ * NestJS guard to check network conditions
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';
12
+ * import { NetworkGuard } from '@plyaz/api/network/frameworks/nestjs';
13
+ *
14
+ * @Injectable()
15
+ * export class HighQualityOnlyGuard extends NetworkGuard {
16
+ * canActivate(context: ExecutionContext): boolean {
17
+ * const networkInfo = this.getNetworkInfo(context);
18
+ * return networkInfo.effectiveType === '4g' && !networkInfo.saveData;
19
+ * }
20
+ * }
21
+ *
22
+ * @Controller('api')
23
+ * @UseGuards(HighQualityOnlyGuard)
24
+ * export class HighQualityController {
25
+ * // Routes here only accessible on 4G without data saver
26
+ * }
27
+ * ```
28
+ */
29
+ export declare abstract class NetworkGuard {
30
+ protected getNetworkInfo(context: ExecutionContext): NetworkInfo;
31
+ abstract canActivate(context: ExecutionContext): boolean | Promise<boolean>;
32
+ }
33
+ //# sourceMappingURL=networkGuard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networkGuard.d.ts","sourceRoot":"","sources":["../../../../../src/api/network/frameworks/nestjs/networkGuard.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAc,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE9D,OAAO,KAAK,EAAE,WAAW,EAA0B,MAAM,kBAAkB,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,8BACsB,YAAY;IAChC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,WAAW;IAuBhE,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAC5E"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Pre-built guard for data saver mode
3
+ */
4
+ import { ExecutionContext } from '@nestjs/common';
5
+ import { NetworkGuard } from './networkGuard';
6
+ /**
7
+ * Pre-built guard for data saver mode
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * @Controller('api')
12
+ * export class DataController {
13
+ * @Get('full-data')
14
+ * @UseGuards(NoDataSaverGuard)
15
+ * getFullData() {
16
+ * // This route is not accessible when data saver is enabled
17
+ * return { data: this.getLargeDataset() };
18
+ * }
19
+ * }
20
+ * ```
21
+ */
22
+ export declare class NoDataSaverGuard extends NetworkGuard {
23
+ canActivate(context: ExecutionContext): boolean;
24
+ }
25
+ //# sourceMappingURL=noDataSaverGuard.d.ts.map