// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        v6.32.0
// source: solana/token_block_message.proto

package solana_messages

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type TokenCreator struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Address       []byte                 `protobuf:"bytes,1,opt,name=Address,proto3" json:"Address,omitempty"`
	Verified      bool                   `protobuf:"varint,2,opt,name=Verified,proto3" json:"Verified,omitempty"`
	Share         uint32                 `protobuf:"varint,3,opt,name=Share,proto3" json:"Share,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *TokenCreator) Reset() {
	*x = TokenCreator{}
	mi := &file_solana_token_block_message_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TokenCreator) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TokenCreator) ProtoMessage() {}

func (x *TokenCreator) ProtoReflect() protoreflect.Message {
	mi := &file_solana_token_block_message_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TokenCreator.ProtoReflect.Descriptor instead.
func (*TokenCreator) Descriptor() ([]byte, []int) {
	return file_solana_token_block_message_proto_rawDescGZIP(), []int{0}
}

func (x *TokenCreator) GetAddress() []byte {
	if x != nil {
		return x.Address
	}
	return nil
}

func (x *TokenCreator) GetVerified() bool {
	if x != nil {
		return x.Verified
	}
	return false
}

func (x *TokenCreator) GetShare() uint32 {
	if x != nil {
		return x.Share
	}
	return 0
}

type Currency struct {
	state                protoimpl.MessageState `protogen:"open.v1"`
	Name                 string                 `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Decimals             uint32                 `protobuf:"varint,2,opt,name=Decimals,proto3" json:"Decimals,omitempty"`
	Uri                  string                 `protobuf:"bytes,3,opt,name=Uri,proto3" json:"Uri,omitempty"`
	Symbol               string                 `protobuf:"bytes,4,opt,name=Symbol,proto3" json:"Symbol,omitempty"`
	Native               bool                   `protobuf:"varint,5,opt,name=Native,proto3" json:"Native,omitempty"`
	Wrapped              bool                   `protobuf:"varint,6,opt,name=Wrapped,proto3" json:"Wrapped,omitempty"`
	Fungible             bool                   `protobuf:"varint,7,opt,name=Fungible,proto3" json:"Fungible,omitempty"`
	Key                  string                 `protobuf:"bytes,8,opt,name=Key,proto3" json:"Key,omitempty"`
	SellerFeeBasisPoints uint32                 `protobuf:"varint,9,opt,name=SellerFeeBasisPoints,proto3" json:"SellerFeeBasisPoints,omitempty"`
	EditionNonce         *uint32                `protobuf:"varint,10,opt,name=EditionNonce,proto3,oneof" json:"EditionNonce,omitempty"`
	TokenStandard        *string                `protobuf:"bytes,11,opt,name=TokenStandard,proto3,oneof" json:"TokenStandard,omitempty"`
	ProgramAddress       []byte                 `protobuf:"bytes,12,opt,name=ProgramAddress,proto3" json:"ProgramAddress,omitempty"`
	MintAddress          []byte                 `protobuf:"bytes,13,opt,name=MintAddress,proto3" json:"MintAddress,omitempty"`
	MetadataAddress      []byte                 `protobuf:"bytes,14,opt,name=MetadataAddress,proto3" json:"MetadataAddress,omitempty"`
	UpdateAuthority      []byte                 `protobuf:"bytes,15,opt,name=UpdateAuthority,proto3" json:"UpdateAuthority,omitempty"`
	CollectionAddress    []byte                 `protobuf:"bytes,16,opt,name=CollectionAddress,proto3" json:"CollectionAddress,omitempty"`
	VerifiedCollection   bool                   `protobuf:"varint,17,opt,name=VerifiedCollection,proto3" json:"VerifiedCollection,omitempty"`
	PrimarySaleHappened  bool                   `protobuf:"varint,18,opt,name=PrimarySaleHappened,proto3" json:"PrimarySaleHappened,omitempty"`
	IsMutable            bool                   `protobuf:"varint,19,opt,name=IsMutable,proto3" json:"IsMutable,omitempty"`
	TokenCreators        []*TokenCreator        `protobuf:"bytes,20,rep,name=TokenCreators,proto3" json:"TokenCreators,omitempty"`
	FreezeAuthority      []byte                 `protobuf:"bytes,21,opt,name=FreezeAuthority,proto3" json:"FreezeAuthority,omitempty"`
	MintAuthority        []byte                 `protobuf:"bytes,22,opt,name=MintAuthority,proto3" json:"MintAuthority,omitempty"`
	Parsed               bool                   `protobuf:"varint,23,opt,name=Parsed,proto3" json:"Parsed,omitempty"`
	TotalSupply          uint64                 `protobuf:"varint,24,opt,name=TotalSupply,proto3" json:"TotalSupply,omitempty"`
	unknownFields        protoimpl.UnknownFields
	sizeCache            protoimpl.SizeCache
}

