@aztec/stdlib 0.82.2 → 0.82.3-nightly.20250403

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/dest/avm/avm.d.ts +4648 -1474
  2. package/dest/avm/avm.d.ts.map +1 -1
  3. package/dest/avm/avm.js +182 -109
  4. package/dest/avm/avm_proving_request.d.ts +1867 -498
  5. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  6. package/dest/block/l2_block_downloader/l2_block_stream.d.ts +10 -12
  7. package/dest/block/l2_block_downloader/l2_block_stream.d.ts.map +1 -1
  8. package/dest/block/l2_block_downloader/l2_block_stream.js +45 -11
  9. package/dest/config/config.d.ts +2 -2
  10. package/dest/config/config.d.ts.map +1 -1
  11. package/dest/config/config.js +4 -5
  12. package/dest/contract/interfaces/node-info.d.ts +2 -2
  13. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  14. package/dest/contract/interfaces/node-info.js +1 -1
  15. package/dest/database-version/version_manager.d.ts +4 -2
  16. package/dest/database-version/version_manager.d.ts.map +1 -1
  17. package/dest/database-version/version_manager.js +13 -9
  18. package/dest/epoch-helpers/index.d.ts +2 -0
  19. package/dest/epoch-helpers/index.d.ts.map +1 -1
  20. package/dest/epoch-helpers/index.js +3 -0
  21. package/dest/file-store/factory.d.ts +7 -0
  22. package/dest/file-store/factory.d.ts.map +1 -0
  23. package/dest/file-store/factory.js +46 -0
  24. package/dest/file-store/gcs.d.ts +22 -0
  25. package/dest/file-store/gcs.d.ts.map +1 -0
  26. package/dest/file-store/gcs.js +115 -0
  27. package/dest/file-store/http.d.ts +15 -0
  28. package/dest/file-store/http.d.ts.map +1 -0
  29. package/dest/file-store/http.js +53 -0
  30. package/dest/file-store/index.d.ts +3 -0
  31. package/dest/file-store/index.d.ts.map +1 -0
  32. package/dest/file-store/index.js +2 -0
  33. package/dest/file-store/interface.d.ts +24 -0
  34. package/dest/file-store/interface.d.ts.map +1 -0
  35. package/dest/file-store/interface.js +1 -0
  36. package/dest/file-store/local.d.ts +16 -0
  37. package/dest/file-store/local.d.ts.map +1 -0
  38. package/dest/file-store/local.js +40 -0
  39. package/dest/interfaces/aztec-node-admin.d.ts +9 -1
  40. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  41. package/dest/interfaces/aztec-node-admin.js +2 -1
  42. package/dest/interfaces/aztec-node.d.ts +3 -0
  43. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  44. package/dest/interfaces/aztec-node.js +2 -0
  45. package/dest/interfaces/p2p.d.ts +2 -0
  46. package/dest/interfaces/p2p.d.ts.map +1 -1
  47. package/dest/interfaces/p2p.js +2 -1
  48. package/dest/interfaces/prover-client.d.ts +3 -3
  49. package/dest/interfaces/prover-client.d.ts.map +1 -1
  50. package/dest/interfaces/prover-client.js +6 -4
  51. package/dest/interfaces/prover-node.d.ts +4 -0
  52. package/dest/interfaces/prover-node.d.ts.map +1 -1
  53. package/dest/interfaces/prover-node.js +5 -1
  54. package/dest/interfaces/proving-job.d.ts +1866 -497
  55. package/dest/interfaces/proving-job.d.ts.map +1 -1
  56. package/dest/interfaces/pxe.d.ts +7 -6
  57. package/dest/interfaces/pxe.d.ts.map +1 -1
  58. package/dest/interfaces/pxe.js +1 -1
  59. package/dest/interfaces/service.d.ts +3 -0
  60. package/dest/interfaces/service.d.ts.map +1 -1
  61. package/dest/interfaces/service.js +7 -0
  62. package/dest/interfaces/world_state.d.ts +13 -15
  63. package/dest/interfaces/world_state.d.ts.map +1 -1
  64. package/dest/keys/derivation.d.ts +1 -1
  65. package/dest/keys/derivation.d.ts.map +1 -1
  66. package/dest/keys/derivation.js +10 -2
  67. package/dest/logs/index.d.ts +2 -1
  68. package/dest/logs/index.d.ts.map +1 -1
  69. package/dest/logs/index.js +2 -1
  70. package/dest/logs/pending_tagged_log.d.ts +17 -0
  71. package/dest/logs/pending_tagged_log.d.ts.map +1 -0
  72. package/dest/logs/pending_tagged_log.js +45 -0
  73. package/dest/logs/{l1_payload/shared_secret_derivation.d.ts → shared_secret_derivation.d.ts} +4 -3
  74. package/dest/logs/shared_secret_derivation.d.ts.map +1 -0
  75. package/dest/logs/{l1_payload/shared_secret_derivation.js → shared_secret_derivation.js} +3 -5
  76. package/dest/logs/tx_scoped_l2_log.d.ts +6 -1
  77. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  78. package/dest/logs/tx_scoped_l2_log.js +12 -4
  79. package/dest/note/note.d.ts +45 -4
  80. package/dest/note/note.d.ts.map +1 -1
  81. package/dest/note/note.js +51 -4
  82. package/dest/proofs/proof.d.ts.map +1 -1
  83. package/dest/proofs/proof.js +33 -7
  84. package/dest/snapshots/download.d.ts +9 -0
  85. package/dest/snapshots/download.d.ts.map +1 -0
  86. package/dest/snapshots/download.js +37 -0
  87. package/dest/snapshots/index.d.ts +4 -0
  88. package/dest/snapshots/index.d.ts.map +1 -0
  89. package/dest/snapshots/index.js +3 -0
  90. package/dest/snapshots/types.d.ts +97 -0
  91. package/dest/snapshots/types.d.ts.map +1 -0
  92. package/dest/snapshots/types.js +27 -0
  93. package/dest/snapshots/upload.d.ts +5 -0
  94. package/dest/snapshots/upload.d.ts.map +1 -0
  95. package/dest/snapshots/upload.js +37 -0
  96. package/dest/tests/factories.d.ts +21 -7
  97. package/dest/tests/factories.d.ts.map +1 -1
  98. package/dest/tests/factories.js +78 -30
  99. package/dest/tests/mocks.d.ts +2 -1
  100. package/dest/tests/mocks.d.ts.map +1 -1
  101. package/dest/tests/mocks.js +5 -1
  102. package/dest/trees/merkle_tree_id.d.ts +8 -0
  103. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  104. package/dest/trees/merkle_tree_id.js +10 -0
  105. package/dest/trees/nullifier_leaf.d.ts +49 -15
  106. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  107. package/dest/trees/nullifier_leaf.js +45 -22
  108. package/dest/trees/nullifier_membership_witness.d.ts +34 -18
  109. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  110. package/dest/trees/protocol_contract_leaf.d.ts +0 -1
  111. package/dest/trees/protocol_contract_leaf.d.ts.map +1 -1
  112. package/dest/trees/protocol_contract_leaf.js +0 -3
  113. package/dest/trees/public_data_leaf.d.ts +59 -25
  114. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  115. package/dest/trees/public_data_leaf.js +41 -30
  116. package/dest/trees/public_data_witness.d.ts +42 -24
  117. package/dest/trees/public_data_witness.d.ts.map +1 -1
  118. package/dest/trees/public_data_witness.js +6 -6
  119. package/dest/validators/index.d.ts +3 -0
  120. package/dest/validators/index.d.ts.map +1 -0
  121. package/dest/validators/index.js +1 -0
  122. package/dest/validators/schemas.d.ts +342 -0
  123. package/dest/validators/schemas.d.ts.map +1 -0
  124. package/dest/validators/schemas.js +40 -0
  125. package/dest/validators/types.d.ts +39 -0
  126. package/dest/validators/types.d.ts.map +1 -0
  127. package/dest/validators/types.js +1 -0
  128. package/dest/versioning/versioning.d.ts +1 -1
  129. package/dest/versioning/versioning.d.ts.map +1 -1
  130. package/dest/versioning/versioning.js +6 -6
  131. package/package.json +11 -8
  132. package/src/avm/avm.ts +183 -104
  133. package/src/block/l2_block_downloader/l2_block_stream.ts +64 -29
  134. package/src/config/config.ts +6 -6
  135. package/src/contract/interfaces/node-info.ts +3 -3
  136. package/src/database-version/version_manager.ts +12 -8
  137. package/src/epoch-helpers/index.ts +8 -0
  138. package/src/file-store/factory.ts +61 -0
  139. package/src/file-store/gcs.ts +121 -0
  140. package/src/file-store/http.ts +58 -0
  141. package/src/file-store/index.ts +2 -0
  142. package/src/file-store/interface.ts +19 -0
  143. package/src/file-store/local.ts +46 -0
  144. package/src/interfaces/aztec-node-admin.ts +11 -1
  145. package/src/interfaces/aztec-node.ts +7 -0
  146. package/src/interfaces/p2p.ts +4 -0
  147. package/src/interfaces/prover-client.ts +9 -7
  148. package/src/interfaces/prover-node.ts +10 -0
  149. package/src/interfaces/pxe.ts +14 -7
  150. package/src/interfaces/service.ts +13 -0
  151. package/src/interfaces/world_state.ts +17 -15
  152. package/src/keys/derivation.ts +12 -6
  153. package/src/logs/index.ts +2 -1
  154. package/src/logs/pending_tagged_log.ts +43 -0
  155. package/src/logs/{l1_payload/shared_secret_derivation.ts → shared_secret_derivation.ts} +4 -11
  156. package/src/logs/tx_scoped_l2_log.ts +13 -4
  157. package/src/note/note.ts +61 -5
  158. package/src/proofs/proof.ts +39 -5
  159. package/src/snapshots/download.ts +60 -0
  160. package/src/snapshots/index.ts +3 -0
  161. package/src/snapshots/types.ts +58 -0
  162. package/src/snapshots/upload.ts +55 -0
  163. package/src/tests/factories.ts +137 -53
  164. package/src/tests/mocks.ts +7 -0
  165. package/src/trees/merkle_tree_id.ts +12 -0
  166. package/src/trees/nullifier_leaf.ts +48 -21
  167. package/src/trees/protocol_contract_leaf.ts +0 -4
  168. package/src/trees/public_data_leaf.ts +40 -29
  169. package/src/trees/public_data_witness.ts +6 -6
  170. package/src/validators/index.ts +3 -0
  171. package/src/validators/schemas.ts +53 -0
  172. package/src/validators/types.ts +37 -0
  173. package/src/versioning/versioning.ts +8 -14
  174. package/dest/event/event.d.ts +0 -24
  175. package/dest/event/event.d.ts.map +0 -1
  176. package/dest/event/event.js +0 -13
  177. package/dest/event/event_metadata.d.ts +0 -38
  178. package/dest/event/event_metadata.d.ts.map +0 -1
  179. package/dest/event/event_metadata.js +0 -45
  180. package/dest/event/index.d.ts +0 -4
  181. package/dest/event/index.d.ts.map +0 -1
  182. package/dest/event/index.js +0 -3
  183. package/dest/event/l1_event_payload.d.ts +0 -52
  184. package/dest/event/l1_event_payload.d.ts.map +0 -1
  185. package/dest/event/l1_event_payload.js +0 -64
  186. package/dest/logs/l1_payload/encrypted_log_payload.d.ts +0 -50
  187. package/dest/logs/l1_payload/encrypted_log_payload.d.ts.map +0 -1
  188. package/dest/logs/l1_payload/encrypted_log_payload.js +0 -140
  189. package/dest/logs/l1_payload/encryption_util.d.ts +0 -24
  190. package/dest/logs/l1_payload/encryption_util.d.ts.map +0 -1
  191. package/dest/logs/l1_payload/encryption_util.js +0 -46
  192. package/dest/logs/l1_payload/index.d.ts +0 -3
  193. package/dest/logs/l1_payload/index.d.ts.map +0 -1
  194. package/dest/logs/l1_payload/index.js +0 -2
  195. package/dest/logs/l1_payload/payload.d.ts +0 -60
  196. package/dest/logs/l1_payload/payload.d.ts.map +0 -1
  197. package/dest/logs/l1_payload/payload.js +0 -61
  198. package/dest/logs/l1_payload/shared_secret_derivation.d.ts.map +0 -1
  199. package/src/event/event.ts +0 -16
  200. package/src/event/event_metadata.ts +0 -56
  201. package/src/event/index.ts +0 -3
  202. package/src/event/l1_event_payload.ts +0 -87
  203. package/src/logs/l1_payload/encrypted_log_payload.ts +0 -202
  204. package/src/logs/l1_payload/encryption_util.ts +0 -54
  205. package/src/logs/l1_payload/index.ts +0 -2
  206. package/src/logs/l1_payload/payload.ts +0 -73
