import { Lockfile } from '@pnpm/lockfile-file'; import { IncludedDependencies } from '@pnpm/modules-yaml'; import { DependenciesGraph, LinkedDependency, ImporterToResolve } from '@pnpm/resolve-dependencies'; import { StoreController } from '@pnpm/store-controller-types'; import { HoistedDependencies, Registries } from '@pnpm/types'; export default function linkPackages(projects: ImporterToResolve[], depGraph: DependenciesGraph, opts: { currentLockfile: Lockfile; dependenciesByProjectId: { [id: string]: { [alias: string]: string; }; }; force: boolean; extendNodePath?: boolean; hoistedDependencies: HoistedDependencies; hoistedModulesDir: string; hoistPattern?: string[]; publicHoistPattern?: string[]; include: IncludedDependencies; linkedDependenciesByProjectId: Record; lockfileDir: string; makePartialCurrentLockfile: boolean; outdatedDependencies: { [pkgId: string]: string; }; pruneStore: boolean; pruneVirtualStore: boolean; registries: Registries; rootModulesDir: string; sideEffectsCacheRead: boolean; symlink: boolean; skipped: Set; storeController: StoreController; strictPeerDependencies: boolean; virtualStoreDir: string; wantedLockfile: Lockfile; wantedToBeSkippedPackageIds: Set; }): Promise<{ currentLockfile: Lockfile; newDepPaths: string[]; newHoistedDependencies: HoistedDependencies; removedDepPaths: Set; }>;