import { DependenciesResult, JSONObject, PackagerOptions } from "../types.cjs"; import { Packager } from "./packager.cjs"; //#region src/packagers/npm.d.ts type NpmV7Map = Record; interface NpmV7Tree { version: string; resolved: string; name: string; integrity: string; _id: string; extraneous: boolean; path: string; _dependencies: Record; devDependencies: Record; peerDependencies: Record; dependencies?: NpmV7Map; } interface NpmV7Deps { version: string; name: string; description: string; private: boolean; scripts: Record; _id: string; extraneous: boolean; path: string; _dependencies: Record; devDependencies: Record; peerDependencies: Record; dependencies: NpmV7Map; } type NpmV6Map = Record; interface NpmV6Tree { _args: string[][] | string; _from: string; _id: string; _integrity: string; _location: string; _phantomChildren: Record | string; _requested: Record; _requiredBy: string[] | string; _resolved: string; _spec: string; _where: string; author: string; license: string; main: string; name: string; scripts: Record | string; version: string; readme: string; dependencies: NpmV6Map; devDependencies: Record | string; optionalDependencies: Record | string; _dependencies: Record | string; path: string; error: string | Error; extraneous: boolean; _deduped?: string; } interface NpmV6Deps { name: string; version: string; description: string; private: boolean; scripts: Record; dependencies?: NpmV6Map; readme?: string; _id: string; _shrinkwrap: Record; devDependencies: Record; optionalDependencies: Record; _dependencies: Record; path: string; error: string | Error; extraneous: boolean; } /** * NPM packager. */ declare class NPM implements Packager { private packagerOptions; constructor(packagerOptions: PackagerOptions); get lockfileName(): string; get copyPackageSectionNames(): never[]; get mustCopyModules(): boolean; private getNpmMajorVersion; getProdDependencies(cwd: string, depth?: number): Promise; /** * We should not be modifying 'package-lock.json' * because this file should be treated as internal to npm. * * Rebase package-lock is a temporary workaround and must be * removed as soon as https://github.com/npm/npm/issues/19183 gets fixed. */ rebaseLockfile(pathToPackageRoot: string, lockfile: JSONObject): any; install(cwd: string, extraArgs: Array, useLockfile: boolean): Promise; prune(cwd: string): Promise; runScripts(cwd: string, scriptNames: string[]): Promise; private _rebaseFileReferences; } //#endregion export { NPM, NpmV6Deps, NpmV6Map, NpmV6Tree, NpmV7Deps, NpmV7Tree }; //# sourceMappingURL=npm.d.cts.map