@powerlines/core 0.9.1 → 0.9.3

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 (432) hide show
  1. package/dist/constants/api.cjs +18 -0
  2. package/dist/constants/api.d.cts +6 -0
  3. package/dist/constants/api.d.cts.map +1 -0
  4. package/dist/constants/api.d.mts +6 -0
  5. package/dist/constants/api.d.mts.map +1 -0
  6. package/dist/constants/api.mjs +16 -0
  7. package/dist/constants/api.mjs.map +1 -0
  8. package/dist/constants/commands.cjs +3 -11
  9. package/dist/constants/commands.d.cts +1 -1
  10. package/dist/constants/commands.d.cts.map +1 -1
  11. package/dist/constants/commands.d.mts +1 -1
  12. package/dist/constants/commands.d.mts.map +1 -1
  13. package/dist/constants/commands.mjs +3 -11
  14. package/dist/constants/commands.mjs.map +1 -1
  15. package/dist/constants/devtools.cjs +23 -0
  16. package/dist/constants/devtools.d.cts +13 -0
  17. package/dist/constants/devtools.d.cts.map +1 -0
  18. package/dist/constants/devtools.d.mts +13 -0
  19. package/dist/constants/devtools.d.mts.map +1 -0
  20. package/dist/constants/devtools.mjs +14 -0
  21. package/dist/constants/devtools.mjs.map +1 -0
  22. package/dist/constants/environments.cjs +1 -0
  23. package/dist/constants/extensions.cjs +21 -0
  24. package/dist/constants/extensions.d.cts +5 -0
  25. package/dist/constants/extensions.d.cts.map +1 -0
  26. package/dist/constants/extensions.d.mts +5 -0
  27. package/dist/constants/extensions.d.mts.map +1 -0
  28. package/dist/constants/extensions.mjs +20 -0
  29. package/dist/constants/extensions.mjs.map +1 -0
  30. package/dist/constants/fs.cjs +1 -0
  31. package/dist/constants/hooks.cjs +1 -0
  32. package/dist/constants/index.cjs +48 -24
  33. package/dist/constants/index.d.cts +5 -1
  34. package/dist/constants/index.d.mts +5 -1
  35. package/dist/constants/index.mjs +6 -2
  36. package/dist/constants/log-level.cjs +90 -0
  37. package/dist/constants/log-level.d.cts +63 -0
  38. package/dist/constants/log-level.d.cts.map +1 -0
  39. package/dist/constants/log-level.d.mts +63 -0
  40. package/dist/constants/log-level.d.mts.map +1 -0
  41. package/dist/constants/log-level.mjs +82 -0
  42. package/dist/constants/log-level.mjs.map +1 -0
  43. package/dist/constants/meta.cjs +1 -0
  44. package/dist/constants/plugin.cjs +3 -2
  45. package/dist/constants/plugin.d.cts +2 -2
  46. package/dist/constants/plugin.d.mts +2 -2
  47. package/dist/context/base-context.cjs +127 -0
  48. package/dist/context/base-context.d.cts +81 -0
  49. package/dist/context/base-context.d.cts.map +1 -0
  50. package/dist/context/base-context.d.mts +81 -0
  51. package/dist/context/base-context.d.mts.map +1 -0
  52. package/dist/context/base-context.mjs +125 -0
  53. package/dist/context/base-context.mjs.map +1 -0
  54. package/dist/context/context.cjs +934 -0
  55. package/dist/context/context.d.cts +369 -0
  56. package/dist/context/context.d.cts.map +1 -0
  57. package/dist/context/context.d.mts +369 -0
  58. package/dist/context/context.d.mts.map +1 -0
  59. package/dist/context/context.mjs +932 -0
  60. package/dist/context/context.mjs.map +1 -0
  61. package/dist/context/environment-context.cjs +219 -0
  62. package/dist/context/environment-context.d.cts +100 -0
  63. package/dist/context/environment-context.d.cts.map +1 -0
  64. package/dist/context/environment-context.d.mts +100 -0
  65. package/dist/context/environment-context.d.mts.map +1 -0
  66. package/dist/context/environment-context.mjs +218 -0
  67. package/dist/context/environment-context.mjs.map +1 -0
  68. package/dist/context/execution-context.cjs +230 -0
  69. package/dist/context/execution-context.d.cts +101 -0
  70. package/dist/context/execution-context.d.cts.map +1 -0
  71. package/dist/context/execution-context.d.mts +101 -0
  72. package/dist/context/execution-context.d.mts.map +1 -0
  73. package/dist/context/execution-context.mjs +228 -0
  74. package/dist/context/execution-context.mjs.map +1 -0
  75. package/dist/context/index.cjs +12 -0
  76. package/dist/context/index.d.cts +6 -0
  77. package/dist/context/index.d.mts +6 -0
  78. package/dist/context/index.mjs +7 -0
  79. package/dist/context/plugin-context.cjs +83 -0
  80. package/dist/context/plugin-context.d.cts +18 -0
  81. package/dist/context/plugin-context.d.cts.map +1 -0
  82. package/dist/context/plugin-context.d.mts +18 -0
  83. package/dist/context/plugin-context.d.mts.map +1 -0
  84. package/dist/context/plugin-context.mjs +82 -0
  85. package/dist/context/plugin-context.mjs.map +1 -0
  86. package/dist/index.cjs +62 -6
  87. package/dist/index.d.cts +23 -11
  88. package/dist/index.d.mts +23 -11
  89. package/dist/index.mjs +17 -5
  90. package/dist/lib/config.cjs +167 -28
  91. package/dist/lib/config.d.cts +95 -14
  92. package/dist/lib/config.d.cts.map +1 -1
  93. package/dist/lib/config.d.mts +95 -14
  94. package/dist/lib/config.d.mts.map +1 -1
  95. package/dist/lib/config.mjs +160 -28
  96. package/dist/lib/config.mjs.map +1 -1
  97. package/dist/lib/context-helpers.cjs +43 -0
  98. package/dist/lib/context-helpers.d.cts +19 -0
  99. package/dist/lib/context-helpers.d.cts.map +1 -0
  100. package/dist/lib/context-helpers.d.mts +19 -0
  101. package/dist/lib/context-helpers.d.mts.map +1 -0
  102. package/dist/lib/context-helpers.mjs +41 -0
  103. package/dist/lib/context-helpers.mjs.map +1 -0
  104. package/dist/lib/entry.cjs +9 -9
  105. package/dist/lib/entry.d.cts.map +1 -1
  106. package/dist/lib/entry.d.mts.map +1 -1
  107. package/dist/lib/entry.mjs +9 -9
  108. package/dist/lib/entry.mjs.map +1 -1
  109. package/dist/lib/environment.cjs +72 -0
  110. package/dist/lib/environment.d.cts +12 -0
  111. package/dist/lib/environment.d.cts.map +1 -0
  112. package/dist/lib/environment.d.mts +12 -0
  113. package/dist/lib/environment.d.mts.map +1 -0
  114. package/dist/lib/environment.mjs +67 -0
  115. package/dist/lib/environment.mjs.map +1 -0
  116. package/dist/lib/events.cjs +43 -0
  117. package/dist/lib/events.d.cts +10 -0
  118. package/dist/lib/events.d.cts.map +1 -0
  119. package/dist/lib/events.d.mts +10 -0
  120. package/dist/lib/events.d.mts.map +1 -0
  121. package/dist/lib/events.mjs +42 -0
  122. package/dist/lib/events.mjs.map +1 -0
  123. package/dist/lib/generate-types.cjs +371 -0
  124. package/dist/lib/generate-types.d.cts +67 -0
  125. package/dist/lib/generate-types.d.cts.map +1 -0
  126. package/dist/lib/generate-types.d.mts +67 -0
  127. package/dist/lib/generate-types.d.mts.map +1 -0
  128. package/dist/lib/generate-types.mjs +368 -0
  129. package/dist/lib/generate-types.mjs.map +1 -0
  130. package/dist/lib/hooks.cjs +152 -0
  131. package/dist/lib/hooks.d.cts +28 -0
  132. package/dist/lib/hooks.d.cts.map +1 -0
  133. package/dist/lib/hooks.d.mts +28 -0
  134. package/dist/lib/hooks.d.mts.map +1 -0
  135. package/dist/lib/hooks.mjs +147 -0
  136. package/dist/lib/hooks.mjs.map +1 -0
  137. package/dist/lib/index.cjs +64 -6
  138. package/dist/lib/index.d.cts +15 -3
  139. package/dist/lib/index.d.mts +15 -3
  140. package/dist/lib/index.mjs +19 -5
  141. package/dist/lib/install-dependencies.cjs +25 -0
  142. package/dist/lib/install-dependencies.d.cts +12 -0
  143. package/dist/lib/install-dependencies.d.cts.map +1 -0
  144. package/dist/lib/install-dependencies.d.mts +12 -0
  145. package/dist/lib/install-dependencies.d.mts.map +1 -0
  146. package/dist/lib/install-dependencies.mjs +24 -0
  147. package/dist/lib/install-dependencies.mjs.map +1 -0
  148. package/dist/lib/meta.cjs +57 -0
  149. package/dist/lib/meta.d.cts +34 -0
  150. package/dist/lib/meta.d.cts.map +1 -0
  151. package/dist/lib/meta.d.mts +34 -0
  152. package/dist/lib/meta.d.mts.map +1 -0
  153. package/dist/lib/meta.mjs +54 -0
  154. package/dist/lib/meta.mjs.map +1 -0
  155. package/dist/lib/plugins.cjs +150 -0
  156. package/dist/lib/plugins.d.cts +40 -0
  157. package/dist/lib/plugins.d.cts.map +1 -0
  158. package/dist/lib/plugins.d.mts +40 -0
  159. package/dist/lib/plugins.d.mts.map +1 -0
  160. package/dist/lib/plugins.mjs +146 -0
  161. package/dist/lib/plugins.mjs.map +1 -0
  162. package/dist/lib/resolver.cjs +35 -0
  163. package/dist/lib/resolver.d.cts +21 -0
  164. package/dist/lib/resolver.d.cts.map +1 -0
  165. package/dist/lib/resolver.d.mts +21 -0
  166. package/dist/lib/resolver.d.mts.map +1 -0
  167. package/dist/lib/resolver.mjs +33 -0
  168. package/dist/lib/resolver.mjs.map +1 -0
  169. package/dist/lib/schemas.cjs +9 -0
  170. package/dist/lib/schemas.d.cts +2 -0
  171. package/dist/lib/schemas.d.mts +2 -0
  172. package/dist/lib/schemas.mjs +3 -0
  173. package/dist/lib/streaming-channel.cjs +260 -0
  174. package/dist/lib/streaming-channel.d.cts +133 -0
  175. package/dist/lib/streaming-channel.d.cts.map +1 -0
  176. package/dist/lib/streaming-channel.d.mts +133 -0
  177. package/dist/lib/streaming-channel.d.mts.map +1 -0
  178. package/dist/lib/streaming-channel.mjs +258 -0
  179. package/dist/lib/streaming-channel.mjs.map +1 -0
  180. package/dist/lib/typescript/index.cjs +16 -0
  181. package/dist/lib/typescript/index.d.cts +3 -0
  182. package/dist/lib/typescript/index.d.mts +3 -0
  183. package/dist/lib/typescript/index.mjs +4 -0
  184. package/dist/lib/typescript/ts-morph.cjs +105 -0
  185. package/dist/lib/typescript/ts-morph.d.cts +38 -0
  186. package/dist/lib/typescript/ts-morph.d.cts.map +1 -0
  187. package/dist/lib/typescript/ts-morph.d.mts +38 -0
  188. package/dist/lib/typescript/ts-morph.d.mts.map +1 -0
  189. package/dist/lib/typescript/ts-morph.mjs +102 -0
  190. package/dist/lib/typescript/ts-morph.mjs.map +1 -0
  191. package/dist/lib/typescript/tsconfig.cjs +253 -0
  192. package/dist/lib/typescript/tsconfig.d.cts +77 -0
  193. package/dist/lib/typescript/tsconfig.d.cts.map +1 -0
  194. package/dist/lib/typescript/tsconfig.d.mts +77 -0
  195. package/dist/lib/typescript/tsconfig.d.mts.map +1 -0
  196. package/dist/lib/typescript/tsconfig.mjs +240 -0
  197. package/dist/lib/typescript/tsconfig.mjs.map +1 -0
  198. package/dist/lib/unplugin/helpers.cjs +2 -2
  199. package/dist/lib/unplugin/module-resolution.cjs +21 -20
  200. package/dist/lib/unplugin/module-resolution.d.cts +8 -0
  201. package/dist/lib/unplugin/module-resolution.d.cts.map +1 -1
  202. package/dist/lib/unplugin/module-resolution.d.mts +8 -0
  203. package/dist/lib/unplugin/module-resolution.d.mts.map +1 -1
  204. package/dist/lib/unplugin/module-resolution.mjs +20 -20
  205. package/dist/lib/unplugin/module-resolution.mjs.map +1 -1
  206. package/dist/lib/unplugin/plugin.cjs +57 -63
  207. package/dist/lib/unplugin/plugin.d.cts +11 -5
  208. package/dist/lib/unplugin/plugin.d.cts.map +1 -1
  209. package/dist/lib/unplugin/plugin.d.mts +11 -5
  210. package/dist/lib/unplugin/plugin.d.mts.map +1 -1
  211. package/dist/lib/unplugin/plugin.mjs +57 -63
  212. package/dist/lib/unplugin/plugin.mjs.map +1 -1
  213. package/dist/lib/utilities/file-header.cjs +2 -2
  214. package/dist/lib/utilities/file-header.mjs +2 -2
  215. package/dist/lib/utilities/file-header.mjs.map +1 -1
  216. package/dist/lib/utilities/format.cjs +16 -8
  217. package/dist/lib/utilities/format.d.cts.map +1 -1
  218. package/dist/lib/utilities/format.d.mts.map +1 -1
  219. package/dist/lib/utilities/format.mjs +15 -8
  220. package/dist/lib/utilities/format.mjs.map +1 -1
  221. package/dist/lib/utilities/index.cjs +2 -2
  222. package/dist/lib/utilities/index.mjs +2 -2
  223. package/dist/lib/utilities/source-file.cjs +1 -1
  224. package/dist/lib/utilities/source-map.cjs +1 -1
  225. package/dist/lib/utilities/write-file.cjs +1 -2
  226. package/dist/lib/utilities/write-file.d.cts +1 -1
  227. package/dist/lib/utilities/write-file.d.cts.map +1 -1
  228. package/dist/lib/utilities/write-file.d.mts +1 -1
  229. package/dist/lib/utilities/write-file.d.mts.map +1 -1
  230. package/dist/lib/utilities/write-file.mjs +1 -2
  231. package/dist/lib/utilities/write-file.mjs.map +1 -1
  232. package/dist/lib/vfs.cjs +1104 -0
  233. package/dist/lib/vfs.d.cts +321 -0
  234. package/dist/lib/vfs.d.cts.map +1 -0
  235. package/dist/lib/vfs.d.mts +321 -0
  236. package/dist/lib/vfs.d.mts.map +1 -0
  237. package/dist/lib/vfs.mjs +1102 -0
  238. package/dist/lib/vfs.mjs.map +1 -0
  239. package/dist/plugin-base.cjs +5 -9
  240. package/dist/plugin-base.mjs +5 -9
  241. package/dist/plugin-base.mjs.map +1 -1
  242. package/dist/plugin-utils/build-helpers.cjs +2 -2
  243. package/dist/plugin-utils/build-helpers.mjs +2 -2
  244. package/dist/plugin-utils/build-helpers.mjs.map +1 -1
  245. package/dist/plugin-utils/combine-plugins.d.cts +7 -8
  246. package/dist/plugin-utils/combine-plugins.d.cts.map +1 -1
  247. package/dist/plugin-utils/combine-plugins.d.mts +7 -8
  248. package/dist/plugin-utils/combine-plugins.d.mts.map +1 -1
  249. package/dist/plugin-utils/combine-plugins.mjs.map +1 -1
  250. package/dist/plugin-utils/context-helpers.cjs +29 -16
  251. package/dist/plugin-utils/context-helpers.d.cts +10 -2
  252. package/dist/plugin-utils/context-helpers.d.cts.map +1 -1
  253. package/dist/plugin-utils/context-helpers.d.mts +10 -2
  254. package/dist/plugin-utils/context-helpers.d.mts.map +1 -1
  255. package/dist/plugin-utils/context-helpers.mjs +29 -17
  256. package/dist/plugin-utils/context-helpers.mjs.map +1 -1
  257. package/dist/plugin-utils/docs-helper.cjs +17 -0
  258. package/dist/plugin-utils/docs-helper.d.cts +11 -0
  259. package/dist/plugin-utils/docs-helper.d.cts.map +1 -0
  260. package/dist/plugin-utils/docs-helper.d.mts +11 -0
  261. package/dist/plugin-utils/docs-helper.d.mts.map +1 -0
  262. package/dist/plugin-utils/docs-helper.mjs +16 -0
  263. package/dist/plugin-utils/docs-helper.mjs.map +1 -0
  264. package/dist/plugin-utils/extend.mjs.map +1 -1
  265. package/dist/plugin-utils/filter.cjs +101 -0
  266. package/dist/plugin-utils/filter.d.cts +16 -0
  267. package/dist/plugin-utils/filter.d.cts.map +1 -0
  268. package/dist/plugin-utils/filter.d.mts +16 -0
  269. package/dist/plugin-utils/filter.d.mts.map +1 -0
  270. package/dist/plugin-utils/filter.mjs +91 -0
  271. package/dist/plugin-utils/filter.mjs.map +1 -0
  272. package/dist/plugin-utils/format-package-json.cjs +1 -1
  273. package/dist/plugin-utils/format-package-json.mjs +1 -1
  274. package/dist/plugin-utils/format-package-json.mjs.map +1 -1
  275. package/dist/plugin-utils/format.cjs +44 -0
  276. package/dist/plugin-utils/format.d.cts +11 -0
  277. package/dist/plugin-utils/format.d.cts.map +1 -0
  278. package/dist/plugin-utils/format.d.mts +11 -0
  279. package/dist/plugin-utils/format.d.mts.map +1 -0
  280. package/dist/plugin-utils/format.mjs +43 -0
  281. package/dist/plugin-utils/format.mjs.map +1 -0
  282. package/dist/plugin-utils/get-config-path.cjs +34 -32
  283. package/dist/plugin-utils/get-config-path.d.cts +4 -1
  284. package/dist/plugin-utils/get-config-path.d.cts.map +1 -1
  285. package/dist/plugin-utils/get-config-path.d.mts +4 -1
  286. package/dist/plugin-utils/get-config-path.d.mts.map +1 -1
  287. package/dist/plugin-utils/get-config-path.mjs +34 -32
  288. package/dist/plugin-utils/get-config-path.mjs.map +1 -1
  289. package/dist/plugin-utils/helpers.cjs +25 -10
  290. package/dist/plugin-utils/helpers.d.cts +31 -24
  291. package/dist/plugin-utils/helpers.d.cts.map +1 -1
  292. package/dist/plugin-utils/helpers.d.mts +31 -24
  293. package/dist/plugin-utils/helpers.d.mts.map +1 -1
  294. package/dist/plugin-utils/helpers.mjs +22 -8
  295. package/dist/plugin-utils/helpers.mjs.map +1 -1
  296. package/dist/plugin-utils/index.cjs +48 -4
  297. package/dist/plugin-utils/index.d.cts +9 -3
  298. package/dist/plugin-utils/index.d.mts +9 -3
  299. package/dist/plugin-utils/index.mjs +11 -5
  300. package/dist/plugin-utils/install.cjs +47 -0
  301. package/dist/plugin-utils/install.d.cts +23 -0
  302. package/dist/plugin-utils/install.d.cts.map +1 -0
  303. package/dist/plugin-utils/install.d.mts +23 -0
  304. package/dist/plugin-utils/install.d.mts.map +1 -0
  305. package/dist/plugin-utils/install.mjs +45 -0
  306. package/dist/plugin-utils/install.mjs.map +1 -0
  307. package/dist/plugin-utils/logging.cjs +605 -0
  308. package/dist/plugin-utils/logging.d.cts +111 -0
  309. package/dist/plugin-utils/logging.d.cts.map +1 -0
  310. package/dist/plugin-utils/logging.d.mts +111 -0
  311. package/dist/plugin-utils/logging.d.mts.map +1 -0
  312. package/dist/plugin-utils/logging.mjs +588 -0
  313. package/dist/plugin-utils/logging.mjs.map +1 -0
  314. package/dist/plugin-utils/merge.cjs +4 -4
  315. package/dist/plugin-utils/merge.d.cts +0 -1
  316. package/dist/plugin-utils/merge.d.cts.map +1 -1
  317. package/dist/plugin-utils/merge.d.mts.map +1 -1
  318. package/dist/plugin-utils/merge.mjs +3 -3
  319. package/dist/plugin-utils/merge.mjs.map +1 -1
  320. package/dist/plugin-utils/modules.cjs +1 -1
  321. package/dist/plugin-utils/modules.mjs +1 -1
  322. package/dist/plugin-utils/modules.mjs.map +1 -1
  323. package/dist/plugin-utils/paths.cjs +18 -4
  324. package/dist/plugin-utils/paths.d.cts +12 -2
  325. package/dist/plugin-utils/paths.d.cts.map +1 -1
  326. package/dist/plugin-utils/paths.d.mts +12 -2
  327. package/dist/plugin-utils/paths.d.mts.map +1 -1
  328. package/dist/plugin-utils/paths.mjs +18 -4
  329. package/dist/plugin-utils/paths.mjs.map +1 -1
  330. package/dist/plugin-utils/virtual.cjs +80 -0
  331. package/dist/plugin-utils/virtual.d.cts +69 -0
  332. package/dist/plugin-utils/virtual.d.cts.map +1 -0
  333. package/dist/plugin-utils/virtual.d.mts +69 -0
  334. package/dist/plugin-utils/virtual.d.mts.map +1 -0
  335. package/dist/plugin-utils/virtual.mjs +73 -0
  336. package/dist/plugin-utils/virtual.mjs.map +1 -0
  337. package/dist/schemas/fs.cjs +232 -0
  338. package/dist/schemas/fs.d.cts +127 -0
  339. package/dist/schemas/fs.d.cts.map +1 -0
  340. package/dist/schemas/fs.d.mts +127 -0
  341. package/dist/schemas/fs.d.mts.map +1 -0
  342. package/dist/schemas/fs.mjs +226 -0
  343. package/dist/schemas/fs.mjs.map +1 -0
  344. package/dist/storage/base.cjs +216 -0
  345. package/dist/storage/base.d.cts +201 -0
  346. package/dist/storage/base.d.cts.map +1 -0
  347. package/dist/storage/base.d.mts +201 -0
  348. package/dist/storage/base.d.mts.map +1 -0
  349. package/dist/storage/base.mjs +215 -0
  350. package/dist/storage/base.mjs.map +1 -0
  351. package/dist/storage/file-system.cjs +180 -0
  352. package/dist/storage/file-system.d.cts +129 -0
  353. package/dist/storage/file-system.d.cts.map +1 -0
  354. package/dist/storage/file-system.d.mts +129 -0
  355. package/dist/storage/file-system.d.mts.map +1 -0
  356. package/dist/storage/file-system.mjs +179 -0
  357. package/dist/storage/file-system.mjs.map +1 -0
  358. package/dist/storage/helpers.cjs +37 -0
  359. package/dist/storage/helpers.d.cts +25 -0
  360. package/dist/storage/helpers.d.cts.map +1 -0
  361. package/dist/storage/helpers.d.mts +25 -0
  362. package/dist/storage/helpers.d.mts.map +1 -0
  363. package/dist/storage/helpers.mjs +34 -0
  364. package/dist/storage/helpers.mjs.map +1 -0
  365. package/dist/storage/index.cjs +12 -0
  366. package/dist/storage/index.d.cts +5 -0
  367. package/dist/storage/index.d.mts +5 -0
  368. package/dist/storage/index.mjs +6 -0
  369. package/dist/storage/virtual.cjs +98 -0
  370. package/dist/storage/virtual.d.cts +80 -0
  371. package/dist/storage/virtual.d.cts.map +1 -0
  372. package/dist/storage/virtual.d.mts +80 -0
  373. package/dist/storage/virtual.d.mts.map +1 -0
  374. package/dist/storage/virtual.mjs +97 -0
  375. package/dist/storage/virtual.mjs.map +1 -0
  376. package/dist/types/api.d.cts +18 -99
  377. package/dist/types/api.d.cts.map +1 -1
  378. package/dist/types/api.d.mts +18 -99
  379. package/dist/types/api.d.mts.map +1 -1
  380. package/dist/types/config.d.cts +239 -141
  381. package/dist/types/config.d.cts.map +1 -1
  382. package/dist/types/config.d.mts +240 -142
  383. package/dist/types/config.d.mts.map +1 -1
  384. package/dist/types/context.d.cts +228 -117
  385. package/dist/types/context.d.cts.map +1 -1
  386. package/dist/types/context.d.mts +231 -120
  387. package/dist/types/context.d.mts.map +1 -1
  388. package/dist/types/fs.d.cts +49 -5
  389. package/dist/types/fs.d.cts.map +1 -1
  390. package/dist/types/fs.d.mts +50 -6
  391. package/dist/types/fs.d.mts.map +1 -1
  392. package/dist/types/hooks.d.cts +26 -38
  393. package/dist/types/hooks.d.cts.map +1 -1
  394. package/dist/types/hooks.d.mts +26 -38
  395. package/dist/types/hooks.d.mts.map +1 -1
  396. package/dist/types/index.d.cts +9 -0
  397. package/dist/types/index.d.mts +8 -8
  398. package/dist/types/logging.d.cts +161 -0
  399. package/dist/types/logging.d.cts.map +1 -0
  400. package/dist/types/logging.d.mts +161 -0
  401. package/dist/types/logging.d.mts.map +1 -0
  402. package/dist/types/plugin.d.cts +23 -24
  403. package/dist/types/plugin.d.cts.map +1 -1
  404. package/dist/types/plugin.d.mts +23 -24
  405. package/dist/types/plugin.d.mts.map +1 -1
  406. package/dist/types/tsconfig.d.cts +15 -12
  407. package/dist/types/tsconfig.d.cts.map +1 -1
  408. package/dist/types/tsconfig.d.mts +16 -13
  409. package/dist/types/tsconfig.d.mts.map +1 -1
  410. package/dist/types/unplugin.d.cts +10 -23
  411. package/dist/types/unplugin.d.cts.map +1 -1
  412. package/dist/types/unplugin.d.mts +10 -23
  413. package/dist/types/unplugin.d.mts.map +1 -1
  414. package/package.json +270 -425
  415. package/schemas/fs.capnp +42 -0
  416. package/dist/lib/logger.cjs +0 -59
  417. package/dist/lib/logger.d.cts +0 -23
  418. package/dist/lib/logger.d.cts.map +0 -1
  419. package/dist/lib/logger.d.mts +0 -23
  420. package/dist/lib/logger.d.mts.map +0 -1
  421. package/dist/lib/logger.mjs +0 -56
  422. package/dist/lib/logger.mjs.map +0 -1
  423. package/dist/types/_internal.cjs +0 -0
  424. package/dist/types/_internal.d.cts +0 -106
  425. package/dist/types/_internal.d.cts.map +0 -1
  426. package/dist/types/_internal.d.mts +0 -106
  427. package/dist/types/_internal.d.mts.map +0 -1
  428. package/dist/types/_internal.mjs +0 -1
  429. package/dist/types/commands.d.cts +0 -13
  430. package/dist/types/commands.d.cts.map +0 -1
  431. package/dist/types/commands.d.mts +0 -13
  432. package/dist/types/commands.d.mts.map +0 -1
