import type { PackageManager } from '../../pm/index.ts';
import type { RegistryInfo } from './interfaces.ts';
export interface FetchOptions {
    packageManager?: Pick<PackageManager, 'command' | 'name'>;
    /**
     * When true, fetch full registry metadata (no `install-v1` Accept hint) so
     * the per-version `time` object is included. Needed for pnpm's
     * `minimumReleaseAge` filtering.
     */
    wantTimes?: boolean;
}
export interface UpdoRegistryLookupFatal {
    command: string;
    output: string;
    packageName: string;
    status: number | null;
    type: 'fatal';
}
export interface UpdoRegistryLookupNotFound {
    output: string;
    packageName: string;
    status: number | null;
    type: 'not-found';
}
export interface UpdoRegistryLookupOk {
    info: RegistryInfo;
    packageName: string;
    type: 'ok';
}
export type UpdoRegistryLookupResult = UpdoRegistryLookupFatal | UpdoRegistryLookupNotFound | UpdoRegistryLookupOk;
export declare function isRegistryNotFoundOutput(output: string): boolean;
export declare function parsePackageViewJson(stdout: string, options?: FetchOptions): RegistryInfo;
export declare function fetchRegistryInfo(packageName: string, options?: FetchOptions): Promise<RegistryInfo>;
export declare function fetchAllRegistryInfo(packageNames: string[], options?: FetchOptions & {
    concurrency?: number;
}): Promise<Map<string, RegistryInfo>>;
//# sourceMappingURL=fetchRegistryInfo.d.ts.map