types

package
v1.19.8 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrRequest        = errors.New("request error")
	ErrParamsNotFound = errors.New("params not found")
)

errors

Functions

This section is empty.

Types

type Account added in v1.14.0

type Account struct {
	Type               string             `json:"@type"`
	Address            string             `json:"address,omitempty"`
	PubKey             interface{}        `json:"pub_key,omitempty"`
	AccountNumber      string             `json:"account_number,omitempty"`
	Sequence           string             `json:"sequence,omitempty"`
	BaseAccount        BaseAccount        `json:"base_account,omitempty"`
	BaseVestingAccount BaseVestingAccount `json:"base_vesting_account,omitempty"`
	Name               string             `json:"name,omitempty"`
	Permissions        []interface{}      `json:"permissions,omitempty"`
	StartTime          *int64             `json:"start_time,string,omitempty"`
	VestingPeriods     []VestingPeriod    `json:"vesting_periods,omitempty"`
}

type AppState

type AppState struct {
	Auth         Auth         `json:"auth"`
	Authz        Authz        `json:"authz"`
	Bank         Bank         `json:"bank"`
	Blob         BlobState    `json:"blob"`
	Capability   Capability   `json:"capability"`
	Crisis       Crisis       `json:"crisis"`
	Distribution Distribution `json:"distribution"`
	Evidence     Evidence     `json:"evidence"`
	Feegrant     Feegrant     `json:"feegrant"`
	Genutil      Genutil      `json:"genutil"`
	Gov          Gov          `json:"gov"`
	Ibc          Ibc          `json:"ibc"`
	Mint         Mint         `json:"mint"`
	Params       interface{}  `json:"params"`
	Qgb          Qgb          `json:"qgb"`
	Slashing     Slashing     `json:"slashing"`
	Staking      Staking      `json:"staking"`
	Transfer     Transfer     `json:"transfer"`
	Vesting      Vesting      `json:"vesting"`
}

type Auth

type Auth struct {
	Params   AuthParams `json:"params"`
	Accounts []Account  `json:"accounts"`
}

type AuthInfo

type AuthInfo struct {
	SignerInfos []SignerInfos `json:"signer_infos"`
	Fee         Fee           `json:"fee"`
	Tip         interface{}   `json:"tip"`
}

type AuthParams

type AuthParams struct {
	MaxMemoCharacters      string `json:"max_memo_characters"`
	TxSigLimit             string `json:"tx_sig_limit"`
	TxSizeCostPerByte      string `json:"tx_size_cost_per_byte"`
	SigVerifyCostEd25519   string `json:"sig_verify_cost_ed25519"`
	SigVerifyCostSecp256K1 string `json:"sig_verify_cost_secp256k1"`
}

type Authz

type Authz struct {
	Authorization []interface{} `json:"authorization"`
}

type Balances

type Balances struct {
	Address string  `json:"address"`
	Coins   []Coins `json:"coins"`
}

type Bank

type Bank struct {
	Params        BankParams      `json:"params"`
	Balances      []Balances      `json:"balances"`
	Supply        []Supply        `json:"supply"`
	DenomMetadata []DenomMetadata `json:"denom_metadata"`
}

type BankParams

type BankParams struct {
	SendEnabled        []interface{} `json:"send_enabled"`
	DefaultSendEnabled bool          `json:"default_send_enabled"`
}

type BaseAccount

type BaseAccount struct {
	Address       string      `json:"address"`
	PubKey        interface{} `json:"pub_key"`
	AccountNumber string      `json:"account_number"`
	Sequence      string      `json:"sequence"`
}

type BaseVestingAccount

type BaseVestingAccount struct {
	BaseAccount      BaseAccount `json:"base_account"`
	OriginalVesting  []Coins     `json:"original_vesting"`
	DelegatedFree    []Coins     `json:"delegated_free"`
	DelegatedVesting []Coins     `json:"delegated_vesting"`
	EndTime          int64       `json:"end_time,string,omitempty"`
}

type Blob

type Blob struct {
	Namespace    string `json:"namespace"`
	Data         string `json:"data"`
	ShareVersion int    `json:"share_version"`
	Commitment   string `json:"commitment"`
}

type BlobParams

type BlobParams struct {
	GasPerBlobByte   int    `json:"gas_per_blob_byte"`
	GovMaxSquareSize string `json:"gov_max_square_size"`
}

