import { type NpmDistTagsLoader } from './npm-registry.js'; export type NpmVersionResult = { version: string; error?: false; } | { version: null; error: true; } | { version: null; error: false; }; /** Valid update-check states; payloads are required only where meaningful. */ export type NpmVersionStatus = { status: 'available'; version: string; } | { status: 'no-target'; channel: string; } | { status: 'up-to-date'; } | { status: 'error'; }; type NpmVersionCheckDeps = { loadDistTags?: NpmDistTagsLoader; readCurrentVersion?: () => Promise; }; type PackageFileReader = (path: URL, encoding: BufferEncoding) => string | Buffer; export declare function getCurrentCliVersion(readPackageFile?: PackageFileReader): string; /** Compatibility facade for callers that still consume the historical result shape. */ export declare function resolveLatestNpmVersion(log: (message: string) => void, allowPrerelease?: boolean, channel?: string, loadDistTags?: NpmDistTagsLoader): Promise; export declare function checkForNpmVersionUpdate(log: (message: string) => void, allowPrerelease?: boolean, channel?: string, deps?: NpmVersionCheckDeps): Promise; export declare function deriveUpdateCheckState(npmStatus: NpmVersionStatus): { upToDate: boolean; channelTargetMissing: boolean; latestVersion: string; } | null; export {}; //# sourceMappingURL=npm-version.d.ts.map