import { IRebuilder } from './types.js'; export declare class ModuleRebuilder { private modulePath; private nodeGyp; private rebuilder; private prebuildify; private prebuildInstall; private nodePreGyp; constructor(rebuilder: IRebuilder, modulePath: string); get metaPath(): string; /** * The marker written to `.forge-meta` after a successful rebuild, and compared against on * subsequent runs to decide whether the module can be skipped. It must capture every input * that changes the resulting binary, so that e.g. a Linux build is not reused for macOS. */ get metaData(): string; alreadyBuiltByRebuild(): Promise; cacheModuleState(cacheKey: string): Promise; /** * Whether a prebuild-install-generated native module exists. */ prebuildInstallNativeModuleExists(): Promise; /** * If the native module uses prebuildify, check to see if it comes with a prebuilt module for * the given platform and arch. */ findPrebuildifyModule(cacheKey: string): Promise; findPrebuildInstallModule(cacheKey: string): Promise; findNodePreGypInstallModule(cacheKey: string): Promise; rebuildNodeGypModule(cacheKey: string): Promise; replaceExistingNativeModule(): Promise; writeMetadata(): Promise; rebuild(cacheKey: string): Promise; }