Table of Contents

Namespace Concordium.Sdk.Types

Classes

Absolute

Block Height from beginning of chain.

AbsoluteHeight

Block Height from beginning of chain.

AccessStructure

And access structure for performing chain updates. The access structure is only meaningful in the context of a list of update keys to which the indices refer to.

AccountAddress

Represents an account address.

The address of an account is a 32-byte value which uniquely identifies the account.

AccountBaker

The account is a baker.

AccountBakerPendingChange

Pending change in the baker's stake.

AccountBakerReduceStakePending

The stake is being reduced. The new stake will take affect at the given time.

AccountBakerRemovePending

The baker will be removed at the given time.

AccountCreationDetails

Details of an account creation. These transactions are free, and we only ever get a response for them if the account is created, hence no failure cases.

AccountDelegation

The account is delegating stake to a baker.

AccountInfo

Account information exposed via the node's API. This is always the state of an account in a specific block.

AccountTransactionDetails

Details of an account transaction. This always has a sender and is paid for, and it might have some other effects on the state of the chain.

AccountTransfer

A simple account to account transfer occurred possible with a memo.

ActiveBaker

The node is member of the baking committee.

ActiveFinalizer

The node is member of the baking and finalization committee.

AddAnonymityRevokerUpdate

Update to anonymity revoker.

AddIdentityProviderUpdate

Update to identity provider.

AddedButNotActiveInCommittee

The baker keys are registered however the baker is not in the committee for the current 'Epoch'.

AddedButWrongKeys

The node has been configured with baker keys that does not match the account.

AlreadyABaker

Tried to add baker for an account that already has a baker

AlreadyADelegator

Tried to add baker for an account that already has a delegator.

AmountFraction

A fraction of an amount with a precision of 1/100_000.

AmountTooLarge

When one wishes to transfer an amount from A to B but there are not enough funds on account/contract A to make this possible. The data are the from address and the amount to transfer.

ArInfo

Information on a single anonymity revoker held by the IP. Typically an IP will hold a more than one.

ArPublicKey

Public key of an anonymity revoker.

ArrivedBlockInfo

Information about an arrived block that is part of the streaming response.

AuthorizationsV0

Access structures for each of the different possible chain updates, together with the context giving all the possible keys.

AuthorizationsV1

Access structures for each of the different possible chain updates, together with the context giving all the possible keys.

BakerAdded

An account was registered as a baker.

BakerAddedEvent

Event created when baker was added.

BakerConfigured

A baker was configured.

BakerDelegationTarget

Delegate to a specific baker.

BakerInCooldown

The change could not be made because the baker is in cooldown for another change

BakerInfo

Information about a baker.

BakerKeysEvent

Result of a successful change of baker keys.

BakerKeysUpdated

The baker's keys were updated.

BakerKeysUpdatedEvent

The baker's keys were updated.

BakerPoolInfo

Additional information about a baking pool. This information is added with the introduction of delegation in protocol version 4.

BakerPoolPendingChange

Pending change in the baker's stake.

BakerPoolReduceStakePending

The stake is being reduced. The new stake will take affect at the given time.

BakerPoolRemovePending

The baker will be removed at the given time.

BakerPoolStatus

The state of the baker currently registered on the account. Current here means "present". This is the information that is being updated by transactions (and rewards). This is in contrast to "epoch baker" which is the state of the baker that is currently eligible for baking.

BakerRemoved

An account was deregistered as a baker.

BakerRemovedEvent

Baker was removed.

BakerRestakeEarningsUpdated

An account changed its preference for restaking earnings.

BakerRestakeEarningsUpdatedEvent

Changed if earnings should be restaked.

BakerSetBakingRewardCommissionEvent

Updated baking reward commission for baker pool

BakerSetFinalizationRewardCommissionEvent

Updated finalization reward commission for baker pool

BakerSetMetadataUrlEvent

Updated metadata url for baker pool

BakerSetOpenStatusEvent

Updated open status for a baker pool

