@aztec/aztec.js 0.0.0-test.1 → 0.0.1-commit.0b941701

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 (446) hide show
  1. package/README.md +1 -1
  2. package/dest/account/account.d.ts +44 -0
  3. package/dest/account/account.d.ts.map +1 -0
  4. package/dest/account/account.js +31 -0
  5. package/dest/account/account_contract.d.ts +42 -0
  6. package/dest/account/account_contract.d.ts.map +1 -0
  7. package/dest/account/{contract.js → account_contract.js} +7 -4
  8. package/dest/account/account_with_secret_key.d.ts +36 -0
  9. package/dest/account/account_with_secret_key.d.ts.map +1 -0
  10. package/dest/{wallet/account_wallet_with_private_key.js → account/account_with_secret_key.js} +22 -5
  11. package/dest/account/index.d.ts +6 -9
  12. package/dest/account/index.d.ts.map +1 -1
  13. package/dest/account/index.js +4 -6
  14. package/dest/account/signerless_account.d.ts +22 -0
  15. package/dest/account/signerless_account.d.ts.map +1 -0
  16. package/dest/account/signerless_account.js +24 -0
  17. package/dest/api/abi.d.ts +3 -2
  18. package/dest/api/abi.d.ts.map +1 -1
  19. package/dest/api/abi.js +1 -1
  20. package/dest/api/account.d.ts +5 -3
  21. package/dest/api/account.d.ts.map +1 -1
  22. package/dest/api/account.js +3 -2
  23. package/dest/api/addresses.d.ts +2 -1
  24. package/dest/api/addresses.d.ts.map +1 -1
  25. package/dest/api/addresses.js +1 -0
  26. package/dest/api/authorization.d.ts +5 -0
  27. package/dest/api/authorization.d.ts.map +1 -0
  28. package/dest/api/authorization.js +4 -0
  29. package/dest/api/block.d.ts +3 -0
  30. package/dest/api/block.d.ts.map +1 -0
  31. package/dest/api/block.js +2 -0
  32. package/dest/api/contract.d.ts +55 -0
  33. package/dest/api/contract.d.ts.map +1 -0
  34. package/dest/api/contract.js +53 -0
  35. package/dest/api/crypto.d.ts +2 -0
  36. package/dest/api/crypto.d.ts.map +1 -0
  37. package/dest/api/crypto.js +1 -0
  38. package/dest/api/deployment.d.ts +5 -4
  39. package/dest/api/deployment.d.ts.map +1 -1
  40. package/dest/api/deployment.js +4 -3
  41. package/dest/api/eth_address.d.ts +1 -1
  42. package/dest/api/ethereum.d.ts +2 -0
  43. package/dest/api/ethereum.d.ts.map +1 -0
  44. package/dest/api/ethereum.js +1 -0
  45. package/dest/api/events.d.ts +12 -0
  46. package/dest/api/events.d.ts.map +1 -0
  47. package/dest/api/events.js +30 -0
  48. package/dest/api/fee.d.ts +2 -2
  49. package/dest/api/fee.d.ts.map +1 -1
  50. package/dest/api/fee.js +1 -1
  51. package/dest/api/fee_testing.d.ts +2 -0
  52. package/dest/api/fee_testing.d.ts.map +1 -0
  53. package/dest/api/fee_testing.js +1 -0
  54. package/dest/api/fields.d.ts +3 -2
  55. package/dest/api/fields.d.ts.map +1 -1
  56. package/dest/api/fields.js +2 -1
  57. package/dest/api/keys.d.ts +4 -0
  58. package/dest/api/keys.d.ts.map +1 -0
  59. package/dest/api/keys.js +3 -0
  60. package/dest/api/log.d.ts +2 -1
  61. package/dest/api/log.d.ts.map +1 -1
  62. package/dest/api/log.js +1 -0
  63. package/dest/api/messaging.d.ts +3 -0
  64. package/dest/api/messaging.d.ts.map +1 -0
  65. package/dest/api/messaging.js +2 -0
  66. package/dest/api/node.d.ts +25 -0
  67. package/dest/api/node.d.ts.map +1 -0
  68. package/dest/api/node.js +22 -0
  69. package/dest/api/note.d.ts +2 -0
  70. package/dest/api/note.d.ts.map +1 -0
  71. package/dest/api/note.js +1 -0
  72. package/dest/api/protocol.d.ts +9 -0
  73. package/dest/api/protocol.d.ts.map +1 -0
  74. package/dest/api/protocol.js +8 -0
  75. package/dest/api/trees.d.ts +3 -0
  76. package/dest/api/trees.d.ts.map +1 -0
  77. package/dest/api/trees.js +2 -0
  78. package/dest/api/tx.d.ts +2 -0
  79. package/dest/api/tx.d.ts.map +1 -0
  80. package/dest/api/tx.js +1 -0
  81. package/dest/api/utils.d.ts +13 -0
  82. package/dest/api/utils.d.ts.map +1 -0
  83. package/dest/api/utils.js +12 -0
  84. package/dest/api/wallet.d.ts +4 -2
  85. package/dest/api/wallet.d.ts.map +1 -1
  86. package/dest/api/wallet.js +3 -1
  87. package/dest/authorization/call_authorization_request.d.ts +67 -0
  88. package/dest/authorization/call_authorization_request.d.ts.map +1 -0
  89. package/dest/authorization/call_authorization_request.js +49 -0
  90. package/dest/contract/base_contract_interaction.d.ts +18 -84
  91. package/dest/contract/base_contract_interaction.d.ts.map +1 -1
  92. package/dest/contract/base_contract_interaction.js +11 -136
  93. package/dest/contract/batch_call.d.ts +19 -21
  94. package/dest/contract/batch_call.d.ts.map +1 -1
  95. package/dest/contract/batch_call.js +89 -69
  96. package/dest/contract/checker.d.ts +2 -2
  97. package/dest/contract/checker.d.ts.map +1 -1
  98. package/dest/contract/checker.js +2 -2
  99. package/dest/contract/contract.d.ts +9 -8
  100. package/dest/contract/contract.d.ts.map +1 -1
  101. package/dest/contract/contract.js +10 -20
  102. package/dest/contract/contract_base.d.ts +8 -18
  103. package/dest/contract/contract_base.d.ts.map +1 -1
  104. package/dest/contract/contract_base.js +7 -14
  105. package/dest/contract/contract_function_interaction.d.ts +53 -45
  106. package/dest/contract/contract_function_interaction.d.ts.map +1 -1
  107. package/dest/contract/contract_function_interaction.js +78 -74
  108. package/dest/contract/deploy_method.d.ts +155 -62
  109. package/dest/contract/deploy_method.d.ts.map +1 -1
  110. package/dest/contract/deploy_method.js +152 -142
  111. package/dest/contract/get_gas_limits.d.ts +6 -7
  112. package/dest/contract/get_gas_limits.d.ts.map +1 -1
  113. package/dest/contract/get_gas_limits.js +9 -3
  114. package/dest/contract/interaction_options.d.ts +151 -0
  115. package/dest/contract/interaction_options.d.ts.map +1 -0
  116. package/dest/contract/interaction_options.js +53 -0
  117. package/dest/contract/protocol_contracts/auth-registry.d.ts +36 -0
  118. package/dest/contract/protocol_contracts/auth-registry.d.ts.map +1 -0
  119. package/dest/contract/protocol_contracts/auth-registry.js +963 -0
  120. package/dest/contract/protocol_contracts/contract-class-registry.d.ts +35 -0
  121. package/dest/contract/protocol_contracts/contract-class-registry.d.ts.map +1 -0
  122. package/dest/contract/protocol_contracts/contract-class-registry.js +784 -0
  123. package/dest/contract/protocol_contracts/contract-instance-registry.d.ts +31 -0
  124. package/dest/contract/protocol_contracts/contract-instance-registry.d.ts.map +1 -0
  125. package/dest/contract/protocol_contracts/contract-instance-registry.js +858 -0
  126. package/dest/contract/protocol_contracts/fee-juice.d.ts +30 -0
  127. package/dest/contract/protocol_contracts/fee-juice.d.ts.map +1 -0
  128. package/dest/contract/protocol_contracts/fee-juice.js +827 -0
  129. package/dest/contract/protocol_contracts/multi-call-entrypoint.d.ts +34 -0
  130. package/dest/contract/protocol_contracts/multi-call-entrypoint.d.ts.map +1 -0
  131. package/dest/contract/protocol_contracts/multi-call-entrypoint.js +563 -0
  132. package/dest/contract/protocol_contracts/public-checks.d.ts +26 -0
  133. package/dest/contract/protocol_contracts/public-checks.d.ts.map +1 -0
  134. package/dest/contract/protocol_contracts/public-checks.js +579 -0
  135. package/dest/contract/wait_for_proven.d.ts +17 -0
  136. package/dest/contract/wait_for_proven.d.ts.map +1 -0
  137. package/dest/contract/wait_for_proven.js +17 -0
  138. package/dest/contract/wait_opts.d.ts +16 -0
  139. package/dest/contract/wait_opts.d.ts.map +1 -0
  140. package/dest/contract/wait_opts.js +5 -0
  141. package/dest/deployment/broadcast_function.d.ts +4 -4
  142. package/dest/deployment/broadcast_function.d.ts.map +1 -1
  143. package/dest/deployment/broadcast_function.js +28 -24
  144. package/dest/deployment/contract_deployer.d.ts +2 -2
  145. package/dest/deployment/contract_deployer.d.ts.map +1 -1
  146. package/dest/deployment/contract_deployer.js +1 -1
  147. package/dest/deployment/publish_class.d.ts +6 -0
  148. package/dest/deployment/publish_class.d.ts.map +1 -0
  149. package/dest/deployment/publish_class.js +17 -0
  150. package/dest/deployment/publish_instance.d.ts +10 -0
  151. package/dest/deployment/publish_instance.d.ts.map +1 -0
  152. package/dest/deployment/publish_instance.js +11 -0
  153. package/dest/ethereum/portal_manager.d.ts +141 -0
  154. package/dest/ethereum/portal_manager.d.ts.map +1 -0
  155. package/dest/ethereum/portal_manager.js +345 -0
  156. package/dest/fee/fee_juice_payment_method_with_claim.d.ts +17 -12
  157. package/dest/fee/fee_juice_payment_method_with_claim.d.ts.map +1 -1
  158. package/dest/fee/fee_juice_payment_method_with_claim.js +27 -17
  159. package/dest/fee/fee_payment_method.d.ts +12 -8
  160. package/dest/fee/fee_payment_method.d.ts.map +1 -1
  161. package/dest/fee/private_fee_payment_method.d.ts +26 -9
  162. package/dest/fee/private_fee_payment_method.d.ts.map +1 -1
  163. package/dest/fee/private_fee_payment_method.js +45 -23
  164. package/dest/fee/public_fee_payment_method.d.ts +27 -10
  165. package/dest/fee/public_fee_payment_method.d.ts.map +1 -1
  166. package/dest/fee/public_fee_payment_method.js +47 -25
  167. package/dest/fee/sponsored_fee_payment.d.ts +17 -0
  168. package/dest/fee/sponsored_fee_payment.d.ts.map +1 -0
  169. package/dest/fee/sponsored_fee_payment.js +34 -0
  170. package/dest/scripts/generate_protocol_contract_types.d.ts +2 -0
  171. package/dest/scripts/generate_protocol_contract_types.d.ts.map +1 -0
  172. package/dest/scripts/generate_protocol_contract_types.js +120 -0
  173. package/dest/utils/abi_types.d.ts +2 -4
  174. package/dest/utils/abi_types.d.ts.map +1 -1
  175. package/dest/utils/authwit.d.ts +85 -26
  176. package/dest/utils/authwit.d.ts.map +1 -1
  177. package/dest/utils/authwit.js +234 -41
  178. package/dest/utils/cross_chain.d.ts +24 -0
  179. package/dest/utils/cross_chain.d.ts.map +1 -0
  180. package/dest/utils/cross_chain.js +30 -0
  181. package/dest/utils/fee_juice.d.ts +4 -3
  182. package/dest/utils/fee_juice.d.ts.map +1 -1
  183. package/dest/utils/fee_juice.js +4 -3
  184. package/dest/utils/field_compressed_string.d.ts +1 -1
  185. package/dest/utils/field_compressed_string.d.ts.map +1 -1
  186. package/dest/utils/field_compressed_string.js +1 -1
  187. package/dest/utils/node.d.ts +13 -2
  188. package/dest/utils/node.d.ts.map +1 -1
  189. package/dest/utils/node.js +47 -1
  190. package/dest/utils/pub_key.d.ts +2 -2
  191. package/dest/utils/pub_key.d.ts.map +1 -1
  192. package/dest/utils/pub_key.js +2 -3
  193. package/dest/wallet/account_entrypoint_meta_payment_method.d.ts +31 -0
  194. package/dest/wallet/account_entrypoint_meta_payment_method.d.ts.map +1 -0
  195. package/dest/wallet/account_entrypoint_meta_payment_method.js +61 -0
  196. package/dest/wallet/account_manager.d.ts +63 -0
  197. package/dest/wallet/account_manager.d.ts.map +1 -0
  198. package/dest/wallet/account_manager.js +107 -0
  199. package/dest/wallet/deploy_account_method.d.ts +80 -0
  200. package/dest/wallet/deploy_account_method.d.ts.map +1 -0
  201. package/dest/wallet/deploy_account_method.js +79 -0
  202. package/dest/wallet/index.d.ts +3 -17
  203. package/dest/wallet/index.d.ts.map +1 -1
  204. package/dest/wallet/index.js +2 -20
  205. package/dest/wallet/wallet.d.ts +1297 -0
  206. package/dest/wallet/wallet.d.ts.map +1 -0
  207. package/dest/wallet/wallet.js +172 -0
  208. package/package.json +47 -36
  209. package/src/account/account.ts +72 -0
  210. package/src/account/account_contract.ts +66 -0
  211. package/src/account/account_with_secret_key.ts +63 -0
  212. package/src/account/index.ts +5 -8
  213. package/src/account/signerless_account.ts +46 -0
  214. package/src/api/abi.ts +26 -0
  215. package/src/api/account.ts +8 -5
  216. package/src/api/addresses.ts +1 -0
  217. package/src/api/authorization.ts +15 -0
  218. package/src/api/block.ts +2 -0
  219. package/src/api/contract.ts +88 -0
  220. package/src/api/crypto.ts +1 -0
  221. package/src/api/deployment.ts +4 -3
  222. package/src/api/ethereum.ts +10 -0
  223. package/src/api/events.ts +44 -0
  224. package/src/api/fee.ts +1 -1
  225. package/src/api/fee_testing.ts +1 -0
  226. package/src/api/fields.ts +2 -1
  227. package/src/api/keys.ts +8 -0
  228. package/src/api/log.ts +1 -0
  229. package/src/api/messaging.ts +2 -0
  230. package/src/api/node.ts +24 -0
  231. package/src/api/note.ts +1 -0
  232. package/src/api/protocol.ts +9 -0
  233. package/src/api/trees.ts +2 -0
  234. package/src/api/tx.ts +15 -0
  235. package/src/api/utils.ts +14 -0
  236. package/src/api/wallet.ts +34 -5
  237. package/src/authorization/call_authorization_request.ts +63 -0
  238. package/src/contract/base_contract_interaction.ts +40 -171
  239. package/src/contract/batch_call.ts +108 -57
  240. package/src/contract/checker.ts +8 -3
  241. package/src/contract/contract.ts +14 -21
  242. package/src/contract/contract_base.ts +9 -26
  243. package/src/contract/contract_function_interaction.ts +135 -106
  244. package/src/contract/deploy_method.ts +307 -143
  245. package/src/contract/get_gas_limits.ts +15 -8
  246. package/src/contract/interaction_options.ts +208 -0
  247. package/src/contract/protocol_contracts/auth-registry.ts +545 -0
  248. package/src/contract/protocol_contracts/contract-class-registry.ts +433 -0
  249. package/src/contract/protocol_contracts/contract-instance-registry.ts +493 -0
  250. package/src/contract/protocol_contracts/fee-juice.ts +457 -0
  251. package/src/contract/protocol_contracts/multi-call-entrypoint.ts +329 -0
  252. package/src/contract/protocol_contracts/public-checks.ts +315 -0
  253. package/src/contract/wait_for_proven.ts +38 -0
  254. package/src/contract/wait_opts.ts +21 -0
  255. package/src/deployment/broadcast_function.ts +58 -58
  256. package/src/deployment/contract_deployer.ts +4 -3
  257. package/src/deployment/publish_class.ts +34 -0
  258. package/src/deployment/publish_instance.ts +23 -0
  259. package/src/{api/ethereum → ethereum}/portal_manager.ts +166 -89
  260. package/src/fee/fee_juice_payment_method_with_claim.ts +49 -34
  261. package/src/fee/fee_payment_method.ts +11 -7
  262. package/src/fee/private_fee_payment_method.ts +80 -58
  263. package/src/fee/public_fee_payment_method.ts +94 -68
  264. package/src/fee/sponsored_fee_payment.ts +46 -0
  265. package/src/scripts/generate_protocol_contract_types.ts +150 -0
  266. package/src/utils/abi_types.ts +1 -1
  267. package/src/utils/authwit.ts +274 -54
  268. package/src/utils/cross_chain.ts +53 -0
  269. package/src/utils/fee_juice.ts +5 -5
  270. package/src/utils/field_compressed_string.ts +1 -1
  271. package/src/utils/node.ts +63 -1
  272. package/src/utils/pub_key.ts +3 -4
  273. package/src/wallet/account_entrypoint_meta_payment_method.ts +74 -0
  274. package/src/wallet/account_manager.ts +146 -0
  275. package/src/wallet/deploy_account_method.ts +150 -0
  276. package/src/wallet/index.ts +2 -33
  277. package/src/wallet/wallet.ts +417 -0
  278. package/dest/account/contract.d.ts +0 -37
  279. package/dest/account/contract.d.ts.map +0 -1
  280. package/dest/account/interface.d.ts +0 -31
  281. package/dest/account/interface.d.ts.map +0 -1
  282. package/dest/account/interface.js +0 -4
  283. package/dest/account/wallet.d.ts +0 -11
  284. package/dest/account/wallet.d.ts.map +0 -1
  285. package/dest/account/wallet.js +0 -3
  286. package/dest/account_manager/deploy_account_method.d.ts +0 -15
  287. package/dest/account_manager/deploy_account_method.d.ts.map +0 -1
  288. package/dest/account_manager/deploy_account_method.js +0 -43
  289. package/dest/account_manager/deploy_account_sent_tx.d.ts +0 -30
  290. package/dest/account_manager/deploy_account_sent_tx.d.ts.map +0 -1
  291. package/dest/account_manager/deploy_account_sent_tx.js +0 -29
  292. package/dest/account_manager/index.d.ts +0 -108
  293. package/dest/account_manager/index.d.ts.map +0 -1
  294. package/dest/account_manager/index.js +0 -159
  295. package/dest/api/cheat_codes.d.ts +0 -26
  296. package/dest/api/cheat_codes.d.ts.map +0 -1
  297. package/dest/api/cheat_codes.js +0 -25
  298. package/dest/api/entrypoint.d.ts +0 -2
  299. package/dest/api/entrypoint.d.ts.map +0 -1
  300. package/dest/api/entrypoint.js +0 -1
  301. package/dest/api/ethereum/anvil_test_watcher.d.ts +0 -32
  302. package/dest/api/ethereum/anvil_test_watcher.d.ts.map +0 -1
  303. package/dest/api/ethereum/anvil_test_watcher.js +0 -133
  304. package/dest/api/ethereum/chain_monitor.d.ts +0 -25
  305. package/dest/api/ethereum/chain_monitor.d.ts.map +0 -1
  306. package/dest/api/ethereum/chain_monitor.js +0 -74
  307. package/dest/api/ethereum/cheat_codes.d.ts +0 -63
  308. package/dest/api/ethereum/cheat_codes.d.ts.map +0 -1
  309. package/dest/api/ethereum/cheat_codes.js +0 -162
  310. package/dest/api/ethereum/index.d.ts +0 -7
  311. package/dest/api/ethereum/index.d.ts.map +0 -1
  312. package/dest/api/ethereum/index.js +0 -6
  313. package/dest/api/ethereum/l1_contracts.d.ts +0 -3
  314. package/dest/api/ethereum/l1_contracts.d.ts.map +0 -1
  315. package/dest/api/ethereum/l1_contracts.js +0 -13
  316. package/dest/api/ethereum/portal_manager.d.ts +0 -136
  317. package/dest/api/ethereum/portal_manager.d.ts.map +0 -1
  318. package/dest/api/ethereum/portal_manager.js +0 -286
  319. package/dest/api/interfaces/pxe.d.ts +0 -2
  320. package/dest/api/interfaces/pxe.d.ts.map +0 -1
  321. package/dest/api/interfaces/pxe.js +0 -1
  322. package/dest/api/log_id.d.ts +0 -2
  323. package/dest/api/log_id.d.ts.map +0 -1
  324. package/dest/api/log_id.js +0 -1
  325. package/dest/api/tx_hash.d.ts +0 -2
  326. package/dest/api/tx_hash.d.ts.map +0 -1
  327. package/dest/api/tx_hash.js +0 -1
  328. package/dest/contract/deploy_proven_tx.d.ts +0 -21
  329. package/dest/contract/deploy_proven_tx.d.ts.map +0 -1
  330. package/dest/contract/deploy_proven_tx.js +0 -19
  331. package/dest/contract/deploy_sent_tx.d.ts +0 -45
  332. package/dest/contract/deploy_sent_tx.d.ts.map +0 -1
  333. package/dest/contract/deploy_sent_tx.js +0 -43
  334. package/dest/contract/index.d.ts +0 -45
  335. package/dest/contract/index.d.ts.map +0 -1
  336. package/dest/contract/index.js +0 -43
  337. package/dest/contract/protocol_contracts.d.ts +0 -9
  338. package/dest/contract/protocol_contracts.d.ts.map +0 -1
  339. package/dest/contract/protocol_contracts.js +0 -26
  340. package/dest/contract/proven_tx.d.ts +0 -17
  341. package/dest/contract/proven_tx.d.ts.map +0 -1
  342. package/dest/contract/proven_tx.js +0 -22
  343. package/dest/contract/sent_tx.d.ts +0 -61
  344. package/dest/contract/sent_tx.d.ts.map +0 -1
  345. package/dest/contract/sent_tx.js +0 -102
  346. package/dest/contract/unsafe_contract.d.ts +0 -15
  347. package/dest/contract/unsafe_contract.d.ts.map +0 -1
  348. package/dest/contract/unsafe_contract.js +0 -6
  349. package/dest/deployment/deploy_instance.d.ts +0 -10
  350. package/dest/deployment/deploy_instance.d.ts.map +0 -1
  351. package/dest/deployment/deploy_instance.js +0 -14
  352. package/dest/deployment/index.d.ts +0 -2
  353. package/dest/deployment/index.d.ts.map +0 -1
  354. package/dest/deployment/index.js +0 -1
  355. package/dest/deployment/register_class.d.ts +0 -6
  356. package/dest/deployment/register_class.d.ts.map +0 -1
  357. package/dest/deployment/register_class.js +0 -22
  358. package/dest/entrypoint/default_entrypoint.d.ts +0 -12
  359. package/dest/entrypoint/default_entrypoint.d.ts.map +0 -1
  360. package/dest/entrypoint/default_entrypoint.js +0 -28
  361. package/dest/entrypoint/default_multi_call_entrypoint.d.ts +0 -15
  362. package/dest/entrypoint/default_multi_call_entrypoint.d.ts.map +0 -1
  363. package/dest/entrypoint/default_multi_call_entrypoint.js +0 -130
  364. package/dest/entrypoint/entrypoint.d.ts +0 -35
  365. package/dest/entrypoint/entrypoint.d.ts.map +0 -1
  366. package/dest/entrypoint/entrypoint.js +0 -4
  367. package/dest/entrypoint/payload.d.ts +0 -128
  368. package/dest/entrypoint/payload.d.ts.map +0 -1
  369. package/dest/entrypoint/payload.js +0 -143
  370. package/dest/fee/fee_juice_payment_method.d.ts +0 -14
  371. package/dest/fee/fee_juice_payment_method.d.ts.map +0 -1
  372. package/dest/fee/fee_juice_payment_method.js +0 -20
  373. package/dest/index.d.ts +0 -66
  374. package/dest/index.d.ts.map +0 -1
  375. package/dest/index.js +0 -69
  376. package/dest/rpc_clients/index.d.ts +0 -3
  377. package/dest/rpc_clients/index.d.ts.map +0 -1
  378. package/dest/rpc_clients/index.js +0 -2
  379. package/dest/rpc_clients/node/index.d.ts +0 -12
  380. package/dest/rpc_clients/node/index.d.ts.map +0 -1
  381. package/dest/rpc_clients/node/index.js +0 -78
  382. package/dest/rpc_clients/pxe_client.d.ts +0 -10
  383. package/dest/rpc_clients/pxe_client.d.ts.map +0 -1
  384. package/dest/rpc_clients/pxe_client.js +0 -23
  385. package/dest/utils/aztec_cheatcodes.d.ts +0 -59
  386. package/dest/utils/aztec_cheatcodes.d.ts.map +0 -1
  387. package/dest/utils/aztec_cheatcodes.js +0 -62
  388. package/dest/utils/index.d.ts +0 -8
  389. package/dest/utils/index.d.ts.map +0 -1
  390. package/dest/utils/index.js +0 -6
  391. package/dest/utils/pxe.d.ts +0 -4
  392. package/dest/utils/pxe.d.ts.map +0 -1
  393. package/dest/utils/pxe.js +0 -14
  394. package/dest/wallet/account_wallet.d.ts +0 -76
  395. package/dest/wallet/account_wallet.d.ts.map +0 -1
  396. package/dest/wallet/account_wallet.js +0 -231
  397. package/dest/wallet/account_wallet_with_private_key.d.ts +0 -26
  398. package/dest/wallet/account_wallet_with_private_key.d.ts.map +0 -1
  399. package/dest/wallet/base_wallet.d.ts +0 -73
  400. package/dest/wallet/base_wallet.d.ts.map +0 -1
  401. package/dest/wallet/base_wallet.js +0 -123
  402. package/dest/wallet/signerless_wallet.d.ts +0 -25
  403. package/dest/wallet/signerless_wallet.d.ts.map +0 -1
  404. package/dest/wallet/signerless_wallet.js +0 -36
  405. package/src/account/contract.ts +0 -56
  406. package/src/account/interface.ts +0 -36
  407. package/src/account/wallet.ts +0 -13
  408. package/src/account_manager/deploy_account_method.ts +0 -86
  409. package/src/account_manager/deploy_account_sent_tx.ts +0 -42
  410. package/src/account_manager/index.ts +0 -229
  411. package/src/api/cheat_codes.ts +0 -35
  412. package/src/api/entrypoint.ts +0 -1
  413. package/src/api/ethereum/anvil_test_watcher.ts +0 -158
  414. package/src/api/ethereum/chain_monitor.ts +0 -88
  415. package/src/api/ethereum/cheat_codes.ts +0 -184
  416. package/src/api/ethereum/index.ts +0 -19
  417. package/src/api/ethereum/l1_contracts.ts +0 -21
  418. package/src/api/interfaces/pxe.ts +0 -1
  419. package/src/api/log_id.ts +0 -1
  420. package/src/api/tx_hash.ts +0 -1
  421. package/src/contract/deploy_proven_tx.ts +0 -34
  422. package/src/contract/deploy_sent_tx.ts +0 -74
  423. package/src/contract/index.ts +0 -48
  424. package/src/contract/protocol_contracts.ts +0 -35
  425. package/src/contract/proven_tx.ts +0 -42
  426. package/src/contract/sent_tx.ts +0 -141
  427. package/src/contract/unsafe_contract.ts +0 -19
  428. package/src/deployment/deploy_instance.ts +0 -31
  429. package/src/deployment/index.ts +0 -1
  430. package/src/deployment/register_class.ts +0 -44
  431. package/src/entrypoint/default_entrypoint.ts +0 -39
  432. package/src/entrypoint/default_multi_call_entrypoint.ts +0 -93
  433. package/src/entrypoint/entrypoint.ts +0 -39
  434. package/src/entrypoint/payload.ts +0 -238
  435. package/src/fee/fee_juice_payment_method.ts +0 -26
  436. package/src/index.ts +0 -106
  437. package/src/rpc_clients/index.ts +0 -2
  438. package/src/rpc_clients/node/index.ts +0 -77
  439. package/src/rpc_clients/pxe_client.ts +0 -25
  440. package/src/utils/aztec_cheatcodes.ts +0 -77
  441. package/src/utils/index.ts +0 -21
  442. package/src/utils/pxe.ts +0 -17
  443. package/src/wallet/account_wallet.ts +0 -242
  444. package/src/wallet/account_wallet_with_private_key.ts +0 -40
  445. package/src/wallet/base_wallet.ts +0 -198
  446. package/src/wallet/signerless_wallet.ts +0 -52
