structs

package
v7.1.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 30, 2026 License: GPL-3.0 Imports: 25 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ExecutionPayloadElectraFromConsensus       = ExecutionPayloadDenebFromConsensus
	ExecutionPayloadHeaderElectraFromConsensus = ExecutionPayloadHeaderDenebFromConsensus
)
View Source
var (
	ExecutionPayloadFuluFromConsensus       = ExecutionPayloadDenebFromConsensus
	ExecutionPayloadHeaderFuluFromConsensus = ExecutionPayloadHeaderDenebFromConsensus
	BeaconBlockFuluFromConsensus            = BeaconBlockElectraFromConsensus
)
View Source
var ErrUnsupportedConversion = errors.New("Could not determine api struct type to use for value")

Functions

func AttesterSlashingsElectraToConsensus

func AttesterSlashingsElectraToConsensus(src []*AttesterSlashingElectra) ([]*eth.AttesterSlashingElectra, error)

func AttesterSlashingsToConsensus

func AttesterSlashingsToConsensus(src []*AttesterSlashing) ([]*eth.AttesterSlashing, error)

func AttsElectraToConsensus

func AttsElectraToConsensus(src []*AttestationElectra) ([]*eth.AttestationElectra, error)

func AttsToConsensus

func AttsToConsensus(src []*Attestation) ([]*eth.Attestation, error)

func DepositsToConsensus

func DepositsToConsensus(src []*Deposit) ([]*eth.Deposit, error)

func PayloadAttestationsToConsensus added in v7.1.3

func PayloadAttestationsToConsensus(pa []*PayloadAttestation) ([]*eth.PayloadAttestation, error)

func ProposerSlashingsToConsensus

func ProposerSlashingsToConsensus(src []*ProposerSlashing) ([]*eth.ProposerSlashing, error)

func SignedExitsToConsensus

func SignedExitsToConsensus(src []*SignedVoluntaryExit) ([]*eth.SignedVoluntaryExit, error)

Types

type ActiveSetChanges

type ActiveSetChanges struct {
	Epoch               string   `json:"epoch"`
	ActivatedPublicKeys []string `json:"activated_public_keys"`
	ActivatedIndices    []string `json:"activated_indices"`
	ExitedPublicKeys    []string `json:"exited_public_keys"`
	ExitedIndices       []string `json:"exited_indices"`
	SlashedPublicKeys   []string `json:"slashed_public_keys"`
	SlashedIndices      []string `json:"slashed_indices"`
	EjectedPublicKeys   []string `json:"ejected_public_keys"`
	EjectedIndices      []string `json:"ejected_indices"`
}

type AddrRequest

type AddrRequest struct {
	Addr string `json:"addr"`
}

type AggregateAttestationAndProof

type AggregateAttestationAndProof struct {
	AggregatorIndex string       `json:"aggregator_index"`
	Aggregate       *Attestation `json:"aggregate"`
	SelectionProof  string       `json:"selection_proof"`
}

func (*AggregateAttestationAndProof) ToConsensus

type AggregateAttestationAndProofElectra

type AggregateAttestationAndProofElectra struct {
	AggregatorIndex string              `json:"aggregator_index"`
	Aggregate       *AttestationElectra `json:"aggregate"`
	SelectionProof  string              `json:"selection_proof"`
}

func (*AggregateAttestationAndProofElectra) ToConsensus

type AggregateAttestationResponse

type AggregateAttestationResponse struct {
	Version string          `json:"version,omitempty"`
	Data    json.RawMessage `json:"data"`
}

type AggregatedAttEventSource

type AggregatedAttEventSource struct {
	Aggregate *Attestation `json:"aggregate"`
}

type Attestation

type Attestation struct {
	AggregationBits string           `json:"aggregation_bits"`
	Data            *AttestationData `json:"data"`
	Signature       string           `json:"signature"`
}

func AttFromConsensus

func AttFromConsensus(a *eth.Attestation) *Attestation

func AttsFromConsensus

func AttsFromConsensus(src []*eth.Attestation) []*Attestation

func (*Attestation) ToConsensus

func (a *Attestation) ToConsensus() (*eth.Attestation, error)

type AttestationData

type AttestationData struct {
	Slot            string      `json:"slot"`
	CommitteeIndex  string      `json:"index"`
	BeaconBlockRoot string      `json:"beacon_block_root"`
	Source          *Checkpoint `json:"source"`
	Target          *Checkpoint `json:"target"`
}

func AttDataFromConsensus

func AttDataFromConsensus(a *eth.AttestationData) *AttestationData

func (*AttestationData) ToConsensus

func (a *AttestationData) ToConsensus() (*eth.AttestationData, error)

type AttestationElectra

type AttestationElectra struct {
	AggregationBits string           `json:"aggregation_bits"`
	Data            *AttestationData `json:"data"`
	Signature       string           `json:"signature"`
	CommitteeBits   string           `json:"committee_bits"`
}

func AttElectraFromConsensus

func AttElectraFromConsensus(a *eth.AttestationElectra) *AttestationElectra

func AttsElectraFromConsensus

func AttsElectraFromConsensus(src []*eth.AttestationElectra) []*AttestationElectra

func (*AttestationElectra) ToConsensus

func (a *AttestationElectra) ToConsensus() (*eth.AttestationElectra, error)

type AttestationRewards

type AttestationRewards struct {
	IdealRewards []IdealAttestationReward `json:"ideal_rewards"`
	TotalRewards []TotalAttestationReward `json:"total_rewards"`
}

type AttestationRewardsResponse

type AttestationRewardsResponse struct {
	Data                AttestationRewards `json:"data"`
	ExecutionOptimistic bool               `json:"execution_optimistic"`
	Finalized           bool               `json:"finalized"`
}

type AttesterDuty

type AttesterDuty struct {
	Pubkey                  string `json:"pubkey"`
	ValidatorIndex          string `json:"validator_index"`
	CommitteeIndex          string `json:"committee_index"`
	CommitteeLength         string `json:"committee_length"`
	CommitteesAtSlot        string `json:"committees_at_slot"`
	ValidatorCommitteeIndex string `json:"validator_committee_index"`
	Slot                    string `json:"slot"`
}

type AttesterSlashing

type AttesterSlashing struct {
	Attestation1 *IndexedAttestation `json:"attestation_1"`
	Attestation2 *IndexedAttestation `json:"attestation_2"`
}

func AttesterSlashingFromConsensus

func AttesterSlashingFromConsensus(src *eth.AttesterSlashing) *AttesterSlashing

func AttesterSlashingsFromConsensus

func AttesterSlashingsFromConsensus(src []*eth.AttesterSlashing) []*AttesterSlashing

func (*AttesterSlashing) ToConsensus

func (s *AttesterSlashing) ToConsensus() (*eth.AttesterSlashing, error)

type AttesterSlashingElectra

type AttesterSlashingElectra struct {
	Attestation1 *IndexedAttestationElectra `json:"attestation_1"`
	Attestation2 *IndexedAttestationElectra `json:"attestation_2"`
}

func AttesterSlashingElectraFromConsensus

func AttesterSlashingElectraFromConsensus(src *eth.AttesterSlashingElectra) *AttesterSlashingElectra

func AttesterSlashingsElectraFromConsensus

func AttesterSlashingsElectraFromConsensus(src []*eth.AttesterSlashingElectra) []*AttesterSlashingElectra

func (*AttesterSlashingElectra) ToConsensus

type BLSToExecutionChange

type BLSToExecutionChange struct {
	ValidatorIndex     string `json:"validator_index"`
	FromBLSPubkey      string `json:"from_bls_pubkey"`
	ToExecutionAddress string `json:"to_execution_address"`
}

func BLSChangeFromConsensus

func BLSChangeFromConsensus(ch *eth.BLSToExecutionChange) *BLSToExecutionChange

func (*BLSToExecutionChange) ToConsensus

func (b *BLSToExecutionChange) ToConsensus() (*eth.BLSToExecutionChange, error)

type BLSToExecutionChangesPoolResponse

type BLSToExecutionChangesPoolResponse struct {
	Data []*SignedBLSToExecutionChange `json:"data"`
}

type BeaconBlock

type BeaconBlock struct {
	Slot          string           `json:"slot"`
	ProposerIndex string           `json:"proposer_index"`
	ParentRoot    string           `json:"parent_root"`
	StateRoot     string           `json:"state_root"`
	Body          *BeaconBlockBody `json:"body"`
}

func BeaconBlockFromConsensus

func BeaconBlockFromConsensus(b *eth.BeaconBlock) *BeaconBlock

func (*BeaconBlock) ToConsensus

func (b *BeaconBlock) ToConsensus() (*eth.BeaconBlock, error)

func (*BeaconBlock) ToGeneric

func (b *BeaconBlock) ToGeneric() (*eth.GenericBeaconBlock, error)

type BeaconBlockAltair

type BeaconBlockAltair struct {
	Slot          string                 `json:"slot"`
	ProposerIndex string                 `json:"proposer_index"`
	ParentRoot    string                 `json:"parent_root"`
	StateRoot     string                 `json:"state_root"`
	Body          *BeaconBlockBodyAltair `json:"body"`
}

func BeaconBlockAltairFromConsensus

func BeaconBlockAltairFromConsensus(b *eth.BeaconBlockAltair) *BeaconBlockAltair

func (*BeaconBlockAltair) ToConsensus

func (b *BeaconBlockAltair) ToConsensus() (*eth.BeaconBlockAltair, error)

func (*BeaconBlockAltair) ToGeneric

func (b *BeaconBlockAltair) ToGeneric() (*eth.GenericBeaconBlock, error)

type BeaconBlockBellatrix

type BeaconBlockBellatrix struct {
	Slot          string                    `json:"slot"`
	ProposerIndex string                    `json:"proposer_index"`
	ParentRoot    string                    `json:"parent_root"`
	StateRoot     string                    `json:"state_root"`
	Body          *BeaconBlockBodyBellatrix `json:"body"`
}

func BeaconBlockBellatrixFromConsensus

func BeaconBlockBellatrixFromConsensus(b *eth.BeaconBlockBellatrix) (*BeaconBlockBellatrix, error)

func (*BeaconBlockBellatrix) ToConsensus

func (b *BeaconBlockBellatrix) ToConsensus() (*eth.BeaconBlockBellatrix, error)

func (*BeaconBlockBellatrix) ToGeneric

func (b *BeaconBlockBellatrix) ToGeneric() (*eth.GenericBeaconBlock, error)

type BeaconBlockBody

type BeaconBlockBody struct {
	RandaoReveal      string                 `json:"randao_reveal"`
	Eth1Data          *Eth1Data              `json:"eth1_data"`
	Graffiti          string                 `json:"graffiti"`
	ProposerSlashings []*ProposerSlashing    `json:"proposer_slashings"`
	AttesterSlashings []*AttesterSlashing    `json:"attester_slashings"`
	Attestations      []*Attestation         `json:"attestations"`
	Deposits          []*Deposit             `json:"deposits"`
	VoluntaryExits    []*SignedVoluntaryExit `json:"voluntary_exits"`
}

type BeaconBlockBodyAltair

type BeaconBlockBodyAltair struct {
	RandaoReveal      string                 `json:"randao_reveal"`
	Eth1Data          *Eth1Data              `json:"eth1_data"`
	Graffiti          string                 `json:"graffiti"`
	ProposerSlashings []*ProposerSlashing    `json:"proposer_slashings"`
	AttesterSlashings []*AttesterSlashing    `json:"attester_slashings"`
	Attestations      []*Attestation         `json:"attestations"`
	Deposits          []*Deposit             `json:"deposits"`
	VoluntaryExits    []*SignedVoluntaryExit `json:"voluntary_exits"`
	SyncAggregate     *SyncAggregate         `json:"sync_aggregate"`
}

type BeaconBlockBodyBellatrix

type BeaconBlockBodyBellatrix struct {
	RandaoReveal      string                 `json:"randao_reveal"`
	Eth1Data          *Eth1Data              `json:"eth1_data"`
	Graffiti          string                 `json:"graffiti"`
	ProposerSlashings []*ProposerSlashing    `json:"proposer_slashings"`
	AttesterSlashings []*AttesterSlashing    `json:"attester_slashings"`
	Attestations      []*Attestation         `json:"attestations"`
	Deposits          []*Deposit             `json:"deposits"`
	VoluntaryExits    []*SignedVoluntaryExit `json:"voluntary_exits"`
	SyncAggregate     *SyncAggregate         `json:"sync_aggregate"`
	ExecutionPayload  *ExecutionPayload      `json:"execution_payload"`
}

type BeaconBlockBodyCapella

type BeaconBlockBodyCapella struct {
	RandaoReveal          string                        `json:"randao_reveal"`
	Eth1Data              *Eth1Data                     `json:"eth1_data"`
	Graffiti              string                        `json:"graffiti"`
	ProposerSlashings     []*ProposerSlashing           `json:"proposer_slashings"`
	AttesterSlashings     []*AttesterSlashing           `json:"attester_slashings"`
	Attestations          []*Attestation                `json:"attestations"`
	Deposits              []*Deposit                    `json:"deposits"`
	VoluntaryExits        []*SignedVoluntaryExit        `json:"voluntary_exits"`
	SyncAggregate         *SyncAggregate                `json:"sync_aggregate"`
	ExecutionPayload      *ExecutionPayloadCapella      `json:"execution_payload"`
	BLSToExecutionChanges []*SignedBLSToExecutionChange `json:"bls_to_execution_changes"`
}

type BeaconBlockBodyDeneb

type BeaconBlockBodyDeneb struct {
	RandaoReveal          string                        `json:"randao_reveal"`
	Eth1Data              *Eth1Data                     `json:"eth1_data"`
	Graffiti              string                        `json:"graffiti"`
	ProposerSlashings     []*ProposerSlashing           `json:"proposer_slashings"`
	AttesterSlashings     []*AttesterSlashing           `json:"attester_slashings"`
	Attestations          []*Attestation                `json:"attestations"`
	Deposits              []*Deposit                    `json:"deposits"`
	VoluntaryExits        []*SignedVoluntaryExit        `json:"voluntary_exits"`
	SyncAggregate         *SyncAggregate                `json:"sync_aggregate"`
	ExecutionPayload      *ExecutionPayloadDeneb        `json:"execution_payload"`
	BLSToExecutionChanges []*SignedBLSToExecutionChange `json:"bls_to_execution_changes"`
	BlobKzgCommitments    []string                      `json:"blob_kzg_commitments"`
}

type BeaconBlockBodyElectra

type BeaconBlockBodyElectra struct {
	RandaoReveal          string                        `json:"randao_reveal"`
	Eth1Data              *Eth1Data                     `json:"eth1_data"`
	Graffiti              string                        `json:"graffiti"`
	ProposerSlashings     []*ProposerSlashing           `json:"proposer_slashings"`
	AttesterSlashings     []*AttesterSlashingElectra    `json:"attester_slashings"`
	Attestations          []*AttestationElectra         `json:"attestations"`
	Deposits              []*Deposit                    `json:"deposits"`
	VoluntaryExits        []*SignedVoluntaryExit        `json:"voluntary_exits"`
	SyncAggregate         *SyncAggregate                `json:"sync_aggregate"`
	ExecutionPayload      *ExecutionPayloadDeneb        `json:"execution_payload"`
	BLSToExecutionChanges []*SignedBLSToExecutionChange `json:"bls_to_execution_changes"`
	BlobKzgCommitments    []string                      `json:"blob_kzg_commitments"`
	ExecutionRequests     *ExecutionRequests            `json:"execution_requests"`
}

type BeaconBlockBodyGloas added in v7.1.3

type BeaconBlockBodyGloas struct {
	RandaoReveal              string                        `json:"randao_reveal"`
	Eth1Data                  *Eth1Data                     `json:"eth1_data"`
	Graffiti                  string                        `json:"graffiti"`
	ProposerSlashings         []*ProposerSlashing           `json:"proposer_slashings"`
	AttesterSlashings         []*AttesterSlashingElectra    `json:"attester_slashings"`
	Attestations              []*AttestationElectra         `json:"attestations"`
	Deposits                  []*Deposit                    `json:"deposits"`
	VoluntaryExits            []*SignedVoluntaryExit        `json:"voluntary_exits"`
	SyncAggregate             *SyncAggregate                `json:"sync_aggregate"`
	BLSToExecutionChanges     []*SignedBLSToExecutionChange `json:"bls_to_execution_changes"`
	SignedExecutionPayloadBid *SignedExecutionPayloadBid    `json:"signed_execution_payload_bid"`
	PayloadAttestations       []*PayloadAttestation         `json:"payload_attestations"`
	ParentExecutionRequests   *ExecutionRequestsGloas       `json:"parent_execution_requests"`
}

func (*BeaconBlockBodyGloas) ToConsensus added in v7.1.3

func (b *BeaconBlockBodyGloas) ToConsensus() (*eth.BeaconBlockBodyGloas, error)

type BeaconBlockCapella

type BeaconBlockCapella struct {
	Slot          string                  `json:"slot"`
	ProposerIndex string                  `json:"proposer_index"`
	ParentRoot    string                  `json:"parent_root"`
	StateRoot     string                  `json:"state_root"`
	Body          *BeaconBlockBodyCapella `json:"body"`
}

