# Functions

DCTGlobalMetadataFromBytes creates a metadata object from bytes.
DCTUserMetadataFromBytes creates a metadata object from bytes.
NewBuiltInFunctionContainer will create a new instance of a container.
NewBuiltInFunctionsCreator creates a component which will instantiate the built in functions contracts.
NewChangeOwnerAddressFunc create a new change owner built-in function.
NewClaimDeveloperRewardsFunc returns a new developer rewards implementation.
NewDCTBurnFunc returns the dct burn built-in function component.
NewDCTDataStorage creates a new dct data storage handler.
NewDCTDeleteMetadataFunc returns the dct metadata deletion built-in function component.
NewDCTFreezeWipeFunc returns the dct freeze/un-freeze/wipe built-in function component.
NewDCTGlobalSettingsFunc returns the dct pause/un-pause built-in function component.
NewDCTLocalBurnFunc returns the dct local burn built-in function component.
NewDCTLocalMintFunc returns the dct local mint built-in function component.
NewDCTNFTAddQuantityFunc returns the dct NFT add quantity built-in function component.
NewDCTNFTAddUriFunc returns the dct NFT add URI built-in function component.
NewDCTNFTBurnFunc returns the dct NFT burn built-in function component.
NewDCTNFTCreateFunc returns the dct NFT create built-in function component.
NewDCTNFTCreateRoleTransfer returns the dct NFT create role transfer built-in function component.
NewDCTNFTMultiTransferFunc returns the dct NFT multi transfer built-in function component.
NewDCTNFTTransferFunc returns the dct NFT transfer built-in function component.
NewDCTNFTUpdateAttributesFunc returns the dct NFT update attribute built-in function component.
NewDCTRolesFunc returns the dct change roles built-in function component.
NewDCTTransferFunc returns the dct transfer built-in function component.
NewDCTTransferRoleAddressFunc returns the dct transfer role address handler built-in function component.
NewDeleteUserNameFunc returns a delete username built in function implementation.
NewGuardAccountFunc will instantiate a new guard account built-in function.
NewMigrateDataTrieFunc creates a new migrateDataTrie built-in function component.
NewPayableCheckFunc returns a new component which checks if destination is payableCheck when needed.
NewSaveKeyValueStorageFunc returns the save key-value storage built in function.
NewSaveUserNameFunc returns a username built in function implementation.
NewSetGuardianFunc will instantiate a new set guardian built-in function.
NewUnGuardAccountFunc will instantiate a new un-guard account built-in function.

# Constants

BurnRoleForAll is the location of burn role for all flag in the dct global meta data.
MetadataFrozen is the location of frozen flag in the dct user meta data.
MetadataLimitedTransfer is the location of limited transfer flag in the dct global meta data.
MetadataPaused is the location of paused flag in the dct global meta data.

# Variables

