@ts-dev-tools/core
Version:
TS dev tools Core
30 lines (29 loc) • 1.18 kB
TypeScript
import { PackageJson as PackageJsonType } from "type-fest";
export type JsonArray = boolean[] | number[] | string[] | JsonFileData[] | Date[];
export type AnyJson = boolean | number | string | JsonFileData | Date | JsonArray | JsonArray[];
export type JsonFileData = {
[key: string]: AnyJson | undefined;
};
export type PackageJsonContent = JsonFileData & PackageJsonType;
export declare class PackageJson {
private path;
private static readonly PACKAGE_JSON_FILE_NAME;
private content?;
constructor(path: string);
getPath(): string;
getContent(): PackageJsonContent;
setContent(content: PackageJsonContent): void;
getPackageName(): string | undefined;
getPackageVersion(): string | undefined;
isPrivate(): boolean;
getTsDevToolsVersion(): string | undefined;
getDependenciesPackageNames(): string[];
getDevDependenciesPackageNames(): string[];
getAllDependenciesPackageNames(): string[];
hasDependency(packageName: string): boolean;
merge(update: PackageJsonContent): void;
backup(): string;
restore(backupPath: string): void;
private write;
static fromDirPath(dirPath: string): PackageJson;
}