@@ -1,12 +1,12 @@
1
1
  import { UnpluginBuilderVariant, UnpluginOptions as UnpluginOptions$1 } from "../types/unplugin.cjs";
2
2
  import { Plugin, PluginHook, PluginHookFields, PluginHookObject, PluginHooks, TypesResult } from "../types/plugin.cjs";
3
- import { HookFields, PluginHooksListItem, UnpluginHooksListItem } from "../types/hooks.cjs";
3
+ import { HooksListItem } from "../types/hooks.cjs";
4
4
  import { PluginContext, ResolveResult, UnresolvedContext } from "../types/context.cjs";
5
- import { EnvironmentConfig, EnvironmentResolvedConfig, PluginConfig, PluginConfigObject, PluginConfigTuple, ResolvedConfig } from "../types/config.cjs";
6
- import * as _stryke_types_base0 from "@stryke/types/base";
5
+ import { EnvironmentConfig, PluginConfig, PluginConfigObject, PluginConfigTuple, ResolvedEnvironmentConfig } from "../types/config.cjs";
6
+ import * as _$_stryke_types_base0 from "@stryke/types/base";
7
7
  import { AnyFunction } from "@stryke/types/base";
8
- import * as unplugin from "unplugin";
9
- import * as rollup from "rollup";
8
+ import * as _$unplugin from "unplugin";
9
+ import * as _$rollup from "rollup";
10
10
 
