@nx/js
Version:
35 lines (34 loc) • 1.75 kB
TypeScript
import { ExecutorContext, ProjectFileMap, ProjectGraphProjectNode } from '@nx/devkit';
import { DependentBuildableProjectNode } from '../buildable-libs-utils';
import type { PackageJson } from 'nx/src/utils/package-json';
export type SupportedFormat = 'cjs' | 'esm';
export interface UpdatePackageJsonOption {
rootDir?: string;
projectRoot: string;
main: string;
additionalEntryPoints?: string[];
format?: SupportedFormat[];
outputPath: string;
outputFileName?: string;
outputFileExtensionForCjs?: `.${string}`;
outputFileExtensionForEsm?: `.${string}`;
skipTypings?: boolean;
generateExportsField?: boolean;
excludeLibsInPackageJson?: boolean;
updateBuildableProjectDepsInPackageJson?: boolean;
buildableProjectDepsInPackageJsonType?: 'dependencies' | 'peerDependencies';
generateLockfile?: boolean;
packageJsonPath?: string;
skipDevelopmentExports?: boolean;
}
export declare function updatePackageJson(options: UpdatePackageJsonOption, context: ExecutorContext, target: ProjectGraphProjectNode, dependencies: DependentBuildableProjectNode[], fileMap?: ProjectFileMap): void;
interface Exports {
'.': string;
[name: string]: string;
}
export declare function getExports(options: Pick<UpdatePackageJsonOption, 'main' | 'rootDir' | 'projectRoot' | 'outputFileName' | 'additionalEntryPoints' | 'outputPath' | 'packageJsonPath'> & {
fileExt: string;
}): Exports;
export declare function getUpdatedPackageJsonContent(packageJson: PackageJson, options: UpdatePackageJsonOption): PackageJson;
export declare function getOutputDir(options: Pick<UpdatePackageJsonOption, 'main' | 'rootDir' | 'projectRoot' | 'outputFileName' | 'outputPath' | 'packageJsonPath'>): string;
export {};