package/src/index.ts DELETED
@@ -1,106 +0,0 @@
1
- /**
2
- * This is our public api.
3
- * Do NOT "export * from ..." here.
4
- * Everything here should be explicit, to ensure we can clearly see everything we're exposing to the world.
5
- * If it's exposed, people will use it, and then we can't remove/change the api without breaking client code.
6
- * At the time of writing we overexpose things that should only be internal.
7
- *
8
- * TODO: Review and narrow scope of public api.
9
- * We should also consider exposing subsections of the api via package.json exports, like we do with foundation.
10
- * This can allow consumers to import much smaller parts of the library to incur less overhead.
11
- * It will also allow web bundlers do perform intelligent chunking of bundles etc.
12
- * Some work as been done on this within the api folder, providing the alternative import style of e.g.:
13
- * ```typescript
14
- * import { TxHash } from '@aztec.js/tx_hash'
15
- * import { type ContractArtifact, type FunctionArtifact, FunctionSelector } from '@aztec/aztec.js/abi';
16
- * import { AztecAddress } from '@aztec/aztec.js/addresses';
17
- * import { EthAddress } from '@aztec/aztec.js/eth_address';
18
- * ```
19
- *
20
- * TODO: Ultimately reimplement this mega exporter by mega exporting a granular api (then deprecate it).
21
- */
22
-
23
- export { ContractDeployer } from './deployment/index.js';
24
-
25
- export { NoteSelector } from '@aztec/stdlib/abi';
26
-
27
- export { createCompatibleClient, createPXEClient } from './rpc_clients/index.js';
28
-
29
- export { type DeployAccountOptions } from './account_manager/index.js';
30
-
31
- export { AccountWallet, AccountWalletWithSecretKey, SignerlessWallet } from './wallet/index.js';
32
-
33
- export { EthAddress } from '@aztec/foundation/eth-address';
34
-
35
- export { Fq, Fr, Point, GrumpkinScalar } from '@aztec/foundation/fields';
36
-
37
- export { SiblingPath } from '@aztec/foundation/trees';
38
-
39
- export { INITIAL_L2_BLOCK_NUM } from '@aztec/constants';
40
-
41
- export {
42
- type PartialAddress,
43
- type ContractClassWithId,
44
- type ContractInstanceWithAddress,
45
- getContractClassFromArtifact,
46
- getContractInstanceFromDeployParams,
47
- type NodeInfo,
48
- } from '@aztec/stdlib/contract';
49
- export { MerkleTreeId, merkleTreeIds } from '@aztec/stdlib/trees';
50
- export { type PublicKey, PublicKeys } from '@aztec/stdlib/keys';
51
- export { computeSecretHash } from '@aztec/stdlib/hash';
52
- export {
53
- computeAppNullifierSecretKey,
54
- deriveKeys,
55
- deriveMasterIncomingViewingSecretKey,
56
- deriveMasterNullifierSecretKey,
57
- } from '@aztec/stdlib/keys';
58
- export { AuthWitness } from '@aztec/stdlib/auth-witness';
59
- export { getTimestampRangeForEpoch } from '@aztec/stdlib/epoch-helpers';
60
- export { FunctionCall } from '@aztec/stdlib/abi';
61
- export {
62
- Tx,
63
- TxExecutionRequest,
64
- TxHash,
65
- TxReceipt,
66
- TxStatus,
67
- Capsule,
68
- HashedValues,
69
- GlobalVariables,
70
- } from '@aztec/stdlib/tx';
71
- export { Body, L2Block } from '@aztec/stdlib/block';
72
- export { L1NotePayload, LogId, type LogFilter, EncryptedLogPayload } from '@aztec/stdlib/logs';
73
- export { L1EventPayload, EventMetadata } from '@aztec/stdlib/event';
74
- export { L1ToL2Message, L2Actor, L1Actor } from '@aztec/stdlib/messaging';
75
- export { UniqueNote, ExtendedNote, Comparator, Note } from '@aztec/stdlib/note';
76
- export { type PXE, EventType } from '@aztec/stdlib/interfaces/client';
77
-
78
- export { ProtocolContractAddress } from '@aztec/protocol-contracts';
79
-
80
- // TODO: These kinds of things have no place on our public api.
81
- // External devs will almost certainly have their own methods of doing these things.
82
- // If we want to use them in our own "aztec.js consuming code", import them from foundation as needed.
83
- export { decodeFromAbi, encodeArguments, type AbiType } from '@aztec/stdlib/abi';
84
- export { toBigIntBE } from '@aztec/foundation/bigint-buffer';
85
- export { sha256, Grumpkin, Schnorr } from '@aztec/foundation/crypto';
86
- export { makeFetch } from '@aztec/foundation/json-rpc/client';
87
- export { retry, retryUntil } from '@aztec/foundation/retry';
88
- export { to2Fields, toBigInt } from '@aztec/foundation/serialize';
89
- export { sleep } from '@aztec/foundation/sleep';
90
- export { elapsed } from '@aztec/foundation/timer';
91
- export { type FieldsOf } from '@aztec/foundation/types';
92
- export { fileURLToPath } from '@aztec/foundation/url';
93
-
94
- // Start of section that exports public api via granular api.
95
- // Here you *can* do `export *` as the granular api defacto exports things explicitly.
96
- // This entire index file will be deprecated at some point after we're satisfied.
97
- export * from './api/abi.js';
98
- export * from './api/account.js';
99
- export * from './api/addresses.js';
100
- export * from './api/cheat_codes.js';
101
- export * from './api/ethereum/index.js';
102
- export * from './api/fee.js';
103
- export * from './api/log.js';
104
- // Granular export, even if not in the api folder
105
- export * from './contract/index.js';
106
- export * from './utils/index.js';
@@ -1,2 +0,0 @@
1
- export * from './pxe_client.js';
2
- export * from './node/index.js';
@@ -1,77 +0,0 @@
1
- import { jsonStringify } from '@aztec/foundation/json-rpc';
2
- import { type Logger, createLogger } from '@aztec/foundation/log';
3
- import { NoRetryError, makeBackoff, retry } from '@aztec/foundation/retry';
4
- import type { PXE } from '@aztec/stdlib/interfaces/client';
5
- import type { ComponentsVersions } from '@aztec/stdlib/versioning';
6
-
7
- import { Axios, type AxiosError } from 'axios';
8
- import { inspect } from 'util';
9
-
10
- import { createPXEClient } from '../pxe_client.js';
11
-
12
- /**
13
- * A fetch implementation using axios.
14
- * @param host - The URL of the host.
15
- * @param rpcMethod - The RPC method to call.
16
- * @param body - The body of the request.
17
- * @param useApiEndpoints - Whether to use the API endpoints or inject the method in the body.
18
- * @returns The response data.
19
- */
20
- async function axiosFetch(host: string, rpcMethod: string, body: any, useApiEndpoints: boolean) {
21
- const request = new Axios({
22
- headers: { 'content-type': 'application/json' },
23
- transformRequest: [(data: any) => jsonStringify(data)],
24
- transformResponse: [(data: any) => JSON.parse(data)],
25
- });
26
- const [url, content] = useApiEndpoints ? [`${host}/${rpcMethod}`, body] : [host, { ...body, method: rpcMethod }];
27
- const resp = await request.post(url, content).catch((error: AxiosError) => {
28
- if (error.response) {
29
- return error.response;
30
- }
31
- const errorMessage = `Error fetching from host ${host} with method ${rpcMethod}: ${inspect(error)}`;
32
- throw new Error(errorMessage);
33
- });
34
-
35
- const isOK = resp.status >= 200 && resp.status < 300;
36
- if (isOK) {
37
- const headers = {
38
- get: (header: string) =>
39
- typeof resp.headers.get === 'function' ? resp.headers.get(header)?.toString() : undefined,
40
- };
41
- return { response: resp.data, headers };
42
- } else {
43
- const errorMessage = `Error ${resp.status} from json-rpc server ${host} on ${rpcMethod}: ${resp.data.error.message}`;
44
- if (resp.status >= 400 && resp.status < 500) {
45
- throw new NoRetryError(errorMessage);
46
- } else {
47
- throw new Error(errorMessage);
48
- }
49
- }
50
- }
51
-
52
- /**
53
- * Creates a PXE client with a given set of retries on non-server errors.
54
- * Checks that PXE matches the expected version, and warns if not.
55
- * @param rpcUrl - URL of the RPC server wrapping the PXE.
56
- * @param _logger - Debug logger to warn version incompatibilities.
57
- * @returns A PXE client.
58
- */
59
- export function createCompatibleClient(
60
- rpcUrl: string,
61
- logger: Logger = createLogger('aztecjs:pxe_client'),
62
- versions: Partial<ComponentsVersions> = {},
63
- ): Promise<PXE> {
64
- // Use axios due to timeout issues with fetch when proving TXs.
65
- const fetch = async (host: string, rpcMethod: string, body: any, useApiEndpoints: boolean) => {
66
- return await retry(
67
- () => axiosFetch(host, rpcMethod, body, useApiEndpoints),
68
- `JsonRpcClient request ${rpcMethod} to ${host}`,
69
- makeBackoff([1, 2, 3]),
70
- logger,
71
- false,
72
- );
73
- };
74
- const pxe = createPXEClient(rpcUrl, versions, fetch);
75
-
76
- return Promise.resolve(pxe);
77
- }
@@ -1,25 +0,0 @@
1
- import { createSafeJsonRpcClient, makeFetch } from '@aztec/foundation/json-rpc/client';
2
- import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
3
- import { type PXE, PXESchema } from '@aztec/stdlib/interfaces/client';
4
- import { type ComponentsVersions, getVersioningResponseHandler } from '@aztec/stdlib/versioning';
5
-
6
- /**
7
- * Creates a JSON-RPC client to remotely talk to PXE.
8
- * @param url - The URL of the PXE.
9
- * @param fetch - The fetch implementation to use.
10
- * @returns A JSON-RPC client of PXE.
11
- */
12
- export function createPXEClient(
13
- url: string,
14
- versions: Partial<ComponentsVersions> = {},
15
- fetch = makeFetch([1, 2, 3], false),
16
- ): PXE {
17
- return createSafeJsonRpcClient<PXE>(url, PXESchema, {
18
- namespaceMethods: 'pxe',
19
- fetch,
20
- onResponse: getVersioningResponseHandler({
21
- l2ProtocolContractsTreeRoot: protocolContractTreeRoot.toString(),
22
- ...versions,
23
- }),
24
- });
25
- }
@@ -1,77 +0,0 @@
1
- import { Fr } from '@aztec/foundation/fields';
2
- import { createLogger } from '@aztec/foundation/log';
3
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
4
- import { deriveStorageSlotInMap } from '@aztec/stdlib/hash';
5
- import type { PXE } from '@aztec/stdlib/interfaces/client';
6
- import type { Note } from '@aztec/stdlib/note';
7
-
8
- /**
9
- * A class that provides utility functions for interacting with the aztec chain.
10
- */
11
- export class AztecCheatCodes {
12
- constructor(
13
- /**
14
- * The PXE Service to use for interacting with the chain
15
- */
16
- public pxe: PXE,
17
- /**
18
- * The logger to use for the aztec cheatcodes
19
- */
20
- public logger = createLogger('aztecjs:cheat_codes'),
21
- ) {}
22
-
23
- /**
24
- * Computes the slot value for a given map and key.
25
- * @param mapSlot - The slot of the map (specified in Aztec.nr contract)
26
- * @param key - The key to lookup in the map
27
- * @returns The storage slot of the value in the map
28
- */
29
- public computeSlotInMap(mapSlot: Fr | bigint, key: Fr | bigint | AztecAddress): Promise<Fr> {
30
- const keyFr = typeof key === 'bigint' ? new Fr(key) : key.toField();
31
- return deriveStorageSlotInMap(mapSlot, keyFr);
32
- }
33
-
34
- /**
35
- * Get the current blocknumber
36
- * @returns The current block number
37
- */
38
- public async blockNumber(): Promise<number> {
39
- return await this.pxe.getBlockNumber();
40
- }
41
-
42
- /**
43
- * Get the current timestamp
44
- * @returns The current timestamp
45
- */
46
- public async timestamp(): Promise<number> {
47
- const res = await this.pxe.getBlock(await this.blockNumber());
48
- return res?.header.globalVariables.timestamp.toNumber() ?? 0;
49
- }
50
-
51
- /**
52
- * Loads the value stored at the given slot in the public storage of the given contract.
53
- * @param who - The address of the contract
54
- * @param slot - The storage slot to lookup
55
- * @returns The value stored at the given slot
56
- */
57
- public async loadPublic(who: AztecAddress, slot: Fr | bigint): Promise<Fr> {
58
- const storageValue = await this.pxe.getPublicStorageAt(who, new Fr(slot));
59
- return storageValue;
60
- }
61
-
62
- /**
63
- * Loads the value stored at the given slot in the private storage of the given contract.
64
- * @param contract - The address of the contract
65
- * @param owner - The owner for whom the notes are encrypted
66
- * @param slot - The storage slot to lookup
67
- * @returns The notes stored at the given slot
68
- */
69
- public async loadPrivate(owner: AztecAddress, contract: AztecAddress, slot: Fr | bigint): Promise<Note[]> {
70
- const extendedNotes = await this.pxe.getNotes({
71
- owner,
72
- contractAddress: contract,
73
- storageSlot: new Fr(slot),
74
- });
75
- return extendedNotes.map(extendedNote => extendedNote.note);
76
- }
77
- }
@@ -1,21 +0,0 @@
1
- export { generatePublicKey } from './pub_key.js';
2
- export {
3
- type AztecAddressLike,
4
- type EthAddressLike,
5
- type EventSelectorLike,
6
- type FieldLike,
7
- type FunctionSelectorLike,
8
- type U128Like,
9
- type WrappedFieldLike,
10
- } from './abi_types.js';
11
- export {
12
- computeAuthWitMessageHash,
13
- computeInnerAuthWitHash,
14
- computeInnerAuthWitHashFromAction,
15
- type IntentAction,
16
- type IntentInnerHash,
17
- } from './authwit.js';
18
- export { waitForPXE } from './pxe.js';
19
- export { waitForNode, createAztecNodeClient, type AztecNode } from './node.js';
20
- export { getFeeJuiceBalance } from './fee_juice.js';
21
- export { readFieldCompressedString } from './field_compressed_string.js';
package/src/utils/pxe.ts DELETED
@@ -1,17 +0,0 @@
1
- import type { Logger } from '@aztec/foundation/log';
2
- import { retryUntil } from '@aztec/foundation/retry';
3
- import type { PXE } from '@aztec/stdlib/interfaces/client';
4
-
5
- export const waitForPXE = async (pxe: PXE, logger?: Logger) => {
6
- await retryUntil(async () => {
7
- try {
8
- logger?.verbose('Attempting to contact PXE...');
9
- await pxe.getNodeInfo();
10
- logger?.verbose('Contacted PXE');
11
- return true;
12
- } catch (error) {
13
- logger?.verbose('Failed to contact PXE');
14
- }
15
- return undefined;
16
- }, 'RPC Get Node Info');
17
- };
@@ -1,242 +0,0 @@
1
- import { Fr } from '@aztec/foundation/fields';
2
- import { ProtocolContractAddress } from '@aztec/protocol-contracts';
3
- import { type ABIParameterVisibility, type FunctionAbi, FunctionType } from '@aztec/stdlib/abi';
4
- import type { AuthWitness } from '@aztec/stdlib/auth-witness';
5
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
6
- import type { PXE } from '@aztec/stdlib/interfaces/client';
7
- import type { TxExecutionRequest } from '@aztec/stdlib/tx';
8
-
9
- import type { AccountInterface } from '../account/interface.js';
10
- import { ContractFunctionInteraction } from '../contract/contract_function_interaction.js';
11
- import type { ExecutionRequestInit } from '../entrypoint/entrypoint.js';
12
- import {
13
- type IntentAction,
14
- type IntentInnerHash,
15
- computeAuthWitMessageHash,
16
- computeInnerAuthWitHashFromAction,
17
- } from '../utils/authwit.js';
18
- import { BaseWallet } from './base_wallet.js';
19
-
20
- /**
21
- * A wallet implementation that forwards authentication requests to a provided account.
22
- */
23
- export class AccountWallet extends BaseWallet {
24
- constructor(pxe: PXE, protected account: AccountInterface) {
25
- super(pxe, [account.getAddress()]);
26
- }
27
-
28
- createTxExecutionRequest(exec: ExecutionRequestInit): Promise<TxExecutionRequest> {
29
- return this.account.createTxExecutionRequest(exec);
30
- }
31
-
32
- getChainId(): Fr {
33
- return this.account.getChainId();
34
- }
35
-
36
- getVersion(): Fr {
37
- return this.account.getVersion();
38
- }
39
-
40
- override isL1ToL2MessageSynced(l1ToL2Message: Fr): Promise<boolean> {
41
- return this.pxe.isL1ToL2MessageSynced(l1ToL2Message);
42
- }
43
-
44
- /**
45
- * Computes an authentication witness from either a message hash or an intent.
46
- *
47
- * If a message hash is provided, it will create a witness for the hash directly.
48
- * Otherwise, it will compute the message hash using the intent, along with the
49
- * chain id and the version values provided by the wallet.
50
- *
51
- * @param messageHashOrIntent - The message hash of the intent to approve
52
- * @returns The authentication witness
53
- */
54
- async createAuthWit(messageHashOrIntent: Fr | Buffer | IntentAction | IntentInnerHash): Promise<AuthWitness> {
55
- let messageHash: Fr;
56
- if (Buffer.isBuffer(messageHashOrIntent)) {
57
- messageHash = Fr.fromBuffer(messageHashOrIntent);
58
- } else if (messageHashOrIntent instanceof Fr) {
59
- messageHash = messageHashOrIntent;
60
- } else {
61
- messageHash = await this.getMessageHash(messageHashOrIntent);
62
- }
63
-
64
- const witness = await this.account.createAuthWit(messageHash);
65
- await this.pxe.addAuthWitness(witness);
66
- return witness;
67
- }
68
-
69
- /**
70
- * Returns a function interaction to set a message hash as authorized or revoked in this account.
71
- *
72
- * Public calls can then consume this authorization.
73
- *
74
- * @param messageHashOrIntent - The message hash or intent to authorize/revoke
75
- * @param authorized - True to authorize, false to revoke authorization.
76
- * @returns - A function interaction.
77
- */
78
- public async setPublicAuthWit(
79
- messageHashOrIntent: Fr | Buffer | IntentInnerHash | IntentAction,
80
- authorized: boolean,
81
- ): Promise<ContractFunctionInteraction> {
82
- let messageHash: Fr;
83
- if (Buffer.isBuffer(messageHashOrIntent)) {
84
- messageHash = Fr.fromBuffer(messageHashOrIntent);
85
- } else if (messageHashOrIntent instanceof Fr) {
86
- messageHash = messageHashOrIntent;
87
- } else {
88
- messageHash = await this.getMessageHash(messageHashOrIntent);
89
- }
90
-
91
- return new ContractFunctionInteraction(this, ProtocolContractAddress.AuthRegistry, this.getSetAuthorizedAbi(), [
92
- messageHash,
93
- authorized,
94
- ]);
95
- }
96
-
97
- private async getInnerHashAndConsumer(intent: IntentInnerHash | IntentAction): Promise<{
98
- /** The inner hash */
99
- innerHash: Fr;
100
- /** The consumer of the authwit */
101
- consumer: AztecAddress;
102
- }> {
103
- if ('caller' in intent && 'action' in intent) {
104
- const action =
105
- intent.action instanceof ContractFunctionInteraction ? await intent.action.request() : intent.action;
106
- return {
107
- innerHash: await computeInnerAuthWitHashFromAction(intent.caller, action),
108
- consumer: action.to,
109
- };
110
- } else if (Buffer.isBuffer(intent.innerHash)) {
111
- return { innerHash: Fr.fromBuffer(intent.innerHash), consumer: intent.consumer };
112
- }
113
- return { innerHash: intent.innerHash, consumer: intent.consumer };
114
- }
115
-
116
- /**
117
- * Returns the message hash for the given intent
118
- *
119
- * @param intent - A tuple of (consumer and inner hash) or (caller and action)
120
- * @returns The message hash
121
- */
122
- private getMessageHash(intent: IntentInnerHash | IntentAction): Promise<Fr> {
123
- const chainId = this.getChainId();
124
- const version = this.getVersion();
125
- return computeAuthWitMessageHash(intent, { chainId, version });
126
- }
127
-
128
- /**
129
- * Lookup the validity of an authwit in private and public contexts.
130
- *
131
- * Uses the chain id and version of the wallet.
132
- *
133
- * @param onBehalfOf - The address of the "approver"
134
- * @param intent - The consumer and inner hash or the caller and action to lookup
135
- *
136
- * @returns - A struct containing the validity of the authwit in private and public contexts.
137
- */
138
- async lookupValidity(
139
- onBehalfOf: AztecAddress,
140
- intent: IntentInnerHash | IntentAction,
141
- ): Promise<{
142
- /** boolean flag indicating if the authwit is valid in private context */
143
- isValidInPrivate: boolean;
144
- /** boolean flag indicating if the authwit is valid in public context */
145
- isValidInPublic: boolean;
146
- }> {
147
- const { innerHash, consumer } = await this.getInnerHashAndConsumer(intent);
148
-
149
- const messageHash = await this.getMessageHash(intent);
150
- const results = { isValidInPrivate: false, isValidInPublic: false };
151
-
152
- // Check private
153
- const witness = await this.getAuthWitness(messageHash);
154
- if (witness !== undefined) {
155
- results.isValidInPrivate = (await new ContractFunctionInteraction(this, onBehalfOf, this.getLookupValidityAbi(), [
156
- consumer,
157
- innerHash,
158
- ]).simulate()) as boolean;
159
- }
160
-
161
- // check public
162
- results.isValidInPublic = (await new ContractFunctionInteraction(
163
- this,
164
- ProtocolContractAddress.AuthRegistry,
165
- this.getIsConsumableAbi(),
166
- [onBehalfOf, messageHash],
167
- ).simulate()) as boolean;
168
-
169
- return results;
170
- }
171
-
172
- /** Returns the complete address of the account that implements this wallet. */
173
- public getCompleteAddress() {
174
- return this.account.getCompleteAddress();
175
- }
176
-
177
- /** Returns the address of the account that implements this wallet. */
178
- public override getAddress() {
179
- return this.getCompleteAddress().address;
180
- }
181
-
182
- private getSetAuthorizedAbi(): FunctionAbi {
183
- return {
184
- name: 'set_authorized',
185
- isInitializer: false,
186
- functionType: FunctionType.PUBLIC,
187
- isInternal: true,
188
- isStatic: false,
189
- parameters: [
190
- {
191
- name: 'message_hash',
192
- type: { kind: 'field' },
193
- visibility: 'private' as ABIParameterVisibility,
194
- },
195
- {
196
- name: 'authorize',
197
- type: { kind: 'boolean' },
198
- visibility: 'private' as ABIParameterVisibility,
199
- },
200
- ],
201
- returnTypes: [],
202
- errorTypes: {},
203
- };
204
- }
205
-
206
- private getLookupValidityAbi(): FunctionAbi {
207
- return {
208
- name: 'lookup_validity',
209
- isInitializer: false,
210
- functionType: FunctionType.UNCONSTRAINED,
211
- isInternal: false,
212
- isStatic: false,
213
- parameters: [{ name: 'message_hash', type: { kind: 'field' }, visibility: 'private' as ABIParameterVisibility }],
214
- returnTypes: [{ kind: 'boolean' }],
215
- errorTypes: {},
216
- };
217
- }
218
-
219
- private getIsConsumableAbi(): FunctionAbi {
220
- return {
221
- name: 'unconstrained_is_consumable',
222
- isInitializer: false,
223
- functionType: FunctionType.UNCONSTRAINED,
224
- isInternal: false,
225
- isStatic: false,
226
- parameters: [
227
- {
228
- name: 'address',
229
- type: {
230
- fields: [{ name: 'inner', type: { kind: 'field' } }],
231
- kind: 'struct',
232
- path: 'authwit::aztec::protocol_types::address::aztec_address::AztecAddress',
233
- },
234
- visibility: 'private' as ABIParameterVisibility,
235
- },
236
- { name: 'message_hash', type: { kind: 'field' }, visibility: 'private' as ABIParameterVisibility },
237
- ],
238
- returnTypes: [{ kind: 'boolean' }],
239
- errorTypes: {},
240
- };
241
- }
242
- }
@@ -1,40 +0,0 @@
1
- import type { Fr } from '@aztec/foundation/fields';
2
- import type { PXE } from '@aztec/stdlib/interfaces/client';
3
- import { computeAddressSecret, deriveMasterIncomingViewingSecretKey } from '@aztec/stdlib/keys';
4
-
5
- import type { Salt } from '../account/index.js';
6
- import type { AccountInterface } from '../account/interface.js';
7
- import { AccountWallet } from './account_wallet.js';
8
-
9
- /**
10
- * Extends {@link AccountWallet} with the encryption private key. Not required for
11
- * implementing the wallet interface but useful for testing purposes or exporting
12
- * an account to another pxe.
13
- */
14
- export class AccountWalletWithSecretKey extends AccountWallet {
15
- constructor(
16
- pxe: PXE,
17
- account: AccountInterface,
18
- private secretKey: Fr,
19
- /** Deployment salt for this account contract. */
20
- public readonly salt: Salt,
21
- ) {
22
- super(pxe, account);
23
- }
24
-
25
- /** Returns the encryption private key associated with this account. */
26
- public getSecretKey() {
27
- return this.secretKey;
28
- }
29
-
30
- /** Returns the encryption secret, the secret of the encryption point—the point that others use to encrypt messages to this account
31
- * note - this ensures that the address secret always corresponds to an address point with y being positive
32
- * dev - this is also referred to as the address secret, which decrypts payloads encrypted to an address point
33
- */
34
- public async getEncryptionSecret() {
35
- return computeAddressSecret(
36
- await this.getCompleteAddress().getPreaddress(),
37
- deriveMasterIncomingViewingSecretKey(this.getSecretKey()),
38
- );
39
- }
40
- }