import { SlotNumber } from '@aztec/foundation/branded-types'; import { Buffer32 } from '@aztec/foundation/buffer'; import type { Fr } from '@aztec/foundation/curves/bn254'; import type { EthAddress } from '@aztec/foundation/eth-address'; import { Signature } from '@aztec/foundation/eth-signature'; import { BufferReader } from '@aztec/foundation/serialize'; import type { ZodFor } from '../schemas/index.js'; import { ConsensusPayload } from './consensus_payload.js'; import { Gossipable } from './gossipable.js'; import { TopicType } from './topic_type.js'; export declare class CheckpointAttestationHash extends Buffer32 { constructor(hash: Buffer); } /** * CheckpointAttestation * * A validator that has attested to seeing all blocks in a checkpoint * will produce a checkpoint attestation over the checkpoint header. */ export declare class CheckpointAttestation extends Gossipable { /** The payload of the message, and what the signature is over */ readonly payload: ConsensusPayload; /** The signature of the checkpoint attester */ readonly signature: Signature; /** The signature from the checkpoint proposer */ readonly proposerSignature: Signature; static p2pTopic: TopicType; private sender; private proposer; constructor( /** The payload of the message, and what the signature is over */ payload: ConsensusPayload, /** The signature of the checkpoint attester */ signature: Signature, /** The signature from the checkpoint proposer */ proposerSignature: Signature); static get schema(): ZodFor; generateP2PMessageIdentifier(): Promise; get archive(): Fr; get slotNumber(): SlotNumber; /** * Lazily evaluate and cache the signer of the attestation * @returns The signer of the attestation, or undefined if signature recovery fails */ getSender(): EthAddress | undefined; /** * Lazily evaluate and cache the proposer of the checkpoint * @returns The proposer of the checkpoint */ getProposer(): EthAddress | undefined; getPayload(): Buffer; toBuffer(): Buffer; static fromBuffer(buf: Buffer | BufferReader): CheckpointAttestation; static empty(): CheckpointAttestation; static random(): CheckpointAttestation; getSize(): number; toInspect(): { payload: { header: { lastArchive: `0x${string}`; blockHeadersHash: `0x${string}`; blobsHash: `0x${string}`; inHash: `0x${string}`; epochOutHash: `0x${string}`; slotNumber: SlotNumber; timestamp: bigint; coinbase: `0x${string}`; feeRecipient: `0x${string}`; gasFees: { feePerDaGas: bigint; feePerL2Gas: bigint; }; totalManaUsed: bigint; }; archive: `0x${string}`; feeAssetPriceModifier: string; }; signature: `0x${string}`; proposerSignature: `0x${string}`; }; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludF9hdHRlc3RhdGlvbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3AycC9jaGVja3BvaW50X2F0dGVzdGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHcEQsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFJOUUsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU1QyxxQkFBYSx5QkFBMEIsU0FBUSxRQUFRO0lBQ3JELFlBQVksSUFBSSxFQUFFLE1BQU0sRUFFdkI7Q0FDRjtBQUVEOzs7OztHQUtHO0FBQ0gscUJBQWEscUJBQXNCLFNBQVEsVUFBVTtJQU9qRCxpRUFBaUU7YUFDakQsT0FBTyxFQUFFLGdCQUFnQjtJQUV6QywrQ0FBK0M7YUFDL0IsU0FBUyxFQUFFLFNBQVM7SUFFcEMsaURBQWlEO2FBQ2pDLGlCQUFpQixFQUFFLFNBQVM7SUFiOUMsT0FBZ0IsUUFBUSxZQUFvQztJQUU1RCxPQUFPLENBQUMsTUFBTSxDQUF5QjtJQUN2QyxPQUFPLENBQUMsUUFBUSxDQUF5QjtJQUV6QztJQUNFLGlFQUFpRTtJQUNqRCxPQUFPLEVBQUUsZ0JBQWdCO0lBRXpDLCtDQUErQztJQUMvQixTQUFTLEVBQUUsU0FBUztJQUVwQyxpREFBaUQ7SUFDakMsaUJBQWlCLEVBQUUsU0FBUyxFQUc3QztJQUVELE1BQU0sS0FBSyxNQUFNLElBQUksTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBUWpEO0lBRVEsNEJBQTRCLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUV6RDtJQUVELElBQUksT0FBTyxJQUFJLEVBQUUsQ0FFaEI7SUFFRCxJQUFJLFVBQVUsSUFBSSxVQUFVLENBRTNCO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUyxJQUFJLFVBQVUsR0FBRyxTQUFTLENBWWxDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVyxJQUFJLFVBQVUsR0FBRyxTQUFTLENBZ0JwQztJQUVELFVBQVUsSUFBSSxNQUFNLENBRW5CO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLHFCQUFxQixDQU9uRTtJQUVELE1BQU0sQ0FBQyxLQUFLLElBQUkscUJBQXFCLENBRXBDO0lBRUQsTUFBTSxDQUFDLE1BQU0sSUFBSSxxQkFBcUIsQ0FFckM7SUFFRCxPQUFPLElBQUksTUFBTSxDQUVoQjtJQUVELFNBQVM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BTVI7Q0FDRiJ9