# Constants

MoveAbilityCopy is the ability to copy the type.
MoveAbilityDrop is the ability to drop the type.
MoveAbilityKey is the ability to use the type as a key in global storage.
MoveAbilityStore is the ability to store the type.
MoveVisibilityFriend is a function that is only accessible to friends of the module.
MoveVisibilityPrivate is a function that is only accessible within the module.
MoveVisibilityPublic is a function that is accessible anywhere.
SignatureVariantEd25519 maps to Ed25519Signature.
SignatureVariantFeePayer maps to FeePayerSignature.
SignatureVariantMultiAgent maps to MultiAgentSignature.
SignatureVariantMultiEd25519 maps to MultiEd25519Signature.
SignatureVariantSingleSender maps to SingleSenderSignature.
SignatureVariantUnknown maps to UnknownSignature for unknown types.
TransactionPayloadVariantEntryFunction maps to TransactionPayloadEntryFunction.
TransactionPayloadVariantModuleBundle maps to TransactionPayloadModuleBundle and is deprecated.
TransactionPayloadVariantMultisig maps to TransactionPayloadMultisig.
TransactionPayloadVariantScript maps to TransactionPayloadScript.
TransactionPayloadVariantUnknown maps to TransactionPayloadUnknown for unknown types.
TransactionPayloadVariantWriteSet maps to TransactionPayloadWriteSet.
TransactionVariantBlockEpilogue maps to BlockEpilogueTransaction.
TransactionVariantBlockMetadata maps to BlockMetadataTransaction.
TransactionVariantGenesis maps to GenesisTransaction.
TransactionVariantPending maps to PendingTransaction.
TransactionVariantStateCheckpoint maps to StateCheckpointTransaction.
TransactionVariantUnknown maps to UnknownTransaction for unknown types.
TransactionVariantUser maps to UserTransaction.
TransactionVariantValidator maps to ValidatorTransaction.
WriteSetChangeVariantDeleteModule maps to WriteSetChangeDeleteModule.
WriteSetChangeVariantDeleteResource maps to WriteSetChangeDeleteResource.
WriteSetChangeVariantDeleteTableItem maps to WriteSetChangeDeleteTableItem.
WriteSetChangeVariantUnknown maps to WriteSetChangeUnknown for unknown types.
WriteSetChangeVariantWriteModule maps to WriteSetChangeWriteModule.
WriteSetChangeVariantWriteResource maps to WriteSetChangeWriteResource.
WriteSetChangeVariantWriteTableItem maps to WriteSetChangeWriteTableItem.
WriteSetVariantDirect maps to DirectWriteSet.
WriteSetVariantScript maps to ScriptWriteSet.
WriteSetVariantUnknown maps to UnknownWriteSet for unknown types.

# Structs