BakerSetTransactionFeeCommissionEvent

Updated baking reward commission for baker pool

BakerStakeDecreasedEvent

Stake decreased on baker.

BakerStakeIncreasedEvent

Stake increased on baker.

BakerStakeThreshold

Minimum stake needed to become a baker. This only applies to protocol version 1-3.

BakerStakeThresholdUpdate

Parameters related to becoming a baker that apply to protocol versions 1-3.

BakerStakeUpdated

If the stake was updated (that is, it changed and did not stay the same) then this is present, otherwise null.

BakerStakeUpdatedData

Data contained in the transaction response in case a baker stake was updated (either increased or decreased.)

BakingRewardCommissionNotInRange

Baking reward commission is not in the valid range for a baker

BakingRewards

Reward issued to all the bakers at the end of an epoch for baking blocks in the epoch.

Best

Query in the context of the best block.

BlockAccrueReward

Amounts accrued to accounts for each baked block.

BlockEnergyLimitUpdate

The block energy limit was updated (chain parameters version 2).

BlockHash

Represents a block hash.

A block hash is a 32-byte hash of a block and serves as the canonical way of identifying it.

The address is usually provided as a hex encoded string.

BlockInfo

Metadata about a given block.

BlockItemSummary

Summary of the outcome of a block item in structured form. The summary determines which transaction type it was.

BlockReward

Reward for including transactions in a block.

Bootstrapper

The node is a bootstrapper and does not run the consensus protocol.

Branch

Response type for GetBranches.

CapitalBound

A bound on the relative share of the total staked capital that a baker can have as its stake. This is required to be greater than 0.

ChainParametersV0

Values of chain parameters that can be updated via chain updates. This applies to protocol version 1-3.

ChainParametersV1

Values of chain parameters that can be updated via chain updates. This applies to protocol version 4 and 5.

ChainParametersV2

Values of chain parameters that can be updated via chain updates. This applies to protocol version 6 and up.

CommissionRanges

Ranges of allowed commission values that pools may choose from.

CommissionRates

The commission rates charged by the pool owner.

ConcordiumBftDetails

Parameters pertaining to the Concordium BFT consensus.

ConsensusInfo

Summary of the current state of consensus.

ConsensusNotRunning

The consensus protocol is not running on the node. This only occurs when the node does not support the protocol on the chain or the node is a 'Bootstrapper'.

ConsensusPassive

The node is a passive member of the consensus. This means:

  • The node is processing blocks.
  • The node is relaying transactions and blocks onto the network.
  • The node is responding to catch up messages from its peers.
  • In particular this means that the node is not baking blocks.
ContractAddress

Represents a contract address.

A contract is identified by its unique ContractAddress. A contract address consists of a contract index and a contact sub-index both represented as 64-bit unsigned integers.

ContractEvent

An event generated by a smart contract.

ContractIdentifier

Contains the identification name of the contract.

ContractInitialized

A contract was initialized was deployed.

ContractInitializedEvent

Data generated as part of initializing a single contract instance.

ContractName

The init name of a smart contract function. Expected format: "init_<contract_name>". It must only consist of at most 100 ASCII alphanumeric or punctuation characters, must not contain a '.' and must start with 'init_'.

ContractUpdateIssued

A contract update transaction was issued and produced the given traces.

CooldownParameters
CooldownParametersCpv1Update

Update to cooldown parameters with chain parameter version 1.

CredentialHolderDidNotSign

The credential holder of the keys to be updated did not sign the transaction

CredentialKeysUpdated

Keys of a specific credential were updated.

CredentialRegistrationId

A registration ID of a credential. This ID is generated from the user's PRF key and a sequential counter. CredentialRegistrationIDs generated from the same PRF key, but different counter values cannot easily be linked together.

CredentialsUpdated

Account's credentials were updated.

CurrentPaydayBakerPoolStatus

Status of the pool in the current reward period.

DataRegistered

Some data was registered on the chain.

