@armada/sdk / core / TransactNote
Class: TransactNote
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:22
A Note on Encoded MPKs:
The presence of senderRandom field, or an encoded/unencoded MPK in a decrypted note, tells us whether or not the sender address was hidden or visible.
MPK senderRandom Sender address
Value Unencoded Random hex (15) Hidden
Value Encoded undefined or MEMO_SENDER_RANDOM_NULL Visible
Properties
receiverAddressData
readonlyreceiverAddressData:AddressData
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:23
senderAddressData
readonlysenderAddressData:Optional<AddressData>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:24
tokenHash
readonlytokenHash:string
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:25
tokenData
readonlytokenData:TokenData
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:26
random
readonlyrandom:string
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:27
value
readonlyvalue:bigint
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:28
notePublicKey
readonlynotePublicKey:bigint
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:29
hash
readonlyhash:bigint
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:30
outputType
readonlyoutputType:Optional<OutputType>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:31
walletSource
readonlywalletSource:Optional<string>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:32
senderRandom
readonlysenderRandom:Optional<string>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:33
memoText
readonlymemoText:Optional<string>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:34
shieldFee
readonlyshieldFee:Optional<string>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:35
blockNumber
readonlyblockNumber:Optional<number>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:36
calculateTotalNoteValues
staticcalculateTotalNoteValues: (notes) =>bigint
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:111
Parameters
notes
TransactNote[]
Returns
bigint
Methods
createTransfer()
staticcreateTransfer(receiverAddressData,senderAddressData,value,tokenData,showSenderAddressToRecipient,outputType,memoText):TransactNote
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:45
Parameters
receiverAddressData
senderAddressData
Optional<AddressData>
value
bigint
tokenData
showSenderAddressToRecipient
boolean
outputType
memoText
Optional<string>
Returns
TransactNote
createERC721Transfer()
staticcreateERC721Transfer(receiverAddressData,senderAddressData,tokenData,showSenderAddressToRecipient,memoText):TransactNote
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:46
Parameters
receiverAddressData
senderAddressData
Optional<AddressData>
tokenData
NFTTokenData
showSenderAddressToRecipient
boolean
memoText
Optional<string>
Returns
TransactNote
createERC1155Transfer()
staticcreateERC1155Transfer(receiverAddressData,senderAddressData,tokenData,amount,showSenderAddressToRecipient,memoText):TransactNote
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:47
Parameters
receiverAddressData
senderAddressData
Optional<AddressData>
tokenData
NFTTokenData
amount
bigint
showSenderAddressToRecipient
boolean
memoText
Optional<string>
Returns
TransactNote
getNoteRandom()
staticgetNoteRandom():string
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:48
Returns
string
getSenderRandom()
staticgetSenderRandom():string
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:49
Returns
string
getSenderAddress()
getSenderAddress():
Optional<string>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:51
Returns
Optional<string>
getHash()
staticgetHash(notePublicKey,tokenHash,value):bigint
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:56
Get note hash
Parameters
notePublicKey
bigint
tokenHash
string
value
bigint
Returns
bigint
hash
encryptV2()
encryptV2(
txidVersion,sharedKey,senderMasterPublicKey,senderRandom,viewingPrivateKey):object
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:61
AES-256-GCM encrypts note data
Parameters
txidVersion
sharedKey
Uint8Array
key to encrypt with
senderMasterPublicKey
bigint
senderRandom
Optional<string>
viewingPrivateKey
Uint8Array
Returns
object
noteCiphertext
noteCiphertext:
Ciphertext
noteMemo
noteMemo:
string
annotationData
annotationData:
string
encryptV3()
encryptV3(
txidVersion,sharedKey,senderMasterPublicKey):CiphertextXChaCha
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:70
AES-256-GCM encrypts note data
Parameters
txidVersion
sharedKey
Uint8Array
key to encrypt with
senderMasterPublicKey
bigint
Returns
CiphertextXChaCha
decrypt()
staticdecrypt(txidVersion,chain,currentWalletAddressData,noteCiphertext,sharedKey,memoV2,annotationData,viewingPrivateKey,blindedReceiverViewingKey,blindedSenderViewingKey,isSentNote,isLegacyDecryption,tokenDataGetter,blockNumber,transactCommitmentBatchIndexV3):Promise<TransactNote>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:75
AES-256-GCM decrypts note data (V2)
Parameters
txidVersion
chain
currentWalletAddressData
noteCiphertext
Ciphertext | CiphertextXChaCha
sharedKey
Uint8Array
memoV2
string
annotationData
string
viewingPrivateKey
Uint8Array
blindedReceiverViewingKey
Optional<Uint8Array<ArrayBufferLike>>
blindedSenderViewingKey
Optional<Uint8Array<ArrayBufferLike>>
isSentNote
boolean
isLegacyDecryption
boolean
tokenDataGetter
blockNumber
Optional<number>
transactCommitmentBatchIndexV3
Optional<number>
Returns
Promise<TransactNote>
getDecodedMasterPublicKey()
staticgetDecodedMasterPublicKey(currentWalletMasterPublicKey,encodedMasterPublicKey,senderRandom,isLegacyDecryption):bigint
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:76
Parameters
currentWalletMasterPublicKey
bigint
encodedMasterPublicKey
bigint
senderRandom
Optional<string>
isLegacyDecryption
boolean
Returns
bigint
getEncodedMasterPublicKey()
staticgetEncodedMasterPublicKey(senderRandom,receiverMasterPublicKey,senderMasterPublicKey):bigint
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:77
Parameters
senderRandom
Optional<string>
receiverMasterPublicKey
bigint
senderMasterPublicKey
bigint
Returns
bigint
serialize()
serialize(
prefix?):NoteSerialized
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:86
Gets JSON serialized version of note
Parameters
prefix?
boolean
Returns
NoteSerialized
serialized note
serializeLegacy()
serializeLegacy(
viewingPrivateKey,prefix?):LegacyNoteSerialized
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:87
Parameters
viewingPrivateKey
Uint8Array
prefix?
boolean
Returns
LegacyNoteSerialized
isLegacyTransactNote()
staticisLegacyTransactNote(noteData):boolean
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:88
Parameters
noteData
NoteSerialized | LegacyNoteSerialized
Returns
boolean
deserialize()
staticdeserialize(txidVersion,chain,noteData,viewingPrivateKey,tokenDataGetter):Promise<TransactNote>
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:95
Creates note from serialized note JSON
Parameters
txidVersion
chain
noteData
NoteSerialized | LegacyNoteSerialized
serialized note data
viewingPrivateKey
Uint8Array
viewing private key for decryption
tokenDataGetter
Returns
Promise<TransactNote>
TransactNote
getNullifier()
staticgetNullifier(nullifyingKey,leafIndex):bigint
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:109
Calculates nullifier for a given note
Parameters
nullifyingKey
bigint
nullifying key
leafIndex
number
Index of note's commitment in the Merkle tree
Returns
bigint
nullifier (hex string)
newProcessingNoteWithValue()
newProcessingNoteWithValue(
value):TransactNote
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:110
Parameters
value
bigint
Returns
TransactNote
createNullUnshieldNote()
staticcreateNullUnshieldNote(tokenData,value):TransactNote
Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:116
TransactNote with tokenData and value, for a mimic Unshield Note during solution processing. All other fields are placeholders.
Parameters
tokenData
value
bigint
Returns
TransactNote