@aztec/aztec.js 0.0.1-commit.03f7ef2 → 0.0.1-commit.04852196a

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 (214) hide show
  1. package/dest/account/account.d.ts +25 -40
  2. package/dest/account/account.d.ts.map +1 -1
  3. package/dest/account/account.js +19 -47
  4. package/dest/account/account_contract.d.ts +8 -9
  5. package/dest/account/account_contract.d.ts.map +1 -1
  6. package/dest/account/account_with_secret_key.d.ts +19 -7
  7. package/dest/account/account_with_secret_key.d.ts.map +1 -1
  8. package/dest/account/account_with_secret_key.js +21 -4
  9. package/dest/account/index.d.ts +3 -2
  10. package/dest/account/index.d.ts.map +1 -1
  11. package/dest/account/index.js +2 -0
  12. package/dest/account/signerless_account.d.ts +5 -6
  13. package/dest/account/signerless_account.d.ts.map +1 -1
  14. package/dest/account/signerless_account.js +8 -11
  15. package/dest/api/abi.d.ts +2 -2
  16. package/dest/api/abi.d.ts.map +1 -1
  17. package/dest/api/account.d.ts +2 -4
  18. package/dest/api/account.d.ts.map +1 -1
  19. package/dest/api/account.js +1 -3
  20. package/dest/api/authorization.d.ts +2 -2
  21. package/dest/api/authorization.d.ts.map +1 -1
  22. package/dest/api/authorization.js +1 -1
  23. package/dest/api/contract.d.ts +18 -12
  24. package/dest/api/contract.d.ts.map +1 -1
  25. package/dest/api/contract.js +16 -10
  26. package/dest/api/deployment.d.ts +1 -2
  27. package/dest/api/deployment.d.ts.map +1 -1
  28. package/dest/api/deployment.js +0 -1
  29. package/dest/api/events.d.ts +18 -6
  30. package/dest/api/events.d.ts.map +1 -1
  31. package/dest/api/events.js +37 -22
  32. package/dest/api/fields.d.ts +2 -1
  33. package/dest/api/fields.d.ts.map +1 -1
  34. package/dest/api/fields.js +1 -0
  35. package/dest/api/keys.d.ts +1 -1
  36. package/dest/api/keys.js +1 -1
  37. package/dest/api/node.d.ts +8 -4
  38. package/dest/api/node.d.ts.map +1 -1
  39. package/dest/api/node.js +7 -3
  40. package/dest/api/protocol.d.ts +7 -1
  41. package/dest/api/protocol.d.ts.map +1 -1
  42. package/dest/api/protocol.js +6 -0
  43. package/dest/api/tx.d.ts +2 -2
  44. package/dest/api/tx.d.ts.map +1 -1
  45. package/dest/api/tx.js +1 -1
  46. package/dest/api/wallet.d.ts +3 -2
  47. package/dest/api/wallet.d.ts.map +1 -1
  48. package/dest/api/wallet.js +2 -1
  49. package/dest/authorization/call_authorization_request.d.ts +22 -1
  50. package/dest/authorization/call_authorization_request.d.ts.map +1 -1
  51. package/dest/contract/base_contract_interaction.d.ts +8 -10
  52. package/dest/contract/base_contract_interaction.d.ts.map +1 -1
  53. package/dest/contract/base_contract_interaction.js +5 -17
  54. package/dest/contract/batch_call.d.ts +3 -3
  55. package/dest/contract/batch_call.d.ts.map +1 -1
  56. package/dest/contract/batch_call.js +20 -9
  57. package/dest/contract/contract_base.d.ts +4 -1
  58. package/dest/contract/contract_base.d.ts.map +1 -1
  59. package/dest/contract/contract_function_interaction.d.ts +7 -16
  60. package/dest/contract/contract_function_interaction.d.ts.map +1 -1
  61. package/dest/contract/contract_function_interaction.js +107 -18
  62. package/dest/contract/deploy_method.d.ts +91 -19
  63. package/dest/contract/deploy_method.d.ts.map +1 -1
  64. package/dest/contract/deploy_method.js +73 -34
  65. package/dest/contract/get_gas_limits.js +3 -3
  66. package/dest/contract/interaction_options.d.ts +99 -21
  67. package/dest/contract/interaction_options.d.ts.map +1 -1
  68. package/dest/contract/interaction_options.js +41 -1
  69. package/dest/contract/protocol_contracts/auth-registry.d.ts +36 -0
  70. package/dest/contract/protocol_contracts/auth-registry.d.ts.map +1 -0
  71. package/dest/contract/protocol_contracts/auth-registry.js +1005 -0
  72. package/dest/contract/protocol_contracts/contract-class-registry.d.ts +15 -0
  73. package/dest/contract/protocol_contracts/contract-class-registry.d.ts.map +1 -0
  74. package/dest/contract/protocol_contracts/contract-class-registry.js +139 -0
  75. package/dest/contract/protocol_contracts/contract-instance-registry.d.ts +22 -0
  76. package/dest/contract/protocol_contracts/contract-instance-registry.d.ts.map +1 -0
  77. package/dest/contract/protocol_contracts/contract-instance-registry.js +465 -0
  78. package/dest/contract/protocol_contracts/fee-juice.d.ts +21 -0
  79. package/dest/contract/protocol_contracts/fee-juice.d.ts.map +1 -0
  80. package/dest/contract/protocol_contracts/fee-juice.js +434 -0
  81. package/dest/contract/protocol_contracts/multi-call-entrypoint.d.ts +34 -0
  82. package/dest/contract/protocol_contracts/multi-call-entrypoint.d.ts.map +1 -0
  83. package/dest/contract/protocol_contracts/multi-call-entrypoint.js +601 -0
  84. package/dest/contract/protocol_contracts/public-checks.d.ts +26 -0
  85. package/dest/contract/protocol_contracts/public-checks.d.ts.map +1 -0
  86. package/dest/contract/protocol_contracts/public-checks.js +609 -0
  87. package/dest/contract/wait_for_proven.d.ts +2 -2
  88. package/dest/contract/wait_for_proven.d.ts.map +1 -1
  89. package/dest/contract/wait_for_proven.js +1 -1
  90. package/dest/contract/wait_opts.d.ts +16 -0
  91. package/dest/contract/wait_opts.d.ts.map +1 -0
  92. package/dest/contract/wait_opts.js +5 -0
  93. package/dest/deployment/publish_class.js +2 -2
  94. package/dest/deployment/publish_instance.d.ts +2 -2
  95. package/dest/deployment/publish_instance.d.ts.map +1 -1
  96. package/dest/deployment/publish_instance.js +3 -3
  97. package/dest/ethereum/portal_manager.d.ts +7 -4
  98. package/dest/ethereum/portal_manager.d.ts.map +1 -1
  99. package/dest/ethereum/portal_manager.js +15 -16
  100. package/dest/fee/fee_juice_payment_method_with_claim.js +6 -6
  101. package/dest/fee/private_fee_payment_method.d.ts +2 -1
  102. package/dest/fee/private_fee_payment_method.d.ts.map +1 -1
  103. package/dest/fee/private_fee_payment_method.js +11 -10
  104. package/dest/fee/public_fee_payment_method.d.ts +2 -1
  105. package/dest/fee/public_fee_payment_method.d.ts.map +1 -1
  106. package/dest/fee/public_fee_payment_method.js +11 -10
  107. package/dest/fee/sponsored_fee_payment.js +3 -3
  108. package/dest/scripts/generate_protocol_contract_types.d.ts +2 -0
  109. package/dest/scripts/generate_protocol_contract_types.d.ts.map +1 -0
  110. package/dest/scripts/generate_protocol_contract_types.js +120 -0
  111. package/dest/utils/abi_types.d.ts +6 -1
  112. package/dest/utils/abi_types.d.ts.map +1 -1
  113. package/dest/utils/abi_types.js +1 -1
  114. package/dest/utils/authwit.d.ts +8 -6
  115. package/dest/utils/authwit.d.ts.map +1 -1
  116. package/dest/utils/authwit.js +15 -15
  117. package/dest/utils/cross_chain.d.ts +3 -8
  118. package/dest/utils/cross_chain.d.ts.map +1 -1
  119. package/dest/utils/cross_chain.js +8 -15
  120. package/dest/utils/node.d.ts +12 -1
  121. package/dest/utils/node.d.ts.map +1 -1
  122. package/dest/utils/node.js +46 -0
  123. package/dest/wallet/account_entrypoint_meta_payment_method.d.ts +5 -8
  124. package/dest/wallet/account_entrypoint_meta_payment_method.d.ts.map +1 -1
  125. package/dest/wallet/account_entrypoint_meta_payment_method.js +28 -43
  126. package/dest/wallet/account_manager.d.ts +5 -8
  127. package/dest/wallet/account_manager.d.ts.map +1 -1
  128. package/dest/wallet/account_manager.js +5 -11
  129. package/dest/wallet/capabilities.d.ts +452 -0
  130. package/dest/wallet/capabilities.d.ts.map +1 -0
  131. package/dest/wallet/capabilities.js +3 -0
  132. package/dest/wallet/deploy_account_method.d.ts +46 -7
  133. package/dest/wallet/deploy_account_method.d.ts.map +1 -1
  134. package/dest/wallet/deploy_account_method.js +33 -5
  135. package/dest/wallet/index.d.ts +2 -1
  136. package/dest/wallet/index.d.ts.map +1 -1
  137. package/dest/wallet/index.js +1 -0
  138. package/dest/wallet/wallet.d.ts +1810 -2493
  139. package/dest/wallet/wallet.d.ts.map +1 -1
  140. package/dest/wallet/wallet.js +230 -108
  141. package/package.json +25 -14
  142. package/src/account/account.ts +34 -58
  143. package/src/account/account_contract.ts +6 -7
  144. package/src/account/account_with_secret_key.ts +33 -8
  145. package/src/account/index.ts +2 -1
  146. package/src/account/signerless_account.ts +13 -12
  147. package/src/api/abi.ts +1 -0
  148. package/src/api/account.ts +9 -3
  149. package/src/api/authorization.ts +1 -0
  150. package/src/api/contract.ts +31 -9
  151. package/src/api/deployment.ts +0 -1
  152. package/src/api/events.ts +50 -32
  153. package/src/api/fields.ts +1 -0
  154. package/src/api/keys.ts +2 -2
  155. package/src/api/node.ts +7 -3
  156. package/src/api/protocol.ts +7 -0
  157. package/src/api/tx.ts +2 -0
  158. package/src/api/wallet.ts +48 -3
  159. package/src/contract/base_contract_interaction.ts +28 -15
  160. package/src/contract/batch_call.ts +20 -15
  161. package/src/contract/contract_function_interaction.ts +114 -26
  162. package/src/contract/deploy_method.ts +179 -41
  163. package/src/contract/get_gas_limits.ts +3 -3
  164. package/src/contract/interaction_options.ts +141 -23
  165. package/src/contract/protocol_contracts/auth-registry.ts +553 -0
  166. package/src/contract/protocol_contracts/contract-class-registry.ts +99 -0
  167. package/src/contract/protocol_contracts/contract-instance-registry.ts +302 -0
  168. package/src/contract/protocol_contracts/fee-juice.ts +266 -0
  169. package/src/contract/protocol_contracts/multi-call-entrypoint.ts +336 -0
  170. package/src/contract/protocol_contracts/public-checks.ts +320 -0
  171. package/src/contract/wait_for_proven.ts +1 -1
  172. package/src/contract/wait_opts.ts +21 -0
  173. package/src/deployment/publish_class.ts +2 -2
  174. package/src/deployment/publish_instance.ts +3 -6
  175. package/src/ethereum/portal_manager.ts +17 -21
  176. package/src/fee/fee_juice_payment_method_with_claim.ts +5 -5
  177. package/src/fee/private_fee_payment_method.ts +8 -7
  178. package/src/fee/public_fee_payment_method.ts +9 -8
  179. package/src/fee/sponsored_fee_payment.ts +3 -3
  180. package/src/scripts/generate_protocol_contract_types.ts +150 -0
  181. package/src/utils/abi_types.ts +7 -0
  182. package/src/utils/authwit.ts +34 -24
  183. package/src/utils/cross_chain.ts +9 -18
  184. package/src/utils/node.ts +62 -0
  185. package/src/wallet/account_entrypoint_meta_payment_method.ts +28 -60
  186. package/src/wallet/account_manager.ts +5 -13
  187. package/src/wallet/capabilities.ts +500 -0
  188. package/src/wallet/deploy_account_method.ts +74 -13
  189. package/src/wallet/index.ts +1 -0
  190. package/src/wallet/wallet.ts +367 -128
  191. package/dest/account/interface.d.ts +0 -19
  192. package/dest/account/interface.d.ts.map +0 -1
  193. package/dest/account/interface.js +0 -5
  194. package/dest/contract/deploy_sent_tx.d.ts +0 -48
  195. package/dest/contract/deploy_sent_tx.d.ts.map +0 -1
  196. package/dest/contract/deploy_sent_tx.js +0 -46
  197. package/dest/contract/protocol_contracts.d.ts +0 -9
  198. package/dest/contract/protocol_contracts.d.ts.map +0 -1
  199. package/dest/contract/protocol_contracts.js +0 -26
  200. package/dest/contract/sent_tx.d.ts +0 -50
  201. package/dest/contract/sent_tx.d.ts.map +0 -1
  202. package/dest/contract/sent_tx.js +0 -90
  203. package/dest/contract/unsafe_contract.d.ts +0 -15
  204. package/dest/contract/unsafe_contract.d.ts.map +0 -1
  205. package/dest/contract/unsafe_contract.js +0 -6
  206. package/dest/deployment/broadcast_function.d.ts +0 -24
  207. package/dest/deployment/broadcast_function.d.ts.map +0 -1
  208. package/dest/deployment/broadcast_function.js +0 -74
  209. package/src/account/interface.ts +0 -25
  210. package/src/contract/deploy_sent_tx.ts +0 -75
  211. package/src/contract/protocol_contracts.ts +0 -35
  212. package/src/contract/sent_tx.ts +0 -129
  213. package/src/contract/unsafe_contract.ts +0 -19
  214. package/src/deployment/broadcast_function.ts +0 -148
