tiny-essentials 1.28.19 → 1.29.1

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 (556) hide show
  1. package/README.md +1 -1
  2. package/changelog/1/28/19.md +24 -0
  3. package/changelog/1/29/0.md +58 -0
  4. package/changelog/1/29/1.md +11 -0
  5. package/dist/v1/ColorSafeStringify.min.js +1 -1
  6. package/dist/v1/TinyAdvancedRaffle.min.js +1 -1
  7. package/dist/v1/TinyAfterScrollWatcher.min.js +1 -1
  8. package/dist/v1/TinyAnalogClock.min.js +1 -1
  9. package/dist/v1/TinyArrayComparator.min.js +1 -1
  10. package/dist/v1/TinyArrayPaginator.min.js +1 -1
  11. package/dist/v1/TinyBasicsEs.min.js +1 -1
  12. package/dist/v1/TinyBrowserMonitor.min.js +1 -0
  13. package/dist/v1/TinyClassManager.min.js +1 -1
  14. package/dist/v1/TinyClipboard.min.js +1 -1
  15. package/dist/v1/TinyCloner.min.js +1 -0
  16. package/dist/v1/TinyColorConverter.min.js +1 -1
  17. package/dist/v1/TinyColorValidator.min.js +1 -1
  18. package/dist/v1/TinyCookieConsent.min.js +1 -1
  19. package/dist/v1/TinyDayNightCycle.min.js +1 -1
  20. package/dist/v1/TinyDebugger.min.js +1 -1
  21. package/dist/v1/TinyDomReadyManager.min.js +1 -1
  22. package/dist/v1/TinyDragDropDetector.min.js +1 -1
  23. package/dist/v1/TinyDragger.min.js +1 -1
  24. package/dist/v1/TinyElementObserver.min.js +1 -1
  25. package/dist/v1/TinyEssentials.min.js +1 -1
  26. package/dist/v1/TinyGamepad.min.js +1 -1
  27. package/dist/v1/TinyHtml.min.js +1 -1
  28. package/dist/v1/TinyHtmlTagRegexBuilder.min.js +1 -0
  29. package/dist/v1/TinyHttpResponseRegistry.min.js +1 -0
  30. package/dist/v1/TinyI18.min.js +1 -1
  31. package/dist/v1/TinyIframeEvents.min.js +1 -1
  32. package/dist/v1/TinyInventory.min.js +1 -1
  33. package/dist/v1/TinyInventoryTrader.min.js +1 -1
  34. package/dist/v1/TinyLevelUp.min.js +1 -1
  35. package/dist/v1/TinyLoadingScreen.min.js +1 -1
  36. package/dist/v1/TinyLocalStorage.min.js +1 -1
  37. package/dist/v1/TinyMaInSys.min.js +1 -1
  38. package/dist/v1/TinyMapCache.min.js +1 -0
  39. package/dist/v1/TinyMediaPlayer.min.js +1 -1
  40. package/dist/v1/TinyNeedBar.min.js +1 -1
  41. package/dist/v1/TinyNewWinEvents.min.js +1 -1
  42. package/dist/v1/TinyNotificationAdapter.min.js +1 -0
  43. package/dist/v1/TinyNotifications.min.js +1 -1
  44. package/dist/v1/TinyNotifyCenter.min.js +1 -1
  45. package/dist/v1/TinyOPFSFileSystem.min.js +1 -0
  46. package/dist/v1/TinyPasswordValidator.min.js +1 -0
  47. package/dist/v1/TinyPluginPackage.min.js +1 -0
  48. package/dist/v1/TinyPromiseQueue.min.js +1 -1
  49. package/dist/v1/TinyPushManager.min.js +1 -0
  50. package/dist/v1/TinyPushPayload.min.js +1 -0
  51. package/dist/v1/TinyPushRouter.min.js +1 -0
  52. package/dist/v1/TinyRadioFm.min.js +1 -1
  53. package/dist/v1/TinyRateLimiter.min.js +1 -1
  54. package/dist/v1/TinyRegexEs.min.js +1 -0
  55. package/dist/v1/TinyRouter.min.js +1 -0
  56. package/dist/v1/TinyServiceWorker.min.js +1 -0
  57. package/dist/v1/TinyServiceWorkerEngine.min.js +1 -0
  58. package/dist/v1/TinySetMapPackage.min.js +1 -0
  59. package/dist/v1/TinySimpleDice.min.js +1 -1
  60. package/dist/v1/TinySmartScroller.min.js +1 -1
  61. package/dist/v1/TinyStorageBucketFileSystem.min.js +1 -0
  62. package/dist/v1/TinyTextDiffer.min.js +1 -1
  63. package/dist/v1/TinyTextRangeEditor.min.js +1 -1
  64. package/dist/v1/TinyTextarea.min.js +1 -1
  65. package/dist/v1/TinyThrottledApi.min.js +1 -0
  66. package/dist/v1/TinyTimeout.min.js +1 -1
  67. package/dist/v1/TinyToastNotify.min.js +1 -1
  68. package/dist/v1/TinyUploadClicker.min.js +1 -1
  69. package/dist/v1/TinyUriParser.min.js +1 -0
  70. package/dist/v1/TinyVersion.min.js +1 -0
  71. package/dist/v1/TinyWebWorker.min.js +1 -0
  72. package/dist/v1/TinyWebWorkerEngine.min.js +1 -0
  73. package/dist/v1/UltraRandomMsgGen.min.js +1 -1
  74. package/dist/v1/basics/array.cjs +2 -2
  75. package/dist/v1/basics/array.d.mts +2 -0
  76. package/dist/v1/basics/array.d.mts.map +1 -1
  77. package/dist/v1/basics/array.mjs +2 -1
  78. package/dist/v1/basics/browserDetector.cjs +37 -12
  79. package/dist/v1/basics/browserDetector.d.mts +8 -0
  80. package/dist/v1/basics/browserDetector.d.mts.map +1 -1
  81. package/dist/v1/basics/browserDetector.mjs +32 -13
  82. package/dist/v1/basics/crypto.cjs +23 -0
  83. package/dist/v1/basics/crypto.d.mts +10 -0
  84. package/dist/v1/basics/crypto.d.mts.map +1 -0
  85. package/dist/v1/basics/crypto.mjs +18 -0
  86. package/dist/v1/basics/html.cjs +0 -3
  87. package/dist/v1/basics/html.d.mts.map +1 -1
  88. package/dist/v1/basics/html.mjs +0 -2
  89. package/dist/v1/basics/index.cjs +8 -1
  90. package/dist/v1/basics/index.d.mts +6 -5
  91. package/dist/v1/basics/index.d.mts.map +1 -1
  92. package/dist/v1/basics/index.mjs +6 -5
  93. package/dist/v1/basics/objChecker.cjs +88 -0
  94. package/dist/v1/basics/objChecker.d.mts +26 -0
  95. package/dist/v1/basics/objChecker.d.mts.map +1 -1
  96. package/dist/v1/basics/objChecker.mjs +74 -0
  97. package/dist/v1/basics/objFilter.cjs +234 -93
  98. package/dist/v1/basics/objFilter.d.mts +96 -22
  99. package/dist/v1/basics/objFilter.d.mts.map +1 -1
  100. package/dist/v1/basics/objFilter.mjs +216 -92
  101. package/dist/v1/basics/promiseUtils.cjs +48 -12
  102. package/dist/v1/basics/promiseUtils.d.mts +45 -12
  103. package/dist/v1/basics/promiseUtils.d.mts.map +1 -1
  104. package/dist/v1/basics/promiseUtils.mjs +47 -12
  105. package/dist/v1/basics/text.cjs +0 -12
  106. package/dist/v1/basics/text.d.mts +0 -10
  107. package/dist/v1/basics/text.d.mts.map +1 -1
  108. package/dist/v1/basics/text.mjs +0 -10
  109. package/dist/v1/index.cjs +88 -3
  110. package/dist/v1/index.d.mts +31 -6
  111. package/dist/v1/index.d.mts.map +1 -1
  112. package/dist/v1/index.mjs +32 -7
  113. package/dist/v1/jsdoc/EventEmitter.cjs +4 -0
  114. package/dist/v1/jsdoc/EventEmitter.d.mts +33 -0
  115. package/dist/v1/jsdoc/EventEmitter.d.mts.map +1 -0
  116. package/dist/v1/jsdoc/EventEmitter.mjs +18 -0
  117. package/dist/v1/libs/array/TinyArrayComparator.cjs +240 -25
  118. package/dist/v1/libs/array/TinyArrayComparator.d.mts +130 -22
  119. package/dist/v1/libs/array/TinyArrayComparator.d.mts.map +1 -1
  120. package/dist/v1/libs/array/TinyArrayComparator.mjs +210 -24
  121. package/dist/v1/libs/fs/constants.cjs +74 -0
  122. package/dist/v1/libs/fs/constants.d.mts +22 -0
  123. package/dist/v1/libs/fs/constants.d.mts.map +1 -0
  124. package/dist/v1/libs/fs/constants.mjs +53 -0
  125. package/dist/v1/libs/fs/encoding.cjs +118 -0
  126. package/dist/v1/libs/fs/encoding.d.mts +50 -0
  127. package/dist/v1/libs/fs/encoding.d.mts.map +1 -0
  128. package/dist/v1/libs/fs/encoding.mjs +102 -0
  129. package/dist/v1/libs/fs/error.cjs +188 -0
  130. package/dist/v1/libs/fs/error.d.mts +105 -0
  131. package/dist/v1/libs/fs/error.d.mts.map +1 -0
  132. package/dist/v1/libs/fs/error.mjs +158 -0
  133. package/dist/v1/libs/fs/handle.cjs +121 -0
  134. package/dist/v1/libs/fs/handle.d.mts +56 -0
  135. package/dist/v1/libs/fs/handle.d.mts.map +1 -0
  136. package/dist/v1/libs/fs/handle.mjs +100 -0
  137. package/dist/v1/libs/fs/index.cjs +700 -0
  138. package/dist/v1/libs/fs/index.d.mts +377 -0
  139. package/dist/v1/libs/fs/index.d.mts.map +1 -0
  140. package/dist/v1/libs/fs/index.mjs +630 -0
  141. package/dist/v1/libs/fs/path.cjs +234 -0
  142. package/dist/v1/libs/fs/path.d.mts +176 -0
  143. package/dist/v1/libs/fs/path.d.mts.map +1 -0
  144. package/dist/v1/libs/fs/path.mjs +197 -0
  145. package/dist/v1/libs/fs/plugins/OPFS/StorageBucket.cjs +202 -0
  146. package/dist/v1/libs/fs/plugins/OPFS/StorageBucket.d.mts +121 -0
  147. package/dist/v1/libs/fs/plugins/OPFS/StorageBucket.d.mts.map +1 -0
  148. package/dist/v1/libs/fs/plugins/OPFS/StorageBucket.mjs +172 -0
  149. package/dist/v1/libs/fs/plugins/OPFS/index.cjs +334 -0
  150. package/dist/v1/libs/fs/plugins/OPFS/index.d.mts +98 -0
  151. package/dist/v1/libs/fs/plugins/OPFS/index.d.mts.map +1 -0
  152. package/dist/v1/libs/fs/plugins/OPFS/index.mjs +300 -0
  153. package/dist/v1/libs/fs/stats.cjs +245 -0
  154. package/dist/v1/libs/fs/stats.d.mts +226 -0
  155. package/dist/v1/libs/fs/stats.d.mts.map +1 -0
  156. package/dist/v1/libs/fs/stats.mjs +197 -0
  157. package/dist/v1/libs/html/events/TinyIframeEvents.cjs +10 -1
  158. package/dist/v1/libs/html/events/TinyIframeEvents.d.mts +9 -2
  159. package/dist/v1/libs/html/events/TinyIframeEvents.d.mts.map +1 -1
  160. package/dist/v1/libs/html/events/TinyIframeEvents.mjs +8 -1
  161. package/dist/v1/libs/html/events/TinyNewWinEvents.cjs +14 -3
  162. package/dist/v1/libs/html/events/TinyNewWinEvents.d.mts +21 -5
  163. package/dist/v1/libs/html/events/TinyNewWinEvents.d.mts.map +1 -1
  164. package/dist/v1/libs/html/events/TinyNewWinEvents.mjs +12 -3
  165. package/dist/v1/libs/html/scroll/TinySmartScroller.cjs +13 -1
  166. package/dist/v1/libs/html/scroll/TinySmartScroller.d.mts +29 -2
  167. package/dist/v1/libs/html/scroll/TinySmartScroller.d.mts.map +1 -1
  168. package/dist/v1/libs/html/scroll/TinySmartScroller.mjs +11 -1
  169. package/dist/v1/libs/math/TinyAdvancedRaffle.cjs +13 -1
  170. package/dist/v1/libs/math/TinyAdvancedRaffle.d.mts +32 -2
  171. package/dist/v1/libs/math/TinyAdvancedRaffle.d.mts.map +1 -1
  172. package/dist/v1/libs/math/TinyAdvancedRaffle.mjs +11 -1
  173. package/dist/v1/libs/math/TinyTimeout.cjs +0 -14
  174. package/dist/v1/libs/math/TinyTimeout.d.mts +0 -11
  175. package/dist/v1/libs/math/TinyTimeout.d.mts.map +1 -1
  176. package/dist/v1/libs/math/TinyTimeout.mjs +0 -13
  177. package/dist/v1/libs/media/TinyMediaPlayer/index.cjs +25 -1
  178. package/dist/v1/libs/media/TinyMediaPlayer/index.d.mts +35 -2
  179. package/dist/v1/libs/media/TinyMediaPlayer/index.d.mts.map +1 -1
  180. package/dist/v1/libs/media/TinyMediaPlayer/index.mjs +23 -1
  181. package/dist/v1/libs/media/TinyMediaPlayer.cjs +2 -2
  182. package/dist/v1/libs/media/TinyMediaPlayer.d.mts +2 -2
  183. package/dist/v1/libs/media/TinyMediaPlayer.d.mts.map +1 -1
  184. package/dist/v1/libs/media/TinyMediaPlayer.mjs +2 -2
  185. package/dist/v1/libs/media/TinyRadioFm.cjs +19 -1
  186. package/dist/v1/libs/media/TinyRadioFm.d.mts +78 -2
  187. package/dist/v1/libs/media/TinyRadioFm.d.mts.map +1 -1
  188. package/dist/v1/libs/media/TinyRadioFm.mjs +17 -1
  189. package/dist/v1/libs/plugin/TinyPlugin.cjs +1630 -0
  190. package/dist/v1/libs/plugin/TinyPlugin.d.mts +753 -0
  191. package/dist/v1/libs/plugin/TinyPlugin.d.mts.map +1 -0
  192. package/dist/v1/libs/plugin/TinyPlugin.mjs +1376 -0
  193. package/dist/v1/libs/plugin/TinyVersion.cjs +204 -0
  194. package/dist/v1/libs/plugin/TinyVersion.d.mts +70 -0
  195. package/dist/v1/libs/plugin/TinyVersion.d.mts.map +1 -0
  196. package/dist/v1/libs/plugin/TinyVersion.mjs +179 -0
  197. package/dist/v1/libs/router/TinyRouter.cjs +661 -0
  198. package/dist/v1/libs/router/TinyRouter.d.mts +320 -0
  199. package/dist/v1/libs/router/TinyRouter.d.mts.map +1 -0
  200. package/dist/v1/libs/router/TinyRouter.mjs +572 -0
  201. package/dist/v1/libs/storage/TinyLocalStorage.cjs +20 -1
  202. package/dist/v1/libs/storage/TinyLocalStorage.d.mts +64 -2
  203. package/dist/v1/libs/storage/TinyLocalStorage.d.mts.map +1 -1
  204. package/dist/v1/libs/storage/TinyLocalStorage.mjs +18 -1
  205. package/dist/v1/libs/storage/TinyMapCache.cjs +373 -0
  206. package/dist/v1/libs/storage/TinyMapCache.d.mts +274 -0
  207. package/dist/v1/libs/storage/TinyMapCache.d.mts.map +1 -0
  208. package/dist/v1/libs/storage/TinyMapCache.mjs +333 -0
  209. package/dist/v1/libs/storage/TinySetMapDatabase.cjs +1167 -0
  210. package/dist/v1/libs/storage/TinySetMapDatabase.d.mts +603 -0
  211. package/dist/v1/libs/storage/TinySetMapDatabase.d.mts.map +1 -0
  212. package/dist/v1/libs/storage/TinySetMapDatabase.mjs +1059 -0
  213. package/dist/v1/libs/sw/browser/TinyNotificationAdapter.cjs +126 -0
  214. package/dist/v1/libs/sw/browser/TinyNotificationAdapter.d.mts +132 -0
  215. package/dist/v1/libs/sw/browser/TinyNotificationAdapter.d.mts.map +1 -0
  216. package/dist/v1/libs/sw/browser/TinyNotificationAdapter.mjs +109 -0
  217. package/dist/v1/libs/sw/browser/TinyPushManager.cjs +310 -0
  218. package/dist/v1/libs/sw/browser/TinyPushManager.d.mts +168 -0
  219. package/dist/v1/libs/sw/browser/TinyPushManager.d.mts.map +1 -0
  220. package/dist/v1/libs/sw/browser/TinyPushManager.mjs +264 -0
  221. package/dist/v1/libs/sw/browser/TinyServiceWorker.cjs +1060 -0
  222. package/dist/v1/libs/sw/browser/TinyServiceWorker.d.mts +348 -0
  223. package/dist/v1/libs/sw/browser/TinyServiceWorker.d.mts.map +1 -0
  224. package/dist/v1/libs/sw/browser/TinyServiceWorker.mjs +933 -0
  225. package/dist/v1/libs/sw/browser/plugins/TabManager.cjs +315 -0
  226. package/dist/v1/libs/sw/browser/plugins/TabManager.d.mts +178 -0
  227. package/dist/v1/libs/sw/browser/plugins/TabManager.d.mts.map +1 -0
  228. package/dist/v1/libs/sw/browser/plugins/TabManager.mjs +274 -0
  229. package/dist/v1/libs/sw/browser/utils.cjs +28 -0
  230. package/dist/v1/libs/sw/browser/utils.d.mts +8 -0
  231. package/dist/v1/libs/sw/browser/utils.d.mts.map +1 -0
  232. package/dist/v1/libs/sw/browser/utils.mjs +21 -0
  233. package/dist/v1/libs/sw/service/TinyPushRouter.cjs +222 -0
  234. package/dist/v1/libs/sw/service/TinyPushRouter.d.mts +138 -0
  235. package/dist/v1/libs/sw/service/TinyPushRouter.d.mts.map +1 -0
  236. package/dist/v1/libs/sw/service/TinyPushRouter.mjs +201 -0
  237. package/dist/v1/libs/sw/service/TinyServiceWorkerEngine.cjs +3016 -0
  238. package/dist/v1/libs/sw/service/TinyServiceWorkerEngine.d.mts +993 -0
  239. package/dist/v1/libs/sw/service/TinyServiceWorkerEngine.d.mts.map +1 -0
  240. package/dist/v1/libs/sw/service/TinyServiceWorkerEngine.mjs +2558 -0
  241. package/dist/v1/libs/sw/service/plugins/GlobBypassPlugin.cjs +88 -0
  242. package/dist/v1/libs/sw/service/plugins/GlobBypassPlugin.d.mts +32 -0
  243. package/dist/v1/libs/sw/service/plugins/GlobBypassPlugin.d.mts.map +1 -0
  244. package/dist/v1/libs/sw/service/plugins/GlobBypassPlugin.mjs +69 -0
  245. package/dist/v1/libs/sw/service/plugins/GlobCachePlugin.cjs +112 -0
  246. package/dist/v1/libs/sw/service/plugins/GlobCachePlugin.d.mts +31 -0
  247. package/dist/v1/libs/sw/service/plugins/GlobCachePlugin.d.mts.map +1 -0
  248. package/dist/v1/libs/sw/service/plugins/GlobCachePlugin.mjs +91 -0
  249. package/dist/v1/libs/sw/service/plugins/Ping.cjs +32 -0
  250. package/dist/v1/libs/sw/service/plugins/Ping.d.mts +9 -0
  251. package/dist/v1/libs/sw/service/plugins/Ping.d.mts.map +1 -0
  252. package/dist/v1/libs/sw/service/plugins/Ping.mjs +25 -0
  253. package/dist/v1/libs/sw/service/plugins/TabManager.cjs +457 -0
  254. package/dist/v1/libs/sw/service/plugins/TabManager.d.mts +91 -0
  255. package/dist/v1/libs/sw/service/plugins/TabManager.d.mts.map +1 -0
  256. package/dist/v1/libs/sw/service/plugins/TabManager.mjs +372 -0
  257. package/dist/v1/libs/sw/service/plugins/ViteFileDetector.cjs +180 -0
  258. package/dist/v1/libs/sw/service/plugins/ViteFileDetector.d.mts +28 -0
  259. package/dist/v1/libs/sw/service/plugins/ViteFileDetector.d.mts.map +1 -0
  260. package/dist/v1/libs/sw/service/plugins/ViteFileDetector.mjs +148 -0
  261. package/dist/v1/libs/sw/service/shared/TinyPushPayload.cjs +199 -0
  262. package/dist/v1/libs/sw/service/shared/TinyPushPayload.d.mts +80 -0
  263. package/dist/v1/libs/sw/service/shared/TinyPushPayload.d.mts.map +1 -0
  264. package/dist/v1/libs/sw/service/shared/TinyPushPayload.mjs +174 -0
  265. package/dist/v1/libs/sw/utils.cjs +57 -0
  266. package/dist/v1/libs/sw/utils.d.mts +173 -0
  267. package/dist/v1/libs/sw/utils.d.mts.map +1 -0
  268. package/dist/v1/libs/sw/utils.mjs +50 -0
  269. package/dist/v1/libs/text/TinyI18/Browser-NON-DOM.cjs +57 -0
  270. package/dist/v1/libs/text/TinyI18/Browser-NON-DOM.d.mts +39 -0
  271. package/dist/v1/libs/text/TinyI18/Browser-NON-DOM.d.mts.map +1 -0
  272. package/dist/v1/libs/text/TinyI18/Browser-NON-DOM.mjs +48 -0
  273. package/dist/v1/libs/text/TinyI18/Browser.cjs +64 -0
  274. package/dist/v1/libs/text/TinyI18/Browser.d.mts +47 -0
  275. package/dist/v1/libs/text/TinyI18/Browser.d.mts.map +1 -0
  276. package/dist/v1/libs/text/TinyI18/Browser.mjs +57 -0
  277. package/dist/v1/libs/text/TinyI18/Node.cjs +49 -0
  278. package/dist/v1/libs/text/TinyI18/Node.d.mts +38 -0
  279. package/dist/v1/libs/text/TinyI18/Node.d.mts.map +1 -0
  280. package/dist/v1/libs/text/TinyI18/Node.mjs +43 -0
  281. package/dist/v1/libs/text/TinyI18/browser-utils.cjs +17 -0
  282. package/dist/v1/libs/text/TinyI18/browser-utils.d.mts +8 -0
  283. package/dist/v1/libs/text/TinyI18/browser-utils.d.mts.map +1 -0
  284. package/dist/v1/libs/text/TinyI18/browser-utils.mjs +13 -0
  285. package/dist/v1/libs/text/{TinyI18.cjs → TinyI18/index.cjs} +205 -104
  286. package/dist/v1/libs/text/{TinyI18.d.mts → TinyI18/index.d.mts} +141 -92
  287. package/dist/v1/libs/text/TinyI18/index.d.mts.map +1 -0
  288. package/dist/v1/libs/text/{TinyI18.mjs → TinyI18/index.mjs} +195 -101
  289. package/dist/v1/libs/tools/TinyBrowserMonitor.cjs +1088 -0
  290. package/dist/v1/libs/tools/TinyBrowserMonitor.d.mts +621 -0
  291. package/dist/v1/libs/tools/TinyBrowserMonitor.d.mts.map +1 -0
  292. package/dist/v1/libs/tools/TinyBrowserMonitor.mjs +940 -0
  293. package/dist/v1/libs/tools/TinyDebugger.cjs +180 -19
  294. package/dist/v1/libs/tools/TinyDebugger.d.mts +220 -24
  295. package/dist/v1/libs/tools/TinyDebugger.d.mts.map +1 -1
  296. package/dist/v1/libs/tools/TinyDebugger.mjs +161 -19
  297. package/dist/v1/libs/tools/TinyHtmlTagRegexBuilder.cjs +256 -0
  298. package/dist/v1/libs/tools/TinyHtmlTagRegexBuilder.d.mts +125 -0
  299. package/dist/v1/libs/tools/TinyHtmlTagRegexBuilder.d.mts.map +1 -0
  300. package/dist/v1/libs/tools/TinyHtmlTagRegexBuilder.mjs +223 -0
  301. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser-NON-DOM.cjs +23 -0
  302. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser-NON-DOM.d.mts +17 -0
  303. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser-NON-DOM.d.mts.map +1 -0
  304. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser-NON-DOM.mjs +19 -0
  305. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser.cjs +23 -0
  306. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser.d.mts +17 -0
  307. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser.d.mts.map +1 -0
  308. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Browser.mjs +19 -0
  309. package/dist/v1/libs/tools/TinyHttpResponseRegistry/EmptyRequestCodes.cjs +390 -0
  310. package/dist/v1/libs/tools/TinyHttpResponseRegistry/EmptyRequestCodes.d.mts +9 -0
  311. package/dist/v1/libs/tools/TinyHttpResponseRegistry/EmptyRequestCodes.d.mts.map +1 -0
  312. package/dist/v1/libs/tools/TinyHttpResponseRegistry/EmptyRequestCodes.mjs +387 -0
  313. package/dist/v1/libs/tools/TinyHttpResponseRegistry/JsDoc.cjs +2 -0
  314. package/dist/v1/libs/tools/TinyHttpResponseRegistry/JsDoc.d.mts +27 -0
  315. package/dist/v1/libs/tools/TinyHttpResponseRegistry/JsDoc.d.mts.map +1 -0
  316. package/dist/v1/libs/tools/TinyHttpResponseRegistry/JsDoc.mjs +12 -0
  317. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/LICENSE +53 -0
  318. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/index.cjs +405 -0
  319. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/index.d.mts +34 -0
  320. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/index.d.mts.map +1 -0
  321. package/dist/v1/libs/tools/TinyHttpResponseRegistry/MozillaRequestCodes/index.mjs +342 -0
  322. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Node.cjs +23 -0
  323. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Node.d.mts +17 -0
  324. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Node.d.mts.map +1 -0
  325. package/dist/v1/libs/tools/TinyHttpResponseRegistry/Node.mjs +19 -0
  326. package/dist/v1/libs/tools/TinyHttpResponseRegistry/RequestCodes.cjs +327 -0
  327. package/dist/v1/libs/tools/TinyHttpResponseRegistry/RequestCodes.d.mts +9 -0
  328. package/dist/v1/libs/tools/TinyHttpResponseRegistry/RequestCodes.d.mts.map +1 -0
  329. package/dist/v1/libs/tools/TinyHttpResponseRegistry/RequestCodes.mjs +324 -0
  330. package/dist/v1/libs/tools/TinyHttpResponseRegistry/index.cjs +268 -0
  331. package/dist/v1/libs/tools/TinyHttpResponseRegistry/index.d.mts +107 -0
  332. package/dist/v1/libs/tools/TinyHttpResponseRegistry/index.d.mts.map +1 -0
  333. package/dist/v1/libs/tools/TinyHttpResponseRegistry/index.mjs +238 -0
  334. package/dist/v1/libs/tools/TinyPasswordValidator.cjs +491 -0
  335. package/dist/v1/libs/tools/TinyPasswordValidator.d.mts +246 -0
  336. package/dist/v1/libs/tools/TinyPasswordValidator.d.mts.map +1 -0
  337. package/dist/v1/libs/tools/TinyPasswordValidator.mjs +434 -0
  338. package/dist/v1/libs/tools/TinyPkgExportValidator.cjs +48 -0
  339. package/dist/v1/libs/tools/TinyPkgExportValidator.d.mts +14 -0
  340. package/dist/v1/libs/tools/TinyPkgExportValidator.d.mts.map +1 -1
  341. package/dist/v1/libs/tools/TinyPkgExportValidator.mjs +44 -0
  342. package/dist/v1/libs/tools/TinySiteMap.cjs +1029 -0
  343. package/dist/v1/libs/tools/TinySiteMap.d.mts +429 -0
  344. package/dist/v1/libs/tools/TinySiteMap.d.mts.map +1 -0
  345. package/dist/v1/libs/tools/TinySiteMap.mjs +910 -0
  346. package/dist/v1/libs/tools/TinySiteMapStream.cjs +121 -0
  347. package/dist/v1/libs/tools/TinySiteMapStream.d.mts +51 -0
  348. package/dist/v1/libs/tools/TinySiteMapStream.d.mts.map +1 -0
  349. package/dist/v1/libs/tools/TinySiteMapStream.mjs +85 -0
  350. package/dist/v1/libs/tools/TinyURLSecurityVerifier.cjs +444 -0
  351. package/dist/v1/libs/tools/TinyURLSecurityVerifier.d.mts +217 -0
  352. package/dist/v1/libs/tools/TinyURLSecurityVerifier.d.mts.map +1 -0
  353. package/dist/v1/libs/tools/TinyURLSecurityVerifier.mjs +394 -0
  354. package/dist/v1/libs/tools/TinyUriParser/BlueSky.cjs +613 -0
  355. package/dist/v1/libs/tools/TinyUriParser/BlueSky.d.mts +152 -0
  356. package/dist/v1/libs/tools/TinyUriParser/BlueSky.d.mts.map +1 -0
  357. package/dist/v1/libs/tools/TinyUriParser/BlueSky.mjs +527 -0
  358. package/dist/v1/libs/tools/TinyUriParser/Discord.cjs +1119 -0
  359. package/dist/v1/libs/tools/TinyUriParser/Discord.d.mts +306 -0
  360. package/dist/v1/libs/tools/TinyUriParser/Discord.d.mts.map +1 -0
  361. package/dist/v1/libs/tools/TinyUriParser/Discord.mjs +968 -0
  362. package/dist/v1/libs/tools/TinyUriParser/MatrixProtocol.cjs +469 -0
  363. package/dist/v1/libs/tools/TinyUriParser/MatrixProtocol.d.mts +80 -0
  364. package/dist/v1/libs/tools/TinyUriParser/MatrixProtocol.d.mts.map +1 -0
  365. package/dist/v1/libs/tools/TinyUriParser/MatrixProtocol.mjs +379 -0
  366. package/dist/v1/libs/tools/TinyUriParser.cjs +217 -0
  367. package/dist/v1/libs/tools/TinyUriParser.d.mts +109 -0
  368. package/dist/v1/libs/tools/TinyUriParser.d.mts.map +1 -0
  369. package/dist/v1/libs/tools/TinyUriParser.mjs +183 -0
  370. package/dist/v1/libs/utils/TinyCloner.cjs +466 -0
  371. package/dist/v1/libs/utils/TinyCloner.d.mts +221 -0
  372. package/dist/v1/libs/utils/TinyCloner.d.mts.map +1 -0
  373. package/dist/v1/libs/utils/TinyCloner.mjs +416 -0
  374. package/dist/v1/libs/utils/TinyPromiseQueue.cjs +1 -1
  375. package/dist/v1/libs/utils/TinyPromiseQueue.d.mts +2 -2
  376. package/dist/v1/libs/utils/TinyPromiseQueue.d.mts.map +1 -1
  377. package/dist/v1/libs/utils/TinyPromiseQueue.mjs +1 -1
  378. package/dist/v1/libs/utils/TinyThrottledApi.cjs +333 -0
  379. package/dist/v1/libs/utils/TinyThrottledApi.d.mts +163 -0
  380. package/dist/v1/libs/utils/TinyThrottledApi.d.mts.map +1 -0
  381. package/dist/v1/libs/utils/TinyThrottledApi.mjs +294 -0
  382. package/dist/v1/libs/worker/browser/TinyWebWorker.cjs +342 -0
  383. package/dist/v1/libs/worker/browser/TinyWebWorker.d.mts +97 -0
  384. package/dist/v1/libs/worker/browser/TinyWebWorker.d.mts.map +1 -0
  385. package/dist/v1/libs/worker/browser/TinyWebWorker.mjs +305 -0
  386. package/dist/v1/libs/worker/engine/TinyWebWorkerEngine.cjs +346 -0
  387. package/dist/v1/libs/worker/engine/TinyWebWorkerEngine.d.mts +127 -0
  388. package/dist/v1/libs/worker/engine/TinyWebWorkerEngine.d.mts.map +1 -0
  389. package/dist/v1/libs/worker/engine/TinyWebWorkerEngine.mjs +304 -0
  390. package/dist/v1/regexp/Email.cjs +185 -0
  391. package/dist/v1/regexp/Email.d.mts +73 -0
  392. package/dist/v1/regexp/Email.d.mts.map +1 -0
  393. package/dist/v1/regexp/Email.mjs +153 -0
  394. package/dist/v1/regexp/Glob.cjs +293 -0
  395. package/dist/v1/regexp/Glob.d.mts +45 -0
  396. package/dist/v1/regexp/Glob.d.mts.map +1 -0
  397. package/dist/v1/regexp/Glob.mjs +260 -0
  398. package/dist/v1/regexp/Ipv4.cjs +57 -0
  399. package/dist/v1/regexp/Ipv4.d.mts +29 -0
  400. package/dist/v1/regexp/Ipv4.d.mts.map +1 -0
  401. package/dist/v1/regexp/Ipv4.mjs +45 -0
  402. package/dist/v1/regexp/Ipv6.cjs +67 -0
  403. package/dist/v1/regexp/Ipv6.d.mts +29 -0
  404. package/dist/v1/regexp/Ipv6.d.mts.map +1 -0
  405. package/dist/v1/regexp/Ipv6.mjs +54 -0
  406. package/dist/v1/regexp/SegmentExtractor.cjs +145 -0
  407. package/dist/v1/regexp/SegmentExtractor.d.mts +91 -0
  408. package/dist/v1/regexp/SegmentExtractor.d.mts.map +1 -0
  409. package/dist/v1/regexp/SegmentExtractor.mjs +116 -0
  410. package/dist/v1/regexp/UrlDetector.cjs +125 -0
  411. package/dist/v1/regexp/UrlDetector.d.mts +67 -0
  412. package/dist/v1/regexp/UrlDetector.d.mts.map +1 -0
  413. package/dist/v1/regexp/UrlDetector.mjs +102 -0
  414. package/dist/v1/regexp/Username/index.cjs +233 -0
  415. package/dist/v1/regexp/Username/index.d.mts +77 -0
  416. package/dist/v1/regexp/Username/index.d.mts.map +1 -0
  417. package/dist/v1/regexp/Username/index.mjs +199 -0
  418. package/dist/v1/regexp/Username/jsDoc.cjs +2 -0
  419. package/dist/v1/regexp/Username/jsDoc.d.mts +57 -0
  420. package/dist/v1/regexp/Username/jsDoc.d.mts.map +1 -0
  421. package/dist/v1/regexp/Username/jsDoc.mjs +18 -0
  422. package/dist/v1/regexp/Username/templates/BlueSky.cjs +56 -0
  423. package/dist/v1/regexp/Username/templates/BlueSky.d.mts +35 -0
  424. package/dist/v1/regexp/Username/templates/BlueSky.d.mts.map +1 -0
  425. package/dist/v1/regexp/Username/templates/BlueSky.mjs +52 -0
  426. package/dist/v1/regexp/Username/templates/Discord.cjs +505 -0
  427. package/dist/v1/regexp/Username/templates/Discord.d.mts +209 -0
  428. package/dist/v1/regexp/Username/templates/Discord.d.mts.map +1 -0
  429. package/dist/v1/regexp/Username/templates/Discord.mjs +458 -0
  430. package/dist/v1/regexp/Username/templates/MatrixProtocol.cjs +143 -0
  431. package/dist/v1/regexp/Username/templates/MatrixProtocol.d.mts +70 -0
  432. package/dist/v1/regexp/Username/templates/MatrixProtocol.d.mts.map +1 -0
  433. package/dist/v1/regexp/Username/templates/MatrixProtocol.mjs +128 -0
  434. package/dist/v1/regexp/Username/templates/deprecated/Discord.cjs +24 -0
  435. package/dist/v1/regexp/Username/templates/deprecated/Discord.d.mts +17 -0
  436. package/dist/v1/regexp/Username/templates/deprecated/Discord.d.mts.map +1 -0
  437. package/dist/v1/regexp/Username/templates/deprecated/Discord.mjs +20 -0
  438. package/dist/v1/regexp/Username/templates/index.cjs +11 -0
  439. package/dist/v1/regexp/Username/templates/index.d.mts +5 -0
  440. package/dist/v1/regexp/Username/templates/index.d.mts.map +1 -0
  441. package/dist/v1/regexp/Username/templates/index.mjs +4 -0
  442. package/dist/v1/regexp/index.cjs +41 -0
  443. package/dist/v1/regexp/index.d.mts +9 -0
  444. package/dist/v1/regexp/index.d.mts.map +1 -0
  445. package/dist/v1/regexp/index.mjs +8 -0
  446. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.cjs +64 -0
  447. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.d.mts +11 -0
  448. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.d.mts.map +1 -0
  449. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Browser.mjs +51 -0
  450. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/FileInput.cjs +66 -0
  451. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/FileInput.d.mts +11 -0
  452. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/FileInput.d.mts.map +1 -0
  453. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/FileInput.mjs +51 -0
  454. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Node.cjs +39 -0
  455. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Node.d.mts +11 -0
  456. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Node.d.mts.map +1 -0
  457. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Node.mjs +28 -0
  458. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Template.cjs +494 -0
  459. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Template.d.mts +142 -0
  460. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Template.d.mts.map +1 -0
  461. package/dist/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters/Template.mjs +445 -0
  462. package/dist/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.cjs +30 -4
  463. package/dist/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.d.mts +5 -2
  464. package/dist/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.d.mts.map +1 -1
  465. package/dist/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.mjs +29 -5
  466. package/dist/v1/webTemplates/media/MediaValidator/v1/Browser/index.cjs +135 -0
  467. package/dist/v1/webTemplates/media/MediaValidator/v1/Browser/index.d.mts +83 -0
  468. package/dist/v1/webTemplates/media/MediaValidator/v1/Browser/index.d.mts.map +1 -0
  469. package/dist/v1/webTemplates/media/MediaValidator/v1/Browser/index.mjs +120 -0
  470. package/dist/v1/webTemplates/media/MediaValidator/v1/Node/index.cjs +127 -0
  471. package/dist/v1/webTemplates/media/MediaValidator/v1/Node/index.d.mts +95 -0
  472. package/dist/v1/webTemplates/media/MediaValidator/v1/Node/index.d.mts.map +1 -0
  473. package/dist/v1/webTemplates/media/MediaValidator/v1/Node/index.mjs +109 -0
  474. package/dist/v1/webTemplates/multiformats/14.0/IPFSHasher/index.cjs +83 -0
  475. package/dist/v1/webTemplates/multiformats/14.0/IPFSHasher/index.d.mts +46 -0
  476. package/dist/v1/webTemplates/multiformats/14.0/IPFSHasher/index.d.mts.map +1 -0
  477. package/dist/v1/webTemplates/multiformats/14.0/IPFSHasher/index.mjs +71 -0
  478. package/dist/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.cjs +493 -0
  479. package/dist/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.d.mts +67 -0
  480. package/dist/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.d.mts.map +1 -0
  481. package/dist/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.mjs +399 -0
  482. package/dist/v1/webTemplates/vite/7.3/plugins/githubUtils.cjs +35 -0
  483. package/dist/v1/webTemplates/vite/7.3/plugins/githubUtils.d.mts +6 -0
  484. package/dist/v1/webTemplates/vite/7.3/plugins/githubUtils.d.mts.map +1 -0
  485. package/dist/v1/webTemplates/vite/7.3/plugins/githubUtils.mjs +29 -0
  486. package/docs/info/RegExp.md +74 -0
  487. package/docs/v1/Exports.md +101 -0
  488. package/docs/v1/README.md +113 -15
  489. package/docs/v1/basics/asyncReplace.md +2 -0
  490. package/docs/v1/basics/browserDetector.md +28 -11
  491. package/docs/v1/basics/crypto.md +85 -0
  492. package/docs/v1/basics/deprecated/html.md +2 -0
  493. package/docs/v1/basics/deprecated/objFilter.md +2 -0
  494. package/docs/v1/basics/html.md +2 -0
  495. package/docs/v1/basics/objChecker.md +55 -0
  496. package/docs/v1/basics/objFilter.md +57 -86
  497. package/docs/v1/basics/promiseUtils.md +12 -3
  498. package/docs/v1/basics/text.md +0 -1
  499. package/docs/v1/libs/array/TinyArrayComparator.md +50 -39
  500. package/docs/v1/libs/fs/TinyFS.md +752 -0
  501. package/docs/v1/libs/fs/TinyOPFSFileSystem.md +495 -0
  502. package/docs/v1/libs/fs/TinyStorageBucketFileSystem.md +407 -0
  503. package/docs/v1/libs/plugin/TinyPlugin.md +441 -0
  504. package/docs/v1/libs/plugin/TinyVersion.md +145 -0
  505. package/docs/v1/libs/router/TinyRouter.md +216 -0
  506. package/docs/v1/libs/storage/TinyMapCache.md +219 -0
  507. package/docs/v1/libs/storage/TinySetMapDatabase.md +478 -0
  508. package/docs/v1/libs/sw/browser/TinyNotificationAdapter.md +280 -0
  509. package/docs/v1/libs/sw/browser/TinyPushManager.md +782 -0
  510. package/docs/v1/libs/sw/browser/TinyServiceWorker.md +365 -0
  511. package/docs/v1/libs/sw/browser/plugins/TabManager.md +133 -0
  512. package/docs/v1/libs/sw/service/TinyPushRouter.md +314 -0
  513. package/docs/v1/libs/sw/service/TinyServiceWorkerEngine.md +748 -0
  514. package/docs/v1/libs/sw/service/plugins/GlobBypassPlugin.md +229 -0
  515. package/docs/v1/libs/sw/service/plugins/GlobCachePlugin.md +91 -0
  516. package/docs/v1/libs/sw/service/plugins/Ping.md +36 -0
  517. package/docs/v1/libs/sw/service/plugins/TabManager.md +64 -0
  518. package/docs/v1/libs/sw/service/plugins/ViteFileDetector.md +92 -0
  519. package/docs/v1/libs/sw/service/shared/TinyPushPayload.md +316 -0
  520. package/docs/v1/libs/text/TinyI18.md +80 -56
  521. package/docs/v1/libs/tools/TinyBrowserMonitor.md +170 -0
  522. package/docs/v1/libs/tools/TinyDebugger.md +117 -1
  523. package/docs/v1/libs/tools/TinyHtmlTagRegexBuilder.md +141 -0
  524. package/docs/v1/libs/tools/TinyHttpResponseRegistry.md +129 -0
  525. package/docs/v1/libs/tools/TinyPasswordValidator.md +153 -0
  526. package/docs/v1/libs/tools/TinyPkgExportValidator.md +45 -1
  527. package/docs/v1/libs/tools/TinySiteMap.md +134 -0
  528. package/docs/v1/libs/tools/TinySiteMapStream.md +97 -0
  529. package/docs/v1/libs/tools/TinyURLSecurityVerifier.md +146 -0
  530. package/docs/v1/libs/tools/TinyUriParser/Discord.md +374 -0
  531. package/docs/v1/libs/tools/TinyUriParser/MatrixProtocol.md +54 -0
  532. package/docs/v1/libs/tools/TinyUriParser.md +128 -0
  533. package/docs/v1/libs/utils/TinyCloner.md +126 -0
  534. package/docs/v1/libs/utils/TinyPromiseQueue.md +1 -1
  535. package/docs/v1/libs/utils/TinyThrottledApi.md +219 -0
  536. package/docs/v1/libs/worker/browser/TinyWebWorker.md +331 -0
  537. package/docs/v1/libs/worker/engine/TinyWebWorkerEngine.md +137 -0
  538. package/docs/v1/regexp/Email.md +127 -0
  539. package/docs/v1/regexp/Glob.md +155 -0
  540. package/docs/v1/regexp/IPv4.md +103 -0
  541. package/docs/v1/regexp/IPv6.md +122 -0
  542. package/docs/v1/regexp/SegmentExtractor.md +120 -0
  543. package/docs/v1/regexp/UrlDetector.md +117 -0
  544. package/docs/v1/regexp/Username/Base.md +131 -0
  545. package/docs/v1/regexp/Username/Discord.md +267 -0
  546. package/docs/v1/regexp/Username/MatrixProtocol.md +131 -0
  547. package/docs/v1/webTemplates/ag-psd/31.0/ProcessSolidFilters.md +565 -0
  548. package/docs/v1/webTemplates/bootstrap/5.3/html/BootstrapDialogs.md +19 -7
  549. package/docs/v1/webTemplates/media/MediaValidator/v1/Browser.md +123 -0
  550. package/docs/v1/webTemplates/media/MediaValidator/v1/Node.md +136 -0
  551. package/docs/v1/webTemplates/multiformats/14.0/IPFSHasher.md +310 -0
  552. package/docs/v1/webTemplates/vite/7.3/plugins/TinyVitePwaPlugin.md +131 -0
  553. package/docs/v1/webTemplates/vite/7.3/plugins/githubUtils.md +50 -0
  554. package/package.json +340 -22
  555. package/types/EventEmitter.d.ts +48 -0
  556. package/dist/v1/libs/text/TinyI18.d.mts.map +0 -1