DelegationAdded

A delegator was added.

DelegationConfigured

An account configured delegation.

DelegationRemoved

A delegator was removed.

DelegationSetDelegationTarget

The delegator's delegation target was updated.

DelegationSetRestakeEarnings

The delegator's restaking setting was updated.

DelegationStakeDecreased

The delegator's stake decreased.

DelegationStakeIncreased

The delegator's stake increased.

DelegationTarget
DelegationTargetNotABaker

Delegation target is not a baker.

DelegatorInCooldown

Account is not a delegation account.

Description

Description either of an anonymity revoker or identity provider. Metadata that should be visible on the chain.

DuplicateAggregationKey

A baker with the given aggregation key already exists

DuplicateCredIds

Some of the credential IDs already exist or are duplicated in the transaction.

EffectAddAnonymityRevoker

Adds a new anonymity revoker.

EffectAddIdentityProvider

Adds a new identity provider.

EffectBlockEnergyLimit

Updates to the block energy limit for chain parameters version 2.

EffectCooldownParameters

Updates to cooldown parameters for chain parameters version 1 introduced in protocol version 4.

EffectElectionDifficulty

Updates to the election difficulty parameter.

EffectEuroPerEnergy

Updates to the euro:energy exchange rate.

EffectFinalizationCommitteeParameters

Updates to the finalization committee for for chain parameters version 2.

EffectFoundationAccount

Updates to the foundation account.

EffectGasRewards

Updates to the GAS rewards.

EffectGasRewardsCpv2

Updates to the GAS rewards effective from protocol version 6 (chain parameters version 2).

EffectLevel1Keys

Updates to the level 1 keys.

EffectLevel2KeysCpv0

Updates to the level 2 keys.

EffectLevel2KeysCpv1

Updates to the level 2 keys.

EffectMicroCcdPerEnergy

Updates to the CCD:EUR exchange rate.

EffectMinBlockTime

Updates to the the minimum time between blocks for chain parameters version 2.

EffectMintDistributionCpv0

Updates to the mint distribution. Is only relevant prior to protocol version 4.

EffectMintDistributionCpv1

The mint distribution was updated. Introduced in protocol version 4.

EffectPoolParametersCpv0

Updates baker stake threshold. Is only relevant prior to protocol version 4.

EffectPoolParametersCpv1

Updates pool parameters. Introduced in protocol version 4.

EffectProtocol

Protocol updates.

EffectRootKeys

Updates to the root keys.

EffectTimeParameters

Updates to time parameters for chain parameters version 1 introduced in protocol version 4.

EffectTimeoutParameters

Updates to the consensus timeouts for chain parameters version 2.

EffectTransactionFeeDistribution

Updates to the transaction fee distribution.

ElectionDifficulty

Election difficulty parameter.

ElectionDifficultyUpdate

Representation of the election difficulty as parts per 100_000. The election difficulty is never more than 1.

EncryptedAmountRemovedEvent

Event generated when one or more encrypted amounts are consumed from the account.

EncryptedAmountSelfTransfer

Account tried to transfer an encrypted amount to itself, that's not allowed.

EncryptedAmountTransferred

An encrypted amount was transferred possible with memo.

EncryptedSelfAmountAddedEvent

An account transferred part of its public balance to its encrypted balance.

EntryPoint

Entry point on a smart contract.

EuroPerEnergyUpdate

Exchange rate for euro pr. energy.

FinalizationCommitteeParameters

Finalization committee parameters. These parameters control which bakers are in the finalization committee.

FinalizationCommitteeParametersUpdate

Finalization committee parameters (chain parameters version 2).

FinalizationRewardCommissionNotInRange

Finalization reward commission is not in the valid range for a baker

FinalizationRewards

Distribution of finalization rewards.

FinalizationSummary

Summary of the finalization record in a block, if any.

FinalizationSummaryParty

Details of a party in a finalization.

FinalizedBlockInfo

Information about a finalized block that is part of the streaming response.

