import { Dependencies } from '@pnpm/types'; import { InstalledPackage } from '../install/installMultiple'; import { InstallOptions } from './extendInstallOptions'; import { Shrinkwrap } from 'pnpm-shrinkwrap'; import { StoreController } from 'package-store'; import { DirectoryResolution } from '@pnpm/package-requester'; export declare type InstalledPackages = { [name: string]: InstalledPackage; }; export declare type TreeNode = { children: (() => { [alias: string]: string; }) | { [alias: string]: string; }; pkg: InstalledPackage; depth: number; installable: boolean; }; export declare type TreeNodeMap = { [nodeId: string]: TreeNode; }; export declare type InstallContext = { defaultTag: string; dryRun: boolean; installs: InstalledPackages; outdatedPkgs: { [pkgId: string]: string; }; localPackages: { optional: boolean; dev: boolean; resolution: DirectoryResolution; id: string; version: string; name: string; specRaw: string; normalizedPref?: string; alias: string; }[]; childrenByParentId: { [parentId: string]: { alias: string; pkgId: string; }[]; }; nodesToBuild: { alias: string; nodeId: string; pkg: InstalledPackage; depth: number; installable: boolean; }[]; wantedShrinkwrap: Shrinkwrap; currentShrinkwrap: Shrinkwrap; storeController: StoreController; skipped: Set; tree: { [nodeId: string]: TreeNode; }; force: boolean; prefix: string; registry: string; depth: number; engineStrict: boolean; nodeVersion: string; pnpmVersion: string; rawNpmConfig: Object; nodeModules: string; verifyStoreInegrity: boolean; preferredVersions: { [packageName: string]: { type: 'version' | 'range' | 'tag'; selector: string; }; }; }; export declare function install(maybeOpts: InstallOptions): Promise; /** * Perform installation. * * @example * install({'lodash': '1.0.0', 'foo': '^2.1.0' }, { silent: true }) */ export declare function installPkgs(fuzzyDeps: string[] | Dependencies, maybeOpts: InstallOptions): Promise;