import { Cid, LexValue } from '@atproto/lex-data';
export declare class BlockMap implements Iterable<[cid: Cid, bytes: Uint8Array]> {
    private map;
    constructor(entries?: Iterable<readonly [cid: Cid, bytes: Uint8Array]>);
    add(value: LexValue): Promise<Cid>;
    set(cid: Cid, bytes: Uint8Array): BlockMap;
    get(cid: Cid): Uint8Array | undefined;
    delete(cid: Cid): BlockMap;
    getMany(cids: Cid[]): {
        blocks: BlockMap;
        missing: Cid[];
    };
    has(cid: Cid): boolean;
    clear(): void;
    forEach(cb: (bytes: Uint8Array, cid: Cid) => void): void;
    entries(): Entry[];
    cids(): Cid[];
    addMap(toAdd: BlockMap): BlockMap;
    get size(): number;
    get byteSize(): number;
    equals(other: BlockMap): boolean;
    keys(): Generator<Cid, void, unknown>;
    values(): Generator<Uint8Array, void, unknown>;
    [Symbol.iterator](): Generator<[Cid, Uint8Array], void, unknown>;
}
type Entry = {
    cid: Cid;
    bytes: Uint8Array;
};
export default BlockMap;
//# sourceMappingURL=block-map.d.ts.map