@lodestar/beacon-node
Version:
A Typescript implementation of the beacon chain
25 lines • 1.16 kB
TypeScript
import { ChainForkConfig } from "@lodestar/config";
import { RootHex, Slot, gloas } from "@lodestar/types";
import { Metrics } from "../../metrics/metrics.js";
import { IClock } from "../../util/clock.js";
import { InsertOutcome } from "./types.js";
type BlockRootHex = string;
export declare class PayloadAttestationPool {
private readonly config;
private readonly clock;
private readonly metrics;
private readonly aggregateByDataRootByBlockRootBySlot;
private lowestPermissibleSlot;
constructor(config: ChainForkConfig, clock: IClock, metrics?: Metrics | null);
get size(): number;
add(message: gloas.PayloadAttestationMessage, payloadAttDataRootHex: RootHex, validatorCommitteeIndex: number): InsertOutcome;
/**
* Get payload attestations to be included in a block.
* Pick the top `MAX_PAYLOAD_ATTESTATIONS` aggregates with the most votes.
*/
getPayloadAttestationsForBlock(beaconBlockRoot: BlockRootHex, slot: Slot): gloas.PayloadAttestation[];
getAll(slot?: Slot): gloas.PayloadAttestation[];
prune(clockSlot: Slot): void;
}
export {};
//# sourceMappingURL=payloadAttestationPool.d.ts.map