FirstScheduledReleaseExpired

The first scheduled release in a transfer with schedule has already expired

FoundationAccountUpdate

Update of the foundation account.

GasRewards

The reward fractions related to the gas account and inclusion of special transactions for chain parameters version 0 and 1.

GasRewardsCpv2

The reward fractions related to the gas account and inclusion of special transactions. Introduce for protocol version 6.

GasRewardsCpv2Update

The reward fractions related to the gas account and inclusion of special transactions. Introduce for protocol version 6.

GasRewardsUpdate

The reward fractions related to the gas account and inclusion of special transactions.

Given

Query in the context of a specific block hash.

Hash

Represents a 32-byte hash.

HigherLevelKeys

Either root or level1 access structure. They all have the same structure, keys and a threshold. The enum type parameter is used for to distinguish different access structures in different contexts.

InclusiveRange<T>

Range where Min and Max is within.

InstanceInfoV0

Version 0 smart contract instance information.

InstanceInfoV1

Version 1 smart contract instance information.

InsufficientBalanceForBakerStake

The amount on the account was insufficient to cover the proposed stake

InsufficientBalanceForDelegationStake

The amount on the account was insufficient to cover the proposed stake.

InsufficientDelegationStake

Delegation stake when adding a delegator was 0.

Interrupted

A contract was interrupted. This occurs when a contract invokes another contract or makes a transfer to an account.

InvalidAccountReference

Account does not exist.

InvalidAccountThreshold

When the account threshold is updated, it must not exceed the amount of existing keys

InvalidContractAddress

Contract instance does not exist.

InvalidCredentialKeySignThreshold

When the credential key threshold is updated, it must not exceed the amount of existing keys

InvalidCredentials

At least one of the credentials was either malformed or its proof was incorrect.

InvalidEncryptedAmountTransferProof

Proof for an encrypted amount transfer did not validate.

InvalidIndexOnEncryptedTransfer

The provided index is below the start index or above startIndex + length incomingAmounts

InvalidInitMethod

Reference to a non-existing contract init method.

InvalidModuleReference

Reference to a non-existing module.

InvalidProof

Proof that the baker owns relevant private keys is not valid.

InvalidReceiveMethod

Reference to a non-existing contract receive method.

InvalidTransferToPublicProof

Proof for a secret to public transfer did not validate.

IpCdiVerifyKey

Ed25519 public key of the identity provider.

IpInfo

Public information about an identity provider.

IpVerifyKey

Pointcheval-Sanders public key of the identity provider.

KeyIndexAlreadyInUse

Attempted to add an account key to a key index already in use

LastFinal

Query in the context of the last finalized block at the time of the query.

Level1

An update with level 1 keys of either level 1 or level 2 keys.

Level1Keys

Level1 Keys

Level1KeysUpdate

Level 1 key update.

Level2KeysUpdate

Level 2 keys update with chain parameter version 0.

Level2KeysUpdateV1

Level 2 keys update with chain parameter version 1.

MicroCcdPerEuroUpdate

Exchange rate for micro ccd pr. euro.

MinBlockTimeUpdate

The minimum time between blocks was updated (chain parameters version 2).

Mint

Distribution of newly minted CCD.

MintDistributionCpv0

Mint distribution that applies to protocol versions 1-3 with chain parameters version 0.

MintDistributionCpv0Update

Mint distribution that applies to protocol versions 1-3 with chain parameters version 0.

MintDistributionCpv1

Mint distribution parameters that apply to protocol version 4 and up.

MintDistributionCpv1Update

Mint distribution parameters that apply to protocol version 4 and up. with chain parameters version 1.

MissingBakerAddParameters

A configure baker transaction is missing one or more arguments in order to add a baker.

MissingDelegationAddParameters

A configure delegation transaction is missing one or more arguments in order to add a delegator.

ModuleDeployed

A module was deployed.

ModuleHashAlreadyExists

Module Hash Already Exists

ModuleNotWf