ErrAccountNotPayable will be sent when trying to send tokens to a non-payableCheck account.
ErrActionNotAllowed signals that action is not allowed.
ErrAddressIsNotAllowed signals that sender is not allowed to do the action.
ErrAddressIsNotDCTSystemSC signals that destination is not a system sc address.
ErrBuiltInFunctionCalledWithValue signals that builtin function was called with value that is not allowed.
ErrCallerIsNotTheDNSAddress signals that called address is not the DNS address.
ErrCannotMigrateNilUserName signals that a nil username is migrated.
ErrCannotSetOwnAddressAsGuardian signals that an owner cannot set its own address as guardian.
ErrCannotWipeAccountNotFrozen signals that account isn't frozen so the wipe is not possible.
ErrContainerKeyAlreadyExists signals that an element was already set in the container's map.
ErrDCTIsFrozenForAccount signals that account is frozen for given dct token.
ErrDCTTokenIsPaused signals that dct token is paused.
ErrEmptyFunctionName signals that an empty function name has been provided.
ErrGuardianAlreadyExists signals that a guardian with the same address already exists.
ErrInsufficientFunds signals the funds are insufficient for the move balance operation but the transaction fee is covered by the current balance.
ErrInsufficientQuantityDCT signals the funds are insufficient for the DCT transfer.
ErrInvalidAddress signals that an invalid address has been provided.
ErrInvalidAddressLength signals that address length is invalid.
ErrInvalidArguments signals that invalid arguments were given to process built-in function.
ErrInvalidContainerKey signals that an element does not exist in the container's map.
ErrInvalidLiquidityForDCT signals that liquidity is invalid for DCT.
ErrInvalidMaxNumAddresses signals that there is an invalid max number of addresses.
ErrInvalidMetadata signals that invalid metadata was provided.
ErrInvalidNFTQuantity signals that invalid NFT quantity was provided.
ErrInvalidNonce signals that invalid nonce for dct.
ErrInvalidNumberOfArguments signals that an invalid number of arguments has been provided.
ErrInvalidNumOfArgs signals that the number of arguments is invalid.
ErrInvalidRcvAddr signals that an invalid receiver address was provided.
ErrInvalidServiceUID signals that an invalid service UID was provided.
ErrInvalidTokenID signals that invalid tokenID was provided.
ErrNegativeValue signals that a negative value has been detected and it is not allowed.
ErrNewNFTDataOnSenderAddress signals that a new NFT data was found on the sender address.
ErrNFTDoesNotHaveMetadata signals that NFT does not have metadata.
ErrNFTTokenDoesNotExist signals that NFT token does not exist.
ErrNilAccountHandler signals that a nil account handler has been provided.
ErrNilAccountsAdapter defines the error when trying to use a nil AccountsAddapter.
ErrNilActiveHandler signals that a nil active handler has been provided.
ErrNilContainerElement signals when trying to add a nil element in the container.
ErrNilDCTData signals that DCT data does not exist.
ErrNilDCTNFTStorageHandler signals that a nil nft storage handler has been provided.
ErrNilDnsAddresses signals that nil dns addresses map was provided.
ErrNilEnableEpochsHandler signals that a nil enable epochs handler was provided.
ErrNilGlobalSettingsHandler signals that nil pause handler has been provided.
ErrNilGuardedAccountHandler signals that a nil guarded account handler was provided.
ErrNilMarshalizer signals that an operation has been attempted to or with a nil Marshalizer implementation.
ErrNilPayableHandler signals that nil payableHandler was provided.
ErrNilRolesHandler signals that nil roles handler has been provided.
ErrNilSCDestAccount signals that destination account is nil.
ErrNilShardCoordinator signals that an operation has been attempted to or with a nil shard coordinator.
ErrNilTransactionHandler signals that a nil transaction handler has been provided.
ErrNilUserAccount signals that nil user account was provided.
ErrNilValue signals the value is nil.
ErrNilVmInput signals that provided vm input is nil.
ErrNoGuardianEnabled signals that account has no guardian enabled.
ErrNotEnoughGas signals that not enough gas has been provided.
ErrOnlyFungibleTokensHaveBalanceTransfer signals that only fungible tokens have balance transfer.
ErrOnlySystemAccountAccepted signals that only system account is accepted.
ErrOperationNotPermitted signals that operation is not permitted.
ErrOwnerAlreadyHasOneGuardianPending signals that an owner already has one guardian pending.
ErrSetGuardAccountFlag signals that an account is already guarded when trying to guard it.
ErrSetUnGuardAccount signals that an account is already unguarded when trying to un-guard it.
ErrTokenHasValidMetadata signals that token has a valid metadata.
ErrTooManyTransferAddresses signals that too many transfer address roles has been added.
ErrUserNameChangeIsDisabled signals the user name change is not allowed.
ErrUserNamePrefixNotEqual signals that user name prefix is not equal.
ErrWrongTypeAssertion signals that an type assertion failed.
ErrWrongTypeInContainer signals that a wrong type of object was found in container.
ErrWrongUserNameSplit signals that user name split is wrong.

# Structs

ArgsCreateBuiltInFunctionContainer defines the input arguments to create built in functions container.
ArgsNewDCTDataStorage defines the argument list for new dct data storage handler.
ArgsNewDCTDeleteMetadata defines the argument list for new dct delete metadata built in function.
BaseAccountGuarderArgs is a struct placeholder for all necessary args to create a newBaseAccountGuarder.
DCTGlobalMetadata represents dct global metadata saved on system account.
DCTUserMetadata represents dct user metadata saved on every account.
GuardAccountArgs is a struct placeholder for all necessary args to create either a NewGuardAccountFunc or a NewUnGuardAccountFunc.
SetGuardianArgs is a struct placeholder for all necessary args to create a NewSetGuardianFunc.
TopicTokenData groups data that will end up in Topics section of LogEntry.