import { EventEmitter } from 'events'; interface Package { name: string; version: string; dependencies?: Record; devDependencies?: Record; peerDependencies?: Record; platform?: string[]; arch?: string[]; language?: string; binary?: boolean; } interface Environment { name: string; path: string; packages: Map; language: string[]; created: Date; lastModified: Date; } interface InstalledPackage extends Package { installedVersion: string; installedPath: string; installedDate: Date; size: number; files: string[]; } declare class EnvironmentManager { private baseDir; environments: Map; constructor(baseDir: string); createEnvironment(name: string, languages?: string[]): Promise; private initializeLanguageEnv; activateEnvironment(name: string): Promise; } export declare class UniversalPackageManager extends EventEmitter { envManager: EnvironmentManager; private resolver; private cacheManager; private registryManager; private config; constructor(config: UPMConfig); install(packages: string[] | Record, options?: InstallOptions): Promise; private parsePackageSpecs; private downloadPackage; private installPackage; private installJavaScriptPackage; private installPythonPackage; private updateLockFile; private parallelLimit; } export interface UPMConfig { baseDir: string; cacheDir: string; registries?: Record; offline?: boolean; } export interface InstallOptions { environment?: string; global?: boolean; dev?: boolean; noCache?: boolean; parallel?: number; platform?: string; arch?: string; } export declare class UPMCli { private upm; constructor(config: UPMConfig); private setupEventHandlers; run(args: string[]): Promise; private handleEnvCommand; private initProject; } export default UniversalPackageManager; //# sourceMappingURL=upm-core.d.ts.map