@aztec/ethereum 0.0.1-commit.9b94fc1 → 0.0.1-commit.9badcec54

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 (212) hide show
  1. package/dest/client.d.ts +10 -2
  2. package/dest/client.d.ts.map +1 -1
  3. package/dest/client.js +13 -3
  4. package/dest/config.d.ts +26 -73
  5. package/dest/config.d.ts.map +1 -1
  6. package/dest/config.js +64 -387
  7. package/dest/contracts/chain_state_override.d.ts +38 -0
  8. package/dest/contracts/chain_state_override.d.ts.map +1 -0
  9. package/dest/contracts/chain_state_override.js +100 -0
  10. package/dest/contracts/empire_base.d.ts +4 -1
  11. package/dest/contracts/empire_base.d.ts.map +1 -1
  12. package/dest/contracts/fee_asset_handler.d.ts +6 -5
  13. package/dest/contracts/fee_asset_handler.d.ts.map +1 -1
  14. package/dest/contracts/fee_asset_handler.js +11 -9
  15. package/dest/contracts/fee_asset_price_oracle.d.ts +101 -0
  16. package/dest/contracts/fee_asset_price_oracle.d.ts.map +1 -0
  17. package/dest/contracts/fee_asset_price_oracle.js +651 -0
  18. package/dest/contracts/governance.d.ts +3 -1
  19. package/dest/contracts/governance.d.ts.map +1 -1
  20. package/dest/contracts/governance.js +14 -4
  21. package/dest/contracts/governance_proposer.d.ts +4 -1
  22. package/dest/contracts/governance_proposer.d.ts.map +1 -1
  23. package/dest/contracts/governance_proposer.js +404 -9
  24. package/dest/contracts/inbox.d.ts +24 -3
  25. package/dest/contracts/inbox.d.ts.map +1 -1
  26. package/dest/contracts/inbox.js +35 -1
  27. package/dest/contracts/index.d.ts +6 -3
  28. package/dest/contracts/index.d.ts.map +1 -1
  29. package/dest/contracts/index.js +5 -2
  30. package/dest/contracts/log.d.ts +13 -0
  31. package/dest/contracts/log.d.ts.map +1 -0
  32. package/dest/contracts/log.js +1 -0
  33. package/dest/contracts/multicall.d.ts +51 -2
  34. package/dest/contracts/multicall.d.ts.map +1 -1
  35. package/dest/contracts/multicall.js +87 -1
  36. package/dest/contracts/outbox.d.ts +41 -0
  37. package/dest/contracts/outbox.d.ts.map +1 -0
  38. package/dest/contracts/outbox.js +86 -0
  39. package/dest/contracts/registry.d.ts +3 -1
  40. package/dest/contracts/registry.d.ts.map +1 -1
  41. package/dest/contracts/registry.js +30 -1
  42. package/dest/contracts/rollup.d.ts +251 -107
  43. package/dest/contracts/rollup.d.ts.map +1 -1
  44. package/dest/contracts/rollup.js +991 -188
  45. package/dest/contracts/{tally_slashing_proposer.d.ts → slashing_proposer.d.ts} +5 -5
  46. package/dest/contracts/slashing_proposer.d.ts.map +1 -0
  47. package/dest/contracts/{tally_slashing_proposer.js → slashing_proposer.js} +18 -13
  48. package/dest/deploy_aztec_l1_contracts.d.ts +256 -0
  49. package/dest/deploy_aztec_l1_contracts.d.ts.map +1 -0
  50. package/dest/deploy_aztec_l1_contracts.js +411 -0
  51. package/dest/deploy_l1_contract.d.ts +68 -0
  52. package/dest/deploy_l1_contract.d.ts.map +1 -0
  53. package/dest/deploy_l1_contract.js +312 -0
  54. package/dest/forwarder_proxy.d.ts +32 -0
  55. package/dest/forwarder_proxy.d.ts.map +1 -0
  56. package/dest/forwarder_proxy.js +93 -0
  57. package/dest/generated/l1-contracts-defaults.d.ts +30 -0
  58. package/dest/generated/l1-contracts-defaults.d.ts.map +1 -0
  59. package/dest/generated/l1-contracts-defaults.js +30 -0
  60. package/dest/l1_artifacts.d.ts +14182 -17121
  61. package/dest/l1_artifacts.d.ts.map +1 -1
  62. package/dest/l1_artifacts.js +9 -24
  63. package/dest/l1_contract_addresses.d.ts +1 -5
  64. package/dest/l1_contract_addresses.d.ts.map +1 -1
  65. package/dest/l1_contract_addresses.js +3 -9
  66. package/dest/l1_reader.d.ts +5 -1
  67. package/dest/l1_reader.d.ts.map +1 -1
  68. package/dest/l1_reader.js +12 -1
  69. package/dest/l1_tx_utils/config.d.ts +9 -3
  70. package/dest/l1_tx_utils/config.d.ts.map +1 -1
  71. package/dest/l1_tx_utils/config.js +31 -4
  72. package/dest/l1_tx_utils/constants.d.ts +8 -2
  73. package/dest/l1_tx_utils/constants.d.ts.map +1 -1
  74. package/dest/l1_tx_utils/constants.js +27 -2
  75. package/dest/l1_tx_utils/factory.d.ts +18 -10
  76. package/dest/l1_tx_utils/factory.d.ts.map +1 -1
  77. package/dest/l1_tx_utils/factory.js +17 -7
  78. package/dest/l1_tx_utils/fee-strategies/index.d.ts +10 -0
  79. package/dest/l1_tx_utils/fee-strategies/index.d.ts.map +1 -0
  80. package/dest/l1_tx_utils/fee-strategies/index.js +12 -0
  81. package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts +8 -0
  82. package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts.map +1 -0
  83. package/dest/l1_tx_utils/fee-strategies/p75_competitive.js +129 -0
  84. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts +23 -0
  85. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts.map +1 -0
  86. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.js +191 -0
  87. package/dest/l1_tx_utils/fee-strategies/types.d.ts +51 -0
  88. package/dest/l1_tx_utils/fee-strategies/types.d.ts.map +1 -0
  89. package/dest/l1_tx_utils/fee-strategies/types.js +3 -0
  90. package/dest/l1_tx_utils/forwarder_l1_tx_utils.d.ts +41 -0
  91. package/dest/l1_tx_utils/forwarder_l1_tx_utils.d.ts.map +1 -0
  92. package/dest/l1_tx_utils/forwarder_l1_tx_utils.js +42 -0
  93. package/dest/l1_tx_utils/index-blobs.d.ts +3 -0
  94. package/dest/l1_tx_utils/index-blobs.d.ts.map +1 -0
  95. package/dest/l1_tx_utils/index-blobs.js +2 -0
  96. package/dest/l1_tx_utils/index.d.ts +4 -1
  97. package/dest/l1_tx_utils/index.d.ts.map +1 -1
  98. package/dest/l1_tx_utils/index.js +3 -0
  99. package/dest/l1_tx_utils/interfaces.d.ts +2 -2
  100. package/dest/l1_tx_utils/interfaces.d.ts.map +1 -1
  101. package/dest/l1_tx_utils/l1_fee_analyzer.d.ts +233 -0
  102. package/dest/l1_tx_utils/l1_fee_analyzer.d.ts.map +1 -0
  103. package/dest/l1_tx_utils/l1_fee_analyzer.js +506 -0
  104. package/dest/l1_tx_utils/l1_tx_utils.d.ts +20 -7
  105. package/dest/l1_tx_utils/l1_tx_utils.d.ts.map +1 -1
  106. package/dest/l1_tx_utils/l1_tx_utils.js +98 -61
  107. package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts +4 -15
  108. package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts.map +1 -1
  109. package/dest/l1_tx_utils/readonly_l1_tx_utils.js +61 -164
  110. package/dest/l1_tx_utils/tx_delayer.d.ts +56 -0
  111. package/dest/l1_tx_utils/tx_delayer.d.ts.map +1 -0
  112. package/dest/{test → l1_tx_utils}/tx_delayer.js +65 -36
  113. package/dest/publisher_manager.d.ts +21 -6
  114. package/dest/publisher_manager.d.ts.map +1 -1
  115. package/dest/publisher_manager.js +81 -7
  116. package/dest/queries.d.ts +2 -2
  117. package/dest/queries.d.ts.map +1 -1
  118. package/dest/queries.js +15 -7
  119. package/dest/test/chain_monitor.d.ts +35 -14
  120. package/dest/test/chain_monitor.d.ts.map +1 -1
  121. package/dest/test/chain_monitor.js +40 -11
  122. package/dest/test/eth_cheat_codes.d.ts +18 -4
  123. package/dest/test/eth_cheat_codes.d.ts.map +1 -1
  124. package/dest/test/eth_cheat_codes.js +10 -6
  125. package/dest/test/index.d.ts +1 -3
  126. package/dest/test/index.d.ts.map +1 -1
  127. package/dest/test/index.js +0 -2
  128. package/dest/test/rollup_cheat_codes.d.ts +13 -6
  129. package/dest/test/rollup_cheat_codes.d.ts.map +1 -1
  130. package/dest/test/rollup_cheat_codes.js +41 -7
  131. package/dest/test/start_anvil.d.ts +24 -2
  132. package/dest/test/start_anvil.d.ts.map +1 -1
  133. package/dest/test/start_anvil.js +143 -29
  134. package/dest/test/upgrade_utils.js +2 -2
  135. package/dest/types.d.ts +57 -2
  136. package/dest/types.d.ts.map +1 -1
  137. package/dest/utils.d.ts +16 -3
  138. package/dest/utils.d.ts.map +1 -1
  139. package/dest/utils.js +80 -12
  140. package/package.json +33 -16
  141. package/src/client.ts +10 -2
  142. package/src/config.ts +82 -468
  143. package/src/contracts/README.md +157 -0
  144. package/src/contracts/chain_state_override.ts +147 -0
  145. package/src/contracts/empire_base.ts +3 -1
  146. package/src/contracts/fee_asset_handler.ts +10 -7
  147. package/src/contracts/fee_asset_price_oracle.ts +280 -0
  148. package/src/contracts/governance.ts +13 -4
  149. package/src/contracts/governance_proposer.ts +16 -2
  150. package/src/contracts/inbox.ts +55 -3
  151. package/src/contracts/index.ts +5 -2
  152. package/src/contracts/log.ts +13 -0
  153. package/src/contracts/multicall.ts +70 -3
  154. package/src/contracts/outbox.ts +98 -0
  155. package/src/contracts/registry.ts +31 -1
  156. package/src/contracts/rollup.ts +689 -149
  157. package/src/contracts/{tally_slashing_proposer.ts → slashing_proposer.ts} +18 -14
  158. package/src/deploy_aztec_l1_contracts.ts +646 -0
  159. package/src/deploy_l1_contract.ts +362 -0
  160. package/src/forwarder_proxy.ts +108 -0
  161. package/src/generated/l1-contracts-defaults.ts +32 -0
  162. package/src/l1_artifacts.ts +12 -35
  163. package/src/l1_contract_addresses.ts +21 -26
  164. package/src/l1_reader.ts +21 -1
  165. package/src/l1_tx_utils/config.ts +44 -6
  166. package/src/l1_tx_utils/constants.ts +13 -2
  167. package/src/l1_tx_utils/factory.ts +31 -31
  168. package/src/l1_tx_utils/fee-strategies/index.ts +22 -0
  169. package/src/l1_tx_utils/fee-strategies/p75_competitive.ts +163 -0
  170. package/src/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.ts +245 -0
  171. package/src/l1_tx_utils/fee-strategies/types.ts +56 -0
  172. package/src/l1_tx_utils/forwarder_l1_tx_utils.ts +108 -0
  173. package/src/l1_tx_utils/index-blobs.ts +2 -0
  174. package/src/l1_tx_utils/index.ts +3 -0
  175. package/src/l1_tx_utils/interfaces.ts +1 -1
  176. package/src/l1_tx_utils/l1_fee_analyzer.ts +803 -0
  177. package/src/l1_tx_utils/l1_tx_utils.ts +98 -40
  178. package/src/l1_tx_utils/readonly_l1_tx_utils.ts +75 -210
  179. package/src/{test → l1_tx_utils}/tx_delayer.ts +82 -52
  180. package/src/publisher_manager.ts +107 -10
  181. package/src/queries.ts +14 -6
  182. package/src/test/chain_monitor.ts +77 -18
  183. package/src/test/eth_cheat_codes.ts +8 -6
  184. package/src/test/index.ts +0 -2
  185. package/src/test/rollup_cheat_codes.ts +43 -10
  186. package/src/test/start_anvil.ts +178 -28
  187. package/src/test/upgrade_utils.ts +2 -2
  188. package/src/types.ts +62 -0
  189. package/src/utils.ts +100 -15
  190. package/dest/contracts/empire_slashing_proposer.d.ts +0 -66
  191. package/dest/contracts/empire_slashing_proposer.d.ts.map +0 -1
  192. package/dest/contracts/empire_slashing_proposer.js +0 -200
  193. package/dest/contracts/tally_slashing_proposer.d.ts.map +0 -1
  194. package/dest/deploy_l1_contracts.d.ts +0 -673
  195. package/dest/deploy_l1_contracts.d.ts.map +0 -1
  196. package/dest/deploy_l1_contracts.js +0 -1491
  197. package/dest/index.d.ts +0 -18
  198. package/dest/index.d.ts.map +0 -1
  199. package/dest/index.js +0 -17
  200. package/dest/l1_tx_utils/l1_tx_utils_with_blobs.d.ts +0 -26
  201. package/dest/l1_tx_utils/l1_tx_utils_with_blobs.d.ts.map +0 -1
  202. package/dest/l1_tx_utils/l1_tx_utils_with_blobs.js +0 -26
  203. package/dest/test/delayed_tx_utils.d.ts +0 -13
  204. package/dest/test/delayed_tx_utils.d.ts.map +0 -1
  205. package/dest/test/delayed_tx_utils.js +0 -28
  206. package/dest/test/tx_delayer.d.ts +0 -36
  207. package/dest/test/tx_delayer.d.ts.map +0 -1
  208. package/src/contracts/empire_slashing_proposer.ts +0 -265
  209. package/src/deploy_l1_contracts.ts +0 -1869
  210. package/src/index.ts +0 -17
  211. package/src/l1_tx_utils/l1_tx_utils_with_blobs.ts +0 -77
  212. package/src/test/delayed_tx_utils.ts +0 -52