@@ -2,15 +2,13 @@ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { getInitializer } from '@aztec/stdlib/abi';
3
3
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
4
4
  import { computePartialAddress, getContractClassFromArtifact, getContractInstanceFromInstantiationParams } from '@aztec/stdlib/contract';
5
- import { collectOffchainEffects } from '@aztec/stdlib/tx';
6
- import { mergeExecutionPayloads } from '@aztec/stdlib/tx';
5
+ import { ExecutionPayload, mergeExecutionPayloads } from '@aztec/stdlib/tx';
7
6
  import { publishContractClass } from '../deployment/publish_class.js';
8
7
  import { publishInstance } from '../deployment/publish_instance.js';
9
8
  import { BaseContractInteraction } from './base_contract_interaction.js';
10
9
  import { ContractFunctionInteraction } from './contract_function_interaction.js';
11
- import { DeploySentTx } from './deploy_sent_tx.js';
12
10
  import { getGasLimits } from './get_gas_limits.js';
13
- import { toProfileOptions, toSendOptions, toSimulateOptions } from './interaction_options.js';
11
+ import { NO_WAIT, extractOffchainOutput, toProfileOptions, toSendOptions, toSimulateOptions } from './interaction_options.js';
14
12
  /**
15
13
  * Contract interaction for deployment.
16
14
  * Handles class publication, instance publication, and initialization of the contract.
@@ -20,35 +18,40 @@ import { toProfileOptions, toSendOptions, toSimulateOptions } from './interactio
20
18
  * then technically the contract has already been "created", and all of the contract's
21
19
  * functions (private and utility) can be interacted-with immediately, without any
22
20
  * "deployment tx".
23
- *
24
- * Extends the BaseContractInteraction class.
25
21
  */ export class DeployMethod extends BaseContractInteraction {
26
22
  publicKeys;
27
23
  artifact;
28
24
  postDeployCtor;
29
25
  args;
26
+ extraHashedArgs;
30
27
  /** The contract instance to be deployed. */ instance;
31
28
  /** Constructor function to call. */ constructorArtifact;
32
- constructor(publicKeys, wallet, artifact, postDeployCtor, args = [], constructorNameOrArtifact, authWitnesses = [], capsules = []){
33
- super(wallet, authWitnesses, capsules), this.publicKeys = publicKeys, this.artifact = artifact, this.postDeployCtor = postDeployCtor, this.args = args, this.instance = undefined;
29
+ constructor(publicKeys, wallet, artifact, postDeployCtor, args = [], constructorNameOrArtifact, authWitnesses = [], capsules = [], extraHashedArgs = []){
30
+ super(wallet, authWitnesses, capsules), this.publicKeys = publicKeys, this.artifact = artifact, this.postDeployCtor = postDeployCtor, this.args = args, this.extraHashedArgs = extraHashedArgs, this.instance = undefined;
34
31
  this.constructorArtifact = getInitializer(artifact, constructorNameOrArtifact);
35
32
  }
36
33
  /**
37
34
  * Returns the execution payload that allows this operation to happen on chain.
38
35
  * @param options - Configuration options.
39
36
  * @returns The execution payload for this operation
40
- */ async request(options) {
37
+ */ async request(options = {}) {
41
38
  const publication = await this.getPublicationExecutionPayload(options);
42
39
  if (!options?.skipRegistration) {
43
40
  await this.wallet.registerContract(await this.getInstance(options), this.artifact);
44
41
  }
42
+ const { authWitnesses, capsules } = options;
43
+ // Propagates the included authwitnesses, capsules, and extraHashedArgs
44
+ // potentially baked into the interaction
45
+ const initialExecutionPayload = new ExecutionPayload([], this.authWitnesses.concat(authWitnesses ?? []), this.capsules.concat(capsules ?? []), this.extraHashedArgs);
45
46
  const initialization = await this.getInitializationExecutionPayload(options);
46
47
  const feeExecutionPayload = options?.fee?.paymentMethod ? await options.fee.paymentMethod.getExecutionPayload() : undefined;
47
48
  const finalExecutionPayload = feeExecutionPayload ? mergeExecutionPayloads([
49
+ initialExecutionPayload,
48
50
  feeExecutionPayload,
49
51
  publication,
50
52
  initialization
51
53
  ]) : mergeExecutionPayloads([
54
+ initialExecutionPayload,
52
55
  publication,
53
56
  initialization
54
57
  ]);
@@ -64,6 +67,30 @@ import { toProfileOptions, toSendOptions, toSimulateOptions } from './interactio
64
67
  };
65
68
  }
66
69
  /**
70
+ * Converts DeployOptions to SendOptions, stripping out the returnReceipt flag if present.
71
+ * @param options - Deploy options with wait parameter
72
+ * @returns Send options with wait parameter
73
+ */ convertDeployOptionsToSendOptions(options) {
74
+ return {
75
+ ...toSendOptions({
76
+ ...options,
77
+ wait: options.wait
78
+ })
79
+ };
80
+ }
81
+ /**
82
+ * Converts deploy simulation options into wallet-level simulate options.
83
+ * @param options - The deploy simulation options to convert.
84
+ */ convertDeployOptionsToSimulateOptions(options) {
85
+ return toSimulateOptions(options);
86
+ }
87
+ /**
88
+ * Converts deploy profile options into wallet-level profile options.
89
+ * @param options - The deploy profile options to convert.
90
+ */ convertDeployOptionsToProfileOptions(options) {
91
+ return toProfileOptions(options);
92
+ }
93
+ /**
67
94
  * Adds this contract to the wallet and returns the Contract object.
68
95
  * @param options - Deployment options.
69
96
  */ async register(options) {
@@ -90,12 +117,13 @@ import { toProfileOptions, toSendOptions, toSimulateOptions } from './interactio
90
117
  }
91
118
  // Publish the contract class if it hasn't been published already.
92
119
  if (!options?.skipClassPublication) {
93
- if ((await this.wallet.getContractClassMetadata(contractClass.id)).isContractClassPubliclyRegistered) {
94
- this.log.debug(`Skipping publication of already-registered contract class ${contractClass.id.toString()} for ${instance.address.toString()}`);
95
- } else {
120
+ const classMetadata = await this.wallet.getContractClassMetadata(contractClass.id);
121
+ if (!classMetadata.isContractClassPubliclyRegistered) {
96
122
  this.log.info(`Creating request for publishing contract class ${contractClass.id.toString()} as part of deployment for ${instance.address.toString()}`);
97
123
  const registerContractClassInteraction = await publishContractClass(this.wallet, this.artifact);
98
124
  calls.push(await registerContractClassInteraction.request());
125
+ } else {
126
+ this.log.debug(`Skipping contract class publication for ${contractClass.id.toString()} as it is already registered`);
99
127
  }
100
128
  }
101
129
  // Publish the contract instance:
@@ -103,7 +131,7 @@ import { toProfileOptions, toSendOptions, toSimulateOptions } from './interactio
103
131
  // TODO(https://github.com/AztecProtocol/aztec-packages/issues/15596):
104
132
  // Read the artifact, and if there are no public functions, warn the caller that publication of the
105
133
  // contract instance is not necessary (until such time as they wish to update the instance (i.e. change its class_id)).
106
- const deploymentInteraction = await publishInstance(this.wallet, instance);
134
+ const deploymentInteraction = publishInstance(this.wallet, instance);
107
135
  calls.push(await deploymentInteraction.request());
108
136
  }
109
137
  return mergeExecutionPayloads(calls);
@@ -121,21 +149,36 @@ import { toProfileOptions, toSendOptions, toSimulateOptions } from './interactio
121
149
  }
122
150
  return mergeExecutionPayloads(executionsPayloads);
123
151
  }