func BeaconBlockCapellaFromConsensus

func BeaconBlockCapellaFromConsensus(b *eth.BeaconBlockCapella) (*BeaconBlockCapella, error)

func (*BeaconBlockCapella) ToConsensus

func (b *BeaconBlockCapella) ToConsensus() (*eth.BeaconBlockCapella, error)

func (*BeaconBlockCapella) ToGeneric

func (b *BeaconBlockCapella) ToGeneric() (*eth.GenericBeaconBlock, error)

type BeaconBlockContentsDeneb

type BeaconBlockContentsDeneb struct {
	Block     *BeaconBlockDeneb `json:"block"`
	KzgProofs []string          `json:"kzg_proofs"`
	Blobs     []string          `json:"blobs"`
}

func (*BeaconBlockContentsDeneb) ToConsensus

func (*BeaconBlockContentsDeneb) ToGeneric

type BeaconBlockContentsElectra

type BeaconBlockContentsElectra struct {
	Block     *BeaconBlockElectra `json:"block"`
	KzgProofs []string            `json:"kzg_proofs"`
	Blobs     []string            `json:"blobs"`
}

func (*BeaconBlockContentsElectra) ToConsensus

func (*BeaconBlockContentsElectra) ToGeneric

type BeaconBlockContentsFulu

type BeaconBlockContentsFulu struct {
	Block     *BeaconBlockElectra `json:"block"`
	KzgProofs []string            `json:"kzg_proofs"`
	Blobs     []string            `json:"blobs"`
}

func BeaconBlockContentsFuluFromConsensus

func BeaconBlockContentsFuluFromConsensus(b *eth.BeaconBlockContentsFulu) (*BeaconBlockContentsFulu, error)

func (*BeaconBlockContentsFulu) ToConsensus

func (*BeaconBlockContentsFulu) ToGeneric

type BeaconBlockDeneb

type BeaconBlockDeneb struct {
	Slot          string                `json:"slot"`
	ProposerIndex string                `json:"proposer_index"`
	ParentRoot    string                `json:"parent_root"`
	StateRoot     string                `json:"state_root"`
	Body          *BeaconBlockBodyDeneb `json:"body"`
}

func BeaconBlockDenebFromConsensus

func BeaconBlockDenebFromConsensus(b *eth.BeaconBlockDeneb) (*BeaconBlockDeneb, error)

func (*BeaconBlockDeneb) ToConsensus

func (b *BeaconBlockDeneb) ToConsensus() (*eth.BeaconBlockDeneb, error)

type BeaconBlockElectra

type BeaconBlockElectra struct {
	Slot          string                  `json:"slot"`
	ProposerIndex string                  `json:"proposer_index"`
	ParentRoot    string                  `json:"parent_root"`
	StateRoot     string                  `json:"state_root"`
	Body          *BeaconBlockBodyElectra `json:"body"`
}

func BeaconBlockElectraFromConsensus

func BeaconBlockElectraFromConsensus(b *eth.BeaconBlockElectra) (*BeaconBlockElectra, error)

func (*BeaconBlockElectra) ToConsensus

func (b *BeaconBlockElectra) ToConsensus() (*eth.BeaconBlockElectra, error)

type BeaconBlockGloas added in v7.1.3

type BeaconBlockGloas struct {
	Slot          string                `json:"slot"`
	ProposerIndex string                `json:"proposer_index"`
	ParentRoot    string                `json:"parent_root"`
	StateRoot     string                `json:"state_root"`
	Body          *BeaconBlockBodyGloas `json:"body"`
}

func BeaconBlockGloasFromConsensus added in v7.1.3

func BeaconBlockGloasFromConsensus(b *eth.BeaconBlockGloas) (*BeaconBlockGloas, error)

func (*BeaconBlockGloas) ToConsensus added in v7.1.3

func (b *BeaconBlockGloas) ToConsensus() (*eth.BeaconBlockGloas, error)

func (*BeaconBlockGloas) ToGeneric added in v7.1.5

func (b *BeaconBlockGloas) ToGeneric() (*eth.GenericBeaconBlock, error)

type BeaconBlockHeader

type BeaconBlockHeader struct {
	Slot          string `json:"slot"`
	ProposerIndex string `json:"proposer_index"`
	ParentRoot    string `json:"parent_root"`
	StateRoot     string `json:"state_root"`
	BodyRoot      string `json:"body_root"`
}

func BeaconBlockHeaderFromConsensus

func BeaconBlockHeaderFromConsensus(h *eth.BeaconBlockHeader) *BeaconBlockHeader

func (*BeaconBlockHeader) ToConsensus

func (h *BeaconBlockHeader) ToConsensus() (*eth.BeaconBlockHeader, error)

type BeaconCommitteeSubscription

type BeaconCommitteeSubscription struct {
	ValidatorIndex   string `json:"validator_index"`
	CommitteeIndex   string `json:"committee_index"`
	CommitteesAtSlot string `json:"committees_at_slot"`
	Slot             string `json:"slot"`
	IsAggregator     bool   `json:"is_aggregator"`
}

func (*BeaconCommitteeSubscription) ToConsensus

type BeaconState

type BeaconState struct {
	GenesisTime                 string                `json:"genesis_time"`
	GenesisValidatorsRoot       string                `json:"genesis_validators_root"`
	Slot                        string                `json:"slot"`
	Fork                        *Fork                 `json:"fork"`
	LatestBlockHeader           *BeaconBlockHeader    `json:"latest_block_header"`
	BlockRoots                  []string              `json:"block_roots"`
	StateRoots                  []string              `json:"state_roots"`
	HistoricalRoots             []string              `json:"historical_roots"`
	Eth1Data                    *Eth1Data             `json:"eth1_data"`
	Eth1DataVotes               []*Eth1Data           `json:"eth1_data_votes"`
	Eth1DepositIndex            string                `json:"eth1_deposit_index"`
	Validators                  []*Validator          `json:"validators"`
	Balances                    []string              `json:"balances"`
	RandaoMixes                 []string              `json:"randao_mixes"`
	Slashings                   []string              `json:"slashings"`
	PreviousEpochAttestations   []*PendingAttestation `json:"previous_epoch_attestations"`
	CurrentEpochAttestations    []*PendingAttestation `json:"current_epoch_attestations"`
	JustificationBits           string                `json:"justification_bits"`
	PreviousJustifiedCheckpoint *Checkpoint           `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint  *Checkpoint           `json:"current_justified_checkpoint"`
	FinalizedCheckpoint         *Checkpoint           `json:"finalized_checkpoint"`
}

func BeaconStateFromConsensus

func BeaconStateFromConsensus(st beaconState.BeaconState) (*BeaconState, error)

type BeaconStateAltair

type BeaconStateAltair struct {
	GenesisTime                 string             `json:"genesis_time"`
	GenesisValidatorsRoot       string             `json:"genesis_validators_root"`
	Slot                        string             `json:"slot"`
	Fork                        *Fork              `json:"fork"`
	LatestBlockHeader           *BeaconBlockHeader `json:"latest_block_header"`
	BlockRoots                  []string           `json:"block_roots"`
	StateRoots                  []string           `json:"state_roots"`
	HistoricalRoots             []string           `json:"historical_roots"`
	Eth1Data                    *Eth1Data          `json:"eth1_data"`
	Eth1DataVotes               []*Eth1Data        `json:"eth1_data_votes"`
	Eth1DepositIndex            string             `json:"eth1_deposit_index"`
	Validators                  []*Validator       `json:"validators"`
	Balances                    []string           `json:"balances"`
	RandaoMixes                 []string           `json:"randao_mixes"`
	Slashings                   []string           `json:"slashings"`
	PreviousEpochParticipation  []string           `json:"previous_epoch_participation"`
	CurrentEpochParticipation   []string           `json:"current_epoch_participation"`
	JustificationBits           string             `json:"justification_bits"`
	PreviousJustifiedCheckpoint *Checkpoint        `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint  *Checkpoint        `json:"current_justified_checkpoint"`
	FinalizedCheckpoint         *Checkpoint        `json:"finalized_checkpoint"`
	InactivityScores            []string           `json:"inactivity_scores"`
	CurrentSyncCommittee        *SyncCommittee     `json:"current_sync_committee"`
	NextSyncCommittee           *SyncCommittee     `json:"next_sync_committee"`
}

func BeaconStateAltairFromConsensus

func BeaconStateAltairFromConsensus(st beaconState.BeaconState) (*BeaconStateAltair, error)

type BeaconStateBellatrix

type BeaconStateBellatrix struct {
	GenesisTime                  string                  `json:"genesis_time"`
	GenesisValidatorsRoot        string                  `json:"genesis_validators_root"`
	Slot                         string                  `json:"slot"`
	Fork                         *Fork                   `json:"fork"`
	LatestBlockHeader            *BeaconBlockHeader      `json:"latest_block_header"`
	BlockRoots                   []string                `json:"block_roots"`
	StateRoots                   []string                `json:"state_roots"`
	HistoricalRoots              []string                `json:"historical_roots"`
	Eth1Data                     *Eth1Data               `json:"eth1_data"`
	Eth1DataVotes                []*Eth1Data             `json:"eth1_data_votes"`
	Eth1DepositIndex             string                  `json:"eth1_deposit_index"`
	Validators                   []*Validator            `json:"validators"`
	Balances                     []string                `json:"balances"`
	RandaoMixes                  []string                `json:"randao_mixes"`
	Slashings                    []string                `json:"slashings"`
	PreviousEpochParticipation   []string                `json:"previous_epoch_participation"`
	CurrentEpochParticipation    []string                `json:"current_epoch_participation"`
	JustificationBits            string                  `json:"justification_bits"`
	PreviousJustifiedCheckpoint  *Checkpoint             `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint   *Checkpoint             `json:"current_justified_checkpoint"`
	FinalizedCheckpoint          *Checkpoint             `json:"finalized_checkpoint"`
	InactivityScores             []string                `json:"inactivity_scores"`
	CurrentSyncCommittee         *SyncCommittee          `json:"current_sync_committee"`
	NextSyncCommittee            *SyncCommittee          `json:"next_sync_committee"`
	LatestExecutionPayloadHeader *ExecutionPayloadHeader `json:"latest_execution_payload_header"`
}

func BeaconStateBellatrixFromConsensus

func BeaconStateBellatrixFromConsensus(st beaconState.BeaconState) (*BeaconStateBellatrix, error)

type BeaconStateCapella

type BeaconStateCapella struct {
	GenesisTime                  string                         `json:"genesis_time"`
	GenesisValidatorsRoot        string                         `json:"genesis_validators_root"`
	Slot                         string                         `json:"slot"`
	Fork                         *Fork                          `json:"fork"`
	LatestBlockHeader            *BeaconBlockHeader             `json:"latest_block_header"`
	BlockRoots                   []string                       `json:"block_roots"`
	StateRoots                   []string                       `json:"state_roots"`
	HistoricalRoots              []string                       `json:"historical_roots"`
	Eth1Data                     *Eth1Data                      `json:"eth1_data"`
	Eth1DataVotes                []*Eth1Data                    `json:"eth1_data_votes"`
	Eth1DepositIndex             string                         `json:"eth1_deposit_index"`
	Validators                   []*Validator                   `json:"validators"`
	Balances                     []string                       `json:"balances"`
	RandaoMixes                  []string                       `json:"randao_mixes"`
	Slashings                    []string                       `json:"slashings"`
	PreviousEpochParticipation   []string                       `json:"previous_epoch_participation"`
	CurrentEpochParticipation    []string                       `json:"current_epoch_participation"`
	JustificationBits            string                         `json:"justification_bits"`
	PreviousJustifiedCheckpoint  *Checkpoint                    `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint   *Checkpoint                    `json:"current_justified_checkpoint"`
	FinalizedCheckpoint          *Checkpoint                    `json:"finalized_checkpoint"`
	InactivityScores             []string                       `json:"inactivity_scores"`
	CurrentSyncCommittee         *SyncCommittee                 `json:"current_sync_committee"`
	NextSyncCommittee            *SyncCommittee                 `json:"next_sync_committee"`
	LatestExecutionPayloadHeader *ExecutionPayloadHeaderCapella `json:"latest_execution_payload_header"`
	NextWithdrawalIndex          string                         `json:"next_withdrawal_index"`
	NextWithdrawalValidatorIndex string                         `json:"next_withdrawal_validator_index"`
	HistoricalSummaries          []*HistoricalSummary           `json:"historical_summaries"`
}

func BeaconStateCapellaFromConsensus

func BeaconStateCapellaFromConsensus(st beaconState.BeaconState) (*BeaconStateCapella, error)

type BeaconStateDeneb

type BeaconStateDeneb struct {
	GenesisTime                  string                       `json:"genesis_time"`
	GenesisValidatorsRoot        string                       `json:"genesis_validators_root"`
	Slot                         string                       `json:"slot"`
	Fork                         *Fork                        `json:"fork"`
	LatestBlockHeader            *BeaconBlockHeader           `json:"latest_block_header"`
	BlockRoots                   []string                     `json:"block_roots"`
	StateRoots                   []string                     `json:"state_roots"`
	HistoricalRoots              []string                     `json:"historical_roots"`
	Eth1Data                     *Eth1Data                    `json:"eth1_data"`
	Eth1DataVotes                []*Eth1Data                  `json:"eth1_data_votes"`
	Eth1DepositIndex             string                       `json:"eth1_deposit_index"`
	Validators                   []*Validator                 `json:"validators"`
	Balances                     []string                     `json:"balances"`
	RandaoMixes                  []string                     `json:"randao_mixes"`
	Slashings                    []string                     `json:"slashings"`
	PreviousEpochParticipation   []string                     `json:"previous_epoch_participation"`
	CurrentEpochParticipation    []string                     `json:"current_epoch_participation"`
	JustificationBits            string                       `json:"justification_bits"`
	PreviousJustifiedCheckpoint  *Checkpoint                  `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint   *Checkpoint                  `json:"current_justified_checkpoint"`
	FinalizedCheckpoint          *Checkpoint                  `json:"finalized_checkpoint"`
	InactivityScores             []string                     `json:"inactivity_scores"`
	CurrentSyncCommittee         *SyncCommittee               `json:"current_sync_committee"`
	NextSyncCommittee            *SyncCommittee               `json:"next_sync_committee"`
	LatestExecutionPayloadHeader *ExecutionPayloadHeaderDeneb `json:"latest_execution_payload_header"`
	NextWithdrawalIndex          string                       `json:"next_withdrawal_index"`
	NextWithdrawalValidatorIndex string                       `json:"next_withdrawal_validator_index"`
	HistoricalSummaries          []*HistoricalSummary         `json:"historical_summaries"`
}

func BeaconStateDenebFromConsensus

func BeaconStateDenebFromConsensus(st beaconState.BeaconState) (*BeaconStateDeneb, error)

type BeaconStateElectra

type BeaconStateElectra struct {
	GenesisTime                   string                       `json:"genesis_time"`
	GenesisValidatorsRoot         string                       `json:"genesis_validators_root"`
	Slot                          string                       `json:"slot"`
	Fork                          *Fork                        `json:"fork"`
	LatestBlockHeader             *BeaconBlockHeader           `json:"latest_block_header"`
	BlockRoots                    []string                     `json:"block_roots"`
	StateRoots                    []string                     `json:"state_roots"`
	HistoricalRoots               []string                     `json:"historical_roots"`
	Eth1Data                      *Eth1Data                    `json:"eth1_data"`
	Eth1DataVotes                 []*Eth1Data                  `json:"eth1_data_votes"`
	Eth1DepositIndex              string                       `json:"eth1_deposit_index"`
	Validators                    []*Validator                 `json:"validators"`
	Balances                      []string                     `json:"balances"`
	RandaoMixes                   []string                     `json:"randao_mixes"`
	Slashings                     []string                     `json:"slashings"`
	PreviousEpochParticipation    []string                     `json:"previous_epoch_participation"`
	CurrentEpochParticipation     []string                     `json:"current_epoch_participation"`
	JustificationBits             string                       `json:"justification_bits"`
	PreviousJustifiedCheckpoint   *Checkpoint                  `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint    *Checkpoint                  `json:"current_justified_checkpoint"`
	FinalizedCheckpoint           *Checkpoint                  `json:"finalized_checkpoint"`
	InactivityScores              []string                     `json:"inactivity_scores"`
	CurrentSyncCommittee          *SyncCommittee               `json:"current_sync_committee"`
	NextSyncCommittee             *SyncCommittee               `json:"next_sync_committee"`
	LatestExecutionPayloadHeader  *ExecutionPayloadHeaderDeneb `json:"latest_execution_payload_header"`
	NextWithdrawalIndex           string                       `json:"next_withdrawal_index"`
	NextWithdrawalValidatorIndex  string                       `json:"next_withdrawal_validator_index"`
	HistoricalSummaries           []*HistoricalSummary         `json:"historical_summaries"`
	DepositRequestsStartIndex     string                       `json:"deposit_requests_start_index"`
	DepositBalanceToConsume       string                       `json:"deposit_balance_to_consume"`
	ExitBalanceToConsume          string                       `json:"exit_balance_to_consume"`
	EarliestExitEpoch             string                       `json:"earliest_exit_epoch"`
	ConsolidationBalanceToConsume string                       `json:"consolidation_balance_to_consume"`
	EarliestConsolidationEpoch    string                       `json:"earliest_consolidation_epoch"`
	PendingDeposits               []*PendingDeposit            `json:"pending_deposits"`
	PendingPartialWithdrawals     []*PendingPartialWithdrawal  `json:"pending_partial_withdrawals"`
	PendingConsolidations         []*PendingConsolidation      `json:"pending_consolidations"`
}

