Documentation
¶
Index ¶
- Variables
- func SetBech32HRP(networkID uint32)
- type Address
- type AddressChainInfo
- type AddressChains
- type AddressInfo
- type AddressList
- type Aggregates
- type AggregatesHistogram
- type Asset
- type AssetAggregate
- type AssetInfo
- type AssetList
- type AssetTokenCounts
- type Block
- type BlockList
- type BlockType
- type CChainType
- type CTransactionData
- type CTransactionList
- type ChainCounts
- type ChainInfo
- type ControlSignature
- type CvmOutput
- type CvmTransactionsTxDataTrace
- type Input
- type InputCredentials
- type ListMetadata
- type Output
- type OutputAddress
- type OutputList
- type OutputType
- type PvmProposerModel
- type RawTx
- type SearchResult
- type SearchResultSet
- type SearchResultType
- type SearchResults
- type StringID
- type StringShortID
- type TokenAmount
- type Transaction
- type TransactionList
- type TransactionType
- type TxfeeAggregates
- type TxfeeAggregatesHistogram
Constants ¶
This section is empty.
Variables ¶
var ( CChainIn CChainType = 1 CchainOut CChainType = 2 CChainImport CChainType = 1 CChainExport CChainType = 2 OutputTypesSECP2556K1Transfer OutputType = 7 OutputTypesSECP2556K1Mint OutputType = 6 OutputTypesNFTMint OutputType = 10 OutputTypesNFTTransfer OutputType = 11 OutputTypesAtomicExportTx OutputType = 0xFFFFFFF1 OutputTypesAtomicImportTx OutputType = 0xFFFFFFF2 BlockTypeProposal BlockType = 0x0 BlockTypeAbort BlockType = 0x1 BlockTypeCommit BlockType = 0x2 BlockTypeStandard BlockType = 0x3 BlockTypeAtomic BlockType = 0x4 TransactionTypeBase TransactionType = 0x0 TransactionTypeCreateAsset TransactionType = 0x1 TransactionTypeOperation TransactionType = 0x2 TransactionTypeAVMImport TransactionType = 0x3 TransactionTypeAVMExport TransactionType = 0x4 TransactionTypeAddValidator TransactionType = 0xc TransactionTypeAddSubnetValidator TransactionType = 0xd TransactionTypeAddDelegator TransactionType = 0xe TransactionTypeCreateChain TransactionType = 0xf TransactionTypeCreateSubnet TransactionType = 0x10 TransactionTypePVMImport TransactionType = 0x11 TransactionTypePVMExport TransactionType = 0x12 TransactionTypeAdvanceTime TransactionType = 0x13 TransactionTypeRewardValidator TransactionType = 0x14 ResultTypeTransaction SearchResultType = "transaction" ResultTypeAsset SearchResultType = "asset" ResultTypeAddress SearchResultType = "address" ResultTypeOutput SearchResultType = "output" TypeUnknown = "unknown" )
var Bech32HRP = constants.GetHRP(constants.EverestID)
Bech32HRP is the human-readable part of bech32 addresses. It needs to be available to Address.MarshalJSON is there is no other way to give it this data
Functions ¶
func SetBech32HRP ¶
func SetBech32HRP(networkID uint32)
SetBech32HRP sets the package-wide beck32HRP to use for Address marshaling.
Types ¶
type Address ¶
type Address StringShortID
Address represents an address; a short ID that is shown to users as bech32.
func (Address) MarshalJSON ¶
MarshalJSON encodes an Address to JSON by converting it to bech32.
func (Address) MarshalString ¶
type AddressChainInfo ¶
type AddressChains ¶
type AddressInfo ¶
type AddressList ¶
type AddressList struct {
ListMetadata
Addresses []*AddressInfo `json:"addresses"`
}
type Aggregates ¶
type Aggregates struct {
// Idx is used internally when creating a histogram of Aggregates.
// It is exported only so it can be written to by dbr.
Idx int `json:"-"`
// StartTime is the calculated start time rounded to the nearest
// TransactionRoundDuration.
StartTime time.Time `json:"startTime"`
// EndTime is the calculated end time rounded to the nearest
// TransactionRoundDuration.
EndTime time.Time `json:"endTime"`
TransactionVolume TokenAmount `json:"transactionVolume"`
TransactionCount uint64 `json:"transactionCount"`
AddressCount uint64 `json:"addressCount"`
OutputCount uint64 `json:"outputCount"`
AssetCount uint64 `json:"assetCount"`
}
type AggregatesHistogram ¶
type AggregatesHistogram struct {
Aggregates Aggregates `json:"aggregates"`
IntervalSize time.Duration `json:"intervalSize,omitempty"`
Intervals []Aggregates `json:"intervals,omitempty"`
// StartTime is the calculated start time rounded to the nearest
// TransactionRoundDuration.
StartTime time.Time `json:"startTime"`
// EndTime is the calculated end time rounded to the nearest
// TransactionRoundDuration.
EndTime time.Time `json:"endTime"`
}
type Asset ¶
type Asset struct {
ID StringID `json:"id"`
ChainID StringID `json:"chainID"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Alias string `json:"alias"`
CurrentSupply TokenAmount `json:"currentSupply"`
CreatedAt time.Time `json:"timestamp"`
Score uint64 `json:"-"`
Denomination uint8 `json:"denomination"`
VariableCap uint8 `json:"variableCap"`
Nft uint8 `json:"nft"`
}
type AssetAggregate ¶
type AssetAggregate struct {
Asset ids.ID `json:"asset"`
Aggregate *AggregatesHistogram `json:"aggregate"`
}
type AssetInfo ¶
type AssetInfo struct {
AssetID StringID `json:"id"`
TransactionCount uint64 `json:"transactionCount"`
UTXOCount uint64 `json:"utxoCount"`
Balance TokenAmount `json:"balance"`
TotalReceived TokenAmount `json:"totalReceived"`
TotalSent TokenAmount `json:"totalSent"`
}
type AssetList ¶
type AssetList struct {
ListMetadata
Assets []*Asset `json:"assets"`
}
type AssetTokenCounts ¶
type AssetTokenCounts map[StringID]TokenAmount
AssetTokenCounts maps asset IDs to a TokenAmount for that asset.
type BlockList ¶
type BlockList struct {
ListMetadata
Blocks []*Block `json:"blocks"`
}
type CChainType ¶
type CChainType uint16
type CTransactionData ¶
type CTransactionData struct {
Type int `json:"type"`
Block string `json:"block"`
Hash string `json:"hash"`
CreatedAt time.Time `json:"createdAt"`
Nonce uint64 `json:"nonce"`
GasPrice *string `json:"gasPrice,omitempty"`
GasFeeCap *string `json:"maxFeePerGas,omitempty"`
GasTipCap *string `json:"maxPriorityFeePerGas,omitempty"`
GasLimit uint64 `json:"gasLimit"`
BlockGasUsed uint64 `json:"blockGasUsed"`
BlockGasLimit uint64 `json:"blockGasLimit"`
BlockNonce uint64 `json:"blockNonce"`
BlockHash string `json:"blockHash"`
Recipient *string `json:"recipient,omitempty"`
Amount *string `json:"value,omitempty"`
Payload *string `json:"input,omitempty"`
ToAddr string `json:"toAddr"`
FromAddr string `json:"fromAddr"`
// Signature values
V *string `json:"v,omitempty"`
R *string `json:"r,omitempty"`
S *string `json:"s,omitempty"`
Traces []*CvmTransactionsTxDataTrace `json:"traces"`
TracesMax uint32 `json:"-"`
TracesMap map[uint32]*CvmTransactionsTxDataTrace `json:"-"`
}
type CTransactionList ¶
type CTransactionList struct {
Transactions []*CTransactionData
// StartTime is the calculated start time rounded to the nearest
// TransactionRoundDuration.
StartTime time.Time `json:"startTime"`
// EndTime is the calculated end time rounded to the nearest
// TransactionRoundDuration.
EndTime time.Time `json:"endTime"`
}
type ChainCounts ¶
type ChainInfo ¶
type ChainInfo struct {
ID StringID `json:"chainID"`
Alias string `json:"chainAlias"`
VM string `json:"vm"`
DJTXAssetID StringID `json:"djtxAssetID"`
NetworkID uint32 `json:"networkID"`
}
ChainInfo represents an overview of data about a given chain
type ControlSignature ¶
type ControlSignature []byte
type CvmOutput ¶
type CvmOutput struct {
Type CChainType `json:"type"`
TransactionType CChainType `json:"transactionType"`
Idx uint64 `json:"idx"`
Amount TokenAmount `json:"amount"`
Nonce uint64 `json:"nonce"`
ID StringID `json:"id"`
TransactionID StringID `json:"transactionID"`
Address string `json:"address"`
AssetID StringID `json:"assetID"`
CreatedAt time.Time `json:"timestamp"`
ChainID StringID `json:"chainID"`
Block string `json:"block"`
}
type CvmTransactionsTxDataTrace ¶
type CvmTransactionsTxDataTrace struct {
Hash *string `json:"hash,omitempty"`
Idx *uint32 `json:"idx,omitempty"`
CallType string `json:"callType"`
ToAddr string `json:"to"`
FromAddr string `json:"from"`
Type string `json:"type"`
GasUsed string `json:"gasUsed"`
Gas string `json:"gas"`
Input *string `json:"input,omitempty"`
Output *string `json:"output,omitempty"`
Value string `json:"value"`
CreatedContractAddressHash *string `json:"createdContractAddressHash,omitempty"`
Init *string `json:"init,omitempty"`
CreatedContractCode *string `json:"createdContractCode,omitempty"`
Error *string `json:"error,omitempty"`
RevertReason *string `json:"revertReason,omitempty"`
RevertReasonUnpacked *string `json:"revertReasonUnpacked,omitempty"`
TraceAddress []int `json:"traceAddress,omitempty"`
}
type Input ¶
type Input struct {
Output *Output `json:"output"`
Creds []InputCredentials `json:"credentials"`
}
type InputCredentials ¶
type ListMetadata ¶
type ListMetadata struct {
Count *uint64 `json:"count,omitempty"`
}
type Output ¶
type Output struct {
ID StringID `json:"id"`
TransactionID StringID `json:"transactionID"`
OutputIndex uint64 `json:"outputIndex"`
AssetID StringID `json:"assetID"`
Stake bool `json:"stake"`
Frozen bool `json:"frozen"`
Stakeableout bool `json:"stakeableout"`
Genesisutxo bool `json:"genesisutxo"`
OutputType OutputType `json:"outputType"`
Amount TokenAmount `json:"amount"`
Locktime uint64 `json:"locktime"`
StakeLocktime uint64 `json:"stakeLocktime"`
Threshold uint64 `json:"threshold"`
Addresses []Address `json:"addresses"`
CAddresses []string `json:"caddresses"`
CreatedAt time.Time `json:"timestamp"`
RedeemingTransactionID StringID `json:"redeemingTransactionID"`
ChainID StringID `json:"chainID"`
InChainID StringID `json:"inChainID"`
OutChainID StringID `json:"outChainID"`
GroupID uint64 `json:"groupID"`
Payload []byte `json:"payload"`
Block string `json:"block"`
Nonce uint64 `json:"nonce"`
RewardUtxo bool `json:"rewardUtxo"`
Score uint64 `json:"-"`
}
type OutputAddress ¶
type OutputList ¶
type OutputList struct {
ListMetadata
Outputs []*Output `json:"outputs"`
}
type OutputType ¶
type OutputType uint32
OutputType represents a sub class of Output.
func (OutputType) String ¶
func (t OutputType) String() string
type PvmProposerModel ¶
type SearchResult ¶
type SearchResult struct {
// SearchResultType is the type of object found
SearchResultType `json:"type"`
// Data is the object itself
Data interface{} `json:"data"`
// Score is a rank of how well this result matches the query
Score uint64 `json:"score"`
}
SearchResult represents a single item matching a search query.
type SearchResultSet ¶
type SearchResultSet []SearchResult
func (SearchResultSet) Len ¶
func (s SearchResultSet) Len() int
func (SearchResultSet) Less ¶
func (s SearchResultSet) Less(i, j int) bool
func (SearchResultSet) Swap ¶
func (s SearchResultSet) Swap(i, j int)
type SearchResultType ¶
type SearchResultType string
SearchResultType is the type for an object found from a search query.
type SearchResults ¶
type SearchResults struct {
// Count is the total number of matching results
Count uint64 `json:"count"`
// Results is a list of SearchResult
Results SearchResultSet `json:"results"`
}
SearchResults represents a set of items returned for a search query.
type StringID ¶
type StringID string
StringID represents a 256bit hash encoded as a base58 string.
func ToStringID ¶
ToStringID converts an ids.ID into a StringID.
type StringShortID ¶
type StringShortID string
StringShortID represents a 160bit hash encoded as a base58 string.
func ToShortStringID ¶
func ToShortStringID(id ids.ShortID) StringShortID
ToShortStringID converts an ids.ShortID into a StringShortID.
func (StringShortID) Equals ¶
func (rid StringShortID) Equals(oRID StringShortID) bool
Equals returns true if and only if the two stringShortIDs represent the same ID.
type TokenAmount ¶
type TokenAmount string
TokenAmount represents some number of tokens as a string.
func TokenAmountForUint64 ¶
func TokenAmountForUint64(i uint64) TokenAmount
TokenAmountForUint64 returns an TokenAmount for the given uint64.
type Transaction ¶
type Transaction struct {
ID StringID `json:"id"`
ChainID StringID `json:"chainID"`
Type string `json:"type"`
Inputs []*Input `json:"inputs"`
Outputs []*Output `json:"outputs"`
Memo []byte `json:"memo"`
InputTotals AssetTokenCounts `json:"inputTotals"`
OutputTotals AssetTokenCounts `json:"outputTotals"`
ReusedAddressTotals AssetTokenCounts `json:"reusedAddressTotals"`
CanonicalSerialization []byte `json:"canonicalSerialization,omitempty"`
CreatedAt time.Time `json:"timestamp"`
Txfee uint64 `json:"txFee"`
Genesis bool `json:"genesis"`
Rewarded bool `json:"rewarded"`
RewardedTime *time.Time `json:"rewardedTime"`
Epoch uint64 `json:"epoch"`
VertexID StringID `json:"vertexId"`
ValidatorNodeID StringID `json:"validatorNodeID"`
ValidatorStart uint64 `json:"validatorStart"`
ValidatorEnd uint64 `json:"validatorEnd"`
TxBlockID StringID `json:"txBlockId"`
Proposer *PvmProposerModel `json:"proposer,omitempty"`
Score uint64 `json:"-"`
}
type TransactionList ¶
type TransactionList struct {
ListMetadata
Transactions []*Transaction `json:"transactions"`
// StartTime is the calculated start time rounded to the nearest
// TransactionRoundDuration.
StartTime time.Time `json:"startTime"`
// EndTime is the calculated end time rounded to the nearest
// TransactionRoundDuration.
EndTime time.Time `json:"endTime"`
Next *string `json:"next,omitempty"`
}
type TransactionType ¶
type TransactionType uint16
TransactionType represents a sub class of Transaction.
func (TransactionType) String ¶
func (t TransactionType) String() string
type TxfeeAggregates ¶
type TxfeeAggregates struct {
// Idx is used internally when creating a histogram of Aggregates.
// It is exported only so it can be written to by dbr.
Idx int `json:"-"`
// StartTime is the calculated start time rounded to the nearest
// TransactionRoundDuration.
StartTime time.Time `json:"startTime"`
// EndTime is the calculated end time rounded to the nearest
// TransactionRoundDuration.
EndTime time.Time `json:"endTime"`
Txfee TokenAmount `json:"txfee"`
}
type TxfeeAggregatesHistogram ¶
type TxfeeAggregatesHistogram struct {
TxfeeAggregates TxfeeAggregates `json:"aggregates"`
IntervalSize time.Duration `json:"intervalSize,omitempty"`
Intervals []TxfeeAggregates `json:"intervals,omitempty"`
// StartTime is the calculated start time rounded to the nearest
// TransactionRoundDuration.
StartTime time.Time `json:"startTime"`
// EndTime is the calculated end time rounded to the nearest
// TransactionRoundDuration.
EndTime time.Time `json:"endTime"`
}