func (x *Currency) Reset() {
	*x = Currency{}
	mi := &file_solana_token_block_message_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Currency) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Currency) ProtoMessage() {}

func (x *Currency) ProtoReflect() protoreflect.Message {
	mi := &file_solana_token_block_message_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Currency.ProtoReflect.Descriptor instead.
func (*Currency) Descriptor() ([]byte, []int) {
	return file_solana_token_block_message_proto_rawDescGZIP(), []int{1}
}

func (x *Currency) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *Currency) GetDecimals() uint32 {
	if x != nil {
		return x.Decimals
	}
	return 0
}

func (x *Currency) GetUri() string {
	if x != nil {
		return x.Uri
	}
	return ""
}

func (x *Currency) GetSymbol() string {
	if x != nil {
		return x.Symbol
	}
	return ""
}

func (x *Currency) GetNative() bool {
	if x != nil {
		return x.Native
	}
	return false
}

func (x *Currency) GetWrapped() bool {
	if x != nil {
		return x.Wrapped
	}
	return false
}

func (x *Currency) GetFungible() bool {
	if x != nil {
		return x.Fungible
	}
	return false
}

func (x *Currency) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *Currency) GetSellerFeeBasisPoints() uint32 {
	if x != nil {
		return x.SellerFeeBasisPoints
	}
	return 0
}

func (x *Currency) GetEditionNonce() uint32 {
	if x != nil && x.EditionNonce != nil {
		return *x.EditionNonce
	}
	return 0
}

func (x *Currency) GetTokenStandard() string {
	if x != nil && x.TokenStandard != nil {
		return *x.TokenStandard
	}
	return ""
}

func (x *Currency) GetProgramAddress() []byte {
	if x != nil {
		return x.ProgramAddress
	}
	return nil
}

func (x *Currency) GetMintAddress() []byte {
	if x != nil {
		return x.MintAddress
	}
	return nil
}

func (x *Currency) GetMetadataAddress() []byte {
	if x != nil {
		return x.MetadataAddress
	}
	return nil
}

func (x *Currency) GetUpdateAuthority() []byte {
	if x != nil {
		return x.UpdateAuthority
	}
	return nil
}

func (x *Currency) GetCollectionAddress() []byte {
	if x != nil {
		return x.CollectionAddress
	}
	return nil
}

func (x *Currency) GetVerifiedCollection() bool {
	if x != nil {
		return x.VerifiedCollection
	}
	return false
}

func (x *Currency) GetPrimarySaleHappened() bool {
	if x != nil {
		return x.PrimarySaleHappened
	}
	return false
}

func (x *Currency) GetIsMutable() bool {
	if x != nil {
		return x.IsMutable
	}
	return false
}

func (x *Currency) GetTokenCreators() []*TokenCreator {
	if x != nil {
		return x.TokenCreators
	}
	return nil
}

func (x *Currency) GetFreezeAuthority() []byte {
	if x != nil {
		return x.FreezeAuthority
	}
	return nil
}