@@ -10,58 +10,77 @@ import { z } from 'zod';
10
10
  */
11
11
  export declare class PublicDataTreeLeafPreimage implements IndexedTreeLeafPreimage {
12
12
  /**
13
- * The slot of the leaf
13
+ * The leaf (slot, value).
14
14
  */
15
- slot: Fr;
15
+ leaf: PublicDataTreeLeaf;
16
16
  /**
17
- * The value of the leaf
17
+ * Next key (slot) inside the indexed tree's linked list.
18
18
  */
19
- value: Fr;
20
- /**
21
- * Next value inside the indexed tree's linked list.
22
- */
23
- nextSlot: Fr;
19
+ nextKey: Fr;
24
20
  /**
25
21
  * Index of the next leaf in the indexed tree's linked list.
26
22
  */
27
23
  nextIndex: bigint;
28
24
  constructor(
29
25
  /**
30
- * The slot of the leaf
26
+ * The leaf (slot, value).
31
27
  */
32
- slot: Fr,
28
+ leaf: PublicDataTreeLeaf,
33
29
  /**
34
- * The value of the leaf
30
+ * Next key (slot) inside the indexed tree's linked list.
35
31
  */
36
- value: Fr,
37
- /**
38
- * Next value inside the indexed tree's linked list.
39
- */
40
- nextSlot: Fr,
32
+ nextKey: Fr,
41
33
  /**
42
34
  * Index of the next leaf in the indexed tree's linked list.
43
35
  */
44
36
  nextIndex: bigint);
45
37
  static get schema(): z.ZodEffects<z.ZodObject<{
38
+ leaf: z.ZodEffects<z.ZodObject<{
39
+ slot: z.ZodType<Fr, any, string>;
40
+ value: z.ZodType<Fr, any, string>;
41
+ }, "strip", z.ZodTypeAny, {
42
+ value: Fr;
43
+ slot: Fr;
44
+ }, {
45
+ value: string;
46
+ slot: string;
47
+ }>, PublicDataTreeLeaf, {
48
+ value: string;
49
+ slot: string;
50
+ }>;
51
+ nextKey: z.ZodType<Fr, any, string>;
52
+ nextIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
53
+ }, "strip", z.ZodTypeAny, {
54
+ leaf: PublicDataTreeLeaf;
55
+ nextKey: Fr;
56
+ nextIndex: bigint;
57
+ }, {
58
+ leaf: {
59
+ value: string;
60
+ slot: string;
61
+ };
62
+ nextKey: string;
63
+ nextIndex: string | number | bigint;
64
+ }>, PublicDataTreeLeafPreimage, {
65
+ leaf: {
66
+ value: string;
67
+ slot: string;
68
+ };
69
+ nextKey: string;
70
+ nextIndex: string | number | bigint;
71
+ }>;
72
+ static get leafSchema(): z.ZodEffects<z.ZodObject<{
46
73
  slot: z.ZodType<Fr, any, string>;
47
74
  value: z.ZodType<Fr, any, string>;
48
- nextSlot: z.ZodType<Fr, any, string>;
49
- nextIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
50
75
  }, "strip", z.ZodTypeAny, {
51
76
  value: Fr;
52
77
  slot: Fr;
53
- nextIndex: bigint;
54
- nextSlot: Fr;
55
78
  }, {
56
79
  value: string;
57
80
  slot: string;
58
- nextIndex: string | number | bigint;
59
- nextSlot: string;
60
- }>, PublicDataTreeLeafPreimage, {
81
+ }>, PublicDataTreeLeaf, {
61
82
  value: string;
62
83
  slot: string;
63
- nextIndex: string | number | bigint;
64
- nextSlot: string;
65
84
  }>;
66
85
  getKey(): bigint;
67
86
  getNextKey(): bigint;
@@ -99,6 +118,8 @@ export declare class PublicDataTreeLeaf implements IndexedTreeLeaf {
99
118
  value: Fr);
100
119
  getKey(): bigint;
101
120
  toBuffer(): Buffer;
121
+ clone(): PublicDataTreeLeaf;
122
+ toHashInputs(): Buffer[];
102
123
  static fromBuffer(buffer: Buffer | BufferReader): PublicDataTreeLeaf;
103
124
  equals(another: PublicDataTreeLeaf): boolean;
104
125
  toString(): string;
@@ -106,5 +127,18 @@ export declare class PublicDataTreeLeaf implements IndexedTreeLeaf {
106
127
  updateTo(another: PublicDataTreeLeaf): PublicDataTreeLeaf;
107
128
  static buildDummy(key: bigint): PublicDataTreeLeaf;
108
129
  static empty(): PublicDataTreeLeaf;
130
+ static get schema(): z.ZodEffects<z.ZodObject<{
131
+ slot: z.ZodType<Fr, any, string>;
132
+ value: z.ZodType<Fr, any, string>;
133
+ }, "strip", z.ZodTypeAny, {
134
+ value: Fr;
135
+ slot: Fr;
136
+ }, {
137
+ value: string;
138
+ slot: string;
139
+ }>, PublicDataTreeLeaf, {
140
+ value: string;
141
+ slot: string;
142
+ }>;
109
143
  }
110
144
  //# sourceMappingURL=public_data_leaf.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public_data_leaf.d.ts","sourceRoot":"","sources":["../../src/trees/public_data_leaf.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAExF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,uBAAuB;IAEtE;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;OAEG;IACI,KAAK,EAAE,EAAE;IAChB;;OAEG;IACI,QAAQ,EAAE,EAAE;IACnB;;OAEG;IACI,SAAS,EAAE,MAAM;;IAfxB;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;OAEG;IACI,KAAK,EAAE,EAAE;IAChB;;OAEG;IACI,QAAQ,EAAE,EAAE;IACnB;;OAEG;IACI,SAAS,EAAE,MAAM;IAG1B,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;OAWhB;IAED,MAAM,IAAI,MAAM;IAIhB,UAAU,IAAI,MAAM;IAIpB,YAAY,IAAI,MAAM;IAItB,MAAM,IAAI,kBAAkB;IAI5B,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM,EAAE;IASxB,KAAK,IAAI,0BAA0B;IAInC,MAAM,CAAC,MAAM;IASb,MAAM,CAAC,KAAK,IAAI,0BAA0B;IAI1C,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,0BAA0B;IAS5E,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,0BAA0B;IAIzG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,0BAA0B,GAAG,0BAA0B;CAG/E;AAED;;GAEG;AACH,qBAAa,kBAAmB,YAAW,eAAe;IAEtD;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;OAEG;IACI,KAAK,EAAE,EAAE;;IAPhB;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;OAEG;IACI,KAAK,EAAE,EAAE;IAGlB,MAAM,IAAI,MAAM;IAIhB,QAAQ;IAIR,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAK/C,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO;IAI5C,QAAQ,IAAI,MAAM;IAIlB,OAAO,IAAI,OAAO;IAIlB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB;IAOzD,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAIlD,MAAM,CAAC,KAAK,IAAI,kBAAkB;CAGnC"}
1
+ {"version":3,"file":"public_data_leaf.d.ts","sourceRoot":"","sources":["../../src/trees/public_data_leaf.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAExF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,uBAAuB;IAEtE;;OAEG;IACI,IAAI,EAAE,kBAAkB;IAC/B;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,SAAS,EAAE,MAAM;;IAXxB;;OAEG;IACI,IAAI,EAAE,kBAAkB;IAC/B;;OAEG;IACI,OAAO,EAAE,EAAE;IAClB;;OAEG;IACI,SAAS,EAAE,MAAM;IAG1B,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED,MAAM,KAAK,UAAU;;;;;;;;;;;;OAEpB;IAED,MAAM,IAAI,MAAM;IAIhB,UAAU,IAAI,MAAM;IAIpB,YAAY,IAAI,MAAM;IAItB,MAAM,IAAI,kBAAkB;IAI5B,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM,EAAE;IAQxB,KAAK,IAAI,0BAA0B;IAInC,MAAM,CAAC,MAAM;IAQb,MAAM,CAAC,KAAK,IAAI,0BAA0B;IAI1C,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,0BAA0B;IAQ5E,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,0BAA0B;IAIzG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,0BAA0B,GAAG,0BAA0B;CAG/E;AAED;;GAEG;AACH,qBAAa,kBAAmB,YAAW,eAAe;IAEtD;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;OAEG;IACI,KAAK,EAAE,EAAE;;IAPhB;;OAEG;IACI,IAAI,EAAE,EAAE;IACf;;OAEG;IACI,KAAK,EAAE,EAAE;IAGlB,MAAM,IAAI,MAAM;IAIhB,QAAQ;IAIR,KAAK,IAAI,kBAAkB;IAI3B,YAAY,IAAI,MAAM,EAAE;IAIxB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAK/C,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO;IAI5C,QAAQ,IAAI,MAAM;IAIlB,OAAO,IAAI,OAAO;IAIlB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB;IAOzD,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAIlD,MAAM,CAAC,KAAK,IAAI,kBAAkB;IAIlC,MAAM,KAAK,MAAM;;;;;;;;;;;;OAOhB;CACF"}
@@ -7,77 +7,73 @@ import { z } from 'zod';
7
7
  * Class containing the data of a preimage of a single leaf in the public data tree.
8
8
  * Note: It's called preimage because this data gets hashed before being inserted as a node into the `IndexedTree`.
9
9
  */ export class PublicDataTreeLeafPreimage {
10
- slot;
11
- value;
12
- nextSlot;
10
+ leaf;
11
+ nextKey;
13
12
  nextIndex;
14
13
  constructor(/**
15
- * The slot of the leaf
16
- */ slot, /**
17
- * The value of the leaf
18
- */ value, /**
19
- * Next value inside the indexed tree's linked list.
20
- */ nextSlot, /**
14
+ * The leaf (slot, value).
15
+ */ leaf, /**
16
+ * Next key (slot) inside the indexed tree's linked list.
17
+ */ nextKey, /**
21
18
  * Index of the next leaf in the indexed tree's linked list.
22
19
  */ nextIndex){
23
- this.slot = slot;
24
- this.value = value;
25
- this.nextSlot = nextSlot;
20
+ this.leaf = leaf;
21
+ this.nextKey = nextKey;
26
22
  this.nextIndex = nextIndex;
27
23
  }
28
24
  static get schema() {
29
25
  return z.object({
30
- slot: schemas.Fr,
31
- value: schemas.Fr,
32
- nextSlot: schemas.Fr,
26
+ leaf: PublicDataTreeLeaf.schema,
27
+ nextKey: schemas.Fr,
33
28
  nextIndex: schemas.BigInt
34
- }).transform(({ slot, value, nextSlot, nextIndex })=>new PublicDataTreeLeafPreimage(slot, value, nextSlot, nextIndex));
29
+ }).transform(({ leaf, nextKey, nextIndex })=>new PublicDataTreeLeafPreimage(leaf, nextKey, nextIndex));
30
+ }
31
+ static get leafSchema() {
32
+ return PublicDataTreeLeaf.schema;
35
33
  }
36
34
  getKey() {
37
- return this.slot.toBigInt();
35
+ return this.leaf.getKey();
38
36
  }
39
37
  getNextKey() {
40
- return this.nextSlot.toBigInt();
38
+ return this.nextKey.toBigInt();
41
39
  }
42
40
  getNextIndex() {
43
41
  return this.nextIndex;
44
42
  }
45
43
  asLeaf() {
46
- return new PublicDataTreeLeaf(this.slot, this.value);
44
+ return this.leaf;
47
45
  }
48
46
  toBuffer() {
49
47
  return Buffer.concat(this.toHashInputs());
50
48
  }
51
49
  toHashInputs() {
52
50
  return [
53
- Buffer.from(this.slot.toBuffer()),
54
- Buffer.from(this.value.toBuffer()),
51
+ ...this.leaf.toHashInputs(),
55
52
  Buffer.from(toBufferBE(this.nextIndex, 32)),
56
- Buffer.from(this.nextSlot.toBuffer())
53
+ Buffer.from(this.nextKey.toBuffer())
57
54
  ];
58
55
  }
59
56
  clone() {
60
- return new PublicDataTreeLeafPreimage(this.slot, this.value, this.nextSlot, this.nextIndex);
57
+ return new PublicDataTreeLeafPreimage(this.leaf.clone(), this.nextKey, this.nextIndex);
61
58
  }
62
59
  static random() {
63
- return new PublicDataTreeLeafPreimage(Fr.random(), Fr.random(), Fr.random(), BigInt(Math.floor(Math.random() * 1000)));
60
+ return new PublicDataTreeLeafPreimage(PublicDataTreeLeaf.buildDummy(BigInt(Math.floor(Math.random() * 1000))), Fr.random(), BigInt(Math.floor(Math.random() * 1000)));
64
61
  }
65
62
  static empty() {
66
- return new PublicDataTreeLeafPreimage(Fr.ZERO, Fr.ZERO, Fr.ZERO, 0n);
63
+ return new PublicDataTreeLeafPreimage(PublicDataTreeLeaf.empty(), Fr.ZERO, 0n);
67
64
  }
68
65
  static fromBuffer(buffer) {
69
66
  const reader = BufferReader.asReader(buffer);
70
- const slot = Fr.fromBuffer(reader);
71
- const value = Fr.fromBuffer(reader);
67
+ const value = PublicDataTreeLeaf.fromBuffer(reader);
72
68
  const nextIndex = toBigIntBE(reader.readBytes(32));
73
69
  const nextSlot = Fr.fromBuffer(reader);
74
- return new PublicDataTreeLeafPreimage(slot, value, nextSlot, nextIndex);
70
+ return new PublicDataTreeLeafPreimage(value, nextSlot, nextIndex);
75
71
  }
76
72
  static fromLeaf(leaf, nextKey, nextIndex) {
77
- return new PublicDataTreeLeafPreimage(leaf.slot, leaf.value, new Fr(nextKey), nextIndex);
73
+ return new PublicDataTreeLeafPreimage(leaf, new Fr(nextKey), nextIndex);
78
74
  }
79
75
  static clone(preimage) {
80
- return new PublicDataTreeLeafPreimage(preimage.slot, preimage.value, preimage.nextSlot, preimage.nextIndex);
76
+ return preimage.clone();
81
77
  }
82
78
  }
