powerlines 0.6.1 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) hide show
  1. package/dist/astro.cjs +8 -8
  2. package/dist/astro.d.cts +1 -1
  3. package/dist/astro.d.ts +1 -1
  4. package/dist/astro.js +5 -5
  5. package/dist/{chunk-KNO2M23A.js → chunk-2CNNHTLQ.js} +3 -3
  6. package/dist/{chunk-L5GLIKXZ.js → chunk-3KDLNXR2.js} +3 -3
  7. package/dist/{chunk-ADSCR5XG.js → chunk-3M7JOAG2.js} +3 -3
  8. package/dist/{chunk-TXTWKVWH.js → chunk-3TWKQNDH.js} +3 -3
  9. package/dist/chunk-3WADZS76.cjs +24 -0
  10. package/dist/chunk-4AKYOJXA.cjs +20 -0
  11. package/dist/{chunk-WJT7T6W5.cjs → chunk-5BMVZ2J3.cjs} +25 -20
  12. package/dist/{chunk-5QMOCGCK.js → chunk-5FOMG64G.js} +3 -3
  13. package/dist/{chunk-FO3BCZ7I.cjs → chunk-B5UJMXT7.cjs} +2 -2
  14. package/dist/chunk-CT56Z4A5.cjs +12 -0
  15. package/dist/{chunk-AW2LSG43.cjs → chunk-G4VNZ3U2.cjs} +4 -4
  16. package/dist/{chunk-FK3MZTKX.cjs → chunk-H3DAM4ZC.cjs} +4 -4
  17. package/dist/{chunk-B6G6LTDH.js → chunk-HQOIPPXC.js} +3 -3
  18. package/dist/{chunk-KFCDBHCT.js → chunk-ITUNIK6G.js} +24 -19
  19. package/dist/{chunk-RF2IZCFH.cjs → chunk-IWAWK6QY.cjs} +4 -4
  20. package/dist/chunk-KMLFL4CW.js +14 -0
  21. package/dist/{chunk-FAMB6PTO.cjs → chunk-L2FOZFCY.cjs} +4 -4
  22. package/dist/{chunk-S7USQUJV.js → chunk-L3BSBOST.js} +3 -3
  23. package/dist/chunk-LJKLD77I.cjs +12 -0
  24. package/dist/chunk-NKOW5VPV.cjs +12 -0
  25. package/dist/chunk-NWADEQ7Z.cjs +12 -0
  26. package/dist/chunk-PBF6NZ5X.cjs +12 -0
  27. package/dist/{chunk-UPPRHJT4.js → chunk-QQGS6IQZ.js} +3 -3
  28. package/dist/{chunk-NDZJPIXK.cjs → chunk-R7QBD2CA.cjs} +8 -8
  29. package/dist/{chunk-7HEPGGKY.cjs → chunk-RELMZQ2F.cjs} +4 -4
  30. package/dist/{chunk-UDSXA7AL.cjs → chunk-S7OH2JEE.cjs} +2 -2
  31. package/dist/{chunk-N2QM4T3D.js → chunk-SXZICBIR.js} +2 -2
  32. package/dist/chunk-ULXUM6T3.cjs +34 -0
  33. package/dist/chunk-UWSABODX.js +31 -0
  34. package/dist/{chunk-SXQLYT2H.js → chunk-UXQMPRRF.js} +2 -2
  35. package/dist/{chunk-5ACQG5UA.js → chunk-XPRQFK7T.js} +3 -3
  36. package/dist/{chunk-S4I5DL5U.js → chunk-XQNFWNO4.js} +3 -3
  37. package/dist/{chunk-DJ7OEHR6.js → chunk-Y3DXEDVV.js} +3 -3
  38. package/dist/{chunk-TBICI24M.js → chunk-ZBOHY2FX.js} +4 -4
  39. package/dist/define-config.d.cts +1 -1
  40. package/dist/define-config.d.ts +1 -1
  41. package/dist/esbuild.cjs +7 -7
  42. package/dist/esbuild.d.cts +1 -1
  43. package/dist/esbuild.d.ts +1 -1
  44. package/dist/esbuild.js +4 -4
  45. package/dist/extend-plugin.cjs +13 -0
  46. package/dist/extend-plugin.d.cts +48 -0
  47. package/dist/extend-plugin.d.ts +48 -0
  48. package/dist/extend-plugin.js +4 -0
  49. package/dist/farm.cjs +4 -4
  50. package/dist/farm.d.cts +1 -1
  51. package/dist/farm.d.ts +1 -1
  52. package/dist/farm.js +3 -3
  53. package/dist/hooks-Bsux3yRH.d.cts +28 -0
  54. package/dist/hooks-DNo6rFyJ.d.ts +28 -0
  55. package/dist/index.cjs +27 -22
  56. package/dist/index.d.cts +4 -2
  57. package/dist/index.d.ts +4 -2
  58. package/dist/index.js +18 -17
  59. package/dist/internal/api.cjs +3 -3
  60. package/dist/internal/api.d.cts +2 -1
  61. package/dist/internal/api.d.ts +2 -1
  62. package/dist/internal/api.js +2 -2
  63. package/dist/lib/build/esbuild.d.cts +2 -2
  64. package/dist/lib/build/esbuild.d.ts +2 -2
  65. package/dist/lib/build/index.cjs +4 -4
  66. package/dist/lib/build/index.d.cts +3 -2
  67. package/dist/lib/build/index.d.ts +3 -2
  68. package/dist/lib/build/index.js +1 -1
  69. package/dist/lib/build/rolldown.d.cts +2 -2
  70. package/dist/lib/build/rolldown.d.ts +2 -2
  71. package/dist/lib/build/rollup.d.cts +2 -2
  72. package/dist/lib/build/rollup.d.ts +2 -2
  73. package/dist/lib/build/rspack.d.cts +2 -2
  74. package/dist/lib/build/rspack.d.ts +2 -2
  75. package/dist/lib/build/tsup.d.cts +2 -2
  76. package/dist/lib/build/tsup.d.ts +2 -2
  77. package/dist/lib/build/unbuild.cjs +4 -4
  78. package/dist/lib/build/unbuild.d.cts +22 -3
  79. package/dist/lib/build/unbuild.d.ts +22 -3
  80. package/dist/lib/build/unbuild.js +1 -1
  81. package/dist/lib/build/vite.d.cts +2 -2
  82. package/dist/lib/build/vite.d.ts +2 -2
  83. package/dist/lib/build/webpack.d.cts +2 -2
  84. package/dist/lib/build/webpack.d.ts +2 -2
  85. package/dist/lib/{chunk-TJURBPBY.cjs → chunk-6WVUO7M4.cjs} +3 -3
  86. package/dist/lib/chunk-6WVUO7M4.cjs.map +1 -0
  87. package/dist/lib/{chunk-RAMRPMFI.js → chunk-76ZPTPDX.js} +3 -4
  88. package/dist/lib/chunk-76ZPTPDX.js.map +1 -0
  89. package/dist/lib/{chunk-W6ZSRUY2.cjs → chunk-7IBV47QK.cjs} +2 -3
  90. package/dist/lib/chunk-7IBV47QK.cjs.map +1 -0
  91. package/dist/lib/{chunk-UGV446VO.cjs → chunk-7QV523K6.cjs} +3 -4
  92. package/dist/lib/chunk-7QV523K6.cjs.map +1 -0
  93. package/dist/lib/{chunk-OY2CMFTJ.js → chunk-B74JOQLB.js} +2 -3
  94. package/dist/lib/chunk-B74JOQLB.js.map +1 -0
  95. package/dist/lib/{chunk-YO7VJP6Z.cjs → chunk-K5WQ3PLT.cjs} +36 -31
  96. package/dist/lib/chunk-K5WQ3PLT.cjs.map +1 -0
  97. package/dist/lib/{chunk-T6FKCZRX.js → chunk-XOHGJW5P.js} +3 -3
  98. package/dist/lib/chunk-XOHGJW5P.js.map +1 -0
  99. package/dist/lib/{chunk-QZUPXK3A.js → chunk-XXK5BM6Z.js} +23 -18
  100. package/dist/lib/chunk-XXK5BM6Z.js.map +1 -0
  101. package/dist/lib/{config-CHVR37vX.d.ts → config-CNAXWorR.d.ts} +11 -53
  102. package/dist/lib/{config-DoR-gOOH.d.cts → config-Db6OT19W.d.cts} +11 -53
  103. package/dist/lib/config-file.d.cts +2 -2
  104. package/dist/lib/config-file.d.ts +2 -2
  105. package/dist/lib/deepkit/index.cjs +1 -1
  106. package/dist/lib/deepkit/index.d.cts +2 -2
  107. package/dist/lib/deepkit/index.d.ts +2 -2
  108. package/dist/lib/deepkit/index.js +1 -1
  109. package/dist/lib/deepkit/reflect-type.cjs +1 -1
  110. package/dist/lib/deepkit/reflect-type.d.cts +2 -2
  111. package/dist/lib/deepkit/reflect-type.d.ts +2 -2
  112. package/dist/lib/deepkit/reflect-type.js +1 -1
  113. package/dist/lib/deepkit/resolve-reflections.d.cts +2 -2
  114. package/dist/lib/deepkit/resolve-reflections.d.ts +2 -2
  115. package/dist/lib/deepkit/transformer.d.cts +2 -2
  116. package/dist/lib/deepkit/transformer.d.ts +2 -2
  117. package/dist/lib/entry.d.cts +2 -2
  118. package/dist/lib/entry.d.ts +2 -2
  119. package/dist/lib/hooks-Do13PWjN.d.cts +28 -0
  120. package/dist/lib/hooks-PaFdWKMh.d.ts +28 -0
  121. package/dist/lib/index.cjs +19 -19
  122. package/dist/lib/index.d.cts +3 -2
  123. package/dist/lib/index.d.ts +3 -2
  124. package/dist/lib/index.js +4 -4
  125. package/dist/lib/logger.d.cts +2 -2
  126. package/dist/lib/logger.d.ts +2 -2
  127. package/dist/lib/typescript/compiler-host.d.cts +2 -2
  128. package/dist/lib/typescript/compiler-host.d.ts +2 -2
  129. package/dist/lib/typescript/import-transformer.d.cts +2 -2
  130. package/dist/lib/typescript/import-transformer.d.ts +2 -2
  131. package/dist/lib/typescript/index.d.cts +2 -2
  132. package/dist/lib/typescript/index.d.ts +2 -2
  133. package/dist/lib/typescript/program.d.cts +2 -2
  134. package/dist/lib/typescript/program.d.ts +2 -2
  135. package/dist/lib/typescript/transpile.d.cts +2 -2
  136. package/dist/lib/typescript/transpile.d.ts +2 -2
  137. package/dist/lib/unplugin/factory.cjs +3 -3
  138. package/dist/lib/unplugin/factory.d.cts +3 -2
  139. package/dist/lib/unplugin/factory.d.ts +3 -2
  140. package/dist/lib/unplugin/factory.js +2 -2
  141. package/dist/lib/unplugin/index.cjs +5 -5
  142. package/dist/lib/unplugin/index.d.cts +3 -2
  143. package/dist/lib/unplugin/index.d.ts +3 -2
  144. package/dist/lib/unplugin/index.js +3 -3
  145. package/dist/lib/unplugin/plugin.cjs +2 -2
  146. package/dist/lib/unplugin/plugin.d.cts +2 -2
  147. package/dist/lib/unplugin/plugin.d.ts +2 -2
  148. package/dist/lib/unplugin/plugin.js +1 -1
  149. package/dist/lib/unplugin/resolve-id.d.cts +2 -2
  150. package/dist/lib/unplugin/resolve-id.d.ts +2 -2
  151. package/dist/lib/utilities/file-header.d.cts +2 -2
  152. package/dist/lib/utilities/file-header.d.ts +2 -2
  153. package/dist/lib/utilities/index.cjs +14 -14
  154. package/dist/lib/utilities/index.d.cts +2 -2
  155. package/dist/lib/utilities/index.d.ts +2 -2
  156. package/dist/lib/utilities/index.js +1 -1
  157. package/dist/lib/utilities/meta.d.cts +2 -2
  158. package/dist/lib/utilities/meta.d.ts +2 -2
  159. package/dist/lib/utilities/plugin-helpers.cjs +14 -14
  160. package/dist/lib/utilities/plugin-helpers.d.cts +1 -1
  161. package/dist/lib/utilities/plugin-helpers.d.ts +1 -1
  162. package/dist/lib/utilities/plugin-helpers.js +1 -1
  163. package/dist/lib/utilities/resolve-path.d.cts +2 -2
  164. package/dist/lib/utilities/resolve-path.d.ts +2 -2
  165. package/dist/lib/utilities/worker.d.cts +2 -2
  166. package/dist/lib/utilities/worker.d.ts +2 -2
  167. package/dist/lib/utilities/write-file.d.cts +2 -2
  168. package/dist/lib/utilities/write-file.d.ts +2 -2
  169. package/dist/next.cjs +8 -8
  170. package/dist/next.js +5 -5
  171. package/dist/nuxt.cjs +9 -9
  172. package/dist/nuxt.js +6 -6
  173. package/dist/{resolved-FsbyTSdi.d.cts → resolved-DcBls4aH.d.cts} +142 -186
  174. package/dist/{resolved-BAlwv88V.d.ts → resolved-vAIx5R3j.d.ts} +142 -186
  175. package/dist/rolldown.cjs +7 -7
  176. package/dist/rolldown.d.cts +1 -1
  177. package/dist/rolldown.d.ts +1 -1
  178. package/dist/rolldown.js +4 -4
  179. package/dist/rollup.cjs +7 -7
  180. package/dist/rollup.d.cts +1 -1
  181. package/dist/rollup.d.ts +1 -1
  182. package/dist/rollup.js +4 -4
  183. package/dist/rspack.cjs +7 -7
  184. package/dist/rspack.d.cts +1 -1
  185. package/dist/rspack.d.ts +1 -1
  186. package/dist/rspack.js +4 -4
  187. package/dist/tsup.cjs +8 -8
  188. package/dist/tsup.js +5 -5
  189. package/dist/types/babel.d.cts +1 -1
  190. package/dist/types/babel.d.ts +1 -1
  191. package/dist/types/commands.d.cts +1 -1
  192. package/dist/types/commands.d.ts +1 -1
  193. package/dist/types/compiler.d.cts +1 -1
  194. package/dist/types/compiler.d.ts +1 -1
  195. package/dist/types/config.d.cts +1 -1
  196. package/dist/types/config.d.ts +1 -1
  197. package/dist/types/context.cjs +2 -2
  198. package/dist/types/context.d.cts +1 -1
  199. package/dist/types/context.d.ts +1 -1
  200. package/dist/types/context.js +1 -1
  201. package/dist/types/hooks.d.cts +1 -1
  202. package/dist/types/hooks.d.ts +1 -1
  203. package/dist/types/index.cjs +4 -4
  204. package/dist/types/index.d.cts +1 -1
  205. package/dist/types/index.d.ts +1 -1
  206. package/dist/types/index.js +2 -2
  207. package/dist/types/internal.cjs +4 -0
  208. package/dist/types/internal.cjs.map +1 -0
  209. package/dist/types/internal.d.cts +61 -0
  210. package/dist/types/internal.d.ts +61 -0
  211. package/dist/types/internal.js +3 -0
  212. package/dist/types/internal.js.map +1 -0
  213. package/dist/types/plugin.cjs +2 -2
  214. package/dist/types/plugin.d.cts +1 -1
  215. package/dist/types/plugin.d.ts +1 -1
  216. package/dist/types/plugin.js +1 -1
  217. package/dist/types/resolved.d.cts +1 -1
  218. package/dist/types/resolved.d.ts +1 -1
  219. package/dist/types/unplugin.d.cts +1 -1
  220. package/dist/types/unplugin.d.ts +1 -1
  221. package/dist/unloader.cjs +7 -7
  222. package/dist/unloader.d.cts +1 -1
  223. package/dist/unloader.d.ts +1 -1
  224. package/dist/unloader.js +4 -4
  225. package/dist/unplugin.cjs +18 -18
  226. package/dist/unplugin.d.cts +2 -1
  227. package/dist/unplugin.d.ts +2 -1
  228. package/dist/unplugin.js +15 -15
  229. package/dist/vite.cjs +7 -7
  230. package/dist/vite.d.cts +1 -1
  231. package/dist/vite.d.ts +1 -1
  232. package/dist/vite.js +4 -4
  233. package/dist/webpack.cjs +7 -7
  234. package/dist/webpack.d.cts +1 -1
  235. package/dist/webpack.d.ts +1 -1
  236. package/dist/webpack.js +4 -4
  237. package/package.json +65 -51
  238. package/dist/chunk-3UC4BQUF.cjs +0 -12
  239. package/dist/chunk-5N6IHHFL.cjs +0 -12
  240. package/dist/chunk-7XTLR5US.cjs +0 -12
  241. package/dist/chunk-BMCONDG7.cjs +0 -12
  242. package/dist/chunk-H2CDRBLH.cjs +0 -24
  243. package/dist/chunk-KZKUYJFE.cjs +0 -34
  244. package/dist/chunk-LKIMLMOB.cjs +0 -12
  245. package/dist/chunk-OFLJD3YF.js +0 -31
  246. package/dist/lib/chunk-OY2CMFTJ.js.map +0 -1
  247. package/dist/lib/chunk-QZUPXK3A.js.map +0 -1
  248. package/dist/lib/chunk-RAMRPMFI.js.map +0 -1
  249. package/dist/lib/chunk-T6FKCZRX.js.map +0 -1
  250. package/dist/lib/chunk-TJURBPBY.cjs.map +0 -1
  251. package/dist/lib/chunk-UGV446VO.cjs.map +0 -1
  252. package/dist/lib/chunk-W6ZSRUY2.cjs.map +0 -1
  253. package/dist/lib/chunk-YO7VJP6Z.cjs.map +0 -1
