import type { RepoCache, RepoCacheData, RepoCacheRecord } from '../types';
export declare abstract class RepoCacheBase implements RepoCache {
    protected readonly repository: string;
    protected readonly fingerprint: string;
    protected platform: string;
    private oldHash;
    private data;
    protected constructor(repository: string, fingerprint: string);
    protected abstract read(): Promise<string | null>;
    protected abstract write(data: RepoCacheRecord): Promise<void>;
    private restoreFromRev10;
    private restoreFromRev11;
    private restoreFromRev12;
    private restoreFromRev13;
    load(): Promise<void>;
    save(): Promise<void>;
    getData(): RepoCacheData;
}