@@ -1,16 +1,18 @@
1
- import { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
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
- import { EmpireSlashingProposerContract } from './empire_slashing_proposer.js';
13
+ import type { L1EventLog } from './log.js';
12
14
  import { SlasherContract } from './slasher_contract.js';
13
- import { TallySlashingProposerContract } from './tally_slashing_proposer.js';
15
+ import { SlashingProposerContract } from './slashing_proposer.js';
14
16
  export type ViemCommitteeAttestation = {
15
17
  addr: `0x${string}`;
16
18
  signature: ViemSignature;
@@ -19,16 +21,19 @@ export type ViemCommitteeAttestations = {
19
21
  signatureIndices: `0x${string}`;
20
22
  signaturesOrAddresses: `0x${string}`;
21
23
  };
22
- export type L1RollupContractAddresses = Pick<L1ContractAddresses, 'rollupAddress' | 'inboxAddress' | 'outboxAddress' | 'feeJuicePortalAddress' | 'feeJuiceAddress' | 'stakingAssetAddress' | 'rewardDistributorAddress' | 'slashFactoryAddress' | 'gseAddress'>;
24
+ export type L1RollupContractAddresses = Pick<L1ContractAddresses, 'rollupAddress' | 'inboxAddress' | 'outboxAddress' | 'feeJuicePortalAddress' | 'feeJuiceAddress' | 'stakingAssetAddress' | 'rewardDistributorAddress' | 'gseAddress'>;
23
25
  export type EpochProofPublicInputArgs = {
24
26
  previousArchive: `0x${string}`;
25
27
  endArchive: `0x${string}`;
28
+ outHash: `0x${string}`;
26
29
  proverId: `0x${string}`;
27
30
  };
28
31
  export type ViemHeader = {
29
32
  lastArchiveRoot: `0x${string}`;
30
33
  blockHeadersHash: `0x${string}`;
31
- contentCommitment: ViemContentCommitment;
34
+ blobsHash: `0x${string}`;
35
+ inHash: `0x${string}`;
36
+ outHash: `0x${string}`;
32
37
  slotNumber: bigint;
33
38
  timestamp: bigint;
34
39
  coinbase: `0x${string}`;
@@ -36,51 +41,162 @@ export type ViemHeader = {
36
41
  gasFees: ViemGasFees;
37
42
  totalManaUsed: bigint;
38
43
  };
39
- export type ViemContentCommitment = {
40
- blobsHash: `0x${string}`;
41
- inHash: `0x${string}`;
42
- outHash: `0x${string}`;
43
- };
44
44
  export type ViemGasFees = {
45
45
  feePerDaGas: bigint;
46
46
  feePerL2Gas: bigint;
47
47
  };
48
- export declare enum SlashingProposerType {
49
- None = 0,
50
- Tally = 1,
51
- Empire = 2
48
+ /**
49
+ * Status of a validator/attester in the staking system.
50
+ * Matches the Status enum in StakingLib.sol
51
+ */
52
+ export declare enum AttesterStatus {
53
+ NONE = 0,
54
+ VALIDATING = 1,
55
+ ZOMBIE = 2,
56
+ EXITING = 3
52
57
  }
58
+ /**
59
+ * Fee header data for a checkpoint
60
+ */
61
+ export type FeeHeader = {
62
+ excessMana: bigint;
63
+ manaUsed: bigint;
64
+ ethPerFeeAsset: bigint;
65
+ congestionCost: bigint;
66
+ proverCost: bigint;
67
+ };
68
+ /**
69
+ * Checkpoint log data returned from the rollup contract
70
+ */
71
+ export type CheckpointLog = {
72
+ archive: Fr;
73
+ headerHash: Buffer32;
74
+ blobCommitmentsHash: Buffer32;
75
+ attestationsHash: Buffer32;
76
+ payloadDigest: Buffer32;
77
+ slotNumber: SlotNumber;
78
+ feeHeader: FeeHeader;
79
+ };
80
+ /**
81
+ * L1 fee data (base fee and blob fee)
82
+ */
83
+ export type L1FeeData = {
84
+ baseFee: bigint;
85
+ blobFee: bigint;
86
+ };
87
+ /** Field offsets within the CompressedTempCheckpointLog struct in Solidity storage. */
88
+ export declare enum TempCheckpointLogField {
89
+ HeaderHash = 0,
90
+ BlobCommitmentsHash = 1,
91
+ OutHash = 2,
92
+ AttestationsHash = 3,
93
+ PayloadDigest = 4,
94
+ SlotNumber = 5,
95
+ FeeHeader = 6
96
+ }
97
+ /** Components of the minimum fee per mana, as returned by the L1 rollup contract. */
98
+ export type ManaMinFeeComponents = {
99
+ sequencerCost: bigint;
100
+ proverCost: bigint;
101
+ congestionCost: bigint;
102
+ congestionMultiplier: bigint;
103
+ };
104
+ /**
105
+ * Reward configuration for the rollup
106
+ */
107
+ export type RewardConfig = {
108
+ rewardDistributor: EthAddress;
109
+ sequencerBps: bigint;
110
+ booster: EthAddress;
111
+ checkpointReward: bigint;
112
+ };
113
+ /**
114
+ * Exit information for a validator
115
+ */
116
+ export type Exit = {
117
+ withdrawalId: bigint;
118
+ amount: bigint;
119
+ exitableAt: bigint;
120
+ recipientOrWithdrawer: EthAddress;
121
+ isRecipient: boolean;
122
+ exists: boolean;
123
+ };
124
+ /**
125
+ * Attester configuration including public key and withdrawer
126
+ */
127
+ export type AttesterConfig = {
128
+ publicKey: {
129
+ x: bigint;
130
+ y: bigint;
131
+ };
132
+ withdrawer: EthAddress;
133
+ };
134
+ /**
135
+ * Complete view of an attester's state
136
+ */
137
+ export type AttesterView = {
138
+ status: AttesterStatus;
139
+ effectiveBalance: bigint;
140
+ exit: Exit;
141
+ config: AttesterConfig;
142
+ };
143
+ /**
144
+ * Return for a status call
145
+ */
146
+ export type RollupStatusResponse = {
147
+ provenCheckpointNumber: CheckpointNumber;
148
+ provenArchive: Fr;
149
+ pendingCheckpointNumber: CheckpointNumber;
150
+ pendingArchive: Fr;
151
+ archiveOfMyCheckpoint: Fr;
152
+ };
153
+ /** Arguments for the CheckpointProposed event. */
154
+ export type CheckpointProposedArgs = {
155
+ checkpointNumber: CheckpointNumber;
156
+ archive: Fr;
157
+ versionedBlobHashes: Buffer[];
158
+ /** Hash of attestations emitted in the CheckpointProposed event. */
159
+ attestationsHash: Buffer32;
160
+ /** Digest of the payload emitted in the CheckpointProposed event. */
161
+ payloadDigest: Buffer32;
162
+ };
163
+ /** Log type for CheckpointProposed events. */
164
+ export type CheckpointProposedLog = L1EventLog<CheckpointProposedArgs>;
53
165
  export declare class RollupContract {
54
166
  readonly client: ViemClient;
55
167
  private readonly rollup;
168
+ private readonly logger;
56
169
  private static cachedStfStorageSlot;
170
+ private cachedEscapeHatch?;
57
171
  static get checkBlobStorageSlot(): bigint;
58
172
  static get stfStorageSlot(): Hex;
59
- static getFromL1ContractsValues(deployL1ContractsValues: DeployL1ContractsReturnType): RollupContract;
173
+ static getFromL1ContractsValues(deployL1ContractsValues: DeployAztecL1ContractsReturnType): RollupContract;
60
174
  static getFromConfig(config: L1ReaderConfig): RollupContract;
61
175
  constructor(client: ViemClient, address: Hex | EthAddress);
62
- getGSE(): Promise<`0x${string}`>;
176
+ getGSE(): Promise<EthAddress>;
63
177
  get address(): `0x${string}`;
64
178
  getContract(): GetContractReturnType<typeof RollupAbi, ViemClient>;
65
- getSlashingProposer(): Promise<EmpireSlashingProposerContract | TallySlashingProposerContract | undefined>;
179
+ getSlashingProposer(): Promise<SlashingProposerContract | undefined>;
66
180
  getL1StartBlock(): Promise<bigint>;
67
181
  getL1GenesisTime(): Promise<bigint>;
68
- getProofSubmissionEpochs(): Promise<bigint>;
69
- getEpochDuration(): Promise<bigint>;
182
+ getProofSubmissionEpochs(): Promise<number>;
183
+ getEpochDuration(): Promise<number>;
70
184
  getSlotDuration(): Promise<number>;
71
- getTargetCommitteeSize(): Promise<bigint>;
185
+ getTargetCommitteeSize(): Promise<number>;
72
186
  getEjectionThreshold(): Promise<bigint>;
73
187
  getLocalEjectionThreshold(): Promise<bigint>;
74
- getLagInEpochsForValidatorSet(): Promise<bigint>;
75
- getLagInEpochsForRandao(): Promise<bigint>;
188
+ getLagInEpochsForValidatorSet(): Promise<number>;
189
+ getLagInEpochsForRandao(): Promise<number>;
76
190
  getActivationThreshold(): Promise<bigint>;
77
- getExitDelay(): Promise<bigint>;
191
+ getExitDelay(): Promise<number>;
78
192
  getManaTarget(): Promise<bigint>;
79
193
  getProvingCostPerMana(): Promise<bigint>;
80
194
  getProvingCostPerManaInFeeAsset(): Promise<bigint>;
81
195
  getManaLimit(): Promise<bigint>;
82
196
  getVersion(): Promise<bigint>;
83
- getGenesisArchiveTreeRoot(): Promise<`0x${string}`>;
197
+ getGenesisArchiveTreeRoot(): Promise<Fr>;
198
+ getVkTreeRoot(): Promise<Fr>;
199
+ getProtocolContractsHash(): Promise<Fr>;
84
200
  /**
85
201
  * Returns rollup constants used for epoch queries.
86
202
  * Return type is `L1RollupConstants` which is defined in stdlib,
@@ -92,60 +208,82 @@ export declare class RollupContract {
92
208
  slotDuration: number;
93
209
  epochDuration: number;
94
210
  proofSubmissionEpochs: number;
211
+ targetCommitteeSize: number;
212
+ rollupManaLimit: number;
95
213
  }>;
96
- getSlasherAddress(): Promise<`0x${string}`>;
214
+ getSlasherAddress(): Promise<EthAddress>;
215
+ /**
216
+ * Returns the configured escape hatch contract address, or zero if disabled.
217
+ */
218
+ getEscapeHatchAddress(): Promise<EthAddress>;
219
+ private getEscapeHatchContract;
220
+ /**
221
+ * Returns whether the escape hatch is open for the given epoch.
222
+ * If escape hatch is not configured, returns false.
223
+ *
224
+ * This function is intentionally defensive: any failure to query the escape hatch
225
+ * (RPC issues, transient errors, etc.) is treated as "closed" to avoid callers
226
+ * needing to sprinkle try/catch everywhere.
227
+ */
228
+ isEscapeHatchOpen(epoch: EpochNumber): Promise<boolean>;
97
229
  /**
98
230
  * Returns a SlasherContract instance for interacting with the slasher contract.
99
231
  */
100
232
  getSlasherContract(): Promise<SlasherContract | undefined>;
101
- getOwner(): Promise<`0x${string}`>;
102
- getActiveAttesterCount(): Promise<bigint>;
233
+ getOwner(): Promise<EthAddress>;
234
+ getActiveAttesterCount(): Promise<number>;
103
235
  getSlashingProposerAddress(): Promise<EthAddress>;
104
236
  getCheckpointReward(): Promise<bigint>;
105
- getCheckpointNumber(): Promise<bigint>;
106
- getProvenCheckpointNumber(): Promise<bigint>;
107
- getSlotNumber(): Promise<SlotNumber>;
108
- getL1FeesAt(timestamp: bigint): Promise<{
109
- baseFee: bigint;
110
- blobFee: bigint;
111
- }>;
112
- getFeeAssetPerEth(): Promise<bigint>;
113
- getCommitteeAt(timestamp: bigint): Promise<readonly `0x${string}`[] | undefined>;
114
- getSampleSeedAt(timestamp: bigint): Promise<bigint>;
115
- getCurrentSampleSeed(): Promise<bigint>;
237
+ getCheckpointNumber(options?: {
238
+ blockNumber?: bigint;
239
+ }): Promise<CheckpointNumber>;
240
+ getProvenCheckpointNumber(options?: {
241
+ blockNumber?: bigint;
242
+ }): Promise<CheckpointNumber>;
243
+ getSlotNumber(options?: {
244
+ blockNumber?: bigint;
245
+ }): Promise<SlotNumber>;
246
+ getL1FeesAt(timestamp: bigint, options?: {
247
+ blockNumber?: bigint;
248
+ }): Promise<L1FeeData>;
249
+ getFeeHeader(checkpointNumber: bigint): Promise<FeeHeader>;
250
+ getEthPerFeeAsset(): Promise<bigint>;
251
+ getCommitteeAt(timestamp: bigint): Promise<EthAddress[] | undefined>;
252
+ getSampleSeedAt(timestamp: bigint): Promise<Buffer32>;
253
+ getCurrentSampleSeed(): Promise<Buffer32>;
116
254
  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: bigint | number): 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
- }>;
255
+ getCurrentEpochCommittee(): Promise<EthAddress[] | undefined>;
256
+ getCurrentProposer(): Promise<EthAddress>;
257
+ getProposerAt(timestamp: bigint): Promise<EthAddress>;
258
+ getCheckpoint(checkpointNumber: CheckpointNumber, options?: {
259
+ blockNumber?: bigint;
260
+ }): Promise<CheckpointLog>;
261
+ /** Returns the pending checkpoint from the rollup contract */
262
+ getPendingCheckpoint(): Promise<CheckpointLog>;
263
+ /**
264
+ * Returns the effective pending checkpoint, accounting for potential prunes.
265
+ * When a prune can happen, the L1 contract uses the proven checkpoint instead of the pending one.
266
+ * This mirrors the behavior of getEffectivePendingCheckpointNumber in STFLib.sol.
267
+ * @param atTimestamp - The timestamp to evaluate pruneability at. Defaults to the current L1 block timestamp.
268
+ * @param options - Optional L1 block number to pin the queries to.
269
+ */
270
+ getEffectivePendingCheckpoint(atTimestamp?: bigint, options?: {
271
+ blockNumber?: bigint;
272
+ }): Promise<CheckpointLog>;
135
273
  getTips(): Promise<{
136
- pending: bigint;
137
- proven: bigint;
274
+ pending: CheckpointNumber;
275
+ proven: CheckpointNumber;
138
276
  }>;
139
277
  getTimestampForSlot(slot: SlotNumber): Promise<bigint>;
140
- getEntryQueueLength(): Promise<bigint>;
141
- getAvailableValidatorFlushes(): Promise<bigint>;
278
+ getEntryQueueLength(): Promise<number>;
279
+ getAvailableValidatorFlushes(): Promise<number>;
142
280
  getNextFlushableEpoch(): Promise<EpochNumber>;
143
281
  getCurrentEpochNumber(): Promise<EpochNumber>;
144
- getEpochNumberForCheckpoint(checkpointNumber: bigint): Promise<EpochNumber>;
282
+ getEpochNumberForCheckpoint(checkpointNumber: CheckpointNumber): Promise<EpochNumber>;
145
283
  getRollupAddresses(): Promise<L1RollupContractAddresses>;
146
284
  getFeeJuicePortal(): Promise<EthAddress>;
147
285
  getEpochNumberForSlotNumber(slotNumber: SlotNumber): Promise<EpochNumber>;
148
- getEpochProofPublicInputs(args: readonly [bigint, bigint, EpochProofPublicInputArgs, readonly `0x${string}`[], `0x${string}`]): Promise<readonly `0x${string}`[]>;
286
+ getEpochProofPublicInputs(args: readonly [bigint, bigint, EpochProofPublicInputArgs, readonly `0x${string}`[], `0x${string}`]): Promise<Fr[]>;
149
287
  validateHeader(args: readonly [
150
288
  ViemHeader,
151
289
  ViemCommitteeAttestations,
@@ -168,11 +306,9 @@ export declare class RollupContract {
168
306
  * timestamp of the next L1 block
169
307
  * @throws otherwise
170
308
  */
171
- canProposeAtNextEthBlock(archive: Buffer, account: `0x${string}` | Account, slotDuration: number, opts?: {
172
- forcePendingCheckpointNumber?: number;
173
- }): Promise<{
309
+ canProposeAt(archive: Buffer, account: `0x${string}` | Account, timestamp: bigint, stateOverride?: StateOverride): Promise<{
174
310
  slot: SlotNumber;
175
- checkpointNumber: bigint;
311
+ checkpointNumber: CheckpointNumber;
176
312
  timeOfNextL1Slot: bigint;
177
313
  }>;
178
314
  /**
@@ -180,55 +316,51 @@ export declare class RollupContract {
180
316
  * Requires querying the current state of the contract to get the current proven checkpoint number, as they are both
181
317
  * stored in the same slot. If the argument is undefined, it returns an empty override.
182
318
  */
183
- makePendingCheckpointNumberOverride(forcePendingCheckpointNumber: number | undefined): Promise<StateOverride>;
319
+ makePendingCheckpointNumberOverride(forcePendingCheckpointNumber: CheckpointNumber | undefined): Promise<StateOverride>;
320
+ /**
321
+ * Returns a state override that sets tempCheckpointLogs[checkpointNumber].feeHeader to the compressed fee header.
322
+ * Used when simulating a propose call where the parent checkpoint hasn't landed on L1 yet (pipelining).
323
+ */
324
+ makeFeeHeaderOverride(checkpointNumber: CheckpointNumber, feeHeader: FeeHeader): Promise<StateOverride>;
325
+ /**
326
+ * Returns a state override that sets archives[checkpointNumber] to the given archive value.
327
+ * Used when simulating a canProposeAtTime call where the local archive differs from L1
328
+ * (e.g. pipelining where the parent checkpoint hasn't landed on L1 yet).
329
+ */
330
+ makeArchiveOverride(checkpointNumber: CheckpointNumber, archive: Fr): StateOverride;
331
+ /** Merges multiple StateOverride arrays, combining stateDiff entries for the same address. */
332
+ static mergeStateOverrides(...overrides: StateOverride[]): StateOverride;
333
+ /** Compresses a FeeHeader into a uint256 matching FeeHeaderLib.compress() in FeeStructs.sol. */
334
+ static compressFeeHeader(feeHeader: FeeHeader): bigint;
335
+ /** Computes the fee header for a child checkpoint given parent fee header and child data.
336
+ * Must stay in sync with Solidity FeeLib.sol (computeNewEthPerFeeAsset, clampedAdd). */
337
+ static computeChildFeeHeader(parentFeeHeader: FeeHeader, childManaUsed: bigint, feeAssetPriceModifier: bigint, manaTarget: bigint): FeeHeader;
184
338
  /** Creates a request to Rollup#invalidateBadAttestation to be simulated or sent */
185
- buildInvalidateBadAttestationRequest(checkpointNumber: number, attestationsAndSigners: ViemCommitteeAttestations, committee: EthAddress[], invalidIndex: number): L1TxRequest;
339
+ buildInvalidateBadAttestationRequest(checkpointNumber: CheckpointNumber, attestationsAndSigners: ViemCommitteeAttestations, committee: EthAddress[], invalidIndex: number): L1TxRequest;
186
340
  /** Creates a request to Rollup#invalidateInsufficientAttestations to be simulated or sent */
187
- buildInvalidateInsufficientAttestationsRequest(checkpointNumber: number, attestationsAndSigners: ViemCommitteeAttestations, committee: EthAddress[]): L1TxRequest;
341
+ buildInvalidateInsufficientAttestationsRequest(checkpointNumber: CheckpointNumber, attestationsAndSigners: ViemCommitteeAttestations, committee: EthAddress[]): L1TxRequest;
188
342
  /** Calls getHasSubmitted directly. Returns whether the given prover has submitted a proof with the given length for the given epoch. */
189
343
  getHasSubmittedProof(epochNumber: EpochNumber, numberOfCheckpointsInEpoch: number, prover: Hex | EthAddress): Promise<boolean>;
190
- getManaBaseFeeAt(timestamp: bigint, inFeeAsset: boolean): Promise<bigint>;
344
+ getManaMinFeeAt(timestamp: bigint, inFeeAsset: boolean, stateOverride?: StateOverride): Promise<bigint>;
345
+ getManaMinFeeComponentsAt(timestamp: bigint, inFeeAsset: boolean): Promise<ManaMinFeeComponents>;
191
346
  getSlotAt(timestamp: bigint): Promise<SlotNumber>;
192
- status(checkpointNumber: bigint, options?: {
347
+ status(checkpointNumber: CheckpointNumber, options?: {
193
348
  blockNumber?: bigint;
194
- }): Promise<readonly [bigint, `0x${string}`, bigint, `0x${string}`, `0x${string}`, bigint]>;
349
+ }): Promise<RollupStatusResponse>;
195
350
  canPruneAtTime(timestamp: bigint, options?: {
196
351
  blockNumber?: bigint;
197
352
  }): Promise<boolean>;
198
- archive(): Promise<`0x${string}`>;
199
- archiveAt(checkpointNumber: bigint): Promise<`0x${string}`>;
353
+ archive(): Promise<Fr>;
354
+ archiveAt(checkpointNumber: CheckpointNumber): Promise<Fr>;
200
355
  getSequencerRewards(address: Hex | EthAddress): Promise<bigint>;
201
356
  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: bigint): 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
- }>;
357
+ getAttesters(timestamp?: bigint): Promise<EthAddress[]>;
358
+ getAttesterView(address: Hex | EthAddress): Promise<AttesterView>;
359
+ getStatus(address: Hex | EthAddress): Promise<AttesterStatus>;
360
+ getBlobCommitmentsHash(checkpointNumber: CheckpointNumber): Promise<Buffer32>;
361
+ getCurrentBlobCommitmentsHash(): Promise<Buffer32>;
362
+ getStakingAsset(): Promise<EthAddress>;
363
+ getRewardConfig(): Promise<RewardConfig>;
232
364
  setupEpoch(l1TxUtils: L1TxUtils): Promise<{
233
365
  receipt: import("viem").TransactionReceipt;
234
366
  state: import("../l1_tx_utils/types.js").L1TxState;
@@ -242,7 +374,7 @@ export declare class RollupContract {
242
374
  newSlasher: `0x${string}`;
243
375
  }) => unknown): WatchContractEventReturnType;
244
376
  listenToCheckpointInvalidated(callback: (args: {
245
- checkpointNumber: bigint;
377
+ checkpointNumber: CheckpointNumber;
246
378
  }) => unknown): WatchContractEventReturnType;
247
379
  getSlashEvents(l1BlockHash: Hex): Promise<{
248
380
  amount: bigint;
@@ -252,5 +384,17 @@ export declare class RollupContract {
252
384
  amount: bigint;
253
385
  attester: EthAddress;
254
386
  }) => unknown): WatchContractEventReturnType;
387
+ /** Fetches CheckpointProposed events within the given block range. */
388
+ getCheckpointProposedEvents(fromBlock: bigint, toBlock: bigint): Promise<CheckpointProposedLog[]>;
389
+ /** Packs pending and proven checkpoint numbers into the chain tips storage format. */
390
+ static packChainTips(pendingCheckpointNumber: bigint, provenCheckpointNumber: bigint): bigint;
391
+ /** Storage slot for the chain tips (offset 0 within the STF storage struct). */
392
+ static get chainTipsStorageSlot(): bigint;
393
+ /**
394
+ * Computes the storage slot for a field within a tempCheckpointLog entry.
395
+ * @param checkpointNumber - The checkpoint number
396
+ * @param field - The field within the CompressedTempCheckpointLog struct
397
+ */
398
+ getTempCheckpointLogStorageSlot(checkpointNumber: CheckpointNumber, field: TempCheckpointLogField): Promise<bigint>;
255
399
  }
256
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3RzL3JvbGx1cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJMUQsT0FBTyxFQUNMLEtBQUssT0FBTyxFQUNaLEtBQUsscUJBQXFCLEVBQzFCLEtBQUssR0FBRyxFQUNSLEtBQUssYUFBYSxFQUNsQixLQUFLLDRCQUE0QixFQUtsQyxNQUFNLE1BQU0sQ0FBQztBQUdkLE9BQU8sS0FBSyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0UsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN2RSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTlDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRS9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUc3RSxNQUFNLE1BQU0sd0JBQXdCLEdBQUc7SUFDckMsSUFBSSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDcEIsU0FBUyxFQUFFLGFBQWEsQ0FBQztDQUMxQixDQUFDO0FBRUYsTUFBTSxNQUFNLHlCQUF5QixHQUFHO0lBQ3RDLGdCQUFnQixFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDaEMscUJBQXFCLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztDQUN0QyxDQUFDO0FBRUYsTUFBTSxNQUFNLHlCQUF5QixHQUFHLElBQUksQ0FDMUMsbUJBQW1CLEVBQ2pCLGVBQWUsR0FDZixjQUFjLEdBQ2QsZUFBZSxHQUNmLHVCQUF1QixHQUN2QixpQkFBaUIsR0FDakIscUJBQXFCLEdBQ3JCLDBCQUEwQixHQUMxQixxQkFBcUIsR0FDckIsWUFBWSxDQUNmLENBQUM7QUFFRixNQUFNLE1BQU0seUJBQXlCLEdBQUc7SUFDdEMsZUFBZSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDL0IsVUFBVSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDMUIsUUFBUSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7Q0FDekIsQ0FBQztBQUVGLE1BQU0sTUFBTSxVQUFVLEdBQUc7SUFDdkIsZUFBZSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDL0IsZ0JBQWdCLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUNoQyxpQkFBaUIsRUFBRSxxQkFBcUIsQ0FBQztJQUN6QyxVQUFVLEVBQUUsTUFBTSxDQUFDO0lBQ25CLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsUUFBUSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDeEIsWUFBWSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDNUIsT0FBTyxFQUFFLFdBQVcsQ0FBQztJQUNyQixhQUFhLEVBQUUsTUFBTSxDQUFDO0NBQ3ZCLENBQUM7QUFFRixNQUFNLE1BQU0scUJBQXFCLEdBQUc7SUFDbEMsU0FBUyxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDekIsTUFBTSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDdEIsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7Q0FDeEIsQ0FBQztBQUVGLE1BQU0sTUFBTSxXQUFXLEdBQUc7SUFDeEIsV0FBVyxFQUFFLE1BQU0sQ0FBQztJQUNwQixXQUFXLEVBQUUsTUFBTSxDQUFDO0NBQ3JCLENBQUM7QUFFRixvQkFBWSxvQkFBb0I7SUFDOUIsSUFBSSxJQUFJO0lBQ1IsS0FBSyxJQUFJO0lBQ1QsTUFBTSxJQUFJO0NBQ1g7QUFFRCxxQkFBYSxjQUFjO2FBZ0NQLE1BQU0sRUFBRSxVQUFVO0lBL0JwQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBc0Q7SUFFN0UsT0FBTyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBa0I7SUFFckQsTUFBTSxLQUFLLG9CQUFvQixJQUFJLE1BQU0sQ0FNeEM7SUFFRCxNQUFNLEtBQUssY0FBYyxJQUFJLEdBQUcsQ0FFL0I7SUFFRCxNQUFNLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLEVBQUUsMkJBQTJCLGtCQU1uRjtJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLGNBQWMsa0JBSTFDO0lBRUQsWUFDa0IsTUFBTSxFQUFFLFVBQVUsRUFDbEMsT0FBTyxFQUFFLEdBQUcsR0FBRyxVQUFVLEVBTTFCO0lBRUQsTUFBTSwyQkFFTDtJQUVELElBQVcsT0FBTyxrQkFFakI7SUFFRCxXQUFXLElBQUkscUJBQXFCLENBQUMsT0FBTyxTQUFTLEVBQUUsVUFBVSxDQUFDLENBRWpFO0lBRVksbUJBQW1CLElBQUksT0FBTyxDQUN6Qyw4QkFBOEIsR0FBRyw2QkFBNkIsR0FBRyxTQUFTLENBQzNFLENBMEJBO0lBR0QsZUFBZSxvQkFFZDtJQUdELGdCQUFnQixvQkFFZjtJQUdELHdCQUF3QixvQkFFdkI7SUFHRCxnQkFBZ0Isb0JBRWY7SUFHSyxlQUFlLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUV2QztJQUdELHNCQUFzQixvQkFFckI7SUFHRCxvQkFBb0Isb0JBRW5CO0lBR0QseUJBQXlCLG9CQUV4QjtJQUdELDZCQUE2QixvQkFFNUI7SUFHRCx1QkFBdUIsb0JBRXRCO0lBR0Qsc0JBQXNCLG9CQUVyQjtJQUdELFlBQVksb0JBRVg7SUFHRCxhQUFhLG9CQUVaO0lBR0QscUJBQXFCLG9CQUVwQjtJQUdELCtCQUErQixvQkFFOUI7SUFHRCxZQUFZLG9CQUVYO0lBR0QsVUFBVSxvQkFFVDtJQUdLLHlCQUF5QixJQUFJLE9BQU8sQ0FBQyxLQUFLLE1BQU0sRUFBRSxDQUFDLENBRXhEO0lBRUQ7Ozs7T0FJRztJQUVVLGtCQUFrQixJQUFJLE9BQU8sQ0FBQztRQUN6QyxZQUFZLEVBQUUsTUFBTSxDQUFDO1FBQ3JCLGFBQWEsRUFBRSxNQUFNLENBQUM7UUFDdEIsWUFBWSxFQUFFLE1BQU0sQ0FBQztRQUNyQixhQUFhLEVBQUUsTUFBTSxDQUFDO1FBQ3RCLHFCQUFxQixFQUFFLE1BQU0sQ0FBQztLQUMvQixDQUFDLENBZUQ7SUFFRCxpQkFBaUIsMkJBRWhCO0lBRUQ7O09BRUc7SUFDRyxrQkFBa0IsSUFBSSxPQUFPLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQyxDQU0vRDtJQUVELFFBQVEsMkJBRVA7SUFFRCxzQkFBc0Isb0JBRXJCO0lBRVksMEJBQTBCLHdCQU10QztJQUVELG1CQUFtQixvQkFFbEI7SUFFRCxtQkFBbUIsb0JBRWxCO0lBRUQseUJBQXlCLG9CQUV4QjtJQUVLLGFBQWEsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLENBRXpDO0lBRUQsV0FBVyxDQUFDLFNBQVMsRUFBRSxNQUFNOzs7T0FFNUI7SUFFRCxpQkFBaUIsb0JBRWhCO0lBRUssY0FBYyxDQUFDLFNBQVMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLFNBQVMsS0FBSyxNQUFNLEVBQUUsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQWdCckY7SUFFRCxlQUFlLENBQUMsU0FBUyxFQUFFLE1BQU0sbUJBRWhDO0lBRUQsb0JBQW9CLG9CQUVuQjtJQUVLLGVBQWUsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLENBRTVDO0lBRUssd0JBQXdCLElBQUksT0FBTyxDQUFDLFNBQVMsS0FBSyxNQUFNLEVBQUUsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQWdCOUU7SUFFSyxrQkFBa0IsMkJBU3ZCO0lBRUssYUFBYSxDQUFDLFNBQVMsRUFBRSxNQUFNLDBCQVNwQztJQUVELGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEdBQUcsTUFBTTs7Ozs7Ozs7Ozs7Ozs7T0FFOUM7SUFFRCxPQUFPOzs7T0FFTjtJQUVELG1CQUFtQixDQUFDLElBQUksRUFBRSxVQUFVLG1CQUVuQztJQUVELG1CQUFtQixvQkFFbEI7SUFFRCw0QkFBNEIsb0JBRTNCO0lBRUsscUJBQXFCLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUVsRDtJQUVLLHFCQUFxQixJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FFbEQ7SUFFSywyQkFBMkIsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUVoRjtJQUVLLGtCQUFrQixJQUFJLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQStCN0Q7SUFFWSxpQkFBaUIsd0JBRTdCO0lBRVksMkJBQTJCLENBQUMsVUFBVSxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBRXJGO0lBRUQseUJBQXlCLENBQ3ZCLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSx5QkFBeUIsRUFBRSxTQUFTLEtBQUssTUFBTSxFQUFFLEVBQUUsRUFBRSxLQUFLLE1BQU0sRUFBRSxDQUFDLHFDQUdwRztJQUVZLGNBQWMsQ0FDekIsSUFBSSxFQUFFLFNBQVM7UUFDYixVQUFVO1FBQ1YseUJBQXlCO1FBQ3pCLEtBQUssTUFBTSxFQUFFLEVBQUU7UUFDZixhQUFhO1FBQ2IsS0FBSyxNQUFNLEVBQUU7UUFDYixLQUFLLE1BQU0sRUFBRTtRQUNiO1lBQ0UsUUFBUSxFQUFFLE9BQU8sQ0FBQztZQUNsQixnQkFBZ0IsRUFBRSxPQUFPLENBQUM7U0FDM0I7S0FDRixFQUNELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBRSxHQUFHLE9BQU8sR0FDL0IsT0FBTyxDQUFDLElBQUksQ0FBQyxDQVlmO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ1Usd0JBQXdCLENBQ25DLE9BQU8sRUFBRSxNQUFNLEVBQ2YsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFFLEdBQUcsT0FBTyxFQUNoQyxZQUFZLEVBQUUsTUFBTSxFQUNwQixJQUFJLEdBQUU7UUFBRSw0QkFBNEIsQ0FBQyxFQUFFLE1BQU0sQ0FBQTtLQUFPLEdBQ25ELE9BQU8sQ0FBQztRQUFFLElBQUksRUFBRSxVQUFVLENBQUM7UUFBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUM7UUFBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDLENBcUJuRjtJQUVEOzs7O09BSUc7SUFDVSxtQ0FBbUMsQ0FDOUMsNEJBQTRCLEVBQUUsTUFBTSxHQUFHLFNBQVMsR0FDL0MsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQWN4QjtJQUVELG1GQUFtRjtJQUM1RSxvQ0FBb0MsQ0FDekMsZ0JBQWdCLEVBQUUsTUFBTSxFQUN4QixzQkFBc0IsRUFBRSx5QkFBeUIsRUFDakQsU0FBUyxFQUFFLFVBQVUsRUFBRSxFQUN2QixZQUFZLEVBQUUsTUFBTSxHQUNuQixXQUFXLENBY2I7SUFFRCw2RkFBNkY7SUFDdEYsOENBQThDLENBQ25ELGdCQUFnQixFQUFFLE1BQU0sRUFDeEIsc0JBQXNCLEVBQUUseUJBQXlCLEVBQ2pELFNBQVMsRUFBRSxVQUFVLEVBQUUsR0FDdEIsV0FBVyxDQVNiO0lBRUQsd0lBQXdJO0lBQ2pJLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEdBQUcsVUFBVSxvQkFLakg7SUFFRCxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLG1CQUV0RDtJQUVLLFNBQVMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FFdEQ7SUFFSyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1FBQUUsV0FBVyxDQUFDLEVBQUUsTUFBTSxDQUFBO0tBQUUsMkZBR3hFO0lBRUssY0FBYyxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUU7UUFBRSxXQUFXLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxvQkFHekU7SUFFRCxPQUFPLDJCQUVOO0lBRUQsU0FBUyxDQUFDLGdCQUFnQixFQUFFLE1BQU0sMEJBRWpDO0lBRUQsbUJBQW1CLENBQUMsT0FBTyxFQUFFLEdBQUcsR0FBRyxVQUFVLG1CQUs1QztJQUVELGdDQUFnQyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsR0FBRyxVQUFVLG1CQUt2RTtJQUVLLFlBQVksNkJBU2pCO0lBRUQsZUFBZSxDQUFDLE9BQU8sRUFBRSxHQUFHLEdBQUcsVUFBVTs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BS3hDO0lBRUQsU0FBUyxDQUFDLE9BQU8sRUFBRSxHQUFHLEdBQUcsVUFBVSxtQkFLbEM7SUFFRCxzQkFBc0IsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLDBCQUU5QztJQUVELDZCQUE2QiwyQkFFNUI7SUFFRCxlQUFlLDJCQUVkO0lBRUQsZUFBZTs7Ozs7T0FFZDtJQUVELFVBQVUsQ0FBQyxTQUFTLEVBQUUsU0FBUzs7O09BUzlCO0lBRUQsSUFBSSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU07OztPQVM1QztJQUVNLHNCQUFzQixDQUMzQixRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUU7UUFBRSxVQUFVLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztRQUFDLFVBQVUsRUFBRSxLQUFLLE1BQU0sRUFBRSxDQUFBO0tBQUUsS0FBSyxPQUFPLEdBQ3BGLDRCQUE0QixDQWM5QjtJQUVNLDZCQUE2QixDQUNsQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUU7UUFBRSxnQkFBZ0IsRUFBRSxNQUFNLENBQUE7S0FBRSxLQUFLLE9BQU8sR0FDeEQsNEJBQTRCLENBYzlCO0lBRVksY0FBYyxDQUFDLFdBQVcsRUFBRSxHQUFHLEdBQUcsT0FBTyxDQUFDO1FBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUFDLFFBQVEsRUFBRSxVQUFVLENBQUE7S0FBRSxFQUFFLENBQUMsQ0FNakc7SUFFTSxhQUFhLENBQ2xCLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRTtRQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7UUFBQyxRQUFRLEVBQUUsVUFBVSxDQUFBO0tBQUUsS0FBSyxPQUFPLEdBQ3BFLDRCQUE0QixDQWE5QjtDQUNGIn0=
400
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJhY3RzL3JvbGx1cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBSXJFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUkxRCxPQUFPLEVBQ0wsS0FBSyxPQUFPLEVBQ1osS0FBSyxxQkFBcUIsRUFDMUIsS0FBSyxHQUFHLEVBQ1IsS0FBSyxhQUFhLEVBQ2xCLEtBQUssNEJBQTRCLEVBTWxDLE1BQU0sTUFBTSxDQUFDO0FBR2QsT0FBTyxLQUFLLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RixPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZFLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHOUMsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztB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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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"}