export interface LockedSchema {
    '@id': string;
    version: string;
    content: string;
}
export interface LockedPackage {
    version: string;
    content: string;
    revision: string;
    schemas: Record<string, LockedSchema>;
}
export interface LockfileData {
    version: number;
    lockfileVersion: string;
    resolved: Record<string, LockedPackage>;
    root: {
        depends: Record<string, string>;
    };
}
export declare const LOCKFILE_PATH = ".trellis/deps.json";
export declare function computeContentHash(body: string): string;
export declare function readLockfile(rootPath: string): LockfileData | null;
export declare function writeLockfile(rootPath: string, data: LockfileData): void;
export declare function validateLockfile(data: unknown): asserts data is LockfileData;
export declare function createLockfile(): LockfileData;
export declare function addToLockfile(lockfile: LockfileData, pkg: {
    name: string;
    version: string;
    content: string;
    revision: string;
    schemas: Array<{
        '@id': string;
        version: string;
        content: string;
    }>;
}): void;
export declare function removeFromLockfile(lockfile: LockfileData, name: string): boolean;
export declare function findDependents(lockfile: LockfileData, name: string): string[];
//# sourceMappingURL=lockfile.d.ts.map