Namespace chia.dotnet
Classes
- BlockRecord
This class is not included or hashed into the blockchain, but it is kept in memory as a more efficient way to maintain data about the blockchain. This allows us to validate future blocks, difficulty adjustments, etc, without saving the whole header block in memory.
- BlockchainState
The node's view of the blockchain.
- CATWallet
Wraps a CAT wallet
- CRCATWallet
Wraps a CRCAT Wallet
- ClassgroupElement
Represents a classgroup element (a,b,c) where a, b, and c are 512 bit signed integers. However this is using a compressed representation. VDF outputs are a single classgroup element. VDF proofs can also be one classgroup element(or multiple).
- Coin
This structure is used in the body for the reward and fees genesis coins.
- CoinRecord
These are values that correspond to a CoinName that are used in keeping track of the unspent database.
- CoinSpend
This is a rather disparate data structure that validates coin transfers. It's generally populated with data from different sources, since burned coins are identified by name, so it is built up more often that it is streamed.
- ConditionWithVars
This structure is used to store parsed CLVM conditions Conditions in CLVM have either format of(opcode, var1) or(opcode, var1, var2)
- Config
Represents a chia config yaml file and its contents. Used to find the uri and ssl certs needed to connect
- ConnectionInfo
Chia's representation of a connection from node to node
- Converters
Helper functions for deserialization and conversion
- CrawlerProxy
Proxy that communicates with the crawler
- DAOWallet
Wraps a DAO Wallet
- DIDWallet
Wraps a Distributed Identity Wallet
- DaemonProxy
WebSocketRpcClient for the daemon interface. The daemon can be used to proxy messages to and from other chia services as well as controlling the PlotterProxy and having it's own procedures
- DataLayerProxy
Proxy that communicates with the Data Layer
- DataLayerWallet
Wraps a Data Layer Wallet
- EndpointInfo
Information about how to connect and authenticate with the RPC endpoint
- ErrorResponse
Response in error case for all endpoints of the pool protocol
- Extensions
Helper extension methods
- FarmerProxy
Proxy that communicates with the farmer
- FarmerSignagePoint
This type doesn't exist in the chia code but is generated and passed around as a dictionary (not to be confused with SignagePoint)
- Foliage
The entire foliage block, containing signature and the unsigned back pointer The hash of this is the "header hash". Note that for unfinished blocks, the prev_block_hash Is the prev from the signage point, and can be replaced with a more recent block
- FoliageBlockData
Part of the block that is signed by the plot key
- FoliageTransactionBlock
Information that goes along with each transaction block that is relevant for light clients
- FullBlock
All the information required to validate a block
- FullNodeProxy
Proxy that communicates with the full node
- HarvesterProxy
Proxy that communicates with the harvester
- HttpRpcClient
Class that handles core communication with the rpc endpoint using http(s)
- Message
The messaging data structure for request and response exchange with the RPC endpoint
- NFTBulkMintingInfo
Info for minting NFTs in bulk
- NFTInfo
NFT Info for displaying NFT on the UI
- NFTMintingInfo
Info for minting an NFT
- NFTWallet
Wraps an NFT wallet
- OfferRecord
The in memory representation of an offer and its record of trade
- PlotInfo
Info about a plot file
- PlotterConfig
Configuration settings for the plotter. (equivalent to chia plots create command line args) https://github.com/Chia-Network/chia-blockchain/wiki/CLI-Commands-Reference
- PlotterProxy
Class to manage plotting
- PoolState
PoolState
is a type that is serialized to the blockchain to track the state of the user's pool singletontarget_puzzle_hash
is either the pool address, or the self-pooling address that pool rewards will be paid to.target_puzzle_hash
is NOT the p2_singleton puzzle that block rewards are sent to. Thep2_singleton
address is the initial address, and thetarget_puzzle_hash
is the final destination.relative_lock_height
is zero when in SELF_POOLING state
- PoolStateInfo
This type does not exist in the chia python, but is returned as a dicitonary for the UI to show pool state. Not to be confused with PoolState
- PoolWallet
Wraps a Pool Wallet
- PoolWalletConfig
This is what goes into the user's config file, to communicate between the wallet and the farmer processes.
- PoolWalletInfo
Internal Pool Wallet state, not destined for the blockchain. This can be completely derived with the Singleton's CoinSpends list, or with the information from the WalletPoolStore.
- QueuedPlotInfo
An entry on the plotter queue
- ResponseException
Exception thrown when the RPC endpoint returns a response Message but Data.success is false oro there is a communication error on the WebSocket of http channel
- SendPeer
Represents the list of peers that we sent the transaction to, whether each one included it in the mempool, and what the error message (if any) was
- ServiceProxy
Base class that uses an IRpcClient to send and receive messages to services
- SpendBundle
This is a list of coins being spent along with their solution programs, and a single aggregated signature. This is the object that most closely corresponds to a bitcoin transaction (although because of non-interactive signature aggregation, the boundaries between transactions are more flexible than in bitcoin).
- TradeManager
API wrapper for those wallet RPC methods dealing with trades and offers
- TradeRecord
Used for storing transaction data and status in wallets.
- TransactionRecord
Used for storing transaction data and status in wallets.
- TransactionsInfo
Information that goes along with each transaction block
- UnfinishedHeaderBlock
Same as a FullBlock but without TransactionInfo and Generator, used by light clients
- VCLineageProof
The covenant layer for exigent metadata layers requires to be passed the previous parent's metadata too
- VerifiedCredential
This class serves as the main driver for the entire VC puzzle stack. Given the information below, it can sync and spend VerifiedCredentials in any specified manner.Trying to sync from a spend that this class did not create will likely result in an error.
- VerifiedCredentialManager
API wrapper for those wallet RPC methods dealing with verified credentials
- Wallet
Base class representing a specific wallet (i.e. anything with a WalletID)
- WalletInfo
This object represents the wallet data as it is stored in DB. ID: Main wallet (Standard) is stored at index 1, every wallet created after done has auto incremented id. Name: can be a user provided or default generated name. (can be modified) Type: is specified during wallet creation and should never be changed. Data: this filed is intended to be used for storing any wallet specific information required for it. This data should be json encoded string.
- WalletProxy
Proxy that communicates with the wallet endpoint
- WebSocketRpcClient
Class that handles core communication with the rpc endpoint using a WebSocket (wss). Only the daemon endpoint supports WebSockets, but it can proxy communication to other services. Destination
Structs
- ServiceNames
The names of chia services. These are used as Destination values
Interfaces
- IRpcClient
Interface representing rpc communication
- IServiceProxy
Core interface to chia RPC endpoints that passes and returns dynamic objects
Enums
- KSize
Valid plot sizes https://github.com/Chia-Network/chia-blockchain/wiki/k-sizes
- PoolSingletonState
From the user's point of view, a pool group can be in these states:
SELF_POOLING
: The singleton exists on the blockchain, and we are farming block rewards to a wallet address controlled by the userLEAVING_POOL
: The singleton exists, and we have entered the "escaping" state, which means we are waiting for a number of blocks =relative_lock_height
to pass, so we can leave.FARMING_TO_POOL
: The singleton exists, and it is assigned to a pool.CLAIMING_SELF_POOLED_REWARDS
: We have submitted a transaction to sweep our self-pooled funds.
- WalletType
Wallet Types