@plyaz/api 1.0.2 → 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 +15 -6
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Abort requests by pattern
3
+ *
4
+ * @param pattern - URL pattern to match
5
+ * @param reason - Optional abort reason
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * // Abort all search requests
10
+ * abortByPattern('/api/search/*', 'New search started');
11
+ * ```
12
+ */
13
+ export declare function abortByPattern(pattern: string, reason?: string): void;
14
+ /**
15
+ * Abort all search requests
16
+ *
17
+ * @param reason - Optional abort reason
18
+ */
19
+ export declare function abortSearchRequests(reason?: string): void;
20
+ /**
21
+ * Abort all upload requests
22
+ *
23
+ * @param reason - Optional abort reason
24
+ */
25
+ export declare function abortUploadRequests(reason?: string): void;
26
+ /**
27
+ * Abort all pending API requests
28
+ *
29
+ * @param reason - Optional abort reason
30
+ */
31
+ export declare function abortAllRequests(reason?: string): void;
32
+ /**
33
+ * Create scoped abort function for a specific API namespace
34
+ *
35
+ * @param scope - Scope prefix for requests
36
+ * @returns Scoped abort function
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * const abortUserRequests = createScopedAbort('/api/users');
41
+ *
42
+ * // Later: abort all user requests
43
+ * abortUserRequests('profile', 'User logged out');
44
+ * // This aborts: /api/users/profile
45
+ * ```
46
+ */
47
+ export declare function createScopedAbort(scope: string): (key: string, reason?: string) => void;
48
+ /**
49
+ * Debounced abort - useful for search-as-you-type
50
+ *
51
+ * @param delay - Delay in milliseconds
52
+ * @returns Debounced abort function
53
+ *
54
+ * @example
55
+ * ```typescript
56
+ * const debouncedAbort = createDebouncedAbort(300);
57
+ *
58
+ * // On each keystroke
59
+ * debouncedAbort('/api/search', 'New search query');
60
+ * // Only aborts after 300ms of no calls
61
+ * ```
62
+ */
63
+ export declare function createDebouncedAbort(delay?: number): {
64
+ (key: string, reason?: string): void;
65
+ cancel: () => void;
66
+ };
67
+ /**
68
+ * Throttled abort - limits abort frequency
69
+ *
70
+ * @param limit - Minimum time between aborts (ms)
71
+ * @returns Throttled abort function
72
+ */
73
+ export declare function createThrottledAbort(limit?: number): (key: string, reason?: string) => void;
74
+ /**
75
+ * Request with timeout - automatically aborts after timeout
76
+ *
77
+ * @param key - Request identifier
78
+ * @param fetcher - Function that performs the request
79
+ * @param timeoutMs - Timeout in milliseconds
80
+ * @returns Promise with request result
81
+ *
82
+ * @example
83
+ * ```typescript
84
+ * const data = await requestWithTimeout(
85
+ * '/api/slow-endpoint',
86
+ * () => fetch('/api/slow-endpoint').then(r => r.json()),
87
+ * 5000 // 5 second timeout
88
+ * );
89
+ * ```
90
+ */
91
+ export declare function requestWithTimeout<T>(key: string, fetcher: () => Promise<T>, timeoutMs: number): Promise<T>;
92
+ /**
93
+ * Race multiple requests and abort losers
94
+ *
95
+ * @param requests - Array of request configurations
96
+ * @returns Promise with winner's result
97
+ *
98
+ * @example
99
+ * ```typescript
100
+ * const fastest = await raceRequests([
101
+ * { key: 'primary', fetcher: () => fetchPrimary() },
102
+ * { key: 'backup', fetcher: () => fetchBackup() }
103
+ * ]);
104
+ * ```
105
+ */
106
+ export declare function raceRequests<T>(requests: Array<{
107
+ key: string;
108
+ fetcher: () => Promise<T>;
109
+ }>): Promise<T>;
110
+ /**
111
+ * Sequential request chain with abort on failure
112
+ *
113
+ * @param requests - Array of request configurations
114
+ * @returns Array of results
115
+ *
116
+ * @example
117
+ * ```typescript
118
+ * const results = await sequentialRequests([
119
+ * { key: 'step1', fetcher: () => doStep1() },
120
+ * { key: 'step2', fetcher: () => doStep2() },
121
+ * { key: 'step3', fetcher: () => doStep3() }
122
+ * ]);
123
+ * ```
124
+ */
125
+ export declare function sequentialRequests<T>(requests: Array<{
126
+ key: string;
127
+ fetcher: () => Promise<T>;
128
+ }>): Promise<T[]>;
129
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/api/request/utils.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAErE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAEtD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAKvF;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,GAAE,MAAY,GAAG;IACzD,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB,CAIA;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,GAAE,MAAa,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAIjG;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,CAAC,CAUZ;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,QAAQ,EAAE,KAAK,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;CAC3B,CAAC,GACD,OAAO,CAAC,CAAC,CAAC,CAgBZ;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,QAAQ,EAAE,KAAK,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;CAC3B,CAAC,GACD,OAAO,CAAC,CAAC,EAAE,CAAC,CAmBd"}
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Retry Condition Helpers
3
+ * Common retry condition functions for custom retry logic
4
+ *
5
+ * @module retry/conditions
6
+ */
7
+ import type { RetryConfig, RetryResponse } from '@plyaz/types/api';
8
+ /**
9
+ * Common retry condition helpers
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * import { retryConditions } from '@plyaz/api/retry';
14
+ *
15
+ * const api = createApiClient({
16
+ * retry: {
17
+ * attempts: 5,
18
+ * shouldRetry: retryConditions.networkOnly
19
+ * }
20
+ * });
21
+ * ```
22
+ */
23
+ export declare const retryConditions: {
24
+ /**
25
+ * Retry only on network errors (no response)
26
+ */
27
+ readonly networkOnly: (response: RetryResponse) => boolean;
28
+ /**
29
+ * Retry on timeout errors
30
+ */
31
+ readonly timeoutOnly: (response: RetryResponse) => boolean;
32
+ /**
33
+ * Retry on specific status codes
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * shouldRetry: retryConditions.statusCodes([500, 502, 503])
38
+ * ```
39
+ */
40
+ readonly statusCodes: (codes: number[]) => (response: RetryResponse) => boolean;
41
+ /**
42
+ * Retry with exponential backoff based on attempt
43
+ *
44
+ * @example
45
+ * ```typescript
46
+ * shouldRetry: retryConditions.withBackoff(5)
47
+ * ```
48
+ */
49
+ readonly withBackoff: (maxAttempts: number) => (_response: RetryResponse, attempt: number) => boolean;
50
+ /**
51
+ * Retry based on custom header presence
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * shouldRetry: retryConditions.withHeader('x-retry-allowed', 'true')
56
+ * ```
57
+ */
58
+ readonly withHeader: (headerName: string, headerValue?: string) => (response: RetryResponse) => boolean;
59
+ /**
60
+ * Retry if response contains specific error code
61
+ *
62
+ * @example
63
+ * ```typescript
64
+ * shouldRetry: retryConditions.errorCode(['NETWORK_ERROR', 'TIMEOUT'])
65
+ * ```
66
+ */
67
+ readonly errorCode: (codes: string[]) => (response: RetryResponse) => boolean;
68
+ /**
69
+ * Combine multiple conditions (AND)
70
+ * All conditions must be true to retry
71
+ *
72
+ * @example
73
+ * ```typescript
74
+ * shouldRetry: retryConditions.all(
75
+ * retryConditions.networkOnly,
76
+ * retryConditions.withBackoff(3)
77
+ * )
78
+ * ```
79
+ */
80
+ readonly all: (...conditions: Array<(response: RetryResponse, attempt: number) => boolean>) => (response: RetryResponse, attempt: number) => boolean;
81
+ /**
82
+ * Combine multiple conditions (OR)
83
+ * Any condition being true will trigger retry
84
+ *
85
+ * @example
86
+ * ```typescript
87
+ * shouldRetry: retryConditions.any(
88
+ * retryConditions.networkOnly,
89
+ * retryConditions.timeoutOnly,
90
+ * retryConditions.statusCodes([500, 502, 503])
91
+ * )
92
+ * ```
93
+ */
94
+ readonly any: (...conditions: Array<(response: RetryResponse, attempt: number) => boolean>) => (response: RetryResponse, attempt: number) => boolean;
95
+ /**
96
+ * Retry based on rate limit headers
97
+ * Respects X-RateLimit-Remaining and Retry-After headers
98
+ */
99
+ readonly rateLimit: (response: RetryResponse, attempt: number) => boolean;
100
+ /**
101
+ * Retry on server errors (5xx status codes)
102
+ */
103
+ readonly serverErrors: (response: RetryResponse) => boolean;
104
+ /**
105
+ * Retry on client errors that might be transient (408, 429)
106
+ */
107
+ readonly transientErrors: (response: RetryResponse) => boolean;
108
+ };
109
+ /**
110
+ * Create custom retry configuration with condition
111
+ *
112
+ * @example
113
+ * ```typescript
114
+ * const customRetry = createRetryConfig({
115
+ * attempts: 5,
116
+ * delay: 2000,
117
+ * shouldRetry: retryConditions.serverErrors
118
+ * });
119
+ * ```
120
+ */
121
+ export declare function createRetryConfig(options: Partial<RetryConfig>): RetryConfig;
122
+ /**
123
+ * Wrap a RetryResponse condition to accept unknown
124
+ * This allows our conditions to work with fetchff's unknown type
125
+ */
126
+ export declare function wrapCondition(condition: (response: RetryResponse, attempt: number) => boolean): (response: unknown, attempt: number) => boolean;
127
+ /**
128
+ * Create a retry condition that limits retries per status code
129
+ *
130
+ * @example
131
+ * ```typescript
132
+ * shouldRetry: createStatusCodeLimits({
133
+ * 500: 5, // Retry 500 errors up to 5 times
134
+ * 503: 3, // Retry 503 errors up to 3 times
135
+ * 429: 10 // Retry rate limits up to 10 times
136
+ * })
137
+ * ```
138
+ */
139
+ export declare function createStatusCodeLimits(limits: Record<number, number>): (response: RetryResponse, attempt: number) => boolean;
140
+ //# sourceMappingURL=conditions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditions.d.ts","sourceRoot":"","sources":["../../../src/api/retry/conditions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAyDnE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe;IAC1B;;OAEG;qCACqB,aAAa;IAErC;;OAEG;qCACqB,aAAa;IAGrC;;;;;;;OAOG;kCACkB,MAAM,EAAE,gBAAgB,aAAa;IAG1D;;;;;;;OAOG;wCACwB,MAAM,iBAAiB,aAAa,WAAW,MAAM;IAGhF;;;;;;;OAOG;sCACsB,MAAM,gBAAgB,MAAM,gBAAgB,aAAa;IAYlF;;;;;;;OAOG;gCACgB,MAAM,EAAE,gBAAgB,aAAa;IAExD;;;;;;;;;;;OAWG;kCAEe,KAAK,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,gBACjE,aAAa,WAAW,MAAM;IAG3C;;;;;;;;;;;;OAYG;kCAEe,KAAK,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,gBACjE,aAAa,WAAW,MAAM;IAG3C;;;OAGG;mCACmB,aAAa,WAAW,MAAM;IAcpD;;OAEG;sCACsB,aAAa;IAUtC;;OAEG;yCACyB,aAAa;CAQjC,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAW5E;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,GAC/D,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAIjD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAYvD"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Retry Mechanism Module
3
+ * Provides retry strategies and utilities for handling failed requests
4
+ *
5
+ * @module retry
6
+ */
7
+ export type { RetryConfig, RetryStrategyName, RetryOption } from '@plyaz/types/api';
8
+ export { retryStrategies, createRetryStrategy, getRetryStrategy, applyRetryStrategy, mergeRetryStrategies, } from './strategies';
9
+ export { retryConditions, createRetryConfig, createStatusCodeLimits, wrapCondition, } from './conditions';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/retry/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpF,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,aAAa,GACd,MAAM,cAAc,CAAC"}
@@ -0,0 +1,56 @@
1
+ import type { RetryConfig, RetryStrategyName } from '@plyaz/types/api';
2
+ /**
3
+ * Pre-configured retry strategies for common use cases
4
+ *
5
+ * @example
6
+ * ```typescript
7
+ * import { retryStrategies } from '@plyaz/api/retry';
8
+ *
9
+ * // Use in API client
10
+ * const api = createApiClient({
11
+ * retry: retryStrategies.aggressive
12
+ * });
13
+ *
14
+ * // Or use by name
15
+ * const api = createApiClient({
16
+ * retry: 'aggressive'
17
+ * });
18
+ * ```
19
+ */
20
+ export declare const retryStrategies: Readonly<Record<RetryStrategyName, RetryConfig>>;
21
+ /**
22
+ * Helper to create custom retry strategy
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * const customRetry = createRetryStrategy({
27
+ * attempts: 5,
28
+ * delay: 2000,
29
+ * backoff: 1.5
30
+ * });
31
+ * ```
32
+ */
33
+ export declare function createRetryStrategy(config: RetryConfig): RetryConfig;
34
+ /**
35
+ * Get retry strategy by name with runtime validation
36
+ */
37
+ export declare function getRetryStrategy(name: RetryStrategyName): RetryConfig;
38
+ /**
39
+ * Apply retry strategy by name or config
40
+ *
41
+ * @param strategy - Strategy name or config object
42
+ * @returns Retry configuration
43
+ *
44
+ * @example
45
+ * ```typescript
46
+ * const config = applyRetryStrategy('aggressive');
47
+ * // or
48
+ * const config = applyRetryStrategy({ attempts: 5 });
49
+ * ```
50
+ */
51
+ export declare function applyRetryStrategy(strategy: RetryStrategyName | RetryConfig | false): RetryConfig | undefined;
52
+ /**
53
+ * Merge multiple retry strategies (last wins)
54
+ */
55
+ export declare function mergeRetryStrategies(...configs: (RetryConfig | undefined)[]): RetryConfig;
56
+ //# sourceMappingURL=strategies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategies.d.ts","sourceRoot":"","sources":["../../../src/api/retry/strategies.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAoB,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAuEzF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,CA2HnE,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAQpE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,GAAG,WAAW,CAsCrE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,iBAAiB,GAAG,WAAW,GAAG,KAAK,GAChD,WAAW,GAAG,SAAS,CAuBzB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,OAAO,EAAE,CAAC,WAAW,GAAG,SAAS,CAAC,EAAE,GAAG,WAAW,CAQzF"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Revalidation Configuration Module
3
+ * Provides revalidation strategies and utilities for fetchff's cache revalidation features
4
+ *
5
+ * @module @plyaz/api/revalidation
6
+ */
7
+ /**
8
+ * Re-export fetchff's revalidation utilities
9
+ * These are direct pass-through exports for manual cache revalidation
10
+ */
11
+ export { revalidate, revalidateAll, removeRevalidators } from 'fetchff';
12
+ /**
13
+ * Export revalidation strategies and utilities
14
+ */
15
+ export { revalidationStrategies, genericPresets, getPresets, extendPresets, resetPresets, getPreset, createRevalidationStrategy, getRevalidationStrategy, applyRevalidationStrategy, isValidStrategyName, mergeRevalidationStrategies, } from './strategies';
16
+ /**
17
+ * Export SSR-safe utilities
18
+ */
19
+ export { getSSRSafeConfig, isRevalidationSupported, calculateCacheDuration, isDataFresh, isCacheValid, createRevalidationKey, isWithinDedupeWindow, getNetworkOptimizedConfig, toFetchffRevalidationConfig, } from './utils';
20
+ /**
21
+ * Export domain-specific presets (separate import)
22
+ * These are not included by default to keep bundle size small
23
+ * Import them explicitly when needed:
24
+ *
25
+ * @example
26
+ * import { domainPresets } from '@plyaz/api/revalidation/presets';
27
+ */
28
+ export { domainPresets, ecommercePresets, socialPresets, financialPresets, contentPresets, enterprisePresets, gamingPresets, iotPresets, healthcarePresets, educationPresets, applyDomainPresets, } from './presets';
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/revalidation/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAExE;;GAEG;AACH,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,UAAU,EACV,aAAa,EACb,YAAY,EACZ,SAAS,EACT,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,SAAS,CAAC;AAEjB;;;;;;;GAOG;AACH,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,WAAW,CAAC"}
@@ -0,0 +1,71 @@
1
+ import type { RevalidationConfig } from '@plyaz/types/api';
2
+ /**
3
+ * E-commerce specific presets
4
+ */
5
+ export declare const ecommercePresets: Record<string, RevalidationConfig>;
6
+ /**
7
+ * Social media specific presets
8
+ */
9
+ export declare const socialPresets: Record<string, RevalidationConfig>;
10
+ /**
11
+ * Financial/Trading specific presets
12
+ */
13
+ export declare const financialPresets: Record<string, RevalidationConfig>;
14
+ /**
15
+ * Content management specific presets
16
+ */
17
+ export declare const contentPresets: Record<string, RevalidationConfig>;
18
+ /**
19
+ * Enterprise/B2B specific presets
20
+ */
21
+ export declare const enterprisePresets: Record<string, RevalidationConfig>;
22
+ /**
23
+ * Gaming specific presets
24
+ */
25
+ export declare const gamingPresets: Record<string, RevalidationConfig>;
26
+ /**
27
+ * IoT/Field application specific presets
28
+ */
29
+ export declare const iotPresets: Record<string, RevalidationConfig>;
30
+ /**
31
+ * Healthcare specific presets
32
+ */
33
+ export declare const healthcarePresets: Record<string, RevalidationConfig>;
34
+ /**
35
+ * Education specific presets
36
+ */
37
+ export declare const educationPresets: Record<string, RevalidationConfig>;
38
+ /**
39
+ * All domain presets grouped by category
40
+ */
41
+ export declare const domainPresets: {
42
+ readonly ecommerce: Record<string, RevalidationConfig>;
43
+ readonly social: Record<string, RevalidationConfig>;
44
+ readonly financial: Record<string, RevalidationConfig>;
45
+ readonly content: Record<string, RevalidationConfig>;
46
+ readonly enterprise: Record<string, RevalidationConfig>;
47
+ readonly gaming: Record<string, RevalidationConfig>;
48
+ readonly iot: Record<string, RevalidationConfig>;
49
+ readonly healthcare: Record<string, RevalidationConfig>;
50
+ readonly education: Record<string, RevalidationConfig>;
51
+ };
52
+ /**
53
+ * Helper function to apply domain presets
54
+ *
55
+ * @param domain - Domain name or custom presets
56
+ * @returns Applied presets
57
+ *
58
+ * @example
59
+ * // Apply a specific domain
60
+ * applyDomainPresets('ecommerce');
61
+ *
62
+ * // Apply multiple domains
63
+ * applyDomainPresets(['ecommerce', 'social']);
64
+ *
65
+ * // Apply custom presets
66
+ * applyDomainPresets({
67
+ * customEndpoint: revalidationStrategies.balanced
68
+ * });
69
+ */
70
+ export declare function applyDomainPresets(domain: keyof typeof domainPresets | (keyof typeof domainPresets)[] | Record<string, RevalidationConfig>): Record<string, RevalidationConfig>;
71
+ //# sourceMappingURL=presets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/api/revalidation/presets.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAiB/D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAa5D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAgB/D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAU7D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAOhE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAO5D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAOzD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAOhE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAO/D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;CAUhB,CAAC;AAEX;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EACF,MAAM,OAAO,aAAa,GAC1B,CAAC,MAAM,OAAO,aAAa,CAAC,EAAE,GAC9B,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GACrC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAcpC"}
@@ -0,0 +1,116 @@
1
+ import type { RevalidationConfig, RevalidationStrategyName } from '@plyaz/types/api';
2
+ /**
3
+ * Pre-configured revalidation strategies with deduplication
4
+ * These are configuration options, not implementations
5
+ *
6
+ * Based on fetchff best practices for different data volatility levels
7
+ */
8
+ export declare const revalidationStrategies: Readonly<Record<RevalidationStrategyName, RevalidationConfig>>;
9
+ /**
10
+ * Generic use case presets
11
+ * These provide semantic naming for common application patterns
12
+ * Can be extended with custom presets via extendPresets()
13
+ */
14
+ export declare const genericPresets: {
15
+ readonly dashboard: RevalidationConfig;
16
+ readonly chat: RevalidationConfig;
17
+ readonly notifications: RevalidationConfig;
18
+ readonly analytics: RevalidationConfig;
19
+ readonly feed: RevalidationConfig;
20
+ readonly content: RevalidationConfig;
21
+ readonly profile: RevalidationConfig;
22
+ readonly settings: RevalidationConfig;
23
+ readonly documentation: RevalidationConfig;
24
+ readonly assets: RevalidationConfig;
25
+ readonly config: RevalidationConfig;
26
+ readonly pwa: RevalidationConfig;
27
+ readonly mobile: RevalidationConfig;
28
+ };
29
+ /**
30
+ * Get all current presets
31
+ *
32
+ * @returns Current preset registry
33
+ */
34
+ export declare function getPresets(): Readonly<Record<string, RevalidationConfig>>;
35
+ /**
36
+ * Extend presets with custom configurations
37
+ *
38
+ * @param customPresets - Custom preset configurations
39
+ * @returns Updated preset registry
40
+ *
41
+ * @example
42
+ * extendPresets({
43
+ * ecommerce: revalidationStrategies.balanced,
44
+ * tradingPlatform: revalidationStrategies.realtime,
45
+ * socialMedia: { ...revalidationStrategies.aggressive, dedupeTime: 500 }
46
+ * });
47
+ */
48
+ export declare function extendPresets(customPresets: Record<string, RevalidationConfig>): Readonly<Record<string, RevalidationConfig>>;
49
+ /**
50
+ * Reset presets to generic defaults
51
+ * Useful for testing or cleanup
52
+ */
53
+ export declare function resetPresets(): void;
54
+ /**
55
+ * Get a preset by name
56
+ *
57
+ * @param name - Preset name
58
+ * @returns Preset configuration or undefined
59
+ */
60
+ export declare function getPreset(name: string): RevalidationConfig | undefined;
61
+ /**
62
+ * Create custom revalidation strategy
63
+ *
64
+ * @param options - Partial revalidation configuration
65
+ * @returns Complete revalidation configuration with defaults
66
+ *
67
+ * @example
68
+ * const customStrategy = createRevalidationStrategy({
69
+ * refetchOnFocus: true,
70
+ * staleTime: 120
71
+ * });
72
+ */
73
+ export declare function createRevalidationStrategy(options: Partial<RevalidationConfig>): RevalidationConfig;
74
+ /**
75
+ * Get a specific strategy with type safety
76
+ *
77
+ * @param name - Strategy name to retrieve
78
+ * @returns The strategy configuration
79
+ *
80
+ * @example
81
+ * const strategy = getRevalidationStrategy('realtime');
82
+ */
83
+ export declare function getRevalidationStrategy(name: RevalidationStrategyName): RevalidationConfig;
84
+ /**
85
+ * Apply revalidation strategy by name or config
86
+ *
87
+ * @param strategy - Strategy name, config object, or false to disable
88
+ * @returns Revalidation configuration or undefined
89
+ *
90
+ * @example
91
+ * const config = applyRevalidationStrategy('realtime');
92
+ * const custom = applyRevalidationStrategy({ refetchOnFocus: true });
93
+ * const disabled = applyRevalidationStrategy(false);
94
+ */
95
+ export declare function applyRevalidationStrategy(strategy: RevalidationConfig | RevalidationStrategyName | false): RevalidationConfig | undefined;
96
+ /**
97
+ * Check if a strategy name is valid
98
+ *
99
+ * @param name - Strategy name to check
100
+ * @returns True if valid strategy name
101
+ */
102
+ export declare function isValidStrategyName(name: string): name is RevalidationStrategyName;
103
+ /**
104
+ * Merge multiple revalidation strategies (last wins)
105
+ *
106
+ * @param configs - Revalidation configurations to merge
107
+ * @returns Merged configuration
108
+ *
109
+ * @example
110
+ * const merged = mergeRevalidationStrategies(
111
+ * revalidationStrategies.balanced,
112
+ * { refetchOnFocus: false }
113
+ * );
114
+ */
115
+ export declare function mergeRevalidationStrategies(...configs: (RevalidationConfig | undefined)[]): RevalidationConfig;
116
+ //# sourceMappingURL=strategies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategies.d.ts","sourceRoot":"","sources":["../../../src/api/revalidation/strategies.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAEV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,kBAAkB,CAAC;AAE1B;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAC3C,MAAM,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,CA0GrD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;CAyBjB,CAAC;AAQX;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAEzE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAC3B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAChD,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAM9C;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAEnC;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEtE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACnC,kBAAkB,CAKpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,wBAAwB,GAAG,kBAAkB,CAyB1F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,kBAAkB,GAAG,wBAAwB,GAAG,KAAK,GAC9D,kBAAkB,GAAG,SAAS,CAehC;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,wBAAwB,CAElF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,OAAO,EAAE,CAAC,kBAAkB,GAAG,SAAS,CAAC,EAAE,GAC7C,kBAAkB,CAEpB"}
@@ -0,0 +1,78 @@
1
+ import type { RevalidationConfig } from '@plyaz/types/api';
2
+ /**
3
+ * Get SSR-safe revalidation configuration
4
+ * Disables browser-specific features in server environment
5
+ *
6
+ * @param config - Original revalidation configuration
7
+ * @returns SSR-safe configuration
8
+ *
9
+ * @example
10
+ * const safeConfig = getSSRSafeConfig({
11
+ * refetchOnFocus: true,
12
+ * refetchOnReconnect: true
13
+ * });
14
+ * // On server: { refetchOnFocus: false, refetchOnReconnect: false }
15
+ * // On client: { refetchOnFocus: true, refetchOnReconnect: true }
16
+ */
17
+ export declare function getSSRSafeConfig(config: RevalidationConfig): RevalidationConfig;
18
+ /**
19
+ * Check if revalidation features are supported
20
+ *
21
+ * @returns True if browser supports focus/online events
22
+ */
23
+ export declare function isRevalidationSupported(): boolean;
24
+ /**
25
+ * Calculate effective cache duration based on config
26
+ *
27
+ * @param config - Revalidation configuration
28
+ * @returns Total cache duration in milliseconds
29
+ */
30
+ export declare function calculateCacheDuration(config: RevalidationConfig): number;
31
+ /**
32
+ * Determine if data should be considered fresh
33
+ *
34
+ * @param lastFetchTime - Timestamp of last fetch
35
+ * @param staleTime - Stale time in seconds
36
+ * @returns True if data is still fresh
37
+ */
38
+ export declare function isDataFresh(lastFetchTime: number, staleTime: number): boolean;
39
+ /**
40
+ * Determine if cache is still valid
41
+ *
42
+ * @param lastFetchTime - Timestamp of last fetch
43
+ * @param cacheTime - Cache time in seconds
44
+ * @returns True if cache is still valid
45
+ */
46
+ export declare function isCacheValid(lastFetchTime: number, cacheTime: number): boolean;
47
+ /**
48
+ * Create a revalidation key for deduplication
49
+ *
50
+ * @param url - Request URL
51
+ * @param params - Request parameters
52
+ * @returns Unique key for the request
53
+ */
54
+ export declare function createRevalidationKey(url: string, params?: Record<string, unknown>): string;
55
+ /**
56
+ * Check if request is within deduplication window
57
+ *
58
+ * @param lastRequestTime - Timestamp of last request
59
+ * @param dedupeTime - Deduplication window in milliseconds
60
+ * @returns True if within deduplication window
61
+ */
62
+ export declare function isWithinDedupeWindow(lastRequestTime: number, dedupeTime: number): boolean;
63
+ /**
64
+ * Get optimal revalidation config based on network conditions
65
+ *
66
+ * @param baseConfig - Base revalidation configuration
67
+ * @returns Optimized configuration for current network
68
+ */
69
+ export declare function getNetworkOptimizedConfig(baseConfig: RevalidationConfig): RevalidationConfig;
70
+ /**
71
+ * Convert our revalidation config to fetchff format
72
+ * Maps our naming conventions to fetchff's expected properties
73
+ *
74
+ * @param config - Our revalidation configuration
75
+ * @returns fetchff-compatible configuration
76
+ */
77
+ export declare function toFetchffRevalidationConfig(config: RevalidationConfig): Record<string, unknown>;
78
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/api/revalidation/utils.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAG3D;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,GAAG,kBAAkB,CAS/E;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CA0BjD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAIzE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAI7E;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAO9E;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAwB3F;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAMzF;AA4BD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,kBAAkB,GAAG,kBAAkB,CAuB5F;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2B/F"}