webpack 5.102.1 → 5.104.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 (220) hide show
  1. package/README.md +121 -134
  2. package/hot/dev-server.js +18 -3
  3. package/hot/emitter-event-target.js +7 -0
  4. package/hot/lazy-compilation-node.js +45 -29
  5. package/hot/lazy-compilation-universal.js +18 -0
  6. package/hot/lazy-compilation-web.js +15 -5
  7. package/hot/load-http.js +7 -0
  8. package/hot/only-dev-server.js +19 -4
  9. package/lib/APIPlugin.js +6 -0
  10. package/lib/Chunk.js +1 -1
  11. package/lib/ChunkGraph.js +9 -7
  12. package/lib/ChunkGroup.js +8 -5
  13. package/lib/CleanPlugin.js +6 -3
  14. package/lib/CodeGenerationResults.js +2 -1
  15. package/lib/CompatibilityPlugin.js +28 -2
  16. package/lib/Compilation.js +58 -21
  17. package/lib/Compiler.js +3 -3
  18. package/lib/ConcatenationScope.js +0 -15
  19. package/lib/ContextModule.js +6 -3
  20. package/lib/ContextModuleFactory.js +6 -4
  21. package/lib/CssModule.js +6 -1
  22. package/lib/DefinePlugin.js +45 -14
  23. package/lib/DelegatedModule.js +7 -4
  24. package/lib/Dependency.js +8 -1
  25. package/lib/DependencyTemplate.js +1 -0
  26. package/lib/DllModule.js +6 -3
  27. package/lib/DotenvPlugin.js +462 -0
  28. package/lib/EnvironmentPlugin.js +19 -16
  29. package/lib/EvalSourceMapDevToolPlugin.js +16 -0
  30. package/lib/ExportsInfo.js +6 -2
  31. package/lib/ExternalModule.js +28 -35
  32. package/lib/ExternalModuleFactoryPlugin.js +11 -9
  33. package/lib/ExternalsPlugin.js +2 -1
  34. package/lib/FileSystemInfo.js +1 -1
  35. package/lib/Generator.js +10 -7
  36. package/lib/HookWebpackError.js +33 -4
  37. package/lib/HotModuleReplacementPlugin.js +22 -0
  38. package/lib/ManifestPlugin.js +235 -0
  39. package/lib/Module.js +27 -15
  40. package/lib/ModuleBuildError.js +1 -1
  41. package/lib/ModuleError.js +1 -1
  42. package/lib/ModuleFilenameHelpers.js +1 -1
  43. package/lib/ModuleGraph.js +29 -13
  44. package/lib/ModuleGraphConnection.js +2 -2
  45. package/lib/ModuleSourceTypeConstants.js +189 -0
  46. package/lib/ModuleTypeConstants.js +1 -4
  47. package/lib/ModuleWarning.js +1 -1
  48. package/lib/MultiCompiler.js +1 -1
  49. package/lib/NodeStuffPlugin.js +424 -116
  50. package/lib/NormalModule.js +23 -20
  51. package/lib/NormalModuleFactory.js +7 -10
  52. package/lib/Parser.js +1 -1
  53. package/lib/RawModule.js +7 -4
  54. package/lib/RuntimeGlobals.js +22 -4
  55. package/lib/RuntimeModule.js +1 -1
  56. package/lib/RuntimePlugin.js +27 -6
  57. package/lib/RuntimeTemplate.js +120 -57
  58. package/lib/SourceMapDevToolPlugin.js +26 -1
  59. package/lib/Template.js +17 -6
  60. package/lib/TemplatedPathPlugin.js +5 -6
  61. package/lib/WebpackError.js +0 -1
  62. package/lib/WebpackOptionsApply.js +67 -15
  63. package/lib/asset/AssetBytesGenerator.js +16 -12
  64. package/lib/asset/AssetGenerator.js +31 -26
  65. package/lib/asset/AssetSourceGenerator.js +16 -12
  66. package/lib/asset/RawDataUrlModule.js +6 -3
  67. package/lib/buildChunkGraph.js +4 -2
  68. package/lib/cache/PackFileCacheStrategy.js +6 -5
  69. package/lib/cli.js +2 -43
  70. package/lib/config/browserslistTargetHandler.js +24 -0
  71. package/lib/config/defaults.js +226 -61
  72. package/lib/config/normalization.js +4 -3
  73. package/lib/config/target.js +11 -0
  74. package/lib/container/ContainerEntryModule.js +6 -3
  75. package/lib/container/FallbackModule.js +6 -3
  76. package/lib/container/RemoteModule.js +1 -3
  77. package/lib/css/CssGenerator.js +304 -76
  78. package/lib/css/CssLoadingRuntimeModule.js +14 -4
  79. package/lib/css/CssMergeStyleSheetsRuntimeModule.js +56 -0
  80. package/lib/css/CssModulesPlugin.js +72 -67
  81. package/lib/css/CssParser.js +1726 -732
  82. package/lib/css/walkCssTokens.js +128 -11
  83. package/lib/dependencies/CachedConstDependency.js +24 -10
  84. package/lib/dependencies/CommonJsImportsParserPlugin.js +0 -9
  85. package/lib/dependencies/CommonJsPlugin.js +12 -0
  86. package/lib/dependencies/CommonJsRequireContextDependency.js +1 -1
  87. package/lib/dependencies/ContextDependencyHelpers.js +2 -2
  88. package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +3 -1
  89. package/lib/dependencies/CssIcssExportDependency.js +389 -12
  90. package/lib/dependencies/CssIcssImportDependency.js +114 -51
  91. package/lib/dependencies/CssIcssSymbolDependency.js +31 -33
  92. package/lib/dependencies/CssImportDependency.js +17 -6
  93. package/lib/dependencies/CssUrlDependency.js +3 -2
  94. package/lib/dependencies/DynamicExports.js +7 -7
  95. package/lib/dependencies/ExternalModuleDependency.js +7 -4
  96. package/lib/dependencies/ExternalModuleInitFragment.js +3 -2
  97. package/lib/dependencies/ExternalModuleInitFragmentDependency.js +96 -0
  98. package/lib/dependencies/HarmonyAcceptDependency.js +6 -1
  99. package/lib/dependencies/HarmonyAcceptImportDependency.js +2 -1
  100. package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +12 -1
  101. package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +35 -23
  102. package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +13 -9
  103. package/lib/dependencies/HarmonyExports.js +4 -4
  104. package/lib/dependencies/HarmonyImportDependency.js +28 -27
  105. package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +28 -69
  106. package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -3
  107. package/lib/dependencies/HarmonyImportSpecifierDependency.js +10 -8
  108. package/lib/dependencies/ImportDependency.js +8 -2
  109. package/lib/dependencies/ImportEagerDependency.js +6 -3
  110. package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +1 -1
  111. package/lib/dependencies/ImportMetaPlugin.js +154 -9
  112. package/lib/dependencies/ImportParserPlugin.js +21 -23
  113. package/lib/dependencies/ImportPhase.js +121 -0
  114. package/lib/dependencies/ImportWeakDependency.js +6 -3
  115. package/lib/dependencies/LocalModulesHelpers.js +3 -3
  116. package/lib/dependencies/ModuleDependency.js +5 -1
  117. package/lib/dependencies/ModuleHotAcceptDependency.js +1 -1
  118. package/lib/dependencies/WorkerPlugin.js +2 -2
  119. package/lib/dependencies/getFunctionExpression.js +1 -1
  120. package/lib/esm/ExportWebpackRequireRuntimeModule.js +1 -8
  121. package/lib/esm/ModuleChunkFormatPlugin.js +5 -4
  122. package/lib/hmr/HotModuleReplacement.runtime.js +2 -1
  123. package/lib/hmr/LazyCompilationPlugin.js +5 -3
  124. package/lib/ids/IdHelpers.js +20 -8
  125. package/lib/index.js +6 -0
  126. package/lib/javascript/ChunkHelpers.js +16 -5
  127. package/lib/javascript/JavascriptGenerator.js +105 -104
  128. package/lib/javascript/JavascriptModulesPlugin.js +80 -37
  129. package/lib/javascript/JavascriptParser.js +161 -44
  130. package/lib/json/JsonGenerator.js +5 -4
  131. package/lib/json/JsonParser.js +9 -2
  132. package/lib/library/AbstractLibraryPlugin.js +1 -1
  133. package/lib/library/AmdLibraryPlugin.js +4 -1
  134. package/lib/library/ExportPropertyLibraryPlugin.js +4 -1
  135. package/lib/library/ModuleLibraryPlugin.js +41 -23
  136. package/lib/library/SystemLibraryPlugin.js +8 -1
  137. package/lib/library/UmdLibraryPlugin.js +2 -2
  138. package/lib/logging/Logger.js +5 -4
  139. package/lib/logging/createConsoleLogger.js +2 -2
  140. package/lib/node/NodeTargetPlugin.js +9 -1
  141. package/lib/node/ReadFileCompileWasmPlugin.js +0 -2
  142. package/lib/optimize/ConcatenatedModule.js +208 -167
  143. package/lib/optimize/ModuleConcatenationPlugin.js +5 -4
  144. package/lib/optimize/SideEffectsFlagPlugin.js +3 -2
  145. package/lib/optimize/SplitChunksPlugin.js +60 -46
  146. package/lib/rules/RuleSetCompiler.js +1 -1
  147. package/lib/runtime/AsyncModuleRuntimeModule.js +28 -18
  148. package/lib/runtime/AutoPublicPathRuntimeModule.js +8 -3
  149. package/lib/runtime/GetChunkFilenameRuntimeModule.js +3 -2
  150. package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +89 -55
  151. package/lib/schemes/HttpUriPlugin.js +78 -7
  152. package/lib/serialization/AggregateErrorSerializer.js +1 -2
  153. package/lib/serialization/ObjectMiddleware.js +0 -2
  154. package/lib/serialization/SingleItemMiddleware.js +1 -1
  155. package/lib/sharing/ConsumeSharedModule.js +1 -1
  156. package/lib/sharing/ConsumeSharedPlugin.js +5 -3
  157. package/lib/sharing/ProvideSharedModule.js +1 -1
  158. package/lib/sharing/resolveMatchedConfigs.js +15 -9
  159. package/lib/sharing/utils.js +1 -1
  160. package/lib/stats/DefaultStatsFactoryPlugin.js +8 -5
  161. package/lib/stats/DefaultStatsPresetPlugin.js +1 -1
  162. package/lib/stats/DefaultStatsPrinterPlugin.js +1 -1
  163. package/lib/util/StringXor.js +1 -1
  164. package/lib/util/URLAbsoluteSpecifier.js +2 -2
  165. package/lib/util/binarySearchBounds.js +2 -2
  166. package/lib/util/comparators.js +54 -76
  167. package/lib/util/compileBooleanMatcher.js +78 -6
  168. package/lib/util/createHash.js +20 -199
  169. package/lib/util/deprecation.js +1 -1
  170. package/lib/util/deterministicGrouping.js +6 -3
  171. package/lib/util/fs.js +75 -75
  172. package/lib/util/hash/BatchedHash.js +10 -9
  173. package/lib/util/hash/BulkUpdateHash.js +138 -0
  174. package/lib/util/hash/DebugHash.js +75 -0
  175. package/lib/util/hash/hash-digest.js +216 -0
  176. package/lib/util/identifier.js +82 -17
  177. package/lib/util/internalSerializables.js +2 -6
  178. package/lib/util/runtime.js +3 -3
  179. package/lib/util/source.js +2 -2
  180. package/lib/wasm/EnableWasmLoadingPlugin.js +10 -4
  181. package/lib/wasm-async/AsyncWebAssemblyGenerator.js +3 -2
  182. package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +11 -7
  183. package/lib/wasm-sync/WebAssemblyGenerator.js +9 -6
  184. package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +11 -6
  185. package/lib/wasm-sync/WebAssemblyModulesPlugin.js +6 -2
  186. package/lib/web/FetchCompileWasmPlugin.js +0 -2
  187. package/lib/webpack.js +85 -82
  188. package/module.d.ts +5 -0
  189. package/package.json +34 -28
  190. package/schemas/WebpackOptions.check.js +1 -1
  191. package/schemas/WebpackOptions.json +160 -101
  192. package/schemas/plugins/{css/CssAutoParserOptions.check.d.ts → ManifestPlugin.check.d.ts} +1 -1
  193. package/schemas/plugins/ManifestPlugin.check.js +6 -0
  194. package/schemas/plugins/ManifestPlugin.json +98 -0
  195. package/schemas/plugins/SourceMapDevToolPlugin.check.js +1 -1
  196. package/schemas/plugins/SourceMapDevToolPlugin.json +16 -3
  197. package/schemas/plugins/container/ContainerReferencePlugin.check.js +1 -1
  198. package/schemas/plugins/container/ContainerReferencePlugin.json +4 -1
  199. package/schemas/plugins/container/ExternalsType.check.js +1 -1
  200. package/schemas/plugins/container/ModuleFederationPlugin.check.js +1 -1
  201. package/schemas/plugins/container/ModuleFederationPlugin.json +4 -1
  202. package/schemas/plugins/css/CssModuleGeneratorOptions.check.js +1 -1
  203. package/schemas/plugins/css/CssModuleParserOptions.check.js +1 -1
  204. package/schemas/plugins/css/CssParserOptions.check.js +1 -1
  205. package/schemas/plugins/json/JsonModulesPluginParser.check.js +1 -1
  206. package/types.d.ts +771 -436
  207. package/lib/ModuleSourceTypesConstants.js +0 -123
  208. package/lib/dependencies/CssLocalIdentifierDependency.js +0 -250
  209. package/lib/dependencies/CssSelfLocalIdentifierDependency.js +0 -112
  210. package/schemas/plugins/css/CssAutoGeneratorOptions.check.d.ts +0 -7
  211. package/schemas/plugins/css/CssAutoGeneratorOptions.check.js +0 -6
  212. package/schemas/plugins/css/CssAutoGeneratorOptions.json +0 -3
  213. package/schemas/plugins/css/CssAutoParserOptions.check.js +0 -6
  214. package/schemas/plugins/css/CssAutoParserOptions.json +0 -3
  215. package/schemas/plugins/css/CssGlobalGeneratorOptions.check.d.ts +0 -7
  216. package/schemas/plugins/css/CssGlobalGeneratorOptions.check.js +0 -6
  217. package/schemas/plugins/css/CssGlobalGeneratorOptions.json +0 -3
  218. package/schemas/plugins/css/CssGlobalParserOptions.check.d.ts +0 -7
  219. package/schemas/plugins/css/CssGlobalParserOptions.check.js +0 -6
  220. package/schemas/plugins/css/CssGlobalParserOptions.json +0 -3