Error raised when validating the Wasm module.

ModuleReference

A reference to a smart contract module deployed on the chain.

ModuleV0

Version 0 module source.

ModuleV1

Version 1 module source.

NetworkInfo

The network information of a node.

NewEncryptedAmountEvent

Event generated when an account receives a new encrypted amount.

Node

The node is a regular node and is eligible for running the consensus protocol.

NodeInfo

The status of the requested node.

NonExistentCredIds

A credential id that was to be removed is not part of the account.

NonExistentCredentialId

Encountered credential ID that does not exist

NonIncreasingSchedule

The transfer with schedule has a non strictly increasing schedule

None

No effects other than payment from this transaction. The rejection reason indicates why the transaction failed.

NotABaker

Tried to remove a baker for an account that has no baker

NotADelegator

Account is not a delegation account.

NotAllowedMultipleCredentials

Account is not allowed to have multiple credentials because it contains a non-zero encrypted transfer.

NotAllowedToHandleEncrypted

The account is not allowed to send encrypted transfers (or transfer from/to public to/from encrypted)

NotAllowedToReceiveEncrypted

The account is not allowed to receive encrypted transfers because it has multiple credentials.

NotInCommittee

The node has been configured with baker keys however it is not currently baking and possilby never will.

OnChainData

Represents data to be stored or that was stored on-chain as part of a transaction.

This can be any data which is at most MaxLength bytes, but the convention is to use CBOR encoded data.

OutOfEnergy

We ran of out energy to process this transaction.

Parameter

Parameter to the init function or entrypoint.

PassiveDelegationStatus

State of the passive delegation pool. Changes to delegation, e.g., an account deciding to delegate are reflected in this structure at first.

PassiveDelegationTarget

Delegate passively, i.e., to no specific baker.

PaydayAccountReward

Payment for a particular account. When listed in a block summary, the delegated pool of the account is given by the last PaydayPoolReward outcome included before this outcome.

PaydayFoundationReward

Payment for the foundation.

PaydayPoolReward

Payment distributed to a pool or passive delegators.

PeerVersion

The version of the node in semantic format.

PendingUpdate

A pending update.

PoolClosed

The pool is not open to delegators.

PoolParameters

Parameters related to staking pools. This applies to protocol version 4 and up.

PoolParametersCpv1Update

Update to pool- and delegation parameters.

PoolWouldBecomeOverDelegated

The amount would result in pool with a too high fraction of delegated capital.

ProtocolUpdate

A generic protocol update. This is essentially an announcement of the update. The details of the update will be communicated in some off-chain way, and bakers will need to update their node software to support the update.

ProtocolVersionExtension

Extension methods for Protocol Version

ReceiveName

A receive name of the contract function called. Expected format: "<contract_name>.<func_name>". The name must not exceed 100 bytes and all characters are ascii alphanumeric or punctuation.

ReduceStakePending

The baker will be removed at the end of the given time.

RejectedInit

Rejected due to contract logic in init function of a contract.

RejectedReceive

Rejected due to contract logic in receive function of a contract.

Relative

Query relative to an explicit genesis index.

RelativeHeight

Query relative to an explicit genesis index.

RemoveFirstCredential

Attempt to remove the first credential

RemoveStakePending

The stake is being reduced. The new stake will take affect in the given time.

Resumed

A previously interrupted contract was resumed.

RewardOverviewBase

Information about the state of the CCD distribution at a particular time. Reward data common to both V0 and V1 rewards.

RewardOverviewV0

Reward Overview version 0. Only exists for protocol versions 1, 2, and 3.

RewardOverviewV1

Reward Overview version 1.

RootKeys

Root Keys

RootKeysUpdate

Root key update.

RootUpdate

An update with root keys of some other set of governance keys, or the root keys themselves.

RuntimeFailure

Runtime exception occurred when running either the init or receive method.

ScheduledSelfTransfer

Account tried to transfer with schedule to itself, that's not allowed.

SchemaType

