import { Type } from "@chainsafe/ssz"; import { BLSPubkey, Slot } from "@lodestar/types"; import { Bucket } from "../../buckets.js"; import { LodestarValidatorDatabaseController } from "../../types.js"; import { SlashingProtectionBlock } from "../types.js"; /** * Manages validator db storage of blocks. * Entries in the db are indexed by an encoded key which combines the validator's public key and the * block's slot. */ export declare class BlockBySlotRepository { protected db: LodestarValidatorDatabaseController; protected type: Type; protected bucket: Bucket; private readonly bucketId; private readonly dbReqOpts; private readonly minKey; private readonly maxKey; constructor(db: LodestarValidatorDatabaseController); getAll(pubkey: BLSPubkey, limit?: number): Promise; getFirst(pubkey: BLSPubkey): Promise; get(pubkey: BLSPubkey, slot: Slot): Promise; set(pubkey: BLSPubkey, blocks: SlashingProtectionBlock[]): Promise; listPubkeys(): Promise; private encodeKey; private decodeKey; } //# sourceMappingURL=blockBySlotRepository.d.ts.map