Documentation
¶
Index ¶
- Constants
- Variables
- func ConstructModule(tp node.Type, cfg *Config, coreCfg *core.Config) fx.Option
- func Flags() *flag.FlagSet
- func ParseFlags(cmd *cobra.Command, cfg *Config) error
- func WithKeyName(name AccountName) fx.Option
- func WithKeyring(keyring kr.Keyring) fx.Option
- type API
- func (api *API) AccountAddress(ctx context.Context) (state.Address, error)
- func (api *API) Balance(ctx context.Context) (*state.Balance, error)
- func (api *API) BalanceForAddress(ctx context.Context, addr state.Address) (*state.Balance, error)
- func (api *API) BeginRedelegate(ctx context.Context, srcValAddr, dstValAddr state.ValAddress, amount state.Int, ...) (*state.TxResponse, error)
- func (api *API) CancelUnbondingDelegation(ctx context.Context, valAddr state.ValAddress, amount, height state.Int, ...) (*state.TxResponse, error)
- func (api *API) Delegate(ctx context.Context, delAddr state.ValAddress, amount state.Int, ...) (*state.TxResponse, error)
- func (api *API) GrantFee(ctx context.Context, grantee state.AccAddress, amount state.Int, ...) (*state.TxResponse, error)
- func (api *API) QueryDelegation(ctx context.Context, valAddr state.ValAddress) (*types.QueryDelegationResponse, error)
- func (api *API) QueryRedelegations(ctx context.Context, srcValAddr, dstValAddr state.ValAddress) (*types.QueryRedelegationsResponse, error)
- func (api *API) QueryUnbonding(ctx context.Context, valAddr state.ValAddress) (*types.QueryUnbondingDelegationResponse, error)
- func (api *API) RevokeGrantFee(ctx context.Context, grantee state.AccAddress, config *state.TxConfig) (*state.TxResponse, error)
- func (api *API) SubmitPayForBlob(ctx context.Context, blobs []*libshare.Blob, config *state.TxConfig) (*state.TxResponse, error)
- func (api *API) Transfer(ctx context.Context, to state.AccAddress, amount state.Int, ...) (*state.TxResponse, error)
- func (api *API) Undelegate(ctx context.Context, delAddr state.ValAddress, amount state.Int, ...) (*state.TxResponse, error)
- type AccountName
- type Config
- type Module
Constants ¶
View Source
const DefaultKeyName = "my_celes_key"
Variables ¶
View Source
var ErrNoStateAccess = errors.New("node is running without state access. run with --core.ip <CORE NODE IP> to resolve")
Functions ¶
func ConstructModule ¶
ConstructModule provides all components necessary to construct the state service.
func ParseFlags ¶
ParseFlags parses State flags from the given cmd and saves them to the passed config.
func WithKeyName ¶ added in v0.13.7
func WithKeyName(name AccountName) fx.Option
WithKeyName configures the signer to use the given key.
Types ¶
type API ¶ added in v0.5.0
type API struct {
Internal struct {
AccountAddress func(ctx context.Context) (state.Address, error) `perm:"read"`
Balance func(ctx context.Context) (*state.Balance, error) `perm:"read"`
BalanceForAddress func(ctx context.Context, addr state.Address) (*state.Balance, error) `perm:"read"`
Transfer func(
ctx context.Context,
to state.AccAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error) `perm:"write"`
SubmitPayForBlob func(
ctx context.Context,
blobs []*libshare.Blob,
config *state.TxConfig,
) (*state.TxResponse, error) `perm:"write"`
CancelUnbondingDelegation func(
ctx context.Context,
valAddr state.ValAddress,
amount, height state.Int,
config *state.TxConfig,
) (*state.TxResponse, error) `perm:"write"`
BeginRedelegate func(
ctx context.Context,
srcValAddr,
dstValAddr state.ValAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error) `perm:"write"`
Undelegate func(
ctx context.Context,
delAddr state.ValAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error) `perm:"write"`
Delegate func(
ctx context.Context,
delAddr state.ValAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error) `perm:"write"`
QueryDelegation func(
ctx context.Context,
valAddr state.ValAddress,
) (*types.QueryDelegationResponse, error) `perm:"read"`
QueryUnbonding func(
ctx context.Context,
valAddr state.ValAddress,
) (*types.QueryUnbondingDelegationResponse, error) `perm:"read"`
QueryRedelegations func(
ctx context.Context,
srcValAddr,
dstValAddr state.ValAddress,
) (*types.QueryRedelegationsResponse, error) `perm:"read"`
GrantFee func(
ctx context.Context,
grantee state.AccAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error) `perm:"write"`
RevokeGrantFee func(
ctx context.Context,
grantee state.AccAddress,
config *state.TxConfig,
) (*state.TxResponse, error) `perm:"write"`
}
}
API is a wrapper around Module for the RPC.
func (*API) AccountAddress ¶ added in v0.5.0
func (*API) BalanceForAddress ¶ added in v0.5.0
func (*API) BeginRedelegate ¶ added in v0.5.0
func (*API) CancelUnbondingDelegation ¶ added in v0.5.0
func (*API) QueryDelegation ¶ added in v0.5.0
func (api *API) QueryDelegation(ctx context.Context, valAddr state.ValAddress) (*types.QueryDelegationResponse, error)
func (*API) QueryRedelegations ¶ added in v0.5.0
func (api *API) QueryRedelegations( ctx context.Context, srcValAddr, dstValAddr state.ValAddress, ) (*types.QueryRedelegationsResponse, error)
func (*API) QueryUnbonding ¶ added in v0.5.0
func (api *API) QueryUnbonding( ctx context.Context, valAddr state.ValAddress, ) (*types.QueryUnbondingDelegationResponse, error)
func (*API) RevokeGrantFee ¶ added in v0.14.0
func (api *API) RevokeGrantFee( ctx context.Context, grantee state.AccAddress, config *state.TxConfig, ) (*state.TxResponse, error)
func (*API) SubmitPayForBlob ¶ added in v0.7.0
func (*API) Undelegate ¶ added in v0.5.0
type AccountName ¶ added in v0.13.7
type AccountName string
type Config ¶
type Config struct {
DefaultKeyName string
DefaultBackendName string
// EstimatorAddress specifies a third-party endpoint that will be used to
// calculate gas price and gas usage
EstimatorAddress string
// EnableEstimatorTLS specifies whether to use TLS for the gRPC connection to the
// estimator service
EnableEstimatorTLS bool
// TxWorkerAccounts is used for queued submission. It defines how many accounts the
// TxClient uses for PayForBlob submissions.
// - Value of 0 submits transactions immediately (without a submission queue).
// - Value of 1 uses synchronous submission (submission queue with default
// signer as author of transactions).
// - Value of > 1 uses parallel submission (submission queue with several accounts
// submitting blobs). Parallel submission is not guaranteed to include blobs
// in the same order as they were submitted.
TxWorkerAccounts int
}
Config contains configuration parameters for constructing the node's keyring signer.
func DefaultConfig ¶
func DefaultConfig() Config
type Module ¶
type Module interface {
// AccountAddress retrieves the address of the node's account/signer
AccountAddress(ctx context.Context) (state.Address, error)
// Balance retrieves the Celestia coin balance for the node's account/signer
// and verifies it against the corresponding block's AppHash.
Balance(ctx context.Context) (*state.Balance, error)
// BalanceForAddress retrieves the Celestia coin balance for the given address and verifies
// the returned balance against the corresponding block's AppHash.
//
// NOTE: the balance returned is the balance reported by the block right before
// the node's current head (head-1). This is due to the fact that for block N, the block's
// `AppHash` is the result of applying the previous block's transaction list.
BalanceForAddress(ctx context.Context, addr state.Address) (*state.Balance, error)
// Transfer sends the given amount of coins from default wallet of the node to the given account
// address.
Transfer(
ctx context.Context, to state.AccAddress, amount state.Int, config *state.TxConfig,
) (*state.TxResponse, error)
// SubmitPayForBlob builds, signs and submits a PayForBlob transaction.
SubmitPayForBlob(
ctx context.Context,
blobs []*libshare.Blob,
config *state.TxConfig,
) (*state.TxResponse, error)
// CancelUnbondingDelegation cancels a user's pending undelegation from a validator.
CancelUnbondingDelegation(
ctx context.Context,
valAddr state.ValAddress,
amount,
height state.Int,
config *state.TxConfig,
) (*state.TxResponse, error)
// BeginRedelegate sends a user's delegated tokens to a new validator for redelegation.
BeginRedelegate(
ctx context.Context,
srcValAddr,
dstValAddr state.ValAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error)
// Undelegate undelegates a user's delegated tokens, unbonding them from the current validator.
Undelegate(
ctx context.Context,
delAddr state.ValAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error)
// Delegate sends a user's liquid tokens to a validator for delegation.
Delegate(
ctx context.Context,
delAddr state.ValAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error)
// QueryDelegation retrieves the delegation information between a delegator and a validator.
QueryDelegation(ctx context.Context, valAddr state.ValAddress) (*types.QueryDelegationResponse, error)
// QueryUnbonding retrieves the unbonding status between a delegator and a validator.
QueryUnbonding(ctx context.Context, valAddr state.ValAddress) (*types.QueryUnbondingDelegationResponse, error)
// QueryRedelegations retrieves the status of the redelegations between a delegator and a validator.
QueryRedelegations(
ctx context.Context,
srcValAddr,
dstValAddr state.ValAddress,
) (*types.QueryRedelegationsResponse, error)
GrantFee(
ctx context.Context,
grantee state.AccAddress,
amount state.Int,
config *state.TxConfig,
) (*state.TxResponse, error)
RevokeGrantFee(
ctx context.Context,
grantee state.AccAddress,
config *state.TxConfig,
) (*state.TxResponse, error)
}
Module represents the behaviors necessary for a user to query for state-related information and submit transactions/ messages to the Celestia network.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.