@aztec-labs/aztec.js 6.0.0-nightly.20260829

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 (275) hide show
  1. package/README.md +44 -0
  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 +49 -0
  6. package/dest/account/account_contract.d.ts.map +1 -0
  7. package/dest/account/account_contract.js +20 -0
  8. package/dest/account/index.d.ts +11 -0
  9. package/dest/account/index.d.ts.map +1 -0
  10. package/dest/account/index.js +6 -0
  11. package/dest/api/abi.d.ts +4 -0
  12. package/dest/api/abi.d.ts.map +1 -0
  13. package/dest/api/abi.js +1 -0
  14. package/dest/api/account.d.ts +5 -0
  15. package/dest/api/account.d.ts.map +1 -0
  16. package/dest/api/account.js +3 -0
  17. package/dest/api/addresses.d.ts +4 -0
  18. package/dest/api/addresses.d.ts.map +1 -0
  19. package/dest/api/addresses.js +3 -0
  20. package/dest/api/authorization.d.ts +5 -0
  21. package/dest/api/authorization.d.ts.map +1 -0
  22. package/dest/api/authorization.js +4 -0
  23. package/dest/api/block.d.ts +3 -0
  24. package/dest/api/block.d.ts.map +1 -0
  25. package/dest/api/block.js +2 -0
  26. package/dest/api/contract.d.ts +48 -0
  27. package/dest/api/contract.d.ts.map +1 -0
  28. package/dest/api/contract.js +46 -0
  29. package/dest/api/crypto.d.ts +2 -0
  30. package/dest/api/crypto.d.ts.map +1 -0
  31. package/dest/api/crypto.js +1 -0
  32. package/dest/api/deployment.d.ts +4 -0
  33. package/dest/api/deployment.d.ts.map +1 -0
  34. package/dest/api/deployment.js +3 -0
  35. package/dest/api/eth_address.d.ts +2 -0
  36. package/dest/api/eth_address.d.ts.map +1 -0
  37. package/dest/api/eth_address.js +1 -0
  38. package/dest/api/ethereum.d.ts +2 -0
  39. package/dest/api/ethereum.d.ts.map +1 -0
  40. package/dest/api/ethereum.js +1 -0
  41. package/dest/api/event_cursor.d.ts +44 -0
  42. package/dest/api/event_cursor.d.ts.map +1 -0
  43. package/dest/api/event_cursor.js +42 -0
  44. package/dest/api/events.d.ts +36 -0
  45. package/dest/api/events.d.ts.map +1 -0
  46. package/dest/api/events.js +59 -0
  47. package/dest/api/fee.d.ts +6 -0
  48. package/dest/api/fee.d.ts.map +1 -0
  49. package/dest/api/fee.js +4 -0
  50. package/dest/api/fee_testing.d.ts +2 -0
  51. package/dest/api/fee_testing.d.ts.map +1 -0
  52. package/dest/api/fee_testing.js +1 -0
  53. package/dest/api/fields.d.ts +4 -0
  54. package/dest/api/fields.d.ts.map +1 -0
  55. package/dest/api/fields.js +3 -0
  56. package/dest/api/keys.d.ts +4 -0
  57. package/dest/api/keys.d.ts.map +1 -0
  58. package/dest/api/keys.js +3 -0
  59. package/dest/api/log.d.ts +3 -0
  60. package/dest/api/log.d.ts.map +1 -0
  61. package/dest/api/log.js +2 -0
  62. package/dest/api/messaging.d.ts +3 -0
  63. package/dest/api/messaging.d.ts.map +1 -0
  64. package/dest/api/messaging.js +2 -0
  65. package/dest/api/node.d.ts +25 -0
  66. package/dest/api/node.d.ts.map +1 -0
  67. package/dest/api/node.js +22 -0
  68. package/dest/api/note.d.ts +2 -0
  69. package/dest/api/note.d.ts.map +1 -0
  70. package/dest/api/note.js +1 -0
  71. package/dest/api/protocol.d.ts +6 -0
  72. package/dest/api/protocol.d.ts.map +1 -0
  73. package/dest/api/protocol.js +5 -0
  74. package/dest/api/trees.d.ts +3 -0
  75. package/dest/api/trees.d.ts.map +1 -0
  76. package/dest/api/trees.js +2 -0
  77. package/dest/api/tx.d.ts +3 -0
  78. package/dest/api/tx.d.ts.map +1 -0
  79. package/dest/api/tx.js +1 -0
  80. package/dest/api/utils.d.ts +13 -0
  81. package/dest/api/utils.d.ts.map +1 -0
  82. package/dest/api/utils.js +12 -0
  83. package/dest/api/wallet.d.ts +8 -0
  84. package/dest/api/wallet.d.ts.map +1 -0
  85. package/dest/api/wallet.js +7 -0
  86. package/dest/authorization/call_authorization_request.d.ts +46 -0
  87. package/dest/authorization/call_authorization_request.d.ts.map +1 -0
  88. package/dest/authorization/call_authorization_request.js +72 -0
  89. package/dest/contract/base_contract_interaction.d.ts +32 -0
  90. package/dest/contract/base_contract_interaction.d.ts.map +1 -0
  91. package/dest/contract/base_contract_interaction.js +24 -0
  92. package/dest/contract/batch_call.d.ts +27 -0
  93. package/dest/contract/batch_call.d.ts.map +1 -0
  94. package/dest/contract/batch_call.js +152 -0
  95. package/dest/contract/checker.d.ts +11 -0
  96. package/dest/contract/checker.d.ts.map +1 -0
  97. package/dest/contract/checker.js +107 -0
  98. package/dest/contract/contract.d.ts +33 -0
  99. package/dest/contract/contract.d.ts.map +1 -0
  100. package/dest/contract/contract.js +36 -0
  101. package/dest/contract/contract_base.d.ts +51 -0
  102. package/dest/contract/contract_base.d.ts.map +1 -0
  103. package/dest/contract/contract_base.js +38 -0
  104. package/dest/contract/contract_function_interaction.d.ts +67 -0
  105. package/dest/contract/contract_function_interaction.d.ts.map +1 -0
  106. package/dest/contract/contract_function_interaction.js +218 -0
  107. package/dest/contract/deploy_method.d.ts +433 -0
  108. package/dest/contract/deploy_method.d.ts.map +1 -0
  109. package/dest/contract/deploy_method.js +471 -0
  110. package/dest/contract/fastforward_contract_update.d.ts +25 -0
  111. package/dest/contract/fastforward_contract_update.d.ts.map +1 -0
  112. package/dest/contract/fastforward_contract_update.js +57 -0
  113. package/dest/contract/interaction_options.d.ts +213 -0
  114. package/dest/contract/interaction_options.d.ts.map +1 -0
  115. package/dest/contract/interaction_options.js +87 -0
  116. package/dest/contract/protocol_contracts/contract-class-registry.d.ts +18 -0
  117. package/dest/contract/protocol_contracts/contract-class-registry.d.ts.map +1 -0
  118. package/dest/contract/protocol_contracts/contract-class-registry.js +137 -0
  119. package/dest/contract/protocol_contracts/contract-instance-registry.d.ts +25 -0
  120. package/dest/contract/protocol_contracts/contract-instance-registry.d.ts.map +1 -0
  121. package/dest/contract/protocol_contracts/contract-instance-registry.js +366 -0
  122. package/dest/contract/protocol_contracts/fee-juice.d.ts +24 -0
  123. package/dest/contract/protocol_contracts/fee-juice.d.ts.map +1 -0
  124. package/dest/contract/protocol_contracts/fee-juice.js +383 -0
  125. package/dest/contract/wait_for_proven.d.ts +18 -0
  126. package/dest/contract/wait_for_proven.d.ts.map +1 -0
  127. package/dest/contract/wait_for_proven.js +17 -0
  128. package/dest/contract/wait_opts.d.ts +21 -0
  129. package/dest/contract/wait_opts.d.ts.map +1 -0
  130. package/dest/contract/wait_opts.js +5 -0
  131. package/dest/deployment/contract_deployer.d.ts +28 -0
  132. package/dest/deployment/contract_deployer.d.ts.map +1 -0
  133. package/dest/deployment/contract_deployer.js +35 -0
  134. package/dest/deployment/publish_class.d.ts +6 -0
  135. package/dest/deployment/publish_class.d.ts.map +1 -0
  136. package/dest/deployment/publish_class.js +17 -0
  137. package/dest/deployment/publish_instance.d.ts +10 -0
  138. package/dest/deployment/publish_instance.d.ts.map +1 -0
  139. package/dest/deployment/publish_instance.js +11 -0
  140. package/dest/ethereum/portal_manager.d.ts +146 -0
  141. package/dest/ethereum/portal_manager.d.ts.map +1 -0
  142. package/dest/ethereum/portal_manager.js +415 -0
  143. package/dest/fee/fee_juice_payment_method_with_claim.d.ts +23 -0
  144. package/dest/fee/fee_juice_payment_method_with_claim.d.ts.map +1 -0
  145. package/dest/fee/fee_juice_payment_method_with_claim.js +46 -0
  146. package/dest/fee/fee_payment_method.d.ts +26 -0
  147. package/dest/fee/fee_payment_method.d.ts.map +1 -0
  148. package/dest/fee/fee_payment_method.js +3 -0
  149. package/dest/fee/private_fee_payment_method.d.ts +69 -0
  150. package/dest/fee/private_fee_payment_method.d.ts.map +1 -0
  151. package/dest/fee/private_fee_payment_method.js +122 -0
  152. package/dest/fee/public_fee_payment_method.d.ts +59 -0
  153. package/dest/fee/public_fee_payment_method.d.ts.map +1 -0
  154. package/dest/fee/public_fee_payment_method.js +116 -0
  155. package/dest/fee/sponsored_fee_payment.d.ts +17 -0
  156. package/dest/fee/sponsored_fee_payment.d.ts.map +1 -0
  157. package/dest/fee/sponsored_fee_payment.js +33 -0
  158. package/dest/scripts/generate_protocol_contract_types.d.ts +2 -0
  159. package/dest/scripts/generate_protocol_contract_types.d.ts.map +1 -0
  160. package/dest/scripts/generate_protocol_contract_types.js +128 -0
  161. package/dest/test/fixtures.d.ts +13 -0
  162. package/dest/test/fixtures.d.ts.map +1 -0
  163. package/dest/test/fixtures.js +185 -0
  164. package/dest/utils/abi_types.d.ts +32 -0
  165. package/dest/utils/abi_types.d.ts.map +1 -0
  166. package/dest/utils/abi_types.js +1 -0
  167. package/dest/utils/authwit.d.ts +119 -0
  168. package/dest/utils/authwit.d.ts.map +1 -0
  169. package/dest/utils/authwit.js +266 -0
  170. package/dest/utils/cross_chain.d.ts +28 -0
  171. package/dest/utils/cross_chain.d.ts.map +1 -0
  172. package/dest/utils/cross_chain.js +26 -0
  173. package/dest/utils/fee_juice.d.ts +8 -0
  174. package/dest/utils/fee_juice.d.ts.map +1 -0
  175. package/dest/utils/fee_juice.js +10 -0
  176. package/dest/utils/field_compressed_string.d.ts +17 -0
  177. package/dest/utils/field_compressed_string.d.ts.map +1 -0
  178. package/dest/utils/field_compressed_string.js +15 -0
  179. package/dest/utils/node.d.ts +24 -0
  180. package/dest/utils/node.d.ts.map +1 -0
  181. package/dest/utils/node.js +80 -0
  182. package/dest/utils/pub_key.d.ts +9 -0
  183. package/dest/utils/pub_key.d.ts.map +1 -0
  184. package/dest/utils/pub_key.js +8 -0
  185. package/dest/wallet/account_entrypoint_meta_payment_method.d.ts +33 -0
  186. package/dest/wallet/account_entrypoint_meta_payment_method.d.ts.map +1 -0
  187. package/dest/wallet/account_entrypoint_meta_payment_method.js +63 -0
  188. package/dest/wallet/account_manager.d.ts +73 -0
  189. package/dest/wallet/account_manager.d.ts.map +1 -0
  190. package/dest/wallet/account_manager.js +102 -0
  191. package/dest/wallet/capabilities.d.ts +456 -0
  192. package/dest/wallet/capabilities.d.ts.map +1 -0
  193. package/dest/wallet/capabilities.js +3 -0
  194. package/dest/wallet/deploy_account_method.d.ts +97 -0
  195. package/dest/wallet/deploy_account_method.d.ts.map +1 -0
  196. package/dest/wallet/deploy_account_method.js +127 -0
  197. package/dest/wallet/index.d.ts +5 -0
  198. package/dest/wallet/index.d.ts.map +1 -0
  199. package/dest/wallet/index.js +4 -0
  200. package/dest/wallet/tx_simulation_result_with_app_offset.d.ts +40 -0
  201. package/dest/wallet/tx_simulation_result_with_app_offset.d.ts.map +1 -0
  202. package/dest/wallet/tx_simulation_result_with_app_offset.js +65 -0
  203. package/dest/wallet/wallet.d.ts +1451 -0
  204. package/dest/wallet/wallet.d.ts.map +1 -0
  205. package/dest/wallet/wallet.js +430 -0
  206. package/package.json +138 -0
  207. package/src/account/account.ts +72 -0
  208. package/src/account/account_contract.ts +80 -0
  209. package/src/account/index.ts +12 -0
  210. package/src/api/README.md +7 -0
  211. package/src/api/abi.ts +42 -0
  212. package/src/api/account.ts +12 -0
  213. package/src/api/addresses.ts +3 -0
  214. package/src/api/authorization.ts +15 -0
  215. package/src/api/block.ts +2 -0
  216. package/src/api/contract.ts +86 -0
  217. package/src/api/crypto.ts +1 -0
  218. package/src/api/deployment.ts +3 -0
  219. package/src/api/eth_address.ts +1 -0
  220. package/src/api/ethereum.ts +10 -0
  221. package/src/api/event_cursor.ts +60 -0
  222. package/src/api/events.ts +79 -0
  223. package/src/api/fee.ts +5 -0
  224. package/src/api/fee_testing.ts +1 -0
  225. package/src/api/fields.ts +3 -0
  226. package/src/api/keys.ts +8 -0
  227. package/src/api/log.ts +2 -0
  228. package/src/api/messaging.ts +2 -0
  229. package/src/api/node.ts +30 -0
  230. package/src/api/note.ts +1 -0
  231. package/src/api/protocol.ts +6 -0
  232. package/src/api/trees.ts +2 -0
  233. package/src/api/tx.ts +20 -0
  234. package/src/api/utils.ts +14 -0
  235. package/src/api/wallet.ts +83 -0
  236. package/src/authorization/call_authorization_request.ts +93 -0
  237. package/src/contract/base_contract_interaction.ts +62 -0
  238. package/src/contract/batch_call.ts +188 -0
  239. package/src/contract/checker.ts +122 -0
  240. package/src/contract/contract.ts +52 -0
  241. package/src/contract/contract_base.ts +73 -0
  242. package/src/contract/contract_function_interaction.ts +297 -0
  243. package/src/contract/deploy_method.ts +877 -0
  244. package/src/contract/fastforward_contract_update.ts +71 -0
  245. package/src/contract/interaction_options.ts +301 -0
  246. package/src/contract/protocol_contracts/contract-class-registry.ts +104 -0
  247. package/src/contract/protocol_contracts/contract-instance-registry.ts +241 -0
  248. package/src/contract/protocol_contracts/fee-juice.ts +257 -0
  249. package/src/contract/wait_for_proven.ts +43 -0
  250. package/src/contract/wait_opts.ts +26 -0
  251. package/src/deployment/contract_deployer.ts +40 -0
  252. package/src/deployment/publish_class.ts +34 -0
  253. package/src/deployment/publish_instance.ts +24 -0
  254. package/src/ethereum/portal_manager.ts +539 -0
  255. package/src/fee/fee_juice_payment_method_with_claim.ts +63 -0
  256. package/src/fee/fee_payment_method.ts +26 -0
  257. package/src/fee/private_fee_payment_method.ts +145 -0
  258. package/src/fee/public_fee_payment_method.ts +145 -0
  259. package/src/fee/sponsored_fee_payment.ts +45 -0
  260. package/src/scripts/generate_protocol_contract_types.ts +160 -0
  261. package/src/test/fixtures.ts +126 -0
  262. package/src/utils/abi_types.ts +32 -0
  263. package/src/utils/authwit.ts +327 -0
  264. package/src/utils/cross_chain.ts +55 -0
  265. package/src/utils/fee_juice.ts +14 -0
  266. package/src/utils/field_compressed_string.ts +27 -0
  267. package/src/utils/node.ts +110 -0
  268. package/src/utils/pub_key.ts +12 -0
  269. package/src/wallet/account_entrypoint_meta_payment_method.ts +76 -0
  270. package/src/wallet/account_manager.ts +164 -0
  271. package/src/wallet/capabilities.ts +505 -0
  272. package/src/wallet/deploy_account_method.ts +234 -0
  273. package/src/wallet/index.ts +4 -0
  274. package/src/wallet/tx_simulation_result_with_app_offset.ts +100 -0
  275. package/src/wallet/wallet.ts +668 -0