124
- /**
125
- * Send a contract deployment transaction (initialize and/or publish) using the provided options.
126
- * This function extends the 'send' method from the ContractFunctionInteraction class,
127
- * allowing us to send a transaction specifically for contract deployment.
128
- *
129
- * @param options - An object containing various deployment options such as contractAddressSalt and from.
130
- * @returns A SentTx object that returns the receipt and the deployed contract instance.
131
- */ send(options) {
132
- const sendTx = async ()=>{
133
- const executionPayload = await this.request(this.convertDeployOptionsToRequestOptions(options));
134
- const sendOptions = toSendOptions(options);
135
- return this.wallet.sendTx(executionPayload, sendOptions);
152
+ // eslint-disable-next-line jsdoc/require-jsdoc
153
+ async send(options) {
154
+ const executionPayload = await this.request(this.convertDeployOptionsToRequestOptions(options));
155
+ const sendOptions = this.convertDeployOptionsToSendOptions(options);
156
+ if (options.wait === NO_WAIT) {
157
+ const result = await this.wallet.sendTx(executionPayload, sendOptions);
158
+ this.log.debug(`Sent deployment tx ${result.txHash.hash} of ${this.artifact.name} contract`);
159
+ return result;
160
+ }
161
+ const { receipt, ...offchainOutput } = await this.wallet.sendTx(executionPayload, sendOptions);
162
+ this.log.debug(`Deployed ${this.artifact.name} contract in tx ${receipt.txHash}`);
163
+ // Attach contract instance
164
+ const instance = await this.getInstance(options);
165
+ const contract = this.postDeployCtor(instance, this.wallet);
166
+ // Return full receipt if requested, otherwise just the contract
167
+ if (options.wait && typeof options.wait === 'object' && options.wait.returnReceipt) {
168
+ return {
169
+ receipt: {
170
+ ...receipt,
171
+ contract,
172
+ instance
173
+ },
174
+ ...offchainOutput
175
+ };
176
+ }
177
+ return {
178
+ contract,
179
+ receipt,
180
+ ...offchainOutput
136
181
  };
137
- this.log.debug(`Sent deployment tx of ${this.artifact.name} contract`);
138
- return new DeploySentTx(this.wallet, sendTx, this.postDeployCtor, ()=>this.getInstance(options));
139
182
  }
140
183
  /**
141
184
  * Builds the contract instance and returns it.
@@ -162,12 +205,12 @@ import { toProfileOptions, toSendOptions, toSimulateOptions } from './interactio
162
205
  * estimations (if requested via options), execution statistics and emitted offchain effects
163
206
  */ async simulate(options) {
164
207
  const executionPayload = await this.request(this.convertDeployOptionsToRequestOptions(options));
165
- const simulatedTx = await this.wallet.simulateTx(executionPayload, toSimulateOptions(options));
208
+ const simulatedTx = await this.wallet.simulateTx(executionPayload, this.convertDeployOptionsToSimulateOptions(options));
166
209
  const { gasLimits, teardownGasLimits } = getGasLimits(simulatedTx, options.fee?.estimatedGasPadding);
167
210
  this.log.verbose(`Estimated gas limits for tx: DA=${gasLimits.daGas} L2=${gasLimits.l2Gas} teardownDA=${teardownGasLimits.daGas} teardownL2=${teardownGasLimits.l2Gas}`);
168
211
  return {
169
212
  stats: simulatedTx.stats,
170
- offchainEffects: collectOffchainEffects(simulatedTx.privateExecutionResult),
213
+ ...extractOffchainOutput(simulatedTx.offchainEffects),
171
214
  result: undefined,
172
215
  estimatedGas: {
173
216
  gasLimits,
@@ -182,11 +225,7 @@ import { toProfileOptions, toSendOptions, toSimulateOptions } from './interactio
182
225
  * @returns An object containing the function return value and profile result.
183
226
  */ async profile(options) {
184
227
  const executionPayload = await this.request(this.convertDeployOptionsToRequestOptions(options));
185
- return await this.wallet.profileTx(executionPayload, {
186
- ...toProfileOptions(options),
187
- profileMode: options.profileMode,
188
- skipProofGeneration: options.skipProofGeneration
189
- });
228
+ return await this.wallet.profileTx(executionPayload, this.convertDeployOptionsToProfileOptions(options));
190
229
  }
191
230
  /** Return this deployment address. */ get address() {
192
231
  return this.instance?.address;
@@ -1,4 +1,4 @@
1
- import { AVM_MAX_PROCESSABLE_L2_GAS } from '@aztec/constants';
1
+ import { MAX_PROCESSABLE_L2_GAS } from '@aztec/constants';
2
2
  /**
3
3
  * Returns suggested total and teardown gas limits for a simulated tx.
4
4
  * @param pad - Percentage to pad the suggested gas limits by, (as decimal, e.g., 0.10 for 10%).
@@ -6,8 +6,8 @@ import { AVM_MAX_PROCESSABLE_L2_GAS } from '@aztec/constants';
6
6
  // Total gas does not use the teardown gas limit, but the actual total gas used by the tx.
7
7
  const gasLimits = simulationResult.gasUsed.totalGas.mul(1 + pad);
8
8
  const teardownGasLimits = simulationResult.gasUsed.teardownGas.mul(1 + pad);
9
- if (gasLimits.l2Gas > AVM_MAX_PROCESSABLE_L2_GAS) {
10
- throw new Error('Transaction consumes more gas than the AVM maximum processable gas');
9
+ if (gasLimits.l2Gas > MAX_PROCESSABLE_L2_GAS) {
10
+ throw new Error('Transaction consumes more l2 gas than the maximum processable gas');
11
11
  }
12
12
  return {
13
13
  gasLimits,
@@ -1,10 +1,12 @@
1
+ import type { Fr } from '@aztec/foundation/curves/bn254';
1
2
  import type { FieldsOf } from '@aztec/foundation/types';
2
3
  import type { AuthWitness } from '@aztec/stdlib/auth-witness';
3
- import type { AztecAddress } from '@aztec/stdlib/aztec-address';
4
+ import { AztecAddress } from '@aztec/stdlib/aztec-address';
4
5
  import type { GasSettings } from '@aztec/stdlib/gas';
5
- import type { Capsule, OffchainEffect, SimulationStats } from '@aztec/stdlib/tx';
6
+ import { type Capsule, type OffchainEffect, type SimulationStats, type TxHash, type TxReceipt } from '@aztec/stdlib/tx';
6
7
  import type { FeePaymentMethod } from '../fee/fee_payment_method.js';
7
8
  import type { ProfileOptions, SendOptions, SimulateOptions } from '../wallet/index.js';
9
+ import type { WaitOpts } from './wait_opts.js';
8
10
  /**
9
11
  * Options used to tweak the simulation and add gas estimation capabilities
10
12
  */
@@ -47,13 +49,48 @@ export type RequestInteractionOptions = {
47
49
  fee?: FeePaymentMethodOption;
48
50
  };
49
51
  /**
50
- * Represents options for calling a (constrained) function in a contract.
52
+ * Constant for explicitly not waiting for transaction confirmation.
53
+ * We use this instead of false to avoid confusion with falsy checks.
54
+ */
55
+ export declare const NO_WAIT: "NO_WAIT";
56
+ /**
57
+ * Type for the NO_WAIT constant.
51
58
  */
52
- export type SendInteractionOptions = RequestInteractionOptions & {
59
+ export type NoWait = typeof NO_WAIT;
60
+ /**
61
+ * Type for wait options in interactions.
62
+ * - NO_WAIT symbol: Don't wait for confirmation, return TxHash immediately
63
+ * - WaitOpts object: Wait with custom options and return receipt/result
64
+ * - undefined: Wait with default options and return receipt/result
65
+ */
66
+ export type InteractionWaitOptions = NoWait | WaitOpts | undefined;
67
+ /**
68
+ * Base options for calling a (constrained) function in a contract, without wait parameter.
69
+ */
70
+ export type SendInteractionOptionsWithoutWait = RequestInteractionOptions & {
53
71
  /** The sender's Aztec address. */
54
72
  from: AztecAddress;
55
73
  /** The fee options for the transaction. */
56
74
  fee?: InteractionFeeOptions;
75
+ /**
76
+ * Additional addresses whose private state and keys should be accessible during execution,
77
+ * beyond the sender's. Required when the transaction needs to access private state or keys
78
+ * belonging to an address other than `from`, e.g. withdrawing from an escrow that holds
79
+ * its own private notes.
80
+ */
81
+ additionalScopes?: AztecAddress[];
82
+ };
83
+ /**
84
+ * Represents options for calling a (constrained) function in a contract.
85
+ */
86
+ export type SendInteractionOptions<W extends InteractionWaitOptions = undefined> = SendInteractionOptionsWithoutWait & {
87
+ /**
88
+ * Whether to wait for the transaction to be mined.
89
+ * - undefined (default): wait with default options and return TxReceipt
90
+ * - WaitOpts object: wait with custom options and return TxReceipt
91
+ * - NO_WAIT: return txHash immediately without waiting
92
+ */
93
+ wait?: W;
57
94
  };
58
95
  /**
59
96
  * Represents the options for simulating a contract function interaction.
@@ -67,8 +104,8 @@ export type SimulateInteractionOptions = Omit<SendInteractionOptions, 'fee'> & {
67
104
  skipTxValidation?: boolean;
68
105
  /** Whether to ensure the fee payer is not empty and has enough balance to pay for the fee. */
69
106
  skipFeeEnforcement?: boolean;
70
- /** Whether to include metadata such as offchain effects and performance statistics (e.g. timing information of the different circuits and oracles) in
71
- * the simulation result, instead of just the return value of the function */
107
+ /** Whether to include metadata such as performance statistics (e.g. timing information of the different circuits and oracles) and gas estimation
108
+ * in the simulation result, in addition to the return value and offchain effects */
72
109
  includeMetadata?: boolean;
73
110
  };
74
111
  /**
@@ -80,27 +117,68 @@ export type ProfileInteractionOptions = SimulateInteractionOptions & {
80
117
  /** Whether to generate a Chonk proof or not */
81
118
  skipProofGeneration?: boolean;
82
119
  };
120
+ /** A message emitted during execution or proving, to be delivered offchain. */
121
+ export type OffchainMessage = {
122
+ /** The intended recipient of the message. */
123
+ recipient: AztecAddress;
124
+ /** The message payload (typically encrypted). */
125
+ payload: Fr[];
126
+ /** The contract that emitted the message. */
127
+ contractAddress: AztecAddress;
128
+ };
129
+ /** Groups all unproven outputs from private execution that are returned to the client. */
130
+ export type OffchainOutput = {
131
+ /** Raw offchain effects emitted during execution. */
132
+ offchainEffects: OffchainEffect[];
133
+ /** Messages emitted during execution, to be delivered offchain. */
134
+ offchainMessages: OffchainMessage[];
135
+ };
83
136
  /**
84
- * Represents the result type of a simulation.
85
- * By default, it will just be the return value of the simulated function
86
- * If `includeMetadata` is set to true in `SimulateInteractionOptions` on the input of `simulate(...)`,
87
- * it will provide extra information.
137
+ * Splits an array of offchain effects into decoded offchain messages and remaining effects.
138
+ * Effects whose data starts with `OFFCHAIN_MESSAGE_IDENTIFIER` are parsed as messages and removed
139
+ * from the effects array.
88
140
  */
89
- export type SimulationReturn<T extends boolean | undefined> = T extends true ? {
90
- /** Additional stats about the simulation */
91
- stats: SimulationStats;
92
- /** Offchain effects generated during the simulation */
93
- offchainEffects: OffchainEffect[];
94
- /** Return value of the function */
141
+ export declare function extractOffchainOutput(effects: OffchainEffect[]): OffchainOutput;
142
+ /**
143
+ * Returns an empty `OffchainOutput` (no effects, no messages).
144
+ */
145
+ export declare function emptyOffchainOutput(): OffchainOutput;
146
+ /**
147
+ * Represents the result of a simulation.
148
+ * Always includes the return value and offchain output.
149
+ * When `includeMetadata` or `fee.estimateGas` is set, also includes stats and gas estimation.
150
+ */
151
+ export type SimulationResult = {
152
+ /** Return value of the function */
95
153
  result: any;
96
- /** Gas estimation results */
97
- estimatedGas: Pick<GasSettings, 'gasLimits' | 'teardownGasLimits'>;
98
- } : any;
154
+ /** Additional stats about the simulation. Present when `includeMetadata` is set. */
155
+ stats?: SimulationStats;
156
+ /** Gas estimation results. Present when `includeMetadata` or `fee.estimateGas` is set. */
157
+ estimatedGas?: Pick<GasSettings, 'gasLimits' | 'teardownGasLimits'>;
158
+ } & OffchainOutput;
159
+ /** Result of sendTx when not waiting for mining. */
160
+ export type TxSendResultImmediate = {
161
+ /** The hash of the sent transaction. */
162
+ txHash: TxHash;
163
+ } & OffchainOutput;
164
+ /** Result of sendTx when waiting for mining. */
165
+ export type TxSendResultMined<TReturn = TxReceipt> = {
166
+ /** The transaction receipt. */
167
+ receipt: TReturn;
168
+ } & OffchainOutput;
169
+ /**
170
+ * Represents the result type of sending a transaction.
171
+ * If `wait` is NO_WAIT, returns TxSendResultImmediate.
172
+ * Otherwise returns TxSendResultMined.
173
+ */
174
+ export type SendReturn<T extends InteractionWaitOptions, TReturn = TxReceipt> = T extends NoWait ? TxSendResultImmediate : TxSendResultMined<TReturn>;
99
175
  /**
100
176
  * Transforms and cleans up the higher level SendInteractionOptions defined by the interaction into
101
177
  * SendOptions, which are the ones that can be serialized and forwarded to the wallet
178
+ * @param options - The send interaction options with optional wait parameter
179
+ * @returns The send options to forward to the wallet
102
180
  */
103
- export declare function toSendOptions(options: SendInteractionOptions): SendOptions;
181
+ export declare function toSendOptions<W extends InteractionWaitOptions = undefined>(options: SendInteractionOptions<W>): SendOptions<W>;
104
182
  /**
105
183
  * Transforms and cleans up the higher level SimulateInteractionOptions defined by the interaction into
106
184
  * SimulateOptions, which are the ones that can be serialized and forwarded to the wallet
@@ -111,4 +189,4 @@ export declare function toSimulateOptions(options: SimulateInteractionOptions):
111
189
  * ProfileOptions, which are the ones that can be serialized and forwarded to the wallet
112
190
  */
113
191
  export declare function toProfileOptions(options: ProfileInteractionOptions): ProfileOptions;
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb25fb3B0aW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0L2ludGVyYWN0aW9uX29wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdkY7O0dBRUc7QUFDSCxNQUFNLE1BQU0sb0JBQW9CLEdBQUc7SUFDakMsa0hBQWtIO0lBQ2xILFdBQVcsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUN0QixxSEFBcUg7SUFDckgsbUJBQW1CLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDOUIsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRztJQUNuQyxxREFBcUQ7SUFDckQsYUFBYSxDQUFDLEVBQUUsZ0JBQWdCLENBQUM7Q0FDbEMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sTUFBTSxpQkFBaUIsR0FBRztJQUM5Qix1QkFBdUI7SUFDdkIsV0FBVyxDQUFDLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0NBQzlDLENBQUM7QUFFRixvQ0FBb0M7QUFDcEMsTUFBTSxNQUFNLHFCQUFxQixHQUFHLGlCQUFpQixHQUFHLHNCQUFzQixDQUFDO0FBRS9FLHlEQUF5RDtBQUN6RCxNQUFNLE1BQU0sK0JBQStCLEdBQUcscUJBQXFCLEdBQUcsb0JBQW9CLENBQUM7QUFFM0Y7OztHQUdHO0FBQ0gsTUFBTSxNQUFNLHlCQUF5QixHQUFHO0lBQ3RDLDZDQUE2QztJQUM3QyxhQUFhLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUM5Qiw2Q0FBNkM7SUFDN0MsUUFBUSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDckIsNkRBQTZEO0lBQzdELEdBQUcsQ0FBQyxFQUFFLHNCQUFzQixDQUFDO0NBQzlCLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sTUFBTSxzQkFBc0IsR0FBRyx5QkFBeUIsR0FBRztJQUMvRCxrQ0FBa0M7SUFDbEMsSUFBSSxFQUFFLFlBQVksQ0FBQztJQUNuQiwyQ0FBMkM7SUFDM0MsR0FBRyxDQUFDLEVBQUUscUJBQXFCLENBQUM7Q0FDN0IsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCxNQUFNLE1BQU0sMEJBQTBCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxHQUFHO0lBQzdFLDJDQUEyQztJQUMzQyxHQUFHLENBQUMsRUFBRSwrQkFBK0IsQ0FBQztJQUN0Qyw4SEFBOEg7SUFDOUgsZ0JBQWdCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFDM0IsOEZBQThGO0lBQzlGLGtCQUFrQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQzdCO2lGQUM2RTtJQUM3RSxlQUFlLENBQUMsRUFBRSxPQUFPLENBQUM7Q0FDM0IsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxNQUFNLHlCQUF5QixHQUFHLDBCQUEwQixHQUFHO0lBQ25FLHFFQUFxRTtJQUNyRSxXQUFXLEVBQUUsT0FBTyxHQUFHLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztJQUNsRCwrQ0FBK0M7SUFDL0MsbUJBQW1CLENBQUMsRUFBRSxPQUFPLENBQUM7Q0FDL0IsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSxNQUFNLGdCQUFnQixDQUFDLENBQUMsU0FBUyxPQUFPLEdBQUcsU0FBUyxJQUFJLENBQUMsU0FBUyxJQUFJLEdBQ3hFO0lBQ0UsNENBQTRDO0lBQzVDLEtBQUssRUFBRSxlQUFlLENBQUM7SUFDdkIsdURBQXVEO0lBQ3ZELGVBQWUsRUFBRSxjQUFjLEVBQUUsQ0FBQztJQUNsQyxvQ0FBb0M7SUFDcEMsTUFBTSxFQUFFLEdBQUcsQ0FBQztJQUNaLDZCQUE2QjtJQUM3QixZQUFZLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEdBQUcsbUJBQW1CLENBQUMsQ0FBQztDQUNwRSxHQUNELEdBQUcsQ0FBQztBQUVSOzs7R0FHRztBQUNILHdCQUFnQixhQUFhLENBQUMsT0FBTyxFQUFFLHNCQUFzQixHQUFHLFdBQVcsQ0FhMUU7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IsaUJBQWlCLENBQUMsT0FBTyxFQUFFLDBCQUEwQixHQUFHLGVBQWUsQ0FldEY7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLHlCQUF5QixHQUFHLGNBQWMsQ0FNbkYifQ==
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb25fb3B0aW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0L2ludGVyYWN0aW9uX29wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFDTCxLQUFLLE9BQU8sRUFFWixLQUFLLGNBQWMsRUFDbkIsS0FBSyxlQUFlLEVBQ3BCLEtBQUssTUFBTSxFQUNYLEtBQUssU0FBUyxFQUNmLE1BQU0sa0JBQWtCLENBQUM7QUFFMUIsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZGLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9DOztHQUVHO0FBQ0gsTUFBTSxNQUFNLG9CQUFvQixHQUFHO0lBQ2pDLGtIQUFrSDtJQUNsSCxXQUFXLENBQUMsRUFBRSxPQUFPLENBQUM7SUFDdEIscUhBQXFIO0lBQ3JILG1CQUFtQixDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQzlCLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLE1BQU0sc0JBQXNCLEdBQUc7SUFDbkMscURBQXFEO0lBQ3JELGFBQWEsQ0FBQyxFQUFFLGdCQUFnQixDQUFDO0NBQ2xDLENBQUM7QUFFRjs7O0dBR0c7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
@@ -1 +1 @@
1
- {"version":3,"file":"interaction_options.d.ts","sourceRoot":"","sources":["../../src/contract/interaction_options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interaction_options.d.ts","sourceRoot":"","sources":["../../src/contract/interaction_options.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,45 @@
1
+ import { AztecAddress } from '@aztec/stdlib/aztec-address';
2
+ import { OFFCHAIN_MESSAGE_IDENTIFIER } from '@aztec/stdlib/tx';
3
+ /**
4
+ * Constant for explicitly not waiting for transaction confirmation.
5
+ * We use this instead of false to avoid confusion with falsy checks.
6
+ */ export const NO_WAIT = 'NO_WAIT';
7
+ /**
8
+ * Splits an array of offchain effects into decoded offchain messages and remaining effects.
9
+ * Effects whose data starts with `OFFCHAIN_MESSAGE_IDENTIFIER` are parsed as messages and removed
10
+ * from the effects array.
11
+ */ export function extractOffchainOutput(effects) {
12
+ const offchainEffects = [];
13
+ const offchainMessages = [];
14
+ for (const effect of effects){
15
+ if (effect.data.length >= 2 && effect.data[0].equals(OFFCHAIN_MESSAGE_IDENTIFIER)) {
16
+ offchainMessages.push({
17
+ recipient: AztecAddress.fromField(effect.data[1]),
18
+ payload: effect.data.slice(2),
19
+ contractAddress: effect.contractAddress
20
+ });
21
+ } else {
22
+ offchainEffects.push(effect);
23
+ }
24
+ }
25
+ return {
26
+ offchainEffects,
27
+ offchainMessages
28
+ };
29
+ }
30
+ /**
31
+ * Returns an empty `OffchainOutput` (no effects, no messages).
32
+ */ export function emptyOffchainOutput() {
33
+ return {
34
+ offchainEffects: [],
35
+ offchainMessages: []
36
+ };
37
+ }
1
38
  /**
2
39
  * Transforms and cleans up the higher level SendInteractionOptions defined by the interaction into
3
40
  * SendOptions, which are the ones that can be serialized and forwarded to the wallet
41
+ * @param options - The send interaction options with optional wait parameter
42
+ * @returns The send options to forward to the wallet
4
43
  */ export function toSendOptions(options) {
5
44
  return {
6
45
  ...options,
@@ -12,7 +51,8 @@
12
51
  ...options.fee?.paymentMethod?.getGasSettings(),
13
52
  ...options.fee?.gasSettings
14
53
  }
15
- }
54
+ },
55
+ wait: options.wait
16
56
  };
17
57
  }
18
58
  /**
@@ -0,0 +1,36 @@
1
+ import type { AztecAddressLike, FieldLike } from '../../utils/abi_types.js';
2
+ import type { Wallet } from '../../wallet/wallet.js';
3
+ import { ContractBase, type ContractMethod } from '../contract_base.js';
4
+ import { ContractFunctionInteraction } from '../contract_function_interaction.js';
5
+ export declare class AuthRegistryContract extends ContractBase {
6
+ private constructor();
7
+ static at(wallet: Wallet): AuthRegistryContract;
8
+ methods: {
9
+ /** consume(on_behalf_of: struct, inner_hash: field) */
10
+ consume: ((on_behalf_of: AztecAddressLike, inner_hash: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
11
+ /** is_consumable(on_behalf_of: struct, message_hash: field) */
12
+ is_consumable: ((on_behalf_of: AztecAddressLike, message_hash: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
13
+ /** is_reject_all(on_behalf_of: struct) */
14
+ is_reject_all: ((on_behalf_of: AztecAddressLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
15
+ /** process_message(message_ciphertext: struct, message_context: struct) */
16
+ process_message: ((message_ciphertext: FieldLike[], message_context: {
17
+ tx_hash: FieldLike;
18
+ unique_note_hashes_in_tx: FieldLike[];
19
+ first_nullifier_in_tx: FieldLike;
20
+ recipient: AztecAddressLike;
21
+ }) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
22
+ /** public_dispatch(selector: field) */
23
+ public_dispatch: ((selector: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
24
+ /** set_authorized(message_hash: field, authorize: boolean) */
25
+ set_authorized: ((message_hash: FieldLike, authorize: boolean) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
26
+ /** set_authorized_private(approver: struct, message_hash: field, authorize: boolean) */
27
+ set_authorized_private: ((approver: AztecAddressLike, message_hash: FieldLike, authorize: boolean) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
28
+ /** set_reject_all(reject: boolean) */
29
+ set_reject_all: ((reject: boolean) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
30
+ /** sync_state() */
31
+ sync_state: (() => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
32
+ /** utility_is_consumable(on_behalf_of: struct, message_hash: field) */
33
+ utility_is_consumable: ((on_behalf_of: AztecAddressLike, message_hash: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
34
+ };
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1yZWdpc3RyeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyYWN0L3Byb3RvY29sX2NvbnRyYWN0cy9hdXRoLXJlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sS0FBSyxFQUNWLGdCQUFnQixFQUVoQixTQUFTLEVBR1YsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUE4ZGxGLHFCQUFhLG9CQUFxQixTQUFRLFlBQVk7SUFDcEQsT0FBTyxlQUVOO0lBRUQsT0FBYyxFQUFFLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxvQkFBb0IsQ0FFckQ7SUFFYyxPQUFPLEVBQUU7UUFDdEIsdURBQXVEO1FBQ3ZELE9BQU8sRUFBRSxDQUFDLENBQUMsWUFBWSxFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxTQUFTLEtBQUssMkJBQTJCLENBQUMsR0FDL0YsSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVuQywrREFBK0Q7UUFDL0QsYUFBYSxFQUFFLENBQUMsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLFNBQVMsS0FBSywyQkFBMkIsQ0FBQyxHQUN2RyxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5DLDBDQUEwQztRQUMxQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsS0FBSywyQkFBMkIsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFcEgsMkVBQTJFO1FBQzNFLGVBQWUsRUFBRSxDQUFDLENBQ2hCLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxFQUMvQixlQUFlLEVBQUU7WUFDZixPQUFPLEVBQUUsU0FBUyxDQUFDO1lBQ25CLHdCQUF3QixFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQ3RDLHFCQUFxQixFQUFFLFNBQVMsQ0FBQztZQUNqQyxTQUFTLEVBQUUsZ0JBQWdCLENBQUM7U0FDN0IsS0FDRSwyQkFBMkIsQ0FBQyxHQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5DLHVDQUF1QztRQUN2QyxlQUFlLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxTQUFTLEtBQUssMkJBQTJCLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRTNHLDhEQUE4RDtRQUM5RCxjQUFjLEVBQUUsQ0FBQyxDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sS0FBSywyQkFBMkIsQ0FBQyxHQUM1RixJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5DLHdGQUF3RjtRQUN4RixzQkFBc0IsRUFBRSxDQUFDLENBQ3ZCLFFBQVEsRUFBRSxnQkFBZ0IsRUFDMUIsWUFBWSxFQUFFLFNBQVMsRUFDdkIsU0FBUyxFQUFFLE9BQU8sS0FDZiwyQkFBMkIsQ0FBQyxHQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5DLHNDQUFzQztRQUN0QyxjQUFjLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxPQUFPLEtBQUssMkJBQTJCLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXRHLG1CQUFtQjtRQUNuQixVQUFVLEVBQUUsQ0FBQyxNQUFNLDJCQUEyQixDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVuRix1RUFBdUU7UUFDdkUscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsU0FBUyxLQUFLLDJCQUEyQixDQUFDLEdBQy9HLElBQUksQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDLENBQUM7S0FDcEMsQ0FBQztDQUNIIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-registry.d.ts","sourceRoot":"","sources":["../../../src/contract/protocol_contracts/auth-registry.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,gBAAgB,EAEhB,SAAS,EAGV,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AA8dlF,qBAAa,oBAAqB,SAAQ,YAAY;IACpD,OAAO,eAEN;IAED,OAAc,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,CAErD;IAEc,OAAO,EAAE;QACtB,uDAAuD;QACvD,OAAO,EAAE,CAAC,CAAC,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,SAAS,KAAK,2BAA2B,CAAC,GAC/F,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,+DAA+D;QAC/D,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,SAAS,KAAK,2BAA2B,CAAC,GACvG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,0CAA0C;QAC1C,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,gBAAgB,KAAK,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEpH,2EAA2E;QAC3E,eAAe,EAAE,CAAC,CAChB,kBAAkB,EAAE,SAAS,EAAE,EAC/B,eAAe,EAAE;YACf,OAAO,EAAE,SAAS,CAAC;YACnB,wBAAwB,EAAE,SAAS,EAAE,CAAC;YACtC,qBAAqB,EAAE,SAAS,CAAC;YACjC,SAAS,EAAE,gBAAgB,CAAC;SAC7B,KACE,2BAA2B,CAAC,GAC/B,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,uCAAuC;QACvC,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAE,SAAS,KAAK,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAE3G,8DAA8D;QAC9D,cAAc,EAAE,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,KAAK,2BAA2B,CAAC,GAC5F,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,wFAAwF;QACxF,sBAAsB,EAAE,CAAC,CACvB,QAAQ,EAAE,gBAAgB,EAC1B,YAAY,EAAE,SAAS,EACvB,SAAS,EAAE,OAAO,KACf,2BAA2B,CAAC,GAC/B,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,sCAAsC;QACtC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEtG,mBAAmB;QACnB,UAAU,EAAE,CAAC,MAAM,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnF,uEAAuE;QACvE,qBAAqB,EAAE,CAAC,CAAC,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,SAAS,KAAK,2BAA2B,CAAC,GAC/G,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;KACpC,CAAC;CACH"}