package/types.d.ts CHANGED
@@ -68,6 +68,7 @@ import {
68
68
  SequenceExpression,
69
69
  SimpleCallExpression,
70
70
  SimpleLiteral,
71
+ SourceLocation,
71
72
  SpreadElement,
72
73
  StaticBlock,
73
74
  Super,
@@ -90,9 +91,12 @@ import {
90
91
  import {
91
92
  IncomingMessage,
92
93
  Server as ServerImportHttp,
93
- ServerOptions
94
+ ServerOptions as ServerOptionsImportHttp
94
95
  } from "http";
95
- import { Server as ServerImportHttps } from "https";
96
+ import {
97
+ Server as ServerImportHttps,
98
+ ServerOptions as ServerOptionsImportHttps
99
+ } from "https";
96
100
  import {
97
101
  Session as SessionImportInspectorClass_1,
98
102
  Session as SessionImportInspectorClass_2
@@ -119,7 +123,6 @@ import {
119
123
  TapOptions,
120
124
  TypedHookMap
121
125
  } from "tapable";
122
- import { SecureContextOptions, TlsOptions } from "tls";
123
126
  import { URL } from "url";
124
127
  import { Context } from "vm";
125
128
 
@@ -989,18 +992,18 @@ declare interface Bootstrap {
989
992
  allowInlineStartup: boolean;
990
993
  }
991
994
  type BufferEncoding =
992
- | "base64"
993
- | "base64url"
994
- | "hex"
995
- | "binary"
995
+ | "ascii"
996
996
  | "utf8"
997
997
  | "utf-8"
998
998
  | "utf16le"
999
999
  | "utf-16le"
1000
- | "latin1"
1001
- | "ascii"
1002
1000
  | "ucs2"
1003
- | "ucs-2";
1001
+ | "ucs-2"
1002
+ | "base64"
1003
+ | "base64url"
1004
+ | "latin1"
1005
+ | "binary"
1006
+ | "hex";
1004
1007
  type BufferEncodingOption = "buffer" | { encoding: "buffer" };
1005
1008
  declare interface BufferEntry {
1006
1009
  map?: null | RawSourceMap;
@@ -1045,7 +1048,7 @@ declare interface BufferedMap {
1045
1048
  type BuildInfo = KnownBuildInfo & Record<string, any>;
1046
1049
  type BuildMeta = KnownBuildMeta & Record<string, any>;
1047
1050
  declare abstract class ByTypeGenerator extends Generator {
1048
- map: Record<string, Generator>;
1051
+ map: { [index: string]: undefined | Generator };
1049
1052
  generateError?: (
1050
1053
  error: Error,
1051
1054
  module: NormalModule,
@@ -1369,7 +1372,7 @@ declare class ChunkGraph {
1369
1372
  setChunkModuleSourceTypes(
1370
1373
  chunk: Chunk,
1371
1374
  module: Module,
1372
- sourceTypes: Set<string>
1375
+ sourceTypes: ReadonlySet<string>
1373
1376
  ): void;
1374
1377
  getChunkModuleSourceTypes(chunk: Chunk, module: Module): ReadonlySet<string>;
1375
1378
  getModuleSourceTypes(module: Module): ReadonlySet<string>;
@@ -1718,17 +1721,17 @@ declare interface ChunkRenderContextCssModulesPlugin {
1718
1721
  /**
1719
1722
  * the chunk
1720
1723
  */
1721
- chunk: Chunk;
1724
+ chunk?: Chunk;
1722
1725
 
1723
1726
  /**
1724
1727
  * the chunk graph
1725
1728
  */
1726
- chunkGraph: ChunkGraph;
1729
+ chunkGraph?: ChunkGraph;
1727
1730
 
1728
1731
  /**
1729
1732
  * results of code generation
1730
1733
  */
1731
- codeGenerationResults: CodeGenerationResults;
1734
+ codeGenerationResults?: CodeGenerationResults;
1732
1735
 
1733
1736
  /**
1734
1737
  * the runtime template
@@ -1739,6 +1742,16 @@ declare interface ChunkRenderContextCssModulesPlugin {
1739
1742
  * undo path to css file
1740
1743
  */
1741
1744
  undoPath: string;
1745
+
1746
+ /**
1747
+ * moduleFactoryCache
1748
+ */
1749
+ moduleFactoryCache: WeakMap<Source, ModuleFactoryCacheEntry>;
1750
+
1751
+ /**
1752
+ * content
1753
+ */
1754
+ moduleSourceContent: Source;
1742
1755
  }
1743
1756
  declare interface ChunkRenderContextJavascriptModulesPlugin {
1744
1757
  /**
@@ -1932,6 +1945,11 @@ declare interface CodeGenerationContext {
1932
1945
  */
1933
1946
  runtime: RuntimeSpec;
1934
1947
 
1948
+ /**
1949
+ * all runtimes code should be generated for
1950
+ */
1951
+ runtimes: RuntimeSpec[];
1952
+
1935
1953
  /**
1936
1954
  * when in concatenated module, information about other concatenated modules
1937
1955
  */
@@ -2097,6 +2115,11 @@ declare interface CommentCssParser {
2097
2115
  range: [number, number];
2098
2116
  loc: { start: Position; end: Position };
2099
2117
  }
2118
+ type CommentJavascriptParser = CommentImport & {
2119
+ start: number;
2120
+ end: number;
2121
+ loc: SourceLocation;
2122
+ };
2100
2123
  declare interface CommonJsImportSettings {
2101
2124
  name?: string;
2102
2125
  context: string;
@@ -2952,7 +2975,6 @@ declare class ConcatenationScope {
2952
2975
  getRawExport(exportName: string): undefined | string;
2953
2976
  setRawExportMap(exportName: string, expression: string): void;
2954
2977
  registerNamespaceExport(symbol: string): void;
2955
- registerUsedName(symbol: string): boolean;
2956
2978
  createModuleReference(
2957
2979
  module: Module,
2958
2980
  __1: Partial<ModuleReferenceOptions>
@@ -2963,7 +2985,6 @@ declare class ConcatenationScope {
2963
2985
  ): null | (ModuleReferenceOptions & { index: number });
2964
2986
  static DEFAULT_EXPORT: string;
2965
2987
  static NAMESPACE_OBJECT_EXPORT: string;
2966
- static chunkUsedNames: WeakMap<Chunk, Set<string>>;
2967
2988
  }
2968
2989
 
2969
2990
  /**
@@ -3000,6 +3021,11 @@ declare interface Configuration {
3000
3021
  */
3001
3022
  devtool?: string | false;
3002
3023
 
3024
+ /**
3025
+ * Enable and configure the Dotenv plugin to load environment variables from .env files.
3026
+ */
3027
+ dotenv?: boolean | DotenvPluginOptions;
3028
+
3003
3029
  /**
3004
3030
  * The entry point(s) of the compilation.
3005
3031
  */
@@ -3066,7 +3092,10 @@ declare interface Configuration {
3066
3092
  | "promise"
3067
3093
  | "module-import"
3068
3094
  | "script"
3069
- | "node-commonjs";
3095
+ | "node-commonjs"
3096
+ | "asset"
3097
+ | "css-import"
3098
+ | "css-url";
3070
3099
 
3071
3100
  /**
3072
3101
  * Ignore specific warnings.
@@ -3234,6 +3263,7 @@ declare class ConstDependency extends NullDependency {
3234
3263
  static Template: typeof ConstDependencyTemplate;
3235
3264
  static NO_EXPORTS_REFERENCED: string[][];
3236
3265
  static EXPORTS_OBJECT_REFERENCED: string[][];
3266
+ static isLowPriorityDependency(dependency: Dependency): boolean;
3237
3267
  static TRANSITIVE: typeof TRANSITIVE;
3238
3268
  }
3239
3269
  declare class ConstDependencyTemplate extends NullDependencyTemplate {
@@ -3549,57 +3579,6 @@ type CreateWriteStreamFSImplementation = FSImplementation & {
3549
3579
  close?: (...args: any[]) => any;
3550
3580
  };
3551
3581
  declare interface CreatedObject<T, F> {}
3552
-
3553
- /**
3554
- * Generator options for css/auto modules.
3555
- */
3556
- declare interface CssAutoGeneratorOptions {
3557
- /**
3558
- * Configure the generated JS modules that use the ES modules syntax.
3559
- */
3560
- esModule?: boolean;
3561
-
3562
- /**
3563
- * Specifies the convention of exported names.
3564
- */
3565
- exportsConvention?:
3566
- | "as-is"
3567
- | "camel-case"
3568
- | "camel-case-only"
3569
- | "dashes"
3570
- | "dashes-only"
3571
- | ((name: string) => string);
3572
-
3573
- /**
3574
- * Avoid generating and loading a stylesheet and only embed exports from css into output javascript files.
3575
- */
3576
- exportsOnly?: boolean;
3577
-
3578
- /**
3579
- * Configure the generated local ident name.
3580
- */
3581
- localIdentName?: string;
3582
- }
3583
-
3584
- /**
3585
- * Parser options for css/auto modules.
3586
- */
3587
- declare interface CssAutoParserOptions {
3588
- /**
3589
- * Enable/disable `@import` at-rules handling.
3590
- */
3591
- import?: boolean;
3592
-
3593
- /**
3594
- * Use ES modules named export for css exports.
3595
- */
3596
- namedExports?: boolean;
3597
-
3598
- /**
3599
- * Enable/disable `url()`/`image-set()`/`src()`/`image()` functions handling.
3600
- */
3601
- url?: boolean;
3602
- }
3603
3582
  declare interface CssData {
3604
3583
  /**
3605
3584
  * whether export __esModule
@@ -3612,16 +3591,20 @@ declare interface CssData {
3612
3591
  exports: Map<string, string>;
3613
3592
  }
3614
3593
  declare abstract class CssGenerator extends Generator {
3615
- convention?:
3616
- | "as-is"
3617
- | "camel-case"
3618
- | "camel-case-only"
3619
- | "dashes"
3620
- | "dashes-only"
3621
- | ((name: string) => string);
3622
- localIdentName?: string;
3623
- exportsOnly?: boolean;
3624
- esModule?: boolean;
3594
+ options: CssModuleGeneratorOptions;
3595
+ sourceDependency(
3596
+ module: NormalModule,
3597
+ dependency: Dependency,
3598
+ initFragments: InitFragment<GenerateContext>[],
3599
+ source: ReplaceSource,
3600
+ generateContext: GenerateContext & { cssData: CssData }
3601
+ ): void;
3602
+ sourceModule(
3603
+ module: NormalModule,
3604
+ initFragments: InitFragment<GenerateContext>[],
3605
+ source: ReplaceSource,
3606
+ generateContext: GenerateContext & { cssData: CssData }
3607
+ ): void;
3625
3608
  generateError(
3626
3609
  error: Error,
3627
3610
  module: NormalModule,
@@ -3643,57 +3626,6 @@ declare interface CssGeneratorOptions {
3643
3626
  */
3644
3627
  exportsOnly?: boolean;
3645
3628
  }
3646
-
3647
- /**
3648
- * Generator options for css/global modules.
3649
- */
3650
- declare interface CssGlobalGeneratorOptions {
3651
- /**
3652
- * Configure the generated JS modules that use the ES modules syntax.
3653
- */
3654
- esModule?: boolean;
3655
-
3656
- /**
3657
- * Specifies the convention of exported names.
3658
- */
3659
- exportsConvention?:
3660
- | "as-is"
3661
- | "camel-case"
3662
- | "camel-case-only"
3663
- | "dashes"
3664
- | "dashes-only"
3665
- | ((name: string) => string);
3666
-
3667
- /**
3668
- * Avoid generating and loading a stylesheet and only embed exports from css into output javascript files.
3669
- */
3670
- exportsOnly?: boolean;
3671
-
3672
- /**
3673
- * Configure the generated local ident name.
3674
- */
3675
- localIdentName?: string;
3676
- }
3677
-
3678
- /**
3679
- * Parser options for css/global modules.
3680
- */
3681
- declare interface CssGlobalParserOptions {
3682
- /**
3683
- * Enable/disable `@import` at-rules handling.
3684
- */
3685
- import?: boolean;
3686
-
3687
- /**
3688
- * Use ES modules named export for css exports.
3689
- */
3690
- namedExports?: boolean;
3691
-
3692
- /**
3693
- * Enable/disable `url()`/`image-set()`/`src()`/`image()` functions handling.
3694
- */
3695
- url?: boolean;
3696
- }
3697
3629
  declare interface CssImportDependencyMeta {
3698
3630
  layer?: string;
3699
3631
  supports?: string;
@@ -3747,6 +3679,11 @@ declare interface CssModuleGeneratorOptions {
3747
3679
  */
3748
3680
  esModule?: boolean;
3749
3681
 
3682
+ /**
3683
+ * Configure how CSS content is exported as default.
3684
+ */
3685
+ exportType?: "link" | "text" | "css-style-sheet";
3686
+
3750
3687
  /**
3751
3688
  * Specifies the convention of exported names.
3752
3689
  */
@@ -3763,6 +3700,21 @@ declare interface CssModuleGeneratorOptions {
3763
3700
  */
3764
3701
  exportsOnly?: boolean;
3765
3702
 
3703
+ /**
3704
+ * Digest types used for the hash.
3705
+ */
3706
+ localIdentHashDigest?: string;
3707
+
3708
+ /**
3709
+ * Number of chars which are used for the hash.
3710
+ */
3711
+ localIdentHashDigestLength?: number;
3712
+
3713
+ /**
3714
+ * Any string which is added to the hash to salt it.
3715
+ */
3716
+ localIdentHashSalt?: string;
3717
+
3766
3718
  /**
3767
3719
  * Configure the generated local ident name.
3768
3720
  */
@@ -3773,6 +3725,41 @@ declare interface CssModuleGeneratorOptions {
3773
3725
  * Parser options for css/module modules.
3774
3726
  */
3775
3727
  declare interface CssModuleParserOptions {
3728
+ /**
3729
+ * Enable/disable renaming of `@keyframes`.
3730
+ */
3731
+ animation?: boolean;
3732
+
3733
+ /**
3734
+ * Enable/disable renaming of `@container` names.
3735
+ */
3736
+ container?: boolean;
3737
+
3738
+ /**
3739
+ * Enable/disable renaming of custom identifiers.
3740
+ */
3741
+ customIdents?: boolean;
3742
+
3743
+ /**
3744
+ * Enable/disable renaming of dashed identifiers, e. g. custom properties.
3745
+ */
3746
+ dashedIdents?: boolean;
3747
+
3748
+ /**
3749
+ * Configure how CSS content is exported as default.
3750
+ */
3751
+ exportType?: "link" | "text" | "css-style-sheet";
3752
+
3753
+ /**
3754
+ * Enable/disable renaming of `@function` names.
3755
+ */
3756
+ function?: boolean;
3757
+
3758
+ /**
3759
+ * Enable/disable renaming of grid identifiers.
3760
+ */
3761
+ grid?: boolean;
3762
+
3776
3763
  /**
3777
3764
  * Enable/disable `@import` at-rules handling.
3778
3765
  */
@@ -3805,11 +3792,6 @@ declare class CssModulesPlugin {
3805
3792
  chunkGraph: ChunkGraph,
3806
3793
  compilation: Compilation
3807
3794
  ): Module[];
3808
- renderModule(
3809
- module: CssModule,
3810
- renderContext: ChunkRenderContextCssModulesPlugin,
3811
- hooks: CompilationHooksCssModulesPlugin
3812
- ): Source;
3813
3795
  renderChunk(
3814
3796
  __0: RenderContextCssModulesPlugin,
3815
3797
  hooks: CompilationHooksCssModulesPlugin
@@ -3817,6 +3799,11 @@ declare class CssModulesPlugin {
3817
3799
  static getCompilationHooks(
3818
3800
  compilation: Compilation
3819
3801
  ): CompilationHooksCssModulesPlugin;
3802
+ static renderModule(
3803
+ module: CssModule,
3804
+ renderContext: ChunkRenderContextCssModulesPlugin,
3805
+ hooks: CompilationHooksCssModulesPlugin
3806
+ ): null | Source;
3820
3807
  static getChunkFilenameTemplate(
3821
3808
  chunk: Chunk,
3822
3809
  outputOptions: OutputNormalizedWithDefaults
@@ -3825,9 +3812,52 @@ declare class CssModulesPlugin {
3825
3812
  }
3826
3813
  declare abstract class CssParser extends ParserClass {
3827
3814
  defaultMode: "global" | "auto" | "pure" | "local";
3828
- import: boolean;
3829
- url: boolean;
3830
- namedExports: boolean;
3815
+ options: {
3816
+ /**
3817
+ * Enable/disable renaming of `@keyframes`.
3818
+ */
3819
+ animation: boolean;
3820
+ /**
3821
+ * Enable/disable renaming of `@container` names.
3822
+ */
3823
+ container: boolean;
3824
+ /**
3825
+ * Enable/disable renaming of custom identifiers.
3826
+ */
3827
+ customIdents: boolean;
3828
+ /**
3829
+ * Enable/disable renaming of dashed identifiers, e. g. custom properties.
3830
+ */
3831
+ dashedIdents: boolean;
3832
+ /**
3833
+ * Configure how CSS content is exported as default.
3834
+ */
3835
+ exportType?: "link" | "text" | "css-style-sheet";
3836
+ /**
3837
+ * Enable/disable renaming of `@function` names.
3838
+ */
3839
+ function: boolean;
3840
+ /**
3841
+ * Enable/disable renaming of grid identifiers.
3842
+ */
3843
+ grid: boolean;
3844
+ /**
3845
+ * Enable/disable `@import` at-rules handling.
3846
+ */
3847
+ import: boolean;
3848
+ /**
3849
+ * Use ES modules named export for css exports.
3850
+ */
3851
+ namedExports: boolean;
3852
+ /**
3853
+ * Enable/disable `url()`/`image-set()`/`src()`/`image()` functions handling.
3854
+ */
3855
+ url: boolean;
3856
+ /**
3857
+ * default mode
3858
+ */
3859
+ defaultMode?: "global" | "auto" | "pure" | "local";
3860
+ };
3831
3861
  comments?: CommentCssParser[];
3832
3862
  magicCommentContext: Context;
3833
3863
  getComments(range: [number, number]): CommentCssParser[];
@@ -3841,6 +3871,11 @@ declare abstract class CssParser extends ParserClass {
3841
3871
  * Parser options for css modules.
3842
3872
  */
3843
3873
  declare interface CssParserOptions {
3874
+ /**
3875
+ * Configure how CSS content is exported as default.
3876
+ */
3877
+ exportType?: "link" | "text" | "css-style-sheet";
3878
+
3844
3879
  /**
3845
3880
  * Enable/disable `@import` at-rules handling.
3846
3881
  */
@@ -3868,6 +3903,7 @@ declare class DefinePlugin {
3868
3903
  * Apply the plugin
3869
3904
  */
3870
3905
  apply(compiler: Compiler): void;
3906
+ static getCompilationHooks(compilation: Compilation): DefinePluginHooks;
3871
3907
  static runtimeValue(
3872
3908
  fn: (value: {
3873
3909
  module: NormalModule;
@@ -3877,6 +3913,12 @@ declare class DefinePlugin {
3877
3913
  options?: true | string[] | RuntimeValueOptions
3878
3914
  ): RuntimeValue;
3879
3915
  }
3916
+ declare interface DefinePluginHooks {
3917
+ definitions: SyncWaterfallHook<
3918
+ [Record<string, CodeValue>],
3919
+ Record<string, CodeValue>
3920
+ >;
3921
+ }
3880
3922
  declare class DelegatedPlugin {
3881
3923
  constructor(options: Options);
3882
3924
  options: Options;
@@ -3985,6 +4027,7 @@ declare class Dependency {
3985
4027
  get disconnect(): any;
3986
4028
  static NO_EXPORTS_REFERENCED: string[][];
3987
4029
  static EXPORTS_OBJECT_REFERENCED: string[][];
4030
+ static isLowPriorityDependency(dependency: Dependency): boolean;
3988
4031
  static TRANSITIVE: typeof TRANSITIVE;
3989
4032
  }
3990
4033
  declare interface DependencyConstructor {
@@ -4085,6 +4128,7 @@ declare abstract class DependencyTemplates {
4085
4128
  declare interface DestructuringAssignmentProperty {
4086
4129
  id: string;
4087
4130
  range: [number, number];
4131
+ loc: SourceLocation;
4088
4132
  pattern?: Set<DestructuringAssignmentProperty>;
4089
4133
  shorthand: string | boolean;
4090
4134
  }
@@ -4419,6 +4463,44 @@ declare interface DllReferencePluginOptionsManifest {
4419
4463
  | "jsonp"
4420
4464
  | "system";
4421
4465
  }
4466
+ declare class DotenvPlugin {
4467
+ constructor(options?: DotenvPluginOptions);
4468
+ options: {
4469
+ /**
4470
+ * The directory from which .env files are loaded. Can be an absolute path, false will disable the .env file loading.
4471
+ */
4472
+ dir?: string | false;
4473
+ /**
4474
+ * Only expose environment variables that start with these prefixes. Defaults to 'WEBPACK_'.
4475
+ */
4476
+ prefix?: string | string[];
4477
+ /**
4478
+ * Template patterns for .env file names. Use [mode] as placeholder for the webpack mode. Defaults to ['.env', '.env.local', '.env.[mode]', '.env.[mode].local'].
4479
+ */
4480
+ template?: string[];
4481
+ };
4482
+ apply(compiler: Compiler): void;
4483
+ }
4484
+
4485
+ /**
4486
+ * Options for Dotenv plugin.
4487
+ */
4488
+ declare interface DotenvPluginOptions {
4489
+ /**
4490
+ * The directory from which .env files are loaded. Can be an absolute path, false will disable the .env file loading.
4491
+ */
4492
+ dir?: string | false;
4493
+
4494
+ /**
4495
+ * Only expose environment variables that start with these prefixes. Defaults to 'WEBPACK_'.
4496
+ */
4497
+ prefix?: string | string[];
4498
+
4499
+ /**
4500
+ * Template patterns for .env file names. Use [mode] as placeholder for the webpack mode. Defaults to ['.env', '.env.local', '.env.[mode]', '.env.[mode].local'].
4501
+ */
4502
+ template?: string[];
4503
+ }
4422
4504
  declare class DynamicEntryPlugin {
4423
4505
  constructor(context: string, entry: () => Promise<EntryStaticNormalized>);
4424
4506
  context: string;
@@ -4518,18 +4600,18 @@ declare class EnableWasmLoadingPlugin {
4518
4600
  type EncodingOption =
4519
4601
  | undefined
4520
4602
  | null
4521
- | "base64"
4522
- | "base64url"
4523
- | "hex"
4524
- | "binary"
4603
+ | "ascii"
4525
4604
  | "utf8"
4526
4605
  | "utf-8"
4527
4606
  | "utf16le"
4528
4607
  | "utf-16le"
4529
- | "latin1"
4530
- | "ascii"
4531
4608
  | "ucs2"
4532
4609
  | "ucs-2"
4610
+ | "base64"
4611
+ | "base64url"
4612
+ | "latin1"
4613
+ | "binary"
4614
+ | "hex"
4533
4615
  | ObjectEncodingOptions;
4534
4616
  type Entry =
4535
4617
  | string
@@ -4817,6 +4899,16 @@ declare interface Environment {
4817
4899
  */
4818
4900
  globalThis?: boolean;
4819
4901
 
4902
+ /**
4903
+ * The environment supports `import.meta.dirname` and `import.meta.filename`.
4904
+ */
4905
+ importMetaDirnameAndFilename?: boolean;
4906
+
4907
+ /**
4908
+ * The environment supports object method shorthand ('{ module() {} }').
4909
+ */
4910
+ methodShorthand?: boolean;
4911
+
4820
4912
  /**
4821
4913
  * The environment supports EcmaScript Module syntax to import EcmaScript modules (import ... from '...').
4822
4914
  */
@@ -5143,6 +5235,27 @@ declare abstract class ExportInfo {
5143
5235
  | "not provided";
5144
5236
  getRenameInfo(): string;
5145
5237
  }
5238
+ declare abstract class ExportMode {
5239
+ type: ExportModeType;
5240
+ items: null | NormalReexportItem[];
5241
+ name: null | string;
5242
+ partialNamespaceExportInfo: null | ExportInfo;
5243
+ ignored: null | Set<string>;
5244
+ hidden?: null | Set<string>;
5245
+ userRequest: null | string;
5246
+ fakeType: number;
5247
+ }
5248
+ type ExportModeType =
5249
+ | "unused"
5250
+ | "missing"
5251
+ | "empty-star"
5252
+ | "reexport-dynamic-default"
5253
+ | "reexport-named-default"
5254
+ | "reexport-namespace-object"
5255
+ | "reexport-fake-namespace-object"
5256
+ | "reexport-undefined"
5257
+ | "normal-reexport"
5258
+ | "dynamic-reexport";
5146
5259
  type ExportPresenceMode = false | 0 | 1 | 2 | 3;
5147
5260
  declare interface ExportSpec {
5148
5261
  /**
@@ -5419,7 +5532,7 @@ type ExternalItemValue = string | boolean | string[] | { [index: string]: any };
5419
5532
  declare class ExternalModule extends Module {
5420
5533
  constructor(
5421
5534
  request: ExternalModuleRequest,
5422
- type: string,
5535
+ type: ExternalsType,
5423
5536
  userRequest: string,
5424
5537
  dependencyMeta?:
5425
5538
  | ImportDependencyMeta
@@ -5427,7 +5540,7 @@ declare class ExternalModule extends Module {
5427
5540
  | AssetDependencyMeta
5428
5541
  );
5429
5542
  request: ExternalModuleRequest;
5430
- externalType: string;
5543
+ externalType: ExternalsType;
5431
5544
  userRequest: string;
5432
5545
  dependencyMeta?:
5433
5546
  | ImportDependencyMeta
@@ -5450,6 +5563,7 @@ declare interface ExternalModuleInfo {
5450
5563
  type: "external";
5451
5564
  module: Module;
5452
5565
  runtimeCondition?: string | boolean | SortableSet<string>;
5566
+ nonDeferAccess: boolean;
5453
5567
  index: number;
5454
5568
 
5455
5569
  /**
@@ -5522,8 +5636,8 @@ type Externals =
5522
5636
  | ((data: ExternalItemFunctionData) => Promise<ExternalItemValue>)
5523
5637
  | ExternalItem[];
5524
5638
  declare class ExternalsPlugin {
5525
- constructor(type: string, externals: Externals);
5526
- type: string;
5639
+ constructor(type: ExternalsType, externals: Externals);
5640
+ type: ExternalsType;
5527
5641
  externals: Externals;
5528
5642
 
5529
5643
  /**
@@ -5607,7 +5721,10 @@ type ExternalsType =
5607
5721
  | "promise"
5608
5722
  | "module-import"
5609
5723
  | "script"
5610
- | "node-commonjs";
5724
+ | "node-commonjs"
5725
+ | "asset"
5726
+ | "css-import"
5727
+ | "css-url";
5611
5728
  declare interface FSImplementation {
5612
5729
  open?: (...args: any[]) => any;
5613
5730
  close?: (...args: any[]) => any;
@@ -5984,7 +6101,9 @@ declare class Generator {
5984
6101
  context: ConcatenationBailoutReasonContext
5985
6102
  ): undefined | string;
5986
6103
  updateHash(hash: Hash, __1: UpdateHashContextGenerator): void;
5987
- static byType(map: Record<string, Generator>): ByTypeGenerator;
6104
+ static byType(map: {
6105
+ [index: string]: undefined | Generator;
6106
+ }): ByTypeGenerator;
5988
6107
  }
5989
6108
  declare interface GeneratorOptions {
5990
6109
  [index: string]: any;
@@ -6027,14 +6146,14 @@ declare interface GeneratorOptionsByModuleTypeKnown {
6027
6146
  css?: CssGeneratorOptions;
6028
6147
 
6029
6148
  /**
6030
- * Generator options for css/auto modules.
6149
+ * Generator options for css/module modules.
6031
6150
  */
6032
- "css/auto"?: CssAutoGeneratorOptions;
6151
+ "css/auto"?: CssModuleGeneratorOptions;
6033
6152
 
6034
6153
  /**
6035
- * Generator options for css/global modules.
6154
+ * Generator options for css/module modules.
6036
6155
  */
6037
- "css/global"?: CssGlobalGeneratorOptions;
6156
+ "css/global"?: CssModuleGeneratorOptions;
6038
6157
 
6039
6158
  /**
6040
6159
  * Generator options for css/module modules.
@@ -6187,16 +6306,40 @@ declare interface HandleModuleCreationOptions {
6187
6306
  */
6188
6307
  checkCycle?: boolean;
6189
6308
  }
6309
+ declare abstract class HarmonyExportImportedSpecifierDependency extends HarmonyImportDependency {
6310
+ ids: string[];
6311
+ name: null | string;
6312
+ activeExports: Set<string>;
6313
+ otherStarExports: null | ReadonlyArray<HarmonyExportImportedSpecifierDependency>;
6314
+ exportPresenceMode: ExportPresenceMode;
6315
+ allStarExports: null | HarmonyStarExportsList;
6316
+ get id(): void;
6317
+ getId(): void;
6318
+ setId(): void;
6319
+ getIds(moduleGraph: ModuleGraph): string[];
6320
+ setIds(moduleGraph: ModuleGraph, ids: string[]): void;
6321
+ getMode(moduleGraph: ModuleGraph, runtime: RuntimeSpec): ExportMode;
6322
+ getStarReexports(
6323
+ moduleGraph: ModuleGraph,
6324
+ runtime: RuntimeSpec,
6325
+ exportsInfo?: ExportsInfo,
6326
+ importedModule?: Module
6327
+ ): {
6328
+ exports?: Set<string>;
6329
+ checked?: Set<string>;
6330
+ ignoredExports: Set<string>;
6331
+ hidden?: Set<string>;
6332
+ };
6333
+ }
6190
6334
  declare class HarmonyImportDependency extends ModuleDependency {
6191
6335
  constructor(
6192
6336
  request: string,
6193
6337
  sourceOrder: number,
6194
- attributes?: ImportAttributes,
6195
- defer?: boolean
6338
+ phase?: 0 | 1 | 2,
6339
+ attributes?: ImportAttributes
6196
6340
  );
6197
- sourceOrder: number;
6341
+ phase: ImportPhaseType;
6198
6342
  attributes?: ImportAttributes;
6199
- defer?: boolean;
6200
6343
  getImportVar(moduleGraph: ModuleGraph): string;
6201
6344
  getModuleExports(__0: DependencyTemplateContext): string;
6202
6345
  getImportStatement(
@@ -6218,6 +6361,7 @@ declare class HarmonyImportDependency extends ModuleDependency {
6218
6361
  };
6219
6362
  static NO_EXPORTS_REFERENCED: string[][];
6220
6363
  static EXPORTS_OBJECT_REFERENCED: string[][];
6364
+ static isLowPriorityDependency(dependency: Dependency): boolean;
6221
6365
  static TRANSITIVE: typeof TRANSITIVE;
6222
6366
  }
6223
6367
  declare class HarmonyImportDependencyTemplate extends DependencyTemplate {
@@ -6234,7 +6378,14 @@ declare interface HarmonySettings {
6234
6378
  name: string;
6235
6379
  await: boolean;
6236
6380
  attributes?: ImportAttributes;
6237
- defer?: boolean;
6381
+ phase: ImportPhaseType;
6382
+ }
6383
+ declare abstract class HarmonyStarExportsList {
6384
+ dependencies: HarmonyExportImportedSpecifierDependency[];
6385
+ push(dep: HarmonyExportImportedSpecifierDependency): void;
6386
+ slice(): HarmonyExportImportedSpecifierDependency[];
6387
+ serialize(__0: ObjectSerializerContext): void;
6388
+ deserialize(__0: ObjectDeserializerContext): void;
6238
6389
  }
6239
6390
  declare class Hash {
6240
6391
  constructor();
@@ -6247,7 +6398,7 @@ declare class Hash {
6247
6398
  /**
6248
6399
  * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
6249
6400
  */
6250
- update(data: string, inputEncoding: HashDigest): Hash;
6401
+ update(data: string, inputEncoding: string): Hash;
6251
6402
 
6252
6403
  /**
6253
6404
  * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
@@ -6257,21 +6408,8 @@ declare class Hash {
6257
6408
  /**
6258
6409
  * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
6259
6410
  */
6260
- digest(encoding: HashDigest): string;
6411
+ digest(encoding: string): string;
6261
6412
  }
6262
- type HashDigest =
6263
- | "base64"
6264
- | "base64url"
6265
- | "hex"
6266
- | "binary"
6267
- | "utf8"
6268
- | "utf-8"
6269
- | "utf16le"
6270
- | "utf-16le"
6271
- | "latin1"
6272
- | "ascii"
6273
- | "ucs2"
6274
- | "ucs-2";
6275
6413
  type HashFunction = string | typeof Hash;
6276
6414
  declare interface HashLike {
6277
6415
  /**
@@ -6308,18 +6446,18 @@ declare interface HashedModuleIdsPluginOptions {
6308
6446
  * The encoding to use when generating the hash, defaults to 'base64'. All encodings from Node.JS' hash.digest are supported.
6309
6447
  */
6310
6448
  hashDigest?:
6311
- | "base64"
6312
- | "base64url"
6313
- | "hex"
6314
- | "binary"
6449
+ | "ascii"
6315
6450
  | "utf8"
6316
6451
  | "utf-8"
6317
6452
  | "utf16le"
6318
6453
  | "utf-16le"
6319
- | "latin1"
6320
- | "ascii"
6321
6454
  | "ucs2"
6322
- | "ucs-2";
6455
+ | "ucs-2"
6456
+ | "base64"
6457
+ | "base64url"
6458
+ | "latin1"
6459
+ | "binary"
6460
+ | "hex";
6323
6461
 
6324
6462
  /**
6325
6463
  * The prefix length of the hash digest to use, defaults to 4.
@@ -6394,9 +6532,6 @@ declare class HttpUriPlugin {
6394
6532
  */
6395
6533
  apply(compiler: Compiler): void;
6396
6534
  }
6397
- type HttpsServerOptions = SecureContextOptions &
6398
- TlsOptions &
6399
- ServerOptions<typeof IncomingMessage>;
6400
6535
  type IBigIntStats = IStatsBase<bigint> & {
6401
6536
  atimeNs: bigint;
6402
6537
  mtimeNs: bigint;
@@ -6518,6 +6653,7 @@ declare interface ImportModuleOptions {
6518
6653
  */
6519
6654
  baseUri?: string;
6520
6655
  }
6656
+ type ImportPhaseType = 0 | 1 | 2;
6521
6657
  declare interface ImportSettings {
6522
6658
  references: string[][];
6523
6659
  expression: ImportExpressionJavascriptParser;
@@ -6661,18 +6797,18 @@ declare interface IntermediateFileSystemExtras {
6661
6797
  createWriteStream: (
6662
6798
  pathLike: PathLikeFs,
6663
6799
  result?:
6664
- | "base64"
6665
- | "base64url"
6666
- | "hex"
6667
- | "binary"
6800
+ | "ascii"
6668
6801
  | "utf8"
6669
6802
  | "utf-8"
6670
6803
  | "utf16le"
6671
6804
  | "utf-16le"
6672
- | "latin1"
6673
- | "ascii"
6674
6805
  | "ucs2"
6675
6806
  | "ucs-2"
6807
+ | "base64"
6808
+ | "base64url"
6809
+ | "latin1"
6810
+ | "binary"
6811
+ | "hex"
6676
6812
  | WriteStreamOptions
6677
6813
  ) => NodeJS.WritableStream;
6678
6814
  open: Open;
@@ -6709,19 +6845,14 @@ declare abstract class ItemCacheFacade {
6709
6845
  providePromise<T>(computer: () => T | Promise<T>): Promise<T>;
6710
6846
  }
6711
6847
  declare interface IteratorObject<T, TReturn = unknown, TNext = unknown>
6712
- extends Iterator<T, TReturn, TNext>,
6713
- Disposable {
6848
+ extends Iterator<T, TReturn, TNext>, Disposable {
6714
6849
  [Symbol.iterator](): IteratorObject<T, TReturn, TNext>;
6715
6850
  [Symbol.dispose](): void;
6716
6851
  }
6717
6852
  declare abstract class JavascriptGenerator extends Generator {
6718
- generateError(
6719
- error: Error,
6720
- module: NormalModule,
6721
- generateContext: GenerateContext
6722
- ): null | Source;
6723
- sourceModule(
6853
+ sourceDependency(
6724
6854
  module: Module,
6855
+ dependency: Dependency,
6725
6856
  initFragments: InitFragment<GenerateContext>[],
6726
6857
  source: ReplaceSource,
6727
6858
  generateContext: GenerateContext
@@ -6733,13 +6864,17 @@ declare abstract class JavascriptGenerator extends Generator {
6733
6864
  source: ReplaceSource,
6734
6865
  generateContext: GenerateContext
6735
6866
  ): void;
6736
- sourceDependency(
6867
+ sourceModule(
6737
6868
  module: Module,
6738
- dependency: Dependency,
6739
6869
  initFragments: InitFragment<GenerateContext>[],
6740
6870
  source: ReplaceSource,
6741
6871
  generateContext: GenerateContext
6742
6872
  ): void;
6873
+ generateError(
6874
+ error: Error,
6875
+ module: NormalModule,
6876
+ generateContext: GenerateContext
6877
+ ): null | Source;
6743
6878
  }
6744
6879
  declare class JavascriptModulesPlugin {
6745
6880
  constructor(options?: object);
@@ -6776,15 +6911,6 @@ declare class JavascriptModulesPlugin {
6776
6911
  renderContext: RenderBootstrapContext,
6777
6912
  hooks: CompilationHooksJavascriptModulesPlugin
6778
6913
  ): string;
6779
- getRenamedInlineModule(
6780
- allModules: Module[],
6781
- renderContext: MainRenderContext,
6782
- inlinedModules: Set<Module>,
6783
- chunkRenderContext: ChunkRenderContextJavascriptModulesPlugin,
6784
- hooks: CompilationHooksJavascriptModulesPlugin,
6785
- allStrict: undefined | boolean,
6786
- hasChunkModules: boolean
6787
- ): false | Map<Module, Source>;
6788
6914
  static getCompilationHooks(
6789
6915
  compilation: Compilation
6790
6916
  ): CompilationHooksJavascriptModulesPlugin;
@@ -6795,7 +6921,10 @@ declare class JavascriptModulesPlugin {
6795
6921
  static chunkHasJs: (chunk: Chunk, chunkGraph: ChunkGraph) => boolean;
6796
6922
  }
6797
6923
  declare class JavascriptParser extends ParserClass {
6798
- constructor(sourceType?: "module" | "auto" | "script");
6924
+ constructor(
6925
+ sourceType?: "module" | "auto" | "script",
6926
+ options?: { parse?: (code: string, options: ParseOptions) => ParseResult }
6927
+ );
6799
6928
  hooks: Readonly<{
6800
6929
  evaluateTypeof: HookMap<
6801
6930
  SyncBailHook<
@@ -7225,15 +7354,16 @@ declare class JavascriptParser extends ParserClass {
7225
7354
  [LogicalExpression],
7226
7355
  boolean | void
7227
7356
  >;
7228
- program: SyncBailHook<[Program, CommentImport[]], boolean | void>;
7357
+ program: SyncBailHook<[Program, CommentJavascriptParser[]], boolean | void>;
7229
7358
  terminate: SyncBailHook<[ReturnStatement | ThrowStatement], boolean | void>;
7230
- finish: SyncBailHook<[Program, CommentImport[]], boolean | void>;
7359
+ finish: SyncBailHook<[Program, CommentJavascriptParser[]], boolean | void>;
7231
7360
  unusedStatement: SyncBailHook<[Statement], boolean | void>;
7232
7361
  }>;
7233
7362
  sourceType: "module" | "auto" | "script";
7363
+ options: { parse?: (code: string, options: ParseOptions) => ParseResult };
7234
7364
  scope: ScopeInfo;
7235
- state: ParserState;
7236
- comments?: CommentImport[];
7365
+ state: JavascriptParserState;
7366
+ comments?: CommentJavascriptParser[];
7237
7367
  semicolons?: Set<number>;
7238
7368
  statementPath?: StatementPathItem[];
7239
7369
  prevStatement?:
@@ -8057,7 +8187,7 @@ declare class JavascriptParser extends ParserClass {
8057
8187
  | MaybeNamedClassDeclaration,
8058
8188
  commentsStartPos: number
8059
8189
  ): boolean;
8060
- getComments(range: [number, number]): CommentImport[];
8190
+ getComments(range: [number, number]): CommentJavascriptParser[];
8061
8191
  isAsiPosition(pos: number): boolean;
8062
8192
  setAsiPosition(pos: number): void;
8063
8193
  unsetAsiPosition(pos: number): void;
@@ -8093,7 +8223,7 @@ declare class JavascriptParser extends ParserClass {
8093
8223
  evaluatedVariable(tagInfo: TagInfo): VariableInfo;
8094
8224
  parseCommentOptions(range: [number, number]): {
8095
8225
  options: null | Record<string, any>;
8096
- errors: null | (Error & { comment: CommentImport })[];
8226
+ errors: null | (Error & { comment: CommentJavascriptParser })[];
8097
8227
  };
8098
8228
  extractMemberExpressionChain(
8099
8229
  expression:
@@ -8347,6 +8477,11 @@ declare interface JavascriptParserOptions {
8347
8477
  */
8348
8478
  overrideStrict?: "strict" | "non-strict";
8349
8479
 
8480
+ /**
8481
+ * Function to parser source code.
8482
+ */
8483
+ parse?: (code: string, options: ParseOptions) => ParseResult;
8484
+
8350
8485
  /**
8351
8486
  * Specifies the behavior of invalid export names in "export ... from ...". This might be useful to disable during the migration from "export ... from ..." to "export type ... from ..." when reexporting types in TypeScript.
8352
8487
  */
@@ -8432,6 +8567,9 @@ declare interface JavascriptParserOptions {
8432
8567
  */
8433
8568
  wrappedContextRegExp?: RegExp;
8434
8569
  }
8570
+ type JavascriptParserState = ParserStateBase &
8571
+ Record<string, any> &
8572
+ KnownJavascriptParserState;
8435
8573
  declare abstract class JsonData {
8436
8574
  get():
8437
8575
  | undefined
@@ -8467,6 +8605,11 @@ declare interface JsonModulesPluginParserOptions {
8467
8605
  */
8468
8606
  exportsDepth?: number;
8469
8607
 
8608
+ /**
8609
+ * Allow named exports for json of object type
8610
+ */
8611
+ namedExports?: boolean;
8612
+
8470
8613
  /**
8471
8614
  * Function that executes for a module source string and should return json-compatible data.
8472
8615
  */
@@ -8505,6 +8648,11 @@ declare interface JsonParserOptions {
8505
8648
  */
8506
8649
  exportsDepth?: number;
8507
8650
 
8651
+ /**
8652
+ * Allow named exports for json of object type.
8653
+ */
8654
+ namedExports?: boolean;
8655
+
8508
8656
  /**
8509
8657
  * Function to parser content and return JSON.
8510
8658
  */
@@ -8623,6 +8771,11 @@ declare interface KnownAssetInfo {
8623
8771
  */
8624
8772
  javascriptModule?: boolean;
8625
8773
 
8774
+ /**
8775
+ * true, when file is a manifest
8776
+ */
8777
+ manifest?: boolean;
8778
+
8626
8779
  /**
8627
8780
  * object of pointers to other assets, keyed by type of relation (only points from parent to child)
8628
8781
  */
@@ -8750,6 +8903,7 @@ declare interface KnownBuildInfo {
8750
8903
  }
8751
8904
  declare interface KnownBuildMeta {
8752
8905
  exportsType?: "namespace" | "dynamic" | "default" | "flagged";
8906
+ exportType?: "link" | "text" | "css-style-sheet";
8753
8907
  defaultObject?: false | "redirect" | "redirect-warn";
8754
8908
  strictHarmonyModule?: boolean;
8755
8909
  treatAsCommonJs?: boolean;
@@ -8757,8 +8911,8 @@ declare interface KnownBuildMeta {
8757
8911
  sideEffectFree?: boolean;
8758
8912
  isCSSModule?: boolean;
8759
8913
  jsIncompatibleExports?: Record<string, string>;
8760
- exportsFinalName?: Record<string, string>;
8761
- factoryExportsBinding?: string;
8914
+ exportsFinalNameByRuntime?: Map<RuntimeSpec, Record<string, string>>;
8915
+ exportsSourceByRuntime?: Map<RuntimeSpec, string>;
8762
8916
  }
8763
8917
  declare interface KnownCreateStatsOptionsContext {
8764
8918
  forToString?: boolean;
@@ -8795,6 +8949,12 @@ declare interface KnownHooks {
8795
8949
  */
8796
8950
  result: AsyncSeriesHook<[ResolveRequest, ResolveContext]>;
8797
8951
  }
8952
+ declare interface KnownJavascriptParserState {
8953
+ harmonyNamedExports?: Set<string>;
8954
+ harmonyStarExports?: HarmonyStarExportsList;
8955
+ lastHarmonyImportOrder?: number;
8956
+ localModules?: LocalModule[];
8957
+ }
8798
8958
  declare interface KnownMeta {
8799
8959
  importVarMap?: Map<Module, string>;
8800
8960
  deferredImportVarMap?: Map<Module, string>;
@@ -9217,8 +9377,8 @@ declare interface LazyCompilationDefaultBackendOptions {
9217
9377
  * Specifies how to create the server handling the EventSource requests.
9218
9378
  */
9219
9379
  server?:
9220
- | ServerOptions<typeof IncomingMessage>
9221
- | HttpsServerOptions
9380
+ | ServerOptionsImportHttps<typeof IncomingMessage>
9381
+ | ServerOptionsImportHttp<typeof IncomingMessage>
9222
9382
  | (() => ServerLazyCompilationBackend);
9223
9383
  }
9224
9384
 
@@ -9759,6 +9919,15 @@ declare class LoaderTargetPlugin {
9759
9919
  */
9760
9920
  apply(compiler: Compiler): void;
9761
9921
  }
9922
+ declare abstract class LocalModule {
9923
+ name: string;
9924
+ idx: number;
9925
+ used: boolean;
9926
+ flagUsed(): void;
9927
+ variableName(): string;
9928
+ serialize(context: ObjectSerializerContext): void;
9929
+ deserialize(context: ObjectDeserializerContext): void;
9930
+ }
9762
9931
  declare interface LogEntry {
9763
9932
  type: string;
9764
9933
  args?: any[];
@@ -9927,6 +10096,94 @@ declare interface MakeDirectoryOptions {
9927
10096
  recursive?: boolean;
9928
10097
  mode?: string | number;
9929
10098
  }
10099
+
10100
+ /**
10101
+ * Describes a manifest entrypoint.
10102
+ */
10103
+ declare interface ManifestEntrypoint {
10104
+ /**
10105
+ * Contains the names of entrypoints.
10106
+ */
10107
+ imports: string[];
10108
+
10109
+ /**
10110
+ * Contains the names of parent entrypoints.
10111
+ */
10112
+ parents?: string[];
10113
+ }
10114
+
10115
+ /**
10116
+ * Describes a manifest asset that links the emitted path to the producing asset.
10117
+ */
10118
+ declare interface ManifestItem {
10119
+ /**
10120
+ * The path absolute URL (this indicates that the path is absolute from the server's root directory) to file.
10121
+ */
10122
+ file: string;
10123
+
10124
+ /**
10125
+ * The source path relative to the context.
10126
+ */
10127
+ src?: string;
10128
+ }
10129
+
10130
+ /**
10131
+ * The manifest object.
10132
+ */
10133
+ declare interface ManifestObject {
10134
+ [index: string]: any;
10135
+
10136
+ /**
10137
+ * Contains the names of assets.
10138
+ */
10139
+ assets: Record<string, ManifestItem>;
10140
+
10141
+ /**
10142
+ * Contains the names of entrypoints.
10143
+ */
10144
+ entrypoints: Record<string, ManifestEntrypoint>;
10145
+ }
10146
+ declare class ManifestPlugin {
10147
+ constructor(options: ManifestPluginOptions);
10148
+ options: ManifestPluginOptions &
10149
+ Required<Omit<ManifestPluginOptions, "filter" | "generate">>;
10150
+
10151
+ /**
10152
+ * Apply the plugin
10153
+ */
10154
+ apply(compiler: Compiler): void;
10155
+ }
10156
+ declare interface ManifestPluginOptions {
10157
+ /**
10158
+ * Enables/disables generation of the entrypoints manifest section.
10159
+ */
10160
+ entrypoints?: boolean;
10161
+
10162
+ /**
10163
+ * Specifies the filename of the output file on disk. By default the plugin will emit `manifest.json` inside the 'output.path' directory.
10164
+ */
10165
+ filename?: string;
10166
+
10167
+ /**
10168
+ * Allows filtering the files which make up the manifest.
10169
+ */
10170
+ filter?: (item: ManifestItem) => boolean;
10171
+
10172
+ /**
10173
+ * A function that receives the manifest object, modifies it, and returns the modified manifest.
10174
+ */
10175
+ generate?: (manifest: ManifestObject) => ManifestObject;
10176
+
10177
+ /**
10178
+ * Specifies a path prefix for all keys in the manifest.
10179
+ */
10180
+ prefix?: string;
10181
+
10182
+ /**
10183
+ * A function that receives the manifest object and returns the manifest string.
10184
+ */
10185
+ serialize?: (manifest: ManifestObject) => string;
10186
+ }
9930
10187
  declare interface MapOptions {
9931
10188
  /**
9932
10189
  * need columns?
@@ -10261,13 +10518,15 @@ declare class ModuleConcatenationPlugin {
10261
10518
  apply(compiler: Compiler): void;
10262
10519
  }
10263
10520
  declare class ModuleDependency extends Dependency {
10264
- constructor(request: string);
10521
+ constructor(request: string, sourceOrder?: number);
10265
10522
  request: string;
10266
10523
  userRequest: string;
10524
+ sourceOrder?: number;
10267
10525
  range?: [number, number];
10268
10526
  static Template: typeof DependencyTemplate;
10269
10527
  static NO_EXPORTS_REFERENCED: string[][];
10270
10528
  static EXPORTS_OBJECT_REFERENCED: string[][];
10529
+ static isLowPriorityDependency(dependency: Dependency): boolean;
10271
10530
  static TRANSITIVE: typeof TRANSITIVE;
10272
10531
  }
10273
10532
  declare class ModuleExternalInitFragment extends InitFragment<GenerateContext> {
@@ -10303,6 +10562,22 @@ declare class ModuleFactory {
10303
10562
  callback: (err?: null | Error, result?: ModuleFactoryResult) => void
10304
10563
  ): void;
10305
10564
  }
10565
+ declare interface ModuleFactoryCacheEntry {
10566
+ /**
10567
+ * - The undo path to the CSS file
10568
+ */
10569
+ undoPath: string;
10570
+
10571
+ /**
10572
+ * - The inheritance chain
10573
+ */
10574
+ inheritance: [CssLayer, Supports, Media][];
10575
+
10576
+ /**
10577
+ * - The cached source
10578
+ */
10579
+ source: CachedSource;
10580
+ }
10306
10581
  declare interface ModuleFactoryCreateData {
10307
10582
  contextInfo: ModuleFactoryCreateDataContextInfo;
10308
10583
  resolveOptions?: ResolveOptions;
@@ -10389,7 +10664,10 @@ declare interface ModuleFederationPluginOptions {
10389
10664
  | "promise"
10390
10665
  | "module-import"
10391
10666
  | "script"
10392
- | "node-commonjs";
10667
+ | "node-commonjs"
10668
+ | "asset"
10669
+ | "css-import"
10670
+ | "css-url";
10393
10671
 
10394
10672
  /**
10395
10673
  * Container locations and request scopes from which modules should be resolved and loaded at runtime. When provided, property name is used as request scope, otherwise request scope is automatically inferred from container location.
@@ -10498,6 +10776,7 @@ declare class ModuleGraph {
10498
10776
  connection?: ModuleGraphConnection,
10499
10777
  parentModule?: Module
10500
10778
  ): void;
10779
+ finishUpdateParent(): void;
10501
10780
  removeConnection(dependency: Dependency): void;
10502
10781
  addExplanation(dependency: Dependency, explanation: string): void;
10503
10782
  cloneModuleAttributes(sourceModule: Module, targetModule: Module): void;
@@ -10915,6 +11194,11 @@ declare interface ModuleRenderContext {
10915
11194
  * the inlined entry module is wrapped in an IIFE, existing only when `factory` is set to false
10916
11195
  */
10917
11196
  inlinedInIIFE?: boolean;
11197
+
11198
+ /**
11199
+ * render module in object container
11200
+ */
11201
+ renderInObject?: boolean;
10918
11202
  }
10919
11203
  declare interface ModuleResult {
10920
11204
  client: string;
@@ -10933,24 +11217,24 @@ declare interface ModuleSettings {
10933
11217
  type?: string;
10934
11218
 
10935
11219
  /**
10936
- * Enable/Disable extracting source map.
11220
+ * Options for parsing.
10937
11221
  */
10938
- extractSourceMap?: boolean;
11222
+ parser?: { [index: string]: any };
10939
11223
 
10940
11224
  /**
10941
- * Options for the resolver.
11225
+ * The options for the module generator.
10942
11226
  */
10943
- resolve?: ResolveOptions;
11227
+ generator?: { [index: string]: any };
10944
11228
 
10945
11229
  /**
10946
- * Options for parsing.
11230
+ * Enable/Disable extracting source map.
10947
11231
  */
10948
- parser?: { [index: string]: any };
11232
+ extractSourceMap?: boolean;
10949
11233
 
10950
11234
  /**
10951
- * The options for the module generator.
11235
+ * Options for the resolver.
10952
11236
  */
10953
- generator?: { [index: string]: any };
11237
+ resolve?: ResolveOptions;
10954
11238
 
10955
11239
  /**
10956
11240
  * Flags a module as with or without side effects.
@@ -11077,8 +11361,7 @@ declare interface MultiCompilerOptions {
11077
11361
  */
11078
11362
  parallelism?: number;
11079
11363
  }
11080
- type MultiConfiguration = ReadonlyArray<WebpackOptionsNormalized> &
11081
- MultiCompilerOptions;
11364
+ type MultiConfiguration = ReadonlyArray<Configuration> & MultiCompilerOptions;
11082
11365
  declare abstract class MultiStats {
11083
11366
  stats: Stats[];
11084
11367
  get hash(): string;
@@ -11208,7 +11491,8 @@ declare class NodeSourcePlugin {
11208
11491
  apply(compiler: Compiler): void;
11209
11492
  }
11210
11493
  declare class NodeTargetPlugin {
11211
- constructor();
11494
+ constructor(type?: ExternalsType);
11495
+ type: ExternalsType;
11212
11496
 
11213
11497
  /**
11214
11498
  * Apply the plugin
@@ -11244,7 +11528,7 @@ declare class NormalModule extends Module {
11244
11528
  resourceResolveData?: ResourceSchemeData & Partial<ResolveRequest>;
11245
11529
  matchResource?: string;
11246
11530
  loaders: LoaderItem[];
11247
- extractSourceMap?: boolean;
11531
+ extractSourceMap: boolean;
11248
11532
  error: null | WebpackError;
11249
11533
  getResource(): null | string;
11250
11534
 
@@ -11397,7 +11681,7 @@ declare interface NormalModuleCreateData {
11397
11681
  /**
11398
11682
  * enable/disable extracting source map
11399
11683
  */
11400
- extractSourceMap?: boolean;
11684
+ extractSourceMap: boolean;
11401
11685
  }
11402
11686
  declare abstract class NormalModuleFactory extends ModuleFactory {
11403
11687
  hooks: Readonly<{
@@ -11466,14 +11750,14 @@ declare abstract class NormalModuleFactory extends ModuleFactory {
11466
11750
  SyncBailHook<[EmptyParserOptions], WebAssemblyParser>
11467
11751
  > &
11468
11752
  Record<"css", SyncBailHook<[CssParserOptions], CssParser>> &
11469
- Record<"css/auto", SyncBailHook<[CssAutoParserOptions], CssParser>> &
11753
+ Record<"css/auto", SyncBailHook<[CssModuleParserOptions], CssParser>> &
11470
11754
  Record<
11471
11755
  "css/module",
11472
11756
  SyncBailHook<[CssModuleParserOptions], CssParser>
11473
11757
  > &
11474
11758
  Record<
11475
11759
  "css/global",
11476
- SyncBailHook<[CssGlobalParserOptions], CssParser>
11760
+ SyncBailHook<[CssModuleParserOptions], CssParser>
11477
11761
  > &
11478
11762
  Record<string, SyncBailHook<[ParserOptions], ParserClass>>
11479
11763
  >;
@@ -11519,7 +11803,7 @@ declare abstract class NormalModuleFactory extends ModuleFactory {
11519
11803
  Record<"css", SyncBailHook<[CssParser, CssParserOptions], void>> &
11520
11804
  Record<
11521
11805
  "css/auto",
11522
- SyncBailHook<[CssParser, CssAutoParserOptions], void>
11806
+ SyncBailHook<[CssParser, CssModuleParserOptions], void>
11523
11807
  > &
11524
11808
  Record<
11525
11809
  "css/module",
@@ -11527,7 +11811,7 @@ declare abstract class NormalModuleFactory extends ModuleFactory {
11527
11811
  > &
11528
11812
  Record<
11529
11813
  "css/global",
11530
- SyncBailHook<[CssParser, CssGlobalParserOptions], void>
11814
+ SyncBailHook<[CssParser, CssModuleParserOptions], void>
11531
11815
  > &
11532
11816
  Record<string, SyncBailHook<[ParserClass, ParserOptions], void>>
11533
11817
  >;
@@ -11573,7 +11857,7 @@ declare abstract class NormalModuleFactory extends ModuleFactory {
11573
11857
  Record<"css", SyncBailHook<[CssGeneratorOptions], CssGenerator>> &
11574
11858
  Record<
11575
11859
  "css/auto",
11576
- SyncBailHook<[CssAutoGeneratorOptions], CssGenerator>
11860
+ SyncBailHook<[CssModuleGeneratorOptions], CssGenerator>
11577
11861
  > &
11578
11862
  Record<
11579
11863
  "css/module",
@@ -11581,7 +11865,7 @@ declare abstract class NormalModuleFactory extends ModuleFactory {
11581
11865
  > &
11582
11866
  Record<
11583
11867
  "css/global",
11584
- SyncBailHook<[CssGlobalGeneratorOptions], CssGenerator>
11868
+ SyncBailHook<[CssModuleGeneratorOptions], CssGenerator>
11585
11869
  > &
11586
11870
  Record<string, SyncBailHook<[GeneratorOptions], Generator>>
11587
11871
  >;
@@ -11633,7 +11917,7 @@ declare abstract class NormalModuleFactory extends ModuleFactory {
11633
11917
  Record<"css", SyncBailHook<[CssGenerator, CssGeneratorOptions], void>> &
11634
11918
  Record<
11635
11919
  "css/auto",
11636
- SyncBailHook<[CssGenerator, CssAutoGeneratorOptions], void>
11920
+ SyncBailHook<[CssGenerator, CssModuleGeneratorOptions], void>
11637
11921
  > &
11638
11922
  Record<
11639
11923
  "css/module",
@@ -11641,7 +11925,7 @@ declare abstract class NormalModuleFactory extends ModuleFactory {
11641
11925
  > &
11642
11926
  Record<
11643
11927
  "css/global",
11644
- SyncBailHook<[CssGenerator, CssGlobalGeneratorOptions], void>
11928
+ SyncBailHook<[CssGenerator, CssModuleGeneratorOptions], void>
11645
11929
  > &
11646
11930
  Record<string, SyncBailHook<[Generator, GeneratorOptions], void>>
11647
11931
  >;
@@ -11741,7 +12025,7 @@ declare interface NormalModuleLoaderContext<OptionsType> {
11741
12025
  mode: "none" | "development" | "production";
11742
12026
  webpack?: boolean;
11743
12027
  hashFunction: HashFunction;
11744
- hashDigest: HashDigest;
12028
+ hashDigest: string;
11745
12029
  hashDigestLength: number;
11746
12030
  hashSalt?: string;
11747
12031
  _module?: NormalModule;
@@ -11764,6 +12048,13 @@ declare class NormalModuleReplacementPlugin {
11764
12048
  */
11765
12049
  apply(compiler: Compiler): void;
11766
12050
  }
12051
+ declare abstract class NormalReexportItem {
12052
+ name: string;
12053
+ ids: string[];
12054
+ exportInfo: ExportInfo;
12055
+ checked: boolean;
12056
+ hidden: boolean;
12057
+ }
11767
12058
  type NormalizedStatsOptions = KnownNormalizedStatsOptions &
11768
12059
  Omit<
11769
12060
  StatsOptions,
@@ -11812,6 +12103,7 @@ declare class NullDependency extends Dependency {
11812
12103
  static Template: typeof NullDependencyTemplate;
11813
12104
  static NO_EXPORTS_REFERENCED: string[][];
11814
12105
  static EXPORTS_OBJECT_REFERENCED: string[][];
12106
+ static isLowPriorityDependency(dependency: Dependency): boolean;
11815
12107
  static TRANSITIVE: typeof TRANSITIVE;
11816
12108
  }
11817
12109
  declare class NullDependencyTemplate extends DependencyTemplate {
@@ -11827,18 +12119,18 @@ declare interface ObjectDeserializerContext {
11827
12119
  declare interface ObjectEncodingOptions {
11828
12120
  encoding?:
11829
12121
  | null
11830
- | "base64"
11831
- | "base64url"
11832
- | "hex"
11833
- | "binary"
12122
+ | "ascii"
11834
12123
  | "utf8"
11835
12124
  | "utf-8"
11836
12125
  | "utf16le"
11837
12126
  | "utf-16le"
11838
- | "latin1"
11839
- | "ascii"
11840
12127
  | "ucs2"
11841
- | "ucs-2";
12128
+ | "ucs-2"
12129
+ | "base64"
12130
+ | "base64url"
12131
+ | "latin1"
12132
+ | "binary"
12133
+ | "hex";
11842
12134
  }
11843
12135
  declare interface ObjectSerializer {
11844
12136
  serialize: (value: any, context: ObjectSerializerContext) => void;
@@ -12741,22 +13033,10 @@ declare interface Output {
12741
13033
  */
12742
13034
  globalObject?: string;
12743
13035
 
12744
- /**
12745
- * Digest types used for the hash.
12746
- */
12747
- hashDigest?:
12748
- | "base64"
12749
- | "base64url"
12750
- | "hex"
12751
- | "binary"
12752
- | "utf8"
12753
- | "utf-8"
12754
- | "utf16le"
12755
- | "utf-16le"
12756
- | "latin1"
12757
- | "ascii"
12758
- | "ucs2"
12759
- | "ucs-2";
13036
+ /**
13037
+ * Digest types used for the hash.
13038
+ */
13039
+ hashDigest?: string;
12760
13040
 
12761
13041
  /**
12762
13042
  * Number of chars which are used for the hash.
@@ -12923,18 +13203,18 @@ declare interface OutputFileSystem {
12923
13203
  createReadStream?: (
12924
13204
  path: PathLikeFs,
12925
13205
  options?:
12926
- | "base64"
12927
- | "base64url"
12928
- | "hex"
12929
- | "binary"
13206
+ | "ascii"
12930
13207
  | "utf8"
12931
13208
  | "utf-8"
12932
13209
  | "utf16le"
12933
13210
  | "utf-16le"
12934
- | "latin1"
12935
- | "ascii"
12936
13211
  | "ucs2"
12937
13212
  | "ucs-2"
13213
+ | "base64"
13214
+ | "base64url"
13215
+ | "latin1"
13216
+ | "binary"
13217
+ | "hex"
12938
13218
  | ReadStreamOptions
12939
13219
  ) => NodeJS.ReadableStream;
12940
13220
  join?: (path1: string, path2: string) => string;
@@ -13071,19 +13351,7 @@ declare interface OutputNormalized {
13071
13351
  /**
13072
13352
  * Digest types used for the hash.
13073
13353
  */
13074
- hashDigest?:
13075
- | "base64"
13076
- | "base64url"
13077
- | "hex"
13078
- | "binary"
13079
- | "utf8"
13080
- | "utf-8"
13081
- | "utf16le"
13082
- | "utf-16le"
13083
- | "latin1"
13084
- | "ascii"
13085
- | "ucs2"
13086
- | "ucs-2";
13354
+ hashDigest?: string;
13087
13355
 
13088
13356
  /**
13089
13357
  * Number of chars which are used for the hash.
@@ -13259,21 +13527,7 @@ type OutputNormalizedWithDefaults = OutputNormalized & {
13259
13527
  path: string;
13260
13528
  pathinfo: NonNullable<undefined | boolean | "verbose">;
13261
13529
  hashFunction: NonNullable<undefined | string | typeof Hash>;
13262
- hashDigest: NonNullable<
13263
- | undefined
13264
- | "base64"
13265
- | "base64url"
13266
- | "hex"
13267
- | "binary"
13268
- | "utf8"
13269
- | "utf-8"
13270
- | "utf16le"
13271
- | "utf-16le"
13272
- | "latin1"
13273
- | "ascii"
13274
- | "ucs2"
13275
- | "ucs-2"
13276
- >;
13530
+ hashDigest: string;
13277
13531
  hashDigestLength: number;
13278
13532
  chunkLoadTimeout: number;
13279
13533
  chunkLoading: NonNullable<undefined | string | false>;
@@ -13292,6 +13546,48 @@ type OutputNormalizedWithDefaults = OutputNormalized & {
13292
13546
  declare interface ParameterizedComparator<TArg extends object, T> {
13293
13547
  (tArg: TArg): Comparator<T>;
13294
13548
  }
13549
+ declare interface ParseOptions {
13550
+ sourceType: "module" | "script";
13551
+ ecmaVersion?:
13552
+ | 3
13553
+ | 5
13554
+ | 6
13555
+ | 7
13556
+ | 8
13557
+ | 9
13558
+ | 10
13559
+ | 11
13560
+ | 12
13561
+ | 13
13562
+ | 14
13563
+ | 15
13564
+ | 16
13565
+ | 17
13566
+ | 2015
13567
+ | 2016
13568
+ | 2017
13569
+ | 2018
13570
+ | 2019
13571
+ | 2020
13572
+ | 2021
13573
+ | 2022
13574
+ | 2023
13575
+ | 2024
13576
+ | 2025
13577
+ | 2026
13578
+ | "latest";
13579
+ locations?: boolean;
13580
+ comments?: boolean;
13581
+ ranges?: boolean;
13582
+ semicolons?: boolean;
13583
+ allowHashBang?: boolean;
13584
+ allowReturnOutsideFunction?: boolean;
13585
+ }
13586
+ declare interface ParseResult {
13587
+ ast: Program;
13588
+ comments: CommentJavascriptParser[];
13589
+ semicolons: Set<number>;
13590
+ }
13295
13591
  declare interface ParsedIdentifier {
13296
13592
  /**
13297
13593
  * request
@@ -13376,14 +13672,14 @@ declare interface ParserOptionsByModuleTypeKnown {
13376
13672
  css?: CssParserOptions;
13377
13673
 
13378
13674
  /**
13379
- * Parser options for css/auto modules.
13675
+ * Parser options for css/module modules.
13380
13676
  */
13381
- "css/auto"?: CssAutoParserOptions;
13677
+ "css/auto"?: CssModuleParserOptions;
13382
13678
 
13383
13679
  /**
13384
- * Parser options for css/global modules.
13680
+ * Parser options for css/module modules.
13385
13681
  */
13386
- "css/global"?: CssGlobalParserOptions;
13682
+ "css/global"?: CssModuleParserOptions;
13387
13683
 
13388
13684
  /**
13389
13685
  * Parser options for css/module modules.
@@ -13422,7 +13718,7 @@ declare interface ParserOptionsByModuleTypeKnown {
13422
13718
  declare interface ParserOptionsByModuleTypeUnknown {
13423
13719
  [index: string]: { [index: string]: any };
13424
13720
  }
13425
- type ParserState = Record<string, any> & ParserStateBase;
13721
+ type ParserState = ParserStateBase & Record<string, any>;
13426
13722
  declare interface ParserStateBase {
13427
13723
  source: string | Buffer;
13428
13724
  current: NormalModule;
@@ -13445,6 +13741,7 @@ declare interface PathData {
13445
13741
  contentHashWithLength?: (length: number) => string;
13446
13742
  noChunkHash?: boolean;
13447
13743
  url?: string;
13744
+ prepareId?: (id: string | number) => string | number;
13448
13745
  }
13449
13746
  type PathLikeFs = string | Buffer | URL;
13450
13747
  type PathLikeTypes = string | URL_url | Buffer;
@@ -13653,7 +13950,7 @@ declare class ProgressPlugin {
13653
13950
  showDependencies?: boolean;
13654
13951
  showActiveModules?: boolean;
13655
13952
  percentBy?: null | "modules" | "entries" | "dependencies";
13656
- apply(compiler: Compiler | MultiCompiler): void;
13953
+ apply(compiler: MultiCompiler | Compiler): void;
13657
13954
  static getReporter(
13658
13955
  compiler: Compiler
13659
13956
  ): undefined | ((p: number, ...args: string[]) => void);
@@ -13965,19 +14262,19 @@ declare interface ReadFileFs {
13965
14262
  (
13966
14263
  path: PathOrFileDescriptorFs,
13967
14264
  options:
13968
- | "base64"
13969
- | "base64url"
13970
- | "hex"
13971
- | "binary"
14265
+ | ({ encoding: BufferEncoding; flag?: string } & Abortable)
14266
+ | "ascii"
13972
14267
  | "utf8"
13973
14268
  | "utf-8"
13974
14269
  | "utf16le"
13975
14270
  | "utf-16le"
13976
- | "latin1"
13977
- | "ascii"
13978
14271
  | "ucs2"
13979
14272
  | "ucs-2"
13980
- | ({ encoding: BufferEncoding; flag?: string } & Abortable),
14273
+ | "base64"
14274
+ | "base64url"
14275
+ | "latin1"
14276
+ | "binary"
14277
+ | "hex",
13981
14278
  callback: (err: null | NodeJS.ErrnoException, result?: string) => void
13982
14279
  ): void;
13983
14280
  (
@@ -13985,18 +14282,18 @@ declare interface ReadFileFs {
13985
14282
  options:
13986
14283
  | undefined
13987
14284
  | null
13988
- | "base64"
13989
- | "base64url"
13990
- | "hex"
13991
- | "binary"
14285
+ | "ascii"
13992
14286
  | "utf8"
13993
14287
  | "utf-8"
13994
14288
  | "utf16le"
13995
14289
  | "utf-16le"
13996
- | "latin1"
13997
- | "ascii"
13998
14290
  | "ucs2"
13999
14291
  | "ucs-2"
14292
+ | "base64"
14293
+ | "base64url"
14294
+ | "latin1"
14295
+ | "binary"
14296
+ | "hex"
14000
14297
  | (ObjectEncodingOptions & { flag?: string } & Abortable),
14001
14298
  callback: (
14002
14299
  err: null | NodeJS.ErrnoException,
@@ -14016,36 +14313,36 @@ declare interface ReadFileSync {
14016
14313
  (
14017
14314
  path: PathOrFileDescriptorFs,
14018
14315
  options:
14019
- | "base64"
14020
- | "base64url"
14021
- | "hex"
14022
- | "binary"
14316
+ | "ascii"
14023
14317
  | "utf8"
14024
14318
  | "utf-8"
14025
14319
  | "utf16le"
14026
14320
  | "utf-16le"
14027
- | "latin1"
14028
- | "ascii"
14029
14321
  | "ucs2"
14030
14322
  | "ucs-2"
14323
+ | "base64"
14324
+ | "base64url"
14325
+ | "latin1"
14326
+ | "binary"
14327
+ | "hex"
14031
14328
  | { encoding: BufferEncoding; flag?: string }
14032
14329
  ): string;
14033
14330
  (
14034
14331
  path: PathOrFileDescriptorFs,
14035
14332
  options?:
14036
14333
  | null
14037
- | "base64"
14038
- | "base64url"
14039
- | "hex"
14040
- | "binary"
14334
+ | "ascii"
14041
14335
  | "utf8"
14042
14336
  | "utf-8"
14043
14337
  | "utf16le"
14044
14338
  | "utf-16le"
14045
- | "latin1"
14046
- | "ascii"
14047
14339
  | "ucs2"
14048
14340
  | "ucs-2"
14341
+ | "base64"
14342
+ | "base64url"
14343
+ | "latin1"
14344
+ | "binary"
14345
+ | "hex"
14049
14346
  | (ObjectEncodingOptions & { flag?: string })
14050
14347
  ): string | Buffer;
14051
14348
  }
@@ -14061,18 +14358,18 @@ declare interface ReadFileTypes {
14061
14358
  (
14062
14359
  path: PathOrFileDescriptorTypes,
14063
14360
  options:
14064
- | "base64"
14065
- | "base64url"
14066
- | "hex"
14067
- | "binary"
14361
+ | "ascii"
14068
14362
  | "utf8"
14069
14363
  | "utf-8"
14070
14364
  | "utf16le"
14071
14365
  | "utf-16le"
14072
- | "latin1"
14073
- | "ascii"
14074
14366
  | "ucs2"
14075
14367
  | "ucs-2"
14368
+ | "base64"
14369
+ | "base64url"
14370
+ | "latin1"
14371
+ | "binary"
14372
+ | "hex"
14076
14373
  | ({ encoding: BufferEncoding; flag?: string } & Abortable),
14077
14374
  callback: (err: null | NodeJS.ErrnoException, result?: string) => void
14078
14375
  ): void;
@@ -14081,18 +14378,18 @@ declare interface ReadFileTypes {
14081
14378
  options:
14082
14379
  | undefined
14083
14380
  | null
14084
- | "base64"
14085
- | "base64url"
14086
- | "hex"
14087
- | "binary"
14381
+ | "ascii"
14088
14382
  | "utf8"
14089
14383
  | "utf-8"
14090
14384
  | "utf16le"
14091
14385
  | "utf-16le"
14092
- | "latin1"
14093
- | "ascii"
14094
14386
  | "ucs2"
14095
14387
  | "ucs-2"
14388
+ | "base64"
14389
+ | "base64url"
14390
+ | "latin1"
14391
+ | "binary"
14392
+ | "hex"
14096
14393
  | (ObjectEncodingOptions & { flag?: string } & Abortable),
14097
14394
  callback: (
14098
14395
  err: null | NodeJS.ErrnoException,
@@ -14114,33 +14411,33 @@ declare interface ReaddirFs {
14114
14411
  options:
14115
14412
  | undefined
14116
14413
  | null
14117
- | "base64"
14118
- | "base64url"
14119
- | "hex"
14120
- | "binary"
14414
+ | "ascii"
14121
14415
  | "utf8"
14122
14416
  | "utf-8"
14123
14417
  | "utf16le"
14124
14418
  | "utf-16le"
14125
- | "latin1"
14126
- | "ascii"
14127
14419
  | "ucs2"
14128
14420
  | "ucs-2"
14421
+ | "base64"
14422
+ | "base64url"
14423
+ | "latin1"
14424
+ | "binary"
14425
+ | "hex"
14129
14426
  | {
14130
14427
  encoding:
14131
14428
  | null
14132
- | "base64"
14133
- | "base64url"
14134
- | "hex"
14135
- | "binary"
14429
+ | "ascii"
14136
14430
  | "utf8"
14137
14431
  | "utf-8"
14138
14432
  | "utf16le"
14139
14433
  | "utf-16le"
14140
- | "latin1"
14141
- | "ascii"
14142
14434
  | "ucs2"
14143
- | "ucs-2";
14435
+ | "ucs-2"
14436
+ | "base64"
14437
+ | "base64url"
14438
+ | "latin1"
14439
+ | "binary"
14440
+ | "hex";
14144
14441
  withFileTypes?: false;
14145
14442
  recursive?: boolean;
14146
14443
  },
@@ -14158,18 +14455,18 @@ declare interface ReaddirFs {
14158
14455
  options:
14159
14456
  | undefined
14160
14457
  | null
14161
- | "base64"
14162
- | "base64url"
14163
- | "hex"
14164
- | "binary"
14458
+ | "ascii"
14165
14459
  | "utf8"
14166
14460
  | "utf-8"
14167
14461
  | "utf16le"
14168
14462
  | "utf-16le"
14169
- | "latin1"
14170
- | "ascii"
14171
14463
  | "ucs2"
14172
14464
  | "ucs-2"
14465
+ | "base64"
14466
+ | "base64url"
14467
+ | "latin1"
14468
+ | "binary"
14469
+ | "hex"
14173
14470
  | (ObjectEncodingOptions & {
14174
14471
  withFileTypes?: false;
14175
14472
  recursive?: boolean;
@@ -14208,33 +14505,33 @@ declare interface ReaddirSync {
14208
14505
  path: PathLikeFs,
14209
14506
  options?:
14210
14507
  | null
14211
- | "base64"
14212
- | "base64url"
14213
- | "hex"
14214
- | "binary"
14508
+ | "ascii"
14215
14509
  | "utf8"
14216
14510
  | "utf-8"
14217
14511
  | "utf16le"
14218
14512
  | "utf-16le"
14219
- | "latin1"
14220
- | "ascii"
14221
14513
  | "ucs2"
14222
14514
  | "ucs-2"
14515
+ | "base64"
14516
+ | "base64url"
14517
+ | "latin1"
14518
+ | "binary"
14519
+ | "hex"
14223
14520
  | {
14224
14521
  encoding:
14225
14522
  | null
14226
- | "base64"
14227
- | "base64url"
14228
- | "hex"
14229
- | "binary"
14523
+ | "ascii"
14230
14524
  | "utf8"
14231
14525
  | "utf-8"
14232
14526
  | "utf16le"
14233
14527
  | "utf-16le"
14234
- | "latin1"
14235
- | "ascii"
14236
14528
  | "ucs2"
14237
- | "ucs-2";
14529
+ | "ucs-2"
14530
+ | "base64"
14531
+ | "base64url"
14532
+ | "latin1"
14533
+ | "binary"
14534
+ | "hex";
14238
14535
  withFileTypes?: false;
14239
14536
  recursive?: boolean;
14240
14537
  }
@@ -14249,18 +14546,18 @@ declare interface ReaddirSync {
14249
14546
  path: PathLikeFs,
14250
14547
  options?:
14251
14548
  | null
14252
- | "base64"
14253
- | "base64url"
14254
- | "hex"
14255
- | "binary"
14549
+ | "ascii"
14256
14550
  | "utf8"
14257
14551
  | "utf-8"
14258
14552
  | "utf16le"
14259
14553
  | "utf-16le"
14260
- | "latin1"
14261
- | "ascii"
14262
14554
  | "ucs2"
14263
14555
  | "ucs-2"
14556
+ | "base64"
14557
+ | "base64url"
14558
+ | "latin1"
14559
+ | "binary"
14560
+ | "hex"
14264
14561
  | (ObjectEncodingOptions & { withFileTypes?: false; recursive?: boolean })
14265
14562
  ): string[] | Buffer[];
14266
14563
  (
@@ -14281,33 +14578,33 @@ declare interface ReaddirTypes {
14281
14578
  options:
14282
14579
  | undefined
14283
14580
  | null
14284
- | "base64"
14285
- | "base64url"
14286
- | "hex"
14287
- | "binary"
14581
+ | "ascii"
14288
14582
  | "utf8"
14289
14583
  | "utf-8"
14290
14584
  | "utf16le"
14291
14585
  | "utf-16le"
14292
- | "latin1"
14293
- | "ascii"
14294
14586
  | "ucs2"
14295
14587
  | "ucs-2"
14588
+ | "base64"
14589
+ | "base64url"
14590
+ | "latin1"
14591
+ | "binary"
14592
+ | "hex"
14296
14593
  | {
14297
14594
  encoding:
14298
14595
  | null
14299
- | "base64"
14300
- | "base64url"
14301
- | "hex"
14302
- | "binary"
14596
+ | "ascii"
14303
14597
  | "utf8"
14304
14598
  | "utf-8"
14305
14599
  | "utf16le"
14306
14600
  | "utf-16le"
14307
- | "latin1"
14308
- | "ascii"
14309
14601
  | "ucs2"
14310
- | "ucs-2";
14602
+ | "ucs-2"
14603
+ | "base64"
14604
+ | "base64url"
14605
+ | "latin1"
14606
+ | "binary"
14607
+ | "hex";
14311
14608
  withFileTypes?: false;
14312
14609
  recursive?: boolean;
14313
14610
  },
@@ -14325,18 +14622,18 @@ declare interface ReaddirTypes {
14325
14622
  options:
14326
14623
  | undefined
14327
14624
  | null
14328
- | "base64"
14329
- | "base64url"
14330
- | "hex"
14331
- | "binary"
14625
+ | "ascii"
14332
14626
  | "utf8"
14333
14627
  | "utf-8"
14334
14628
  | "utf16le"
14335
14629
  | "utf-16le"
14336
- | "latin1"
14337
- | "ascii"
14338
14630
  | "ucs2"
14339
14631
  | "ucs-2"
14632
+ | "base64"
14633
+ | "base64url"
14634
+ | "latin1"
14635
+ | "binary"
14636
+ | "hex"
14340
14637
  | (ObjectEncodingOptions & {
14341
14638
  withFileTypes?: false;
14342
14639
  recursive?: boolean;
@@ -14443,7 +14740,7 @@ declare interface RealContentHashPluginOptions {
14443
14740
  /**
14444
14741
  * the hash digest to use
14445
14742
  */
14446
- hashDigest: HashDigest;
14743
+ hashDigest: string;
14447
14744
  }
14448
14745
  declare interface RealDependencyLocation {
14449
14746
  start: SourcePosition;
@@ -15991,6 +16288,7 @@ declare abstract class RuntimeTemplate {
15991
16288
  isModule(): boolean;
15992
16289
  isNeutralPlatform(): boolean;
15993
16290
  supportsConst(): boolean;
16291
+ supportsMethodShorthand(): boolean;
15994
16292
  supportsArrowFunction(): boolean;
15995
16293
  supportsAsyncFunction(): boolean;
15996
16294
  supportsOptionalChaining(): boolean;
@@ -16207,6 +16505,10 @@ declare abstract class RuntimeTemplate {
16207
16505
  * if the dependency is weak (will create a nice error message)
16208
16506
  */
16209
16507
  weak?: boolean;
16508
+ /**
16509
+ * dependency
16510
+ */
16511
+ dependency: Dependency;
16210
16512
  /**
16211
16513
  * if set, will be filled with runtime requirements
16212
16514
  */
@@ -16268,9 +16570,9 @@ declare abstract class RuntimeTemplate {
16268
16570
  */
16269
16571
  runtimeRequirements: Set<string>;
16270
16572
  /**
16271
- * if set, the module will be deferred
16573
+ * module dependency
16272
16574
  */
16273
- defer?: boolean;
16575
+ dependency: ModuleDependency;
16274
16576
  }): [string, string];
16275
16577
  exportFromImport<GenerateContext>(__0: {
16276
16578
  /**
@@ -16330,9 +16632,9 @@ declare abstract class RuntimeTemplate {
16330
16632
  */
16331
16633
  runtimeRequirements: Set<string>;
16332
16634
  /**
16333
- * if true, the module will be deferred.
16635
+ * module dependency
16334
16636
  */
16335
- defer?: boolean;
16637
+ dependency: ModuleDependency;
16336
16638
  }): string;
16337
16639
  blockPromise(__0: {
16338
16640
  /**
@@ -16906,6 +17208,11 @@ declare interface SourceMapDevToolPluginOptions {
16906
17208
  */
16907
17209
  filename?: null | string | false;
16908
17210
 
17211
+ /**
17212
+ * Decide whether to ignore source files that match the specified value in the SourceMap.
17213
+ */
17214
+ ignoreList?: string | RegExp | Rule[] | ((str: string) => boolean);
17215
+
16909
17216
  /**
16910
17217
  * Include source maps for module paths that match the given value.
16911
17218
  */
@@ -17833,18 +18140,18 @@ declare interface StreamChunksOptions {
17833
18140
  declare interface StreamOptions {
17834
18141
  flags?: string;
17835
18142
  encoding?:
17836
- | "base64"
17837
- | "base64url"
17838
- | "hex"
17839
- | "binary"
18143
+ | "ascii"
17840
18144
  | "utf8"
17841
18145
  | "utf-8"
17842
18146
  | "utf16le"
17843
18147
  | "utf-16le"
17844
- | "latin1"
17845
- | "ascii"
17846
18148
  | "ucs2"
17847
- | "ucs-2";
18149
+ | "ucs-2"
18150
+ | "base64"
18151
+ | "base64url"
18152
+ | "latin1"
18153
+ | "binary"
18154
+ | "hex";
17848
18155
  fd?: any;
17849
18156
  mode?: number;
17850
18157
  autoClose?: boolean;
@@ -17926,7 +18233,7 @@ declare class Template {
17926
18233
  static renderChunkModules(
17927
18234
  renderContext: ChunkRenderContextJavascriptModulesPlugin,
17928
18235
  modules: Module[],
17929
- renderModule: (module: Module) => null | Source,
18236
+ renderModule: (module: Module, renderInArray?: boolean) => null | Source,
17930
18237
  prefix?: string
17931
18238
  ): null | Source;
17932
18239
  static renderRuntimeModules(
@@ -18386,6 +18693,11 @@ declare interface WebpackOptionsNormalized {
18386
18693
  */
18387
18694
  devtool?: string | false;
18388
18695
 
18696
+ /**
18697
+ * Enable and configure the Dotenv plugin to load environment variables from .env files.
18698
+ */
18699
+ dotenv?: boolean | DotenvPluginOptions;
18700
+
18389
18701
  /**
18390
18702
  * The entry point(s) of the compilation.
18391
18703
  */
@@ -18431,7 +18743,10 @@ declare interface WebpackOptionsNormalized {
18431
18743
  | "promise"
18432
18744
  | "module-import"
18433
18745
  | "script"
18434
- | "node-commonjs";
18746
+ | "node-commonjs"
18747
+ | "asset"
18748
+ | "css-import"
18749
+ | "css-url";
18435
18750
 
18436
18751
  /**
18437
18752
  * Ignore specific warnings.
@@ -18583,11 +18898,20 @@ type WebpackOptionsNormalizedWithDefaults = WebpackOptionsNormalized & {
18583
18898
  | "module-import"
18584
18899
  | "script"
18585
18900
  | "node-commonjs"
18901
+ | "asset"
18902
+ | "css-import"
18903
+ | "css-url"
18586
18904
  >;
18587
18905
  } & { watch: NonNullable<undefined | boolean> } & {
18588
18906
  performance: NonNullable<undefined | false | PerformanceOptions>;
18589
18907
  } & { recordsInputPath: NonNullable<undefined | string | false> } & {
18590
- recordsOutputPath: NonNullable<undefined | string | false>;
18908
+ recordsOutputPath:
18909
+ | (string & {
18910
+ dotenv: NonNullable<undefined | boolean | DotenvPluginOptions>;
18911
+ })
18912
+ | (false & {
18913
+ dotenv: NonNullable<undefined | boolean | DotenvPluginOptions>;
18914
+ });
18591
18915
  };
18592
18916
 
18593
18917
  /**
@@ -18633,18 +18957,18 @@ declare interface WriteFile {
18633
18957
  }
18634
18958
  type WriteFileOptions =
18635
18959
  | null
18636
- | "base64"
18637
- | "base64url"
18638
- | "hex"
18639
- | "binary"
18960
+ | "ascii"
18640
18961
  | "utf8"
18641
18962
  | "utf-8"
18642
18963
  | "utf16le"
18643
18964
  | "utf-16le"
18644
- | "latin1"
18645
- | "ascii"
18646
18965
  | "ucs2"
18647
18966
  | "ucs-2"
18967
+ | "base64"
18968
+ | "base64url"
18969
+ | "latin1"
18970
+ | "binary"
18971
+ | "hex"
18648
18972
  | (ObjectEncodingOptions &
18649
18973
  Abortable & { mode?: string | number; flag?: string; flush?: boolean });
18650
18974
  declare interface WriteOnlySet<T> {
@@ -18654,29 +18978,34 @@ type WriteStreamOptions = StreamOptions & {
18654
18978
  fs?: null | CreateWriteStreamFSImplementation;
18655
18979
  flush?: boolean;
18656
18980
  };
18981
+ declare interface _functionWebpack {
18982
+ (
18983
+ options: Configuration,
18984
+ callback: CallbackWebpackFunction_2<Stats, void>
18985
+ ): null | Compiler;
18986
+ (options: Configuration): Compiler;
18987
+ (
18988
+ options: MultiConfiguration,
18989
+ callback: CallbackWebpackFunction_2<MultiStats, void>
18990
+ ): null | MultiCompiler;
18991
+ (options: MultiConfiguration): MultiCompiler;
18992
+ }
18657
18993
  declare interface chunkModuleHashMap {
18658
18994
  [index: number]: string;
18659
18995
  [index: string]: string;
18660
18996
  }
18661
18997
  declare function exports(
18662
18998
  options: Configuration,
18663
- callback?: CallbackWebpackFunction_2<Stats, void>
18999
+ callback: CallbackWebpackFunction_2<Stats, void>
18664
19000
  ): null | Compiler;
19001
+ declare function exports(options: Configuration): Compiler;
18665
19002
  declare function exports(
18666
19003
  options: MultiConfiguration,
18667
- callback?: CallbackWebpackFunction_2<MultiStats, void>
19004
+ callback: CallbackWebpackFunction_2<MultiStats, void>
18668
19005
  ): null | MultiCompiler;
19006
+ declare function exports(options: MultiConfiguration): MultiCompiler;
18669
19007
  declare namespace exports {
18670
- export const webpack: {
18671
- (
18672
- options: Configuration,
18673
- callback?: CallbackWebpackFunction_2<Stats, void>
18674
- ): null | Compiler;
18675
- (
18676
- options: MultiConfiguration,
18677
- callback?: CallbackWebpackFunction_2<MultiStats, void>
18678
- ): null | MultiCompiler;
18679
- };
19008
+ export const webpack: _functionWebpack;
18680
19009
  export const validate: (
18681
19010
  configuration: Configuration | MultiConfiguration
18682
19011
  ) => void;
@@ -18798,7 +19127,10 @@ declare namespace exports {
18798
19127
  export let createFakeNamespaceObject: "__webpack_require__.t";
18799
19128
  export let createScript: "__webpack_require__.ts";
18800
19129
  export let createScriptUrl: "__webpack_require__.tu";
19130
+ export let cssMergeStyleSheets: "__webpack_require__.mcs";
18801
19131
  export let currentRemoteGetScope: "__webpack_require__.R";
19132
+ export let deferredModuleAsyncTransitiveDependencies: "__webpack_require__.zT";
19133
+ export let deferredModuleAsyncTransitiveDependenciesSymbol: "__webpack_require__.zS";
18802
19134
  export let definePropertyGetters: "__webpack_require__.d";
18803
19135
  export let ensureChunk: "__webpack_require__.e";
18804
19136
  export let ensureChunkHandlers: "__webpack_require__.f";
@@ -18832,8 +19164,8 @@ declare namespace exports {
18832
19164
  export let interceptModuleExecution: "__webpack_require__.i";
18833
19165
  export let loadScript: "__webpack_require__.l";
18834
19166
  export let makeDeferredNamespaceObject: "__webpack_require__.z";
18835
- export let makeDeferredNamespaceObjectSymbol: "__webpack_require__.zS";
18836
19167
  export let makeNamespaceObject: "__webpack_require__.r";
19168
+ export let makeOptimizedDeferredNamespaceObject: "__webpack_require__.zO";
18837
19169
  export let module: "module";
18838
19170
  export let moduleCache: "__webpack_require__.c";
18839
19171
  export let moduleFactories: "__webpack_require__.m";
@@ -19098,7 +19430,8 @@ declare namespace exports {
19098
19430
  export let keepOriginalOrder: <T>(iterable: Iterable<T>) => Comparator<T>;
19099
19431
  export let sortWithSourceOrder: (
19100
19432
  dependencies: Dependency[],
19101
- dependencySourceOrderMap: WeakMap<Dependency, DependencySourceOrder>
19433
+ dependencySourceOrderMap: WeakMap<Dependency, DependencySourceOrder>,
19434
+ onDependencyReSort?: (dep: Dependency, index: number) => void
19102
19435
  ) => void;
19103
19436
  }
19104
19437
  export namespace runtime {
@@ -19310,6 +19643,7 @@ declare namespace exports {
19310
19643
  DllPlugin,
19311
19644
  DllReferencePlugin,
19312
19645
  DynamicEntryPlugin,
19646
+ DotenvPlugin,
19313
19647
  EntryOptionPlugin,
19314
19648
  EntryPlugin,
19315
19649
  EnvironmentPlugin,
@@ -19344,6 +19678,7 @@ declare namespace exports {
19344
19678
  EntryPlugin as SingleEntryPlugin,
19345
19679
  SourceMapDevToolPlugin,
19346
19680
  Stats,
19681
+ ManifestPlugin,
19347
19682
  Template,
19348
19683
  WatchIgnorePlugin,
19349
19684
  WebpackError,