package
1.2.0-rc1
Repository: https://github.com/mc-aeq/aeqw.git
Documentation: pkg.go.dev

# Functions

AgendaPreference returns the saved choice ID, if any, for an agenda ID and deployment version.
CoinTypes returns the legacy and SLIP0044 coin types for the chain parameters.
DisableLog disables all library log output.
ExtractBlockHeaderHeight returns the height field that is encoded in the header.
ExtractBlockHeaderParentHash subslices the header to return the bytes of the parent block's hash.
ExtractBlockHeaderTime returns the unix timestamp that is encoded in the header.
Initialize prepares an empty database for usage by initializing all buckets and key/value pairs.
InitializeWatchOnly prepares an empty database for watching-only wallet usage by initializing all buckets and key/value pairs.
Migrate converts a database to the first version of the unified database format.
NeedsMigration checks whether the database needs to be converted to the unified database format.
NewTxRecord creates a new transaction record that may be inserted into the store.
NewTxRecordFromMsgTx creates a new transaction record that may be inserted into the store.
Open opens the database and returns various "manager" types that must be used to access and modify data in the database.
SetAgendaPreference saves an agenda choice ID for an agenda ID and deployment version.
Upgrade checks whether the any upgrades are necessary before the database is ready for application usage.
UseLogger uses a specified Logger to output package logging info.
ValidateAccountName validates the given account name and returns an error, if any.

# Constants

CKTPrivate specifies the key that is used for encryption of private key material such as derived extended private keys and imported private keys.
CKTPublic specifies the key that is used for encryption of public key material such as dervied extended public keys and imported public keys.
CKTScript specifies the key that is used for encryption of scripts.
DBVersion is the latest version of the database that is understood by the program.
DefaultAccountNum is the number of the default account.
ExternalBranch is the child number to use when performing BIP0044 style hierarchical deterministic key derivation for the external branch.
2^31 - 1.
ImportedAddrAccountName is the name of the imported account.
InternalBranch is the child number to use when performing BIP0044 style hierarchical deterministic key derivation for the internal branch.
2^31 - 2.
MaxAddressesPerAccount is the maximum allowed number of addresses per account number.
TSImmatureOrLive indicates that the ticket is either live or immature.
TSMissed indicates that the ticket was spent as a revocation.
TSVoted indicates that the ticket was spent as a vote.

# Structs

AccountProperties contains properties associated with each account, such as the account name, number, and the nubmer of derived and imported keys.
Balances is an convenience type.
Block contains the minimum amount of data to uniquely identify any block on either the best or side chain.
BlockHeaderData contains the block hashes and serialized blocks headers that are inserted into the database.
BlockMeta contains the unique identification for a block and any metadata pertaining to the block.
Credit is the type representing a transaction output which was spent or is still spendable by wallet.
CreditRecord contains metadata regarding a transaction credit for a known transaction.
DebitRecord contains metadata regarding a transaction debit for a known transaction.
InputSource provides a method (SelectInputs) to incrementally select unspent outputs to use as transaction inputs.
Manager represents a concurrency safe crypto currency address manager and key store.
MultisigCredit is a redeemable P2SH multisignature credit.
MultisigOut represents a spendable multisignature outpoint contain a script hash.
PoolTicket is a 73-byte struct that is used to preserve user's ticket information when they have an account at the stake pool.
ScryptOptions is used to hold the scrypt parameters needed when deriving new passphrase keys.
StakePoolUser is a list of tickets for a given user (P2SH address) in the stake pool.
StakeStore represents a safely accessible database of stake transactions.
Store implements a transaction store for storing and managing wallet transactions.
Ticket embeds a TxRecord for a ticket purchase transaction, the block it is mined in (if any), and the transaction hash of the vote or revocation transaction that spends the ticket (if any).
TicketDetails is intended to provide callers with access to rich details regarding a relevant transaction and which inputs and outputs are credit or debits.
TicketIterator is used to iterate over all ticket purchase transactions.
TxDetails is intended to provide callers with access to rich details regarding a relevant transaction and which inputs and outputs are credit or debits.
TxRecord represents a transaction managed by the Store.

# Interfaces

EncryptorDecryptor provides an abstraction on top of snacl.CryptoKey so that our tests can use dependency injection to force the behaviour they need.
ManagedAddress is an interface that provides acces to information regarding an address managed by an address manager.
ManagedPubKeyAddress extends ManagedAddress and additionally provides the public and private keys for pubkey-based addresses.
ManagedScriptAddress extends ManagedAddress and represents a pay-to-script-hash style of addresses.

# Type aliases

CryptoKeyType is used to differentiate between different kinds of crypto keys.
ObtainUserInputFunc is a function that reads a user input and returns it as a byte stream.
RawBlockHeader is a 180 byte block header (always true for version 0 blocks).
TicketStatus is the current status of a stake pool ticket.