/// <reference types="node" />
import { PackageJSONType } from './PackageRepository';
import { Dist } from '../core/entity/Dist';
export declare class DistRepository {
    private readonly packageRepository;
    private readonly nfsAdapter;
    findPackageVersionManifest(packageId: string, version: string): Promise<PackageJSONType | undefined>;
    findPackageAbbreviatedManifest(packageId: string, version: string): Promise<PackageJSONType | undefined>;
    readDistBytesToJSON<T>(dist: Dist): Promise<T | undefined>;
    readDistBytesToString(dist: Dist): Promise<string>;
    readDistBytes(dist: Dist): Promise<Uint8Array | undefined>;
    getDistStream(dist: Dist): Promise<import("stream").Readable | undefined>;
    saveDist(dist: Dist, buf: Uint8Array | string): Promise<void>;
    destroyDist(dist: Dist): Promise<void>;
    downloadDist(dist: Dist): Promise<string | import("stream").Readable | undefined>;
    downloadDistToFile(dist: Dist, file: string): Promise<void>;
}
