/* tslint:disable */ /* eslint-disable */ /* auto-generated by NAPI-RS */ export interface JsPluginAugmentResourceHashHookFilters { resourcePotTypes: Array moduleIds: Array } export interface JsPluginLoadHookFilters { resolvedPaths: Array } export interface JsPluginRenderResourcePotHookFilters { resourcePotTypes: Array moduleIds: Array } /** Resolve hook filters, works as `||`. If any importers or sources matches any regex item in the Vec, we treat it as filtered. */ export interface JsPluginResolveHookFilters { importers: Array sources: Array } export interface JsPluginTransformHookFilters { resolvedPaths: Array moduleTypes: Array } export const enum JsPluginTransformHtmlHookOrder { Pre = 0, Normal = 1, Post = 2 } export interface JsPluginProcessModuleHookFilters { moduleTypes: Array resolvedPaths: Array } export interface WatchDiffResult { add: Array remove: Array } export interface JsTracedModule { id: string contentHash: string packageName: string packageVersion: string } export interface JsTracedModuleGraph { root: string modules: Array edges: Record> reverseEdges: Record> } export interface JsUpdateResult { added: Array changed: Array removed: Array immutableModules: string mutableModules: string boundaries: Record>> dynamicResourcesMap?: Record>> extraWatchResult: WatchDiffResult } export type JsCompiler = Compiler export declare class Compiler { constructor(config: object) traceDependencies(): object traceModuleGraph(): object /** async compile, return promise */ compile(): object /** sync compile */ compileSync(): void /** TODO: usage example */ update(paths: Array, callback: (...args: any[]) => any, sync: boolean, generateUpdateResource: boolean): object addWatchFiles(root: string, paths: Array): void hasModule(resolvedPath: string): boolean getParentFiles(resolvedPath: string): Array resources(): Record resourcesMap(): Record watchModules(): Array relativeModulePaths(): Array resource(name: string): Buffer | null stats(): string invalidateModule(moduleId: string): void }