import { Replace } from '@alexaegis/common';
import { JSONSchemaForNPMPackageJsonFiles } from '@schemastore/package';
import { PackageArchetype } from './package-archetype.interface.js';
import { PackageJsonExportConditions } from './package-json-export-conditions.type.js';
export declare const PACKAGE_JSON_NAME = "package.json";
export declare const PNPM_WORKSPACE_FILE_NAME = "pnpm-workspace.yaml";
export declare const NODE_MODULES_DIRECTORY_NAME = "node_modules";
export declare const PACKAGE_JSON_DEPENDENCY_FIELDS: readonly ["dependencies", "devDependencies", "optionalDependencies", "peerDependencies"];
export type PackageJsonExports = Record<string, PackageJsonExportConditions | string>;
export interface SimplifiedPackageJsonFields {
    exports?: PackageJsonExports | undefined;
    bin?: Record<string, string> | undefined;
    type?: 'commonjs' | 'module' | undefined;
    types?: string | undefined;
    scripts?: Record<string, string | undefined> | undefined;
    main?: string | undefined;
    module?: string | undefined;
    archetype?: PackageArchetype;
}
/**
 * This packageJson definition is a bit simplified from the real one
 */
export type PackageJson = Replace<JSONSchemaForNPMPackageJsonFiles, SimplifiedPackageJsonFields>;
export interface PnpmWorkspaceYaml {
    packages?: string[] | undefined;
}
//# sourceMappingURL=package-json.interface.d.ts.map