wallet

package
v1.1.3 Latest Latest
Warning

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

Go to latest
Published: Apr 25, 2024 License: MIT Imports: 23 Imported by: 1

Documentation

Index

Constants

View Source
const (
	AddressTypeBLSAccount string = "bls_account"
	AddressTypeValidator  string = "validator"
)

Variables

View Source
var (
	// ErrInvalidNetwork describes an error in which the network is invalid.
	ErrInvalidNetwork = errors.New("invalid network")

	// ErrOffline describes an error in which the wallet is offline.
	ErrOffline = errors.New("wallet is in offline mode")

	// ErrHistoryExists describes an error in which the transaction already exists
	// in history.
	ErrHistoryExists = errors.New("transaction already exists")
)

Functions

func CheckMnemonic added in v0.13.0

func CheckMnemonic(mnemonic string) error

CheckMnemonic is a wrapper for `vault.CheckMnemonic`.

func GenerateMnemonic

func GenerateMnemonic(entropy int) (string, error)

GenerateMnemonic is a wrapper for `vault.GenerateMnemonic`.

func OptionFee

func OptionFee(fee amount.Amount) func(builder *txBuilder) error

func OptionLockTime added in v0.15.0

func OptionLockTime(lockTime uint32) func(builder *txBuilder) error

func OptionMemo

func OptionMemo(memo string) func(builder *txBuilder) error

Types

type CRCNotMatchError added in v0.15.0

type CRCNotMatchError struct {
	Expected uint32
	Got      uint32
}

CRCNotMatchError describes an error in which the wallet CRC is not macthed.

func (CRCNotMatchError) Error added in v0.15.0

func (e CRCNotMatchError) Error() string

type ExitsError added in v0.15.0

type ExitsError struct {
	Path string
}

ExitsError describes an error in which a wallet exists in the given path.

func (ExitsError) Error added in v0.15.0

func (e ExitsError) Error() string

type HistoryInfo

type HistoryInfo struct {
	TxID        string
	Time        *time.Time
	PayloadType string
	Desc        string
	Amount      amount.Amount
}

type TxOption

type TxOption func(builder *txBuilder) error

type Wallet

type Wallet struct {
	// contains filtered or unexported fields
}

func Create

func Create(walletPath, mnemonic, password string, chain genesis.ChainType) (*Wallet, error)

Create creates a wallet from mnemonic (seed phrase) and save it at the given path.

func Open added in v0.10.0

func Open(walletPath string, offline bool) (*Wallet, error)

Open tries to open a wallet at the given path. If the wallet doesn’t exist on this path, it returns an error. A wallet can be opened in offline or online modes. Offline wallet doesn’t have any connection to any node. Online wallet has a connection to one of the pre-defined servers.

func (*Wallet) AddTransaction

func (w *Wallet) AddTransaction(id tx.ID) error

func (*Wallet) AddressCount

func (w *Wallet) AddressCount() int

AddressCount returns the number of addresses inside the wallet.

func (*Wallet) AddressFromPath added in v0.18.0

func (w *Wallet) AddressFromPath(p string) *vault.AddressInfo

func (*Wallet) AddressInfo

func (w *Wallet) AddressInfo(addr string) *vault.AddressInfo

func (*Wallet) AddressInfos added in v0.15.0

func (w *Wallet) AddressInfos() []vault.AddressInfo

func (*Wallet) AllAccountAddresses added in v1.1.0

func (w *Wallet) AllAccountAddresses() []vault.AddressInfo

func (*Wallet) AllValidatorAddresses added in v0.18.0

func (w *Wallet) AllValidatorAddresses() []vault.AddressInfo

func (*Wallet) Balance

func (w *Wallet) Balance(addrStr string) (amount.Amount, error)

Balance returns balance of the account associated with the address..

func (*Wallet) BroadcastTransaction

func (w *Wallet) BroadcastTransaction(trx *tx.Tx) (string, error)

func (*Wallet) CalculateFee

func (w *Wallet) CalculateFee(amt amount.Amount, payloadType payload.Type) (amount.Amount, error)

func (*Wallet) Contains

func (w *Wallet) Contains(addr string) bool

func (*Wallet) GetHistory

func (w *Wallet) GetHistory(addr string) []HistoryInfo

func (*Wallet) ImportPrivateKey

func (w *Wallet) ImportPrivateKey(password string, prv *bls.PrivateKey) error

func (*Wallet) IsEncrypted

func (w *Wallet) IsEncrypted() bool

func (*Wallet) IsOffline

func (w *Wallet) IsOffline() bool

func (*Wallet) Label

func (w *Wallet) Label(addr string) string

Label returns label of addr.

func (*Wallet) MakeBondTx

func (w *Wallet) MakeBondTx(sender, receiver, pubKey string, amt amount.Amount,
	options ...TxOption,
) (*tx.Tx, error)

MakeBondTx creates a new bond transaction based on the given parameters.

func (*Wallet) MakeTransferTx added in v0.13.0

func (w *Wallet) MakeTransferTx(sender, receiver string, amt amount.Amount,
	options ...TxOption,
) (*tx.Tx, error)

MakeTransferTx creates a new transfer transaction based on the given parameters.

func (*Wallet) MakeUnbondTx

func (w *Wallet) MakeUnbondTx(addr string, opts ...TxOption) (*tx.Tx, error)

MakeUnbondTx creates a new unbond transaction based on the given parameters.

func (*Wallet) MakeWithdrawTx

func (w *Wallet) MakeWithdrawTx(sender, receiver string, amt amount.Amount,
	options ...TxOption,
) (*tx.Tx, error)

MakeWithdrawTx creates a new withdraw transaction based on the given parameters.

func (*Wallet) Mnemonic

func (w *Wallet) Mnemonic(password string) (string, error)

func (*Wallet) Name

func (w *Wallet) Name() string

func (*Wallet) NewBLSAccountAddress added in v0.15.0

func (w *Wallet) NewBLSAccountAddress(label string) (*vault.AddressInfo, error)

NewBLSAccountAddress create a new BLS-based account address and associates it with the given label.

func (*Wallet) NewValidatorAddress added in v0.15.0

func (w *Wallet) NewValidatorAddress(label string) (*vault.AddressInfo, error)

NewValidatorAddress creates a new BLS validator address and associates it with the given label.

func (*Wallet) Path

func (w *Wallet) Path() string

func (*Wallet) PrivateKey

func (w *Wallet) PrivateKey(password, addr string) (crypto.PrivateKey, error)

func (*Wallet) PrivateKeys added in v0.10.0

func (w *Wallet) PrivateKeys(password string, addrs []string) ([]crypto.PrivateKey, error)

func (*Wallet) Save

func (w *Wallet) Save() error

func (*Wallet) SetLabel

func (w *Wallet) SetLabel(addr, label string) error

SetLabel sets label for addr.

func (*Wallet) SetServerAddr added in v1.1.0

func (w *Wallet) SetServerAddr(addr string)

func (*Wallet) SignTransaction

func (w *Wallet) SignTransaction(password string, trx *tx.Tx) error

func (*Wallet) Stake

func (w *Wallet) Stake(addrStr string) (amount.Amount, error)

Stake returns stake of the validator associated with the address..

func (*Wallet) TotalBalance added in v1.1.0

func (w *Wallet) TotalBalance() amount.Amount

TotalBalance return the total available balance of the wallet.

func (*Wallet) UpdatePassword

func (w *Wallet) UpdatePassword(oldPassword, newPassword string) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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