func (x *Currency) GetMintAuthority() []byte {
	if x != nil {
		return x.MintAuthority
	}
	return nil
}

func (x *Currency) GetParsed() bool {
	if x != nil {
		return x.Parsed
	}
	return false
}

func (x *Currency) GetTotalSupply() uint64 {
	if x != nil {
		return x.TotalSupply
	}
	return 0
}

type CurrencyBalanceUpdate struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	BalanceUpdate *BalanceUpdate         `protobuf:"bytes,1,opt,name=BalanceUpdate,proto3" json:"BalanceUpdate,omitempty"`
	Currency      *Currency              `protobuf:"bytes,2,opt,name=Currency,proto3" json:"Currency,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CurrencyBalanceUpdate) Reset() {
	*x = CurrencyBalanceUpdate{}
	mi := &file_solana_token_block_message_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *CurrencyBalanceUpdate) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CurrencyBalanceUpdate) ProtoMessage() {}

func (x *CurrencyBalanceUpdate) ProtoReflect() protoreflect.Message {
	mi := &file_solana_token_block_message_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CurrencyBalanceUpdate.ProtoReflect.Descriptor instead.
func (*CurrencyBalanceUpdate) Descriptor() ([]byte, []int) {
	return file_solana_token_block_message_proto_rawDescGZIP(), []int{2}
}

func (x *CurrencyBalanceUpdate) GetBalanceUpdate() *BalanceUpdate {
	if x != nil {
		return x.BalanceUpdate
	}
	return nil
}

func (x *CurrencyBalanceUpdate) GetCurrency() *Currency {
	if x != nil {
		return x.Currency
	}
	return nil
}

type Transfer struct {
	state            protoimpl.MessageState `protogen:"open.v1"`
	InstructionIndex uint32                 `protobuf:"varint,1,opt,name=InstructionIndex,proto3" json:"InstructionIndex,omitempty"`
	Amount           uint64                 `protobuf:"varint,2,opt,name=Amount,proto3" json:"Amount,omitempty"`
	Sender           *Account               `protobuf:"bytes,3,opt,name=Sender,proto3" json:"Sender,omitempty"`
	Receiver         *Account               `protobuf:"bytes,4,opt,name=Receiver,proto3" json:"Receiver,omitempty"`
	Authority        *Account               `protobuf:"bytes,5,opt,name=Authority,proto3" json:"Authority,omitempty"`
	Currency         *Currency              `protobuf:"bytes,6,opt,name=Currency,proto3" json:"Currency,omitempty"`
	Instruction      *ParsedIdlInstruction  `protobuf:"bytes,7,opt,name=Instruction,proto3" json:"Instruction,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

func (x *Transfer) Reset() {
	*x = Transfer{}
	mi := &file_solana_token_block_message_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Transfer) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Transfer) ProtoMessage() {}