83
79
  /**
@@ -102,6 +98,15 @@ import { z } from 'zod';
102
98
  this.value
103
99
  ]);
104
100
  }
101
+ clone() {
102
+ return new PublicDataTreeLeaf(this.slot, this.value);
103
+ }
104
+ toHashInputs() {
105
+ return [
106
+ this.slot.toBuffer(),
107
+ this.value.toBuffer()
108
+ ];
109
+ }
105
110
  static fromBuffer(buffer) {
106
111
  const reader = BufferReader.asReader(buffer);
107
112
  return new PublicDataTreeLeaf(Fr.fromBuffer(reader), Fr.fromBuffer(reader));
@@ -127,4 +132,10 @@ import { z } from 'zod';
127
132
  static empty() {
128
133
  return new PublicDataTreeLeaf(Fr.ZERO, Fr.ZERO);
129
134
  }
135
+ static get schema() {
136
+ return z.object({
137
+ slot: schemas.Fr,
138
+ value: schemas.Fr
139
+ }).transform(({ slot, value })=>new PublicDataTreeLeaf(slot, value));
140
+ }
130
141
  }
@@ -43,25 +43,39 @@ export declare class PublicDataWitness {
43
43
  static get schema(): z.ZodEffects<z.ZodObject<{
44
44
  index: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
45
45
  leafPreimage: z.ZodEffects<z.ZodObject<{
46
- slot: z.ZodType<Fr, any, string>;
47
- value: z.ZodType<Fr, any, string>;
48
- nextSlot: z.ZodType<Fr, any, string>;
46
+ leaf: z.ZodEffects<z.ZodObject<{
47
+ slot: z.ZodType<Fr, any, string>;
48
+ value: z.ZodType<Fr, any, string>;
49
+ }, "strip", z.ZodTypeAny, {
50
+ value: Fr;
51
+ slot: Fr;
52
+ }, {
53
+ value: string;
54
+ slot: string;
55
+ }>, import("./public_data_leaf.js").PublicDataTreeLeaf, {
56
+ value: string;
57
+ slot: string;
58
+ }>;
59
+ nextKey: z.ZodType<Fr, any, string>;
49
60
  nextIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
50
61
  }, "strip", z.ZodTypeAny, {
51
- value: Fr;
52
- slot: Fr;
62
+ leaf: import("./public_data_leaf.js").PublicDataTreeLeaf;
63
+ nextKey: Fr;
53
64
  nextIndex: bigint;
54
- nextSlot: Fr;
55
65
  }, {
56
- value: string;
57
- slot: string;
66
+ leaf: {
67
+ value: string;
68
+ slot: string;
69
+ };
70
+ nextKey: string;
58
71
  nextIndex: string | number | bigint;
59
- nextSlot: string;
60
72
  }>, PublicDataTreeLeafPreimage, {
61
- value: string;
62
- slot: string;
73
+ leaf: {
74
+ value: string;
75
+ slot: string;
76
+ };
77
+ nextKey: string;
63
78
  nextIndex: string | number | bigint;
64
- nextSlot: string;
65
79
  }>;
66
80
  siblingPath: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Buffer, string>, z.ZodEffects<z.ZodObject<{
67
81
  type: z.ZodLiteral<"Buffer">;
@@ -84,32 +98,36 @@ export declare class PublicDataWitness {
84
98
  }>;
85
99
  }, "strip", z.ZodTypeAny, {
86
100
  index: bigint;
87
- siblingPath: SiblingPath<40>;
88
101
  leafPreimage: PublicDataTreeLeafPreimage;
102
+ siblingPath: SiblingPath<40>;
89
103
  }, {
90
104
  index: string | number | bigint;
105
+ leafPreimage: {
106
+ leaf: {
107
+ value: string;
108
+ slot: string;
109
+ };
110
+ nextKey: string;
111
+ nextIndex: string | number | bigint;
112
+ };
91
113
  siblingPath: string | {
92
114
  type: "Buffer";
93
115
  data: number[];
94
116
  };
117
+ }>, PublicDataWitness, {
118
+ index: string | number | bigint;
95
119
  leafPreimage: {
96
- value: string;
97
- slot: string;
120
+ leaf: {
121
+ value: string;
122
+ slot: string;
123
+ };
124
+ nextKey: string;
98
125
  nextIndex: string | number | bigint;
99
- nextSlot: string;
100
126
  };
101
- }>, PublicDataWitness, {
102
- index: string | number | bigint;
103
127
  siblingPath: string | {
104
128
  type: "Buffer";
105
129
  data: number[];
106
130
  };
107
- leafPreimage: {
108
- value: string;
109
- slot: string;
110
- nextIndex: string | number | bigint;
111
- nextSlot: string;
112
- };
113
131
  }>;
114
132
  /**
115
133
  * Returns a field array representation of a public data witness.
@@ -1 +1 @@
1
- {"version":3,"file":"public_data_witness.d.ts","sourceRoot":"","sources":["../../src/trees/public_data_witness.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAEnE;;;;;GAKG;AACH,qBAAa,iBAAiB;IAE1B;;OAEG;aACa,KAAK,EAAE,MAAM;IAC7B;;;OAGG;aACa,YAAY,EAAE,0BAA0B;IACxD;;OAEG;aACa,WAAW,EAAE,WAAW,CAAC,OAAO,uBAAuB,CAAC;;IAZxE;;OAEG;IACa,KAAK,EAAE,MAAM;IAC7B;;;OAGG;IACa,YAAY,EAAE,0BAA0B;IACxD;;OAEG;IACa,WAAW,EAAE,WAAW,CAAC,OAAO,uBAAuB,CAAC;IAG1E,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED;;;OAGG;IACI,QAAQ,IAAI,EAAE,EAAE;IAWvB;;OAEG;IACI,oBAAoB,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE;IAYpD,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,MAAM;IAQb;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,iBAAiB;IAUnE;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM;CAG9B"}
1
+ {"version":3,"file":"public_data_witness.d.ts","sourceRoot":"","sources":["../../src/trees/public_data_witness.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAEnE;;;;;GAKG;AACH,qBAAa,iBAAiB;IAE1B;;OAEG;aACa,KAAK,EAAE,MAAM;IAC7B;;;OAGG;aACa,YAAY,EAAE,0BAA0B;IACxD;;OAEG;aACa,WAAW,EAAE,WAAW,CAAC,OAAO,uBAAuB,CAAC;;IAZxE;;OAEG;IACa,KAAK,EAAE,MAAM;IAC7B;;;OAGG;IACa,YAAY,EAAE,0BAA0B;IACxD;;OAEG;IACa,WAAW,EAAE,WAAW,CAAC,OAAO,uBAAuB,CAAC;IAG1E,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAQhB;IAED;;;OAGG;IACI,QAAQ,IAAI,EAAE,EAAE;IAWvB;;OAEG;IACI,oBAAoB,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE;IAYpD,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,MAAM;IAQb;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,iBAAiB;IAUnE;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM;CAG9B"}
@@ -41,10 +41,10 @@ import { PublicDataTreeLeafPreimage } from './public_data_leaf.js';
41
41
  */ toFields() {
42
42
  return [
43
43
  new Fr(this.index),
44
- new Fr(this.leafPreimage.slot),
45
- new Fr(this.leafPreimage.value),
44
+ new Fr(this.leafPreimage.leaf.slot),
45
+ new Fr(this.leafPreimage.leaf.value),
46
46
  new Fr(this.leafPreimage.nextIndex),
47
- new Fr(this.leafPreimage.nextSlot),
47
+ new Fr(this.leafPreimage.nextKey),
48
48
  ...this.siblingPath.toFields()
49
49
  ];
50
50
  }
@@ -54,9 +54,9 @@ import { PublicDataTreeLeafPreimage } from './public_data_leaf.js';
54
54
  // TODO(#12874): remove the stupid as string conversion by modifying ForeignCallOutput type in acvm.js
55
55
  return [
56
56
  new Fr(this.index).toString(),
57
- new Fr(this.leafPreimage.slot).toString(),
58
- new Fr(this.leafPreimage.value).toString(),
59
- new Fr(this.leafPreimage.nextSlot).toString(),
57
+ new Fr(this.leafPreimage.leaf.slot).toString(),
58
+ new Fr(this.leafPreimage.leaf.value).toString(),
59
+ new Fr(this.leafPreimage.nextKey).toString(),
60
60
  new Fr(this.leafPreimage.nextIndex).toString(),
61
61
  this.siblingPath.toFields().map((fr)=>fr.toString())
62
62
  ];
@@ -0,0 +1,3 @@
1
+ export type * from './types.js';
2
+ export * from './schemas.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAC;AAEhC,cAAc,cAAc,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './schemas.js';