import type { PackageURL } from './package-url.js'; /** * Convert PackageURL instance to spec string (without scheme and type). * * Returns the package identity portion: namespace/name@version?qualifiers#subpath * This is the purl equivalent of an npm "spec" — the package identity without * the ecosystem prefix. * * @param purl - PackageURL instance to stringify * @returns Spec string (e.g., '%40babel/core@7.0.0' for pkg:npm/%40babel/core@7.0.0) * * @example * ```typescript * const purl = new PackageURL('npm', '@babel', 'core', '7.0.0') * stringifySpec(purl) * // -> '%40babel/core@7.0.0' * ``` */ export declare function stringifySpec(purl: PackageURL): string; /** * Convert PackageURL instance to canonical PURL string. * * Serializes a PackageURL object into its canonical string representation * according to the PURL specification. * * @param purl - PackageURL instance to stringify * @returns Canonical PURL string (e.g., 'pkg:npm/lodash@4.17.21') * * @example * ```typescript * const purl = new PackageURL('npm', undefined, 'lodash', '4.17.21') * stringify(purl) * // -> 'pkg:npm/lodash@4.17.21' * ``` */ export declare function stringify(purl: PackageURL): string;