Documentation ¶
Index ¶
- Variables
- func Uint64Unmarshal(v *uint64, b []byte) error
- type AnySignedBlock
- type Attestation
- type AttesterSlashing
- type Balance
- type BalanceCaller
- type BalanceCallerRaw
- type BalanceCallerSession
- type BalanceFilterer
- type BalanceRaw
- func (_Balance *BalanceRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, ...) error
- func (_Balance *BalanceRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)
- func (_Balance *BalanceRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)
- type BalanceSession
- func (_Balance *BalanceSession) Balances(users []common.Address, tokens []common.Address) ([]*big.Int, error)
- func (_Balance *BalanceSession) Fallback(calldata []byte) (*types.Transaction, error)
- func (_Balance *BalanceSession) TokenBalance(user common.Address, token common.Address) (*big.Int, error)
- type BalanceTransactor
- type BalanceTransactorRaw
- type BalanceTransactorSession
- type Client
- type Deposit
- type ErigonClient
- func (client *ErigonClient) Close()
- func (client *ErigonClient) GetBalances(pairs []*types.Eth1AddressBalance, addressIndex, tokenIndex int) ([]*types.Eth1AddressBalance, error)
- func (client *ErigonClient) GetBalancesForAddresse(address string, tokenStr []string) ([]*types.Eth1AddressBalance, error)
- func (client *ErigonClient) GetBlock(number int64) (*types.Eth1Block, *types.GetBlockTimings, error)
- func (client *ErigonClient) GetBlockNumberByHash(hash string) (uint64, error)
- func (client *ErigonClient) GetERC20TokenBalance(address string, token string) ([]byte, error)
- func (client *ErigonClient) GetERC20TokenMetadata(token []byte) (*types.ERC20Metadata, error)
- func (client *ErigonClient) GetLatestEth1BlockNumber() (uint64, error)
- func (client *ErigonClient) GetNativeBalance(address string) ([]byte, error)
- func (client *ErigonClient) GetNativeClient() *ethclient.Client
- func (client *ErigonClient) GetRPCClient() *geth_rpc.Client
- func (client *ErigonClient) TraceGeth(blockHash common.Hash) ([]*GethTraceCallResult, error)
- func (client *ErigonClient) TraceParity(blockNumber uint64) ([]*ParityTraceResult, error)
- func (client *ErigonClient) TraceParityTx(txHash string) ([]*ParityTraceResult, error)
- type Eth1Client
- type Eth1Data
- type ExecutionPayload
- type GethClient
- func (client *GethClient) Close()
- func (client *GethClient) GetBalances(pairs []string) ([]*types.Eth1AddressBalance, error)
- func (client *GethClient) GetBalancesForAddresse(address string, tokenStr []string) ([]*types.Eth1AddressBalance, error)
- func (client *GethClient) GetBlock(number int64) (*types.Eth1Block, *types.GetBlockTimings, error)
- func (client *GethClient) GetERC20TokenBalance(address string, token string) ([]byte, error)
- func (client *GethClient) GetERC20TokenMetadata(token []byte) (*types.ERC20Metadata, error)
- func (client *GethClient) GetLatestEth1BlockNumber() (uint64, error)
- func (client *GethClient) GetNativeBalance(address string) ([]byte, error)
- func (client *GethClient) GetNativeClient() *ethclient.Client
- func (client *GethClient) GetRPCClient() *geth_rpc.Client
- func (client *GethClient) TraceGeth(blockHash common.Hash) ([]*GethTraceCallResult, error)
- type GethTraceCallData
- type GethTraceCallResult
- type LighthouseClient
- func (lc *LighthouseClient) GetBalancesForEpoch(epoch int64) (map[uint64]uint64, error)
- func (lc *LighthouseClient) GetBlockByBlockroot(blockroot []byte) (*types.Block, error)
- func (pc *LighthouseClient) GetBlockStatusByEpoch(epoch uint64) ([]*types.CanonBlock, error)
- func (lc *LighthouseClient) GetBlocksBySlot(slot uint64) ([]*types.Block, error)
- func (lc *LighthouseClient) GetChainHead() (*types.ChainHead, error)
- func (lc *LighthouseClient) GetEpochAssignments(epoch uint64) (*types.EpochAssignments, error)
- func (lc *LighthouseClient) GetEpochData(epoch uint64, skipHistoricBalances bool) (*types.EpochData, error)
- func (lc *LighthouseClient) GetFinalityCheckpoints(epoch uint64) (*types.FinalityCheckpoints, error)
- func (lc *LighthouseClient) GetNewBlockChan() chan *types.Block
- func (lc *LighthouseClient) GetSyncCommittee(stateID string, epoch uint64) (*StandardSyncCommittee, error)
- func (lc *LighthouseClient) GetValidatorParticipation(epoch uint64) (*types.ValidatorParticipation, error)
- func (lc *LighthouseClient) GetValidatorQueue() (*types.ValidatorQueue, error)
- type LighthouseValidatorParticipationResponse
- type ParityTraceResult
- type ProposerSlashing
- type SignedBLSToExecutionChange
- type StandardBeaconHeaderResponse
- type StandardBeaconHeadersResponse
- type StandardCommitteeEntry
- type StandardCommitteesResponse
- type StandardFinalityCheckpointsResponse
- type StandardProposerDutiesResponse
- type StandardProposerDuty
- type StandardSyncCommittee
- type StandardSyncCommitteesResponse
- type StandardSyncingResponse
- type StandardV1BlockRootResponse
- type StandardV2BlockResponse
- type StandardValidatorBalancesResponse
- type StandardValidatorEntry
- type StandardValidatorsResponse
- type StreamedBlockEventData
- type SyncAggregate
- type VoluntaryExit
- type WithdrawalPayload
Constants ¶
This section is empty.
Variables ¶
var BalanceABI = BalanceMetaData.ABI
BalanceABI is the input ABI used to generate the binding from. Deprecated: Use BalanceMetaData.ABI instead.
var BalanceMetaData = &bind.MetaData{
ABI: "[{\"constant\":true,\"inputs\":[{\"name\":\"user\",\"type\":\"address\"},{\"name\":\"token\",\"type\":\"address\"}],\"name\":\"tokenBalance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"users\",\"type\":\"address[]\"},{\"name\":\"tokens\",\"type\":\"address[]\"}],\"name\":\"balances\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"}]",
}
BalanceMetaData contains all meta data concerning the Balance contract.
var LighthouseLatestHeadEpoch uint64 = 0
LighthouseLatestHeadEpoch is used to cache the latest head epoch for participation requests
Functions ¶
func Uint64Unmarshal ¶
Parse a uint64, with or without quotes, in any base, with common prefixes accepted to change base.
Types ¶
type AnySignedBlock ¶
type AnySignedBlock struct { Message struct { Slot uint64Str `json:"slot"` ProposerIndex uint64Str `json:"proposer_index"` ParentRoot string `json:"parent_root"` StateRoot string `json:"state_root"` Body 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 []VoluntaryExit `json:"voluntary_exits"` // not present in phase0 blocks SyncAggregate *SyncAggregate `json:"sync_aggregate,omitempty"` // not present in phase0/altair blocks ExecutionPayload *ExecutionPayload `json:"execution_payload"` // present only after capella SignedBLSToExecutionChange []*SignedBLSToExecutionChange `json:"bls_to_execution_changes"` } `json:"body"` } `json:"message"` Signature bytesHexStr `json:"signature"` }
type Attestation ¶
type Attestation struct { AggregationBits string `json:"aggregation_bits"` Signature string `json:"signature"` Data struct { Slot uint64Str `json:"slot"` Index uint64Str `json:"index"` BeaconBlockRoot string `json:"beacon_block_root"` Source struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"source"` Target struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"target"` } `json:"data"` }
type AttesterSlashing ¶
type AttesterSlashing struct { Attestation1 struct { AttestingIndices []uint64Str `json:"attesting_indices"` Signature string `json:"signature"` Data struct { Slot uint64Str `json:"slot"` Index uint64Str `json:"index"` BeaconBlockRoot string `json:"beacon_block_root"` Source struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"source"` Target struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"target"` } `json:"data"` } `json:"attestation_1"` Attestation2 struct { AttestingIndices []uint64Str `json:"attesting_indices"` Signature string `json:"signature"` Data struct { Slot uint64Str `json:"slot"` Index uint64Str `json:"index"` BeaconBlockRoot string `json:"beacon_block_root"` Source struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"source"` Target struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"target"` } `json:"data"` } `json:"attestation_2"` }
type Balance ¶
type Balance struct { BalanceCaller // Read-only binding to the contract BalanceTransactor // Write-only binding to the contract BalanceFilterer // Log filterer for contract events }
Balance is an auto generated Go binding around an Ethereum contract.
func NewBalance ¶
NewBalance creates a new instance of Balance, bound to a specific deployed contract.
type BalanceCaller ¶
type BalanceCaller struct {
// contains filtered or unexported fields
}
BalanceCaller is an auto generated read-only Go binding around an Ethereum contract.
func NewBalanceCaller ¶
func NewBalanceCaller(address common.Address, caller bind.ContractCaller) (*BalanceCaller, error)
NewBalanceCaller creates a new read-only instance of Balance, bound to a specific deployed contract.
func (*BalanceCaller) Balances ¶
func (_Balance *BalanceCaller) Balances(opts *bind.CallOpts, users []common.Address, tokens []common.Address) ([]*big.Int, error)
Balances is a free data retrieval call binding the contract method 0xf0002ea9.
Solidity: function balances(address[] users, address[] tokens) view returns(uint256[])
func (*BalanceCaller) TokenBalance ¶
func (_Balance *BalanceCaller) TokenBalance(opts *bind.CallOpts, user common.Address, token common.Address) (*big.Int, error)
TokenBalance is a free data retrieval call binding the contract method 0x1049334f.
Solidity: function tokenBalance(address user, address token) view returns(uint256)
type BalanceCallerRaw ¶
type BalanceCallerRaw struct {
Contract *BalanceCaller // Generic read-only contract binding to access the raw methods on
}
BalanceCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
func (*BalanceCallerRaw) Call ¶
func (_Balance *BalanceCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error
Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.
type BalanceCallerSession ¶
type BalanceCallerSession struct { Contract *BalanceCaller // Generic contract caller binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session }
BalanceCallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.
func (*BalanceCallerSession) Balances ¶
func (_Balance *BalanceCallerSession) Balances(users []common.Address, tokens []common.Address) ([]*big.Int, error)
Balances is a free data retrieval call binding the contract method 0xf0002ea9.
Solidity: function balances(address[] users, address[] tokens) view returns(uint256[])
func (*BalanceCallerSession) TokenBalance ¶
func (_Balance *BalanceCallerSession) TokenBalance(user common.Address, token common.Address) (*big.Int, error)
TokenBalance is a free data retrieval call binding the contract method 0x1049334f.
Solidity: function tokenBalance(address user, address token) view returns(uint256)
type BalanceFilterer ¶
type BalanceFilterer struct {
// contains filtered or unexported fields
}
BalanceFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
func NewBalanceFilterer ¶
func NewBalanceFilterer(address common.Address, filterer bind.ContractFilterer) (*BalanceFilterer, error)
NewBalanceFilterer creates a new log filterer instance of Balance, bound to a specific deployed contract.
type BalanceRaw ¶
type BalanceRaw struct {
Contract *Balance // Generic contract binding to access the raw methods on
}
BalanceRaw is an auto generated low-level Go binding around an Ethereum contract.
func (*BalanceRaw) Call ¶
func (_Balance *BalanceRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error
Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.
func (*BalanceRaw) Transact ¶
func (_Balance *BalanceRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)
Transact invokes the (paid) contract method with params as input values.
func (*BalanceRaw) Transfer ¶
func (_Balance *BalanceRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)
Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.
type BalanceSession ¶
type BalanceSession struct { Contract *Balance // Generic contract binding to set the session for CallOpts bind.CallOpts // Call options to use throughout this session TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session }
BalanceSession is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.
func (*BalanceSession) Balances ¶
func (_Balance *BalanceSession) Balances(users []common.Address, tokens []common.Address) ([]*big.Int, error)
Balances is a free data retrieval call binding the contract method 0xf0002ea9.
Solidity: function balances(address[] users, address[] tokens) view returns(uint256[])
func (*BalanceSession) Fallback ¶
func (_Balance *BalanceSession) Fallback(calldata []byte) (*types.Transaction, error)
Fallback is a paid mutator transaction binding the contract fallback function.
Solidity: fallback() payable returns()
func (*BalanceSession) TokenBalance ¶
func (_Balance *BalanceSession) TokenBalance(user common.Address, token common.Address) (*big.Int, error)
TokenBalance is a free data retrieval call binding the contract method 0x1049334f.
Solidity: function tokenBalance(address user, address token) view returns(uint256)
type BalanceTransactor ¶
type BalanceTransactor struct {
// contains filtered or unexported fields
}
BalanceTransactor is an auto generated write-only Go binding around an Ethereum contract.
func NewBalanceTransactor ¶
func NewBalanceTransactor(address common.Address, transactor bind.ContractTransactor) (*BalanceTransactor, error)
NewBalanceTransactor creates a new write-only instance of Balance, bound to a specific deployed contract.
func (*BalanceTransactor) Fallback ¶
func (_Balance *BalanceTransactor) Fallback(opts *bind.TransactOpts, calldata []byte) (*types.Transaction, error)
Fallback is a paid mutator transaction binding the contract fallback function.
Solidity: fallback() payable returns()
type BalanceTransactorRaw ¶
type BalanceTransactorRaw struct {
Contract *BalanceTransactor // Generic write-only contract binding to access the raw methods on
}
BalanceTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
func (*BalanceTransactorRaw) Transact ¶
func (_Balance *BalanceTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)
Transact invokes the (paid) contract method with params as input values.
func (*BalanceTransactorRaw) Transfer ¶
func (_Balance *BalanceTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)
Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.
type BalanceTransactorSession ¶
type BalanceTransactorSession struct { Contract *BalanceTransactor // Generic contract transactor binding to set the session for TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session }
BalanceTransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.
func (*BalanceTransactorSession) Fallback ¶
func (_Balance *BalanceTransactorSession) Fallback(calldata []byte) (*types.Transaction, error)
Fallback is a paid mutator transaction binding the contract fallback function.
Solidity: fallback() payable returns()
type Client ¶
type Client interface { GetChainHead() (*types.ChainHead, error) GetEpochData(epoch uint64, skipHistoricBalances bool) (*types.EpochData, error) GetValidatorQueue() (*types.ValidatorQueue, error) GetEpochAssignments(epoch uint64) (*types.EpochAssignments, error) GetBlocksBySlot(slot uint64) ([]*types.Block, error) GetValidatorParticipation(epoch uint64) (*types.ValidatorParticipation, error) GetNewBlockChan() chan *types.Block GetBlockStatusByEpoch(slot uint64) ([]*types.CanonBlock, error) GetFinalityCheckpoints(epoch uint64) (*types.FinalityCheckpoints, error) GetSyncCommittee(stateID string, epoch uint64) (*StandardSyncCommittee, error) GetBalancesForEpoch(epoch int64) (map[uint64]uint64, error) }
Client provides an interface for RPC clients
type ErigonClient ¶
type ErigonClient struct {
// contains filtered or unexported fields
}
var CurrentErigonClient *ErigonClient
func NewErigonClient ¶
func NewErigonClient(endpoint string) (*ErigonClient, error)
func (*ErigonClient) Close ¶
func (client *ErigonClient) Close()
func (*ErigonClient) GetBalances ¶
func (client *ErigonClient) GetBalances(pairs []*types.Eth1AddressBalance, addressIndex, tokenIndex int) ([]*types.Eth1AddressBalance, error)
func (*ErigonClient) GetBalancesForAddresse ¶
func (client *ErigonClient) GetBalancesForAddresse(address string, tokenStr []string) ([]*types.Eth1AddressBalance, error)
func (*ErigonClient) GetBlock ¶
func (client *ErigonClient) GetBlock(number int64) (*types.Eth1Block, *types.GetBlockTimings, error)
func (*ErigonClient) GetBlockNumberByHash ¶
func (client *ErigonClient) GetBlockNumberByHash(hash string) (uint64, error)
func (*ErigonClient) GetERC20TokenBalance ¶
func (client *ErigonClient) GetERC20TokenBalance(address string, token string) ([]byte, error)
func (*ErigonClient) GetERC20TokenMetadata ¶
func (client *ErigonClient) GetERC20TokenMetadata(token []byte) (*types.ERC20Metadata, error)
func (*ErigonClient) GetLatestEth1BlockNumber ¶
func (client *ErigonClient) GetLatestEth1BlockNumber() (uint64, error)
func (*ErigonClient) GetNativeBalance ¶
func (client *ErigonClient) GetNativeBalance(address string) ([]byte, error)
func (*ErigonClient) GetNativeClient ¶
func (client *ErigonClient) GetNativeClient() *ethclient.Client
func (*ErigonClient) GetRPCClient ¶
func (client *ErigonClient) GetRPCClient() *geth_rpc.Client
func (*ErigonClient) TraceGeth ¶
func (client *ErigonClient) TraceGeth(blockHash common.Hash) ([]*GethTraceCallResult, error)
func (*ErigonClient) TraceParity ¶
func (client *ErigonClient) TraceParity(blockNumber uint64) ([]*ParityTraceResult, error)
func (*ErigonClient) TraceParityTx ¶
func (client *ErigonClient) TraceParityTx(txHash string) ([]*ParityTraceResult, error)
type Eth1Client ¶
type ExecutionPayload ¶
type ExecutionPayload struct { ParentHash bytesHexStr `json:"parent_hash"` FeeRecipient bytesHexStr `json:"fee_recipient"` StateRoot bytesHexStr `json:"state_root"` ReceiptsRoot bytesHexStr `json:"receipts_root"` LogsBloom bytesHexStr `json:"logs_bloom"` PrevRandao bytesHexStr `json:"prev_randao"` BlockNumber uint64Str `json:"block_number"` GasLimit uint64Str `json:"gas_limit"` GasUsed uint64Str `json:"gas_used"` Timestamp uint64Str `json:"timestamp"` ExtraData bytesHexStr `json:"extra_data"` BaseFeePerGas uint64Str `json:"base_fee_per_gas"` BlockHash bytesHexStr `json:"block_hash"` Transactions []bytesHexStr `json:"transactions"` // present only after capella Withdrawals []WithdrawalPayload `json:"withdrawals"` }
https://ethereum.github.io/beacon-APIs/#/Beacon/getBlockV2 https://github.com/ethereum/consensus-specs/blob/v1.1.9/specs/bellatrix/beacon-chain.md#executionpayload
type GethClient ¶
type GethClient struct {
// contains filtered or unexported fields
}
var CurrentGethClient *GethClient
func NewGethClient ¶
func NewGethClient(endpoint string) (*GethClient, error)
func (*GethClient) Close ¶
func (client *GethClient) Close()
func (*GethClient) GetBalances ¶
func (client *GethClient) GetBalances(pairs []string) ([]*types.Eth1AddressBalance, error)
func (*GethClient) GetBalancesForAddresse ¶
func (client *GethClient) GetBalancesForAddresse(address string, tokenStr []string) ([]*types.Eth1AddressBalance, error)
func (*GethClient) GetBlock ¶
func (client *GethClient) GetBlock(number int64) (*types.Eth1Block, *types.GetBlockTimings, error)
func (*GethClient) GetERC20TokenBalance ¶
func (client *GethClient) GetERC20TokenBalance(address string, token string) ([]byte, error)
func (*GethClient) GetERC20TokenMetadata ¶
func (client *GethClient) GetERC20TokenMetadata(token []byte) (*types.ERC20Metadata, error)
func (*GethClient) GetLatestEth1BlockNumber ¶
func (client *GethClient) GetLatestEth1BlockNumber() (uint64, error)
func (*GethClient) GetNativeBalance ¶
func (client *GethClient) GetNativeBalance(address string) ([]byte, error)
func (*GethClient) GetNativeClient ¶
func (client *GethClient) GetNativeClient() *ethclient.Client
func (*GethClient) GetRPCClient ¶
func (client *GethClient) GetRPCClient() *geth_rpc.Client
func (*GethClient) TraceGeth ¶
func (client *GethClient) TraceGeth(blockHash common.Hash) ([]*GethTraceCallResult, error)
type GethTraceCallData ¶
type GethTraceCallResult ¶
type LighthouseClient ¶
type LighthouseClient struct {
// contains filtered or unexported fields
}
LighthouseClient holds the Lighthouse client info
func NewLighthouseClient ¶
func NewLighthouseClient(endpoint string, chainID *big.Int) (*LighthouseClient, error)
NewLighthouseClient is used to create a new Lighthouse client
func (*LighthouseClient) GetBalancesForEpoch ¶
func (lc *LighthouseClient) GetBalancesForEpoch(epoch int64) (map[uint64]uint64, error)
func (*LighthouseClient) GetBlockByBlockroot ¶
func (lc *LighthouseClient) GetBlockByBlockroot(blockroot []byte) (*types.Block, error)
func (*LighthouseClient) GetBlockStatusByEpoch ¶
func (pc *LighthouseClient) GetBlockStatusByEpoch(epoch uint64) ([]*types.CanonBlock, error)
func (*LighthouseClient) GetBlocksBySlot ¶
func (lc *LighthouseClient) GetBlocksBySlot(slot uint64) ([]*types.Block, error)
GetBlocksBySlot will get the blocks by slot from Lighthouse RPC api
func (*LighthouseClient) GetChainHead ¶
func (lc *LighthouseClient) GetChainHead() (*types.ChainHead, error)
GetChainHead gets the chain head from Lighthouse
func (*LighthouseClient) GetEpochAssignments ¶
func (lc *LighthouseClient) GetEpochAssignments(epoch uint64) (*types.EpochAssignments, error)
GetEpochAssignments will get the epoch assignments from Lighthouse RPC api
func (*LighthouseClient) GetEpochData ¶
func (lc *LighthouseClient) GetEpochData(epoch uint64, skipHistoricBalances bool) (*types.EpochData, error)
GetEpochData will get the epoch data from Lighthouse RPC api
func (*LighthouseClient) GetFinalityCheckpoints ¶
func (lc *LighthouseClient) GetFinalityCheckpoints(epoch uint64) (*types.FinalityCheckpoints, error)
func (*LighthouseClient) GetNewBlockChan ¶
func (lc *LighthouseClient) GetNewBlockChan() chan *types.Block
func (*LighthouseClient) GetSyncCommittee ¶
func (lc *LighthouseClient) GetSyncCommittee(stateID string, epoch uint64) (*StandardSyncCommittee, error)
func (*LighthouseClient) GetValidatorParticipation ¶
func (lc *LighthouseClient) GetValidatorParticipation(epoch uint64) (*types.ValidatorParticipation, error)
GetValidatorParticipation will get the validator participation from the Lighthouse RPC api
func (*LighthouseClient) GetValidatorQueue ¶
func (lc *LighthouseClient) GetValidatorQueue() (*types.ValidatorQueue, error)
type LighthouseValidatorParticipationResponse ¶
type LighthouseValidatorParticipationResponse struct {
Data struct {
CurrentEpochActiveGwei uint64Str `json:"current_epoch_active_gwei"`
PreviousEpochActiveGwei uint64Str `json:"previous_epoch_active_gwei"`
CurrentEpochTargetAttestingGwei uint64Str `json:"current_epoch_target_attesting_gwei"`
PreviousEpochTargetAttestingGwei uint64Str `json:"previous_epoch_target_attesting_gwei"`
PreviousEpochHeadAttestingGwei uint64Str `json:"previous_epoch_head_attesting_gwei"`
} `json:"data"`
}
type ParityTraceResult ¶
type ParityTraceResult struct { Action struct { CallType string `json:"callType"` From string `json:"from"` Gas string `json:"gas"` Input string `json:"input"` To string `json:"to"` Value string `json:"value"` Init string `json:"init"` Address string `json:"address"` Balance string `json:"balance"` RefundAddress string `json:"refundAddress"` Author string `json:"author"` RewardType string `json:"rewardType"` } `json:"action"` BlockHash string `json:"blockHash"` BlockNumber int `json:"blockNumber"` Error string `json:"error"` Result struct { GasUsed string `json:"gasUsed"` Code string `json:"code"` Output string `json:"output"` Address string `json:"address"` } `json:"result"` Subtraces int `json:"subtraces"` TraceAddress []int64 `json:"traceAddress"` TransactionHash string `json:"transactionHash"` TransactionPosition int `json:"transactionPosition"` Type string `json:"type"` }
type ProposerSlashing ¶
type ProposerSlashing struct { SignedHeader1 struct { Message struct { Slot uint64Str `json:"slot"` ProposerIndex uint64Str `json:"proposer_index"` ParentRoot string `json:"parent_root"` StateRoot string `json:"state_root"` BodyRoot string `json:"body_root"` } `json:"message"` Signature string `json:"signature"` } `json:"signed_header_1"` SignedHeader2 struct { Message struct { Slot uint64Str `json:"slot"` ProposerIndex uint64Str `json:"proposer_index"` ParentRoot string `json:"parent_root"` StateRoot string `json:"state_root"` BodyRoot string `json:"body_root"` } `json:"message"` Signature string `json:"signature"` } `json:"signed_header_2"` }
type SignedBLSToExecutionChange ¶
type SignedBLSToExecutionChange struct { Message struct { ValidatorIndex uint64Str `json:"validator_index"` FromBlsPubkey bytesHexStr `json:"from_bls_pubkey"` ToExecutionAddress bytesHexStr `json:"to_execution_address"` } `json:"message"` Signature bytesHexStr `json:"signature"` }
type StandardBeaconHeaderResponse ¶
type StandardBeaconHeaderResponse struct { Data struct { Root string `json:"root"` Canonical bool `json:"canonical"` Header struct { Message struct { Slot uint64Str `json:"slot"` ProposerIndex uint64Str `json:"proposer_index"` ParentRoot string `json:"parent_root"` StateRoot string `json:"state_root"` BodyRoot string `json:"body_root"` } `json:"message"` Signature string `json:"signature"` } `json:"header"` } `json:"data"` }
type StandardBeaconHeadersResponse ¶
type StandardBeaconHeadersResponse struct { Data []struct { Root string `json:"root"` Canonical bool `json:"canonical"` Header struct { Message struct { Slot uint64Str `json:"slot"` ProposerIndex uint64Str `json:"proposer_index"` ParentRoot string `json:"parent_root"` StateRoot string `json:"state_root"` BodyRoot string `json:"body_root"` } `json:"message"` Signature string `json:"signature"` } `json:"header"` } `json:"data"` }
type StandardCommitteeEntry ¶
type StandardCommitteeEntry struct { Index uint64Str `json:"index"` Slot uint64Str `json:"slot"` Validators []string `json:"validators"` }
type StandardCommitteesResponse ¶
type StandardCommitteesResponse struct {
Data []StandardCommitteeEntry `json:"data"`
}
type StandardFinalityCheckpointsResponse ¶
type StandardFinalityCheckpointsResponse struct { Data struct { PreviousJustified struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"previous_justified"` CurrentJustified struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"current_justified"` Finalized struct { Epoch uint64Str `json:"epoch"` Root string `json:"root"` } `json:"finalized"` } `json:"data"` }
type StandardProposerDutiesResponse ¶
type StandardProposerDutiesResponse struct { DependentRoot string `json:"dependent_root"` Data []StandardProposerDuty `json:"data"` }
type StandardProposerDuty ¶
type StandardProposerDuty struct { Pubkey string `json:"pubkey"` ValidatorIndex uint64Str `json:"validator_index"` Slot uint64Str `json:"slot"` }
type StandardSyncCommittee ¶
type StandardSyncCommitteesResponse ¶
type StandardSyncCommitteesResponse struct {
Data StandardSyncCommittee `json:"data"`
}
type StandardSyncingResponse ¶
type StandardSyncingResponse struct { Data struct { IsSyncing bool `json:"is_syncing"` HeadSlot uint64Str `json:"head_slot"` SyncDistance uint64Str `json:"sync_distance"` } `json:"data"` }
type StandardV1BlockRootResponse ¶
type StandardV1BlockRootResponse struct { Data struct { Root string `json:"root"` } `json:"data"` }
type StandardV2BlockResponse ¶
type StandardV2BlockResponse struct { Version string `json:"version"` Data AnySignedBlock `json:"data"` }
type StandardValidatorBalancesResponse ¶
type StandardValidatorBalancesResponse struct {
Data []struct {
Index uint64Str `json:"index"`
Balance uint64Str `json:"balance"`
} `json:"data"`
}
type StandardValidatorEntry ¶
type StandardValidatorEntry struct { Index uint64Str `json:"index"` Balance uint64Str `json:"balance"` Status string `json:"status"` Validator struct { Pubkey string `json:"pubkey"` WithdrawalCredentials string `json:"withdrawal_credentials"` EffectiveBalance uint64Str `json:"effective_balance"` Slashed bool `json:"slashed"` ActivationEligibilityEpoch uint64Str `json:"activation_eligibility_epoch"` ActivationEpoch uint64Str `json:"activation_epoch"` ExitEpoch uint64Str `json:"exit_epoch"` WithdrawableEpoch uint64Str `json:"withdrawable_epoch"` } `json:"validator"` }
type StandardValidatorsResponse ¶
type StandardValidatorsResponse struct {
Data []StandardValidatorEntry `json:"data"`
}
type StreamedBlockEventData ¶
type SyncAggregate ¶
type VoluntaryExit ¶
type VoluntaryExit struct { Message struct { Epoch uint64Str `json:"epoch"` ValidatorIndex uint64Str `json:"validator_index"` } `json:"message"` Signature string `json:"signature"` }
type WithdrawalPayload ¶
type WithdrawalPayload struct { Index uint64Str `json:"index"` ValidatorIndex uint64Str `json:"validator_index"` Address bytesHexStr `json:"address"` Amount uint64Str `json:"amount"` }