import type { FilePath, DependencySpecifier, SemverRange } from '@atlaspack/types'; import type { FileSystem } from '@atlaspack/fs'; import type { ModuleRequest, PackageManager, PackageInstaller, InstallOptions, Invalidations, PackageManagerResolveResult } from '@atlaspack/types'; export declare class NodePackageManager implements PackageManager { fs: FileSystem; projectRoot: FilePath; installer: PackageInstaller | null | undefined; resolver: ResolverBase; currentExtensions: Array; atlaspackLinkRoot: string | null; constructor(fs: FileSystem, projectRoot: FilePath, installer?: PackageInstaller | null); _createResolver(): ResolverBase; static deserialize(opts: any): NodePackageManager; serialize(): { $$raw: boolean; fs: FileSystem; projectRoot: FilePath; installer: PackageInstaller | null | undefined; }; require(name: DependencySpecifier, from: FilePath, opts?: { range?: SemverRange | null | undefined; shouldAutoInstall?: boolean; saveDev?: boolean; } | null): Promise; requireSync(name: DependencySpecifier, from: FilePath): any; load(filePath: FilePath, from: FilePath): any; resolve(id: DependencySpecifier, from: FilePath, options?: { range?: SemverRange | null | undefined; shouldAutoInstall?: boolean; saveDev?: boolean; } | null): Promise; resolveSync(name: DependencySpecifier, from: FilePath): PackageManagerResolveResult; install(modules: Array, from: FilePath, opts?: InstallOptions): Promise; getInvalidations(name: DependencySpecifier, from: FilePath): Invalidations; invalidate(name: DependencySpecifier, from: FilePath): void; resolveInternal(name: string, from: string): PackageManagerResolveResult; }