type LockFileV1 = { version: 1; mopsTomlHash: string; hashes: Record>; }; type LockFileV2 = { version: 2; mopsTomlDepsHash: string; hashes: Record>; }; type GithubDepLock = { resolved: string; hash: string; }; type LockFileV3 = { version: 3; mopsTomlDepsHash: string; localDepsHash?: string; hashes: Record>; github?: Record; deps: Record; graph?: Record>; }; type LockFile = LockFileV1 | LockFileV2 | LockFileV3; export type LockPolicy = "maintain" | "locked" | "skip"; export declare function checkIntegrity(lock?: LockPolicy, { silent }?: { silent?: boolean; }): Promise; export declare function readLockFile(): LockFile | null; export declare function readLockFileGraph(): Record>; export declare function checkLockFileLight(): boolean; export declare function fetchRegistryFileHashes(packageIds: string[]): Promise>>; export declare function mopsPackageIds(deps: Record): string[]; export declare function hashGithubDir(dir: string): string; export declare function readLockedGithubDep(name: string, repo: string): GithubDepLock | undefined; export declare function recordGithubDep(name: string, entry: GithubDepLock): void; export declare function describeGithubHashMismatch(name: string, repo: string, locked: GithubDepLock, actual: string): string[]; export declare function getLocalFileHash(fileId: string): string | null; export declare function updateLockFile({ silent, }?: { silent?: boolean; }): Promise; export declare function checkLockedPrerequisites(): void; export declare function assertLockedUpToDate(): Promise; export type DownloadVerification = { errors: string[]; unverified: boolean; }; export declare function verifyDownloadedPackageFiles(packageId: string, filesData: Map>): Promise; type VerifyResult = { packages: number; files: number; errors: string[]; }; export declare function verifyIntegrity(): Promise; export {};