11
11
  //#region src/plugin-utils/helpers.d.ts
12
12
  /**
@@ -15,28 +15,28 @@ import * as rollup from "rollup";
15
15
  * @param value - The object to check
16
16
  * @returns True if the object is a {@link Plugin}, false otherwise
17
17
  */
18
- declare function isPlugin<TContext extends PluginContext = PluginContext<ResolvedConfig>>(value: unknown): value is Plugin<TContext>;
18
+ declare function isPlugin<TContext extends PluginContext = PluginContext>(value: unknown): value is Plugin<TContext>;
19
19
  /**
20
20
  * Type guard to check if an object is a {@link PluginConfigObject}
21
21
  *
22
22
  * @param value - The object to check
23
23
  * @returns True if the object is a {@link PluginConfigObject}, false otherwise
24
24
  */
25
- declare function isPluginConfigObject<TContext extends PluginContext = PluginContext<ResolvedConfig>>(value: unknown): value is PluginConfigObject<TContext>;
25
+ declare function isPluginConfigObject<TContext extends PluginContext = PluginContext>(value: unknown): value is PluginConfigObject<TContext>;
26
26
  /**
27
27
  * Type guard to check if an object is a {@link PluginConfigTuple}
28
28
  *
29
29
  * @param value - The object to check
30
30
  * @returns True if the object is a {@link PluginConfigTuple}, false otherwise
31
31
  */
