import { EventEmitter } from 'events'; import type { InstallTarget } from './index.ts'; import { type PackageManager } from './prober.ts'; export interface Env { [name: string]: string; } export interface Options { npmEnv?: Env; packageManager?: PackageManager; concurrent?: number; } export interface ListByPackage { [key: string]: string[]; } interface EventMap { install_targets_identified: [InstallTarget[]]; install_start: [ListByPackage]; installed: [pkg: string, stdout: string, stderr: string]; packing_start: [allSources: string[]]; packed: [location: string]; packing_end: []; install_end: []; } export declare class LocalInstaller extends EventEmitter { private sourcesByTarget; private options; private uniqueDir; constructor(sourcesByTarget: ListByPackage, options?: Options); on(event: TEventName, listener: (...args: EventMap[TEventName]) => void): this; emit(event: TEventName, ...args: EventMap[TEventName]): boolean; install(): Promise; createTmpDirectory(tmpDir: string): Promise; private installAll; private installOne; private resolvePackages; private identifyInstallTargets; private packAll; private packOne; private removeTmpDirectory; } export declare function resolve(packagesByTarget: ListByPackage): ListByPackage; export {}; //# sourceMappingURL=LocalInstaller.d.ts.map