type BlobState

type BlobState struct {
	Params BlobParams `json:"params"`
}

type Body

type Body struct {
	Messages                    []Messages    `json:"messages"`
	Memo                        string        `json:"memo"`
	TimeoutHeight               uint64        `json:"timeout_height,string"`
	ExtensionOptions            []interface{} `json:"extension_options"`
	NonCriticalExtensionOptions []interface{} `json:"non_critical_extension_options"`
}

type Capability

type Capability struct {
	Index  string        `json:"index"`
	Owners []interface{} `json:"owners"`
}

type ChannelGenesis

type ChannelGenesis struct {
	Channels            []interface{} `json:"channels"`
	Acknowledgements    []interface{} `json:"acknowledgements"`
	Commitments         []interface{} `json:"commitments"`
	Receipts            []interface{} `json:"receipts"`
	SendSequences       []interface{} `json:"send_sequences"`
	RecvSequences       []interface{} `json:"recv_sequences"`
	AckSequences        []interface{} `json:"ack_sequences"`
	NextChannelSequence string        `json:"next_channel_sequence"`
}

type ClientGenesis

type ClientGenesis struct {
	Clients            []interface{}       `json:"clients"`
	ClientsConsensus   []interface{}       `json:"clients_consensus"`
	ClientsMetadata    []interface{}       `json:"clients_metadata"`
	Params             ClientGenesisParams `json:"params"`
	CreateLocalhost    bool                `json:"create_localhost"`
	NextClientSequence string              `json:"next_client_sequence"`
}

type ClientGenesisParams

type ClientGenesisParams struct {
	AllowedClients []string `json:"allowed_clients"`
}

type Coins

type Coins struct {
	Denom  string `json:"denom"`
	Amount string `json:"amount"`
}

func (Coins) String

func (c Coins) String() string

type Commission

type Commission struct {
	Rate          string `json:"rate"`
	MaxRate       string `json:"max_rate"`
	MaxChangeRate string `json:"max_change_rate"`
}

type ConnectionGenesis

type ConnectionGenesis struct {
	Connections            []interface{}           `json:"connections"`
	ClientConnectionPaths  []interface{}           `json:"client_connection_paths"`
	NextConnectionSequence string                  `json:"next_connection_sequence"`
	Params                 ConnectionGenesisParams `json:"params"`
}

type ConnectionGenesisParams

type ConnectionGenesisParams struct {
	MaxExpectedTimePerBlock string `json:"max_expected_time_per_block"`
}

type Crisis

type Crisis struct {
	ConstantFee Coins `json:"constant_fee"`
}

type DenomMetadata

type DenomMetadata struct {
	Description string          `json:"description"`
	DenomUnits  json.RawMessage `json:"denom_units"`
	Base        string          `json:"base"`
	Display     string          `json:"display"`
	Name        string          `json:"name"`
	Symbol      string          `json:"symbol"`
	URI         string          `json:"uri"`
	URIHash     string          `json:"uri_hash"`
}

type DepositParams

type DepositParams struct {
	MinDeposit       []Coins `json:"min_deposit"`
	MaxDepositPeriod string  `json:"max_deposit_period"`
}

type Description

type Description struct {
	Moniker         string `json:"moniker"`
	Identity        string `json:"identity"`
	Website         string `json:"website"`
	SecurityContact string `json:"security_contact"`
	Details         string `json:"details"`
}

type Distribution

type Distribution struct {
	Params                          DistributionParams `json:"params"`
	FeePool                         FeePool            `json:"fee_pool"`
	DelegatorWithdrawInfos          []interface{}      `json:"delegator_withdraw_infos"`
	PreviousProposer                string             `json:"previous_proposer"`
	OutstandingRewards              []interface{}      `json:"outstanding_rewards"`
	ValidatorAccumulatedCommissions []interface{}      `json:"validator_accumulated_commissions"`
	ValidatorHistoricalRewards      []interface{}      `json:"validator_historical_rewards"`
	ValidatorCurrentRewards         []interface{}      `json:"validator_current_rewards"`
	DelegatorStartingInfos          []interface{}      `json:"delegator_starting_infos"`
	ValidatorSlashEvents            []interface{}      `json:"validator_slash_events"`
}

type DistributionParams