func (x *Transfer) ProtoReflect() protoreflect.Message {
	mi := &file_solana_token_block_message_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Transfer.ProtoReflect.Descriptor instead.
func (*Transfer) Descriptor() ([]byte, []int) {
	return file_solana_token_block_message_proto_rawDescGZIP(), []int{3}
}

func (x *Transfer) GetInstructionIndex() uint32 {
	if x != nil {
		return x.InstructionIndex
	}
	return 0
}

func (x *Transfer) GetAmount() uint64 {
	if x != nil {
		return x.Amount
	}
	return 0
}

func (x *Transfer) GetSender() *Account {
	if x != nil {
		return x.Sender
	}
	return nil
}

func (x *Transfer) GetReceiver() *Account {
	if x != nil {
		return x.Receiver
	}
	return nil
}

func (x *Transfer) GetAuthority() *Account {
	if x != nil {
		return x.Authority
	}
	return nil
}

func (x *Transfer) GetCurrency() *Currency {
	if x != nil {
		return x.Currency
	}
	return nil
}

func (x *Transfer) GetInstruction() *ParsedIdlInstruction {
	if x != nil {
		return x.Instruction
	}
	return nil
}

type InstructionBalanceUpdate struct {
	state                       protoimpl.MessageState   `protogen:"open.v1"`
	InstructionIndex            uint32                   `protobuf:"varint,1,opt,name=InstructionIndex,proto3" json:"InstructionIndex,omitempty"`
	TotalCurrencyBalanceUpdates []*CurrencyBalanceUpdate `protobuf:"bytes,2,rep,name=TotalCurrencyBalanceUpdates,proto3" json:"TotalCurrencyBalanceUpdates,omitempty"`
	OwnCurrencyBalanceUpdates   []*CurrencyBalanceUpdate `protobuf:"bytes,3,rep,name=OwnCurrencyBalanceUpdates,proto3" json:"OwnCurrencyBalanceUpdates,omitempty"`
	TokenSupplyUpdates          []*CurrencyBalanceUpdate `protobuf:"bytes,4,rep,name=TokenSupplyUpdates,proto3" json:"TokenSupplyUpdates,omitempty"`
	Instruction                 *ParsedIdlInstruction    `protobuf:"bytes,5,opt,name=Instruction,proto3" json:"Instruction,omitempty"`
	unknownFields               protoimpl.UnknownFields
	sizeCache                   protoimpl.SizeCache
}

func (x *InstructionBalanceUpdate) Reset() {
	*x = InstructionBalanceUpdate{}
	mi := &file_solana_token_block_message_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *InstructionBalanceUpdate) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InstructionBalanceUpdate) ProtoMessage() {}

func (x *InstructionBalanceUpdate) ProtoReflect() protoreflect.Message {
	mi := &file_solana_token_block_message_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InstructionBalanceUpdate.ProtoReflect.Descriptor instead.
func (*InstructionBalanceUpdate) Descriptor() ([]byte, []int) {
	return file_solana_token_block_message_proto_rawDescGZIP(), []int{4}
}

func (x *InstructionBalanceUpdate) GetInstructionIndex() uint32 {
	if x != nil {
		return x.InstructionIndex
	}
	return 0
}

func (x *InstructionBalanceUpdate) GetTotalCurrencyBalanceUpdates() []*CurrencyBalanceUpdate {
	if x != nil {
		return x.TotalCurrencyBalanceUpdates
	}
	return nil
}

func (x *InstructionBalanceUpdate) GetOwnCurrencyBalanceUpdates() []*CurrencyBalanceUpdate {
	if x != nil {
		return x.OwnCurrencyBalanceUpdates
	}
	return nil
}

func (x *InstructionBalanceUpdate) GetTokenSupplyUpdates() []*CurrencyBalanceUpdate {
	if x != nil {
		return x.TokenSupplyUpdates
	}
	return nil
}

func (x *InstructionBalanceUpdate) GetInstruction() *ParsedIdlInstruction {
	if x != nil {
		return x.Instruction
	}
	return nil
}

type ParsedTokenTransaction struct {
	state                     protoimpl.MessageState      `protogen:"open.v1"`
	Index                     uint32                      `protobuf:"varint,1,opt,name=Index,proto3" json:"Index,omitempty"`
	Signature                 []byte                      `protobuf:"bytes,2,opt,name=Signature,proto3" json:"Signature,omitempty"`
	Status                    *TransactionStatus          `protobuf:"bytes,3,opt,name=Status,proto3" json:"Status,omitempty"`
	Header                    *TransactionHeader          `protobuf:"bytes,4,opt,name=Header,proto3" json:"Header,omitempty"`
	Transfers                 []*Transfer                 `protobuf:"bytes,5,rep,name=Transfers,proto3" json:"Transfers,omitempty"`
	BalanceUpdates            []*CurrencyBalanceUpdate    `protobuf:"bytes,6,rep,name=BalanceUpdates,proto3" json:"BalanceUpdates,omitempty"`
	InstructionBalanceUpdates []*InstructionBalanceUpdate `protobuf:"bytes,7,rep,name=InstructionBalanceUpdates,proto3" json:"InstructionBalanceUpdates,omitempty"`
	unknownFields             protoimpl.UnknownFields
	sizeCache                 protoimpl.SizeCache
}

func (x *ParsedTokenTransaction) Reset() {
	*x = ParsedTokenTransaction{}
	mi := &file_solana_token_block_message_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ParsedTokenTransaction) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ParsedTokenTransaction) ProtoMessage() {}

