Skip to content

@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

readonly receiverAddressData: AddressData

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:23


senderAddressData

readonly senderAddressData: Optional<AddressData>

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:24


tokenHash

readonly tokenHash: string

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:25


tokenData

readonly tokenData: TokenData

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:26


random

readonly random: string

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:27


value

readonly value: bigint

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:28


notePublicKey

readonly notePublicKey: bigint

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:29


hash

readonly hash: bigint

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:30


outputType

readonly outputType: Optional<OutputType>

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:31


walletSource

readonly walletSource: Optional<string>

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:32


senderRandom

readonly senderRandom: Optional<string>

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:33


memoText

readonly memoText: Optional<string>

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:34


shieldFee

readonly shieldFee: Optional<string>

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:35


blockNumber

readonly blockNumber: Optional<number>

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:36


calculateTotalNoteValues

static calculateTotalNoteValues: (notes) => bigint

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:111

Parameters

notes

TransactNote[]

Returns

bigint

Methods

createTransfer()

static createTransfer(receiverAddressData, senderAddressData, value, tokenData, showSenderAddressToRecipient, outputType, memoText): TransactNote

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:45

Parameters

receiverAddressData

AddressData

senderAddressData

Optional<AddressData>

value

bigint

tokenData

TokenData

showSenderAddressToRecipient

boolean

outputType

OutputType

memoText

Optional<string>

Returns

TransactNote


createERC721Transfer()

static createERC721Transfer(receiverAddressData, senderAddressData, tokenData, showSenderAddressToRecipient, memoText): TransactNote

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:46

Parameters

receiverAddressData

AddressData

senderAddressData

Optional<AddressData>

tokenData

NFTTokenData

showSenderAddressToRecipient

boolean

memoText

Optional<string>

Returns

TransactNote


createERC1155Transfer()

static createERC1155Transfer(receiverAddressData, senderAddressData, tokenData, amount, showSenderAddressToRecipient, memoText): TransactNote

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:47

Parameters

receiverAddressData

AddressData

senderAddressData

Optional<AddressData>

tokenData

NFTTokenData

amount

bigint

showSenderAddressToRecipient

boolean

memoText

Optional<string>

Returns

TransactNote


getNoteRandom()

static getNoteRandom(): string

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:48

Returns

string


getSenderRandom()

static getSenderRandom(): 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()

static getHash(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

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

TXIDVersion

sharedKey

Uint8Array

key to encrypt with

senderMasterPublicKey

bigint

Returns

CiphertextXChaCha


decrypt()

static decrypt(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

TXIDVersion

chain

Chain

currentWalletAddressData

AddressData

noteCiphertext

Ciphertext | CiphertextXChaCha

sharedKey

Uint8Array

memoV2

string

annotationData

string

viewingPrivateKey

Uint8Array

blindedReceiverViewingKey

Optional<Uint8Array<ArrayBufferLike>>

blindedSenderViewingKey

Optional<Uint8Array<ArrayBufferLike>>

isSentNote

boolean

isLegacyDecryption

boolean

tokenDataGetter

TokenDataGetter

blockNumber

Optional<number>

transactCommitmentBatchIndexV3

Optional<number>

Returns

Promise<TransactNote>


getDecodedMasterPublicKey()

static getDecodedMasterPublicKey(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()

static getEncodedMasterPublicKey(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()

static isLegacyTransactNote(noteData): boolean

Defined in: vendor/railgun-engine/dist/note/transact-note.d.ts:88

Parameters

noteData

NoteSerialized | LegacyNoteSerialized

Returns

boolean


deserialize()

static deserialize(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

TXIDVersion

chain

Chain

noteData

NoteSerialized | LegacyNoteSerialized

serialized note data

viewingPrivateKey

Uint8Array

viewing private key for decryption

tokenDataGetter

TokenDataGetter

Returns

Promise<TransactNote>

TransactNote


getNullifier()

static getNullifier(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()

static createNullUnshieldNote(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

TokenData

value

bigint

Returns

TransactNote