Smart contract schema type. This represents a single type as part of a smart contract module schema, and allows for converting structure data, such as JSON, from and to the binary representation used by a smart contract.

SerializationFailure

Serialization of the body failed.

Sha256Hash

A Sha256 with no specific meaning.

StakeOverMaximumThresholdForPool

The amount would result in pool capital higher than the maximum threshold.

StakeUnderMinimumThresholdForBaking

The amount provided is under the threshold required for becoming a baker

StateHash

Hash of the block state that is included in a block.

TimeParameters

The time parameters are introduced as of protocol version 4, and consist of the reward period length and the mint rate per payday. These are coupled as a change to either affects the overall rate of minting.

TimeParametersCpv1Update

Update to mint rate pr day and reward period length.

TimeoutParameters

Parameters that determine timeouts in the consensus protocol used from protocol version 6.

TimeoutParametersUpdate

The consensus timeouts were updated (chain parameters version 2).

TransactionFeeCommissionNotInRange

Transaction fee commission is not in the valid range for a baker

TransactionFeeDistribution

Update the transaction fee distribution to the specified value.

TransactionFeeDistributionUpdate

Update the transaction fee distribution to the specified value.

TransactionHash

Represents a transaction hash.

TransactionStatusCommitted

Transaction is committed to one or more blocks. The outcomes are listed for each block. Note that in the vast majority of cases the outcome of a transaction should not be dependent on the block it is in, but this can in principle happen.

TransactionStatusFinalized

Transaction is finalized in the given block, with the given summary.

TransactionStatusReceived

Transaction is received, but not yet in any blocks.

TransactionTime

Transaction time specified as seconds since unix epoch.

TransactionTypeFactory

Helper for constructing transaction type structures.

Transferred

A contract transferred an amount to the account.

TransferredToEncrypted

An account transferred part of its public balance to its encrypted balance.

TransferredToPublic

An account transferred part of its encrypted balance to its public balance.

TransferredWithSchedule

A transfer with schedule was performed possible with a memo.

UpdateDetails

Details of an update instruction. These are free, and we only ever get a response for them if the update is successfully enqueued, hence no failure cases.

UpdatePayloadFactory

Helper for constructing update payload structures.

UpdatePublicKey

A single public key that can sign updates.

Updated

A contract instance was updated.

Upgraded

Contract was upgraded.

Utf8Json

Holds a uft8 encoded JSON structure.

VersionedModuleSchema

Module schema embedded within VersionedModuleSource.

VersionedModuleSource

Contains source code of a versioned module where inherited classes are concrete versions.

VersionedModuleSourceFactory

Crates a VersiondModuleSource.

ZeroScheduledAmount

The transfer with schedule is going to send 0 tokens

Structs

AccountCredentialIndex

Represents an account credential index.

An account has one or more credentials, each identified by a unique byte-value referred to as its credential index.

AccountIndex

Index of the account in the account table. These are assigned sequentially in the order of creation of accounts. The first account has index 0.

AccountKeyIndex

Represents an account key index.

An account has one or more credentials, each identified by a unique credential index (modeled by AccountCredentialIndex).

For each credential the account may have up to 255 keys, where each such key is identified by another unique byte-value referred to as its account key index. This index is relative to the credential index of the credential to which it belongs. Thus a pair of a credential index of the account and the key index of a key belonging to the corresponding credential uniquely identifies that key.

AccountSequenceNumber

Represents an account sequence number.

The account sequence number is a 64-bit unsigned integer specific to an account and used when submitting account transactions for that account to the node. The account sequence number is maintained as on-chain state and is incremented with each finalized transaction. The next sequence number to be used in a transaction can be queried with GetNextAccountSequenceNumber(AccountAddress, CancellationToken).

AccountThreshold

The minimum number of credentials that need to sign any transaction coming from an associated account.

ArIdentity

Identity of the anonymity revoker on the chain. This defines their evaluation point for secret sharing, and thus it cannot be 0.

BakerId

