import { HttpClientRequestOptions, HttpClientResponse } from 'egg'; import type { PackageManifestType } from '../../repository/PackageRepository.ts'; type HttpMethod = HttpClientRequestOptions['method']; export type RegistryResponse = { method: HttpMethod; } & HttpClientResponse; export declare class NPMRegistry { private readonly logger; private readonly httpClient; private config; private timeout; registryHost: string; get registry(): string; setRegistryHost(registryHost?: string): void; getFullManifests(fullname: string, optionalConfig?: { retries?: number; remoteAuthToken?: string; }): Promise>; getFullManifestsBuffer(fullname: string, optionalConfig?: { retries?: number; remoteAuthToken?: string; }): Promise>; createSyncTask(fullname: string, optionalConfig?: { remoteAuthToken?: string; }): Promise; getSyncTask(fullname: string, id: string, offset: number, optionalConfig?: { remoteAuthToken?: string; }): Promise>; getDownloadRanges(registry: string, fullname: string, start: string, end: string, optionalConfig?: { remoteAuthToken?: string; }): Promise; private requestJSON; private requestBuffer; private request; genAuthorizationHeader(remoteAuthToken?: string): string; } export {};