func (x *ParsedTokenTransaction) ProtoReflect() protoreflect.Message {
	mi := &file_solana_token_block_message_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ParsedTokenTransaction.ProtoReflect.Descriptor instead.
func (*ParsedTokenTransaction) Descriptor() ([]byte, []int) {
	return file_solana_token_block_message_proto_rawDescGZIP(), []int{5}
}

func (x *ParsedTokenTransaction) GetIndex() uint32 {
	if x != nil {
		return x.Index
	}
	return 0
}

func (x *ParsedTokenTransaction) GetSignature() []byte {
	if x != nil {
		return x.Signature
	}
	return nil
}

func (x *ParsedTokenTransaction) GetStatus() *TransactionStatus {
	if x != nil {
		return x.Status
	}
	return nil
}

func (x *ParsedTokenTransaction) GetHeader() *TransactionHeader {
	if x != nil {
		return x.Header
	}
	return nil
}

func (x *ParsedTokenTransaction) GetTransfers() []*Transfer {
	if x != nil {
		return x.Transfers
	}
	return nil
}

func (x *ParsedTokenTransaction) GetBalanceUpdates() []*CurrencyBalanceUpdate {
	if x != nil {
		return x.BalanceUpdates
	}
	return nil
}

func (x *ParsedTokenTransaction) GetInstructionBalanceUpdates() []*InstructionBalanceUpdate {
	if x != nil {
		return x.InstructionBalanceUpdates
	}
	return nil
}

type TokenBlockMessage struct {
	state         protoimpl.MessageState    `protogen:"open.v1"`
	Header        *BlockHeader              `protobuf:"bytes,1,opt,name=Header,proto3" json:"Header,omitempty"`
	Transactions  []*ParsedTokenTransaction `protobuf:"bytes,2,rep,name=Transactions,proto3" json:"Transactions,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *TokenBlockMessage) Reset() {
	*x = TokenBlockMessage{}
	mi := &file_solana_token_block_message_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TokenBlockMessage) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TokenBlockMessage) ProtoMessage() {}

func (x *TokenBlockMessage) ProtoReflect() protoreflect.Message {
	mi := &file_solana_token_block_message_proto_msgTypes[6]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TokenBlockMessage.ProtoReflect.Descriptor instead.
func (*TokenBlockMessage) Descriptor() ([]byte, []int) {
	return file_solana_token_block_message_proto_rawDescGZIP(), []int{6}
}

func (x *TokenBlockMessage) GetHeader() *BlockHeader {
	if x != nil {
		return x.Header
	}
	return nil
}

func (x *TokenBlockMessage) GetTransactions() []*ParsedTokenTransaction {
	if x != nil {
		return x.Transactions
	}
	return nil
}

var File_solana_token_block_message_proto protoreflect.FileDescriptor

const file_solana_token_block_message_proto_rawDesc = "" +
	"\n" +
	" solana/token_block_message.proto\x12\x0fsolana_messages\x1a\x1asolana/block_message.proto\x1a%solana/parsed_idl_block_message.proto\"Z\n" +
	"\fTokenCreator\x12\x18\n" +
	"\aAddress\x18\x01 \x01(\fR\aAddress\x12\x1a\n" +
	"\bVerified\x18\x02 \x01(\bR\bVerified\x12\x14\n" +
	"\x05Share\x18\x03 \x01(\rR\x05Share\"\x8a\a\n" +
	"\bCurrency\x12\x12\n" +
	"\x04Name\x18\x01 \x01(\tR\x04Name\x12\x1a\n" +
	"\bDecimals\x18\x02 \x01(\rR\bDecimals\x12\x10\n" +
	"\x03Uri\x18\x03 \x01(\tR\x03Uri\x12\x16\n" +
	"\x06Symbol\x18\x04 \x01(\tR\x06Symbol\x12\x16\n" +
	"\x06Native\x18\x05 \x01(\bR\x06Native\x12\x18\n" +
	"\aWrapped\x18\x06 \x01(\bR\aWrapped\x12\x1a\n" +
	"\bFungible\x18\a \x01(\bR\bFungible\x12\x10\n" +
	"\x03Key\x18\b \x01(\tR\x03Key\x122\n" +
	"\x14SellerFeeBasisPoints\x18\t \x01(\rR\x14SellerFeeBasisPoints\x12'\n" +
	"\fEditionNonce\x18\n" +
	" \x01(\rH\x00R\fEditionNonce\x88\x01\x01\x12)\n" +
	"\rTokenStandard\x18\v \x01(\tH\x01R\rTokenStandard\x88\x01\x01\x12&\n" +
	"\x0eProgramAddress\x18\f \x01(\fR\x0eProgramAddress\x12 \n" +
	"\vMintAddress\x18\r \x01(\fR\vMintAddress\x12(\n" +
	"\x0fMetadataAddress\x18\x0e \x01(\fR\x0fMetadataAddress\x12(\n" +
	"\x0fUpdateAuthority\x18\x0f \x01(\fR\x0fUpdateAuthority\x12,\n" +
	"\x11CollectionAddress\x18\x10 \x01(\fR\x11CollectionAddress\x12.\n" +
	"\x12VerifiedCollection\x18\x11 \x01(\bR\x12VerifiedCollection\x120\n" +
	"\x13PrimarySaleHappened\x18\x12 \x01(\bR\x13PrimarySaleHappened\x12\x1c\n" +
	"\tIsMutable\x18\x13 \x01(\bR\tIsMutable\x12C\n" +
	"\rTokenCreators\x18\x14 \x03(\v2\x1d.solana_messages.TokenCreatorR\rTokenCreators\x12(\n" +
	"\x0fFreezeAuthority\x18\x15 \x01(\fR\x0fFreezeAuthority\x12$\n" +
	"\rMintAuthority\x18\x16 \x01(\fR\rMintAuthority\x12\x16\n" +
	"\x06Parsed\x18\x17 \x01(\bR\x06Parsed\x12 \n" +
	"\vTotalSupply\x18\x18 \x01(\x04R\vTotalSupplyB\x0f\n" +
	"\r_EditionNonceB\x10\n" +
	"\x0e_TokenStandard\"\x94\x01\n" +
	"\x15CurrencyBalanceUpdate\x12D\n" +
	"\rBalanceUpdate\x18\x01 \x01(\v2\x1e.solana_messages.BalanceUpdateR\rBalanceUpdate\x125\n" +
	"\bCurrency\x18\x02 \x01(\v2\x19.solana_messages.CurrencyR\bCurrency\"\xee\x02\n" +
	"\bTransfer\x12*\n" +
	"\x10InstructionIndex\x18\x01 \x01(\rR\x10InstructionIndex\x12\x16\n" +
	"\x06Amount\x18\x02 \x01(\x04R\x06Amount\x120\n" +
	"\x06Sender\x18\x03 \x01(\v2\x18.solana_messages.AccountR\x06Sender\x124\n" +
	"\bReceiver\x18\x04 \x01(\v2\x18.solana_messages.AccountR\bReceiver\x126\n" +
	"\tAuthority\x18\x05 \x01(\v2\x18.solana_messages.AccountR\tAuthority\x125\n" +
	"\bCurrency\x18\x06 \x01(\v2\x19.solana_messages.CurrencyR\bCurrency\x12G\n" +
	"\vInstruction\x18\a \x01(\v2%.solana_messages.ParsedIdlInstructionR\vInstruction\"\xb7\x03\n" +
	"\x18InstructionBalanceUpdate\x12*\n" +
	"\x10InstructionIndex\x18\x01 \x01(\rR\x10InstructionIndex\x12h\n" +
	"\x1bTotalCurrencyBalanceUpdates\x18\x02 \x03(\v2&.solana_messages.CurrencyBalanceUpdateR\x1bTotalCurrencyBalanceUpdates\x12d\n" +
	"\x19OwnCurrencyBalanceUpdates\x18\x03 \x03(\v2&.solana_messages.CurrencyBalanceUpdateR\x19OwnCurrencyBalanceUpdates\x12V\n" +
	"\x12TokenSupplyUpdates\x18\x04 \x03(\v2&.solana_messages.CurrencyBalanceUpdateR\x12TokenSupplyUpdates\x12G\n" +
	"\vInstruction\x18\x05 \x01(\v2%.solana_messages.ParsedIdlInstructionR\vInstruction\"\xb6\x03\n" +
	"\x16ParsedTokenTransaction\x12\x14\n" +
	"\x05Index\x18\x01 \x01(\rR\x05Index\x12\x1c\n" +
	"\tSignature\x18\x02 \x01(\fR\tSignature\x12:\n" +
	"\x06Status\x18\x03 \x01(\v2\".solana_messages.TransactionStatusR\x06Status\x12:\n" +
	"\x06Header\x18\x04 \x01(\v2\".solana_messages.TransactionHeaderR\x06Header\x127\n" +
	"\tTransfers\x18\x05 \x03(\v2\x19.solana_messages.TransferR\tTransfers\x12N\n" +
	"\x0eBalanceUpdates\x18\x06 \x03(\v2&.solana_messages.CurrencyBalanceUpdateR\x0eBalanceUpdates\x12g\n" +
	"\x19InstructionBalanceUpdates\x18\a \x03(\v2).solana_messages.InstructionBalanceUpdateR\x19InstructionBalanceUpdates\"\x96\x01\n" +
	"\x11TokenBlockMessage\x124\n" +
	"\x06Header\x18\x01 \x01(\v2\x1c.solana_messages.BlockHeaderR\x06Header\x12K\n" +
	"\fTransactions\x18\x02 \x03(\v2'.solana_messages.ParsedTokenTransactionR\fTransactionsb\x06proto3"

var (
	file_solana_token_block_message_proto_rawDescOnce sync.Once
	file_solana_token_block_message_proto_rawDescData []byte
)

func file_solana_token_block_message_proto_rawDescGZIP() []byte {
	file_solana_token_block_message_proto_rawDescOnce.Do(func() {
		file_solana_token_block_message_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_solana_token_block_message_proto_rawDesc), len(file_solana_token_block_message_proto_rawDesc)))
	})
	return file_solana_token_block_message_proto_rawDescData
}

var file_solana_token_block_message_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
var file_solana_token_block_message_proto_goTypes = []any{
	(*TokenCreator)(nil),             // 0: solana_messages.TokenCreator
	(*Currency)(nil),                 // 1: solana_messages.Currency
	(*CurrencyBalanceUpdate)(nil),    // 2: solana_messages.CurrencyBalanceUpdate
	(*Transfer)(nil),                 // 3: solana_messages.Transfer
	(*InstructionBalanceUpdate)(nil), // 4: solana_messages.InstructionBalanceUpdate
	(*ParsedTokenTransaction)(nil),   // 5: solana_messages.ParsedTokenTransaction
	(*TokenBlockMessage)(nil),        // 6: solana_messages.TokenBlockMessage
	(*BalanceUpdate)(nil),            // 7: solana_messages.BalanceUpdate
	(*Account)(nil),                  // 8: solana_messages.Account
	(*ParsedIdlInstruction)(nil),     // 9: solana_messages.ParsedIdlInstruction
	(*TransactionStatus)(nil),        // 10: solana_messages.TransactionStatus
	(*TransactionHeader)(nil),        // 11: solana_messages.TransactionHeader
	(*BlockHeader)(nil),              // 12: solana_messages.BlockHeader
}
var file_solana_token_block_message_proto_depIdxs = []int32{
	0,  // 0: solana_messages.Currency.TokenCreators:type_name -> solana_messages.TokenCreator
	7,  // 1: solana_messages.CurrencyBalanceUpdate.BalanceUpdate:type_name -> solana_messages.BalanceUpdate
	1,  // 2: solana_messages.CurrencyBalanceUpdate.Currency:type_name -> solana_messages.Currency
	8,  // 3: solana_messages.Transfer.Sender:type_name -> solana_messages.Account
	8,  // 4: solana_messages.Transfer.Receiver:type_name -> solana_messages.Account
	8,  // 5: solana_messages.Transfer.Authority:type_name -> solana_messages.Account
	1,  // 6: solana_messages.Transfer.Currency:type_name -> solana_messages.Currency
	9,  // 7: solana_messages.Transfer.Instruction:type_name -> solana_messages.ParsedIdlInstruction
	2,  // 8: solana_messages.InstructionBalanceUpdate.TotalCurrencyBalanceUpdates:type_name -> solana_messages.CurrencyBalanceUpdate
	2,  // 9: solana_messages.InstructionBalanceUpdate.OwnCurrencyBalanceUpdates:type_name -> solana_messages.CurrencyBalanceUpdate
	2,  // 10: solana_messages.InstructionBalanceUpdate.TokenSupplyUpdates:type_name -> solana_messages.CurrencyBalanceUpdate
	9,  // 11: solana_messages.InstructionBalanceUpdate.Instruction:type_name -> solana_messages.ParsedIdlInstruction
	10, // 12: solana_messages.ParsedTokenTransaction.Status:type_name -> solana_messages.TransactionStatus
	11, // 13: solana_messages.ParsedTokenTransaction.Header:type_name -> solana_messages.TransactionHeader
	3,  // 14: solana_messages.ParsedTokenTransaction.Transfers:type_name -> solana_messages.Transfer
	2,  // 15: solana_messages.ParsedTokenTransaction.BalanceUpdates:type_name -> solana_messages.CurrencyBalanceUpdate
	4,  // 16: solana_messages.ParsedTokenTransaction.InstructionBalanceUpdates:type_name -> solana_messages.InstructionBalanceUpdate
	12, // 17: solana_messages.TokenBlockMessage.Header:type_name -> solana_messages.BlockHeader
	5,  // 18: solana_messages.TokenBlockMessage.Transactions:type_name -> solana_messages.ParsedTokenTransaction
	19, // [19:19] is the sub-list for method output_type
	19, // [19:19] is the sub-list for method input_type
	19, // [19:19] is the sub-list for extension type_name
	19, // [19:19] is the sub-list for extension extendee
	0,  // [0:19] is the sub-list for field type_name
}

func init() { file_solana_token_block_message_proto_init() }
func file_solana_token_block_message_proto_init() {
	if File_solana_token_block_message_proto != nil {
		return
	}
	file_solana_block_message_proto_init()
	file_solana_parsed_idl_block_message_proto_init()
	file_solana_token_block_message_proto_msgTypes[1].OneofWrappers = []any{}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_solana_token_block_message_proto_rawDesc), len(file_solana_token_block_message_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   7,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_solana_token_block_message_proto_goTypes,
		DependencyIndexes: file_solana_token_block_message_proto_depIdxs,
		MessageInfos:      file_solana_token_block_message_proto_msgTypes,
	}.Build()
	File_solana_token_block_message_proto = out.File
	file_solana_token_block_message_proto_goTypes = nil
	file_solana_token_block_message_proto_depIdxs = nil
}
