import { Chunk, Compiler, RspackPluginInstance, Compilation } from '@rspack/core'; interface FileDescriptor { chunk?: Chunk; isAsset: boolean; isChunk: boolean; isInitial: boolean; isModuleAsset: boolean; name: string; path: string; integrity?: string; } declare const getCompilerHooks: (compiler: Compiler) => any; type Manifest = Record; interface InternalOptions { [key: string]: any; assetHookStage: number; basePath: string; fileName: string; filter: (file: FileDescriptor) => boolean; generate: (seed: Record, files: FileDescriptor[], entries: Record, context: { compilation: Compilation; }) => Manifest; map: (file: FileDescriptor) => FileDescriptor; publicPath: string; removeKeyHash: RegExp | false; seed: Record; serialize: (manifest: Manifest) => string; sort: (fileA: FileDescriptor, fileB: FileDescriptor) => Number; transformExtensions: RegExp; useEntryKeys: boolean; useLegacyEmit: boolean; writeToFileEmit: boolean; } type ManifestPluginOptions = Partial; type EmitCountMap = Map; declare class WebpackManifestPlugin implements RspackPluginInstance { private options; constructor(opts: ManifestPluginOptions); apply(compiler: Compiler): void; } declare const RspackManifestPlugin: typeof WebpackManifestPlugin; export { RspackManifestPlugin, WebpackManifestPlugin, getCompilerHooks }; export type { EmitCountMap, FileDescriptor, InternalOptions, Manifest, ManifestPluginOptions };