webpack-chunk-report-plugin
Version:
Webpack Chunk Report Plugin
34 lines (33 loc) • 1.6 kB
TypeScript
import { Compiler, NormalModule, Chunk as WebpackChunk, Module as WebpackModule, ModuleGraphConnection, Compilation, Stats } from "webpack";
import type { DisableTreeShaking } from "./utils/types";
import type { Reason } from "./types";
export declare class ChunkReportPlugin {
#private;
runtime: string;
reportFilename: string;
outputDirectory: string | undefined;
emitChunkIdVsModuleData: boolean | undefined;
disableTreeShaking: DisableTreeShaking | undefined;
constructor({ runtime, reportFilename, outputDirectory, emitChunkIdVsModuleData, disableTreeShaking, }: {
runtime: string;
reportFilename: string;
outputDirectory: string | undefined;
emitChunkIdVsModuleData: boolean | undefined;
disableTreeShaking: DisableTreeShaking | undefined;
});
getChunkType: ({ isInitial, modules, getIncomingConnections, }: {
isInitial: boolean;
modules: Iterable<WebpackModule>;
getIncomingConnections: (module: WebpackModule) => Iterable<ModuleGraphConnection>;
}) => string;
getModuleExportsMetadata: (module: NormalModule, compilation: Compilation, chunk: WebpackChunk) => {
isCommonJS: boolean;
exports: string[];
treeShakenExports: string[];
};
getSourceModules(module: WebpackModule): NormalModule[];
getModuleIdentifier(compilation: Compilation, module: WebpackModule): string;
getReasons(compilation: Compilation, module: WebpackModule): Reason[];
compute(compiler: Compiler, stats: Stats): Promise<void>;
apply(compiler: Compiler): void;
}