@aztec/ethereum 0.0.1-commit.d3ec352c → 0.0.1-commit.d431d1c

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 (162) hide show
  1. package/dest/client.js +6 -2
  2. package/dest/config.d.ts +17 -68
  3. package/dest/config.d.ts.map +1 -1
  4. package/dest/config.js +46 -378
  5. package/dest/contracts/empire_base.d.ts +2 -1
  6. package/dest/contracts/empire_base.d.ts.map +1 -1
  7. package/dest/contracts/empire_slashing_proposer.d.ts +2 -1
  8. package/dest/contracts/empire_slashing_proposer.d.ts.map +1 -1
  9. package/dest/contracts/empire_slashing_proposer.js +9 -0
  10. package/dest/contracts/fee_asset_handler.d.ts +6 -5
  11. package/dest/contracts/fee_asset_handler.d.ts.map +1 -1
  12. package/dest/contracts/fee_asset_handler.js +9 -9
  13. package/dest/contracts/governance_proposer.d.ts +2 -1
  14. package/dest/contracts/governance_proposer.d.ts.map +1 -1
  15. package/dest/contracts/governance_proposer.js +391 -8
  16. package/dest/contracts/inbox.d.ts +24 -3
  17. package/dest/contracts/inbox.d.ts.map +1 -1
  18. package/dest/contracts/inbox.js +36 -1
  19. package/dest/contracts/index.d.ts +3 -1
  20. package/dest/contracts/index.d.ts.map +1 -1
  21. package/dest/contracts/index.js +2 -0
  22. package/dest/contracts/log.d.ts +13 -0
  23. package/dest/contracts/log.d.ts.map +1 -0
  24. package/dest/contracts/log.js +1 -0
  25. package/dest/contracts/outbox.d.ts +41 -0
  26. package/dest/contracts/outbox.d.ts.map +1 -0
  27. package/dest/contracts/outbox.js +86 -0
  28. package/dest/contracts/rollup.d.ts +162 -82
  29. package/dest/contracts/rollup.d.ts.map +1 -1
  30. package/dest/contracts/rollup.js +680 -127
  31. package/dest/contracts/tally_slashing_proposer.d.ts +3 -2
  32. package/dest/contracts/tally_slashing_proposer.d.ts.map +1 -1
  33. package/dest/contracts/tally_slashing_proposer.js +1 -1
  34. package/dest/deploy_aztec_l1_contracts.d.ts +258 -0
  35. package/dest/deploy_aztec_l1_contracts.d.ts.map +1 -0
  36. package/dest/deploy_aztec_l1_contracts.js +397 -0
  37. package/dest/deploy_l1_contract.d.ts +68 -0
  38. package/dest/deploy_l1_contract.d.ts.map +1 -0
  39. package/dest/deploy_l1_contract.js +312 -0
  40. package/dest/forwarder_proxy.d.ts +32 -0
  41. package/dest/forwarder_proxy.d.ts.map +1 -0
  42. package/dest/forwarder_proxy.js +93 -0
  43. package/dest/generated/l1-contracts-defaults.d.ts +29 -0
  44. package/dest/generated/l1-contracts-defaults.d.ts.map +1 -0
  45. package/dest/generated/l1-contracts-defaults.js +29 -0
  46. package/dest/l1_artifacts.d.ts +4158 -1563
  47. package/dest/l1_artifacts.d.ts.map +1 -1
  48. package/dest/l1_contract_addresses.d.ts +1 -1
  49. package/dest/l1_contract_addresses.d.ts.map +1 -1
  50. package/dest/l1_contract_addresses.js +3 -3
  51. package/dest/l1_reader.d.ts +3 -1
  52. package/dest/l1_reader.d.ts.map +1 -1
  53. package/dest/l1_reader.js +6 -0
  54. package/dest/l1_tx_utils/config.d.ts +3 -3
  55. package/dest/l1_tx_utils/config.d.ts.map +1 -1
  56. package/dest/l1_tx_utils/config.js +17 -3
  57. package/dest/l1_tx_utils/constants.d.ts +7 -1
  58. package/dest/l1_tx_utils/constants.d.ts.map +1 -1
  59. package/dest/l1_tx_utils/constants.js +25 -0
  60. package/dest/l1_tx_utils/fee-strategies/index.d.ts +10 -0
  61. package/dest/l1_tx_utils/fee-strategies/index.d.ts.map +1 -0
  62. package/dest/l1_tx_utils/fee-strategies/index.js +12 -0
  63. package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts +8 -0
  64. package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts.map +1 -0
  65. package/dest/l1_tx_utils/fee-strategies/p75_competitive.js +129 -0
  66. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts +23 -0
  67. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts.map +1 -0
  68. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.js +191 -0
  69. package/dest/l1_tx_utils/fee-strategies/types.d.ts +51 -0
  70. package/dest/l1_tx_utils/fee-strategies/types.d.ts.map +1 -0
  71. package/dest/l1_tx_utils/fee-strategies/types.js +3 -0
  72. package/dest/l1_tx_utils/forwarder_l1_tx_utils.d.ts +41 -0
  73. package/dest/l1_tx_utils/forwarder_l1_tx_utils.d.ts.map +1 -0
  74. package/dest/l1_tx_utils/forwarder_l1_tx_utils.js +48 -0
  75. package/dest/l1_tx_utils/index-blobs.d.ts +3 -0
  76. package/dest/l1_tx_utils/index-blobs.d.ts.map +1 -0
  77. package/dest/l1_tx_utils/index-blobs.js +2 -0
  78. package/dest/l1_tx_utils/index.d.ts +3 -1
  79. package/dest/l1_tx_utils/index.d.ts.map +1 -1
  80. package/dest/l1_tx_utils/index.js +2 -0
  81. package/dest/l1_tx_utils/interfaces.d.ts +2 -2
  82. package/dest/l1_tx_utils/interfaces.d.ts.map +1 -1
  83. package/dest/l1_tx_utils/l1_fee_analyzer.d.ts +233 -0
  84. package/dest/l1_tx_utils/l1_fee_analyzer.d.ts.map +1 -0
  85. package/dest/l1_tx_utils/l1_fee_analyzer.js +506 -0
  86. package/dest/l1_tx_utils/l1_tx_utils.d.ts +1 -1
  87. package/dest/l1_tx_utils/l1_tx_utils.d.ts.map +1 -1
  88. package/dest/l1_tx_utils/l1_tx_utils.js +17 -4
  89. package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts +4 -15
  90. package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts.map +1 -1
  91. package/dest/l1_tx_utils/readonly_l1_tx_utils.js +52 -159
  92. package/dest/queries.d.ts +2 -2
  93. package/dest/queries.d.ts.map +1 -1
  94. package/dest/queries.js +10 -3
  95. package/dest/test/chain_monitor.d.ts +2 -2
  96. package/dest/test/chain_monitor.d.ts.map +1 -1
  97. package/dest/test/chain_monitor.js +1 -2
  98. package/dest/test/eth_cheat_codes.d.ts +13 -1
  99. package/dest/test/eth_cheat_codes.d.ts.map +1 -1
  100. package/dest/test/eth_cheat_codes.js +4 -2
  101. package/dest/test/rollup_cheat_codes.d.ts +3 -2
  102. package/dest/test/rollup_cheat_codes.d.ts.map +1 -1
  103. package/dest/test/rollup_cheat_codes.js +16 -3
  104. package/dest/test/start_anvil.d.ts +3 -1
  105. package/dest/test/start_anvil.d.ts.map +1 -1
  106. package/dest/test/tx_delayer.d.ts +1 -1
  107. package/dest/test/tx_delayer.d.ts.map +1 -1
  108. package/dest/test/tx_delayer.js +4 -3
  109. package/dest/types.d.ts +57 -2
  110. package/dest/types.d.ts.map +1 -1
  111. package/dest/utils.d.ts +15 -3
  112. package/dest/utils.d.ts.map +1 -1
  113. package/dest/utils.js +18 -0
  114. package/package.json +31 -12
  115. package/src/client.ts +2 -2
  116. package/src/config.ts +55 -457
  117. package/src/contracts/README.md +157 -0
  118. package/src/contracts/empire_base.ts +1 -1
  119. package/src/contracts/empire_slashing_proposer.ts +6 -1
  120. package/src/contracts/fee_asset_handler.ts +8 -7
  121. package/src/contracts/governance_proposer.ts +6 -1
  122. package/src/contracts/inbox.ts +55 -3
  123. package/src/contracts/index.ts +2 -0
  124. package/src/contracts/log.ts +13 -0
  125. package/src/contracts/outbox.ts +98 -0
  126. package/src/contracts/rollup.ts +350 -94
  127. package/src/contracts/tally_slashing_proposer.ts +3 -1
  128. package/src/deploy_aztec_l1_contracts.ts +618 -0
  129. package/src/deploy_l1_contract.ts +362 -0
  130. package/src/forwarder_proxy.ts +108 -0
  131. package/src/generated/l1-contracts-defaults.ts +31 -0
  132. package/src/l1_contract_addresses.ts +22 -20
  133. package/src/l1_reader.ts +8 -0
  134. package/src/l1_tx_utils/config.ts +24 -6
  135. package/src/l1_tx_utils/constants.ts +11 -0
  136. package/src/l1_tx_utils/fee-strategies/index.ts +22 -0
  137. package/src/l1_tx_utils/fee-strategies/p75_competitive.ts +163 -0
  138. package/src/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.ts +245 -0
  139. package/src/l1_tx_utils/fee-strategies/types.ts +56 -0
  140. package/src/l1_tx_utils/forwarder_l1_tx_utils.ts +119 -0
  141. package/src/l1_tx_utils/index-blobs.ts +2 -0
  142. package/src/l1_tx_utils/index.ts +2 -0
  143. package/src/l1_tx_utils/interfaces.ts +1 -1
  144. package/src/l1_tx_utils/l1_fee_analyzer.ts +803 -0
  145. package/src/l1_tx_utils/l1_tx_utils.ts +24 -4
  146. package/src/l1_tx_utils/readonly_l1_tx_utils.ts +65 -204
  147. package/src/queries.ts +10 -3
  148. package/src/test/chain_monitor.ts +3 -2
  149. package/src/test/eth_cheat_codes.ts +2 -2
  150. package/src/test/rollup_cheat_codes.ts +13 -3
  151. package/src/test/start_anvil.ts +2 -0
  152. package/src/test/tx_delayer.ts +5 -3
  153. package/src/types.ts +62 -0
  154. package/src/utils.ts +30 -1
  155. package/dest/deploy_l1_contracts.d.ts +0 -673
  156. package/dest/deploy_l1_contracts.d.ts.map +0 -1
  157. package/dest/deploy_l1_contracts.js +0 -1491
  158. package/dest/index.d.ts +0 -18
  159. package/dest/index.d.ts.map +0 -1
  160. package/dest/index.js +0 -17
  161. package/src/deploy_l1_contracts.ts +0 -1869
  162. package/src/index.ts +0 -17
