jsr
Version:
jsr.io package manager for node
39 lines (38 loc) • 1.5 kB
TypeScript
import { InstallOptions } from "./commands";
import { JsrPackage } from "./utils";
export interface PackageManager {
cwd: string;
install(packages: JsrPackage[], options: InstallOptions): Promise<void>;
remove(packages: JsrPackage[]): Promise<void>;
runScript(script: string): Promise<void>;
setConfigValue?(key: string, value: string): Promise<void>;
}
declare class Yarn implements PackageManager {
cwd: string;
constructor(cwd: string);
install(packages: JsrPackage[], options: InstallOptions): Promise<void>;
remove(packages: JsrPackage[]): Promise<void>;
runScript(script: string): Promise<void>;
}
export declare class YarnBerry extends Yarn {
install(packages: JsrPackage[], options: InstallOptions): Promise<void>;
/**
* Calls the `yarn config set` command, https://yarnpkg.com/cli/config/set.
*/
setConfigValue(key: string, value: string): Promise<void>;
private toPackageArgs;
}
export declare class Bun implements PackageManager {
cwd: string;
constructor(cwd: string);
install(packages: JsrPackage[], options: InstallOptions): Promise<void>;
remove(packages: JsrPackage[]): Promise<void>;
runScript(script: string): Promise<void>;
isNpmrcSupported(): Promise<boolean>;
}
export type PkgManagerName = "npm" | "yarn" | "pnpm" | "bun";
export declare function getPkgManager(cwd: string, pkgManagerName: PkgManagerName | null): Promise<{
root: string;
pkgManager: PackageManager;
}>;
export {};