type DistributionParams struct {
	CommunityTax        string `json:"community_tax"`
	BaseProposerReward  string `json:"base_proposer_reward"`
	BonusProposerReward string `json:"bonus_proposer_reward"`
	WithdrawAddrEnabled bool   `json:"withdraw_addr_enabled"`
}

type Error

type Error struct {
	Code    int64           `json:"code"`
	Message string          `json:"message"`
	Data    json.RawMessage `json:"data"`
}

Error -

func (Error) Error

func (e Error) Error() string

Error -

type Evidence

type Evidence struct {
	Evidence []interface{} `json:"evidence"`
}

type Fee

type Fee struct {
	Amount   []interface{} `json:"amount"`
	GasLimit string        `json:"gas_limit"`
	Payer    string        `json:"payer"`
	Granter  string        `json:"granter"`
}

type FeePool

type FeePool struct {
	CommunityPool []interface{} `json:"community_pool"`
}

type Feegrant

type Feegrant struct {
	FeeGrants []json.RawMessage `json:"allowances"`
}

type GenTxs

type GenTxs struct {
	Body       Body     `json:"body"`
	AuthInfo   AuthInfo `json:"auth_info"`
	Signatures []string `json:"signatures"`
}

type Genesis

type Genesis struct {
	GenesisTime     time.Time             `json:"genesis_time"`
	ChainID         string                `json:"chain_id"`
	InitialHeight   int64                 `json:"initial_height,string"`
	ConsensusParams types.ConsensusParams `json:"consensus_params"`
	AppHash         types.Hex             `json:"app_hash"`
	AppState        AppState              `json:"app_state"`
}

type GenesisOutput added in v1.14.0

type GenesisOutput struct {
	Genesis

	ModuleAccs []Account
}

type Genutil

type Genutil struct {
	GenTxs []json.RawMessage `json:"gen_txs"`
}

type Gov

type Gov struct {
	StartingProposalID string         `json:"starting_proposal_id"`
	Deposits           []interface{}  `json:"deposits"`
	Votes              []interface{}  `json:"votes"`
	Proposals          []interface{}  `json:"proposals"`
	DepositParams      *DepositParams `json:"deposit_params"`
	Params             *GovParams     `json:"params"`
	VotingParams       *VotingParams  `json:"voting_params"`
	TallyParams        *TallyParams   `json:"tally_params"`
}

func (Gov) GetDepositParams added in v1.19.8

func (gov Gov) GetDepositParams() (DepositParams, error)

func (Gov) GetTallyParams added in v1.19.8

func (gov Gov) GetTallyParams() (TallyParams, error)

func (Gov) GetVotingParams added in v1.19.8

func (gov Gov) GetVotingParams() (VotingParams, error)

type GovParams added in v1.19.8

type GovParams struct {
	MinDeposit                 []Coins `json:"min_deposit"`
	MaxDepositPeriod           string  `json:"max_deposit_period"`
	VotingPeriod               string  `json:"voting_period"`
	Quorum                     string  `json:"quorum"`
	Threshold                  string  `json:"threshold"`
	VetoThreshold              string  `json:"veto_threshold"`
	MinInitialDepositRatio     string  `json:"min_initial_deposit_ratio"`
	ProposalCancelRatio        string  `json:"proposal_cancel_ratio"`
	ProposalCancelDest         string  `json:"proposal_cancel_dest"`
	ExpeditedVotingPeriod      string  `json:"expedited_voting_period"`
	ExpeditedThreshold         string  `json:"expedited_threshold"`
	ExpeditedMinDeposit        []Coins `json:"expedited_min_deposit"`
	BurnVoteQuorum             bool    `json:"burn_vote_quorum"`
	BurnProposalDepositPrevote bool    `json:"burn_proposal_deposit_prevote"`
	BurnVoteVeto               bool    `json:"burn_vote_veto"`
	MinDepositRatio            string  `json:"min_deposit_ratio"`
}

type Ibc

type Ibc struct {
	ClientGenesis     ClientGenesis     `json:"client_genesis"`
	ConnectionGenesis ConnectionGenesis `json:"connection_genesis"`
	ChannelGenesis    ChannelGenesis    `json:"channel_genesis"`
}

type Messages

type Messages struct {
	Type              string      `json:"@type"`
	Description       Description `json:"description"`
	Commission        Commission  `json:"commission"`
	MinSelfDelegation string      `json:"min_self_delegation"`
	DelegatorAddress  string      `json:"delegator_address"`
	ValidatorAddress  string      `json:"validator_address"`
	Pubkey            Pubkey      `json:"pubkey"`
	Value             Coins       `json:"value"`
	EvmAddress        string      `json:"evm_address"`
}