@@ -1,6 +1,7 @@
1
1
  import { Format } from '@storm-software/build-tools/types';
2
2
  import { LogLevelLabel } from '@storm-software/config-tools/types';
3
3
  import { StormWorkspaceConfig } from '@storm-software/config/types';
4
+ import { NonUndefined, MaybePromise, FunctionLike } from '@stryke/types/base';
4
5
  import { TypeDefinition, TypeDefinitionParameter } from '@stryke/types/configuration';
5
6
  import { AssetGlob } from '@stryke/types/file';
6
7
  import { ResolvedConfig as ResolvedConfig$1, ConfigLayer } from 'c12';
@@ -21,7 +22,6 @@ import { ReflectionClass } from 'powerlines/deepkit/type';
21
22
  import { Range } from 'semver';
22
23
  import { TransformResult, ExternalIdResult, HookFilter, UnpluginOptions, UnpluginContext, UnpluginBuildContext } from 'unplugin';
23
24
  import { t as SerializedTypes } from './reflection-DTM1oT21.js';
24
- import { NonUndefined, MaybePromise, FunctionLike } from '@stryke/types/base';
25
25
  import { ArrayValues } from '@stryke/types/array';
26
26
  import { P as ParsedTypeScriptConfig, T as TSConfig } from './tsconfig-BH7y5xoi.js';
