UNPKG

@jsdevtools/npm-publish

Version:
30 lines (29 loc) 1.12 kB
import { type Access, type Logger, type Options, type Strategy } from "./options.js"; import type { PackageManifest } from "./read-manifest.js"; export declare const TAG_LATEST = "latest"; /** Normalized and sanitized auth, publish, and runtime configurations. */ export interface NormalizedOptions { registry: URL; token: string; tag: ConfigValue<string>; access: ConfigValue<Access | undefined>; provenance: ConfigValue<boolean>; ignoreScripts: ConfigValue<boolean>; dryRun: ConfigValue<boolean>; strategy: ConfigValue<Strategy>; logger: Logger | undefined; temporaryDirectory: string; } /** A config value, and whether that value differs from default. */ export interface ConfigValue<TValue> { value: TValue; isDefault: boolean; } /** * Normalizes and sanitizes options, and fills-in any default values. * * @param manifest Package metadata from package.json. * @param options User-input options. * @returns Validated auth and publish configuration. */ export declare function normalizeOptions(manifest: PackageManifest, options: Options): NormalizedOptions;