32
- declare function isPluginConfigTuple<TContext extends PluginContext = PluginContext<ResolvedConfig>>(value: unknown): value is PluginConfigTuple<TContext>;
32
+ declare function isPluginConfigTuple<TContext extends PluginContext = PluginContext>(value: unknown): value is PluginConfigTuple<TContext>;
33
33
  /**
34
34
  * Type guard to check if an object is a {@link PluginConfig}
35
35
  *
36
36
  * @param value - The object to check
37
37
  * @returns True if the object is a {@link PluginConfig}, false otherwise
38
38
  */
39
- declare function isPluginConfig<TContext extends PluginContext = PluginContext<ResolvedConfig>>(value: unknown): value is PluginConfig<TContext>;
39
+ declare function isPluginConfig<TContext extends PluginContext = PluginContext>(value: unknown): value is PluginConfig<TContext>;
40
40
  /**
41
41
  * Type guard to check if an value is a {@link PluginHook} function
42
42
  *
@@ -58,14 +58,14 @@ declare function isPluginHookFunction(value: unknown): value is AnyFunction;
58
58
  * @returns True if the object is a {@link PluginHook}, false otherwise
59
59
  */
60
60
  declare function isPluginHook(value: unknown): value is PluginHook<AnyFunction>;
61
- type GetHookHandlerReturnType<TContext extends PluginContext = PluginContext, TField extends HookFields<TContext> = HookFields<TContext>> = TField extends PluginHookFields ? PluginHooksListItem<TContext, TField>["handler"] : TField extends UnpluginBuilderVariant ? UnpluginHooksListItem<TContext, TField>["handler"] : never;
61
+ type GetHookHandlerReturnType<TContext extends PluginContext = PluginContext, TField extends string = string> = HooksListItem<TContext, TField>["handler"];
62
62
  /**
63
63
  * Extract the hook handler function from a plugin hook
64
64
  *
65
65
  * @param pluginHook - The plugin hook to extract the handler function from
66
66
  * @returns The hook handler function
67
67
  */
68
- declare function getHookHandler<TContext extends PluginContext = PluginContext, TField extends HookFields<TContext> = HookFields<TContext>>(pluginHook: PluginHook<AnyFunction>): GetHookHandlerReturnType<TContext, TField>;
68
+ declare function getHookHandler<TContext extends PluginContext = PluginContext, TKey extends string = string>(pluginHook: PluginHook<AnyFunction>): GetHookHandlerReturnType<TContext, TKey>;
69
69
  /**
70
70
  * Extract a plugin hook from a plugin
71
71
  *
@@ -75,21 +75,21 @@ declare function getHookHandler<TContext extends PluginContext = PluginContext,
75
75
  * @returns The extracted hook, or undefined if the hook does not exist
76
76
  */
77
77
  declare function extractPluginHook<TContext extends PluginContext = PluginContext, TPlugin extends Plugin<TContext> = Plugin<TContext>>(context: TContext, plugin: TPlugin, hook: keyof PluginHooks<TContext>): {
78
- normal: OmitThisParameter<((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>) | (((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>) & PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>, "code" | "id">) | (PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>, never> & ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>)) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>) | (((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>) & PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>, "id">) | (PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>, never> & ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>)) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
78
+ normal: OmitThisParameter<((this: TContext, code: string) => _$_stryke_types_base0.MaybePromise<TypesResult | string | undefined | null>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>) | (((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>) & PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>, "id" | "code">) | (PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>, never> & ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>)) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>) | (((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>) & PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>, "id">) | (PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>, never> & ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>)) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
79
79
  isEntry: boolean;