27
27
  import { Volume } from 'memfs';
@@ -372,16 +372,16 @@ interface Plugin<in out TContext extends PluginContext<ResolvedConfig> = PluginC
372
372
  * A function to determine if two plugins are the same and can be de-duplicated.
373
373
  *
374
374
  * @remarks
375
- * If this is not provided, the plugin will not be de-duplicated.
375
+ * If this is not provided, plugins are de-duplicated by comparing their names.
376
376
  *
377
377
  * @param other - The other plugin to compare against.
378
378
  * @returns `true` if the two plugins are the same, `false` otherwise.
379
379
  */
380
- dedupe?: false | ((other: PluginConfig<any>) => boolean);
380
+ dedupe?: false | ((other: Plugin<any>) => boolean);
381
381
  /**
382
382
  * A list of pre-requisite plugins that must be loaded before this plugin can be used.
383
383
  */
384
- dependsOn?: PluginConfig<TContext>[];
384
+ dependsOn?: PluginConfig<any>[];
385
385
  /**
386
386
  * Define environments where this plugin should be active. By default, the plugin is active in all environments.
387
387
  *
@@ -420,31 +420,6 @@ type InferHookHandler<TContext extends PluginContext, TKey extends HookKeys<TCon
420
420
  type InferHookReturnType<TContext extends PluginContext, TKey extends HookKeys<TContext>> = ReturnType<InferHookHandler<TContext, TKey>> extends Promise<infer U> ? U extends Promise<infer V> ? V : U : ReturnType<InferHookHandler<TContext, TKey>>;
421
421
  type InferHookParameters<TContext extends PluginContext, TKey extends HookKeys<TContext>> = Parameters<InferHookHandler<TContext, TKey>>;
422
422
 
423
- type CallHookOptions = SelectHooksOptions & ({
424
- /**
425
- * Whether to call the hooks sequentially or in parallel.
426
- *
427
- * @defaultValue true
428
- */
429
- sequential?: true;
430
- /**
431
- * How to handle multiple return values from hooks.
432
- * - "merge": Merge all non-undefined return values (if they are objects).
433
- * - "first": Return the first non-undefined value.
434
- *
435
- * @remarks
436
- * Merging only works if the return values are objects.
437
- *
438
- * @defaultValue "merge"
439
- */
440
- result?: "merge" | "first";
441
- } | {
442
- /**
443
- * Whether to call the hooks sequentially or in parallel.
444
- */
445
- sequential: false;
446
- });
447
-
448
423
  declare const __VFS_INIT__ = "__VFS_INIT__";
