import { type Config } from '@pnpm/config'; import { type LockfileObject } from '@pnpm/lockfile.types'; import { type CreateStoreControllerOptions } from '@pnpm/store-connection-manager'; import { type IncludedDependencies, type PrepareExecutionEnv } from '@pnpm/types'; export type InstallDepsOptions = Pick & CreateStoreControllerOptions & { argv: { original: string[]; }; allowNew?: boolean; forceFullResolution?: boolean; frozenLockfileIfExists?: boolean; include?: IncludedDependencies; includeDirect?: IncludedDependencies; latest?: boolean; /** * If specified, the installation will only be performed for comparison of the * wanted lockfile. The wanted lockfile will not be updated on disk and no * modules will be linked. * * The given callback is passed the wanted lockfile before installation and * after. This allows functions to reasonably determine whether the wanted * lockfile will change on disk after installation. The lockfile arguments * passed to this callback should not be mutated. */ lockfileCheck?: (prev: LockfileObject, next: LockfileObject) => void; update?: boolean; updateToLatest?: boolean; updateMatching?: (pkgName: string) => boolean; updatePackageManifest?: boolean; useBetaCli?: boolean; recursive?: boolean; dedupe?: boolean; workspace?: boolean; includeOnlyPackageFiles?: boolean; prepareExecutionEnv: PrepareExecutionEnv; fetchFullMetadata?: boolean; pruneLockfileImporters?: boolean; pnpmfile: string[]; } & Partial>; export declare function installDeps(opts: InstallDepsOptions, params: string[]): Promise;