80
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) | (((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
80
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) | (((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
81
81
  isEntry: boolean;
82
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) & PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
82
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) & PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
83
83
  isEntry: boolean;
84
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>, "id">) | (PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
84
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>, "id">) | (PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
85
85
  isEntry: boolean;
86
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>, never> & ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
86
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>, never> & ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
87
87
  isEntry: boolean;
88
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>)) | (((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & ((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | (((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & PluginHookObject<(this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>, never>) | (((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & (TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>) | (PluginHookObject<(this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>, never> & ((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | ((this: TContext, code: string) => _stryke_types_base0.MaybePromise<TypesResult | string | undefined | null>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: TContext, name: string, environment: EnvironmentConfig) => _stryke_types_base0.MaybePromise<Partial<EnvironmentResolvedConfig> | undefined | null>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>)>;
88
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>)) | (((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & ((this: UnresolvedContext<TContext["config"], TContext["system"]>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | (((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & PluginHookObject<(this: UnresolvedContext<TContext["config"], TContext["system"]>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>, never>) | (((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & (TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>) | (PluginHookObject<(this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>, never> & ((this: UnresolvedContext<TContext["config"], TContext["system"]>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: TContext, name: string, environment: EnvironmentConfig) => _$_stryke_types_base0.MaybePromise<Partial<ResolvedEnvironmentConfig> | undefined | null>) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>)>;
89
89
  } | {
90
- [x: string]: OmitThisParameter<((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
90
+ [x: string]: OmitThisParameter<((this: TContext, code: string) => _$_stryke_types_base0.MaybePromise<TypesResult | string | undefined | null>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
91
91
  isEntry: boolean;
92
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) | ((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) | (((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & ((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | ((this: TContext, code: string) => _stryke_types_base0.MaybePromise<TypesResult | string | undefined | null>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: TContext, name: string, environment: EnvironmentConfig) => _stryke_types_base0.MaybePromise<Partial<EnvironmentResolvedConfig> | undefined | null>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>)>;
92
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) | ((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) | (((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & ((this: UnresolvedContext<TContext["config"], TContext["system"]>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: TContext, name: string, environment: EnvironmentConfig) => _$_stryke_types_base0.MaybePromise<Partial<ResolvedEnvironmentConfig> | undefined | null>) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>)>;
93
93
  normal?: undefined;
94
94
  } | undefined;
95
95
  /**
@@ -105,7 +105,7 @@ declare function isUnpluginHookKey<TUnpluginBuilderVariant extends UnpluginBuild
105
105
  * @param keys - The name of the hook to check.
106
106
  * @returns True if the hook is external, false otherwise.
107
107
  */
108
- declare function isPluginHookField<TContext extends PluginContext>(keys: string): keys is PluginHookFields<TContext>;
108
+ declare function isPluginHookField<TContext extends PluginContext>(keys: string): boolean;
109
109
  /**
110
110
  * Check if a hook is external.
111
111
  *
@@ -120,7 +120,14 @@ declare function isUnpluginHookField<TUnpluginBuilderVariant extends UnpluginBui
120
120
  * @param plugins - The list of plugins to check against
121
121
  * @returns True if the plugin should be deduplicated, false otherwise
122
122
  */
123
- declare function checkDedupe<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TContext extends PluginContext<TResolvedConfig> = PluginContext<TResolvedConfig>>(plugin: Plugin<TContext>, plugins: Plugin<TContext>[]): boolean;
123
+ declare function isDuplicate<TContext extends PluginContext = PluginContext>(plugin: Plugin<TContext>, plugins: Plugin<TContext>[]): boolean;
124
+ /**
125
+ * Remove duplicate hooks from a list of hooks, keeping the first occurrence of each plugin.
126
+ *
127
+ * @param hooksList - The list of hooks to deduplicate.
128
+ * @returns A new list of hooks with duplicates removed.
129
+ */
130
+ declare function dedupeHooklist<TContext extends PluginContext = PluginContext, TField extends PluginHookFields<TContext> = PluginHookFields<TContext>, TList extends HooksListItem<TContext, TField> = HooksListItem<TContext, TField>>(hooksList: TList[]): TList[];
124
131
  /**
125
132
  * Add a plugin hook to the hooks list.
126
133
  *
@@ -129,15 +136,15 @@ declare function checkDedupe<TResolvedConfig extends ResolvedConfig = ResolvedCo
129
136
  * @param pluginHook - The plugin hook to add
130
137
  * @param hooksList - The list of hooks to add to
131
138
  */
132
- declare function addPluginHook<TContext extends PluginContext = PluginContext, TField extends PluginHookFields<TContext> = PluginHookFields<TContext>, TList extends PluginHooksListItem<TContext, TField> = PluginHooksListItem<TContext, TField>>(context: TContext, plugin: Plugin<TContext>, pluginHook: PluginHook<AnyFunction>, hooksList: TList[]): void;
139
+ declare function addPluginHook<TContext extends PluginContext = PluginContext, TField extends PluginHookFields<TContext> = PluginHookFields<TContext>, TList extends HooksListItem<TContext, TField> = HooksListItem<TContext, TField>>(context: TContext, plugin: Plugin<TContext>, pluginHook: PluginHook<AnyFunction>, hooksList: TList[]): TList[];
133
140
  /**
134
141
  * Check the provided {@link PluginConfig}, and return a stringified version of the invalid configuration. If an array is provided, check each item in the array.
135
142
  *
136
143
  * @param config - The plugin configuration to check
137
144
  * @returns Null if the configuration is valid, otherwise an array of stringified invalid configurations
138
145
  */
139
- declare function findInvalidPluginConfig<TContext extends PluginContext = PluginContext<ResolvedConfig>>(config: PluginConfig<TContext>): string[] | null;
146
+ declare function findInvalidPluginConfig<TContext extends PluginContext = PluginContext>(config: PluginConfig<TContext>): string[] | null;
140
147
  declare type __ΩGetHookHandlerReturnType = any[];
141
148
  //#endregion
142
- export { GetHookHandlerReturnType, __ΩGetHookHandlerReturnType, addPluginHook, checkDedupe, extractPluginHook, findInvalidPluginConfig, getHookHandler, isPlugin, isPluginConfig, isPluginConfigObject, isPluginConfigTuple, isPluginHook, isPluginHookField, isPluginHookFunction, isPluginHookObject, isUnpluginHookField, isUnpluginHookKey };
149
+ export { GetHookHandlerReturnType, __ΩGetHookHandlerReturnType, addPluginHook, dedupeHooklist, extractPluginHook, findInvalidPluginConfig, getHookHandler, isDuplicate, isPlugin, isPluginConfig, isPluginConfigObject, isPluginConfigTuple, isPluginHook, isPluginHookField, isPluginHookFunction, isPluginHookObject, isUnpluginHookField, isUnpluginHookKey };
143
150
  //# sourceMappingURL=helpers.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.cts","names":[],"sources":["../../src/plugin-utils/helpers.ts"],"mappings":";;;;;;;;;;;;;;;;AA0DA;iBAAgB,QAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,KAAA,YAAiB,KAAA,IAAS,MAAA,CAAO,QAAA;;;;;;;iBAkCnB,oBAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,KAAA,YAAiB,KAAA,IAAS,kBAAA,CAAmB,QAAA;;;;;;;iBAiB/B,mBAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,KAAA,YAAiB,KAAA,IAAS,iBAAA,CAAkB,QAAA;;;;;AArB9C;;iBAsCgB,cAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,KAAA,YAAiB,KAAA,IAAS,YAAA,CAAa,QAAA;;;;;;;iBAiBzB,kBAAA,CACd,KAAA,YACC,KAAA,IAAS,gBAAA,CAAiB,WAAA;;;;;;;iBAUb,oBAAA,CAAqB,KAAA,YAAiB,KAAA,IAAS,WAAA;;;;AAlD/D;;;iBA4DgB,YAAA,CAAa,KAAA,YAAiB,KAAA,IAAS,UAAA,CAAW,WAAA;AAAA,KAItD,wBAAA,kBACO,aAAA,GAAgB,aAAA,iBAClB,UAAA,CAAW,QAAA,IAAY,UAAA,CAAW,QAAA,KAC/C,MAAA,SAAe,gBAAA,GACf,mBAAA,CAAoB,QAAA,EAAU,MAAA,eAC9B,MAAA,SAAe,sBAAA,GACb,qBAAA,CAAsB,QAAA,EAAU,MAAA;;;;;;;iBAmBtB,cAAA,kBACG,aAAA,GAAgB,aAAA,iBAClB,UAAA,CAAW,QAAA,IAAY,UAAA,CAAW,QAAA,EAAA,CAEjD,UAAA,EAAY,UAAA,CAAW,WAAA,IACtB,wBAAA,CAAyB,QAAA,EAAU,MAAA;;;;;;;;;iBActB,iBAAA,kBACG,aAAA,GAAgB,aAAA,kBACjB,MAAA,CAAO,QAAA,IAAY,MAAA,CAAO,QAAA,EAAA,CAC1C,OAAA,EAAS,QAAA,EAAU,MAAA,EAAQ,OAAA,EAAS,IAAA,QAAY,WAAA,CAAY,QAAA;oCAAD,QAAA,CAAA,oBAAA;;;;;;;;;;wvBA3F1C,o8BAAA,s8BAAA,o9BAAA,68BAAA,i3BAAA,69BAAA,o9BAAA;;;;+vBACA,88BAAA,68BAAA;;;;;AAiBnB;;;;iBA+FgB,iBAAA,iCACkB,sBAAA,GAC9B,sBAAA,CAAA,CAEF,IAAA,WACC,IAAA,OAAW,uBAAA,UAAiC,iBAAA,CAAgB,uBAAA;;;;;;AAxF/D;iBAoGgB,iBAAA,kBAAmC,aAAA,CAAA,CACjD,IAAA,WACC,IAAA,IAAQ,gBAAA,CAAiB,QAAA;;;;;;;iBAaZ,mBAAA,iCACkB,sBAAA,GAC9B,sBAAA,CAAA,CACF,KAAA,WAAgB,KAAA,IAAS,uBAAA;AA5G3B;;;;;;;AAAA,iBA0HgB,WAAA,yBACU,cAAA,GAAiB,cAAA,mBACxB,aAAA,CAAc,eAAA,IAC7B,aAAA,CAAc,eAAA,EAAA,CAChB,MAAA,EAAQ,MAAA,CAAO,QAAA,GAAW,OAAA,EAAS,MAAA,CAAO,QAAA;;;AA1H5C;;;;;;iBA6IgB,aAAA,kBACG,aAAA,GAAgB,aAAA,iBAClB,gBAAA,CAAiB,QAAA,IAAY,gBAAA,CAAiB,QAAA,iBAC/C,mBAAA,CAAoB,QAAA,EAAU,MAAA,IAAU,mBAAA,CACpD,QAAA,EACA,MAAA,EAAA,CAGF,OAAA,EAAS,QAAA,EACT,MAAA,EAAQ,MAAA,CAAO,QAAA,GACf,UAAA,EAAY,UAAA,CAAW,WAAA,GACvB,SAAA,EAAW,KAAA;;;;;;;iBA+BG,uBAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,MAAA,EAAQ,YAAA,CAAa,QAAA;AAAA"}
1
+ {"version":3,"file":"helpers.d.cts","names":[],"sources":["../../src/plugin-utils/helpers.ts"],"mappings":";;;;;;;;;;;;;;;;;iBAsDgB,QAAA,kBAA0B,aAAA,GAAgB,aAAA,CAAA,CACxD,KAAA,YACC,KAAA,IAAS,MAAA,CAAO,QAAA;;;;;;;iBA6BH,oBAAA,kBACG,aAAA,GAAgB,aAAA,CAAA,CACjC,KAAA,YAAiB,KAAA,IAAS,kBAAA,CAAmB,QAAA;;;;;;;iBAiB/B,mBAAA,kBACG,aAAA,GAAgB,aAAA,CAAA,CACjC,KAAA,YAAiB,KAAA,IAAS,iBAAA,CAAkB,QAAA;;;;AArB9C;;;iBAsCgB,cAAA,kBAAgC,aAAA,GAAgB,aAAA,CAAA,CAC9D,KAAA,YACC,KAAA,IAAS,YAAA,CAAa,QAAA;;;;;;;iBAiBT,kBAAA,CACd,KAAA,YACC,KAAA,IAAS,gBAAA,CAAiB,WAAA;;;;;;;iBAUb,oBAAA,CAAqB,KAAA,YAAiB,KAAA,IAAS,WAAA;AAlD/D;;;;;;AAAA,iBA4DgB,YAAA,CAAa,KAAA,YAAiB,KAAA,IAAS,UAAA,CAAW,WAAA;AAAA,KAItD,wBAAA,kBACO,aAAA,GAAgB,aAAA,oCAE/B,aAAA,CAAc,QAAA,EAAU,MAAA;;;;;;;iBAQZ,cAAA,kBACG,aAAA,GAAgB,aAAA,+BAAA,CAGjC,UAAA,EAAY,UAAA,CAAW,WAAA,IACtB,wBAAA,CAAyB,QAAA,EAAU,IAAA;;;;AA7DtC;;;;;iBA2EgB,iBAAA,kBACG,aAAA,GAAgB,aAAA,kBACjB,MAAA,CAAO,QAAA,IAAY,MAAA,CAAO,QAAA,EAAA,CAC1C,OAAA,EAAS,QAAA,EAAU,MAAA,EAAQ,OAAA,EAAS,IAAA,QAAY,WAAA,CAAY,QAAA;;;;;;;;;;;qwBA5E7B,09BAAA,i9BAAA,0+BAAA,w9BAAA,i3BAAA,w+BAAA,0+BAAA;;;;4wBAmBL,y9BAAA,m+BAAA;;;;;;;;AAU5B;iBAqEgB,iBAAA,iCACkB,sBAAA,GAC9B,sBAAA,CAAA,CAEF,IAAA,WACC,IAAA,OAAW,uBAAA,UAAiC,iBAAA,CAAgB,uBAAA;;;;;;;iBAY/C,iBAAA,kBAAmC,aAAA,CAAA,CACjD,IAAA;AA7EF;;;;;;AAAA,iBAwFgB,mBAAA,iCACkB,sBAAA,GAC9B,sBAAA,CAAA,CACF,KAAA,WAAgB,KAAA,IAAS,uBAAA;;;;AAvF3B;;;;iBAqGgB,WAAA,kBAA6B,aAAA,GAAgB,aAAA,CAAA,CAC3D,MAAA,EAAQ,MAAA,CAAO,QAAA,GACf,OAAA,EAAS,MAAA,CAAO,QAAA;;;;;;;iBAmBF,cAAA,kBACG,aAAA,GAAgB,aAAA,iBAClB,gBAAA,CAAiB,QAAA,IAAY,gBAAA,CAAiB,QAAA,iBAC/C,aAAA,CAAc,QAAA,EAAU,MAAA,IAAU,aAAA,CAC9C,QAAA,EACA,MAAA,EAAA,CAEF,SAAA,EAAW,KAAA,KAAU,KAAA;;;;;;;;AAtHvB;iBA4IgB,aAAA,kBACG,aAAA,GAAgB,aAAA,iBAClB,gBAAA,CAAiB,QAAA,IAAY,gBAAA,CAAiB,QAAA,iBAC/C,aAAA,CAAc,QAAA,EAAU,MAAA,IAAU,aAAA,CAC9C,QAAA,EACA,MAAA,EAAA,CAGF,OAAA,EAAS,QAAA,EACT,MAAA,EAAQ,MAAA,CAAO,QAAA,GACf,UAAA,EAAY,UAAA,CAAW,WAAA,GACvB,SAAA,EAAW,KAAA,KACV,KAAA;;;;;;;iBA6Ba,uBAAA,kBACG,aAAA,GAAgB,aAAA,CAAA,CACjC,MAAA,EAAQ,YAAA,CAAa,QAAA;AAAA"}
@@ -1,12 +1,12 @@
1
1
  import { UnpluginBuilderVariant, UnpluginOptions as UnpluginOptions$1 } from "../types/unplugin.mjs";
2
2
  import { Plugin, PluginHook, PluginHookFields, PluginHookObject, PluginHooks, TypesResult } from "../types/plugin.mjs";
3
- import { HookFields, PluginHooksListItem, UnpluginHooksListItem } from "../types/hooks.mjs";
3
+ import { HooksListItem } from "../types/hooks.mjs";
4
4
  import { PluginContext, ResolveResult, UnresolvedContext } from "../types/context.mjs";
5
- import { EnvironmentConfig, EnvironmentResolvedConfig, PluginConfig, PluginConfigObject, PluginConfigTuple, ResolvedConfig } from "../types/config.mjs";
6
- import * as unplugin from "unplugin";
7
- import * as _stryke_types_base0 from "@stryke/types/base";
5
+ import { EnvironmentConfig, PluginConfig, PluginConfigObject, PluginConfigTuple, ResolvedEnvironmentConfig } from "../types/config.mjs";
6
+ import * as _$unplugin from "unplugin";
7
+ import * as _$_stryke_types_base0 from "@stryke/types/base";
8
8
  import { AnyFunction } from "@stryke/types/base";
9
- import * as rollup from "rollup";
9
+ import * as _$rollup from "rollup";
10
10
 
11
11
  //#region src/plugin-utils/helpers.d.ts
12
12
  /**
@@ -15,28 +15,28 @@ import * as rollup from "rollup";
15
15
  * @param value - The object to check
16
16
  * @returns True if the object is a {@link Plugin}, false otherwise
17
17
  */
18
- declare function isPlugin<TContext extends PluginContext = PluginContext<ResolvedConfig>>(value: unknown): value is Plugin<TContext>;
18
+ declare function isPlugin<TContext extends PluginContext = PluginContext>(value: unknown): value is Plugin<TContext>;
19
19
  /**
20
20
  * Type guard to check if an object is a {@link PluginConfigObject}
21
21
  *
22
22
  * @param value - The object to check
23
23
  * @returns True if the object is a {@link PluginConfigObject}, false otherwise
24
24
  */
25
- declare function isPluginConfigObject<TContext extends PluginContext = PluginContext<ResolvedConfig>>(value: unknown): value is PluginConfigObject<TContext>;
25
+ declare function isPluginConfigObject<TContext extends PluginContext = PluginContext>(value: unknown): value is PluginConfigObject<TContext>;
26
26
  /**
27
27
  * Type guard to check if an object is a {@link PluginConfigTuple}
28
28
  *
29
29
  * @param value - The object to check
30
30
  * @returns True if the object is a {@link PluginConfigTuple}, false otherwise
31
31
  */
32
- declare function isPluginConfigTuple<TContext extends PluginContext = PluginContext<ResolvedConfig>>(value: unknown): value is PluginConfigTuple<TContext>;
32
+ declare function isPluginConfigTuple<TContext extends PluginContext = PluginContext>(value: unknown): value is PluginConfigTuple<TContext>;
33
33
  /**
34
34
  * Type guard to check if an object is a {@link PluginConfig}
35
35
  *
36
36
  * @param value - The object to check
37
37
  * @returns True if the object is a {@link PluginConfig}, false otherwise
38
38
  */
39
- declare function isPluginConfig<TContext extends PluginContext = PluginContext<ResolvedConfig>>(value: unknown): value is PluginConfig<TContext>;
39
+ declare function isPluginConfig<TContext extends PluginContext = PluginContext>(value: unknown): value is PluginConfig<TContext>;
40
40
  /**
41
41
  * Type guard to check if an value is a {@link PluginHook} function
42
42
  *
@@ -58,14 +58,14 @@ declare function isPluginHookFunction(value: unknown): value is AnyFunction;
58
58
  * @returns True if the object is a {@link PluginHook}, false otherwise
59
59
  */
60
60
  declare function isPluginHook(value: unknown): value is PluginHook<AnyFunction>;
61
- type GetHookHandlerReturnType<TContext extends PluginContext = PluginContext, TField extends HookFields<TContext> = HookFields<TContext>> = TField extends PluginHookFields ? PluginHooksListItem<TContext, TField>["handler"] : TField extends UnpluginBuilderVariant ? UnpluginHooksListItem<TContext, TField>["handler"] : never;
61
+ type GetHookHandlerReturnType<TContext extends PluginContext = PluginContext, TField extends string = string> = HooksListItem<TContext, TField>["handler"];
62
62
  /**
63
63
  * Extract the hook handler function from a plugin hook
64
64
  *
65
65
  * @param pluginHook - The plugin hook to extract the handler function from
66
66
  * @returns The hook handler function
67
67
  */
68
- declare function getHookHandler<TContext extends PluginContext = PluginContext, TField extends HookFields<TContext> = HookFields<TContext>>(pluginHook: PluginHook<AnyFunction>): GetHookHandlerReturnType<TContext, TField>;
68
+ declare function getHookHandler<TContext extends PluginContext = PluginContext, TKey extends string = string>(pluginHook: PluginHook<AnyFunction>): GetHookHandlerReturnType<TContext, TKey>;
69
69
  /**
70
70
  * Extract a plugin hook from a plugin
71
71
  *
@@ -75,21 +75,21 @@ declare function getHookHandler<TContext extends PluginContext = PluginContext,
75
75
  * @returns The extracted hook, or undefined if the hook does not exist
76
76
  */
77
77
  declare function extractPluginHook<TContext extends PluginContext = PluginContext, TPlugin extends Plugin<TContext> = Plugin<TContext>>(context: TContext, plugin: TPlugin, hook: keyof PluginHooks<TContext>): {
78
- normal: OmitThisParameter<((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>) | (((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>) & PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>, "code" | "id">) | (PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>, never> & ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>)) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>) | (((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>) & PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>, "id">) | (PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>, never> & ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>)) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
78
+ normal: OmitThisParameter<((this: TContext, code: string) => _$_stryke_types_base0.MaybePromise<TypesResult | string | undefined | null>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>) | (((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>) & PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>, "id" | "code">) | (PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>, never> & ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>)) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>) | (((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>) & PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>, "id">) | (PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>, never> & ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>)) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
79
79
  isEntry: boolean;
80
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) | (((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
80
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) | (((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
81
81
  isEntry: boolean;
82
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) & PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
82
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) & PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
83
83
  isEntry: boolean;
84
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>, "id">) | (PluginHookObject<(this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
84
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>, "id">) | (PluginHookObject<(this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
85
85
  isEntry: boolean;
86
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>, never> & ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
86
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>, never> & ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
87
87
  isEntry: boolean;
88
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>)) | (((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & ((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | (((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & PluginHookObject<(this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>, never>) | (((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & (TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>) | (PluginHookObject<(this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>, never> & ((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | ((this: TContext, code: string) => _stryke_types_base0.MaybePromise<TypesResult | string | undefined | null>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: TContext, name: string, environment: EnvironmentConfig) => _stryke_types_base0.MaybePromise<Partial<EnvironmentResolvedConfig> | undefined | null>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>)>;
88
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>)) | (((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & ((this: UnresolvedContext<TContext["config"], TContext["system"]>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | (((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & PluginHookObject<(this: UnresolvedContext<TContext["config"], TContext["system"]>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>, never>) | (((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & (TContext["config"] extends infer T ? { [K in keyof T]?: (T[K] extends infer T_1 ? { [K_2 in keyof T_1]?: (T_1[K_2] extends infer T_2 ? { [K_3 in keyof T_2]?: (T_2[K_3] extends infer T_3 ? { [K_4 in keyof T_3]?: (T_3[K_4] extends infer T_4 ? { [K_5 in keyof T_4]?: (T_4[K_5] extends infer T_5 ? { [K_6 in keyof T_5]?: (T_5[K_6] extends infer T_6 ? { [K_7 in keyof T_6]?: (T_6[K_7] extends infer T_7 ? { [K_8 in keyof T_7]?: (T_7[K_8] extends infer T_8 ? { [K_9 in keyof T_8]?: (T_8[K_9] extends infer T_9 ? { [K_10 in keyof T_9]?: (T_9[K_10] extends infer T_10 ? { [K_11 in keyof T_10]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>) | (PluginHookObject<(this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>, never> & ((this: UnresolvedContext<TContext["config"], TContext["system"]>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: TContext, name: string, environment: EnvironmentConfig) => _$_stryke_types_base0.MaybePromise<Partial<ResolvedEnvironmentConfig> | undefined | null>) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>)>;
89
89
  } | {
90
- [x: string]: OmitThisParameter<((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, code: string, id: string) => _stryke_types_base0.MaybePromise<unplugin.TransformResult>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string) => _stryke_types_base0.MaybePromise<rollup.LoadResult>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext, id: string, importer: string | undefined, options: {
90
+ [x: string]: OmitThisParameter<((this: TContext, code: string) => _$_stryke_types_base0.MaybePromise<TypesResult | string | undefined | null>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, code: string, id: string) => _$_stryke_types_base0.MaybePromise<_$unplugin.TransformResult>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string) => _$_stryke_types_base0.MaybePromise<_$rollup.LoadResult>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext, id: string, importer: string | undefined, options: {
91
91
  isEntry: boolean;
92
- }) => _stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) | ((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) | (((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & ((this: UnresolvedContext<TContext["config"]>) => _stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | ((this: TContext, code: string) => _stryke_types_base0.MaybePromise<TypesResult | string | undefined | null>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: TContext, name: string, environment: EnvironmentConfig) => _stryke_types_base0.MaybePromise<Partial<EnvironmentResolvedConfig> | undefined | null>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: unplugin.UnpluginBuildContext & PluginContext<TContext["config"]> & TContext) => _stryke_types_base0.MaybePromise<void>) | ((this: TContext) => _stryke_types_base0.MaybePromise<void>)>;
92
+ }) => _$_stryke_types_base0.MaybePromise<string | ResolveResult | null | undefined>) | ((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) | (((this: UnresolvedContext<TContext["config"], unknown>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>) & ((this: UnresolvedContext<TContext["config"], TContext["system"]>) => _$_stryke_types_base0.MaybePromise<(TContext["config"] extends infer T_1 ? { [K in keyof T_1]?: (T_1[K] extends infer T_2 ? { [K_2 in keyof T_2]?: (T_2[K_2] extends infer T_3 ? { [K_3 in keyof T_3]?: (T_3[K_3] extends infer T_4 ? { [K_4 in keyof T_4]?: (T_4[K_4] extends infer T_5 ? { [K_5 in keyof T_5]?: (T_5[K_5] extends infer T_6 ? { [K_6 in keyof T_6]?: (T_6[K_6] extends infer T_7 ? { [K_7 in keyof T_7]?: (T_7[K_7] extends infer T_8 ? { [K_8 in keyof T_8]?: (T_8[K_8] extends infer T_9 ? { [K_9 in keyof T_9]?: (T_9[K_9] extends infer T_10 ? { [K_10 in keyof T_10]?: (T_10[K_10] extends infer T_11 ? { [K_11 in keyof T_11]?: /*elided*/any | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) | undefined } : never) & Record<string, any>>)) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: TContext, name: string, environment: EnvironmentConfig) => _$_stryke_types_base0.MaybePromise<Partial<ResolvedEnvironmentConfig> | undefined | null>) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: _$unplugin.UnpluginBuildContext & PluginContext<TContext["config"], unknown> & TContext) => _$_stryke_types_base0.MaybePromise<void>) | ((this: TContext) => _$_stryke_types_base0.MaybePromise<void>)>;
93
93
  normal?: undefined;
94
94
  } | undefined;
95
95
  /**
@@ -105,7 +105,7 @@ declare function isUnpluginHookKey<TUnpluginBuilderVariant extends UnpluginBuild
105
105
  * @param keys - The name of the hook to check.
106
106
  * @returns True if the hook is external, false otherwise.
107
107
  */
108
- declare function isPluginHookField<TContext extends PluginContext>(keys: string): keys is PluginHookFields<TContext>;
108
+ declare function isPluginHookField<TContext extends PluginContext>(keys: string): boolean;
109
109
  /**
110
110
  * Check if a hook is external.
111
111
  *
@@ -120,7 +120,14 @@ declare function isUnpluginHookField<TUnpluginBuilderVariant extends UnpluginBui
120
120
  * @param plugins - The list of plugins to check against
121
121
  * @returns True if the plugin should be deduplicated, false otherwise
122
122
  */
123
- declare function checkDedupe<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TContext extends PluginContext<TResolvedConfig> = PluginContext<TResolvedConfig>>(plugin: Plugin<TContext>, plugins: Plugin<TContext>[]): boolean;
123
+ declare function isDuplicate<TContext extends PluginContext = PluginContext>(plugin: Plugin<TContext>, plugins: Plugin<TContext>[]): boolean;
124
+ /**
125
+ * Remove duplicate hooks from a list of hooks, keeping the first occurrence of each plugin.
126
+ *
127
+ * @param hooksList - The list of hooks to deduplicate.
128
+ * @returns A new list of hooks with duplicates removed.
129
+ */
130
+ declare function dedupeHooklist<TContext extends PluginContext = PluginContext, TField extends PluginHookFields<TContext> = PluginHookFields<TContext>, TList extends HooksListItem<TContext, TField> = HooksListItem<TContext, TField>>(hooksList: TList[]): TList[];
124
131
  /**
125
132
  * Add a plugin hook to the hooks list.
126
133
  *
@@ -129,15 +136,15 @@ declare function checkDedupe<TResolvedConfig extends ResolvedConfig = ResolvedCo
129
136
  * @param pluginHook - The plugin hook to add
130
137
  * @param hooksList - The list of hooks to add to
131
138
  */
132
- declare function addPluginHook<TContext extends PluginContext = PluginContext, TField extends PluginHookFields<TContext> = PluginHookFields<TContext>, TList extends PluginHooksListItem<TContext, TField> = PluginHooksListItem<TContext, TField>>(context: TContext, plugin: Plugin<TContext>, pluginHook: PluginHook<AnyFunction>, hooksList: TList[]): void;
139
+ declare function addPluginHook<TContext extends PluginContext = PluginContext, TField extends PluginHookFields<TContext> = PluginHookFields<TContext>, TList extends HooksListItem<TContext, TField> = HooksListItem<TContext, TField>>(context: TContext, plugin: Plugin<TContext>, pluginHook: PluginHook<AnyFunction>, hooksList: TList[]): TList[];
133
140
  /**
134
141
  * Check the provided {@link PluginConfig}, and return a stringified version of the invalid configuration. If an array is provided, check each item in the array.
135
142
  *
136
143
  * @param config - The plugin configuration to check
137
144
  * @returns Null if the configuration is valid, otherwise an array of stringified invalid configurations
138
145
  */
139
- declare function findInvalidPluginConfig<TContext extends PluginContext = PluginContext<ResolvedConfig>>(config: PluginConfig<TContext>): string[] | null;
146
+ declare function findInvalidPluginConfig<TContext extends PluginContext = PluginContext>(config: PluginConfig<TContext>): string[] | null;
140
147
  declare type __ΩGetHookHandlerReturnType = any[];
141
148
  //#endregion
142
- export { GetHookHandlerReturnType, __ΩGetHookHandlerReturnType, addPluginHook, checkDedupe, extractPluginHook, findInvalidPluginConfig, getHookHandler, isPlugin, isPluginConfig, isPluginConfigObject, isPluginConfigTuple, isPluginHook, isPluginHookField, isPluginHookFunction, isPluginHookObject, isUnpluginHookField, isUnpluginHookKey };
149
+ export { GetHookHandlerReturnType, __ΩGetHookHandlerReturnType, addPluginHook, dedupeHooklist, extractPluginHook, findInvalidPluginConfig, getHookHandler, isDuplicate, isPlugin, isPluginConfig, isPluginConfigObject, isPluginConfigTuple, isPluginHook, isPluginHookField, isPluginHookFunction, isPluginHookObject, isUnpluginHookField, isUnpluginHookKey };
143
150
  //# sourceMappingURL=helpers.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.mts","names":[],"sources":["../../src/plugin-utils/helpers.ts"],"mappings":";;;;;;;;;;;;;;;;;iBA0DgB,QAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,KAAA,YAAiB,KAAA,IAAS,MAAA,CAAO,QAAA;;;;;;;iBAkCnB,oBAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,KAAA,YAAiB,KAAA,IAAS,kBAAA,CAAmB,QAAA;;;;;;;iBAiB/B,mBAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,KAAA,YAAiB,KAAA,IAAS,iBAAA,CAAkB,QAAA;;;;;;AArB9C;iBAsCgB,cAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,KAAA,YAAiB,KAAA,IAAS,YAAA,CAAa,QAAA;;;;;;;iBAiBzB,kBAAA,CACd,KAAA,YACC,KAAA,IAAS,gBAAA,CAAiB,WAAA;;;;;;;iBAUb,oBAAA,CAAqB,KAAA,YAAiB,KAAA,IAAS,WAAA;;;;;AAlD/D;;iBA4DgB,YAAA,CAAa,KAAA,YAAiB,KAAA,IAAS,UAAA,CAAW,WAAA;AAAA,KAItD,wBAAA,kBACO,aAAA,GAAgB,aAAA,iBAClB,UAAA,CAAW,QAAA,IAAY,UAAA,CAAW,QAAA,KAC/C,MAAA,SAAe,gBAAA,GACf,mBAAA,CAAoB,QAAA,EAAU,MAAA,eAC9B,MAAA,SAAe,sBAAA,GACb,qBAAA,CAAsB,QAAA,EAAU,MAAA;;;;;;;iBAmBtB,cAAA,kBACG,aAAA,GAAgB,aAAA,iBAClB,UAAA,CAAW,QAAA,IAAY,UAAA,CAAW,QAAA,EAAA,CAEjD,UAAA,EAAY,UAAA,CAAW,WAAA,IACtB,wBAAA,CAAyB,QAAA,EAAU,MAAA;;;;;;;;;iBActB,iBAAA,kBACG,aAAA,GAAgB,aAAA,kBACjB,MAAA,CAAO,QAAA,IAAY,MAAA,CAAO,QAAA,EAAA,CAC1C,OAAA,EAAS,QAAA,EAAU,MAAA,EAAQ,OAAA,EAAS,IAAA,QAAY,WAAA,CAAY,QAAA;oCAAD,QAAA,CAAA,oBAAA;;;;;;;;;;wvBA3F3D,o8BAAA,s8BAAA,o9BAAA,68BAAA,i3BAAA,69BAAA,o9BAAA;;;;+vBACA,88BAAA,68BAAA;;;;;;AAiBF;;;iBA+FgB,iBAAA,iCACkB,sBAAA,GAC9B,sBAAA,CAAA,CAEF,IAAA,WACC,IAAA,OAAW,uBAAA,UAAiC,iBAAA,CAAgB,uBAAA;;;;;;;iBAY/C,iBAAA,kBAAmC,aAAA,CAAA,CACjD,IAAA,WACC,IAAA,IAAQ,gBAAA,CAAiB,QAAA;;;;;;;iBAaZ,mBAAA,iCACkB,sBAAA,GAC9B,sBAAA,CAAA,CACF,KAAA,WAAgB,KAAA,IAAS,uBAAA;;AA5G3B;;;;;;iBA0HgB,WAAA,yBACU,cAAA,GAAiB,cAAA,mBACxB,aAAA,CAAc,eAAA,IAC7B,aAAA,CAAc,eAAA,EAAA,CAChB,MAAA,EAAQ,MAAA,CAAO,QAAA,GAAW,OAAA,EAAS,MAAA,CAAO,QAAA;;;;AA1H5C;;;;;iBA6IgB,aAAA,kBACG,aAAA,GAAgB,aAAA,iBAClB,gBAAA,CAAiB,QAAA,IAAY,gBAAA,CAAiB,QAAA,iBAC/C,mBAAA,CAAoB,QAAA,EAAU,MAAA,IAAU,mBAAA,CACpD,QAAA,EACA,MAAA,EAAA,CAGF,OAAA,EAAS,QAAA,EACT,MAAA,EAAQ,MAAA,CAAO,QAAA,GACf,UAAA,EAAY,UAAA,CAAW,WAAA,GACvB,SAAA,EAAW,KAAA;;;;;;;iBA+BG,uBAAA,kBACG,aAAA,GAAgB,aAAA,CAAc,cAAA,EAAA,CAC/C,MAAA,EAAQ,YAAA,CAAa,QAAA;AAAA"}
1
+ {"version":3,"file":"helpers.d.mts","names":[],"sources":["../../src/plugin-utils/helpers.ts"],"mappings":";;;;;;;;;;;;;;;;;iBAsDgB,QAAA,kBAA0B,aAAA,GAAgB,aAAA,CAAA,CACxD,KAAA,YACC,KAAA,IAAS,MAAA,CAAO,QAAA;;;;;;;iBA6BH,oBAAA,kBACG,aAAA,GAAgB,aAAA,CAAA,CACjC,KAAA,YAAiB,KAAA,IAAS,kBAAA,CAAmB,QAAA;;;;;;;iBAiB/B,mBAAA,kBACG,aAAA,GAAgB,aAAA,CAAA,CACjC,KAAA,YAAiB,KAAA,IAAS,iBAAA,CAAkB,QAAA;;;;AArB9C;;;iBAsCgB,cAAA,kBAAgC,aAAA,GAAgB,aAAA,CAAA,CAC9D,KAAA,YACC,KAAA,IAAS,YAAA,CAAa,QAAA;;;;;;;iBAiBT,kBAAA,CACd,KAAA,YACC,KAAA,IAAS,gBAAA,CAAiB,WAAA;;;;;;;iBAUb,oBAAA,CAAqB,KAAA,YAAiB,KAAA,IAAS,WAAA;AAlD/D;;;;;;AAAA,iBA4DgB,YAAA,CAAa,KAAA,YAAiB,KAAA,IAAS,UAAA,CAAW,WAAA;AAAA,KAItD,wBAAA,kBACO,aAAA,GAAgB,aAAA,oCAE/B,aAAA,CAAc,QAAA,EAAU,MAAA;;;;;;;iBAQZ,cAAA,kBACG,aAAA,GAAgB,aAAA,+BAAA,CAGjC,UAAA,EAAY,UAAA,CAAW,WAAA,IACtB,wBAAA,CAAyB,QAAA,EAAU,IAAA;;;;AA7DtC;;;;;iBA2EgB,iBAAA,kBACG,aAAA,GAAgB,aAAA,kBACjB,MAAA,CAAO,QAAA,IAAY,MAAA,CAAO,QAAA,EAAA,CAC1C,OAAA,EAAS,QAAA,EAAU,MAAA,EAAQ,OAAA,EAAS,IAAA,QAAY,WAAA,CAAY,QAAA;;;;;;;;;;;qwBA5E7B,09BAAA,i9BAAA,0+BAAA,w9BAAA,i3BAAA,w+BAAA,0+BAAA;;;;4wBAmBL,y9BAAA,m+BAAA;;;;;;;;AAU5B;iBAqEgB,iBAAA,iCACkB,sBAAA,GAC9B,sBAAA,CAAA,CAEF,IAAA,WACC,IAAA,OAAW,uBAAA,UAAiC,iBAAA,CAAgB,uBAAA;;;;;;;iBAY/C,iBAAA,kBAAmC,aAAA,CAAA,CACjD,IAAA;AA7EF;;;;;;AAAA,iBAwFgB,mBAAA,iCACkB,sBAAA,GAC9B,sBAAA,CAAA,CACF,KAAA,WAAgB,KAAA,IAAS,uBAAA;;;;AAvF3B;;;;iBAqGgB,WAAA,kBAA6B,aAAA,GAAgB,aAAA,CAAA,CAC3D,MAAA,EAAQ,MAAA,CAAO,QAAA,GACf,OAAA,EAAS,MAAA,CAAO,QAAA;;;;;;;iBAmBF,cAAA,kBACG,aAAA,GAAgB,aAAA,iBAClB,gBAAA,CAAiB,QAAA,IAAY,gBAAA,CAAiB,QAAA,iBAC/C,aAAA,CAAc,QAAA,EAAU,MAAA,IAAU,aAAA,CAC9C,QAAA,EACA,MAAA,EAAA,CAEF,SAAA,EAAW,KAAA,KAAU,KAAA;;;;;;;;AAtHvB;iBA4IgB,aAAA,kBACG,aAAA,GAAgB,aAAA,iBAClB,gBAAA,CAAiB,QAAA,IAAY,gBAAA,CAAiB,QAAA,iBAC/C,aAAA,CAAc,QAAA,EAAU,MAAA,IAAU,aAAA,CAC9C,QAAA,EACA,MAAA,EAAA,CAGF,OAAA,EAAS,QAAA,EACT,MAAA,EAAQ,MAAA,CAAO,QAAA,GACf,UAAA,EAAY,UAAA,CAAW,WAAA,GACvB,SAAA,EAAW,KAAA,KACV,KAAA;;;;;;;iBA6Ba,uBAAA,kBACG,aAAA,GAAgB,aAAA,CAAA,CACjC,MAAA,EAAQ,YAAA,CAAa,QAAA;AAAA"}
@@ -1,4 +1,5 @@
1
- import { BUILDER_VARIANTS, PLUGIN_HOOKS_FIELDS, UNPLUGIN_BUILDER_VARIANTS } from "../constants/plugin.mjs";
1
+ import { PLUGIN_HOOKS_FIELDS, PLUGIN_NON_HOOK_FIELDS, UNPLUGIN_BUILDER_VARIANTS } from "../constants/plugin.mjs";
2
+ import { kebabCase } from "@stryke/string-format/kebab-case";
2
3
  import { isFunction } from "@stryke/type-checks/is-function";
3
4
  import { isSetObject } from "@stryke/type-checks/is-set-object";
4
5
  import { isSetString } from "@stryke/type-checks/is-set-string";
@@ -12,7 +13,7 @@ import { isUndefined } from "@stryke/type-checks/is-undefined";
12
13
  * @returns True if the object is a {@link Plugin}, false otherwise
13
14
  */
14
15
  function isPlugin(value) {
15
- return isSetObject(value) && "name" in value && isSetString(value.name) && (isUndefined(value.api) || "api" in value && isSetObject(value.api)) && (isUndefined(value.applyToEnvironment) || "applyToEnvironment" in value && isFunction(value.applyToEnvironment)) && (isUndefined(value.dedupe) || "dedupe" in value && isFunction(value.dedupe)) && PLUGIN_HOOKS_FIELDS.every((hook) => isUndefined(value[hook]) || hook in value && (isPluginHookFunction(value[hook]) || hook === "config" && isSetObject(value[hook]))) && BUILDER_VARIANTS.every((variant) => isUndefined(value[variant]) || variant in value && isSetObject(value[variant]));
16
+ return isSetObject(value) && "name" in value && isSetString(value.name) && (isUndefined(value.api) || "api" in value && isSetObject(value.api)) && (isUndefined(value.applyToEnvironment) || "applyToEnvironment" in value && isFunction(value.applyToEnvironment)) && (isUndefined(value.dedupe) || "dedupe" in value && isFunction(value.dedupe)) && PLUGIN_HOOKS_FIELDS.every((hook) => isUndefined(value[hook]) || hook in value && (isPluginHookFunction(value[hook]) || hook === "config" && isSetObject(value[hook])));
16
17
  }
17
18
  /**
18
19
  * Type guard to check if an object is a {@link PluginConfigObject}
@@ -106,7 +107,7 @@ function isUnpluginHookKey(keys) {
106
107
  * @returns True if the hook is external, false otherwise.
107
108
  */
108
109
  function isPluginHookField(keys) {
109
- return !isUnpluginHookKey(keys) && PLUGIN_HOOKS_FIELDS.includes(keys);
110
+ return !PLUGIN_NON_HOOK_FIELDS.includes(keys);
110
111
  }
111
112
  /**
112
113
  * Check if a hook is external.
@@ -124,8 +125,20 @@ function isUnpluginHookField(field) {
124
125
  * @param plugins - The list of plugins to check against
125
126
  * @returns True if the plugin should be deduplicated, false otherwise
126
127
  */
127
- function checkDedupe(plugin, plugins) {
128
- return plugin.dedupe === false || plugins.some((p) => p.dedupe !== false && (isFunction(p.dedupe) && p.dedupe(plugin) || p.name === plugin.name));
128
+ function isDuplicate(plugin, plugins) {
129
+ return plugin.dedupe !== false && plugins.some((p) => p.dedupe !== false && (isFunction(p.dedupe) && p.dedupe(plugin) || kebabCase(p.name) === kebabCase(plugin.name)));
130
+ }
131
+ /**
132
+ * Remove duplicate hooks from a list of hooks, keeping the first occurrence of each plugin.
133
+ *
134
+ * @param hooksList - The list of hooks to deduplicate.
135
+ * @returns A new list of hooks with duplicates removed.
136
+ */
137
+ function dedupeHooklist(hooksList) {
138
+ return hooksList.reduce((ret, hook) => {
139
+ if (!isDuplicate(hook.plugin, ret.map((h) => h.plugin))) ret.push(hook);
140
+ return ret;
141
+ }, []);
129
142
  }
130
143
  /**
131
144
  * Add a plugin hook to the hooks list.
@@ -136,14 +149,15 @@ function checkDedupe(plugin, plugins) {
136
149
  * @param hooksList - The list of hooks to add to
137
150
  */
138
151
  function addPluginHook(context, plugin, pluginHook, hooksList) {
139
- if (!checkDedupe(plugin, hooksList.map((hook) => hook.plugin).filter(Boolean))) {
152
+ if (!isDuplicate(plugin, hooksList.map((hook) => hook.plugin).filter(Boolean))) {
140
153
  const handler = ((...args) => getHookHandler(pluginHook).apply(context, args));
141
- if (!handler) return;
154
+ if (!handler) return hooksList;
142
155
  hooksList.push({
143
156
  plugin,
144
157
  handler
145
158
  });
146
159
  }
160
+ return hooksList;
147
161
  }
148
162
  /**
149
163
  * Check the provided {@link PluginConfig}, and return a stringified version of the invalid configuration. If an array is provided, check each item in the array.
@@ -165,5 +179,5 @@ function findInvalidPluginConfig(config) {
165
179
  }
166
180
 
167
181
  //#endregion
168
- export { addPluginHook, checkDedupe, extractPluginHook, findInvalidPluginConfig, getHookHandler, isPlugin, isPluginConfig, isPluginConfigObject, isPluginConfigTuple, isPluginHook, isPluginHookField, isPluginHookFunction, isPluginHookObject, isUnpluginHookField, isUnpluginHookKey };
182
+ export { addPluginHook, dedupeHooklist, extractPluginHook, findInvalidPluginConfig, getHookHandler, isDuplicate, isPlugin, isPluginConfig, isPluginConfigObject, isPluginConfigTuple, isPluginHook, isPluginHookField, isPluginHookFunction, isPluginHookObject, isUnpluginHookField, isUnpluginHookKey };
169
183
  //# sourceMappingURL=helpers.mjs.map