449
424
  declare const __VFS_REVERT__ = "__VFS_REVERT__";
450
425
  declare const __VFS_CACHE__ = "__VFS_CACHE__";
@@ -1088,40 +1063,23 @@ interface PluginContext<out TResolvedConfig extends ResolvedConfig = ResolvedCon
1088
1063
  logger: LogFn;
1089
1064
  }
1090
1065
  type BuildPluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = PluginContext<TResolvedConfig> & UnpluginBuildContext;
1091
- /**
1092
- * Internal fields and methods for the internal plugin context
1093
- *
1094
- * @internal
1095
- */
1096
- interface Internal_PluginContextInternal<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
1097
- environment: EnvironmentContext<TResolvedConfig>;
1098
- callHook: <TKey extends HookKeys<PluginContext<TResolvedConfig>>>(hook: TKey, options: CallHookOptions, ...args: InferHookParameters<PluginContext<TResolvedConfig>, TKey>) => Promise<InferHookReturnType<PluginContext<TResolvedConfig>, TKey> | undefined>;
1099
- }
1100
- /**
1101
- * An internal representation of the plugin context, used for managing hooks and environment data.
1102
- *
1103
- * @internal
1104
- */
1105
- interface Internal_PluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends PluginContext<TResolvedConfig> {
1106
- $$internal: Internal_PluginContextInternal<TResolvedConfig>;
1107
- }
1108
1066
 
1109
1067
  type LogFn = (type: LogLevelLabel, ...args: string[]) => void;
1110
1068
  /**
1111
1069
  * The {@link StormWorkspaceConfig | configuration} object for an entire Powerlines workspace
1112
1070
  */
1113
1071
  type WorkspaceConfig = Partial<StormWorkspaceConfig> & Required<Pick<StormWorkspaceConfig, "workspaceRoot">>;
1114
- type PluginFactory<TProps = unknown, in out TContext extends PluginContext = PluginContext> = (options: TProps) => Plugin<TContext>;
1072
+ type PluginFactory<in out TContext extends PluginContext = PluginContext, TOptions = any> = (options: TOptions) => MaybePromise<Plugin<TContext>>;
1115
1073
  /**
1116
1074
  * A configuration tuple for a Powerlines plugin.
1117
1075
  */
1118
- type PluginConfigTuple<TProps = unknown, TContext extends PluginContext = PluginContext> = [string | PluginFactory<TProps, TContext>, TProps] | [Plugin<TContext>];
1076
+ type PluginConfigTuple<TContext extends PluginContext = PluginContext, TOptions = any> = [string | PluginFactory<TContext, TOptions>, TOptions] | [Plugin<TContext>];
1119
1077
  /**
1120
1078
  * A configuration object for a Powerlines plugin.
1121
1079
  */