@@ -0,0 +1,13 @@
1
+ import type { Buffer32 } from '@aztec/foundation/buffer';
2
+ /** Base L1 event log with common fields. */
3
+ export type L1EventLog<T> = {
4
+ /** L1 block number where the event was emitted. */
5
+ l1BlockNumber: bigint;
6
+ /** L1 block hash. */
7
+ l1BlockHash: Buffer32;
8
+ /** L1 transaction hash that emitted the event. */
9
+ l1TransactionHash: `0x${string}`;
10
+ /** Event-specific arguments. */
11
+ args: T;
12
+ };
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3RzL2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RCw0Q0FBNEM7QUFDNUMsTUFBTSxNQUFNLFVBQVUsQ0FBQyxDQUFDLElBQUk7SUFDMUIsbURBQW1EO0lBQ25ELGFBQWEsRUFBRSxNQUFNLENBQUM7SUFDdEIscUJBQXFCO0lBQ3JCLFdBQVcsRUFBRSxRQUFRLENBQUM7SUFDdEIsa0RBQWtEO0lBQ2xELGlCQUFpQixFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDakMsZ0NBQWdDO0lBQ2hDLElBQUksRUFBRSxDQUFDLENBQUM7Q0FDVCxDQUFDIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/contracts/log.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,4CAA4C;AAC5C,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI;IAC1B,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB;IACrB,WAAW,EAAE,QAAQ,CAAC;IACtB,kDAAkD;IAClD,iBAAiB,EAAE,KAAK,MAAM,EAAE,CAAC;IACjC,gCAAgC;IAChC,IAAI,EAAE,CAAC,CAAC;CACT,CAAC"}
@@ -0,0 +1 @@
1
+ /** Base L1 event log with common fields. */ export { };
@@ -0,0 +1,41 @@
1
+ import type { EpochNumber } from '@aztec/foundation/branded-types';
2
+ import { EthAddress } from '@aztec/foundation/eth-address';
3
+ import { OutboxAbi } from '@aztec/l1-artifacts/OutboxAbi';
4
+ import { type GetContractReturnType, type Hex } from 'viem';
5
+ import type { DeployAztecL1ContractsReturnType } from '../deploy_aztec_l1_contracts.js';
6
+ import type { L1ReaderConfig } from '../l1_reader.js';
7
+ import { type ViemClient } from '../types.js';
8
+ export type ViemL1Actor = {
9
+ actor: Hex;
10
+ chainId: bigint;
11
+ };
12
+ export type ViemL2Actor = {
13
+ actor: Hex;
14
+ version: bigint;
15
+ };
16
+ export type ViemL2ToL1Msg = {
17
+ sender: ViemL2Actor;
18
+ recipient: ViemL1Actor;
19
+ content: Hex;
20
+ };
21
+ export declare class OutboxContract {
22
+ readonly client: ViemClient;
23
+ private readonly outbox;
24
+ static getFromL1ContractsValues(deployL1ContractsValues: DeployAztecL1ContractsReturnType): OutboxContract;
25
+ static getFromConfig(config: L1ReaderConfig): OutboxContract;
26
+ static getEpochRootStorageSlot(epoch: EpochNumber): bigint;
27
+ constructor(client: ViemClient, address: Hex | EthAddress);
28
+ get address(): `0x${string}`;
29
+ getContract(): GetContractReturnType<typeof OutboxAbi, ViemClient>;
30
+ hasMessageBeenConsumedAtEpoch(epoch: EpochNumber, leafId: bigint): Promise<boolean>;
31
+ getRootData(epoch: EpochNumber): Promise<`0x${string}`>;
32
+ consume(message: ViemL2ToL1Msg, epoch: EpochNumber, leafIndex: bigint, path: Hex[]): Promise<`0x${string}`>;
33
+ getMessageConsumedEvents(l1BlockHash: Hex): Promise<{
34
+ epoch: bigint;
35
+ root: Hex;
36
+ messageHash: Hex;
37
+ leafId: bigint;
38
+ }[]>;
39
+ private assertWallet;
40
+ }
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0Ym94LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3RzL291dGJveC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTFELE9BQU8sRUFBRSxLQUFLLHFCQUFxQixFQUFFLEtBQUssR0FBRyxFQUE0RCxNQUFNLE1BQU0sQ0FBQztBQUd0SCxPQUFPLEtBQUssRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hGLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RELE9BQU8sRUFBaUMsS0FBSyxVQUFVLEVBQW9CLE1BQU0sYUFBYSxDQUFDO0FBRS9GLE1BQU0sTUFBTSxXQUFXLEdBQUc7SUFDeEIsS0FBSyxFQUFFLEdBQUcsQ0FBQztJQUNYLE9BQU8sRUFBRSxNQUFNLENBQUM7Q0FDakIsQ0FBQztBQUVGLE1BQU0sTUFBTSxXQUFXLEdBQUc7SUFDeEIsS0FBSyxFQUFFLEdBQUcsQ0FBQztJQUNYLE9BQU8sRUFBRSxNQUFNLENBQUM7Q0FDakIsQ0FBQztBQUVGLE1BQU0sTUFBTSxhQUFhLEdBQUc7SUFDMUIsTUFBTSxFQUFFLFdBQVcsQ0FBQztJQUNwQixTQUFTLEVBQUUsV0FBVyxDQUFDO0lBQ3ZCLE9BQU8sRUFBRSxHQUFHLENBQUM7Q0FDZCxDQUFDO0FBRUYscUJBQWEsY0FBYzthQXNCUCxNQUFNLEVBQUUsVUFBVTtJQXJCcEMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQXNEO0lBRTdFLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyx1QkFBdUIsRUFBRSxnQ0FBZ0Msa0JBTXhGO0lBRUQsTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsY0FBYyxrQkFJMUM7SUFFRCxNQUFNLENBQUMsdUJBQXVCLENBQUMsS0FBSyxFQUFFLFdBQVcsVUFFaEQ7SUFFRCxZQUNrQixNQUFNLEVBQUUsVUFBVSxFQUNsQyxPQUFPLEVBQUUsR0FBRyxHQUFHLFVBQVUsRUFNMUI7SUFFRCxJQUFXLE9BQU8sa0JBRWpCO0lBRU0sV0FBVyxJQUFJLHFCQUFxQixDQUFDLE9BQU8sU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUV4RTtJQUVNLDZCQUE2QixDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBRXRFO0lBRU0sV0FBVyxDQUFDLEtBQUssRUFBRSxXQUFXLDBCQUVwQztJQUVNLE9BQU8sQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLDBCQUd4RjtJQUVZLHdCQUF3QixDQUNuQyxXQUFXLEVBQUUsR0FBRyxHQUNmLE9BQU8sQ0FBQztRQUFFLEtBQUssRUFBRSxNQUFNLENBQUM7UUFBQyxJQUFJLEVBQUUsR0FBRyxDQUFDO1FBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQztRQUFDLE1BQU0sRUFBRSxNQUFNLENBQUE7S0FBRSxFQUFFLENBQUMsQ0FRM0U7SUFFRCxPQUFPLENBQUMsWUFBWTtDQU1yQiJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outbox.d.ts","sourceRoot":"","sources":["../../src/contracts/outbox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,GAAG,EAA4D,MAAM,MAAM,CAAC;AAGtH,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AACxF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAiC,KAAK,UAAU,EAAoB,MAAM,aAAa,CAAC;AAE/F,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,GAAG,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,WAAW,CAAC;IACvB,OAAO,EAAE,GAAG,CAAC;CACd,CAAC;AAEF,qBAAa,cAAc;aAsBP,MAAM,EAAE,UAAU;IArBpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsD;IAE7E,MAAM,CAAC,wBAAwB,CAAC,uBAAuB,EAAE,gCAAgC,kBAMxF;IAED,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,cAAc,kBAI1C;IAED,MAAM,CAAC,uBAAuB,CAAC,KAAK,EAAE,WAAW,UAEhD;IAED,YACkB,MAAM,EAAE,UAAU,EAClC,OAAO,EAAE,GAAG,GAAG,UAAU,EAM1B;IAED,IAAW,OAAO,kBAEjB;IAEM,WAAW,IAAI,qBAAqB,CAAC,OAAO,SAAS,EAAE,UAAU,CAAC,CAExE;IAEM,6BAA6B,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,oBAEtE;IAEM,WAAW,CAAC,KAAK,EAAE,WAAW,0BAEpC;IAEM,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,0BAGxF;IAEY,wBAAwB,CACnC,WAAW,EAAE,GAAG,GACf,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAC;QAAC,WAAW,EAAE,GAAG,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAQ3E;IAED,OAAO,CAAC,YAAY;CAMrB"}
@@ -0,0 +1,86 @@
1
+ import { EthAddress } from '@aztec/foundation/eth-address';
2
+ import { OutboxAbi } from '@aztec/l1-artifacts/OutboxAbi';
3
+ import { encodeAbiParameters, getContract, hexToBigInt, keccak256 } from 'viem';
4
+ import { getPublicClient } from '../client.js';
5
+ import { isExtendedClient } from '../types.js';
6
+ export class OutboxContract {
7
+ client;
8
+ outbox;
9
+ static getFromL1ContractsValues(deployL1ContractsValues) {
10
+ const { l1Client, l1ContractAddresses: { outboxAddress } } = deployL1ContractsValues;
11
+ return new OutboxContract(l1Client, outboxAddress.toString());
12
+ }
13
+ static getFromConfig(config) {
14
+ const client = getPublicClient(config);
15
+ const address = config.l1Contracts.outboxAddress.toString();
16
+ return new OutboxContract(client, address);
17
+ }
18
+ static getEpochRootStorageSlot(epoch) {
19
+ return hexToBigInt(keccak256(encodeAbiParameters([
20
+ {
21
+ type: 'uint256'
22
+ },
23
+ {
24
+ type: 'uint256'
25
+ }
26
+ ], [
27
+ BigInt(epoch),
28
+ 0n
29
+ ])));
30
+ }
31
+ constructor(client, address){
32
+ this.client = client;
33
+ if (address instanceof EthAddress) {
34
+ address = address.toString();
35
+ }
36
+ this.outbox = getContract({
37
+ address,
38
+ abi: OutboxAbi,
39
+ client
40
+ });
41
+ }
42
+ get address() {
43
+ return this.outbox.address;
44
+ }
45
+ getContract() {
46
+ return this.outbox;
47
+ }
48
+ hasMessageBeenConsumedAtEpoch(epoch, leafId) {
49
+ return this.outbox.read.hasMessageBeenConsumedAtEpoch([
50
+ BigInt(epoch),
51
+ leafId
52
+ ]);
53
+ }
54
+ getRootData(epoch) {
55
+ return this.outbox.read.getRootData([
56
+ BigInt(epoch)
57
+ ]);
58
+ }
59
+ consume(message, epoch, leafIndex, path) {
60
+ const wallet = this.assertWallet();
61
+ return wallet.write.consume([
62
+ message,
63
+ BigInt(epoch),
64
+ leafIndex,
65
+ path
66
+ ]);
67
+ }
68
+ async getMessageConsumedEvents(l1BlockHash) {
69
+ const events = await this.outbox.getEvents.MessageConsumed({}, {
70
+ blockHash: l1BlockHash,
71
+ strict: true
72
+ });
73
+ return events.map((event)=>({
74
+ epoch: event.args.epoch,
75
+ root: event.args.root,
76
+ messageHash: event.args.messageHash,
77
+ leafId: event.args.leafId
78
+ }));
79
+ }
80
+ assertWallet() {
81
+ if (!isExtendedClient(this.client)) {
82
+ throw new Error('Wallet client is required for this operation');
83
+ }
84
+ return this.outbox;
85
+ }
86
+ }
@@ -1,14 +1,17 @@
1
1
  import { CheckpointNumber, EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
+ import { Buffer32 } from '@aztec/foundation/buffer';
3
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
4
  import { EthAddress } from '@aztec/foundation/eth-address';
3
5
  import type { ViemSignature } from '@aztec/foundation/eth-signature';
4
6
  import { RollupAbi } from '@aztec/l1-artifacts/RollupAbi';
5
7
  import { type Account, type GetContractReturnType, type Hex, type StateOverride, type WatchContractEventReturnType } from 'viem';
6
- import type { DeployL1ContractsReturnType } from '../deploy_l1_contracts.js';
8
+ import type { DeployAztecL1ContractsReturnType } from '../deploy_aztec_l1_contracts.js';
7
9
  import type { L1ContractAddresses } from '../l1_contract_addresses.js';
8
10
  import type { L1ReaderConfig } from '../l1_reader.js';
9
11
  import type { L1TxRequest, L1TxUtils } from '../l1_tx_utils/index.js';
10
12
  import type { ViemClient } from '../types.js';
11
13
  import { EmpireSlashingProposerContract } from './empire_slashing_proposer.js';
14
+ import type { L1EventLog } from './log.js';
12
15
  import { SlasherContract } from './slasher_contract.js';
13
16
  import { TallySlashingProposerContract } from './tally_slashing_proposer.js';
14
17
  export type ViemCommitteeAttestation = {
@@ -23,12 +26,15 @@ export type L1RollupContractAddresses = Pick<L1ContractAddresses, 'rollupAddress
23
26
  export type EpochProofPublicInputArgs = {
24
27
  previousArchive: `0x${string}`;
25
28
  endArchive: `0x${string}`;
29
+ outHash: `0x${string}`;
26
30
  proverId: `0x${string}`;
27
31
  };
28
32
  export type ViemHeader = {
29
33
  lastArchiveRoot: `0x${string}`;
30
34
  blockHeadersHash: `0x${string}`;
31
- contentCommitment: ViemContentCommitment;
35
+ blobsHash: `0x${string}`;
36
+ inHash: `0x${string}`;
37
+ outHash: `0x${string}`;
32
38
  slotNumber: bigint;
33
39
  timestamp: bigint;
34
40
  coinbase: `0x${string}`;
@@ -36,11 +42,6 @@ export type ViemHeader = {
36
42
  gasFees: ViemGasFees;
37
43
  totalManaUsed: bigint;
38
44
  };
39
- export type ViemContentCommitment = {
40
- blobsHash: `0x${string}`;
41
- inHash: `0x${string}`;
42
- outHash: `0x${string}`;
43
- };
44
45
  export type ViemGasFees = {
45
46
  feePerDaGas: bigint;
46
47
  feePerL2Gas: bigint;
@@ -50,37 +51,138 @@ export declare enum SlashingProposerType {
50
51
  Tally = 1,
51
52
  Empire = 2
52
53
  }
54
+ /**
55
+ * Status of a validator/attester in the staking system.
56
+ * Matches the Status enum in StakingLib.sol
57
+ */
58
+ export declare enum AttesterStatus {
59
+ NONE = 0,
60
+ VALIDATING = 1,
61
+ ZOMBIE = 2,
62
+ EXITING = 3
63
+ }
64
+ /**
65
+ * Fee header data for a checkpoint
66
+ */
67
+ export type FeeHeader = {
68
+ excessMana: bigint;
69
+ manaUsed: bigint;
70
+ feeAssetPriceNumerator: bigint;
71
+ congestionCost: bigint;
72
+ proverCost: bigint;
73
+ };
74
+ /**
75
+ * Checkpoint log data returned from the rollup contract
76
+ */
77
+ export type CheckpointLog = {
78
+ archive: Fr;
79
+ headerHash: Buffer32;
80
+ blobCommitmentsHash: Buffer32;
81
+ attestationsHash: Buffer32;
82
+ payloadDigest: Buffer32;
83
+ slotNumber: SlotNumber;
84
+ feeHeader: FeeHeader;
85
+ };
86
+ /**
87
+ * L1 fee data (base fee and blob fee)
88
+ */
89
+ export type L1FeeData = {
90
+ baseFee: bigint;
91
+ blobFee: bigint;
92
+ };
93
+ /**
94
+ * Reward configuration for the rollup
95
+ */
96
+ export type RewardConfig = {
97
+ rewardDistributor: EthAddress;
98
+ sequencerBps: bigint;
99
+ booster: EthAddress;
100
+ checkpointReward: bigint;
101
+ };
102
+ /**
103
+ * Exit information for a validator
104
+ */
105
+ export type Exit = {
106
+ withdrawalId: bigint;
107
+ amount: bigint;
108
+ exitableAt: bigint;
109
+ recipientOrWithdrawer: EthAddress;
110
+ isRecipient: boolean;
111
+ exists: boolean;
112
+ };
113
+ /**
114
+ * Attester configuration including public key and withdrawer
115
+ */
116
+ export type AttesterConfig = {
117
+ publicKey: {
118
+ x: bigint;
119
+ y: bigint;
120
+ };
121
+ withdrawer: EthAddress;
122
+ };
123
+ /**
124
+ * Complete view of an attester's state
125
+ */
126
+ export type AttesterView = {
127
+ status: AttesterStatus;
128
+ effectiveBalance: bigint;
129
+ exit: Exit;
130
+ config: AttesterConfig;
131
+ };
132
+ /**
133
+ * Return for a status call
134
+ */
135
+ export type RollupStatusResponse = {
136
+ provenCheckpointNumber: CheckpointNumber;
137
+ provenArchive: Fr;
138
+ pendingCheckpointNumber: CheckpointNumber;
139
+ pendingArchive: Fr;
140
+ archiveOfMyCheckpoint: Fr;
141
+ };
142
+ /** Arguments for the CheckpointProposed event. */
143
+ export type CheckpointProposedArgs = {
144
+ checkpointNumber: CheckpointNumber;
145
+ archive: Fr;
146
+ versionedBlobHashes: Buffer[];
147
+ /** Hash of attestations. Undefined for older events (backwards compatibility). */
148
+ attestationsHash?: Buffer32;
149
+ /** Digest of the payload. Undefined for older events (backwards compatibility). */
150
+ payloadDigest?: Buffer32;
151
+ };
152
+ /** Log type for CheckpointProposed events. */
153
+ export type CheckpointProposedLog = L1EventLog<CheckpointProposedArgs>;
53
154
  export declare class RollupContract {
54
155
  readonly client: ViemClient;
55
156
  private readonly rollup;
56
157
  private static cachedStfStorageSlot;
158
+ private cachedEscapeHatch?;
57
159
  static get checkBlobStorageSlot(): bigint;
58
160
  static get stfStorageSlot(): Hex;
59
- static getFromL1ContractsValues(deployL1ContractsValues: DeployL1ContractsReturnType): RollupContract;
161
+ static getFromL1ContractsValues(deployL1ContractsValues: DeployAztecL1ContractsReturnType): RollupContract;
60
162
  static getFromConfig(config: L1ReaderConfig): RollupContract;
61
163
  constructor(client: ViemClient, address: Hex | EthAddress);
62
- getGSE(): Promise<`0x${string}`>;
164
+ getGSE(): Promise<EthAddress>;
63
165
  get address(): `0x${string}`;
64
166
  getContract(): GetContractReturnType<typeof RollupAbi, ViemClient>;
65
167
  getSlashingProposer(): Promise<EmpireSlashingProposerContract | TallySlashingProposerContract | undefined>;
66
168
  getL1StartBlock(): Promise<bigint>;
67
169
  getL1GenesisTime(): Promise<bigint>;
68
- getProofSubmissionEpochs(): Promise<bigint>;
69
- getEpochDuration(): Promise<bigint>;
170
+ getProofSubmissionEpochs(): Promise<number>;
171
+ getEpochDuration(): Promise<number>;
70
172
  getSlotDuration(): Promise<number>;
71
- getTargetCommitteeSize(): Promise<bigint>;
173
+ getTargetCommitteeSize(): Promise<number>;
72
174
  getEjectionThreshold(): Promise<bigint>;
73
175
  getLocalEjectionThreshold(): Promise<bigint>;
74
- getLagInEpochsForValidatorSet(): Promise<bigint>;
75
- getLagInEpochsForRandao(): Promise<bigint>;
176
+ getLagInEpochsForValidatorSet(): Promise<number>;
177
+ getLagInEpochsForRandao(): Promise<number>;
76
178
  getActivationThreshold(): Promise<bigint>;
77
- getExitDelay(): Promise<bigint>;
179
+ getExitDelay(): Promise<number>;
78
180
  getManaTarget(): Promise<bigint>;
79
181
  getProvingCostPerMana(): Promise<bigint>;
80
182
  getProvingCostPerManaInFeeAsset(): Promise<bigint>;
81
183
  getManaLimit(): Promise<bigint>;
82
184
  getVersion(): Promise<bigint>;
83
- getGenesisArchiveTreeRoot(): Promise<`0x${string}`>;
185
+ getGenesisArchiveTreeRoot(): Promise<Fr>;
84
186
  /**
85
187
  * Returns rollup constants used for epoch queries.
86
188
  * Return type is `L1RollupConstants` which is defined in stdlib,
@@ -93,59 +195,58 @@ export declare class RollupContract {
93
195
  epochDuration: number;
94
196
  proofSubmissionEpochs: number;
95
197
  }>;
96
- getSlasherAddress(): Promise<`0x${string}`>;
198
+ getSlasherAddress(): Promise<EthAddress>;
199
+ /**
200
+ * Returns the configured escape hatch contract address, or zero if disabled.
201
+ */
202
+ getEscapeHatchAddress(): Promise<EthAddress>;
203
+ private getEscapeHatchContract;
204
+ /**
205
+ * Returns whether the escape hatch is open for the given epoch.
206
+ * If escape hatch is not configured, returns false.
207
+ *
208
+ * This function is intentionally defensive: any failure to query the escape hatch
209
+ * (RPC issues, transient errors, etc.) is treated as "closed" to avoid callers
210
+ * needing to sprinkle try/catch everywhere.
211
+ */
212
+ isEscapeHatchOpen(epoch: EpochNumber): Promise<boolean>;
97
213
  /**
98
214
  * Returns a SlasherContract instance for interacting with the slasher contract.
99
215
  */
100
216
  getSlasherContract(): Promise<SlasherContract | undefined>;
101
- getOwner(): Promise<`0x${string}`>;
102
- getActiveAttesterCount(): Promise<bigint>;
217
+ getOwner(): Promise<EthAddress>;
218
+ getActiveAttesterCount(): Promise<number>;
103
219
  getSlashingProposerAddress(): Promise<EthAddress>;
104
220
  getCheckpointReward(): Promise<bigint>;
105
221
  getCheckpointNumber(): Promise<CheckpointNumber>;
106
222
  getProvenCheckpointNumber(): Promise<CheckpointNumber>;
107
223
  getSlotNumber(): Promise<SlotNumber>;
108
- getL1FeesAt(timestamp: bigint): Promise<{
109
- baseFee: bigint;
110
- blobFee: bigint;
111
- }>;
224
+ getL1FeesAt(timestamp: bigint): Promise<L1FeeData>;
112
225
  getFeeAssetPerEth(): Promise<bigint>;
113
- getCommitteeAt(timestamp: bigint): Promise<readonly `0x${string}`[] | undefined>;
114
- getSampleSeedAt(timestamp: bigint): Promise<bigint>;
115
- getCurrentSampleSeed(): Promise<bigint>;
226
+ getCommitteeAt(timestamp: bigint): Promise<EthAddress[] | undefined>;
227
+ getSampleSeedAt(timestamp: bigint): Promise<Buffer32>;
228
+ getCurrentSampleSeed(): Promise<Buffer32>;
116
229
  getCurrentEpoch(): Promise<EpochNumber>;
117
- getCurrentEpochCommittee(): Promise<readonly `0x${string}`[] | undefined>;
118
- getCurrentProposer(): Promise<`0x${string}`>;
119
- getProposerAt(timestamp: bigint): Promise<`0x${string}`>;
120
- getCheckpoint(checkpointNumber: CheckpointNumber): Promise<{
121
- archive: `0x${string}`;
122
- attestationsHash: `0x${string}`;
123
- blobCommitmentsHash: `0x${string}`;
124
- feeHeader: {
125
- congestionCost: bigint;
126
- excessMana: bigint;
127
- feeAssetPriceNumerator: bigint;
128
- manaUsed: bigint;
129
- proverCost: bigint;
130
- };
131
- headerHash: `0x${string}`;
132
- payloadDigest: `0x${string}`;
133
- slotNumber: bigint;
134
- }>;
230
+ getCurrentEpochCommittee(): Promise<EthAddress[] | undefined>;
231
+ getCurrentProposer(): Promise<EthAddress>;
232
+ getProposerAt(timestamp: bigint): Promise<EthAddress>;
233
+ getCheckpoint(checkpointNumber: CheckpointNumber): Promise<CheckpointLog>;
234
+ /** Returns the pending checkpoint from the rollup contract */
235
+ getPendingCheckpoint(): Promise<CheckpointLog>;
135
236
  getTips(): Promise<{
136
237
  pending: CheckpointNumber;
137
238
  proven: CheckpointNumber;
138
239
  }>;
139
240
  getTimestampForSlot(slot: SlotNumber): Promise<bigint>;
140
- getEntryQueueLength(): Promise<bigint>;
141
- getAvailableValidatorFlushes(): Promise<bigint>;
241
+ getEntryQueueLength(): Promise<number>;
242
+ getAvailableValidatorFlushes(): Promise<number>;
142
243
  getNextFlushableEpoch(): Promise<EpochNumber>;
143
244
  getCurrentEpochNumber(): Promise<EpochNumber>;
144
245
  getEpochNumberForCheckpoint(checkpointNumber: CheckpointNumber): Promise<EpochNumber>;
145
246
  getRollupAddresses(): Promise<L1RollupContractAddresses>;
146
247
  getFeeJuicePortal(): Promise<EthAddress>;
147
248
  getEpochNumberForSlotNumber(slotNumber: SlotNumber): Promise<EpochNumber>;
148
- getEpochProofPublicInputs(args: readonly [bigint, bigint, EpochProofPublicInputArgs, readonly `0x${string}`[], `0x${string}`]): Promise<readonly `0x${string}`[]>;
249
+ getEpochProofPublicInputs(args: readonly [bigint, bigint, EpochProofPublicInputArgs, readonly `0x${string}`[], `0x${string}`]): Promise<Fr[]>;
149
250
  validateHeader(args: readonly [
150
251
  ViemHeader,
151
252
  ViemCommitteeAttestations,
@@ -187,48 +288,25 @@ export declare class RollupContract {
187
288
  buildInvalidateInsufficientAttestationsRequest(checkpointNumber: CheckpointNumber, attestationsAndSigners: ViemCommitteeAttestations, committee: EthAddress[]): L1TxRequest;
188
289
  /** Calls getHasSubmitted directly. Returns whether the given prover has submitted a proof with the given length for the given epoch. */
189
290
  getHasSubmittedProof(epochNumber: EpochNumber, numberOfCheckpointsInEpoch: number, prover: Hex | EthAddress): Promise<boolean>;
190
- getManaBaseFeeAt(timestamp: bigint, inFeeAsset: boolean): Promise<bigint>;
291
+ getManaMinFeeAt(timestamp: bigint, inFeeAsset: boolean): Promise<bigint>;
191
292
  getSlotAt(timestamp: bigint): Promise<SlotNumber>;
192
293
  status(checkpointNumber: CheckpointNumber, options?: {
193
294
  blockNumber?: bigint;
194
- }): Promise<readonly [bigint, `0x${string}`, bigint, `0x${string}`, `0x${string}`, bigint]>;
295
+ }): Promise<RollupStatusResponse>;
195
296
  canPruneAtTime(timestamp: bigint, options?: {
196
297
  blockNumber?: bigint;
197
298
  }): Promise<boolean>;
198
- archive(): Promise<`0x${string}`>;
199
- archiveAt(checkpointNumber: CheckpointNumber): Promise<`0x${string}`>;
299
+ archive(): Promise<Fr>;
300
+ archiveAt(checkpointNumber: CheckpointNumber): Promise<Fr>;
200
301
  getSequencerRewards(address: Hex | EthAddress): Promise<bigint>;
201
302
  getSpecificProverRewardsForEpoch(epoch: bigint, prover: Hex | EthAddress): Promise<bigint>;
202
- getAttesters(): Promise<`0x${string}`[]>;
203
- getAttesterView(address: Hex | EthAddress): Promise<{
204
- config: {
205
- publicKey: {
206
- x: bigint;
207
- y: bigint;
208
- };
209
- withdrawer: `0x${string}`;
210
- };
211
- effectiveBalance: bigint;
212
- exit: {
213
- amount: bigint;
214
- exists: boolean;
215
- exitableAt: bigint;
216
- isRecipient: boolean;
217
- recipientOrWithdrawer: `0x${string}`;
218
- withdrawalId: bigint;
219
- };
220
- status: number;
221
- }>;
222
- getStatus(address: Hex | EthAddress): Promise<number>;
223
- getBlobCommitmentsHash(checkpointNumber: CheckpointNumber): Promise<`0x${string}`>;
224
- getCurrentBlobCommitmentsHash(): Promise<`0x${string}`>;
225
- getStakingAsset(): Promise<`0x${string}`>;
226
- getRewardConfig(): Promise<{
227
- booster: `0x${string}`;
228
- checkpointReward: bigint;
229
- rewardDistributor: `0x${string}`;
230
- sequencerBps: number;
231
- }>;
303
+ getAttesters(): Promise<EthAddress[]>;
304
+ getAttesterView(address: Hex | EthAddress): Promise<AttesterView>;
305
+ getStatus(address: Hex | EthAddress): Promise<AttesterStatus>;
306
+ getBlobCommitmentsHash(checkpointNumber: CheckpointNumber): Promise<Buffer32>;
307
+ getCurrentBlobCommitmentsHash(): Promise<Buffer32>;
308
+ getStakingAsset(): Promise<EthAddress>;
309
+ getRewardConfig(): Promise<RewardConfig>;
232
310
  setupEpoch(l1TxUtils: L1TxUtils): Promise<{
233
311
  receipt: import("viem").TransactionReceipt;
234
312
  state: import("../l1_tx_utils/types.js").L1TxState;
@@ -252,5 +330,7 @@ export declare class RollupContract {
252
330
  amount: bigint;
253
331
  attester: EthAddress;
254
332
  }) => unknown): WatchContractEventReturnType;
333
+ /** Fetches CheckpointProposed events within the given block range. */
334
+ getCheckpointProposedEvents(fromBlock: bigint, toBlock: bigint): Promise<CheckpointProposedLog[]>;
255
335
  }
256
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3RzL3JvbGx1cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTVGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJMUQsT0FBTyxFQUNMLEtBQUssT0FBTyxFQUNaLEtBQUsscUJBQXFCLEVBQzFCLEtBQUssR0FBRyxFQUNSLEtBQUssYUFBYSxFQUNsQixLQUFLLDRCQUE0QixFQUtsQyxNQUFNLE1BQU0sQ0FBQztBQUdkLE9BQU8sS0FBSyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0UsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTlDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRS9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUc3RSxNQUFNLE1BQU0sd0JBQXdCLEdBQUc7SUFDckMsSUFBSSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDcEIsU0FBUyxFQUFFLGFBQWEsQ0FB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
336
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3RzL3JvbGx1cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBR3JFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUkxRCxPQUFPLEVBQ0wsS0FBSyxPQUFPLEVBQ1osS0FBSyxxQkFBcUIsRUFDMUIsS0FBSyxHQUFHLEVBQ1IsS0FBSyxhQUFhLEVBQ2xCLEtBQUssNEJBQTRCLEVBS2xDLE1BQU0sTUFBTSxDQUFDO0FBR2QsT0FBTyxLQUFLLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RixPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZFLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFOUMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFL0UsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztB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
@@ -1 +1 @@
1
- {"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/contracts/rollup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rollup.d.ts","sourceRoot":"","sources":["../../src/contracts/rollup.ts"],"names":[],"mappings":"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"}