@@ -0,0 +1,213 @@
1
+ import type { Fr } from '@aztec-labs/foundation/curves/bn254';
2
+ import type { FieldsOf } from '@aztec-labs/foundation/types';
3
+ import type { AuthWitness } from '@aztec-labs/stdlib/auth-witness';
4
+ import { AztecAddress } from '@aztec-labs/stdlib/aztec-address';
5
+ import type { GasSettings, GasUsed, ManaUsageEstimate } from '@aztec-labs/stdlib/gas';
6
+ import { type Capsule, type OffchainEffect, type SimulationOverrides, type SimulationStats, type TxHash, type TxReceipt } from '@aztec-labs/stdlib/tx';
7
+ import type { FeePaymentMethod } from '../fee/fee_payment_method.js';
8
+ import type { ProfileOptions, SendOptions, SimulateOptions } from '../wallet/index.js';
9
+ import type { WaitOpts } from './wait_opts.js';
10
+ /**
11
+ * Interactions allow configuring a custom fee payment method that gets bundled with the transaction before
12
+ * sending it to the wallet
13
+ */
14
+ export type FeePaymentMethodOption = {
15
+ /** Fee payment method to embed in the interaction */
16
+ paymentMethod?: FeePaymentMethod;
17
+ };
18
+ /**
19
+ * User-defined partial gas settings for the interaction. This type is completely optional since
20
+ * the wallet will fill in the missing options
21
+ */
22
+ export type GasSettingsOption = {
23
+ /** The gas settings */
24
+ gasSettings?: Partial<FieldsOf<GasSettings>>;
25
+ /**
26
+ * Assumed network congestion level for fee prediction. Controls how aggressively the wallet
27
+ * estimates future fees: None assumes empty blocks, Target assumes steady-state usage,
28
+ * and Limit assumes blocks at maximum capacity. Higher estimates produce higher fee predictions,
29
+ * reducing the risk of underpriced transactions during congestion spikes.
30
+ * Defaults to Limit (worst case) when not specified.
31
+ */
32
+ congestionEstimate?: ManaUsageEstimate;
33
+ };
34
+ /** Fee options as set by a user. */
35
+ export type InteractionFeeOptions = GasSettingsOption & FeePaymentMethodOption;
36
+ /**
37
+ * Represents the options to configure a request from a contract interaction.
38
+ * Allows specifying additional auth witnesses and capsules to use during execution
39
+ */
40
+ export type RequestInteractionOptions = {
41
+ /** Extra authwits to use during execution */
42
+ authWitnesses?: AuthWitness[];
43
+ /** Extra capsules to use during execution */
44
+ capsules?: Capsule[];
45
+ /** Fee payment method to embed in the interaction request */
46
+ fee?: FeePaymentMethodOption;
47
+ };
48
+ /**
49
+ * Constant for explicitly not waiting for transaction confirmation.
50
+ * We use this instead of false to avoid confusion with falsy checks.
51
+ */
52
+ export declare const NO_WAIT: "NO_WAIT";
53
+ /**
54
+ * Type for the NO_WAIT constant.
55
+ */
56
+ export type NoWait = typeof NO_WAIT;
57
+ /**
58
+ * Constant for explicitly opting out of account contract mediation.
59
+ * When used as the `from` parameter, the wallet executes the payload directly
60
+ * via the DefaultEntrypoint without wrapping it in an account contract entrypoint.
61
+ * The app is responsible for assembling the complete execution payload, including
62
+ * any entrypoint wrapping (e.g. multicall) if needed. This will result in the
63
+ * first call of the chain receiving msg_sender as Option::none
64
+ */
65
+ export declare const NO_FROM: "NO_FROM";
66
+ /**
67
+ * Type for the NO_FROM constant.
68
+ */
69
+ export type NoFrom = typeof NO_FROM;
70
+ /**
71
+ * Type for wait options in interactions.
72
+ * - NO_WAIT symbol: Don't wait for confirmation, return TxHash immediately
73
+ * - WaitOpts object: Wait with custom options and return receipt/result
74
+ * - undefined: Wait with default options and return receipt/result
75
+ */
76
+ export type InteractionWaitOptions = NoWait | WaitOpts | undefined;
77
+ /**
78
+ * Base options for calling a (constrained) function in a contract, without wait parameter.
79
+ */
80
+ export type SendInteractionOptionsWithoutWait = RequestInteractionOptions & {
81
+ /** The sender's Aztec address, or NO_FROM to execute without account contract mediation. */
82
+ from: AztecAddress | NoFrom;
83
+ /** The fee options for the transaction. */
84
+ fee?: InteractionFeeOptions;
85
+ /**
86
+ * Additional addresses whose private state and keys should be accessible during execution,
87
+ * beyond the sender's. Required when the transaction needs to access private state or keys
88
+ * belonging to an address other than `from`, e.g. withdrawing from an escrow that holds
89
+ * its own private notes.
90
+ */
91
+ additionalScopes?: AztecAddress[];
92
+ /**
93
+ * Overrides the sender address used to derive discovery tags for private messages (notes, events, logs).
94
+ * Recipients use these tags to find messages addressed to them.
95
+ *
96
+ * Defaults to `from`. Typically set when `from === NO_FROM`, since there is no account address to derive tags from.
97
+ */
98
+ sendMessagesAs?: AztecAddress;
99
+ };
100
+ /**
101
+ * Represents options for calling a (constrained) function in a contract.
102
+ */
103
+ export type SendInteractionOptions<W extends InteractionWaitOptions = undefined> = SendInteractionOptionsWithoutWait & {
104
+ /**
105
+ * Whether to wait for the transaction to be mined.
106
+ * - undefined (default): wait with default options and return TxReceipt
107
+ * - WaitOpts object: wait with custom options and return TxReceipt
108
+ * - NO_WAIT: return txHash immediately without waiting
109
+ */
110
+ wait?: W;
111
+ };
112
+ /**
113
+ * Represents the options for simulating a contract function interaction.
114
+ * Allows specifying the address from which the method should be called.
115
+ * Disregarded for simulation of public functions
116
+ */
117
+ export type SimulateInteractionOptions = Omit<SendInteractionOptions, 'fee'> & {
118
+ /** The fee options for the transaction. */
119
+ fee?: InteractionFeeOptions;
120
+ /** Simulate without checking for the validity of the resulting transaction, e.g. whether it emits any existing nullifiers. */
121
+ skipTxValidation?: boolean;
122
+ /** Whether to ensure the fee payer is not empty and has enough balance to pay for the fee. */
123
+ skipFeeEnforcement?: boolean;
124
+ /** Whether to include metadata such as performance statistics (e.g. timing information of the different circuits and oracles) and simulated gas usage
125
+ * in the simulation result, in addition to the return value and offchain effects */
126
+ includeMetadata?: boolean;
127
+ /** Pre-simulation overrides applied to the ephemeral fork and contract DB (publicStorage writes, contract instance overrides). */
128
+ overrides?: SimulationOverrides;
129
+ };
130
+ /**
131
+ * Represents the options for profiling an interaction.
132
+ */
133
+ export type ProfileInteractionOptions = SimulateInteractionOptions & {
134
+ /** Whether to return gates information or the bytecode/witnesses. */
135
+ profileMode: 'gates' | 'execution-steps' | 'full';
136
+ /** Whether to generate a Chonk proof or not */
137
+ skipProofGeneration?: boolean;
138
+ };
139
+ /** A message emitted during execution or proving, to be delivered offchain. */
140
+ export type OffchainMessage = {
141
+ /** The intended recipient of the message. */
142
+ recipient: AztecAddress;
143
+ /** The message payload (typically encrypted). */
144
+ payload: Fr[];
145
+ /** The contract that emitted the message. */
146
+ contractAddress: AztecAddress;
147
+ /** Anchor block timestamp at message emission. */
148
+ anchorBlockTimestamp: bigint;
149
+ };
150
+ /** Groups all unproven outputs from private execution that are returned to the client. */
151
+ export type OffchainOutput = {
152
+ /** Raw offchain effects emitted during execution. */
153
+ offchainEffects: OffchainEffect[];
154
+ /** Messages emitted during execution, to be delivered offchain. */
155
+ offchainMessages: OffchainMessage[];
156
+ };
157
+ /**
158
+ * Splits an array of offchain effects into decoded offchain messages and remaining effects.
159
+ * Effects whose data starts with `OFFCHAIN_MESSAGE_IDENTIFIER` are parsed as messages and removed
160
+ * from the effects array.
161
+ */
162
+ export declare function extractOffchainOutput(effects: OffchainEffect[], anchorBlockTimestamp: bigint): OffchainOutput;
163
+ /**
164
+ * Represents the result of a simulation.
165
+ * Always includes the return value and offchain output.
166
+ * When `includeMetadata` is set, also includes stats and the simulated gas usage.
167
+ */
168
+ export type SimulationResult = {
169
+ /** Return value of the function */
170
+ result: any;
171
+ /** Additional stats about the simulation. Present when `includeMetadata` is set. */
172
+ stats?: SimulationStats;
173
+ /**
174
+ * Raw gas consumed by the simulated transaction. Present when `includeMetadata` is set. Apps that want to
175
+ * declare explicit gas limits should derive their own from this (e.g. pad `totalGas`) and pass them via the
176
+ * fee options; otherwise the wallet fills in the network's per-tx admission limits automatically.
177
+ */
178
+ gasUsed?: GasUsed;
179
+ } & OffchainOutput;
180
+ /** Result of sendTx when not waiting for mining. */
181
+ export type TxSendResultImmediate = {
182
+ /** The hash of the sent transaction. */
183
+ txHash: TxHash;
184
+ } & OffchainOutput;
185
+ /** Result of sendTx when waiting for mining. */
186
+ export type TxSendResultMined<TReturn = TxReceipt> = {
187
+ /** The transaction receipt. */
188
+ receipt: TReturn;
189
+ } & OffchainOutput;
190
+ /**
191
+ * Represents the result type of sending a transaction.
192
+ * If `wait` is NO_WAIT, returns TxSendResultImmediate.
193
+ * Otherwise returns TxSendResultMined.
194
+ */
195
+ export type SendReturn<T extends InteractionWaitOptions, TReturn = TxReceipt> = T extends NoWait ? TxSendResultImmediate : TxSendResultMined<TReturn>;
196
+ /**
197
+ * Transforms and cleans up the higher level SendInteractionOptions defined by the interaction into
198
+ * SendOptions, which are the ones that can be serialized and forwarded to the wallet
199
+ * @param options - The send interaction options with optional wait parameter
200
+ * @returns The send options to forward to the wallet
201
+ */
202
+ export declare function toSendOptions<W extends InteractionWaitOptions = undefined>(options: SendInteractionOptions<W>): SendOptions<W>;
203
+ /**
204
+ * Transforms and cleans up the higher level SimulateInteractionOptions defined by the interaction into
205
+ * SimulateOptions, which are the ones that can be serialized and forwarded to the wallet
206
+ */
207
+ export declare function toSimulateOptions(options: SimulateInteractionOptions): SimulateOptions;
208
+ /**
209
+ * Transforms and cleans up the higher level ProfileInteractionOptions defined by the interaction into
210
+ * ProfileOptions, which are the ones that can be serialized and forwarded to the wallet
211
+ */
212
+ export declare function toProfileOptions(options: ProfileInteractionOptions): ProfileOptions;
213
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb25fb3B0aW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnRyYWN0L2ludGVyYWN0aW9uX29wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RixPQUFPLEVBQ0wsS0FBSyxPQUFPLEVBRVosS0FBSyxjQUFjLEVBQ25CLEtBQUssbUJBQW1CLEVBQ3hCLEtBQUssZUFBZSxFQUNwQixLQUFLLE1BQU0sRUFDWCxLQUFLLFNBQVMsRUFDZixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RixPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvQzs7O0dBR0c7QUFDSCxNQUFNLE1BQU0sc0JBQXNCLEdBQUc7SUFDbkMscURBQXFEO0lBQ3JELGFBQWEsQ0FBQyxFQUFFLGdCQUFnQixDQUFDO0NBQ2xDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLE1BQU0saUJBQWlCLEdBQUc7SUFDOUIsdUJBQXVCO0lBQ3ZCLFdBQVcsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FB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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interaction_options.d.ts","sourceRoot":"","sources":["../../src/contract/interaction_options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import { AztecAddress } from '@aztec-labs/stdlib/aztec-address';
2
+ import { OFFCHAIN_MESSAGE_IDENTIFIER } from '@aztec-labs/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
+ * Constant for explicitly opting out of account contract mediation.
9
+ * When used as the `from` parameter, the wallet executes the payload directly
10
+ * via the DefaultEntrypoint without wrapping it in an account contract entrypoint.
11
+ * The app is responsible for assembling the complete execution payload, including
12
+ * any entrypoint wrapping (e.g. multicall) if needed. This will result in the
13
+ * first call of the chain receiving msg_sender as Option::none
14
+ */ export const NO_FROM = 'NO_FROM';
15
+ /**
16
+ * Splits an array of offchain effects into decoded offchain messages and remaining effects.
17
+ * Effects whose data starts with `OFFCHAIN_MESSAGE_IDENTIFIER` are parsed as messages and removed
18
+ * from the effects array.
19
+ */ export function extractOffchainOutput(effects, anchorBlockTimestamp) {
20
+ const offchainEffects = [];
21
+ const offchainMessages = [];
22
+ for (const effect of effects){
23
+ if (effect.data.length >= 2 && effect.data[0].equals(OFFCHAIN_MESSAGE_IDENTIFIER)) {
24
+ offchainMessages.push({
25
+ recipient: AztecAddress.fromFieldUnsafe(effect.data[1]),
26
+ payload: effect.data.slice(2),
27
+ contractAddress: effect.contractAddress,
28
+ anchorBlockTimestamp
29
+ });
30
+ } else {
31
+ offchainEffects.push(effect);
32
+ }
33
+ }
34
+ return {
35
+ offchainEffects,
36
+ offchainMessages
37
+ };
38
+ }
39
+ /**
40
+ * Transforms and cleans up the higher level SendInteractionOptions defined by the interaction into
41
+ * SendOptions, which are the ones that can be serialized and forwarded to the wallet
42
+ * @param options - The send interaction options with optional wait parameter
43
+ * @returns The send options to forward to the wallet
44
+ */ export function toSendOptions(options) {
45
+ return {
46
+ ...options,
47
+ fee: {
48
+ // If a payment method that includes gas settings was used,
49
+ // try to reuse as much as possible while still allowing
50
+ // manual override. CAREFUL: this can cause mismatches during proving
51
+ gasSettings: {
52
+ ...options.fee?.paymentMethod?.getGasSettings(),
53
+ ...options.fee?.gasSettings
54
+ },
55
+ congestionEstimate: options.fee?.congestionEstimate
56
+ },
57
+ wait: options.wait
58
+ };
59
+ }
60
+ /**
61
+ * Transforms and cleans up the higher level SimulateInteractionOptions defined by the interaction into
62
+ * SimulateOptions, which are the ones that can be serialized and forwarded to the wallet
63
+ */ export function toSimulateOptions(options) {
64
+ return {
65
+ ...options,
66
+ fee: {
67
+ // If a payment method that includes gas settings was used,
68
+ // try to reuse as much as possible while still allowing
69
+ // manual override. CAREFUL: this can cause mismatches during proving
70
+ gasSettings: {
71
+ ...options.fee?.paymentMethod?.getGasSettings(),
72
+ ...options.fee?.gasSettings
73
+ },
74
+ congestionEstimate: options.fee?.congestionEstimate
75
+ }
76
+ };
77
+ }
78
+ /**
79
+ * Transforms and cleans up the higher level ProfileInteractionOptions defined by the interaction into
80
+ * ProfileOptions, which are the ones that can be serialized and forwarded to the wallet
81
+ */ export function toProfileOptions(options) {
82
+ return {
83
+ ...toSimulateOptions(options),
84
+ profileMode: options.profileMode,
85
+ skipProofGeneration: options.skipProofGeneration
86
+ };
87
+ }
@@ -0,0 +1,18 @@
1
+ import type { 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 ContractClassRegistryContract extends ContractBase {
6
+ private constructor();
7
+ /** Returns an interface to the canonical ContractClassRegistryContract instance, bound to the given wallet. */
8
+ static withWallet(wallet: Wallet): ContractClassRegistryContract;
9
+ /** @deprecated Use `withWallet` instead. */
10
+ static at(wallet: Wallet): ContractClassRegistryContract;
11
+ methods: {
12
+ /** public_dispatch(selector: field) */
13
+ public_dispatch: ((selector: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
14
+ /** publish(artifact_hash: field, private_functions_root: field, public_bytecode_commitment: field) */
15
+ publish: ((artifact_hash: FieldLike, private_functions_root: FieldLike, public_bytecode_commitment: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
16
+ };
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QtY2xhc3MtcmVnaXN0cnkuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdC9wcm90b2NvbF9jb250cmFjdHMvY29udHJhY3QtY2xhc3MtcmVnaXN0cnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxLQUFLLEVBR1YsU0FBUyxFQUlWLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBMkRsRixxQkFBYSw2QkFBOEIsU0FBUSxZQUFZO0lBQzdELE9BQU8sZUFFTjtJQUVELCtHQUErRztJQUMvRyxPQUFjLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLDZCQUE2QixDQUV0RTtJQUVELDRDQUE0QztJQUM1QyxPQUFjLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLDZCQUE2QixDQUU5RDtJQUVjLE9BQU8sRUFBRTtRQUN0Qix1Q0FBdUM7UUFDdkMsZUFBZSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxLQUFLLDJCQUEyQixDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUUzRyxzR0FBc0c7UUFDdEcsT0FBTyxFQUFFLENBQUMsQ0FDUixhQUFhLEVBQUUsU0FBUyxFQUN4QixzQkFBc0IsRUFBRSxTQUFTLEVBQ2pDLDBCQUEwQixFQUFFLFNBQVMsS0FDbEMsMkJBQTJCLENBQUMsR0FDL0IsSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsQ0FBQztLQUNwQyxDQUFDO0NBQ0gifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-class-registry.d.ts","sourceRoot":"","sources":["../../../src/contract/protocol_contracts/contract-class-registry.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAGV,SAAS,EAIV,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;AA2DlF,qBAAa,6BAA8B,SAAQ,YAAY;IAC7D,OAAO,eAEN;IAED,+GAA+G;IAC/G,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,6BAA6B,CAEtE;IAED,4CAA4C;IAC5C,OAAc,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,6BAA6B,CAE9D;IAEc,OAAO,EAAE;QACtB,uCAAuC;QACvC,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAE,SAAS,KAAK,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAE3G,sGAAsG;QACtG,OAAO,EAAE,CAAC,CACR,aAAa,EAAE,SAAS,EACxB,sBAAsB,EAAE,SAAS,EACjC,0BAA0B,EAAE,SAAS,KAClC,2BAA2B,CAAC,GAC/B,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;KACpC,CAAC;CACH"}
@@ -0,0 +1,137 @@
1
+ /* Autogenerated file, do not edit! */ /* eslint-disable */ import { ProtocolContractAddress } from '@aztec-labs/protocol-contracts';
2
+ import { FunctionType } from '@aztec-labs/stdlib/abi';
3
+ import { ContractBase } from '../contract_base.js';
4
+ const ContractClassRegistryContractArtifact = {
5
+ name: 'ContractClassRegistry',
6
+ aztecVersion: '6.0.0-nightly.20260826',
7
+ functions: [
8
+ {
9
+ ...{
10
+ functionType: FunctionType.PRIVATE,
11
+ name: 'publish',
12
+ isOnlySelf: false,
13
+ isStatic: false,
14
+ isInitializer: false,
15
+ parameters: [
16
+ {
17
+ name: 'artifact_hash',
18
+ type: {
19
+ kind: 'field'
20
+ },
21
+ visibility: 'private'
22
+ },
23
+ {
24
+ name: 'private_functions_root',
25
+ type: {
26
+ kind: 'field'
27
+ },
28
+ visibility: 'private'
29
+ },
30
+ {
31
+ name: 'public_bytecode_commitment',
32
+ type: {
33
+ kind: 'field'
34
+ },
35
+ visibility: 'private'
36
+ }
37
+ ],
38
+ errorTypes: {
39
+ '10965409165809799877': {
40
+ error_kind: 'string',
41
+ string: 'Given in_len to absorb is larger than the input array len'
42
+ },
43
+ '12469291177396340830': {
44
+ error_kind: 'string',
45
+ string: 'call to assert_max_bit_size'
46
+ },
47
+ '14990209321349310352': {
48
+ error_kind: 'string',
49
+ string: 'attempt to add with overflow'
50
+ },
51
+ '15669273164684982983': {
52
+ error_kind: 'string',
53
+ string: 'num_permutations is greater than MAX_PERMUTATIONS'
54
+ },
55
+ '15835548349546956319': {
56
+ error_kind: 'string',
57
+ string: 'Field failed to decompose into specified 32 limbs'
58
+ },
59
+ '16431471497789672479': {
60
+ error_kind: 'string',
61
+ string: 'Index out of bounds'
62
+ },
63
+ '16450579948625159707': {
64
+ error_kind: 'string',
65
+ string: 'Sponge must be in cache_size=1'
66
+ },
67
+ '17655676068928457687': {
68
+ error_kind: 'string',
69
+ string: 'Reader did not read all data'
70
+ },
71
+ '1998584279744703196': {
72
+ error_kind: 'string',
73
+ string: 'attempt to subtract with overflow'
74
+ },
75
+ '361444214588792908': {
76
+ error_kind: 'string',
77
+ string: 'attempt to multiply with overflow'
78
+ },
79
+ '922421554006670918': {
80
+ error_kind: 'string',
81
+ string: 'num_items is greater than MAX_ITEMS'
82
+ },
83
+ '9475115977882098926': {
84
+ error_kind: 'string',
85
+ string: 'Extra bytes in the last field of the bytecode'
86
+ }
87
+ }
88
+ },
89
+ bytecode: Buffer.from([]),
90
+ debugSymbols: ''
91
+ },
92
+ {
93
+ ...{
94
+ functionType: FunctionType.PUBLIC,
95
+ name: 'public_dispatch',
96
+ isOnlySelf: false,
97
+ isStatic: false,
98
+ isInitializer: false,
99
+ parameters: [
100
+ {
101
+ name: 'selector',
102
+ type: {
103
+ kind: 'field'
104
+ },
105
+ visibility: 'private'
106
+ }
107
+ ],
108
+ errorTypes: {
109
+ '1335198680857977525': {
110
+ error_kind: 'string',
111
+ string: 'No public functions'
112
+ }
113
+ }
114
+ },
115
+ bytecode: Buffer.from([]),
116
+ debugSymbols: ''
117
+ }
118
+ ],
119
+ nonDispatchPublicFunctions: [],
120
+ outputs: {
121
+ structs: {},
122
+ globals: {}
123
+ },
124
+ storageLayout: {},
125
+ fileMap: {}
126
+ };
127
+ export class ContractClassRegistryContract extends ContractBase {
128
+ constructor(wallet){
129
+ super(ProtocolContractAddress.ContractClassRegistry, ContractClassRegistryContractArtifact, wallet);
130
+ }
131
+ /** Returns an interface to the canonical ContractClassRegistryContract instance, bound to the given wallet. */ static withWallet(wallet) {
132
+ return new ContractClassRegistryContract(wallet);
133
+ }
134
+ /** @deprecated Use `withWallet` instead. */ static at(wallet) {
135
+ return ContractClassRegistryContract.withWallet(wallet);
136
+ }
137
+ }
@@ -0,0 +1,25 @@
1
+ import { PublicKeys } from '../../api/keys.js';
2
+ import type { FieldLike, WrappedFieldLike } from '../../utils/abi_types.js';
3
+ import type { Wallet } from '../../wallet/wallet.js';
4
+ import { ContractBase, type ContractMethod } from '../contract_base.js';
5
+ import { ContractFunctionInteraction } from '../contract_function_interaction.js';
6
+ export declare class ContractInstanceRegistryContract extends ContractBase {
7
+ private constructor();
8
+ /** Returns an interface to the canonical ContractInstanceRegistryContract instance, bound to the given wallet. */
9
+ static withWallet(wallet: Wallet): ContractInstanceRegistryContract;
10
+ /** @deprecated Use `withWallet` instead. */
11
+ static at(wallet: Wallet): ContractInstanceRegistryContract;
12
+ methods: {
13
+ /** get_update_delay() */
14
+ get_update_delay: (() => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
15
+ /** public_dispatch(selector: field) */
16
+ public_dispatch: ((selector: FieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
17
+ /** publish_for_public_execution(salt: field, contract_class_id: struct, initialization_hash: field, immutables_hash: field, public_keys: struct, universal_deploy: boolean) */
18
+ publish_for_public_execution: ((salt: FieldLike, contract_class_id: WrappedFieldLike, initialization_hash: FieldLike, immutables_hash: FieldLike, public_keys: PublicKeys, universal_deploy: boolean) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
19
+ /** set_update_delay(new_update_delay: integer) */
20
+ set_update_delay: ((new_update_delay: bigint | number) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
21
+ /** update(new_contract_class_id: struct) */
22
+ update: ((new_contract_class_id: WrappedFieldLike) => ContractFunctionInteraction) & Pick<ContractMethod, 'selector'>;
23
+ };
24
+ }
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QtaW5zdGFuY2UtcmVnaXN0cnkuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdC9wcm90b2NvbF9jb250cmFjdHMvY29udHJhY3QtaW5zdGFuY2UtcmVnaXN0cnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxFQUdWLFNBQVMsRUFHVCxnQkFBZ0IsRUFDakIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFzTGxGLHFCQUFhLGdDQUFpQyxTQUFRLFlBQVk7SUFDaEUsT0FBTyxlQUVOO0lBRUQsa0hBQWtIO0lBQ2xILE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0NBQWdDLENBRXpFO0lBRUQsNENBQTRDO0lBQzVDLE9BQWMsRUFBRSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0NBQWdDLENBRWpFO0lBRWMsT0FBTyxFQUFFO1FBQ3RCLHlCQUF5QjtRQUN6QixnQkFBZ0IsRUFBRSxDQUFDLE1BQU0sMkJBQTJCLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXpGLHVDQUF1QztRQUN2QyxlQUFlLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxTQUFTLEtBQUssMkJBQTJCLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRTNHLCtLQUErSztRQUMvSyw0QkFBNEIsRUFBRSxDQUFDLENBQzdCLElBQUksRUFBRSxTQUFTLEVBQ2YsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQ25DLG1CQUFtQixFQUFFLFNBQVMsRUFDOUIsZUFBZSxFQUFFLFNBQVMsRUFDMUIsV0FBVyxFQUFFLFVBQVUsRUFDdkIsZ0JBQWdCLEVBQUUsT0FBTyxLQUN0QiwyQkFBMkIsQ0FBQyxHQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5DLGtEQUFrRDtRQUNsRCxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxHQUFHLE1BQU0sS0FBSywyQkFBMkIsQ0FBQyxHQUNwRixJQUFJLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5DLDRDQUE0QztRQUM1QyxNQUFNLEVBQUUsQ0FBQyxDQUFDLHFCQUFxQixFQUFFLGdCQUFnQixLQUFLLDJCQUEyQixDQUFDLEdBQ2hGLElBQUksQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDLENBQUM7S0FDcEMsQ0FBQztDQUNIIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-instance-registry.d.ts","sourceRoot":"","sources":["../../../src/contract/protocol_contracts/contract-instance-registry.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAGV,SAAS,EAGT,gBAAgB,EACjB,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;AAsLlF,qBAAa,gCAAiC,SAAQ,YAAY;IAChE,OAAO,eAEN;IAED,kHAAkH;IAClH,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,gCAAgC,CAEzE;IAED,4CAA4C;IAC5C,OAAc,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,gCAAgC,CAEjE;IAEc,OAAO,EAAE;QACtB,yBAAyB;QACzB,gBAAgB,EAAE,CAAC,MAAM,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEzF,uCAAuC;QACvC,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAE,SAAS,KAAK,2BAA2B,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAE3G,+KAA+K;QAC/K,4BAA4B,EAAE,CAAC,CAC7B,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,gBAAgB,EACnC,mBAAmB,EAAE,SAAS,EAC9B,eAAe,EAAE,SAAS,EAC1B,WAAW,EAAE,UAAU,EACvB,gBAAgB,EAAE,OAAO,KACtB,2BAA2B,CAAC,GAC/B,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,kDAAkD;QAClD,gBAAgB,EAAE,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,KAAK,2BAA2B,CAAC,GACpF,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEnC,4CAA4C;QAC5C,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,gBAAgB,KAAK,2BAA2B,CAAC,GAChF,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;KACpC,CAAC;CACH"}