Internal short id of the baker.

CcdAmount

Represents a CCD amount.

Note that 1_000_000 µCCD is equal to 1 CCD.

CredentialsPerBlockLimit

Limit on the number of credential deployments in a block. Since credential deployments create accounts, this is in effect a limit on the number of accounts that can be created in a block.

DelegatorId

Internal short id of the delegator.

EnergyAmount

Represents an amount of energy.

Epoch

Epoch number

ExchangeRate

An exchange rate between two quantities. This is never 0, and the exchange rate should also never be infinite.

Expiry

Represents an expiration time for a transaction.

A transaction can not be included in a block if its expiration time is before the block (slot) time.

IpIdentity

A succinct identifier of an identity provider on the chain. In credential deployments, and other interactions with the chain this is used to identify which identity provider is meant.

LeverageFactor

The amount of leverage that a baker can get from delegation. A leverage factor of 1 means that a baker does not gain anything from delegation.

MintRate

Rate of creation of new CCDs. For example, A value of 0.05 would mean an increase of 5 percent per unit of time. This value does not specify the time unit, and this differs based on the protocol version.

The representation is base-10 floating point number representation. The value is mantissa * 10^(-exponent).

PayloadSize

Represents a payload size.

Ratio

A ratio between two ulong integers.

It should be safe to assume the denominator is not zero and that numerator and denominator are coprime.

RewardPeriodLength

Length of a reward period in epochs. Must always be a strictly positive integer.

Round

Round number. Applies to protocol 6 and onward.

UpdateKeysIndex

An identifier of a key that can sign update instructions. A signature of an update instruction is a collection of signatures. An UpdateKeysIndex identifies keys that correspond to the signatures.

UpdateKeysThreshold

A lower bound on the number of signatures needed to sign a valid update message of a particular type. This is never 0.

Interfaces

IAccountDelegationPendingChange

Interface covering account delegation pending changes.

IAccountIdentifier

An account identifier used in queries.

IAccountStakingInfo
IAccountTransactionEffects

Effects of an account transactions. All variants apart from None correspond to a unique transaction that was successful.

IAddress

A interface implemented by addresses like Account- and Contract address.

IBakerEvent

Events that may result from the ConfigureBaker transaction.

IBlockHashInput

A block identifier used in queries.

IBlockHeight

Interface which covers block heights and can be mapped into gRPC block height request types.

IBlockItemSummaryDetails

Details of a block item summary, split by the kind of block item it is for.

IChainParameters

Chain parameters.

IContractTraceElement

A successful contract invocation produces a sequence of effects on smart contracts and possibly accounts (if any contract transfers CCD to an account).

IDelegationEvent

Events that may happen as a result of the ConfigureDelegation transaction.

IEffect

The effect of the update.

IInstanceInfo

Information about an existing smart contract instance.

ILevel1

An update with level 1 keys of either level 1 or level 2 keys. Each of the updates must be a separate transaction.

INodeConsensusStatus

Details of the consensus protocol running on the node.

INodeDetails

Consensus related information for a node.

IRejectReason

Common interface for reject reasons. The user can with a switch statement determine the type and act on it. See example.

IRootUpdate

An update with root keys of some other set of governance keys, or the root keys themselves. Each update is a separate transaction.

ISpecialEvent

In addition to the user initiated transactions the protocol generates some events which are deemed "Special outcomes". These are rewards for running the consensus and finalization protocols.

ITransactionStatus

A common return type for TransactionStatus.

IUpdatePayload

The type of an update payload.

Enums

BakerPoolOpenStatus
ContractName.ValidationError

Validation error of contract name.

ContractVersion

Contract version.

CredentialType

Enumeration of the types of credentials.

ModuleSchemaVersion

Represents the different module schema versions.

ProtocolVersion

An enumeration of the supported versions of the consensus protocol.

ReceiveName.ValidationError

Validation error of receive name.

TransactionType

Types of account transactions.

UpdateType

The type of an update.