@proto-kit/protocol • Docs
Documentation / @proto-kit/protocol / TokenBridgeTree
Class: TokenBridgeTree
Merkle tree that contains all the deployed token bridges as a mapping of tokenId => PublicKey
It should be used as an append-only tree with incremental indizes - this allows us to reduce the height of it
Extends
Constructors
new TokenBridgeTree()
new TokenBridgeTree(
store):TokenBridgeTree
Parameters
• store: MerkleTreeStore
Returns
Inherited from
createMerkleTree(256).constructor
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:124
Properties
indizes
indizes:
Record<string,bigint> ={}
Defined in
packages/protocol/src/settlement/contracts/TokenBridgeTree.ts:23
leafCount
readonlyleafCount:bigint
Inherited from
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:85
store
store:
MerkleTreeStore
Inherited from
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:84
EMPTY_ROOT
staticEMPTY_ROOT:bigint
Inherited from
createMerkleTree(256).EMPTY_ROOT
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:129
HEIGHT
staticHEIGHT:number
Inherited from
createMerkleTree(256).HEIGHT
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:128
WITNESS
staticWITNESS:TypedClass<AbstractMerkleWitness> & typeofStructTemplate&object
Type declaration
dummy()
dummy: () =>
AbstractMerkleWitness
Returns
Inherited from
createMerkleTree(256).WITNESS
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:125
Accessors
leafCount
Get Signature
get
staticleafCount():bigint
Returns
bigint
Inherited from
createMerkleTree(256).leafCount
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:130
Methods
assertIndexRange()
assertIndexRange(
index):void
Parameters
• index: bigint
Returns
void
Inherited from
AbstractMerkleTree.assertIndexRange
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:86
fill()
fill(
leaves):void
Fills all leaves of the tree.
Parameters
• leaves: Field[]
Values to fill the leaves with.
Returns
void
Inherited from
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:121
getIndex()
getIndex(
tokenId):bigint
Parameters
• tokenId: Field
Returns
bigint
Defined in
packages/protocol/src/settlement/contracts/TokenBridgeTree.ts:62
getNode()
getNode(
level,index):Field
Returns a node which lives at a given index and level.
Parameters
• level: number
Level of the node.
• index: bigint
Index of the node.
Returns
Field
The data of the node.
Inherited from
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:93
getRoot()
getRoot():
Field
Returns the root of the Merkle Tree.
Returns
Field
The root of the Merkle Tree.
Inherited from
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:98
getWitness()
getWitness(
index):AbstractMerkleWitness
Returns the witness (also known as Merkle Proof or Merkle Witness) for the leaf at the given index.
Parameters
• index: bigint
Position of the leaf node.
Returns
The witness that belongs to the leaf.
Inherited from
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:116
setLeaf()
setLeaf(
index,leaf):void
Sets the value of a leaf node at a given index to a given value.
Parameters
• index: bigint
Position of the leaf node.
• leaf: Field
New value.
Returns
void
Inherited from
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:104
setLeaves()
setLeaves(
updates):void
Parameters
• updates: object[]
Returns
void
Inherited from
Defined in
packages/common/dist/trees/sparse/RollupMerkleTree.d.ts:105
buildTreeFromEvents()
staticbuildTreeFromEvents(contract,endHeight?):Promise<TokenBridgeTree>
Initializes and fills the tree based on all on-chain events that have been emitted by every emit
Parameters
• contract: SmartContract & object
• endHeight?: UInt32
Returns
Promise<TokenBridgeTree>
Defined in
packages/protocol/src/settlement/contracts/TokenBridgeTree.ts:29