BatchSubmitTransactionFailure is a failure of a transaction in a batch submission,.
BatchSubmitTransactionResponse is the response from submitting a batch of transactions to the blockchain.
Block describes a block properties and may have attached transactions Example: { "block_height": "1", "block_hash": "0x014e30aafd9f715ab6262322bf919abebd66d948f6822ffb8a2699a57722fb80", "block_timestamp": "1665609760857472", "first_version": "1", "last_version": "1", "transactions": null }.
BlockEndInfo is the information about the block gas.
BlockEpilogueTransaction is a transaction at the end of the block.
BlockMetadataTransaction is a transaction that is metadata about a block.
CommittedTransaction is an enum type for all possible committed transactions on the blockchain This is the same as [Transaction] but with the Success and Version functions always confirmed.
DecodedTableData is the decoded data for a table item.
DeletedTableData is the decoded data for a deleted table item.
DirectWriteSet is a raw set of changes and events.
Error is an error from the REST API.
Event describes an on-chain event from Move.
FeePayerSignature is a sponsored transaction, the sender can be different from the fee payer of the transaction.
GenericTypeParam is a set of requirements for a generic.
GenesisTransaction is a transaction that is the first transaction on the blockchain.
GUID describes a GUID associated with things like V1 events Note that this can only be used to deserialize events in the `events` field, and not the `GUID` resource in `changes`.
HealthCheckResponse is the response to a health check request Example: { "message": "endless-node:ok" }.
MoveBytecode describes a module, or script, and it's associated ABI as a [MoveModule] Example 0x1::coin: { "bytecode": "0xa11ceb0b123456...", "abi": { "address": "0x1", "name": "coin", "friends": [ "0x1::endless_coin", "0x1::genesis", "0x1::transaction_fee" ], "exposed_functions": [ { "name": "balance", "visibility": "public", "is_entry": false, "is_view": true, "generic_type_params": [ { "constraints": [] } ], "params": [ "address" ], "return": [ "u64" ] } ], "structs": [ { "name": "Coin", "is_native": false, "abilities": [ "store" ], "generic_type_params": [ { "constraints": [] } ], "fields": [ { "name": "value", "type": "u64" } ] }, ], } }.
MoveFunction describes a move function and its associated properties Example 0x1::coin::balance: { "name": "balance", "visibility": "public", "is_entry": false, "is_view": true, "generic_type_params": [ { "constraints": [] } ], "params": [ "address" ], "return": [ "u64" ] }.
MoveModule describes the abilities and types associated with a specific module.
MoveResource is a resource in Move, it should match the on-chain struct data.
MoveScript is the representation of a compiled script.
MoveStruct describes the layout for a struct, and its constraints Example 0x1::coin::Coin: { "name": "Coin", "is_native": false, "abilities": [ "store" ], "generic_type_params": [ { "constraints": [] } ], "fields": [ { "name": "value", "type": "u64" } ] }.
MoveStructField represents a single field in a struct, and it's associated type.
MultiAgentSignature is a transaction with multiple unique signers, acting on behalf of multiple accounts.
MultiEd25519Signature is off-chain multi-sig with only Ed25519 keys.
PendingTransaction is a transaction that is not yet committed to the blockchain.
ScriptWriteSet is a set of changes and events that are generated by a script This hasn't been used in practice yet, but it's here for completeness.
Signature is an enum of all possible signatures on Endless Unknown types will have the Type set to [SignatureVariantUnknown] and the Inner set to [UnknownSignature].
StateCheckpointTransaction is a transaction that is a checkpoint of the state of the blockchain.
Transaction is an enum type for all possible transactions on the blockchain.
TransactionPayload is an enum of all possible transaction payloads Unknown types will have the Type set to [TransactionPayloadVariantUnknown] and the Inner set to [TransactionPayloadUnknown].
TransactionPayloadEntryFunction describes an entry function call by a transaction.
TransactionPayloadModuleBundle is a deprecated type that does not exist on mainnet.
TransactionPayloadMultisig describes a multi-sig running an entry function TODO: This isn't ever a top level transaction payload, it is always nested in a TransactionPayload so it may not apply here.
TransactionPayloadScript describes a script payload along with associated.
TransactionPayloadUnknown is to handle new types gracefully.
TransactionPayloadWriteSet describes a write set transaction, such as genesis.
UnknownSignature is a signature type that is not recognized by the SDK This is a fallback type for unknown signatures.
UnknownTransaction is a transaction type that is not recognized by the SDK.
UnknownWriteSet is a placeholder for unknown write sets.
UserTransaction is a user submitted transaction as an entry function, script, or more.
ValidatorTransaction is a transaction that is metadata about a block.
WriteSet is an enum of all possible write sets.
WriteSetChange is an enum of all possible write set changes.
WriteSetChangeDeleteModule is a change that deletes a module from an account Note: There is no way to delete a module today, but this is here for completeness.
WriteSetChangeDeleteResource is a change that deletes a resource from an account.
WriteSetChangeDeleteTableItem is a change that deletes a table item.
WriteSetChangeUnknown is a placeholder for unknown write set changes.
WriteSetChangeWriteModule is a change that writes a module to an account.
WriteSetChangeWriteResource is a change that writes a resource to an account.
WriteSetChangeWriteTableItem is a change that writes a table item.

# Interfaces

SignatureImpl is an interface for all signatures in their JSON formats.
TransactionImpl is an interface for all transactions.
TransactionPayloadImpl is all the interfaces required for all transaction payloads Current implementations are: - [TransactionPayloadEntryFunction] - [TransactionPayloadScript] - [TransactionPayloadMultisig] - [TransactionPayloadWriteSet] - [TransactionPayloadModuleBundle] - [TransactionPayloadUnknown].
WriteSetChangeImpl is an interface for all write set changes.
WriteSetImpl is an interface for all write sets.

# Type aliases

Ed25519Signature represents an Ed25519 public key and signature pair, which actually is the [crypto.AccountAuthenticator].
Hash is a representation of a hash as Hex in JSON # This is always represented as a 32-byte hash in hexadecimal format Example: 0xf4d07fdb8b5151971886a910e516d418a790dd5f6e068b0588066518a395a600.
HexBytes is a type for handling Bytes encoded as hex in JSON.
MoveAbility are the types of abilities applied to structs, the possible types are listed as [MoveAbilityStore] and others.
MoveComponentId is an id for a struct, function, or other type e.g.
MoveVisibility is the visibility of a function or struct, the possible types are listed as [MoveVisibilityPublic] and others See more at the [Move Visibility Documentation].
SignatureVariant is the JSON representation of the signature types.
SingleSenderSignature is a map of the possible keys, the API needs an update to describe the type of key TODO: Implement single sender crypto properly, needs updates on the API side.
SubmitTransactionResponse is the response from submitting a transaction to the blockchain, it is the same as a [PendingTransaction].
TransactionPayloadVariant is the type of payload represented in JSON.
TransactionVariant is the type of transaction, all transactions submitted by this SDK are [TransactionVariantUser].
U64 is a type for handling JSON string representations of the uint64.
WriteSetChangeVariant is the type of [WriteSetChange].
WriteSetVariant is the type of [WriteSet].