1122
- type PluginConfigObject<TProps = unknown, TContext extends PluginContext = PluginContext> = {
1123
- plugin: string | PluginFactory<TProps, TContext>;
1124
- options: TProps;
1080
+ type PluginConfigObject<TContext extends PluginContext = PluginContext, TOptions = any> = {
1081
+ plugin: string | PluginFactory<TContext, TOptions>;
1082
+ options: TOptions;
1125
1083
  } | {
1126
1084
  plugin: Plugin<TContext>;
1127
1085
  options?: never;
@@ -1129,7 +1087,7 @@ type PluginConfigObject<TProps = unknown, TContext extends PluginContext = Plugi
1129
1087
  /**
1130
1088
  * A configuration tuple for a Powerlines plugin.
1131
1089
  */
1132
- type PluginConfig<TContext extends PluginContext = PluginContext, TProps = unknown> = string | PluginFactory<void, TContext> | Plugin<TContext> | PluginConfigTuple<TProps> | PluginConfigObject<TProps>;
1090
+ type PluginConfig<TContext extends PluginContext = PluginContext> = string | PluginFactory<TContext, void> | Plugin<TContext> | Promise<Plugin<TContext>> | PluginConfigTuple<TContext> | PluginConfigObject<TContext>;
1133
1091
  type ProjectType = "application" | "library";
1134
1092
  interface OutputConfig {
1135
1093
  /**
@@ -1460,4 +1418,4 @@ type ReleaseInlineConfig<TUserConfig extends UserConfig = UserConfig> = InlineCo
1460
1418
  command: "release";
1461
1419
  };
1462
1420
 
1463
- export type { APIContext as A, BaseHookKeys as B, Context as C, CleanInlineConfig as D, ESBuildResolvedBuildConfig as E, BuildInlineConfig as F, LintInlineConfig as G, HookKeys as H, Internal_PluginContext as I, DocsInlineConfig as J, ReleaseInlineConfig as K, LogFn as L, MetaInfo as M, NewInlineConfig as N, CallHookOptions as O, PowerlinesCommand as P, EnvironmentContext as Q, ResolvedEntryTypeDefinition as R, InferHookParameters as S, TsupBuildConfig as T, UnbuildBuildConfig as U, ViteResolvedBuildConfig as V, WorkspaceConfig as W, ParsedUserConfig as a, RolldownResolvedBuildConfig as b, RollupResolvedBuildConfig as c, TsupResolvedBuildConfig as d, UnbuildResolvedBuildConfig as e, PluginContext as f, ResolvedConfig as g, Plugin as h, PluginConfigObject as i, PluginConfigTuple as j, PluginConfig as k, PluginHookObject as l, PluginHook as m, EnvironmentConfig as n, EnvironmentResolvedConfig as o, ExternalHookKeys as p, BaseHooksListItem as q, WorkerProcess as r, BuildVariant as s, InferUnpluginVariant as t, BuildPlugin as u, InferResolvedConfig as v, UnpluginBuildVariant as w, InferUserConfig as x, InitialUserConfig as y, PrepareInlineConfig as z };
1421
+ export type { APIContext as A, BaseHookKeys as B, Context as C, InitialUserConfig as D, ESBuildResolvedBuildConfig as E, PrepareInlineConfig as F, CleanInlineConfig as G, HookKeys as H, InferHookParameters as I, BuildInlineConfig as J, LintInlineConfig as K, LogFn as L, MetaInfo as M, NewInlineConfig as N, DocsInlineConfig as O, PowerlinesCommand as P, ReleaseInlineConfig as Q, ResolvedEntryTypeDefinition as R, SelectHooksOptions as S, TsupBuildConfig as T, UnbuildBuildConfig as U, ViteResolvedBuildConfig as V, WorkspaceConfig as W, ParsedUserConfig as a, RolldownResolvedBuildConfig as b, RollupResolvedBuildConfig as c, TsupResolvedBuildConfig as d, PluginContext as e, ResolvedConfig as f, Plugin as g, PluginConfigObject as h, PluginConfigTuple as i, PluginConfig as j, PluginHookObject as k, PluginHook as l, EnvironmentConfig as m, EnvironmentResolvedConfig as n, ExternalHookKeys as o, BaseHooksListItem as p, WorkerProcess as q, EnvironmentContext as r, InferHookReturnType as s, UnbuildResolvedBuildConfig as t, BuildVariant as u, InferUnpluginVariant as v, BuildPlugin as w, InferResolvedConfig as x, UnpluginBuildVariant as y, InferUserConfig as z };
@@ -1,6 +1,7 @@
1
1
  import { Format } from '@storm-software/build-tools/types';
2
2
  import { LogLevelLabel } from '@storm-software/config-tools/types';
3
3
  import { StormWorkspaceConfig } from '@storm-software/config/types';
4
+ import { NonUndefined, MaybePromise, FunctionLike } from '@stryke/types/base';
4
5
  import { TypeDefinition, TypeDefinitionParameter } from '@stryke/types/configuration';
5
6
  import { AssetGlob } from '@stryke/types/file';
6
7
  import { ResolvedConfig as ResolvedConfig$1, ConfigLayer } from 'c12';
@@ -21,7 +22,6 @@ import { ReflectionClass } from 'powerlines/deepkit/type';
21
22
  import { Range } from 'semver';
22
23
  import { TransformResult, ExternalIdResult, HookFilter, UnpluginOptions, UnpluginContext, UnpluginBuildContext } from 'unplugin';
23
24
  import { t as SerializedTypes } from './reflection-DTM1oT21.cjs';
24
- import { NonUndefined, MaybePromise, FunctionLike } from '@stryke/types/base';
25
25
  import { ArrayValues } from '@stryke/types/array';
26
26
  import { P as ParsedTypeScriptConfig, T as TSConfig } from './tsconfig-BH7y5xoi.cjs';
27
27
  import { Volume } from 'memfs';
@@ -372,16 +372,16 @@ interface Plugin<in out TContext extends PluginContext<ResolvedConfig> = PluginC
372
372
  * A function to determine if two plugins are the same and can be de-duplicated.
373
373
  *
374
374
  * @remarks
375
- * If this is not provided, the plugin will not be de-duplicated.
375
+ * If this is not provided, plugins are de-duplicated by comparing their names.
376
376
  *
377
377
  * @param other - The other plugin to compare against.
378
378
  * @returns `true` if the two plugins are the same, `false` otherwise.
379
379
  */
380
- dedupe?: false | ((other: PluginConfig<any>) => boolean);
380
+ dedupe?: false | ((other: Plugin<any>) => boolean);
381
381
  /**
382
382
  * A list of pre-requisite plugins that must be loaded before this plugin can be used.
383
383
  */
384
- dependsOn?: PluginConfig<TContext>[];
384
+ dependsOn?: PluginConfig<any>[];
385
385
  /**
386
386
  * Define environments where this plugin should be active. By default, the plugin is active in all environments.
387
387
  *
@@ -420,31 +420,6 @@ type InferHookHandler<TContext extends PluginContext, TKey extends HookKeys<TCon
420
420
  type InferHookReturnType<TContext extends PluginContext, TKey extends HookKeys<TContext>> = ReturnType<InferHookHandler<TContext, TKey>> extends Promise<infer U> ? U extends Promise<infer V> ? V : U : ReturnType<InferHookHandler<TContext, TKey>>;
421
421
  type InferHookParameters<TContext extends PluginContext, TKey extends HookKeys<TContext>> = Parameters<InferHookHandler<TContext, TKey>>;
422
422
 
423
- type CallHookOptions = SelectHooksOptions & ({
424
- /**
425
- * Whether to call the hooks sequentially or in parallel.
426
- *
427
- * @defaultValue true
428
- */
429
- sequential?: true;
430
- /**
431
- * How to handle multiple return values from hooks.
432
- * - "merge": Merge all non-undefined return values (if they are objects).
433
- * - "first": Return the first non-undefined value.
434
- *
435
- * @remarks
436
- * Merging only works if the return values are objects.
437
- *
438
- * @defaultValue "merge"
439
- */
440
- result?: "merge" | "first";
441
- } | {
442
- /**
443
- * Whether to call the hooks sequentially or in parallel.
444
- */
445
- sequential: false;
446
- });
447
-
448
423
  declare const __VFS_INIT__ = "__VFS_INIT__";
449
424
  declare const __VFS_REVERT__ = "__VFS_REVERT__";
450
425
  declare const __VFS_CACHE__ = "__VFS_CACHE__";
@@ -1088,40 +1063,23 @@ interface PluginContext<out TResolvedConfig extends ResolvedConfig = ResolvedCon
1088
1063
  logger: LogFn;
1089
1064
  }
1090
1065
  type BuildPluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = PluginContext<TResolvedConfig> & UnpluginBuildContext;
1091
- /**
1092
- * Internal fields and methods for the internal plugin context
1093
- *
1094
- * @internal
1095
- */
1096
- interface Internal_PluginContextInternal<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
1097
- environment: EnvironmentContext<TResolvedConfig>;
1098
- callHook: <TKey extends HookKeys<PluginContext<TResolvedConfig>>>(hook: TKey, options: CallHookOptions, ...args: InferHookParameters<PluginContext<TResolvedConfig>, TKey>) => Promise<InferHookReturnType<PluginContext<TResolvedConfig>, TKey> | undefined>;
1099
- }
1100
- /**
1101
- * An internal representation of the plugin context, used for managing hooks and environment data.
1102
- *
1103
- * @internal
1104
- */
1105
- interface Internal_PluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends PluginContext<TResolvedConfig> {
1106
- $$internal: Internal_PluginContextInternal<TResolvedConfig>;
1107
- }
1108
1066
 
1109
1067
  type LogFn = (type: LogLevelLabel, ...args: string[]) => void;
1110
1068
  /**
1111
1069
  * The {@link StormWorkspaceConfig | configuration} object for an entire Powerlines workspace
1112
1070
  */
1113
1071
  type WorkspaceConfig = Partial<StormWorkspaceConfig> & Required<Pick<StormWorkspaceConfig, "workspaceRoot">>;
1114
- type PluginFactory<TProps = unknown, in out TContext extends PluginContext = PluginContext> = (options: TProps) => Plugin<TContext>;
1072
+ type PluginFactory<in out TContext extends PluginContext = PluginContext, TOptions = any> = (options: TOptions) => MaybePromise<Plugin<TContext>>;
1115
1073
  /**
1116
1074
  * A configuration tuple for a Powerlines plugin.
1117
1075
  */
1118
- type PluginConfigTuple<TProps = unknown, TContext extends PluginContext = PluginContext> = [string | PluginFactory<TProps, TContext>, TProps] | [Plugin<TContext>];
1076
+ type PluginConfigTuple<TContext extends PluginContext = PluginContext, TOptions = any> = [string | PluginFactory<TContext, TOptions>, TOptions] | [Plugin<TContext>];
1119
1077
  /**
1120
1078
  * A configuration object for a Powerlines plugin.
1121
1079
  */
