UNPKG

rollup-plugin-webpack-stats

Version:

[![](https://img.shields.io/npm/v/rollup-plugin-webpack-stats.svg)](https://www.npmjs.com/package/rollup-plugin-webpack-stats) [![](https://img.shields.io/npm/dm/rollup-plugin-webpack-stats.svg)](https://www.npmjs.com/package/rollup-plugin-webpack-stats)

76 lines (75 loc) 2.45 kB
import type { Stats, AssetStats, ChunkStats, ModuleStats } from 'rollup-plugin-stats/extract'; export type WebpackStatsFilteredAsset = { name: string; size?: number; }; export interface WebpackStatsFilteredChunk { id: number | string; entry: boolean; initial: boolean; files?: Array<string>; names?: Array<string>; } export interface WebpackStatsFilteredModule { name: string; size?: number; chunks: Array<string | number>; } export interface WebpackStatsFilteredConcatenatedModule { name: string; size?: number; } export interface WebpackStatsFilteredRootModule extends WebpackStatsFilteredModule { modules?: Array<WebpackStatsFilteredConcatenatedModule>; } export interface WebpackStatsFiltered { builtAt: number; hash?: string; assets: Array<WebpackStatsFilteredAsset>; chunks: Array<WebpackStatsFilteredChunk>; modules: Array<WebpackStatsFilteredRootModule>; } export type ChunksIssuers = Record<string, Array<ChunkStats>>; /** * Recursivily check if a chunk is async based on the chunks issuers */ export declare const lookupChunkAsync: (chunksIssuers: ChunksIssuers, chunk: ChunkStats, processedChunks?: Array<string>) => boolean; type AssetSource = ChunkStats | AssetStats; type ChunkSource = ChunkStats; type ModuleSource = { fileName: string; } & ModuleStats; /** * Store transformed sources */ declare class TransformSources { constructor(); entries: Record<string, unknown>; push(id: string, source: AssetSource | ChunkSource | ModuleSource): void; /** * Get asset source */ getByAsset: (asset: WebpackStatsFilteredAsset) => AssetSource; /** * Get chunk source */ getByChunk: (chunk: WebpackStatsFilteredChunk) => ChunkSource; /** * Get module source */ getByModule: (module: WebpackStatsFilteredModule) => ModuleSource; } export type TransformCallback = (stats: WebpackStatsFiltered, sources: TransformSources, bundle: Stats) => WebpackStatsFiltered; export type BundleTransformOptions = { /** * Extract module original size or rendered size * default: false */ moduleOriginalSize?: boolean; /** * Callback function to access and mutate the resulting stats after the transformation */ transform?: TransformCallback; }; export declare const bundleToWebpackStats: (bundle: Stats, pluginOptions?: BundleTransformOptions) => WebpackStatsFiltered; export {};