@@ -0,0 +1,993 @@
1
+ import TinyPushRouter from './TinyPushRouter.mjs';
2
+ import { TinyPluginCore, TinyPlugin, TinyPluginLayer } from '../../plugin/TinyPlugin.mjs';
3
+ export type GlobalMsgCodeItem<Path extends string | null> = {
4
+ /**
5
+ * - Absolute path of the file served for this entry.
6
+ * When the value is `null`, no file is fetched and the response is built from
7
+ * {@link GlobalMsgCodeItem.msg} only.
8
+ */
9
+ path: Path;
10
+ /**
11
+ * - Short, human readable message. It is used as the response
12
+ * body and as the `statusText` of the generated error response.
13
+ */
14
+ msg: string;
15
+ /**
16
+ * - Message written to the log. It is aimed at developers,
17
+ * so it can be more descriptive than {@link GlobalMsgCodeItem.msg}.
18
+ */
19
+ logMsg: string;
20
+ };
21
+ export type GlobalMsgCode = {
22
+ spaPath: string;
23
+ unknown: GlobalMsgCodeItem<string>;
24
+ 200: GlobalMsgCodeItem<null>;
25
+ 404: GlobalMsgCodeItem<string>;
26
+ 500: GlobalMsgCodeItem<string>;
27
+ };
28
+ export type SyncEventObj = {
29
+ /**
30
+ * - The native sync event.
31
+ */
32
+ event: SyncEvent;
33
+ /**
34
+ * - The tag associated with the sync event.
35
+ */
36
+ tag: string;
37
+ };
38
+ export type SyncCallback = (msg: SyncEventObj) => Promise<void> | void;
39
+ export type LifecycleEventObj = {
40
+ /**
41
+ * - The native install or activate event.
42
+ */
43
+ event: ExtendableEvent;
44
+ };
45
+ export type LifecycleCallback = (msg: LifecycleEventObj) => Promise<void> | void;
46
+ export type MessageApiReply = (type: string, data?: MessagePayload, timeout?: number) => Promise<any>;
47
+ export type ApiHandlerOptions = {
48
+ /**
49
+ * - The payload received from the browser.
50
+ */
51
+ data?: MessagePayload;
52
+ /**
53
+ * - The ID of the client that sent the message.
54
+ */
55
+ clientId: string;
56
+ /**
57
+ * - The request ID.
58
+ */
59
+ correlationId: string;
60
+ /**
61
+ * - A function to send a reply to the message source.
62
+ */
63
+ replyTo: MessageReplyTo;
64
+ /**
65
+ * - A function to send a reply to all clients.
66
+ */
67
+ replyToAll: MessageReplyToAll;
68
+ /**
69
+ * - A template function to format reply messages.
70
+ */
71
+ replyTemplate: MessageReplyTemplate;
72
+ /**
73
+ * - A convenience method to reply to the message source.
74
+ */
75
+ reply: MessageReply;
76
+ /**
77
+ * - A convenience method to reply to the message api source.
78
+ */
79
+ replyApi: MessageApiReply;
80
+ };
81
+ export type ApiHandlerCallback = (options: ApiHandlerOptions) => Promise<MessagePayload | undefined> | (MessagePayload | undefined);
82
+ export type InstallStrategy = 'immediate' | 'wait' | 'manual';
83
+ export type ActivateStrategy = 'immediate' | 'wait' | 'manual';
84
+ export type LifecycleOrder = 'before' | 'after';
85
+ export type LifecycleOptions = {
86
+ /**
87
+ * - How the `install` phase is resolved.
88
+ */
89
+ installStrategy: InstallStrategy;
90
+ /**
91
+ * - How the `activate` phase is resolved.
92
+ */
93
+ activateStrategy: ActivateStrategy;
94
+ /**
95
+ * - Order of the strategy inside the `install` phase.
96
+ */
97
+ installOrder: LifecycleOrder;
98
+ /**
99
+ * - Order of the strategy inside the `activate` phase.
100
+ */
101
+ activateOrder: LifecycleOrder;
102
+ };
103
+ export type PartialServiceWorkerSettings = {
104
+ /**
105
+ * - Whether the service worker is running in Single Page Application mode.
106
+ */
107
+ spaMode?: boolean;
108
+ /**
109
+ * - Partial lifecycle configuration.
110
+ */
111
+ lifecycle?: Partial<LifecycleOptions>;
112
+ /**
113
+ * - Partial configuration for fetch event interception.
114
+ */
115
+ fetch: PartialFetchOptions;
116
+ /**
117
+ * - Partial configuration for push event interception.
118
+ */
119
+ push: PartialPushOptions;
120
+ /**
121
+ * - Partial configuration for sync event interception.
122
+ */
123
+ sync: PartialSyncOptions;
124
+ /**
125
+ * - Partial configuration for message event handling.
126
+ */
127
+ messaging: Partial<MessagingOptions>;
128
+ };
129
+ export type PartialSyncOptions = {
130
+ /**
131
+ * - Indicates if sync interception is enabled.
132
+ */
133
+ enabled?: boolean;
134
+ };
135
+ export type PartialPushOptions = {
136
+ /**
137
+ * - Indicates if push interception is enabled.
138
+ */
139
+ enabled?: boolean;
140
+ /**
141
+ * - Base64 URL-safe VAPID public key.
142
+ */
143
+ vapidPublicKey?: string;
144
+ /**
145
+ * - Backend route that persists subscriptions.
146
+ */
147
+ subscribeEndpoint?: string;
148
+ /**
149
+ * - Fallback notification icon.
150
+ */
151
+ defaultIcon?: string;
152
+ /**
153
+ * - Fallback notification badge.
154
+ */
155
+ defaultBadge?: string;
156
+ /**
157
+ * - Fallback click URL.
158
+ */
159
+ defaultUrl?: string;
160
+ };
161
+ export type PartialFetchOptions = {
162
+ /**
163
+ * - Indicates if fetch interception is enabled.
164
+ */
165
+ enabled?: boolean;
166
+ /**
167
+ * - Partial configuration for the routing logic.
168
+ */
169
+ router: Partial<RouterOptions>;
170
+ };
171
+ export type FetchOptions = {
172
+ /**
173
+ * - Indicates if fetch interception is enabled.
174
+ */
175
+ enabled: boolean;
176
+ /**
177
+ * - Configuration for the routing logic.
178
+ */
179
+ router: RouterOptions;
180
+ };
181
+ export type PushOptions = {
182
+ /**
183
+ * - Indicates if push interception is enabled.
184
+ */
185
+ enabled: boolean;
186
+ /**
187
+ * - Base64 URL-safe VAPID public key.
188
+ */
189
+ vapidPublicKey: string;
190
+ /**
191
+ * - Backend route that persists subscriptions.
192
+ */
193
+ subscribeEndpoint: string;
194
+ /**
195
+ * - Fallback notification icon.
196
+ */
197
+ defaultIcon: string;
198
+ /**
199
+ * - Fallback notification badge.
200
+ */
201
+ defaultBadge: string;
202
+ /**
203
+ * - Fallback click URL.
204
+ */
205
+ defaultUrl: string;
206
+ };
207
+ export type MessagingOptions = {
208
+ /**
209
+ * - Indicates if message communication is enabled.
210
+ */
211
+ enabled: boolean;
212
+ };
213
+ export type SyncOptions = {
214
+ /**
215
+ * - Indicates if sync interception is enabled.
216
+ */
217
+ enabled: boolean;
218
+ };
219
+ export type RouterOptions = {
220
+ /**
221
+ * - Indicates if the router is active.
222
+ */
223
+ enabled: boolean;
224
+ /**
225
+ * - A map linking HTTP status codes to their respective configurations.
226
+ */
227
+ codes: Map<number, RouterCodeConfig>;
228
+ };
229
+ export type ServiceWorkerSettings = {
230
+ /**
231
+ * - Whether the service worker is running in Single Page Application mode.
232
+ */
233
+ spaMode: boolean;
234
+ /**
235
+ * - Lifecycle strategy configuration.
236
+ */
237
+ lifecycle: LifecycleOptions;
238
+ /**
239
+ * - Configuration for fetch event interception.
240
+ */
241
+ fetch: FetchOptions;
242
+ /**
243
+ * - Configuration for push event interception.
244
+ */
245
+ push: PushOptions;
246
+ /**
247
+ * - Configuration for background sync event interception.
248
+ */
249
+ sync: SyncOptions;
250
+ /**
251
+ * - Configuration for message event handling.
252
+ */
253
+ messaging: MessagingOptions;
254
+ };
255
+ export type PathGetter = (path: string) => string;
256
+ export type DefaultCodeData = {
257
+ /**
258
+ * - A function to retrieve the path for a given input.
259
+ */
260
+ pathGetter: PathGetter;
261
+ /**
262
+ * - The configuration data for the default response.
263
+ */
264
+ data: RouterCodeConfig;
265
+ };
266
+ export type FnOptions = {
267
+ /**
268
+ * - The fetch event being handled.
269
+ */
270
+ event: FetchEvent;
271
+ /**
272
+ * - The request object from the fetch event.
273
+ */
274
+ request: Request;
275
+ /**
276
+ * - The parsed URL of the request.
277
+ */
278
+ url: URL;
279
+ /**
280
+ * - The categorized response type.
281
+ */
282
+ resType: HttpResponseType;
283
+ /**
284
+ * - A custom error message.
285
+ */
286
+ customMsg?: string;
287
+ /**
288
+ * - A custom page path.
289
+ */
290
+ customPath?: string;
291
+ /**
292
+ * - The HTTP status code.
293
+ */
294
+ code: number;
295
+ };
296
+ export type RouterCodeConfig = {
297
+ /**
298
+ * - The function executed to handle the request.
299
+ */
300
+ fn: (ops: FnOptions) => Promise<Response> | Response;
301
+ /**
302
+ * - The message string to be sent in the response.
303
+ */
304
+ msg: string;
305
+ /**
306
+ * - The log message to be recorded.
307
+ */
308
+ logMsg: string;
309
+ };
310
+ export type FetchCheckerValues = {
311
+ /**
312
+ * - The HTTP status code associated with the fetch result.
313
+ */
314
+ code: number;
315
+ /**
316
+ * - Whether the router must build a response for the current request.
317
+ */
318
+ needValidation: boolean;
319
+ /**
320
+ * - Whether the next registered fetch listener is still allowed to run.
321
+ */
322
+ continueCheck: boolean;
323
+ /**
324
+ * - Overrides the path served by the router for this request.
325
+ */
326
+ customPath?: string;
327
+ /**
328
+ * - Overrides the message attached to the generated response.
329
+ */
330
+ customMsg?: string;
331
+ };
332
+ export type FetchCheckerResult = FetchCheckerValues & {
333
+ [id: string]: any;
334
+ };
335
+ export type MessagePayload = any;
336
+ export type MessagingData = {
337
+ /**
338
+ * - The identifier for the message type.
339
+ */
340
+ type: string;
341
+ /**
342
+ * - The actual payload of the message.
343
+ */
344
+ data?: MessagePayload;
345
+ };
346
+ export type MessageReplyTemplate = (type: string, data?: MessagePayload) => MessagingData;
347
+ export type MessageReplyTo = (client: Client, type: string, data?: MessagePayload) => any;
348
+ export type MessageReplyToAllOptions = {
349
+ /**
350
+ * - The type identifier for the reply message.
351
+ */
352
+ type: string;
353
+ /**
354
+ * - The payload to be sent in the reply.
355
+ */
356
+ data?: MessagePayload;
357
+ /**
358
+ * - Additional options for client matching.
359
+ */
360
+ options?: ClientQueryOptions;
361
+ };
362
+ export type MessageReplyToAllResponse = Promise<void | readonly (Client | WindowClient)[]>;
363
+ export type MessageReplyToAll = (options: MessageReplyToAllOptions) => Promise<MessageReplyToAllResponse>;
364
+ export type MessageReply = (type: string, data?: MessagePayload) => any;
365
+ export type MessageObj = {
366
+ /**
367
+ * - The original message event.
368
+ */
369
+ event: ExtendableMessageEvent;
370
+ /**
371
+ * - The ID of the client that sent the message.
372
+ */
373
+ clientId: string;
374
+ /**
375
+ * - The payload sent within the message.
376
+ */
377
+ data?: MessagePayload;
378
+ /**
379
+ * - A function to send a reply to the message source.
380
+ */
381
+ replyTo: MessageReplyTo;
382
+ /**
383
+ * - A function to send a reply to all clients.
384
+ */
385
+ replyToAll: MessageReplyToAll;
386
+ /**
387
+ * - A template function to format reply messages.
388
+ */
389
+ replyTemplate: MessageReplyTemplate;
390
+ /**
391
+ * - A convenience method to reply to the message source.
392
+ */
393
+ reply: MessageReply;
394
+ };
395
+ export type MessageCallback = (msg: MessageObj) => any;
396
+ export type FetchObjParams = Record<string, string>;
397
+ export type FetchObj = {
398
+ /**
399
+ * - The original fetch event.
400
+ */
401
+ event: FetchEvent;
402
+ /**
403
+ * - The intercepted request.
404
+ */
405
+ request: Request;
406
+ /**
407
+ * - The parsed URL of the request.
408
+ */
409
+ url: URL;
410
+ /**
411
+ * - Parameters extracted from the URL (e.g., /:id).
412
+ */
413
+ params: FetchObjParams;
414
+ /**
415
+ * - A function to send a reply to the message source.
416
+ */
417
+ replyTo: MessageReplyTo;
418
+ /**
419
+ * - A function to send a reply to all clients.
420
+ */
421
+ replyToAll: MessageReplyToAll;
422
+ /**
423
+ * - A template function to format reply messages.
424
+ */
425
+ replyTemplate: MessageReplyTemplate;
426
+ /**
427
+ * - Indicates if the request is same-origin.
428
+ */
429
+ isSameOrigin: boolean;
430
+ /**
431
+ * - An error object if the plugin execution failed.
432
+ */
433
+ error?: Error;
434
+ };
435
+ export type FetchCallback = (fetchObj: FetchObj, result: FetchCheckerResult) => Promise<void> | void;
436
+ export type HttpResponseType = 'info' | 'success' | 'redirect' | 'client-error' | 'server-error' | 'unknown';
437
+ export type SwPluginInstaller<Layer extends TinyPluginLayer, IdString extends string, VersionString extends string, Options extends any[]> = import('../../plugin/TinyPlugin.mjs').TinyPluginInstaller<TinyServiceWorkerEngine, Layer, IdString, VersionString, Options>;
438
+ export type TinyServiceWorkerPlugin<Layer extends TinyPluginLayer, IdString extends string, VersionString extends string, Options extends any[]> = TinyPlugin<TinyServiceWorkerEngine, Layer, IdString, VersionString, Options>;
439
+ /**
440
+ * Manages the lifecycle and execution of modules based on the provided configuration.
441
+ */
442
+ declare class TinyServiceWorkerEngine extends TinyPluginCore {
443
+ #private;
444
+ static get PUSH_TYPE(): Readonly<{
445
+ NOTIFICATION: "notification";
446
+ DATA: "data";
447
+ SYNC: "sync";
448
+ COMMAND: "command";
449
+ UNKNOWN: "unknown";
450
+ }>;
451
+ /**
452
+ * A function used to format a reply message into a standard MessagingData object.
453
+ *
454
+ * @param {string} type - The type identifier for the reply message.
455
+ * @param {MessagePayload} [payload] - The payload to be sent in the reply.
456
+ * @returns {MessagingData} The formatted message object.
457
+ * @throws {TypeError} If type is not a string.
458
+ */
459
+ static replyTemplate(type: string, payload?: MessagePayload): MessagingData;
460
+ /**
461
+ * A function that handles the actual postMessage call to a specific Client.
462
+ *
463
+ * @param {Client} targetSource - The target client to receive the message.
464
+ * @param {string} type - The type identifier for the reply message.
465
+ * @param {MessagePayload} [payload] - The payload to be sent in the reply.
466
+ * @returns {void}
467
+ * @throws {TypeError} If targetSource is invalid or type is not a string.
468
+ */
469
+ static replyTo(targetSource: Client, type: string, payload?: MessagePayload): void;
470
+ /**
471
+ * A function that handles the actual postMessage call to all Clients.
472
+ *
473
+ * @param {MessageReplyToAllOptions} ops - The options for the reply.
474
+ * @returns {Promise<MessageReplyToAllResponse>} The result of the broadcast.
475
+ */
476
+ static replyToAll(ops: MessageReplyToAllOptions): Promise<MessageReplyToAllResponse>;
477
+ /**
478
+ * Checks if the provided Request object is a navigation request.
479
+ * @param {Request} req - The request to evaluate.
480
+ * @returns {boolean} True if the request mode is 'navigate', false otherwise.
481
+ */
482
+ static isNavigate(req: Request): boolean;
483
+ /**
484
+ * Determines whether the origin of a given Request or URL matches the origin of the current Service Worker context.
485
+ * @param {Request|URL} data - The request or URL to check.
486
+ * @returns {boolean} True if the origins match, false otherwise.
487
+ */
488
+ static isSameOrigin(data: Request | URL): boolean;
489
+ /**
490
+ * Retrieves the configuration for a specific HTTP status code.
491
+ * @param {number} c - The HTTP status code.
492
+ * @returns {RouterCodeConfig} The configuration for the given code.
493
+ * @throws {TypeError} If c is not a number.
494
+ */
495
+ getCodeCfg(c: number): RouterCodeConfig;
496
+ /**
497
+ * Sets the SPA mode configuration.
498
+ * @param {boolean} value - The value to set for spaMode.
499
+ * @throws {TypeError} If value is not a boolean.
500
+ */
501
+ set spaMode(value: boolean);
502
+ /**
503
+ * Gets the current SPA mode configuration.
504
+ * @returns {boolean} The current spaMode value.
505
+ */
506
+ get spaMode(): boolean;
507
+ /**
508
+ * Gets a deep clone of the current lifecycle configuration.
509
+ *
510
+ * @returns {LifecycleOptions} A deep cloned copy of the lifecycle configuration.
511
+ */
512
+ get lifecycle(): LifecycleOptions;
513
+ /**
514
+ * Merges the provided properties into the current lifecycle configuration.
515
+ *
516
+ * The operation is a **merge**, not a replacement: omitted keys keep their
517
+ * current value. This is required because the internal validation is strict,
518
+ * so a partial patch such as `{ strategyOrder: 'before' }` must not erase the
519
+ * install and activate strategies.
520
+ *
521
+ * @param {Partial<LifecycleOptions>} value - The lifecycle properties to merge.
522
+ * @throws {TypeError} If `value` is not a valid partial {@link LifecycleOptions}.
523
+ */
524
+ set lifecycle(value: Partial<LifecycleOptions>);
525
+ /**
526
+ * Returns the global path based on the current SPA mode configuration.
527
+ * @param {string} path - The original path.
528
+ * @returns {string} The path adjusted for SPA mode or the original path.
529
+ * @throws {TypeError} If path is not a non-empty string.
530
+ */
531
+ globalPathGetter(path: string): string;
532
+ /**
533
+ * Handles a successful fetch request.
534
+ * @param {string} msg - The message to be logged.
535
+ * @param {string} logMsg - The log message to be recorded.
536
+ * @param {string|PathGetter} pathGetter - The path to fetch.
537
+ * @param {FnOptions} options - The options for the fetch operation.
538
+ * @returns {Promise<Response>} A promise that resolves to the Response object.
539
+ */
540
+ fetchFn(msg: string, logMsg: string, pathGetter: string | PathGetter, options: FnOptions): Promise<Response>;
541
+ /**
542
+ * Handles a failed fetch request by simulating an error page.
543
+ * @param {string} msg - The message to be logged.
544
+ * @param {string} logMsg - The log message to be recorded.
545
+ * @param {string|PathGetter} pathGetter - The path to fetch.
546
+ * @param {FnOptions} options - The options for the fetch operation.
547
+ * @returns {Promise<Response>} A promise that resolves to the error Response object.
548
+ */
549
+ fetchErrorFn(msg: string, logMsg: string, pathGetter: string | PathGetter, options: FnOptions): Promise<Response>;
550
+ /**
551
+ * Creates a configuration for a fetch response.
552
+ * @param {Object} ops - The creation options.
553
+ * @param {boolean} ops.isError - Indicates if it is an error response.
554
+ * @param {string} ops.msg - The message to be sent.
555
+ * @param {string} ops.logMsg - The log message.
556
+ * @param {string|PathGetter} ops.pathGetter - The path to use for the response.
557
+ * @returns {RouterCodeConfig} The newly created configuration.
558
+ * @throws {TypeError} If any property is missing or has the wrong type.
559
+ */
560
+ createFetchRes({ isError, msg, logMsg, pathGetter }: {
561
+ isError: boolean;
562
+ msg: string;
563
+ logMsg: string;
564
+ pathGetter: string | PathGetter;
565
+ }): RouterCodeConfig;
566
+ /**
567
+ * Replaces the push router.
568
+ * @param {TinyPushRouter} router - The new router.
569
+ * @throws {TypeError} If `router` is not a TinyPushRouter.
570
+ */
571
+ set pushRouter(router: TinyPushRouter);
572
+ /** @returns {TinyPushRouter} The active push router. */
573
+ get pushRouter(): TinyPushRouter;
574
+ /**
575
+ * Sets the engine configuration.
576
+ * @param {ServiceWorkerSettings} config - The new configuration to apply.
577
+ * @throws {TypeError} If the configuration does not meet the minimum requirements.
578
+ */
579
+ set config(config: ServiceWorkerSettings);
580
+ /**
581
+ * Gets the current engine configuration.
582
+ * Returns a deep clone to prevent external mutation of the internal state.
583
+ * @returns {ServiceWorkerSettings} A deep cloned copy of the configuration.
584
+ */
585
+ get config(): ServiceWorkerSettings;
586
+ /**
587
+ * Indicates if the engine has been initialized.
588
+ * @returns {boolean} True if started, false otherwise.
589
+ */
590
+ get started(): boolean;
591
+ /**
592
+ * Initializes a new instance of the TinyServiceWorkerEngine with the provided configuration and logger settings.
593
+ * @param {Partial<PartialServiceWorkerSettings>} config - The configuration to apply.
594
+ * @param {Object} [lgConfig] - Configuration options for the instance.
595
+ * @param {boolean} [lgConfig.debugMode=false] - Whether to enable internal debug logging.
596
+ * @param {boolean} [lgConfig.useLogColors=false] - Whether to enable log color support.
597
+ * @param {Partial<Console>} [lgConfig.logger=console] - A custom logger object.
598
+ * @throws {TypeError} If the configuration does not meet the minimum requirements.
599
+ */
600
+ constructor(config?: Partial<PartialServiceWorkerSettings>, lgConfig?: {
601
+ debugMode?: boolean;
602
+ useLogColors?: boolean;
603
+ logger?: Partial<Console>;
604
+ });
605
+ /**
606
+ * Gets the number of registered fetch RegExp listeners.
607
+ * @returns {number} The count of registered RegExp listeners.
608
+ */
609
+ get fetchRegExpSize(): number;
610
+ /**
611
+ * Adds a fetch RegExp listener.
612
+ * @param {string} type - The identifier for the fetch type.
613
+ * @param {FetchCallback} callback - The callback to execute.
614
+ */
615
+ addFetchRegExpListener(type: string, callback: FetchCallback): void;
616
+ /**
617
+ * Removes a fetch RegExp listener.
618
+ * @param {string} type - The identifier for the fetch type.
619
+ * @returns {boolean} True if the listener was removed, false otherwise.
620
+ */
621
+ removeFetchRegExpListener(type: string): boolean;
622
+ /**
623
+ * Retrieves a fetch RegExp listener.
624
+ * @param {string} type - The identifier for the fetch type.
625
+ * @returns {FetchCallback|undefined} The listener, or undefined if not found.
626
+ */
627
+ getFetchRegExpListener(type: string): FetchCallback | undefined;
628
+ /**
629
+ * Checks if a fetch RegExp listener exists.
630
+ * @param {string} type - The identifier for the fetch type.
631
+ * @returns {boolean} True if the listener exists, false otherwise.
632
+ */
633
+ hasFetchRegExp(type: string): boolean;
634
+ /**
635
+ * Clears all registered fetch RegExp listeners.
636
+ * @returns {void}
637
+ */
638
+ clearFetchRegExps(): void;
639
+ /**
640
+ * Gets the number of registered fetch URL listeners.
641
+ * @returns {number} The count of registered URL listeners.
642
+ */
643
+ get fetchUrlSize(): number;
644
+ /**
645
+ * Adds a fetch URL listener.
646
+ * @param {string} type - The identifier for the fetch type.
647
+ * @param {FetchCallback} callback - The callback to execute.
648
+ */
649
+ addFetchUrlListener(type: string, callback: FetchCallback): void;
650
+ /**
651
+ * Removes a fetch URL listener.
652
+ * @param {string} type - The identifier for the fetch type.
653
+ * @returns {boolean} True if the listener was removed, false otherwise.
654
+ */
655
+ removeFetchUrlListener(type: string): boolean;
656
+ /**
657
+ * Retrieves a fetch URL listener.
658
+ * @param {string} type - The identifier for the fetch type.
659
+ * @returns {FetchCallback|undefined} The listener, or undefined if not found.
660
+ */
661
+ getFetchUrlListener(type: string): FetchCallback | undefined;
662
+ /**
663
+ * Checks if a fetch URL listener exists.
664
+ * @param {string} type - The identifier for the fetch type.
665
+ * @returns {boolean} True if the listener exists, false otherwise.
666
+ */
667
+ hasFetchUrl(type: string): boolean;
668
+ /**
669
+ * Clears all registered fetch URL listeners.
670
+ * @returns {void}
671
+ */
672
+ clearFetchUrls(): void;
673
+ /**
674
+ * Gets the number of registered global fetch tracking listeners.
675
+ * @returns {number} The count of registered tracking listeners.
676
+ */
677
+ get fetchGlobalSize(): number;
678
+ /**
679
+ * Adds a global fetch tracking listener.
680
+ * @param {string} type - The identifier for the tracking type.
681
+ * @param {FetchCallback} callback - The callback function to be executed.
682
+ */
683
+ addFetchGlobalListener(type: string, callback: FetchCallback): void;
684
+ /**
685
+ * Removes a global fetch tracking listener.
686
+ * @param {string} type - The identifier for the tracking type.
687
+ * @returns {boolean} True if the listener was removed, false otherwise.
688
+ */
689
+ removeFetchGlobalListener(type: string): boolean;
690
+ /**
691
+ * Retrieves a global fetch tracking listener.
692
+ * @param {string} type - The identifier for the tracking type.
693
+ * @returns {FetchCallback|undefined} The listener, or undefined if not found.
694
+ */
695
+ getFetchGlobalListener(type: string): FetchCallback | undefined;
696
+ /**
697
+ * Checks if a global fetch tracking listener exists.
698
+ * @param {string} type - The identifier for the tracking type.
699
+ * @returns {boolean} True if the listener exists, false otherwise.
700
+ */
701
+ hasFetchGlobal(type: string): boolean;
702
+ /**
703
+ * Clears all global fetch tracking listeners.
704
+ * @returns {void}
705
+ */
706
+ clearFetchGlobals(): void;
707
+ /**
708
+ * Gets the number of registered message listeners.
709
+ * @returns {number} The count of registered message listeners.
710
+ */
711
+ get messagesSize(): number;
712
+ /**
713
+ * Adds a message listener.
714
+ * @param {string} type - The identifier for the message type.
715
+ * @param {MessageCallback} callback - The callback to execute.
716
+ */
717
+ addMessageListener(type: string, callback: MessageCallback): void;
718
+ /**
719
+ * Removes a message listener.
720
+ * @param {string} type - The identifier for the message type.
721
+ * @returns {boolean} True if the listener was removed, false otherwise.
722
+ */
723
+ removeMessageListener(type: string): boolean;
724
+ /**
725
+ * Retrieves a message listener.
726
+ * @param {string} type - The identifier for the message type.
727
+ * @returns {MessageCallback|undefined} The listener, or undefined if not found.
728
+ */
729
+ getMessageListener(type: string): MessageCallback | undefined;
730
+ /**
731
+ * Checks if a message listener exists.
732
+ * @param {string} type - The identifier for the message type.
733
+ * @returns {boolean} True if the listener exists, false otherwise.
734
+ */
735
+ hasMessageListener(type: string): boolean;
736
+ /**
737
+ * Clears all registered message listeners.
738
+ * @returns {void}
739
+ */
740
+ clearMessageListeners(): void;
741
+ /**
742
+ * Returns a copy of the blacklisted event names.
743
+ * @returns {string[]} An array with every blacklisted event name.
744
+ */
745
+ get eventBlacklist(): string[];
746
+ /**
747
+ * Adds an event name to the blacklist. Blacklisted events are ignored when
748
+ * they arrive from the browser.
749
+ * @param {string} type - The event name to ignore.
750
+ * @returns {void}
751
+ * @throws {TypeError} If the type is not a non-empty string.
752
+ */
753
+ addToEventBlacklist(type: string): void;
754
+ /**
755
+ * Removes an event name from the blacklist.
756
+ * @param {string} type - The event name to remove.
757
+ * @returns {boolean} True if the event was removed, false otherwise.
758
+ * @throws {TypeError} If the type is not a non-empty string.
759
+ */
760
+ removeFromEventBlacklist(type: string): boolean;
761
+ /**
762
+ * Checks whether an event name is blacklisted.
763
+ * @param {string} type - The event name to check.
764
+ * @returns {boolean} True if the event is blacklisted, false otherwise.
765
+ * @throws {TypeError} If the type is not a non-empty string.
766
+ */
767
+ hasInEventBlacklist(type: string): boolean;
768
+ /**
769
+ * Removes every event name from the blacklist.
770
+ * @returns {void}
771
+ */
772
+ clearEventBlacklist(): void;
773
+ /**
774
+ * Promotes the waiting Service Worker to the active state.
775
+ *
776
+ * This is the manual counterpart of the `'immediate'` install strategy. It is
777
+ * safe to call at any time: when no worker is waiting, the browser resolves the
778
+ * call without side effects.
779
+ *
780
+ * @param {ExtendableEvent} [event] - The lifecycle event that triggered the call, when any.
781
+ * @returns {Promise<boolean>} `true` when `skipWaiting()` was requested.
782
+ * @throws {TypeError} If `event` is provided and does not expose a `waitUntil` method.
783
+ */
784
+ skipWaiting(event?: ExtendableEvent): Promise<boolean>;
785
+ /**
786
+ * Makes the active Service Worker take control of every open client.
787
+ *
788
+ * This is the manual counterpart of the `'immediate'` activate strategy.
789
+ *
790
+ * @param {ClientQueryOptions} [query] - Filter applied to the clients that must be claimed.
791
+ * @returns {Promise<readonly Client[]>} The clients that are now controlled.
792
+ * @throws {TypeError} If `query` is provided and is not a non-null object.
793
+ */
794
+ claimClients(query?: ClientQueryOptions): Promise<readonly Client[]>;
795
+ /**
796
+ * Forces every controlled client to navigate to the given URL.
797
+ *
798
+ * Useful when the new Service Worker changes the routing contract and the open
799
+ * tabs must be reloaded to stay consistent with the new version.
800
+ *
801
+ * @param {string} [url] - Target URL. Defaults to the current URL of each client.
802
+ * @returns {Promise<number>} The number of clients that were navigated.
803
+ * @throws {TypeError} If `url` is provided and is not a non-empty string.
804
+ */
805
+ reloadClients(url?: string): Promise<number>;
806
+ /**
807
+ * Gets a deep clone of the current global message configuration.
808
+ * @returns {GlobalMsgCode} A deep cloned copy of the global message configuration.
809
+ */
810
+ get globalMsgCode(): GlobalMsgCode;
811
+ /**
812
+ * Replaces the whole global message configuration.
813
+ *
814
+ * The provided object is validated and deep cloned, so later mutations of the
815
+ * argument do not affect the engine.
816
+ *
817
+ * @param {GlobalMsgCode} newConfig - The complete configuration that replaces the current one.
818
+ * @throws {TypeError} If `newConfig` is not a complete, valid {@link GlobalMsgCode} object.
819
+ */
820
+ set globalMsgCode(newConfig: GlobalMsgCode);
821
+ /**
822
+ * Merges the provided properties into the current global message configuration.
823
+ *
824
+ * @param {Partial<GlobalMsgCode>} newConfig - The properties to merge.
825
+ * @throws {TypeError} If `newConfig` is not a valid partial {@link GlobalMsgCode} object.
826
+ */
827
+ updateGlobalMsgCode(newConfig: Partial<GlobalMsgCode>): void;
828
+ /**
829
+ * Adds or updates a custom router configuration for a specific HTTP status code.
830
+ * @param {number} code - The HTTP status code.
831
+ * @param {RouterCodeConfig} config - The configuration object.
832
+ * @throws {TypeError} If code is not a number or config is invalid.
833
+ */
834
+ addRouterCode(code: number, config: RouterCodeConfig): void;
835
+ /**
836
+ * Removes a custom router configuration for a specific HTTP status code.
837
+ * @param {number} code - The HTTP status code to remove.
838
+ * @returns {boolean} True if a code was removed, false otherwise.
839
+ * @throws {TypeError} If code is not a number.
840
+ */
841
+ removeRouterCode(code: number): boolean;
842
+ /**
843
+ * Retrieves a deep clone of the current configuration for a specific HTTP status code.
844
+ * @param {number} code - The HTTP status code.
845
+ * @returns {RouterCodeConfig|undefined} A deep cloned copy of the configuration or undefined.
846
+ * @throws {TypeError} If code is not a number.
847
+ */
848
+ getRouterCode(code: number): RouterCodeConfig | undefined;
849
+ /**
850
+ * Adds a handler for a specific sync event.
851
+ * @param {string} tag - The tag of the sync event.
852
+ * @param {SyncCallback} callback - The function to be executed.
853
+ * @throws {TypeError} If tag is not a string or callback is not a function.
854
+ */
855
+ addSyncListener(tag: string, callback: SyncCallback): void;
856
+ /**
857
+ * Removes a sync handler for a specific tag.
858
+ * @param {string} tag - The tag of the sync event.
859
+ * @returns {boolean} True if the handler was removed.
860
+ * @throws {TypeError} If tag is not a non-empty string.
861
+ */
862
+ removeSyncListener(tag: string): boolean;
863
+ /**
864
+ * Returns the number of registered sync listeners.
865
+ * @returns {number} The count of registered sync listeners.
866
+ */
867
+ get syncListenerSize(): number;
868
+ /**
869
+ * Clears all sync listeners.
870
+ * @returns {void}
871
+ */
872
+ clearSyncListeners(): void;
873
+ /**
874
+ * Gets the number of registered install listeners.
875
+ * @returns {number} The count of registered install listeners.
876
+ */
877
+ get installListenerSize(): number;
878
+ /**
879
+ * Adds an install listener.
880
+ * @param {string} tag - The identifier for the install listener.
881
+ * @param {LifecycleCallback} callback - The callback to execute.
882
+ * @returns {void}
883
+ * @throws {TypeError} If tag is not a non-empty string or callback is not a function.
884
+ */
885
+ addInstallListener(tag: string, callback: LifecycleCallback): void;
886
+ /**
887
+ * Removes an install listener.
888
+ * @param {string} tag - The identifier for the install listener.
889
+ * @returns {boolean} True if the listener was removed, false otherwise.
890
+ * @throws {TypeError} If tag is not a non-empty string.
891
+ */
892
+ removeInstallListener(tag: string): boolean;
893
+ /**
894
+ * Retrieves an install listener.
895
+ * @param {string} tag - The identifier for the install listener.
896
+ * @returns {LifecycleCallback|undefined} The listener, or undefined if not found.
897
+ * @throws {TypeError} If tag is not a non-empty string.
898
+ */
899
+ getInstallListener(tag: string): LifecycleCallback | undefined;
900
+ /**
901
+ * Checks if an install listener exists.
902
+ * @param {string} tag - The identifier for the install listener.
903
+ * @returns {boolean} True if the listener exists, false otherwise.
904
+ * @throws {TypeError} If tag is not a non-empty string.
905
+ */
906
+ hasInstallListener(tag: string): boolean;
907
+ /**
908
+ * Clears all registered install listeners.
909
+ * @returns {void}
910
+ */
911
+ clearInstallListeners(): void;
912
+ /**
913
+ * Gets the number of registered activate listeners.
914
+ * @returns {number} The count of registered activate listeners.
915
+ */
916
+ get activateListenerSize(): number;
917
+ /**
918
+ * Adds an activate listener.
919
+ * @param {string} tag - The identifier for the activate listener.
920
+ * @param {LifecycleCallback} callback - The callback to execute.
921
+ * @returns {void}
922
+ * @throws {TypeError} If tag is not a non-empty string or callback is not a function.
923
+ */
924
+ addActivateListener(tag: string, callback: LifecycleCallback): void;
925
+ /**
926
+ * Removes an activate listener.
927
+ * @param {string} tag - The identifier for the activate listener.
928
+ * @returns {boolean} True if the listener was removed, false otherwise.
929
+ * @throws {TypeError} If tag is not a non-empty string.
930
+ */
931
+ removeActivateListener(tag: string): boolean;
932
+ /**
933
+ * Retrieves an activate listener.
934
+ * @param {string} tag - The identifier for the activate listener.
935
+ * @returns {LifecycleCallback|undefined} The listener, or undefined if not found.
936
+ * @throws {TypeError} If tag is not a non-empty string.
937
+ */
938
+ getActivateListener(tag: string): LifecycleCallback | undefined;
939
+ /**
940
+ * Checks if an activate listener exists.
941
+ * @param {string} tag - The identifier for the activate listener.
942
+ * @returns {boolean} True if the listener exists, false otherwise.
943
+ * @throws {TypeError} If tag is not a non-empty string.
944
+ */
945
+ hasActivateListener(tag: string): boolean;
946
+ /**
947
+ * Clears all registered activate listeners.
948
+ * @returns {void}
949
+ */
950
+ clearActivateListeners(): void;
951
+ /**
952
+ * Removes a registered API handler.
953
+ * @param {string} type - The identifier for the call.
954
+ * @returns {boolean} True if the handler was removed, false otherwise.
955
+ * @throws {TypeError} If type is not a non-empty string.
956
+ */
957
+ offApi(type: string): boolean;
958
+ /**
959
+ * Registers a handler for API calls coming from the browser.
960
+ * @param {string} type - The identifier for the call.
961
+ * @param {ApiHandlerCallback} callback - Function that processes the request and returns a payload.
962
+ * @returns {void}
963
+ * @throws {TypeError} If type is not a non-empty string or callback is not a function.
964
+ */
965
+ onApi(type: string, callback: ApiHandlerCallback): void;
966
+ /**
967
+ * Sends a request to a specific client in the browser and waits for a response.
968
+ * @param {Client} client - The client (tab/worker) to which to send.
969
+ * @param {string} type - The identifier for the call.
970
+ * @param {MessagePayload} [data] - The request payload.
971
+ * @param {number} [timeout=10000] - Maximum waiting time in milliseconds.
972
+ * @returns {Promise<any>} A promise that resolves with the result object or undefined from the Service Worker.
973
+ * @throws {TypeError} If any argument has an invalid type.
974
+ */
975
+ emitApi(client: Client, type: string, data?: MessagePayload, timeout?: number): Promise<any>;
976
+ /**
977
+ * Displays a native notification to the user.
978
+ *
979
+ * @param {string} title - The notification title.
980
+ * @param {string} body - The message body.
981
+ * @param {NotificationOptions} [options] - Additional options from the Notification API.
982
+ * @returns {Promise<void>}
983
+ */
984
+ showNotification(title: string, body: string, options?: NotificationOptions): Promise<void>;
985
+ /**
986
+ * Initializes the Service Worker event listeners.
987
+ * @returns {void}
988
+ * @throws {Error} If the engine has already been started.
989
+ */
990
+ init(): void;
991
+ }
992
+ export default TinyServiceWorkerEngine;
993
+ //# sourceMappingURL=TinyServiceWorkerEngine.d.mts.map