import { TrmPackage } from "../trmPackage";
export interface Lock {
    name: string;
    version: string;
    registry: string;
    integrity: string;
}
export interface LockfileContent {
    lockfileVersion: number;
    source: string;
    name?: string;
    version?: string;
    packages?: Lock[];
}
export declare class Lockfile {
    lockfile: LockfileContent;
    private constructor();
    static generate(root: TrmPackage, packages?: TrmPackage[]): Promise<Lockfile>;
    static fromJson(json: any): Lockfile;
    toJson(): string;
    getLock(trmPackage: TrmPackage, versionRange: string): Lock;
    static testReleaseByLock(lock: Lock): Promise<boolean>;
}