type Mint

type Mint struct {
	Minter Minter `json:"minter"`
}

type Minter

type Minter struct {
	InflationRate     string      `json:"inflation_rate"`
	AnnualProvisions  string      `json:"annual_provisions"`
	PreviousBlockTime interface{} `json:"previous_block_time"`
	BondDenom         string      `json:"bond_denom"`
}

type ModeInfo

type ModeInfo struct {
	Single Single `json:"single"`
}

type Proof

type Proof struct {
	Start int64    `json:"start"`
	End   int64    `json:"end"`
	Nodes []string `json:"nodes"`
}

type Pubkey

type Pubkey struct {
	Type string `json:"@type"`
	Key  string `json:"key"`
}

type Qgb

type Qgb struct {
	Params QgbParams `json:"params"`
}

type QgbParams

type QgbParams struct {
	DataCommitmentWindow string `json:"data_commitment_window"`
}

type Request

type Request struct {
	Method  string `json:"method"`
	Params  []any  `json:"params"`
	Id      int64  `json:"id"`
	JsonRpc string `json:"jsonrpc"`
}

type Response

type Response[T any] struct {
	Id      int64  `json:"id"`
	JsonRpc string `json:"jsonrpc"`
	Error   *Error `json:"error,omitempty"`
	Result  T      `json:"result"`
}

type SignerInfos

type SignerInfos struct {
	PublicKey Pubkey   `json:"public_key"`
	ModeInfo  ModeInfo `json:"mode_info"`
	Sequence  string   `json:"sequence"`
}

type Single

type Single struct {
	Mode string `json:"mode"`
}

type Slashing

type Slashing struct {
	Params       SlashingParams `json:"params"`
	SigningInfos []interface{}  `json:"signing_infos"`
	MissedBlocks []interface{}  `json:"missed_blocks"`
}

type SlashingParams

type SlashingParams struct {
	SignedBlocksWindow      string `json:"signed_blocks_window"`
	MinSignedPerWindow      string `json:"min_signed_per_window"`
	DowntimeJailDuration    string `json:"downtime_jail_duration"`
	SlashFractionDoubleSign string `json:"slash_fraction_double_sign"`
	SlashFractionDowntime   string `json:"slash_fraction_downtime"`
}

type Staking

type Staking struct {
	Params               StakingParams `json:"params"`
	LastTotalPower       string        `json:"last_total_power"`
	LastValidatorPowers  []interface{} `json:"last_validator_powers"`
	Validators           []interface{} `json:"validators"`
	Delegations          []interface{} `json:"delegations"`
	UnbondingDelegations []interface{} `json:"unbonding_delegations"`
	Redelegations        []interface{} `json:"redelegations"`
	Exported             bool          `json:"exported"`
}

type StakingParams

type StakingParams struct {
	UnbondingTime     string `json:"unbonding_time"`
	MaxValidators     int    `json:"max_validators"`
	MaxEntries        int    `json:"max_entries"`
	HistoricalEntries int    `json:"historical_entries"`
	BondDenom         string `json:"bond_denom"`
	MinCommissionRate string `json:"min_commission_rate"`
}

type Supply

type Supply struct {
	Denom  string `json:"denom"`
	Amount string `json:"amount"`
}

type TallyParams

type TallyParams struct {
	Quorum        string `json:"quorum"`
	Threshold     string `json:"threshold"`
	VetoThreshold string `json:"veto_threshold"`
}

type Transfer

type Transfer struct {
	PortID      string         `json:"port_id"`
	DenomTraces []interface{}  `json:"denom_traces"`
	Params      TransferParams `json:"params"`
}

type TransferParams

type TransferParams struct {
	SendEnabled    bool `json:"send_enabled"`
	ReceiveEnabled bool `json:"receive_enabled"`
}

type Vesting

type Vesting struct {
}

type VestingPeriod added in v1.7.0

type VestingPeriod struct {
	Length int64   `json:"length,string"`
	Amount []Coins `json:"amount"`
}

type VotingParams

type VotingParams struct {
	VotingPeriod string `json:"voting_period"`
}

Jump to

Keyboard shortcuts

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