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 TransactionTypeRemoveSubnetValidator TransactionType = 0x15 TransactionTypeTransformSubnet TransactionType = 0x16 TransactionTypeAddPermissionlessValidator TransactionType = 0x17 TransactionTypeAddPermissionlessDelegator TransactionType = 0x18 ResultTypeTransaction SearchResultType = "transaction" ResultTypeAsset SearchResultType = "asset" ResultTypeAddress SearchResultType = "address" ResultTypeOutput SearchResultType = "output" TypeUnknown = "unknown" )
var Bech32HRP = constants.GetHRP(constants.TahoeID)
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"` }