func BeaconStateElectraFromConsensus

func BeaconStateElectraFromConsensus(st beaconState.BeaconState) (*BeaconStateElectra, error)

type BeaconStateFulu

type BeaconStateFulu struct {
	GenesisTime                   string                       `json:"genesis_time"`
	GenesisValidatorsRoot         string                       `json:"genesis_validators_root"`
	Slot                          string                       `json:"slot"`
	Fork                          *Fork                        `json:"fork"`
	LatestBlockHeader             *BeaconBlockHeader           `json:"latest_block_header"`
	BlockRoots                    []string                     `json:"block_roots"`
	StateRoots                    []string                     `json:"state_roots"`
	HistoricalRoots               []string                     `json:"historical_roots"`
	Eth1Data                      *Eth1Data                    `json:"eth1_data"`
	Eth1DataVotes                 []*Eth1Data                  `json:"eth1_data_votes"`
	Eth1DepositIndex              string                       `json:"eth1_deposit_index"`
	Validators                    []*Validator                 `json:"validators"`
	Balances                      []string                     `json:"balances"`
	RandaoMixes                   []string                     `json:"randao_mixes"`
	Slashings                     []string                     `json:"slashings"`
	PreviousEpochParticipation    []string                     `json:"previous_epoch_participation"`
	CurrentEpochParticipation     []string                     `json:"current_epoch_participation"`
	JustificationBits             string                       `json:"justification_bits"`
	PreviousJustifiedCheckpoint   *Checkpoint                  `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint    *Checkpoint                  `json:"current_justified_checkpoint"`
	FinalizedCheckpoint           *Checkpoint                  `json:"finalized_checkpoint"`
	InactivityScores              []string                     `json:"inactivity_scores"`
	CurrentSyncCommittee          *SyncCommittee               `json:"current_sync_committee"`
	NextSyncCommittee             *SyncCommittee               `json:"next_sync_committee"`
	LatestExecutionPayloadHeader  *ExecutionPayloadHeaderDeneb `json:"latest_execution_payload_header"`
	NextWithdrawalIndex           string                       `json:"next_withdrawal_index"`
	NextWithdrawalValidatorIndex  string                       `json:"next_withdrawal_validator_index"`
	HistoricalSummaries           []*HistoricalSummary         `json:"historical_summaries"`
	DepositRequestsStartIndex     string                       `json:"deposit_requests_start_index"`
	DepositBalanceToConsume       string                       `json:"deposit_balance_to_consume"`
	ExitBalanceToConsume          string                       `json:"exit_balance_to_consume"`
	EarliestExitEpoch             string                       `json:"earliest_exit_epoch"`
	ConsolidationBalanceToConsume string                       `json:"consolidation_balance_to_consume"`
	EarliestConsolidationEpoch    string                       `json:"earliest_consolidation_epoch"`
	PendingDeposits               []*PendingDeposit            `json:"pending_deposits"`
	PendingPartialWithdrawals     []*PendingPartialWithdrawal  `json:"pending_partial_withdrawals"`
	PendingConsolidations         []*PendingConsolidation      `json:"pending_consolidations"`
	ProposerLookahead             []string                     `json:"proposer_lookahead"`
}

func BeaconStateFuluFromConsensus

func BeaconStateFuluFromConsensus(st beaconState.BeaconState) (*BeaconStateFulu, error)

type BeaconStateGloas added in v7.1.4

type BeaconStateGloas struct {
	GenesisTime                   string                      `json:"genesis_time"`
	GenesisValidatorsRoot         string                      `json:"genesis_validators_root"`
	Slot                          string                      `json:"slot"`
	Fork                          *Fork                       `json:"fork"`
	LatestBlockHeader             *BeaconBlockHeader          `json:"latest_block_header"`
	BlockRoots                    []string                    `json:"block_roots"`
	StateRoots                    []string                    `json:"state_roots"`
	HistoricalRoots               []string                    `json:"historical_roots"`
	Eth1Data                      *Eth1Data                   `json:"eth1_data"`
	Eth1DataVotes                 []*Eth1Data                 `json:"eth1_data_votes"`
	Eth1DepositIndex              string                      `json:"eth1_deposit_index"`
	Validators                    []*Validator                `json:"validators"`
	Balances                      []string                    `json:"balances"`
	RandaoMixes                   []string                    `json:"randao_mixes"`
	Slashings                     []string                    `json:"slashings"`
	PreviousEpochParticipation    []string                    `json:"previous_epoch_participation"`
	CurrentEpochParticipation     []string                    `json:"current_epoch_participation"`
	JustificationBits             string                      `json:"justification_bits"`
	PreviousJustifiedCheckpoint   *Checkpoint                 `json:"previous_justified_checkpoint"`
	CurrentJustifiedCheckpoint    *Checkpoint                 `json:"current_justified_checkpoint"`
	FinalizedCheckpoint           *Checkpoint                 `json:"finalized_checkpoint"`
	InactivityScores              []string                    `json:"inactivity_scores"`
	CurrentSyncCommittee          *SyncCommittee              `json:"current_sync_committee"`
	NextSyncCommittee             *SyncCommittee              `json:"next_sync_committee"`
	NextWithdrawalIndex           string                      `json:"next_withdrawal_index"`
	NextWithdrawalValidatorIndex  string                      `json:"next_withdrawal_validator_index"`
	HistoricalSummaries           []*HistoricalSummary        `json:"historical_summaries"`
	DepositRequestsStartIndex     string                      `json:"deposit_requests_start_index"`
	DepositBalanceToConsume       string                      `json:"deposit_balance_to_consume"`
	ExitBalanceToConsume          string                      `json:"exit_balance_to_consume"`
	EarliestExitEpoch             string                      `json:"earliest_exit_epoch"`
	ConsolidationBalanceToConsume string                      `json:"consolidation_balance_to_consume"`
	EarliestConsolidationEpoch    string                      `json:"earliest_consolidation_epoch"`
	PendingDeposits               []*PendingDeposit           `json:"pending_deposits"`
	PendingPartialWithdrawals     []*PendingPartialWithdrawal `json:"pending_partial_withdrawals"`
	PendingConsolidations         []*PendingConsolidation     `json:"pending_consolidations"`
	ProposerLookahead             []string                    `json:"proposer_lookahead"`
	LatestExecutionPayloadBid     *ExecutionPayloadBid        `json:"latest_execution_payload_bid"`
	Builders                      []*Builder                  `json:"builders"`
	NextWithdrawalBuilderIndex    string                      `json:"next_withdrawal_builder_index"`
	ExecutionPayloadAvailability  string                      `json:"execution_payload_availability"`
	BuilderPendingPayments        []*BuilderPendingPayment    `json:"builder_pending_payments"`
	BuilderPendingWithdrawals     []*BuilderPendingWithdrawal `json:"builder_pending_withdrawals"`
	LatestBlockHash               string                      `json:"latest_block_hash"`
	PayloadExpectedWithdrawals    []*Withdrawal               `json:"payload_expected_withdrawals"`
	PtcWindow                     []*PTCs                     `json:"ptc_window"`
}

func BeaconStateGloasFromConsensus added in v7.1.4

func BeaconStateGloasFromConsensus(st beaconState.BeaconState) (*BeaconStateGloas, error)

type BlindedBeaconBlockBellatrix

type BlindedBeaconBlockBellatrix struct {
	Slot          string                           `json:"slot"`
	ProposerIndex string                           `json:"proposer_index"`
	ParentRoot    string                           `json:"parent_root"`
	StateRoot     string                           `json:"state_root"`
	Body          *BlindedBeaconBlockBodyBellatrix `json:"body"`
}

func (*BlindedBeaconBlockBellatrix) ToConsensus

func (*BlindedBeaconBlockBellatrix) ToGeneric

type BlindedBeaconBlockBodyBellatrix

type BlindedBeaconBlockBodyBellatrix struct {
	RandaoReveal           string                  `json:"randao_reveal"`
	Eth1Data               *Eth1Data               `json:"eth1_data"`
	Graffiti               string                  `json:"graffiti"`
	ProposerSlashings      []*ProposerSlashing     `json:"proposer_slashings"`
	AttesterSlashings      []*AttesterSlashing     `json:"attester_slashings"`
	Attestations           []*Attestation          `json:"attestations"`
	Deposits               []*Deposit              `json:"deposits"`
	VoluntaryExits         []*SignedVoluntaryExit  `json:"voluntary_exits"`
	SyncAggregate          *SyncAggregate          `json:"sync_aggregate"`
	ExecutionPayloadHeader *ExecutionPayloadHeader `json:"execution_payload_header"`
}

type BlindedBeaconBlockBodyCapella

type BlindedBeaconBlockBodyCapella struct {
	RandaoReveal           string                         `json:"randao_reveal"`
	Eth1Data               *Eth1Data                      `json:"eth1_data"`
	Graffiti               string                         `json:"graffiti"`
	ProposerSlashings      []*ProposerSlashing            `json:"proposer_slashings"`
	AttesterSlashings      []*AttesterSlashing            `json:"attester_slashings"`
	Attestations           []*Attestation                 `json:"attestations"`
	Deposits               []*Deposit                     `json:"deposits"`
	VoluntaryExits         []*SignedVoluntaryExit         `json:"voluntary_exits"`
	SyncAggregate          *SyncAggregate                 `json:"sync_aggregate"`
	ExecutionPayloadHeader *ExecutionPayloadHeaderCapella `json:"execution_payload_header"`
	BLSToExecutionChanges  []*SignedBLSToExecutionChange  `json:"bls_to_execution_changes"`
}

type BlindedBeaconBlockBodyDeneb

type BlindedBeaconBlockBodyDeneb struct {
	RandaoReveal           string                        `json:"randao_reveal"`
	Eth1Data               *Eth1Data                     `json:"eth1_data"`
	Graffiti               string                        `json:"graffiti"`
	ProposerSlashings      []*ProposerSlashing           `json:"proposer_slashings"`
	AttesterSlashings      []*AttesterSlashing           `json:"attester_slashings"`
	Attestations           []*Attestation                `json:"attestations"`
	Deposits               []*Deposit                    `json:"deposits"`
	VoluntaryExits         []*SignedVoluntaryExit        `json:"voluntary_exits"`
	SyncAggregate          *SyncAggregate                `json:"sync_aggregate"`
	ExecutionPayloadHeader *ExecutionPayloadHeaderDeneb  `json:"execution_payload_header"`
	BLSToExecutionChanges  []*SignedBLSToExecutionChange `json:"bls_to_execution_changes"`
	BlobKzgCommitments     []string                      `json:"blob_kzg_commitments"`
}

type BlindedBeaconBlockBodyElectra

type BlindedBeaconBlockBodyElectra struct {
	RandaoReveal           string                        `json:"randao_reveal"`
	Eth1Data               *Eth1Data                     `json:"eth1_data"`
	Graffiti               string                        `json:"graffiti"`
	ProposerSlashings      []*ProposerSlashing           `json:"proposer_slashings"`
	AttesterSlashings      []*AttesterSlashingElectra    `json:"attester_slashings"`
	Attestations           []*AttestationElectra         `json:"attestations"`
	Deposits               []*Deposit                    `json:"deposits"`
	VoluntaryExits         []*SignedVoluntaryExit        `json:"voluntary_exits"`
	SyncAggregate          *SyncAggregate                `json:"sync_aggregate"`
	ExecutionPayloadHeader *ExecutionPayloadHeaderDeneb  `json:"execution_payload_header"`
	BLSToExecutionChanges  []*SignedBLSToExecutionChange `json:"bls_to_execution_changes"`
	BlobKzgCommitments     []string                      `json:"blob_kzg_commitments"`
	ExecutionRequests      *ExecutionRequests            `json:"execution_requests"`
}

type BlindedBeaconBlockCapella

type BlindedBeaconBlockCapella struct {
	Slot          string                         `json:"slot"`
	ProposerIndex string                         `json:"proposer_index"`
	ParentRoot    string                         `json:"parent_root"`
	StateRoot     string                         `json:"state_root"`
	Body          *BlindedBeaconBlockBodyCapella `json:"body"`
}

func (*BlindedBeaconBlockCapella) ToConsensus

func (*BlindedBeaconBlockCapella) ToGeneric

type BlindedBeaconBlockDeneb

type BlindedBeaconBlockDeneb struct {
	Slot          string                       `json:"slot"`
	ProposerIndex string                       `json:"proposer_index"`
	ParentRoot    string                       `json:"parent_root"`
	StateRoot     string                       `json:"state_root"`
	Body          *BlindedBeaconBlockBodyDeneb `json:"body"`
}

func BlindedBeaconBlockDenebFromConsensus

func BlindedBeaconBlockDenebFromConsensus(b *eth.BlindedBeaconBlockDeneb) (*BlindedBeaconBlockDeneb, error)

func (*BlindedBeaconBlockDeneb) ToConsensus

func (*BlindedBeaconBlockDeneb) ToGeneric

type BlindedBeaconBlockElectra

type BlindedBeaconBlockElectra struct {
	Slot          string                         `json:"slot"`
	ProposerIndex string                         `json:"proposer_index"`
	ParentRoot    string                         `json:"parent_root"`
	StateRoot     string                         `json:"state_root"`
	Body          *BlindedBeaconBlockBodyElectra `json:"body"`
}

func (*BlindedBeaconBlockElectra) ToConsensus

func (*BlindedBeaconBlockElectra) ToGeneric

type BlindedBeaconBlockFulu

type BlindedBeaconBlockFulu struct {
	Slot          string                         `json:"slot"`
	ProposerIndex string                         `json:"proposer_index"`
	ParentRoot    string                         `json:"parent_root"`
	StateRoot     string                         `json:"state_root"`
	Body          *BlindedBeaconBlockBodyElectra `json:"body"`
}

func BlindedBeaconBlockFuluFromConsensus

func BlindedBeaconBlockFuluFromConsensus(b *eth.BlindedBeaconBlockFulu) (*BlindedBeaconBlockFulu, error)

func (*BlindedBeaconBlockFulu) ToConsensus

func (*BlindedBeaconBlockFulu) ToGeneric

type BlindedExecutionPayloadEnvelope added in v7.1.5

type BlindedExecutionPayloadEnvelope struct {
	PayloadRoot           string                  `json:"payload_root"`
	ExecutionRequests     *ExecutionRequestsGloas `json:"execution_requests"`
	BuilderIndex          string                  `json:"builder_index"`
	BeaconBlockRoot       string                  `json:"beacon_block_root"`
	ParentBeaconBlockRoot string                  `json:"parent_beacon_block_root"`
}

BlindedExecutionPayloadEnvelope replaces the full payload with payload_root so its HTR matches the full envelope.

func BlindedExecutionPayloadEnvelopeFromConsensus added in v7.1.5

func BlindedExecutionPayloadEnvelopeFromConsensus(b *eth.WireBlindedExecutionPayloadEnvelope) (*BlindedExecutionPayloadEnvelope, error)

func (*BlindedExecutionPayloadEnvelope) ToConsensus added in v7.1.5

type BlobSidecarEvent

type BlobSidecarEvent struct {
	BlockRoot     string `json:"block_root"`
	Index         string `json:"index"`
	Slot          string `json:"slot"`
	KzgCommitment string `json:"kzg_commitment"`
	VersionedHash string `json:"versioned_hash"`
}

type BlobSidecars

type BlobSidecars struct {
	Sidecars []*Sidecar `json:"sidecars"`
}

type BlockContentsGloas added in v7.1.5

type BlockContentsGloas struct {
	Block                    *BeaconBlockGloas         `json:"block"`
	ExecutionPayloadEnvelope *ExecutionPayloadEnvelope `json:"execution_payload_envelope"`
	KzgProofs                []string                  `json:"kzg_proofs"`
	Blobs                    []string                  `json:"blobs"`
}

func BlockContentsGloasFromConsensus added in v7.1.5

func BlockContentsGloasFromConsensus(block *eth.BeaconBlockGloas, envelope *eth.ExecutionPayloadEnvelope, kzgProofs [][]byte, blobs [][]byte) (*BlockContentsGloas, error)

BlockContentsGloasFromConsensus converts a proto Gloas block, envelope, and blob data to the API struct.

type BlockEvent

type BlockEvent struct {
	Slot                string `json:"slot"`
	Block               string `json:"block"`
	ExecutionOptimistic bool   `json:"execution_optimistic"`
}

type BlockGossipEvent

type BlockGossipEvent struct {
	Slot  string `json:"slot"`
	Block string `json:"block"`
}

type BlockRewards

type BlockRewards struct {
	ProposerIndex     string `json:"proposer_index"`
	Total             string `json:"total"`
	Attestations      string `json:"attestations"`
	SyncAggregate     string `json:"sync_aggregate"`
	ProposerSlashings string `json:"proposer_slashings"`
	AttesterSlashings string `json:"attester_slashings"`
}

type BlockRewardsResponse

type BlockRewardsResponse struct {
	Data                *BlockRewards `json:"data"`
	ExecutionOptimistic bool          `json:"execution_optimistic"`
	Finalized           bool          `json:"finalized"`
}

type BlockRoot

type BlockRoot struct {
	Root string `json:"root"`
}

type BlockRootResponse

type BlockRootResponse struct {
	Data                *BlockRoot `json:"data"`
	ExecutionOptimistic bool       `json:"execution_optimistic"`
	Finalized           bool       `json:"finalized"`
}

type Builder added in v7.1.4

type Builder struct {
	Pubkey            string `json:"pubkey"`
	Version           string `json:"version"`
	ExecutionAddress  string `json:"execution_address"`
	Balance           string `json:"balance"`
	DepositEpoch      string `json:"deposit_epoch"`
	WithdrawableEpoch string `json:"withdrawable_epoch"`
}

func BuilderFromConsensus added in v7.1.4

func BuilderFromConsensus(b *ethpb.Builder) *Builder

func BuildersFromConsensus added in v7.1.4

func BuildersFromConsensus(builders []*ethpb.Builder) []*Builder

type BuilderDepositRequest added in v7.1.6

type BuilderDepositRequest struct {
	Pubkey                string `json:"pubkey"`
	WithdrawalCredentials string `json:"withdrawal_credentials"`
	Amount                string `json:"amount"`
	Signature             string `json:"signature"`
}

func BuilderDepositRequestsFromConsensus added in v7.1.6

func BuilderDepositRequestsFromConsensus(bs []*enginev1.BuilderDepositRequest) []*BuilderDepositRequest

func (*BuilderDepositRequest) ToConsensus added in v7.1.6

type BuilderExitRequest added in v7.1.6

type BuilderExitRequest struct {
	SourceAddress string `json:"source_address"`
	Pubkey        string `json:"pubkey"`
}

func BuilderExitRequestsFromConsensus added in v7.1.6

func BuilderExitRequestsFromConsensus(bs []*enginev1.BuilderExitRequest) []*BuilderExitRequest

func (*BuilderExitRequest) ToConsensus added in v7.1.6

func (b *BuilderExitRequest) ToConsensus() (*enginev1.BuilderExitRequest, error)

type BuilderPendingPayment added in v7.1.4

type BuilderPendingPayment struct {
	Weight        string                    `json:"weight"`
	Withdrawal    *BuilderPendingWithdrawal `json:"withdrawal"`
	ProposerIndex string                    `json:"proposer_index"`
}

func BuilderPendingPaymentFromConsensus added in v7.1.4

func BuilderPendingPaymentFromConsensus(p *ethpb.BuilderPendingPayment) *BuilderPendingPayment

func BuilderPendingPaymentsFromConsensus added in v7.1.4

func BuilderPendingPaymentsFromConsensus(payments []*ethpb.BuilderPendingPayment) []*BuilderPendingPayment

type BuilderPendingWithdrawal added in v7.1.4

type BuilderPendingWithdrawal struct {
	FeeRecipient string `json:"fee_recipient"`
	Amount       string `json:"amount"`
	BuilderIndex string `json:"builder_index"`
}

func BuilderPendingWithdrawalFromConsensus added in v7.1.4

func BuilderPendingWithdrawalFromConsensus(w *ethpb.BuilderPendingWithdrawal) *BuilderPendingWithdrawal

func BuilderPendingWithdrawalsFromConsensus added in v7.1.4

func BuilderPendingWithdrawalsFromConsensus(withdrawals []*ethpb.BuilderPendingWithdrawal) []*BuilderPendingWithdrawal

type ChainHead

type ChainHead struct {
	HeadSlot                   string `json:"head_slot"`
	HeadEpoch                  string `json:"head_epoch"`
	HeadBlockRoot              string `json:"head_block_root"`
	FinalizedSlot              string `json:"finalized_slot"`
	FinalizedEpoch             string `json:"finalized_epoch"`
	FinalizedBlockRoot         string `json:"finalized_block_root"`
	JustifiedSlot              string `json:"justified_slot"`
	JustifiedEpoch             string `json:"justified_epoch"`
	JustifiedBlockRoot         string `json:"justified_block_root"`
	PreviousJustifiedSlot      string `json:"previous_justified_slot"`
	PreviousJustifiedEpoch     string `json:"previous_justified_epoch"`
	PreviousJustifiedBlockRoot string `json:"previous_justified_block_root"`
	OptimisticStatus           bool   `json:"optimistic_status"`
}

type ChainReorgEvent

type ChainReorgEvent struct {
	Slot                string `json:"slot"`
	Depth               string `json:"depth"`
	OldHeadBlock        string `json:"old_head_block"`
	NewHeadBlock        string `json:"new_head_block"`
	OldHeadState        string `json:"old_head_state"`
	NewHeadState        string `json:"new_head_state"`
	Epoch               string `json:"epoch"`
	ExecutionOptimistic bool   `json:"execution_optimistic"`
}

func EventChainReorgFromV1

func EventChainReorgFromV1(event *ethv1.EventChainReorg) *ChainReorgEvent

type Checkpoint

type Checkpoint struct {
	Epoch string `json:"epoch"`
	Root  string `json:"root"`
}

func CheckpointFromConsensus

func CheckpointFromConsensus(c *eth.Checkpoint) *Checkpoint

func (*Checkpoint) ToConsensus

func (c *Checkpoint) ToConsensus() (*eth.Checkpoint, error)

type ClientVersionV1 added in v7.1.4

type ClientVersionV1 struct {
	Code    string `json:"code"`
	Name    string `json:"name"`
	Version string `json:"version"`
	Commit  string `json:"commit"`
}

type Committee

type Committee struct {
	Index      string   `json:"index"`
	Slot       string   `json:"slot"`
	Validators []string `json:"validators"`
}

type ConsolidationRequest

type ConsolidationRequest struct {
	SourceAddress string `json:"source_address"`
	SourcePubkey  string `json:"source_pubkey"`
	TargetPubkey  string `json:"target_pubkey"`
}

func ConsolidationRequestsFromConsensus

func ConsolidationRequestsFromConsensus(cs []*enginev1.ConsolidationRequest) []*ConsolidationRequest

func (*ConsolidationRequest) ToConsensus

type ContributionAndProof

type ContributionAndProof struct {
	AggregatorIndex string                     `json:"aggregator_index"`
	Contribution    *SyncCommitteeContribution `json:"contribution"`
	SelectionProof  string                     `json:"selection_proof"`
}

func ContributionAndProofFromConsensus

func ContributionAndProofFromConsensus(c *eth.ContributionAndProof) *ContributionAndProof

func (*ContributionAndProof) ToConsensus

func (c *ContributionAndProof) ToConsensus() (*eth.ContributionAndProof, error)

type DataColumnGossipEvent

type DataColumnGossipEvent struct {
	Slot           string   `json:"slot"`
	Index          string   `json:"index"`
	BlockRoot      string   `json:"block_root"`
	KzgCommitments []string `json:"kzg_commitments"`
}

type DataColumnSidecar

type DataColumnSidecar struct {
	Index                        string                   `json:"index"`
	Column                       []string                 `json:"column"`
	KzgCommitments               []string                 `json:"kzg_commitments"`
	KzgProofs                    []string                 `json:"kzg_proofs"`
	SignedBeaconBlockHeader      *SignedBeaconBlockHeader `json:"signed_block_header"`
	KzgCommitmentsInclusionProof []string                 `json:"kzg_commitments_inclusion_proof"`
}

type DataColumnSidecarGloas added in v7.1.5

type DataColumnSidecarGloas struct {
	Index           string   `json:"index"`
	Column          []string `json:"column"`
	KzgProofs       []string `json:"kzg_proofs"`
	Slot            string   `json:"slot"`
	BeaconBlockRoot string   `json:"beacon_block_root"`
}

type Deposit

type Deposit struct {
	Proof []string     `json:"proof"`
	Data  *DepositData `json:"data"`
}

func DepositsFromConsensus

func DepositsFromConsensus(src []*eth.Deposit) []*Deposit

type DepositContractData

type DepositContractData struct {
	ChainId string `json:"chain_id"`
	Address string `json:"address"`
}

type DepositData

type DepositData struct {
	Pubkey                string `json:"pubkey"`
	WithdrawalCredentials string `json:"withdrawal_credentials"`
	Amount                string `json:"amount"`
	Signature             string `json:"signature"`
}

type DepositRequest

type DepositRequest struct {
	Pubkey                string `json:"pubkey"`
	WithdrawalCredentials string `json:"withdrawal_credentials"`
	Amount                string `json:"amount"`
	Signature             string `json:"signature"`
	Index                 string `json:"index"`
}

func DepositRequestFromConsensus

func DepositRequestFromConsensus(d *enginev1.DepositRequest) *DepositRequest

func DepositRequestsFromConsensus

func DepositRequestsFromConsensus(ds []*enginev1.DepositRequest) []*DepositRequest

func (*DepositRequest) ToConsensus

func (d *DepositRequest) ToConsensus() (*enginev1.DepositRequest, error)

type Eth1Data

type Eth1Data struct {
	DepositRoot  string `json:"deposit_root"`
	DepositCount string `json:"deposit_count"`
	BlockHash    string `json:"block_hash"`
}

func Eth1DataFromConsensus

func Eth1DataFromConsensus(e1d *eth.Eth1Data) *Eth1Data

type ExecutionPayload

type ExecutionPayload struct {
	ParentHash    string   `json:"parent_hash"`
	FeeRecipient  string   `json:"fee_recipient"`
	StateRoot     string   `json:"state_root"`
	ReceiptsRoot  string   `json:"receipts_root"`
	LogsBloom     string   `json:"logs_bloom"`
	PrevRandao    string   `json:"prev_randao"`
	BlockNumber   string   `json:"block_number"`
	GasLimit      string   `json:"gas_limit"`
	GasUsed       string   `json:"gas_used"`
	Timestamp     string   `json:"timestamp"`
	ExtraData     string   `json:"extra_data"`
	BaseFeePerGas string   `json:"base_fee_per_gas"`
	BlockHash     string   `json:"block_hash"`
	Transactions  []string `json:"transactions"`
}

func ExecutionPayloadFromConsensus

func ExecutionPayloadFromConsensus(payload *enginev1.ExecutionPayload) (*ExecutionPayload, error)

func (*ExecutionPayload) PayloadProto

func (r *ExecutionPayload) PayloadProto() (proto.Message, error)

func (*ExecutionPayload) ToConsensus

func (e *ExecutionPayload) ToConsensus() (*enginev1.ExecutionPayload, error)

type ExecutionPayloadAvailableEvent added in v7.1.5

type ExecutionPayloadAvailableEvent struct {
	Slot      string `json:"slot"`
	BlockRoot string `json:"block_root"`
}

type ExecutionPayloadBid added in v7.1.3

type ExecutionPayloadBid struct {
	ParentBlockHash       string   `json:"parent_block_hash"`
	ParentBlockRoot       string   `json:"parent_block_root"`
	BlockHash             string   `json:"block_hash"`
	PrevRandao            string   `json:"prev_randao"`
	FeeRecipient          string   `json:"fee_recipient"`
	GasLimit              string   `json:"gas_limit"`
	BuilderIndex          string   `json:"builder_index"`
	Slot                  string   `json:"slot"`
	Value                 string   `json:"value"`
	ExecutionPayment      string   `json:"execution_payment"`
	BlobKzgCommitments    []string `json:"blob_kzg_commitments"`
	ExecutionRequestsRoot string   `json:"execution_requests_root"`
}

func ExecutionPayloadBidFromConsensus added in v7.1.3

func ExecutionPayloadBidFromConsensus(b *eth.ExecutionPayloadBid) *ExecutionPayloadBid

func ROExecutionPayloadBidFromConsensus added in v7.1.4

func ROExecutionPayloadBidFromConsensus(b interfaces.ROExecutionPayloadBid) *ExecutionPayloadBid

func (*ExecutionPayloadBid) ToConsensus added in v7.1.3

func (b *ExecutionPayloadBid) ToConsensus() (*eth.ExecutionPayloadBid, error)

type ExecutionPayloadBidEvent added in v7.1.6

type ExecutionPayloadBidEvent struct {
	Version string                     `json:"version"`
	Data    *SignedExecutionPayloadBid `json:"data"`
}

type ExecutionPayloadCapella

type ExecutionPayloadCapella struct {
	ParentHash    string        `json:"parent_hash"`
	FeeRecipient  string        `json:"fee_recipient"`
	StateRoot     string        `json:"state_root"`
	ReceiptsRoot  string        `json:"receipts_root"`
	LogsBloom     string        `json:"logs_bloom"`
	PrevRandao    string        `json:"prev_randao"`
	BlockNumber   string        `json:"block_number"`
	GasLimit      string        `json:"gas_limit"`
	GasUsed       string        `json:"gas_used"`
	Timestamp     string        `json:"timestamp"`
	ExtraData     string        `json:"extra_data"`
	BaseFeePerGas string        `json:"base_fee_per_gas"`
	BlockHash     string        `json:"block_hash"`
	Transactions  []string      `json:"transactions"`
	Withdrawals   []*Withdrawal `json:"withdrawals"`
}

func ExecutionPayloadCapellaFromConsensus

func ExecutionPayloadCapellaFromConsensus(payload *enginev1.ExecutionPayloadCapella) (*ExecutionPayloadCapella, error)

func (*ExecutionPayloadCapella) PayloadProto

func (p *ExecutionPayloadCapella) PayloadProto() (proto.Message, error)

func (*ExecutionPayloadCapella) ToConsensus

type ExecutionPayloadDeneb

type ExecutionPayloadDeneb struct {
	ParentHash    string        `json:"parent_hash"`
	FeeRecipient  string        `json:"fee_recipient"`
	StateRoot     string        `json:"state_root"`
	ReceiptsRoot  string        `json:"receipts_root"`
	LogsBloom     string        `json:"logs_bloom"`
	PrevRandao    string        `json:"prev_randao"`
	BlockNumber   string        `json:"block_number"`
	GasLimit      string        `json:"gas_limit"`
	GasUsed       string        `json:"gas_used"`
	Timestamp     string        `json:"timestamp"`
	ExtraData     string        `json:"extra_data"`
	BaseFeePerGas string        `json:"base_fee_per_gas"`
	BlockHash     string        `json:"block_hash"`
	Transactions  []string      `json:"transactions"`
	Withdrawals   []*Withdrawal `json:"withdrawals"`
	BlobGasUsed   string        `json:"blob_gas_used"`
	ExcessBlobGas string        `json:"excess_blob_gas"`
}

func ExecutionPayloadDenebFromConsensus

func ExecutionPayloadDenebFromConsensus(payload *enginev1.ExecutionPayloadDeneb) (*ExecutionPayloadDeneb, error)

func (*ExecutionPayloadDeneb) ToConsensus

type ExecutionPayloadEnvelope added in v7.1.4

type ExecutionPayloadEnvelope struct {
	Payload               *ExecutionPayloadGloas  `json:"payload"`
	ExecutionRequests     *ExecutionRequestsGloas `json:"execution_requests"`
	BuilderIndex          string                  `json:"builder_index"`
	BeaconBlockRoot       string                  `json:"beacon_block_root"`
	ParentBeaconBlockRoot string                  `json:"parent_beacon_block_root"`
}

func ExecutionPayloadEnvelopeFromConsensus added in v7.1.5

func ExecutionPayloadEnvelopeFromConsensus(e *eth.ExecutionPayloadEnvelope) (*ExecutionPayloadEnvelope, error)

ExecutionPayloadEnvelopeFromConsensus converts a proto envelope to the API struct.

func (*ExecutionPayloadEnvelope) ToConsensus added in v7.1.5

ToConsensus converts the API struct to a proto ExecutionPayloadEnvelope.

type ExecutionPayloadEvent added in v7.1.5

type ExecutionPayloadEvent struct {
	Slot                string `json:"slot"`
	BuilderIndex        string `json:"builder_index"`
	BlockHash           string `json:"block_hash"`
	BlockRoot           string `json:"block_root"`
	ExecutionOptimistic bool   `json:"execution_optimistic"`
}

type ExecutionPayloadGloas added in v7.1.5

type ExecutionPayloadGloas struct {
	ParentHash      string        `json:"parent_hash"`
	FeeRecipient    string        `json:"fee_recipient"`
	StateRoot       string        `json:"state_root"`
	ReceiptsRoot    string        `json:"receipts_root"`
	LogsBloom       string        `json:"logs_bloom"`
	PrevRandao      string        `json:"prev_randao"`
	BlockNumber     string        `json:"block_number"`
	GasLimit        string        `json:"gas_limit"`
	GasUsed         string        `json:"gas_used"`
	Timestamp       string        `json:"timestamp"`
	ExtraData       string        `json:"extra_data"`
	BaseFeePerGas   string        `json:"base_fee_per_gas"`
	BlockHash       string        `json:"block_hash"`
	Transactions    []string      `json:"transactions"`
	Withdrawals     []*Withdrawal `json:"withdrawals"`
	BlobGasUsed     string        `json:"blob_gas_used"`
	ExcessBlobGas   string        `json:"excess_blob_gas"`
	BlockAccessList string        `json:"block_access_list"`
	SlotNumber      string        `json:"slot_number"`
}

func ExecutionPayloadGloasFromConsensus added in v7.1.5

func ExecutionPayloadGloasFromConsensus(payload *enginev1.ExecutionPayloadGloas) (*ExecutionPayloadGloas, error)

func (*ExecutionPayloadGloas) ToConsensus added in v7.1.5

type ExecutionPayloadGossipEvent added in v7.1.5

type ExecutionPayloadGossipEvent struct {
	Slot         string `json:"slot"`
	BuilderIndex string `json:"builder_index"`
	BlockHash    string `json:"block_hash"`
	BlockRoot    string `json:"block_root"`
}

type ExecutionPayloadHeader

type ExecutionPayloadHeader struct {
	ParentHash       string `json:"parent_hash"`
	FeeRecipient     string `json:"fee_recipient"`
	StateRoot        string `json:"state_root"`
	ReceiptsRoot     string `json:"receipts_root"`
	LogsBloom        string `json:"logs_bloom"`
	PrevRandao       string `json:"prev_randao"`
	BlockNumber      string `json:"block_number"`
	GasLimit         string `json:"gas_limit"`
	GasUsed          string `json:"gas_used"`
	Timestamp        string `json:"timestamp"`
	ExtraData        string `json:"extra_data"`
	BaseFeePerGas    string `json:"base_fee_per_gas"`
	BlockHash        string `json:"block_hash"`
	TransactionsRoot string `json:"transactions_root"`
}

func ExecutionPayloadHeaderFromConsensus

func ExecutionPayloadHeaderFromConsensus(payload *enginev1.ExecutionPayloadHeader) (*ExecutionPayloadHeader, error)

func (*ExecutionPayloadHeader) ToConsensus

type ExecutionPayloadHeaderCapella

type ExecutionPayloadHeaderCapella struct {
	ParentHash       string `json:"parent_hash"`
	FeeRecipient     string `json:"fee_recipient"`
	StateRoot        string `json:"state_root"`
	ReceiptsRoot     string `json:"receipts_root"`
	LogsBloom        string `json:"logs_bloom"`
	PrevRandao       string `json:"prev_randao"`
	BlockNumber      string `json:"block_number"`
	GasLimit         string `json:"gas_limit"`
	GasUsed          string `json:"gas_used"`
	Timestamp        string `json:"timestamp"`
	ExtraData        string `json:"extra_data"`
	BaseFeePerGas    string `json:"base_fee_per_gas"`
	BlockHash        string `json:"block_hash"`
	TransactionsRoot string `json:"transactions_root"`
	WithdrawalsRoot  string `json:"withdrawals_root"`
}

func (*ExecutionPayloadHeaderCapella) ToConsensus

type ExecutionPayloadHeaderDeneb

type ExecutionPayloadHeaderDeneb struct {
	ParentHash       string `json:"parent_hash"`
	FeeRecipient     string `json:"fee_recipient"`
	StateRoot        string `json:"state_root"`
	ReceiptsRoot     string `json:"receipts_root"`
	LogsBloom        string `json:"logs_bloom"`
	PrevRandao       string `json:"prev_randao"`
	BlockNumber      string `json:"block_number"`
	GasLimit         string `json:"gas_limit"`
	GasUsed          string `json:"gas_used"`
	Timestamp        string `json:"timestamp"`
	ExtraData        string `json:"extra_data"`
	BaseFeePerGas    string `json:"base_fee_per_gas"`
	BlockHash        string `json:"block_hash"`
	TransactionsRoot string `json:"transactions_root"`
	WithdrawalsRoot  string `json:"withdrawals_root"`
	BlobGasUsed      string `json:"blob_gas_used"`
	ExcessBlobGas    string `json:"excess_blob_gas"`
}

func (*ExecutionPayloadHeaderDeneb) ToConsensus

type ExecutionRequests

type ExecutionRequests struct {
	Deposits       []*DepositRequest       `json:"deposits"`
	Withdrawals    []*WithdrawalRequest    `json:"withdrawals"`
	Consolidations []*ConsolidationRequest `json:"consolidations"`
}

func ExecutionRequestsFromConsensus

func ExecutionRequestsFromConsensus(er *enginev1.ExecutionRequests) *ExecutionRequests

func (*ExecutionRequests) ToConsensus

func (e *ExecutionRequests) ToConsensus() (*enginev1.ExecutionRequests, error)

type ExecutionRequestsGloas added in v7.1.6

type ExecutionRequestsGloas struct {
	Deposits        []*DepositRequest        `json:"deposits"`
	Withdrawals     []*WithdrawalRequest     `json:"withdrawals"`
	Consolidations  []*ConsolidationRequest  `json:"consolidations"`
	BuilderDeposits []*BuilderDepositRequest `json:"builder_deposits"`
	BuilderExits    []*BuilderExitRequest    `json:"builder_exits"`
}

ExecutionRequestsGloas extends ExecutionRequests with builder deposit and exit requests, new in Gloas (EIP-8282).

func ExecutionRequestsGloasFromConsensus added in v7.1.6

func ExecutionRequestsGloasFromConsensus(er *enginev1.ExecutionRequestsGloas) *ExecutionRequestsGloas

func (*ExecutionRequestsGloas) ToConsensus added in v7.1.6

type FeeRecipient

type FeeRecipient struct {
	ValidatorIndex string `json:"validator_index"`
	FeeRecipient   string `json:"fee_recipient"`
}

type FinalityCheckpoints

type FinalityCheckpoints struct {
	PreviousJustified *Checkpoint `json:"previous_justified"`
	CurrentJustified  *Checkpoint `json:"current_justified"`
	Finalized         *Checkpoint `json:"finalized"`
}

type FinalizedCheckpointEvent

type FinalizedCheckpointEvent struct {
	Block               string `json:"block"`
	State               string `json:"state"`
	Epoch               string `json:"epoch"`
	ExecutionOptimistic bool   `json:"execution_optimistic"`
}

type Fork

type Fork struct {
	PreviousVersion string `json:"previous_version"`
	CurrentVersion  string `json:"current_version"`
	Epoch           string `json:"epoch"`
}

func ForkFromConsensus

func ForkFromConsensus(f *eth.Fork) *Fork

func (*Fork) ToConsensus

func (s *Fork) ToConsensus() (*eth.Fork, error)

type ForkChoiceDumpExtraData

type ForkChoiceDumpExtraData struct {
	UnrealizedJustifiedCheckpoint *Checkpoint `json:"unrealized_justified_checkpoint"`
	UnrealizedFinalizedCheckpoint *Checkpoint `json:"unrealized_finalized_checkpoint"`
	ProposerBoostRoot             string      `json:"proposer_boost_root"`
	PreviousProposerBoostRoot     string      `json:"previous_proposer_boost_root"`
	HeadRoot                      string      `json:"head_root"`
}

type ForkChoiceHead

type ForkChoiceHead struct {
	Root                string `json:"root"`
	Slot                string `json:"slot"`
	ExecutionOptimistic bool   `json:"execution_optimistic"`
}

type ForkChoiceNode

type ForkChoiceNode struct {
	Slot               string                   `json:"slot"`
	BlockRoot          string                   `json:"block_root"`
	ParentRoot         string                   `json:"parent_root"`
	JustifiedEpoch     string                   `json:"justified_epoch"`
	FinalizedEpoch     string                   `json:"finalized_epoch"`
	Weight             string                   `json:"weight"`
	Validity           string                   `json:"validity"`
	ExecutionBlockHash string                   `json:"execution_block_hash"`
	ExtraData          *ForkChoiceNodeExtraData `json:"extra_data"`
}

type ForkChoiceNodeExtraData

type ForkChoiceNodeExtraData struct {
	UnrealizedJustifiedEpoch string `json:"unrealized_justified_epoch"`
	UnrealizedFinalizedEpoch string `json:"unrealized_finalized_epoch"`
	Balance                  string `json:"balance"`
	ExecutionOptimistic      bool   `json:"execution_optimistic"`
	TimeStamp                string `json:"timestamp"`
	Target                   string `json:"target"`
}

type ForkChoiceNodeV2 added in v7.1.5

type ForkChoiceNodeV2 struct {
	PayloadStatus      string                     `json:"payload_status"`
	Slot               string                     `json:"slot"`
	BlockRoot          string                     `json:"block_root"`
	ParentRoot         string                     `json:"parent_root"`
	Weight             string                     `json:"weight"`
	Validity           string                     `json:"validity"`
	ExecutionBlockHash string                     `json:"execution_block_hash"`
	ExtraData          *ForkChoiceNodeV2ExtraData `json:"extra_data"`
}

type ForkChoiceNodeV2ExtraData added in v7.1.5

type ForkChoiceNodeV2ExtraData struct {
	Balance             string `json:"balance"`
	ExecutionOptimistic bool   `json:"execution_optimistic"`
	TimeStamp           string `json:"timestamp"`

	Target                          string `json:"target,omitempty"`
	JustifiedEpoch                  string `json:"justified_epoch,omitempty"`
	FinalizedEpoch                  string `json:"finalized_epoch,omitempty"`
	UnrealizedJustifiedEpoch        string `json:"unrealized_justified_epoch,omitempty"`
	UnrealizedFinalizedEpoch        string `json:"unrealized_finalized_epoch,omitempty"`
	PayloadAttesterCount            string `json:"payload_attester_count,omitempty"`
	PayloadAvailabilityYesCount     string `json:"payload_availability_yes_count,omitempty"`
	PayloadDataAvailabilityYesCount string `json:"payload_data_availability_yes_count,omitempty"`

	GasLimit string `json:"gas_limit,omitempty"`
}

type Genesis

type Genesis struct {
	GenesisTime           string `json:"genesis_time"`
	GenesisValidatorsRoot string `json:"genesis_validators_root"`
	GenesisForkVersion    string `json:"genesis_fork_version"`
}

type GetAttestationDataResponse

type GetAttestationDataResponse struct {
	Data *AttestationData `json:"data"`
}

type GetAttesterDutiesResponse

type GetAttesterDutiesResponse struct {
	DependentRoot       string          `json:"dependent_root"`
	ExecutionOptimistic bool            `json:"execution_optimistic"`
	Data                []*AttesterDuty `json:"data"`
}

type GetAttesterSlashingsResponse

type GetAttesterSlashingsResponse struct {
	Version string          `json:"version,omitempty"`
	Data    json.RawMessage `json:"data"` // Accepts both `[]*AttesterSlashing` and `[]*AttesterSlashingElectra` types
}

type GetBeaconStateV2Response

type GetBeaconStateV2Response struct {
	Version             string          `json:"version"`
	ExecutionOptimistic bool            `json:"execution_optimistic"`
	Finalized           bool            `json:"finalized"`
	Data                json.RawMessage `json:"data"` // represents the state values based on the version
}

type GetBlobsResponse

type GetBlobsResponse struct {
	ExecutionOptimistic bool     `json:"execution_optimistic"`
	Finalized           bool     `json:"finalized"`
	Data                []string `json:"data"` //blobs
}

type GetBlockAttestationsResponse

type GetBlockAttestationsResponse struct {
	ExecutionOptimistic bool           `json:"execution_optimistic"`
	Finalized           bool           `json:"finalized"`
	Data                []*Attestation `json:"data"`
}

type GetBlockAttestationsV2Response

type GetBlockAttestationsV2Response struct {
	Version             string          `json:"version"`
	ExecutionOptimistic bool            `json:"execution_optimistic"`
	Finalized           bool            `json:"finalized"`
	Data                json.RawMessage `json:"data"` // Accepts both `Attestation` and `AttestationElectra` types
}

type GetBlockHeaderResponse

type GetBlockHeaderResponse struct {
	ExecutionOptimistic bool                              `json:"execution_optimistic"`
	Finalized           bool                              `json:"finalized"`
	Data                *SignedBeaconBlockHeaderContainer `json:"data"`
}

type GetBlockHeadersResponse

type GetBlockHeadersResponse struct {
	Data                []*SignedBeaconBlockHeaderContainer `json:"data"`
	ExecutionOptimistic bool                                `json:"execution_optimistic"`
	Finalized           bool                                `json:"finalized"`
}

type GetBlockResponse

type GetBlockResponse struct {
	Data *SignedBlock `json:"data"`
}

type GetBlockV2Response

type GetBlockV2Response struct {
	Version             string       `json:"version"`
	ExecutionOptimistic bool         `json:"execution_optimistic"`
	Finalized           bool         `json:"finalized"`
	Data                *SignedBlock `json:"data"`
}

type GetCommitteesResponse

type GetCommitteesResponse struct {
	Data                []*Committee `json:"data"`
	ExecutionOptimistic bool         `json:"execution_optimistic"`
	Finalized           bool         `json:"finalized"`
}

type GetDebugDataColumnSidecarsResponse

type GetDebugDataColumnSidecarsResponse struct {
	Version             string          `json:"version"`
	ExecutionOptimistic bool            `json:"execution_optimistic"`
	Finalized           bool            `json:"finalized"`
	Data                json.RawMessage `json:"data"` // []*DataColumnSidecar pre-Gloas, []*DataColumnSidecarGloas post-Gloas
}

type GetDepositContractResponse

type GetDepositContractResponse struct {
	Data *DepositContractData `json:"data"`
}

type GetExecutionPayloadEnvelopeResponse added in v7.1.4

type GetExecutionPayloadEnvelopeResponse struct {
	Version             string                          `json:"version"`
	ExecutionOptimistic bool                            `json:"execution_optimistic"`
	Finalized           bool                            `json:"finalized"`
	Data                *SignedExecutionPayloadEnvelope `json:"data"`
}

type GetFinalityCheckpointsResponse

type GetFinalityCheckpointsResponse struct {
	ExecutionOptimistic bool                 `json:"execution_optimistic"`
	Finalized           bool                 `json:"finalized"`
	Data                *FinalityCheckpoints `json:"data"`
}

type GetForkChoiceDumpResponse

type GetForkChoiceDumpResponse struct {
	JustifiedCheckpoint *Checkpoint              `json:"justified_checkpoint"`
	FinalizedCheckpoint *Checkpoint              `json:"finalized_checkpoint"`
	ForkChoiceNodes     []*ForkChoiceNode        `json:"fork_choice_nodes"`
	ExtraData           *ForkChoiceDumpExtraData `json:"extra_data"`
}

type GetForkChoiceDumpV2Response added in v7.1.5

type GetForkChoiceDumpV2Response struct {
	JustifiedCheckpoint *Checkpoint              `json:"justified_checkpoint"`
	FinalizedCheckpoint *Checkpoint              `json:"finalized_checkpoint"`
	ForkChoiceNodes     []*ForkChoiceNodeV2      `json:"fork_choice_nodes"`
	ExtraData           *ForkChoiceDumpExtraData `json:"extra_data"`
}

type GetForkChoiceHeadsV2Response

type GetForkChoiceHeadsV2Response struct {
	Data []*ForkChoiceHead `json:"data"`
}

type GetForkScheduleResponse

type GetForkScheduleResponse struct {
	Data []*Fork `json:"data"`
}

type GetGenesisResponse

type GetGenesisResponse struct {
	Data *Genesis `json:"data"`
}

type GetIdentityResponse

type GetIdentityResponse struct {
	Data *Identity `json:"data"`
}

type GetIndividualVotesRequest

type GetIndividualVotesRequest struct {
	Epoch      string   `json:"epoch"`
	PublicKeys []string `json:"public_keys,omitempty"`
	Indices    []string `json:"indices,omitempty"`
}

type GetIndividualVotesResponse

type GetIndividualVotesResponse struct {
	IndividualVotes []*IndividualVote `json:"individual_votes"`
}

type GetLivenessResponse

type GetLivenessResponse struct {
	Data []*Liveness `json:"data"`
}

type GetPTCDutiesResponse added in v7.1.4

type GetPTCDutiesResponse struct {
	DependentRoot       string     `json:"dependent_root"`
	ExecutionOptimistic bool       `json:"execution_optimistic"`
	Data                []*PTCDuty `json:"data"`
}

type GetPayloadAttestationDataResponse added in v7.1.5

type GetPayloadAttestationDataResponse struct {
	Version string                  `json:"version"`
	Data    *PayloadAttestationData `json:"data"`
}

type GetPeerCountResponse

type GetPeerCountResponse struct {
	Data *PeerCount `json:"data"`
}

type GetPeerResponse

type GetPeerResponse struct {
	Data *Peer `json:"data"`
}

type GetPeersResponse

type GetPeersResponse struct {
	Data []*Peer `json:"data"`
	Meta Meta    `json:"meta"`
}

type GetPendingConsolidationsResponse

type GetPendingConsolidationsResponse struct {
	Version             string                  `json:"version"`
	ExecutionOptimistic bool                    `json:"execution_optimistic"`
	Finalized           bool                    `json:"finalized"`
	Data                []*PendingConsolidation `json:"data"`
}

type GetPendingDepositsResponse

type GetPendingDepositsResponse struct {
	Version             string            `json:"version"`
	ExecutionOptimistic bool              `json:"execution_optimistic"`
	Finalized           bool              `json:"finalized"`
	Data                []*PendingDeposit `json:"data"`
}

type GetPendingPartialWithdrawalsResponse

type GetPendingPartialWithdrawalsResponse struct {
	Version             string                      `json:"version"`
	ExecutionOptimistic bool                        `json:"execution_optimistic"`
	Finalized           bool                        `json:"finalized"`
	Data                []*PendingPartialWithdrawal `json:"data"`
}

type GetPoolPayloadAttestationsResponse added in v7.1.5

type GetPoolPayloadAttestationsResponse struct {
	Version string                `json:"version"`
	Data    []*PayloadAttestation `json:"data"`
}

type GetProposerDutiesResponse

type GetProposerDutiesResponse struct {
	DependentRoot       string          `json:"dependent_root"`
	ExecutionOptimistic bool            `json:"execution_optimistic"`
	Data                []*ProposerDuty `json:"data"`
}

type GetProposerLookaheadResponse

type GetProposerLookaheadResponse struct {
	Version             string   `json:"version"`
	ExecutionOptimistic bool     `json:"execution_optimistic"`
	Finalized           bool     `json:"finalized"`
	Data                []string `json:"data"` // validator indexes
}

type GetProposerSlashingsResponse

type GetProposerSlashingsResponse struct {
	Data []*ProposerSlashing `json:"data"`
}

type GetRandaoResponse

type GetRandaoResponse struct {
	ExecutionOptimistic bool    `json:"execution_optimistic"`
	Finalized           bool    `json:"finalized"`
	Data                *Randao `json:"data"`
}

type GetSpecResponse

type GetSpecResponse struct {
	Data any `json:"data"`
}

type GetStateForkResponse

type GetStateForkResponse struct {
	Data                *Fork `json:"data"`
	ExecutionOptimistic bool  `json:"execution_optimistic"`
	Finalized           bool  `json:"finalized"`
}

type GetStateRootResponse

type GetStateRootResponse struct {
	ExecutionOptimistic bool       `json:"execution_optimistic"`
	Finalized           bool       `json:"finalized"`
	Data                *StateRoot `json:"data"`
}

type GetSyncCommitteeDutiesResponse

type GetSyncCommitteeDutiesResponse struct {
	ExecutionOptimistic bool                 `json:"execution_optimistic"`
	Data                []*SyncCommitteeDuty `json:"data"`
}

type GetSyncCommitteeResponse

type GetSyncCommitteeResponse struct {
	ExecutionOptimistic bool                     `json:"execution_optimistic"`
	Finalized           bool                     `json:"finalized"`
	Data                *SyncCommitteeValidators `json:"data"`
}

type GetValidatorBalancesResponse

type GetValidatorBalancesResponse struct {
	ExecutionOptimistic bool                `json:"execution_optimistic"`
	Finalized           bool                `json:"finalized"`
	Data                []*ValidatorBalance `json:"data"`
}

type GetValidatorBlindedExecutionPayloadEnvelopeResponse added in v7.1.5

type GetValidatorBlindedExecutionPayloadEnvelopeResponse struct {
	Version string                           `json:"version"`
	Data    *BlindedExecutionPayloadEnvelope `json:"data"`
}

type GetValidatorCountResponse

type GetValidatorCountResponse struct {
	ExecutionOptimistic string            `json:"execution_optimistic"`
	Finalized           string            `json:"finalized"`
	Data                []*ValidatorCount `json:"data"`
}

type GetValidatorIdentitiesResponse

type GetValidatorIdentitiesResponse struct {
	ExecutionOptimistic bool                 `json:"execution_optimistic"`
	Finalized           bool                 `json:"finalized"`
	Data                []*ValidatorIdentity `json:"data"`
}

type GetValidatorParticipationResponse

type GetValidatorParticipationResponse struct {
	Epoch         string                  `json:"epoch"`
	Finalized     bool                    `json:"finalized"`
	Participation *ValidatorParticipation `json:"participation"`
}

type GetValidatorPerformanceRequest

type GetValidatorPerformanceRequest struct {
	PublicKeys [][]byte                    `json:"public_keys,omitempty"`
	Indices    []primitives.ValidatorIndex `json:"indices,omitempty"`
}

type GetValidatorPerformanceResponse

type GetValidatorPerformanceResponse struct {
	PublicKeys                    [][]byte `json:"public_keys,omitempty"`
	CorrectlyVotedSource          []bool   `json:"correctly_voted_source,omitempty"`
	CorrectlyVotedTarget          []bool   `json:"correctly_voted_target,omitempty"`
	CorrectlyVotedHead            []bool   `json:"correctly_voted_head,omitempty"`
	CurrentEffectiveBalances      []uint64 `json:"current_effective_balances,omitempty"`
	BalancesBeforeEpochTransition []uint64 `json:"balances_before_epoch_transition,omitempty"`
	BalancesAfterEpochTransition  []uint64 `json:"balances_after_epoch_transition,omitempty"`
	MissingValidators             [][]byte `json:"missing_validators,omitempty"`
	InactivityScores              []uint64 `json:"inactivity_scores,omitempty"`
}

type GetValidatorResponse

type GetValidatorResponse struct {
	ExecutionOptimistic bool                `json:"execution_optimistic"`
	Finalized           bool                `json:"finalized"`
	Data                *ValidatorContainer `json:"data"`
}

type GetValidatorsRequest

type GetValidatorsRequest struct {
	Ids      []string `json:"ids,omitempty"`
	Statuses []string `json:"statuses,omitempty"`
}

type GetValidatorsResponse

type GetValidatorsResponse struct {
	ExecutionOptimistic bool                  `json:"execution_optimistic"`
	Finalized           bool                  `json:"finalized"`
	Data                []*ValidatorContainer `json:"data"`
}

type GetVersionResponse

type GetVersionResponse struct {
	Data *Version `json:"data"`
}

type GetVersionV2Response added in v7.1.4

type GetVersionV2Response struct {
	Data *VersionV2 `json:"data"`
}

type GetWeakSubjectivityResponse

type GetWeakSubjectivityResponse struct {
	Data *WeakSubjectivityData `json:"data"`
}

type HeadEvent

type HeadEvent struct {
	Slot                      string `json:"slot"`
	Block                     string `json:"block"`
	State                     string `json:"state"`
	EpochTransition           bool   `json:"epoch_transition"`
	ExecutionOptimistic       bool   `json:"execution_optimistic"`
	PreviousDutyDependentRoot string `json:"previous_duty_dependent_root"`
	CurrentDutyDependentRoot  string `json:"current_duty_dependent_root"`
}

func HeadEventFromV1

func HeadEventFromV1(event *ethv1.EventHead) *HeadEvent

type HeadEventV2 added in v7.1.5

type HeadEventV2 struct {
	Version string           `json:"version"`
	Data    *HeadEventV2Data `json:"data"`
}

HeadEventV2 is the versioned, Gloas-aware head_v2 event.

func HeadEventFromDataV2 added in v7.1.5

func HeadEventFromDataV2(data *statefeed.HeadV2Data) *HeadEventV2

type HeadEventV2Data added in v7.1.5

type HeadEventV2Data struct {
	Slot                      string `json:"slot"`
	Block                     string `json:"block"`
	State                     string `json:"state"`
	PayloadStatus             string `json:"payload_status"`
	CurrentEpochDependentRoot string `json:"current_epoch_dependent_root"`
	NextEpochDependentRoot    string `json:"next_epoch_dependent_root"`
	EpochTransition           bool   `json:"epoch_transition"`
	ExecutionOptimistic       bool   `json:"execution_optimistic"`
}

type HistoricalSummary

type HistoricalSummary struct {
	BlockSummaryRoot string `json:"block_summary_root"`
	StateSummaryRoot string `json:"state_summary_root"`
}

func HistoricalSummaryFromConsensus

func HistoricalSummaryFromConsensus(s *eth.HistoricalSummary) *HistoricalSummary

type IdealAttestationReward

type IdealAttestationReward struct {
	EffectiveBalance string `json:"effective_balance"`
	Head             string `json:"head"`
	Target           string `json:"target"`
	Source           string `json:"source"`
	Inactivity       string `json:"inactivity"`
}

type Identity

type Identity struct {
	PeerId             string    `json:"peer_id"`
	Enr                string    `json:"enr"`
	P2PAddresses       []string  `json:"p2p_addresses"`
	DiscoveryAddresses []string  `json:"discovery_addresses"`
	Metadata           *Metadata `json:"metadata"`
}

type IndexedAttestation

type IndexedAttestation struct {
	AttestingIndices []string         `json:"attesting_indices"`
	Data             *AttestationData `json:"data"`
	Signature        string           `json:"signature"`
}

func (*IndexedAttestation) ToConsensus

func (a *IndexedAttestation) ToConsensus() (*eth.IndexedAttestation, error)

type IndexedAttestationElectra

type IndexedAttestationElectra struct {
	AttestingIndices []string         `json:"attesting_indices"`
	Data             *AttestationData `json:"data"`
	Signature        string           `json:"signature"`
}

func (*IndexedAttestationElectra) ToConsensus

type IndividualVote

type IndividualVote struct {
	Epoch                            string `json:"epoch"`
	PublicKey                        string `json:"public_keys,omitempty"`
	ValidatorIndex                   string `json:"validator_index"`
	IsSlashed                        bool   `json:"is_slashed"`
	IsWithdrawableInCurrentEpoch     bool   `json:"is_withdrawable_in_current_epoch"`
	IsActiveInCurrentEpoch           bool   `json:"is_active_in_current_epoch"`
	IsActiveInPreviousEpoch          bool   `json:"is_active_in_previous_epoch"`
	IsCurrentEpochAttester           bool   `json:"is_current_epoch_attester"`
	IsCurrentEpochTargetAttester     bool   `json:"is_current_epoch_target_attester"`
	IsPreviousEpochAttester          bool   `json:"is_previous_epoch_attester"`
	IsPreviousEpochTargetAttester    bool   `json:"is_previous_epoch_target_attester"`
	IsPreviousEpochHeadAttester      bool   `json:"is_previous_epoch_head_attester"`
	CurrentEpochEffectiveBalanceGwei string `json:"current_epoch_effective_balance_gwei"`
	InclusionSlot                    string `json:"inclusion_slot"`
	InclusionDistance                string `json:"inclusion_distance"`
	InactivityScore                  string `json:"inactivity_score"`
}

type LightClientBootstrap

type LightClientBootstrap struct {
	Header                     json.RawMessage `json:"header"`
	CurrentSyncCommittee       *SyncCommittee  `json:"current_sync_committee"`
	CurrentSyncCommitteeBranch []string        `json:"current_sync_committee_branch"`
}

func LightClientBootstrapFromConsensus

func LightClientBootstrapFromConsensus(bootstrap interfaces.LightClientBootstrap) (*LightClientBootstrap, error)

type LightClientBootstrapResponse

type LightClientBootstrapResponse struct {
	Version string                `json:"version"`
	Data    *LightClientBootstrap `json:"data"`
}

type LightClientFinalityUpdate

type LightClientFinalityUpdate struct {
	AttestedHeader  json.RawMessage `json:"attested_header"`
	FinalizedHeader json.RawMessage `json:"finalized_header"`
	FinalityBranch  []string        `json:"finality_branch"`
	SyncAggregate   *SyncAggregate  `json:"sync_aggregate"`
	SignatureSlot   string          `json:"signature_slot"`
}

type LightClientFinalityUpdateEvent

type LightClientFinalityUpdateEvent struct {
	Version string                     `json:"version"`
	Data    *LightClientFinalityUpdate `json:"data"`
}

type LightClientFinalityUpdateResponse

type LightClientFinalityUpdateResponse struct {
	Version string                     `json:"version"`
	Data    *LightClientFinalityUpdate `json:"data"`
}

type LightClientHeader

type LightClientHeader struct {
	Beacon *BeaconBlockHeader `json:"beacon"`
}

type LightClientHeaderCapella

type LightClientHeaderCapella struct {
	Beacon          *BeaconBlockHeader             `json:"beacon"`
	Execution       *ExecutionPayloadHeaderCapella `json:"execution"`
	ExecutionBranch []string                       `json:"execution_branch"`
}

type LightClientHeaderDeneb

type LightClientHeaderDeneb struct {
	Beacon          *BeaconBlockHeader           `json:"beacon"`
	Execution       *ExecutionPayloadHeaderDeneb `json:"execution"`
	ExecutionBranch []string                     `json:"execution_branch"`
}

type LightClientOptimisticUpdate

type LightClientOptimisticUpdate struct {
	AttestedHeader json.RawMessage `json:"attested_header"`
	SyncAggregate  *SyncAggregate  `json:"sync_aggregate"`
	SignatureSlot  string          `json:"signature_slot"`
}

type LightClientOptimisticUpdateEvent

type LightClientOptimisticUpdateEvent struct {
	Version string                       `json:"version"`
	Data    *LightClientOptimisticUpdate `json:"data"`
}

type LightClientOptimisticUpdateResponse

type LightClientOptimisticUpdateResponse struct {
	Version string                       `json:"version"`
	Data    *LightClientOptimisticUpdate `json:"data"`
}

type LightClientUpdate

type LightClientUpdate struct {
	AttestedHeader          json.RawMessage `json:"attested_header"`
	NextSyncCommittee       *SyncCommittee  `json:"next_sync_committee,omitempty"`
	FinalizedHeader         json.RawMessage `json:"finalized_header,omitempty"`
	SyncAggregate           *SyncAggregate  `json:"sync_aggregate"`
	NextSyncCommitteeBranch []string        `json:"next_sync_committee_branch,omitempty"`
	FinalityBranch          []string        `json:"finality_branch,omitempty"`
	SignatureSlot           string          `json:"signature_slot"`
}

func LightClientUpdateFromConsensus

func LightClientUpdateFromConsensus(update interfaces.LightClientUpdate) (*LightClientUpdate, error)

type LightClientUpdateResponse

type LightClientUpdateResponse struct {
	Version string             `json:"version"`
	Data    *LightClientUpdate `json:"data"`
}

type LightClientUpdatesByRangeResponse

type LightClientUpdatesByRangeResponse struct {
	Updates []*LightClientUpdateResponse `json:"updates"`
}

type ListAttestationsResponse

type ListAttestationsResponse struct {
	Version string          `json:"version,omitempty"`
	Data    json.RawMessage `json:"data"`
}

type ListVoluntaryExitsResponse

type ListVoluntaryExitsResponse struct {
	Data []*SignedVoluntaryExit `json:"data"`
}

type Liveness

type Liveness struct {
	Index  string `json:"index"`
	IsLive bool   `json:"is_live"`
}

type MessageJsoner

type MessageJsoner interface {
	MessageRawJson() ([]byte, error)
}

MessageJsoner describes a signed consensus type wrapper that can return the `.Message` field in a json envelope encoded as a []byte, for use as a json.RawMessage value when encoding the outer envelope.

type Meta

type Meta struct {
	Count int `json:"count"`
}

Added Meta to align with beacon-api: https://ethereum.github.io/beacon-APIs/#/Node/getPeers

type Metadata

type Metadata struct {
	SeqNumber string `json:"seq_number"`
	Attnets   string `json:"attnets"`
	Syncnets  string `json:"syncnets,omitempty"`
	Cgc       string `json:"custody_group_count,omitempty"`
}

type PTCDuty added in v7.1.4

type PTCDuty struct {
	Pubkey         string `json:"pubkey"`
	ValidatorIndex string `json:"validator_index"`
	Slot           string `json:"slot"`
}

type PTCs added in v7.1.5

type PTCs struct {
	ValidatorIndices []string `json:"validator_indices"`
}

func PTCWindowFromConsensus added in v7.1.5

func PTCWindowFromConsensus(window []*ethpb.PTCs) []*PTCs

func PTCsFromConsensus added in v7.1.5

func PTCsFromConsensus(p *ethpb.PTCs) *PTCs

type PayloadAttestation added in v7.1.3

type PayloadAttestation struct {
	AggregationBits string                  `json:"aggregation_bits"`
	Data            *PayloadAttestationData `json:"data"`
	Signature       string                  `json:"signature"`
}

func PayloadAttestationFromConsensus added in v7.1.3

func PayloadAttestationFromConsensus(pa *eth.PayloadAttestation) *PayloadAttestation

func (*PayloadAttestation) ToConsensus added in v7.1.3

func (p *PayloadAttestation) ToConsensus() (*eth.PayloadAttestation, error)

type PayloadAttestationData added in v7.1.3

type PayloadAttestationData struct {
	BeaconBlockRoot   string `json:"beacon_block_root"`
	Slot              string `json:"slot"`
	PayloadPresent    bool   `json:"payload_present"`
	BlobDataAvailable bool   `json:"blob_data_available"`
}

func PayloadAttestationDataFromConsensus added in v7.1.3

func PayloadAttestationDataFromConsensus(d *eth.PayloadAttestationData) *PayloadAttestationData

func (*PayloadAttestationData) ToConsensus added in v7.1.3

type PayloadAttestationMessage added in v7.1.4

type PayloadAttestationMessage struct {
	ValidatorIndex string                  `json:"validator_index"`
	Data           *PayloadAttestationData `json:"data"`
	Signature      string                  `json:"signature"`
}

func PayloadAttestationMessageFromConsensus added in v7.1.4

func PayloadAttestationMessageFromConsensus(m *eth.PayloadAttestationMessage) *PayloadAttestationMessage

func (*PayloadAttestationMessage) ToConsensus added in v7.1.5

type PayloadAttributesEvent

type PayloadAttributesEvent struct {
	Version string          `json:"version"`
	Data    json.RawMessage `json:"data"`
}

type PayloadAttributesEventData

type PayloadAttributesEventData struct {
	ProposerIndex     string          `json:"proposer_index"`
	ProposalSlot      string          `json:"proposal_slot"`
	ParentBlockNumber string          `json:"parent_block_number"`
	ParentBlockRoot   string          `json:"parent_block_root"`
	ParentBlockHash   string          `json:"parent_block_hash"`
	PayloadAttributes json.RawMessage `json:"payload_attributes"`
}

type PayloadAttributesV1

type PayloadAttributesV1 struct {
	Timestamp             string `json:"timestamp"`
	PrevRandao            string `json:"prev_randao"`
	SuggestedFeeRecipient string `json:"suggested_fee_recipient"`
}

type PayloadAttributesV2

type PayloadAttributesV2 struct {
	Timestamp             string        `json:"timestamp"`
	PrevRandao            string        `json:"prev_randao"`
	SuggestedFeeRecipient string        `json:"suggested_fee_recipient"`
	Withdrawals           []*Withdrawal `json:"withdrawals"`
}

type PayloadAttributesV3

type PayloadAttributesV3 struct {
	Timestamp             string        `json:"timestamp"`
	PrevRandao            string        `json:"prev_randao"`
	SuggestedFeeRecipient string        `json:"suggested_fee_recipient"`
	Withdrawals           []*Withdrawal `json:"withdrawals"`
	ParentBeaconBlockRoot string        `json:"parent_beacon_block_root"`
}

type Peer

type Peer struct {
	PeerId             string `json:"peer_id"`
	Enr                string `json:"enr"`
	LastSeenP2PAddress string `json:"last_seen_p2p_address"`
	State              string `json:"state"`
	Direction          string `json:"direction"`
}

type PeerCount

type PeerCount struct {
	Disconnected  string `json:"disconnected"`
	Connecting    string `json:"connecting"`
	Connected     string `json:"connected"`
	Disconnecting string `json:"disconnecting"`
}

type PeersResponse

type PeersResponse struct {
	Peers []*Peer `json:"peers"`
}

type PendingAttestation

type PendingAttestation struct {
	AggregationBits string           `json:"aggregation_bits"`
	Data            *AttestationData `json:"data"`
	InclusionDelay  string           `json:"inclusion_delay"`
	ProposerIndex   string           `json:"proposer_index"`
}

func PendingAttestationFromConsensus

func PendingAttestationFromConsensus(a *eth.PendingAttestation) *PendingAttestation

type PendingConsolidation

type PendingConsolidation struct {
	SourceIndex string `json:"source_index"`
	TargetIndex string `json:"target_index"`
}

func PendingConsolidationsFromConsensus

func PendingConsolidationsFromConsensus(cs []*eth.PendingConsolidation) []*PendingConsolidation

type PendingDeposit

type PendingDeposit struct {
	Pubkey                string `json:"pubkey"`
	WithdrawalCredentials string `json:"withdrawal_credentials"`
	Amount                string `json:"amount"`
	Signature             string `json:"signature"`
	Slot                  string `json:"slot"`
}

func PendingDepositsFromConsensus

func PendingDepositsFromConsensus(ds []*eth.PendingDeposit) []*PendingDeposit

type PendingPartialWithdrawal

type PendingPartialWithdrawal struct {
	Index             string `json:"validator_index"`
	Amount            string `json:"amount"`
	WithdrawableEpoch string `json:"withdrawable_epoch"`
}

func PendingPartialWithdrawalsFromConsensus

func PendingPartialWithdrawalsFromConsensus(ws []*eth.PendingPartialWithdrawal) []*PendingPartialWithdrawal

type ProduceBlockV3Response

type ProduceBlockV3Response struct {
	Version                 string          `json:"version"`
	ExecutionPayloadBlinded bool            `json:"execution_payload_blinded"`
	ExecutionPayloadValue   string          `json:"execution_payload_value"`
	ConsensusBlockValue     string          `json:"consensus_block_value"`
	Data                    json.RawMessage `json:"data"` // represents the block values based on the version
}

ProduceBlockV3Response is a wrapper json object for the returned block from the ProduceBlockV3 endpoint

type ProduceBlockV4Response added in v7.1.5

type ProduceBlockV4Response struct {
	Version                  string          `json:"version"`
	ConsensusBlockValue      string          `json:"consensus_block_value"`
	ExecutionPayloadIncluded bool            `json:"execution_payload_included"`
	Data                     json.RawMessage `json:"data"`
}

ProduceBlockV4Response is a wrapper json object for the returned block from the ProduceBlockV4 endpoint

type ProduceSyncCommitteeContributionResponse

type ProduceSyncCommitteeContributionResponse struct {
	Data *SyncCommitteeContribution `json:"data"`
}

type ProposerDuty

type ProposerDuty struct {
	Pubkey         string `json:"pubkey"`
	ValidatorIndex string `json:"validator_index"`
	Slot           string `json:"slot"`
}

type ProposerPreferences added in v7.1.5

type ProposerPreferences struct {
	DependentRoot  string `json:"dependent_root"`
	ProposalSlot   string `json:"proposal_slot"`
	ValidatorIndex string `json:"validator_index"`
	FeeRecipient   string `json:"fee_recipient"`
	TargetGasLimit string `json:"target_gas_limit"`
}

func ProposerPreferencesFromConsensus added in v7.1.5

func ProposerPreferencesFromConsensus(p *ethpb.ProposerPreferences) *ProposerPreferences

func (*ProposerPreferences) ToConsensus added in v7.1.5

func (p *ProposerPreferences) ToConsensus() (*ethpb.ProposerPreferences, error)

type ProposerPreferencesEvent added in v7.1.5

type ProposerPreferencesEvent struct {
	Version string                     `json:"version"`
	Data    *SignedProposerPreferences `json:"data"`
}

type ProposerSlashing

type ProposerSlashing struct {
	SignedHeader1 *SignedBeaconBlockHeader `json:"signed_header_1"`
	SignedHeader2 *SignedBeaconBlockHeader `json:"signed_header_2"`
}

func ProposerSlashingFromConsensus

func ProposerSlashingFromConsensus(src *eth.ProposerSlashing) *ProposerSlashing

func ProposerSlashingsFromConsensus

func ProposerSlashingsFromConsensus(src []*eth.ProposerSlashing) []*ProposerSlashing

func (*ProposerSlashing) ToConsensus

func (s *ProposerSlashing) ToConsensus() (*eth.ProposerSlashing, error)

type PublishBlobsRequest

type PublishBlobsRequest struct {
	BlobSidecars *BlobSidecars `json:"blob_sidecars"`
	BlockRoot    string        `json:"block_root"`
}

type Randao

type Randao struct {
	Randao string `json:"randao"`
}

type SSZQueryRequest

type SSZQueryRequest struct {
	Query        string `json:"query"`
	IncludeProof bool   `json:"include_proof,omitempty"`
}

type Sidecar

type Sidecar struct {
	Index                    string                   `json:"index"`
	Blob                     string                   `json:"blob"`
	SignedBeaconBlockHeader  *SignedBeaconBlockHeader `json:"signed_block_header"`
	KzgCommitment            string                   `json:"kzg_commitment"`
	KzgProof                 string                   `json:"kzg_proof"`
	CommitmentInclusionProof []string                 `json:"kzg_commitment_inclusion_proof"`
}

func (*Sidecar) ToConsensus

func (sc *Sidecar) ToConsensus() (*eth.BlobSidecar, error)

type SidecarsResponse

type SidecarsResponse struct {
	Version             string     `json:"version"`
	Data                []*Sidecar `json:"data"`
	ExecutionOptimistic bool       `json:"execution_optimistic"`
	Finalized           bool       `json:"finalized"`
}

type SignedAggregateAttestationAndProof

type SignedAggregateAttestationAndProof struct {
	Message   *AggregateAttestationAndProof `json:"message"`
	Signature string                        `json:"signature"`
}

func (*SignedAggregateAttestationAndProof) ToConsensus

type SignedAggregateAttestationAndProofElectra

type SignedAggregateAttestationAndProofElectra struct {
	Message   *AggregateAttestationAndProofElectra `json:"message"`
	Signature string                               `json:"signature"`
}

func (*SignedAggregateAttestationAndProofElectra) ToConsensus

type SignedBLSToExecutionChange

type SignedBLSToExecutionChange struct {
	Message   *BLSToExecutionChange `json:"message"`
	Signature string                `json:"signature"`
}

func (*SignedBLSToExecutionChange) ToConsensus

type SignedBeaconBlock

type SignedBeaconBlock struct {
	Message   *BeaconBlock `json:"message"`
	Signature string       `json:"signature"`
}

func SignedBeaconBlockPhase0FromConsensus

func SignedBeaconBlockPhase0FromConsensus(b *eth.SignedBeaconBlock) *SignedBeaconBlock

func (*SignedBeaconBlock) MessageRawJson

func (s *SignedBeaconBlock) MessageRawJson() ([]byte, error)

func (*SignedBeaconBlock) SigString

func (s *SignedBeaconBlock) SigString() string

func (*SignedBeaconBlock) ToGeneric

type SignedBeaconBlockAltair

type SignedBeaconBlockAltair struct {
	Message   *BeaconBlockAltair `json:"message"`
	Signature string             `json:"signature"`
}

func SignedBeaconBlockAltairFromConsensus

func SignedBeaconBlockAltairFromConsensus(b *eth.SignedBeaconBlockAltair) *SignedBeaconBlockAltair

func (*SignedBeaconBlockAltair) MessageRawJson

func (s *SignedBeaconBlockAltair) MessageRawJson() ([]byte, error)

func (*SignedBeaconBlockAltair) SigString

func (s *SignedBeaconBlockAltair) SigString() string

func (*SignedBeaconBlockAltair) ToGeneric

type SignedBeaconBlockBellatrix

type SignedBeaconBlockBellatrix struct {
	Message   *BeaconBlockBellatrix `json:"message"`
	Signature string                `json:"signature"`
}

func (*SignedBeaconBlockBellatrix) MessageRawJson

func (s *SignedBeaconBlockBellatrix) MessageRawJson() ([]byte, error)

func (*SignedBeaconBlockBellatrix) SigString

func (s *SignedBeaconBlockBellatrix) SigString() string

func (*SignedBeaconBlockBellatrix) ToGeneric

type SignedBeaconBlockCapella

type SignedBeaconBlockCapella struct {
	Message   *BeaconBlockCapella `json:"message"`
	Signature string              `json:"signature"`
}

func (*SignedBeaconBlockCapella) MessageRawJson

func (s *SignedBeaconBlockCapella) MessageRawJson() ([]byte, error)

func (*SignedBeaconBlockCapella) SigString

func (s *SignedBeaconBlockCapella) SigString() string

func (*SignedBeaconBlockCapella) ToGeneric

type SignedBeaconBlockContentsDeneb

type SignedBeaconBlockContentsDeneb struct {
	SignedBlock *SignedBeaconBlockDeneb `json:"signed_block"`
	KzgProofs   []string                `json:"kzg_proofs"`
	Blobs       []string                `json:"blobs"`
}

func (*SignedBeaconBlockContentsDeneb) ToGeneric

func (*SignedBeaconBlockContentsDeneb) ToUnsigned

type SignedBeaconBlockContentsElectra

type SignedBeaconBlockContentsElectra struct {
	SignedBlock *SignedBeaconBlockElectra `json:"signed_block"`
	KzgProofs   []string                  `json:"kzg_proofs"`
	Blobs       []string                  `json:"blobs"`
}

func (*SignedBeaconBlockContentsElectra) ToGeneric

func (*SignedBeaconBlockContentsElectra) ToUnsigned

type SignedBeaconBlockContentsFulu

type SignedBeaconBlockContentsFulu struct {
	SignedBlock *SignedBeaconBlockFulu `json:"signed_block"`
	KzgProofs   []string               `json:"kzg_proofs"`
	Blobs       []string               `json:"blobs"`
}

func (*SignedBeaconBlockContentsFulu) ToGeneric

func (*SignedBeaconBlockContentsFulu) ToUnsigned

type SignedBeaconBlockDeneb

type SignedBeaconBlockDeneb struct {
	Message   *BeaconBlockDeneb `json:"message"`
	Signature string            `json:"signature"`
}

func SignedBeaconBlockDenebFromConsensus

func SignedBeaconBlockDenebFromConsensus(b *eth.SignedBeaconBlockDeneb) (*SignedBeaconBlockDeneb, error)

func (*SignedBeaconBlockDeneb) MessageRawJson

func (s *SignedBeaconBlockDeneb) MessageRawJson() ([]byte, error)

func (*SignedBeaconBlockDeneb) SigString

func (s *SignedBeaconBlockDeneb) SigString() string

func (*SignedBeaconBlockDeneb) ToConsensus

type SignedBeaconBlockElectra

type SignedBeaconBlockElectra struct {
	Message   *BeaconBlockElectra `json:"message"`
	Signature string              `json:"signature"`
}

func (*SignedBeaconBlockElectra) MessageRawJson

func (s *SignedBeaconBlockElectra) MessageRawJson() ([]byte, error)

func (*SignedBeaconBlockElectra) SigString

func (s *SignedBeaconBlockElectra) SigString() string

func (*SignedBeaconBlockElectra) ToConsensus

type SignedBeaconBlockFulu

type SignedBeaconBlockFulu struct {
	Message   *BeaconBlockElectra `json:"message"`
	Signature string              `json:"signature"`
}

func SignedBeaconBlockFuluFromConsensus

func SignedBeaconBlockFuluFromConsensus(b *eth.SignedBeaconBlockFulu) (*SignedBeaconBlockFulu, error)

func (*SignedBeaconBlockFulu) MessageRawJson

func (s *SignedBeaconBlockFulu) MessageRawJson() ([]byte, error)

func (*SignedBeaconBlockFulu) SigString

func (s *SignedBeaconBlockFulu) SigString() string

func (*SignedBeaconBlockFulu) ToConsensus

type SignedBeaconBlockGloas added in v7.1.3

type SignedBeaconBlockGloas struct {
	Message   *BeaconBlockGloas `json:"message"`
	Signature string            `json:"signature"`
}

func SignedBeaconBlockGloasFromConsensus added in v7.1.3

func SignedBeaconBlockGloasFromConsensus(b *eth.SignedBeaconBlockGloas) (*SignedBeaconBlockGloas, error)

func (*SignedBeaconBlockGloas) MessageRawJson added in v7.1.3

func (s *SignedBeaconBlockGloas) MessageRawJson() ([]byte, error)

func (*SignedBeaconBlockGloas) SigString added in v7.1.3

func (s *SignedBeaconBlockGloas) SigString() string

func (*SignedBeaconBlockGloas) ToConsensus added in v7.1.3

func (*SignedBeaconBlockGloas) ToGeneric added in v7.1.5

type SignedBeaconBlockHeader

type SignedBeaconBlockHeader struct {
	Message   *BeaconBlockHeader `json:"message"`
	Signature string             `json:"signature"`
}

func SignedBeaconBlockHeaderFromConsensus

func SignedBeaconBlockHeaderFromConsensus(src *eth.SignedBeaconBlockHeader) *SignedBeaconBlockHeader

func (*SignedBeaconBlockHeader) ToConsensus

type SignedBeaconBlockHeaderContainer

type SignedBeaconBlockHeaderContainer struct {
	Header    *SignedBeaconBlockHeader `json:"header"`
	Root      string                   `json:"root"`
	Canonical bool                     `json:"canonical"`
}

type SignedBlindedBeaconBlockBellatrix

type SignedBlindedBeaconBlockBellatrix struct {
	Message   *BlindedBeaconBlockBellatrix `json:"message"`
	Signature string                       `json:"signature"`
}

func (*SignedBlindedBeaconBlockBellatrix) MessageRawJson

func (s *SignedBlindedBeaconBlockBellatrix) MessageRawJson() ([]byte, error)

func (*SignedBlindedBeaconBlockBellatrix) SigString

func (*SignedBlindedBeaconBlockBellatrix) ToGeneric

type SignedBlindedBeaconBlockCapella

type SignedBlindedBeaconBlockCapella struct {
	Message   *BlindedBeaconBlockCapella `json:"message"`
	Signature string                     `json:"signature"`
}

func (*SignedBlindedBeaconBlockCapella) MessageRawJson

func (s *SignedBlindedBeaconBlockCapella) MessageRawJson() ([]byte, error)

func (*SignedBlindedBeaconBlockCapella) SigString

func (s *SignedBlindedBeaconBlockCapella) SigString() string

func (*SignedBlindedBeaconBlockCapella) ToGeneric

type SignedBlindedBeaconBlockDeneb

type SignedBlindedBeaconBlockDeneb struct {
	Message   *BlindedBeaconBlockDeneb `json:"message"`
	Signature string                   `json:"signature"`
}

func (*SignedBlindedBeaconBlockDeneb) MessageRawJson

func (s *SignedBlindedBeaconBlockDeneb) MessageRawJson() ([]byte, error)

func (*SignedBlindedBeaconBlockDeneb) SigString

func (s *SignedBlindedBeaconBlockDeneb) SigString() string

func (*SignedBlindedBeaconBlockDeneb) ToConsensus

func (*SignedBlindedBeaconBlockDeneb) ToGeneric

type SignedBlindedBeaconBlockElectra

type SignedBlindedBeaconBlockElectra struct {
	Message   *BlindedBeaconBlockElectra `json:"message"`
	Signature string                     `json:"signature"`
}

func (*SignedBlindedBeaconBlockElectra) MessageRawJson

func (s *SignedBlindedBeaconBlockElectra) MessageRawJson() ([]byte, error)

func (*SignedBlindedBeaconBlockElectra) SigString

func (s *SignedBlindedBeaconBlockElectra) SigString() string

func (*SignedBlindedBeaconBlockElectra) ToConsensus

func (*SignedBlindedBeaconBlockElectra) ToGeneric

type SignedBlindedBeaconBlockFulu

type SignedBlindedBeaconBlockFulu struct {
	Message   *BlindedBeaconBlockFulu `json:"message"`
	Signature string                  `json:"signature"`
}

func (*SignedBlindedBeaconBlockFulu) MessageRawJson

func (s *SignedBlindedBeaconBlockFulu) MessageRawJson() ([]byte, error)

func (*SignedBlindedBeaconBlockFulu) SigString

func (s *SignedBlindedBeaconBlockFulu) SigString() string

func (*SignedBlindedBeaconBlockFulu) ToConsensus

func (*SignedBlindedBeaconBlockFulu) ToGeneric

type SignedBlindedExecutionPayloadEnvelope added in v7.1.5

type SignedBlindedExecutionPayloadEnvelope struct {
	Message   *BlindedExecutionPayloadEnvelope `json:"message"`
	Signature string                           `json:"signature"`
}

func (*SignedBlindedExecutionPayloadEnvelope) ToConsensus added in v7.1.5

type SignedBlock

type SignedBlock struct {
	Message   json.RawMessage `json:"message"` // represents the block values based on the version
	Signature string          `json:"signature"`
}

type SignedContributionAndProof

type SignedContributionAndProof struct {
	Message   *ContributionAndProof `json:"message"`
	Signature string                `json:"signature"`
}

func (*SignedContributionAndProof) ToConsensus

type SignedExecutionPayloadBid added in v7.1.3

type SignedExecutionPayloadBid struct {
	Message   *ExecutionPayloadBid `json:"message"`
	Signature string               `json:"signature"`
}

func SignedExecutionPayloadBidFromConsensus added in v7.1.3

func SignedExecutionPayloadBidFromConsensus(b *eth.SignedExecutionPayloadBid) *SignedExecutionPayloadBid

func (*SignedExecutionPayloadBid) ToConsensus added in v7.1.3

type SignedExecutionPayloadEnvelope added in v7.1.4

type SignedExecutionPayloadEnvelope struct {
	Message   *ExecutionPayloadEnvelope `json:"message"`
	Signature string                    `json:"signature"`
}

func SignedExecutionPayloadEnvelopeFromConsensus added in v7.1.4

func SignedExecutionPayloadEnvelopeFromConsensus(e *eth.SignedExecutionPayloadEnvelope) (*SignedExecutionPayloadEnvelope, error)

SignedExecutionPayloadEnvelopeFromConsensus converts a signed proto envelope to the API struct.

func (*SignedExecutionPayloadEnvelope) ToConsensus added in v7.1.5

ToConsensus converts the API struct to a proto SignedExecutionPayloadEnvelope.

type SignedExecutionPayloadEnvelopeContents added in v7.1.5

type SignedExecutionPayloadEnvelopeContents struct {
	SignedExecutionPayloadEnvelope *SignedExecutionPayloadEnvelope `json:"signed_execution_payload_envelope"`
	KzgProofs                      []string                        `json:"kzg_proofs"`
	Blobs                          []string                        `json:"blobs"`
}

SignedExecutionPayloadEnvelopeContents bundles a signed execution payload envelope with the raw blobs and KZG proofs needed by a beacon node that has not cached them locally. Used by the stateless publish path.

func SignedExecutionPayloadEnvelopeContentsFromConsensus added in v7.1.5

func SignedExecutionPayloadEnvelopeContentsFromConsensus(signed *eth.SignedExecutionPayloadEnvelope, kzgProofs [][]byte, blobs [][]byte) (*SignedExecutionPayloadEnvelopeContents, error)

SignedExecutionPayloadEnvelopeContentsFromConsensus builds the API struct used for stateless envelope publishing from native components.

func (*SignedExecutionPayloadEnvelopeContents) ToConsensus added in v7.1.5

ToConsensus decodes the API struct into the signed envelope plus raw blob and KZG proof bytes used by the stateless publish path.

type SignedMessageJsoner

type SignedMessageJsoner interface {
	MessageJsoner
	SigString() string
}

SignedMessageJsoner embeds MessageJsoner and adds a method to also retrieve the Signature field as a string.

type SignedProposerPreferences added in v7.1.5

type SignedProposerPreferences struct {
	Message   *ProposerPreferences `json:"message"`
	Signature string               `json:"signature"`
}

func SignedProposerPreferencesFromConsensus added in v7.1.5

func SignedProposerPreferencesFromConsensus(s *ethpb.SignedProposerPreferences) *SignedProposerPreferences

func (*SignedProposerPreferences) ToConsensus added in v7.1.5

type SignedValidatorRegistration

type SignedValidatorRegistration struct {
	Message   *ValidatorRegistration `json:"message"`
	Signature string                 `json:"signature"`
}

func (*SignedValidatorRegistration) ToConsensus

type SignedVoluntaryExit

type SignedVoluntaryExit struct {
	Message   *VoluntaryExit `json:"message"`
	Signature string         `json:"signature"`
}

func SignedExitFromConsensus

func SignedExitFromConsensus(e *eth.SignedVoluntaryExit) *SignedVoluntaryExit

func SignedExitsFromConsensus

func SignedExitsFromConsensus(src []*eth.SignedVoluntaryExit) []*SignedVoluntaryExit

func (*SignedVoluntaryExit) ToConsensus

func (e *SignedVoluntaryExit) ToConsensus() (*eth.SignedVoluntaryExit, error)

type SingleAttestation

type SingleAttestation struct {
	CommitteeIndex string           `json:"committee_index"`
	AttesterIndex  string           `json:"attester_index"`
	Data           *AttestationData `json:"data"`
	Signature      string           `json:"signature"`
}

func SingleAttFromConsensus

func SingleAttFromConsensus(a *eth.SingleAttestation) *SingleAttestation

func (*SingleAttestation) ToConsensus

func (a *SingleAttestation) ToConsensus() (*eth.SingleAttestation, error)

type StateRoot

type StateRoot struct {
	Root string `json:"root"`
}

type SubmitAggregateAndProofsRequest

type SubmitAggregateAndProofsRequest struct {
	Data []json.RawMessage `json:"data"`
}

type SubmitAttestationsRequest

type SubmitAttestationsRequest struct {
	Data json.RawMessage `json:"data"`
}

type SubmitBeaconCommitteeSubscriptionsRequest

type SubmitBeaconCommitteeSubscriptionsRequest struct {
	Data []*BeaconCommitteeSubscription `json:"data"`
}

type SubmitContributionAndProofsRequest

type SubmitContributionAndProofsRequest struct {
	Data []*SignedContributionAndProof `json:"data"`
}

type SubmitSyncCommitteeSignaturesRequest

type SubmitSyncCommitteeSignaturesRequest struct {
	Data []*SyncCommitteeMessage `json:"data"`
}

type SubmitSyncCommitteeSubscriptionsRequest

type SubmitSyncCommitteeSubscriptionsRequest struct {
	Data []*SyncCommitteeSubscription `json:"data"`
}

type SyncAggregate

type SyncAggregate struct {
	SyncCommitteeBits      string `json:"sync_committee_bits"`
	SyncCommitteeSignature string `json:"sync_committee_signature"`
}

func SyncAggregateFromConsensus

func SyncAggregateFromConsensus(sa *eth.SyncAggregate) *SyncAggregate

type SyncCommittee

type SyncCommittee struct {
	Pubkeys         []string `json:"pubkeys"`
	AggregatePubkey string   `json:"aggregate_pubkey"`
}

func SyncCommitteeFromConsensus

func SyncCommitteeFromConsensus(sc *eth.SyncCommittee) *SyncCommittee

func (*SyncCommittee) ToConsensus

func (sc *SyncCommittee) ToConsensus() (*eth.SyncCommittee, error)

type SyncCommitteeContribution

type SyncCommitteeContribution struct {
	Slot              string `json:"slot"`
	BeaconBlockRoot   string `json:"beacon_block_root"`
	SubcommitteeIndex string `json:"subcommittee_index"`
	AggregationBits   string `json:"aggregation_bits"`
	Signature         string `json:"signature"`
}

func (*SyncCommitteeContribution) ToConsensus

type SyncCommitteeDuty

type SyncCommitteeDuty struct {
	Pubkey                        string   `json:"pubkey"`
	ValidatorIndex                string   `json:"validator_index"`
	ValidatorSyncCommitteeIndices []string `json:"validator_sync_committee_indices"`
}

type SyncCommitteeMessage

type SyncCommitteeMessage struct {
	Slot            string `json:"slot"`
	BeaconBlockRoot string `json:"beacon_block_root"`
	ValidatorIndex  string `json:"validator_index"`
	Signature       string `json:"signature"`
}

func (*SyncCommitteeMessage) ToConsensus

func (m *SyncCommitteeMessage) ToConsensus() (*eth.SyncCommitteeMessage, error)

type SyncCommitteeReward

type SyncCommitteeReward struct {
	ValidatorIndex string `json:"validator_index"`
	Reward         string `json:"reward"`
}

type SyncCommitteeRewardsResponse

type SyncCommitteeRewardsResponse struct {
	Data                []SyncCommitteeReward `json:"data"`
	ExecutionOptimistic bool                  `json:"execution_optimistic"`
	Finalized           bool                  `json:"finalized"`
}

type SyncCommitteeSubscription

type SyncCommitteeSubscription struct {
	ValidatorIndex       string   `json:"validator_index"`
	SyncCommitteeIndices []string `json:"sync_committee_indices"`
	UntilEpoch           string   `json:"until_epoch"`
}

func (*SyncCommitteeSubscription) ToConsensus

type SyncCommitteeValidators

type SyncCommitteeValidators struct {
	Validators          []string   `json:"validators"`
	ValidatorAggregates [][]string `json:"validator_aggregates"`
}

type SyncDetails

type SyncDetails struct {
	HeadSlot     string `json:"head_slot"`
	SyncDistance string `json:"sync_distance"`
	IsSyncing    bool   `json:"is_syncing"`
	IsOptimistic bool   `json:"is_optimistic"`
	ElOffline    bool   `json:"el_offline"`
}

SyncDetails contains information about node sync status.

type SyncDetailsContainer

type SyncDetailsContainer struct {
	Data *SyncDetails `json:"data"`
}

SyncDetailsContainer is a wrapper for Data.

type SyncStatusResponse

type SyncStatusResponse struct {
	Data *SyncStatusResponseData `json:"data"`
}

type SyncStatusResponseData

type SyncStatusResponseData struct {
	HeadSlot     string `json:"head_slot"`
	SyncDistance string `json:"sync_distance"`
	IsSyncing    bool   `json:"is_syncing"`
	IsOptimistic bool   `json:"is_optimistic"`
	ElOffline    bool   `json:"el_offline"`
}

type TotalAttestationReward

type TotalAttestationReward struct {
	ValidatorIndex string `json:"validator_index"`
	Head           string `json:"head"`
	Target         string `json:"target"`
	Source         string `json:"source"`
	Inactivity     string `json:"inactivity"`
}

type UnaggregatedAttEventSource

type UnaggregatedAttEventSource struct {
	AggregationBits string           `json:"aggregation_bits"`
	Data            *AttestationData `json:"data"`
	Signature       string           `json:"signature"`
}

type Validator

type Validator struct {
	Pubkey                     string `json:"pubkey"`
	WithdrawalCredentials      string `json:"withdrawal_credentials"`
	EffectiveBalance           string `json:"effective_balance"`
	Slashed                    bool   `json:"slashed"`
	ActivationEligibilityEpoch string `json:"activation_eligibility_epoch"`
	ActivationEpoch            string `json:"activation_epoch"`
	ExitEpoch                  string `json:"exit_epoch"`
	WithdrawableEpoch          string `json:"withdrawable_epoch"`
}

func ValidatorFromConsensus

func ValidatorFromConsensus(v *eth.Validator) *Validator

type ValidatorBalance

type ValidatorBalance struct {
	Index   string `json:"index"`
	Balance string `json:"balance"`
}

type ValidatorContainer

type ValidatorContainer struct {
	Index     string     `json:"index"`
	Balance   string     `json:"balance"`
	Status    string     `json:"status"`
	Validator *Validator `json:"validator"`
}

type ValidatorCount

type ValidatorCount struct {
	Status string `json:"status"`
	Count  string `json:"count"`
}

type ValidatorIdentity

type ValidatorIdentity struct {
	Index           string `json:"index"`
	Pubkey          string `json:"pubkey"`
	ActivationEpoch string `json:"activation_epoch"`
}

type ValidatorParticipation

type ValidatorParticipation struct {
	GlobalParticipationRate          string `json:"global_participation_rate" deprecated:"true"`
	VotedEther                       string `json:"voted_ether" deprecated:"true"`
	EligibleEther                    string `json:"eligible_ether" deprecated:"true"`
	CurrentEpochActiveGwei           string `json:"current_epoch_active_gwei"`
	CurrentEpochAttestingGwei        string `json:"current_epoch_attesting_gwei"`
	CurrentEpochTargetAttestingGwei  string `json:"current_epoch_target_attesting_gwei"`
	PreviousEpochActiveGwei          string `json:"previous_epoch_active_gwei"`
	PreviousEpochAttestingGwei       string `json:"previous_epoch_attesting_gwei"`
	PreviousEpochTargetAttestingGwei string `json:"previous_epoch_target_attesting_gwei"`
	PreviousEpochHeadAttestingGwei   string `json:"previous_epoch_head_attesting_gwei"`
}

type ValidatorRegistration

type ValidatorRegistration struct {
	FeeRecipient string `json:"fee_recipient"`
	GasLimit     string `json:"gas_limit"`
	Timestamp    string `json:"timestamp"`
	Pubkey       string `json:"pubkey"`
}

func ValidatorRegistrationFromConsensus

func ValidatorRegistrationFromConsensus(vr *eth.ValidatorRegistrationV1) *ValidatorRegistration

func (*ValidatorRegistration) ToConsensus

type Version

type Version struct {
	Version string `json:"version"`
}

type VersionV2 added in v7.1.4

type VersionV2 struct {
	BeaconNode      *ClientVersionV1 `json:"beacon_node"`
	ExecutionClient *ClientVersionV1 `json:"execution_client,omitempty"`
}

type VoluntaryExit

type VoluntaryExit struct {
	Epoch          string `json:"epoch"`
	ValidatorIndex string `json:"validator_index"`
}

func ExitFromConsensus

func ExitFromConsensus(e *eth.VoluntaryExit) *VoluntaryExit

func (*VoluntaryExit) ToConsensus

func (e *VoluntaryExit) ToConsensus() (*eth.VoluntaryExit, error)

type WeakSubjectivityData

type WeakSubjectivityData struct {
	WsCheckpoint *Checkpoint `json:"ws_checkpoint"`
	StateRoot    string      `json:"state_root"`
}

type Withdrawal

type Withdrawal struct {
	WithdrawalIndex  string `json:"index"`
	ValidatorIndex   string `json:"validator_index"`
	ExecutionAddress string `json:"address"`
	Amount           string `json:"amount"`
}

func WithdrawalFromConsensus

func WithdrawalFromConsensus(w *enginev1.Withdrawal) *Withdrawal

func WithdrawalsFromConsensus

func WithdrawalsFromConsensus(ws []*enginev1.Withdrawal) []*Withdrawal

type WithdrawalRequest

type WithdrawalRequest struct {
	SourceAddress   string `json:"source_address"`
	ValidatorPubkey string `json:"validator_pubkey"`
	Amount          string `json:"amount"`
}

func WithdrawalRequestFromConsensus

func WithdrawalRequestFromConsensus(w *enginev1.WithdrawalRequest) *WithdrawalRequest

func WithdrawalRequestsFromConsensus

func WithdrawalRequestsFromConsensus(ws []*enginev1.WithdrawalRequest) []*WithdrawalRequest

func (*WithdrawalRequest) ToConsensus

func (w *WithdrawalRequest) ToConsensus() (*enginev1.WithdrawalRequest, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL