accountTypeOfMintType property

ExtensionType accountTypeOfMintType

Implementation

ExtensionType get accountTypeOfMintType {
  switch (this) {
    case ExtensionType.transferFeeConfig:
      return ExtensionType.transferFeeAmount;
    case ExtensionType.confidentialTransferMint:
      return ExtensionType.confidentialTransferAccount;
    case ExtensionType.nonTransferable:
      return ExtensionType.nonTransferableAccount;
    case ExtensionType.transferHook:
      return ExtensionType.transferHookAccount;
    case ExtensionType.transferFeeAmount:
    case ExtensionType.confidentialTransferAccount:
    case ExtensionType.cpiGuard:
    case ExtensionType.defaultAccountState:
    case ExtensionType.immutableOwner:
    case ExtensionType.memoTransfer:
    case ExtensionType.mintCloseAuthority:
    case ExtensionType.metadataPointer:
    case ExtensionType.tokenMetadata:
    case ExtensionType.uninitialized:
    case ExtensionType.interestBearingConfig:
    case ExtensionType.permanentDelegate:
    case ExtensionType.nonTransferableAccount:
    case ExtensionType.transferHookAccount:
      return ExtensionType.uninitialized;
    default:
      throw MessageException("unsuported type",
          details: {"ExtensionType": name});
  }
}