1122
- type PluginConfigObject<TProps = unknown, TContext extends PluginContext = PluginContext> = {
1123
- plugin: string | PluginFactory<TProps, TContext>;
1124
- options: TProps;
1080
+ type PluginConfigObject<TContext extends PluginContext = PluginContext, TOptions = any> = {
1081
+ plugin: string | PluginFactory<TContext, TOptions>;
1082
+ options: TOptions;
1125
1083
  } | {
1126
1084
  plugin: Plugin<TContext>;
1127
1085
  options?: never;
@@ -1129,7 +1087,7 @@ type PluginConfigObject<TProps = unknown, TContext extends PluginContext = Plugi
1129
1087
  /**
1130
1088
  * A configuration tuple for a Powerlines plugin.
1131
1089
  */
1132
- type PluginConfig<TContext extends PluginContext = PluginContext, TProps = unknown> = string | PluginFactory<void, TContext> | Plugin<TContext> | PluginConfigTuple<TProps> | PluginConfigObject<TProps>;
1090
+ type PluginConfig<TContext extends PluginContext = PluginContext> = string | PluginFactory<TContext, void> | Plugin<TContext> | Promise<Plugin<TContext>> | PluginConfigTuple<TContext> | PluginConfigObject<TContext>;
1133
1091
  type ProjectType = "application" | "library";
1134
1092
  interface OutputConfig {
1135
1093
  /**
@@ -1460,4 +1418,4 @@ type ReleaseInlineConfig<TUserConfig extends UserConfig = UserConfig> = InlineCo
1460
1418
  command: "release";
1461
1419
  };
1462
1420
 
1463
- export type { APIContext as A, BaseHookKeys as B, Context as C, CleanInlineConfig as D, ESBuildResolvedBuildConfig as E, BuildInlineConfig as F, LintInlineConfig as G, HookKeys as H, Internal_PluginContext as I, DocsInlineConfig as J, ReleaseInlineConfig as K, LogFn as L, MetaInfo as M, NewInlineConfig as N, CallHookOptions as O, PowerlinesCommand as P, EnvironmentContext as Q, ResolvedEntryTypeDefinition as R, InferHookParameters as S, TsupBuildConfig as T, UnbuildBuildConfig as U, ViteResolvedBuildConfig as V, WorkspaceConfig as W, ParsedUserConfig as a, RolldownResolvedBuildConfig as b, RollupResolvedBuildConfig as c, TsupResolvedBuildConfig as d, UnbuildResolvedBuildConfig as e, PluginContext as f, ResolvedConfig as g, Plugin as h, PluginConfigObject as i, PluginConfigTuple as j, PluginConfig as k, PluginHookObject as l, PluginHook as m, EnvironmentConfig as n, EnvironmentResolvedConfig as o, ExternalHookKeys as p, BaseHooksListItem as q, WorkerProcess as r, BuildVariant as s, InferUnpluginVariant as t, BuildPlugin as u, InferResolvedConfig as v, UnpluginBuildVariant as w, InferUserConfig as x, InitialUserConfig as y, PrepareInlineConfig as z };
1421
+ export type { APIContext as A, BaseHookKeys as B, Context as C, InitialUserConfig as D, ESBuildResolvedBuildConfig as E, PrepareInlineConfig as F, CleanInlineConfig as G, HookKeys as H, InferHookParameters as I, BuildInlineConfig as J, LintInlineConfig as K, LogFn as L, MetaInfo as M, NewInlineConfig as N, DocsInlineConfig as O, PowerlinesCommand as P, ReleaseInlineConfig as Q, ResolvedEntryTypeDefinition as R, SelectHooksOptions as S, TsupBuildConfig as T, UnbuildBuildConfig as U, ViteResolvedBuildConfig as V, WorkspaceConfig as W, ParsedUserConfig as a, RolldownResolvedBuildConfig as b, RollupResolvedBuildConfig as c, TsupResolvedBuildConfig as d, PluginContext as e, ResolvedConfig as f, Plugin as g, PluginConfigObject as h, PluginConfigTuple as i, PluginConfig as j, PluginHookObject as k, PluginHook as l, EnvironmentConfig as m, EnvironmentResolvedConfig as n, ExternalHookKeys as o, BaseHooksListItem as p, WorkerProcess as q, EnvironmentContext as r, InferHookReturnType as s, UnbuildResolvedBuildConfig as t, BuildVariant as u, InferUnpluginVariant as v, BuildPlugin as w, InferResolvedConfig as x, UnpluginBuildVariant as y, InferUserConfig as z };
@@ -1,8 +1,9 @@
1
1
  import { Jiti } from 'jiti';
2
- import { C as Context, W as WorkspaceConfig, P as PowerlinesCommand, a as ParsedUserConfig } from './config-DoR-gOOH.cjs';
2
+ import { C as Context, W as WorkspaceConfig, P as PowerlinesCommand, a as ParsedUserConfig } from './config-Db6OT19W.cjs';
3
3
  import '@storm-software/build-tools/types';
4
4
  import '@storm-software/config-tools/types';
5
5
  import '@storm-software/config/types';
6
+ import '@stryke/types/base';
6
7
  import '@stryke/types/configuration';
7
8
  import '@stryke/types/file';
8
9
  import 'c12';
@@ -23,7 +24,6 @@ import 'semver';
23
24
  import 'unplugin';
24
25
  import './reflection-DTM1oT21.cjs';
25
26
  import '@stryke/capnp';
26
- import '@stryke/types/base';
27
27
  import '@stryke/types/array';
28
28
  import './tsconfig-BH7y5xoi.cjs';
29
29
  import '@stryke/types/tsconfig';
@@ -1,8 +1,9 @@
1
1
  import { Jiti } from 'jiti';
2
- import { C as Context, W as WorkspaceConfig, P as PowerlinesCommand, a as ParsedUserConfig } from './config-CHVR37vX.js';
2
+ import { C as Context, W as WorkspaceConfig, P as PowerlinesCommand, a as ParsedUserConfig } from './config-CNAXWorR.js';
3
3
  import '@storm-software/build-tools/types';
4
4
  import '@storm-software/config-tools/types';
5
5
  import '@storm-software/config/types';
6
+ import '@stryke/types/base';
6
7
  import '@stryke/types/configuration';
7
8
  import '@stryke/types/file';
8
9
  import 'c12';
@@ -23,7 +24,6 @@ import 'semver';
23
24
  import 'unplugin';
24
25
  import './reflection-DTM1oT21.js';
25
26
  import '@stryke/capnp';
26
- import '@stryke/types/base';
27
27
  import '@stryke/types/array';
28
28
  import './tsconfig-BH7y5xoi.js';
29
29
  import '@stryke/types/tsconfig';
@@ -10,7 +10,7 @@ require('../chunk-4PGQ2A6S.cjs');
10
10
  require('../chunk-VK7472BT.cjs');
11
11
  require('../chunk-RYPBWA7K.cjs');
12
12
  require('../chunk-IL3RZKLW.cjs');
13
- require('../chunk-W6ZSRUY2.cjs');
13
+ require('../chunk-7IBV47QK.cjs');
14
14
  require('../chunk-2UIGZZVE.cjs');
15
15
  require('../chunk-RA22OSK4.cjs');
16
16
  require('../chunk-WHQJJ7GR.cjs');
@@ -4,10 +4,11 @@ export { createDeclarationTransformer, createTransformer } from './transformer.c
4
4
  export { getEnumReflectionType, getUnionTypes, isStringUnion, kindToName, stringifyDefaultValue, stringifyStringValue, stringifyValue } from './utilities.cjs';
5
5
  import '@stryke/types/configuration';
6
6
  import 'powerlines/deepkit/type';
7
- import '../config-DoR-gOOH.cjs';
7
+ import '../config-Db6OT19W.cjs';
8
8
  import '@storm-software/build-tools/types';
9
9
  import '@storm-software/config-tools/types';
10
10
  import '@storm-software/config/types';
11
+ import '@stryke/types/base';
11
12
  import '@stryke/types/file';
12
13
  import 'c12';
13
14
  import 'vite';
@@ -27,7 +28,6 @@ import 'semver';
27
28
  import 'unplugin';
28
29
  import '../reflection-DTM1oT21.cjs';
29
30
  import '@stryke/capnp';
30
- import '@stryke/types/base';
31
31
  import '@stryke/types/array';
32
32
  import '../tsconfig-BH7y5xoi.cjs';
33
33
  import '@stryke/types/tsconfig';
@@ -4,10 +4,11 @@ export { createDeclarationTransformer, createTransformer } from './transformer.j
4
4
  export { getEnumReflectionType, getUnionTypes, isStringUnion, kindToName, stringifyDefaultValue, stringifyStringValue, stringifyValue } from './utilities.js';
5
5
  import '@stryke/types/configuration';
6
6
  import 'powerlines/deepkit/type';
7
- import '../config-CHVR37vX.js';
7
+ import '../config-CNAXWorR.js';
8
8
  import '@storm-software/build-tools/types';
9
9
  import '@storm-software/config-tools/types';
10
10
  import '@storm-software/config/types';
11
+ import '@stryke/types/base';
11
12
  import '@stryke/types/file';
12
13
  import 'c12';
13
14
  import 'vite';
@@ -27,7 +28,6 @@ import 'semver';
27
28
  import 'unplugin';
28
29
  import '../reflection-DTM1oT21.js';
29
30
  import '@stryke/capnp';
30
- import '@stryke/types/base';
31
31
  import '@stryke/types/array';
32
32
  import '../tsconfig-BH7y5xoi.js';
33
33
  import '@stryke/types/tsconfig';
@@ -8,7 +8,7 @@ import '../chunk-EBCJR4BI.js';
8
8
  import '../chunk-GRLZMP3S.js';
9
9
  import '../chunk-OXWBWO6P.js';
10
10
  import '../chunk-WIQTANXE.js';
11
- import '../chunk-OY2CMFTJ.js';
11
+ import '../chunk-B74JOQLB.js';
12
12
  import '../chunk-DWCS4ZE3.js';
13
13
  import '../chunk-6JI7J3WM.js';
14
14
  import '../chunk-A5JCJ5ZP.js';
@@ -6,7 +6,7 @@ require('../chunk-4PGQ2A6S.cjs');
6
6
  require('../chunk-VK7472BT.cjs');
7
7
  require('../chunk-RYPBWA7K.cjs');
8
8
  require('../chunk-IL3RZKLW.cjs');
9
- require('../chunk-W6ZSRUY2.cjs');
9
+ require('../chunk-7IBV47QK.cjs');
10
10
  require('../chunk-2UIGZZVE.cjs');
11
11
  require('../chunk-RA22OSK4.cjs');
12
12
  require('../chunk-WHQJJ7GR.cjs');
@@ -1,9 +1,10 @@
1
1
  import { TypeDefinition } from '@stryke/types/configuration';
2
2
  import { Type } from 'powerlines/deepkit/type';
3
- import { C as Context, E as ESBuildResolvedBuildConfig } from '../config-DoR-gOOH.cjs';
3
+ import { C as Context, E as ESBuildResolvedBuildConfig } from '../config-Db6OT19W.cjs';
4
4
  import '@storm-software/build-tools/types';
5
5
  import '@storm-software/config-tools/types';
6
6
  import '@storm-software/config/types';
7
+ import '@stryke/types/base';
7
8
  import '@stryke/types/file';
8
9
  import 'c12';
9
10
  import 'vite';
@@ -23,7 +24,6 @@ import 'semver';
23
24
  import 'unplugin';
24
25
  import '../reflection-DTM1oT21.cjs';
25
26
  import '@stryke/capnp';
26
- import '@stryke/types/base';
27
27
  import '@stryke/types/array';
28
28
  import '../tsconfig-BH7y5xoi.cjs';
29
29
  import '@stryke/types/tsconfig';
@@ -1,9 +1,10 @@
1
1
  import { TypeDefinition } from '@stryke/types/configuration';
2
2
  import { Type } from 'powerlines/deepkit/type';
3
- import { C as Context, E as ESBuildResolvedBuildConfig } from '../config-CHVR37vX.js';
3
+ import { C as Context, E as ESBuildResolvedBuildConfig } from '../config-CNAXWorR.js';
4
4
  import '@storm-software/build-tools/types';
5
5
  import '@storm-software/config-tools/types';
6
6
  import '@storm-software/config/types';
7
+ import '@stryke/types/base';
7
8
  import '@stryke/types/file';
8
9
  import 'c12';
9
10
  import 'vite';
@@ -23,7 +24,6 @@ import 'semver';
23
24
  import 'unplugin';
24
25
  import '../reflection-DTM1oT21.js';
25
26
  import '@stryke/capnp';
26
- import '@stryke/types/base';
27
27
  import '@stryke/types/array';
28
28
  import '../tsconfig-BH7y5xoi.js';
29
29
  import '@stryke/types/tsconfig';
@@ -4,7 +4,7 @@ import '../chunk-EBCJR4BI.js';
4
4
  import '../chunk-GRLZMP3S.js';
5
5
  import '../chunk-OXWBWO6P.js';
6
6
  import '../chunk-WIQTANXE.js';
7
- import '../chunk-OY2CMFTJ.js';
7
+ import '../chunk-B74JOQLB.js';
8
8
  import '../chunk-DWCS4ZE3.js';
9
9
  import '../chunk-6JI7J3WM.js';
10
10
  import '../chunk-A5JCJ5ZP.js';
@@ -1,7 +1,8 @@
1
- import { C as Context } from '../config-DoR-gOOH.cjs';
1
+ import { C as Context } from '../config-Db6OT19W.cjs';
2
2
  import '@storm-software/build-tools/types';
3
3
  import '@storm-software/config-tools/types';
4
4
  import '@storm-software/config/types';
5
+ import '@stryke/types/base';
5
6
  import '@stryke/types/configuration';
6
7
  import '@stryke/types/file';
7
8
  import 'c12';
@@ -23,7 +24,6 @@ import 'semver';
23
24
  import 'unplugin';
24
25
  import '../reflection-DTM1oT21.cjs';
25
26
  import '@stryke/capnp';
26
- import '@stryke/types/base';
27
27
  import '@stryke/types/array';
28
28
  import '../tsconfig-BH7y5xoi.cjs';
29
29
  import '@stryke/types/tsconfig';
@@ -1,7 +1,8 @@
1
- import { C as Context } from '../config-CHVR37vX.js';
1
+ import { C as Context } from '../config-CNAXWorR.js';
2
2
  import '@storm-software/build-tools/types';
3
3
  import '@storm-software/config-tools/types';
4
4
  import '@storm-software/config/types';
5
+ import '@stryke/types/base';
5
6
  import '@stryke/types/configuration';
6
7
  import '@stryke/types/file';
7
8
  import 'c12';
@@ -23,7 +24,6 @@ import 'semver';
23
24
  import 'unplugin';
24
25
  import '../reflection-DTM1oT21.js';
25
26
  import '@stryke/capnp';
26
- import '@stryke/types/base';
27
27
  import '@stryke/types/array';
28
28
  import '../tsconfig-BH7y5xoi.js';
29
29
  import '@stryke/types/tsconfig';
@@ -1,12 +1,13 @@
1
1
  import ts from 'typescript';
2
2
  import { T as TranspilerOptions } from '../compiler-DrG_3PSL.cjs';
3
- import { C as Context } from '../config-DoR-gOOH.cjs';
3
+ import { C as Context } from '../config-Db6OT19W.cjs';
4
4
  import 'magic-string';
5
5
  import '../tsconfig-BH7y5xoi.cjs';
6
6
  import '@stryke/types/tsconfig';
7
7
  import '@storm-software/build-tools/types';
8
8
  import '@storm-software/config-tools/types';
9
9
  import '@storm-software/config/types';
10
+ import '@stryke/types/base';
10
11
  import '@stryke/types/configuration';
11
12
  import '@stryke/types/file';
12
13
  import 'c12';
@@ -28,7 +29,6 @@ import 'semver';
28
29
  import 'unplugin';
29
30
  import '../reflection-DTM1oT21.cjs';
30
31
  import '@stryke/capnp';
31
- import '@stryke/types/base';
32
32
  import '@stryke/types/array';
33
33
  import 'memfs';
34
34
  import 'node:fs';
@@ -1,12 +1,13 @@
1
1
  import ts from 'typescript';
2
2
  import { T as TranspilerOptions } from '../compiler-R1r7cAkZ.js';
3
- import { C as Context } from '../config-CHVR37vX.js';
3
+ import { C as Context } from '../config-CNAXWorR.js';
4
4
  import 'magic-string';
5
5
  import '../tsconfig-BH7y5xoi.js';
6
6
  import '@stryke/types/tsconfig';
7
7
  import '@storm-software/build-tools/types';
8
8
  import '@storm-software/config-tools/types';
9
9
  import '@storm-software/config/types';
10
+ import '@stryke/types/base';
10
11
  import '@stryke/types/configuration';
11
12
  import '@stryke/types/file';
12
13
  import 'c12';
@@ -28,7 +29,6 @@ import 'semver';
28
29
  import 'unplugin';
29
30
  import '../reflection-DTM1oT21.js';
30
31
  import '@stryke/capnp';
31
- import '@stryke/types/base';
32
32
  import '@stryke/types/array';
33
33
  import 'memfs';
34
34
  import 'node:fs';
@@ -1,8 +1,9 @@
1
1
  import { TypeDefinition, TypeDefinitionParameter } from '@stryke/types/configuration';
2
- import { C as Context, R as ResolvedEntryTypeDefinition } from './config-DoR-gOOH.cjs';
2
+ import { C as Context, R as ResolvedEntryTypeDefinition } from './config-Db6OT19W.cjs';
3
3
  import '@storm-software/build-tools/types';
4
4
  import '@storm-software/config-tools/types';
5
5
  import '@storm-software/config/types';
6
+ import '@stryke/types/base';
6
7
  import '@stryke/types/file';
7
8
  import 'c12';
8
9
  import 'vite';
@@ -23,7 +24,6 @@ import 'semver';
23
24
  import 'unplugin';
24
25
  import './reflection-DTM1oT21.cjs';
25
26
  import '@stryke/capnp';
26
- import '@stryke/types/base';
27
27
  import '@stryke/types/array';
28
28
  import './tsconfig-BH7y5xoi.cjs';
29
29
  import '@stryke/types/tsconfig';
@@ -1,8 +1,9 @@
1
1
  import { TypeDefinition, TypeDefinitionParameter } from '@stryke/types/configuration';
2
- import { C as Context, R as ResolvedEntryTypeDefinition } from './config-CHVR37vX.js';
2
+ import { C as Context, R as ResolvedEntryTypeDefinition } from './config-CNAXWorR.js';
3
3
  import '@storm-software/build-tools/types';
4
4
  import '@storm-software/config-tools/types';
5
5
  import '@storm-software/config/types';
6
+ import '@stryke/types/base';
6
7
  import '@stryke/types/file';
7
8
  import 'c12';
8
9
  import 'vite';
@@ -23,7 +24,6 @@ import 'semver';
23
24
  import 'unplugin';
24
25
  import './reflection-DTM1oT21.js';
25
26
  import '@stryke/capnp';
26
- import '@stryke/types/base';
27
27
  import '@stryke/types/array';
28
28
  import './tsconfig-BH7y5xoi.js';
29
29
  import '@stryke/types/tsconfig';
@@ -0,0 +1,28 @@
1
+ import { S as SelectHooksOptions } from './config-Db6OT19W.cjs';
2
+
3
+ type CallHookOptions = SelectHooksOptions & ({
4
+ /**
5
+ * Whether to call the hooks sequentially or in parallel.
6
+ *
7
+ * @defaultValue true
8
+ */
9
+ sequential?: true;
10
+ /**
11
+ * How to handle multiple return values from hooks.
12
+ * - "merge": Merge all non-undefined return values (if they are objects).
13
+ * - "first": Return the first non-undefined value.
14
+ *
15
+ * @remarks
16
+ * Merging only works if the return values are objects.
17
+ *
18
+ * @defaultValue "merge"
19
+ */
20
+ result?: "merge" | "first";
21
+ } | {
22
+ /**
23
+ * Whether to call the hooks sequentially or in parallel.
24
+ */
25
+ sequential: false;
26
+ });
27
+
28
+ export type { CallHookOptions as C };
@@ -0,0 +1,28 @@
1
+ import { S as SelectHooksOptions } from './config-CNAXWorR.js';
2
+
3
+ type CallHookOptions = SelectHooksOptions & ({
4
+ /**
5
+ * Whether to call the hooks sequentially or in parallel.
6
+ *
7
+ * @defaultValue true
8
+ */
9
+ sequential?: true;
10
+ /**
11
+ * How to handle multiple return values from hooks.
12
+ * - "merge": Merge all non-undefined return values (if they are objects).
13
+ * - "first": Return the first non-undefined value.
14
+ *
15
+ * @remarks
16
+ * Merging only works if the return values are objects.
17
+ *
18
+ * @defaultValue "merge"
19
+ */
20
+ result?: "merge" | "first";
21
+ } | {
22
+ /**
23
+ * Whether to call the hooks sequentially or in parallel.
24
+ */
25
+ sequential: false;
26
+ });
27
+
28
+ export type { CallHookOptions as C };