@feelyourprotocol/common 8141.0.0

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 (115) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +409 -0
  3. package/dist/cjs/chains.d.ts +6 -0
  4. package/dist/cjs/chains.d.ts.map +1 -0
  5. package/dist/cjs/chains.js +637 -0
  6. package/dist/cjs/chains.js.map +1 -0
  7. package/dist/cjs/common.d.ts +318 -0
  8. package/dist/cjs/common.d.ts.map +1 -0
  9. package/dist/cjs/common.js +789 -0
  10. package/dist/cjs/common.js.map +1 -0
  11. package/dist/cjs/constructors.d.ts +27 -0
  12. package/dist/cjs/constructors.d.ts.map +1 -0
  13. package/dist/cjs/constructors.js +53 -0
  14. package/dist/cjs/constructors.js.map +1 -0
  15. package/dist/cjs/crc.d.ts +8 -0
  16. package/dist/cjs/crc.d.ts.map +1 -0
  17. package/dist/cjs/crc.js +63 -0
  18. package/dist/cjs/crc.js.map +1 -0
  19. package/dist/cjs/eips.d.ts +3 -0
  20. package/dist/cjs/eips.d.ts.map +1 -0
  21. package/dist/cjs/eips.js +589 -0
  22. package/dist/cjs/eips.js.map +1 -0
  23. package/dist/cjs/enums.d.ts +65 -0
  24. package/dist/cjs/enums.d.ts.map +1 -0
  25. package/dist/cjs/enums.js +80 -0
  26. package/dist/cjs/enums.js.map +1 -0
  27. package/dist/cjs/gethGenesis.d.ts +145 -0
  28. package/dist/cjs/gethGenesis.d.ts.map +1 -0
  29. package/dist/cjs/gethGenesis.js +26 -0
  30. package/dist/cjs/gethGenesis.js.map +1 -0
  31. package/dist/cjs/hardforks.d.ts +3 -0
  32. package/dist/cjs/hardforks.d.ts.map +1 -0
  33. package/dist/cjs/hardforks.js +207 -0
  34. package/dist/cjs/hardforks.js.map +1 -0
  35. package/dist/cjs/index.d.ts +9 -0
  36. package/dist/cjs/index.d.ts.map +1 -0
  37. package/dist/cjs/index.js +25 -0
  38. package/dist/cjs/index.js.map +1 -0
  39. package/dist/cjs/interfaces.d.ts +132 -0
  40. package/dist/cjs/interfaces.d.ts.map +1 -0
  41. package/dist/cjs/interfaces.js +13 -0
  42. package/dist/cjs/interfaces.js.map +1 -0
  43. package/dist/cjs/package.json +3 -0
  44. package/dist/cjs/types.d.ts +167 -0
  45. package/dist/cjs/types.d.ts.map +1 -0
  46. package/dist/cjs/types.js +3 -0
  47. package/dist/cjs/types.js.map +1 -0
  48. package/dist/cjs/utils.d.ts +60 -0
  49. package/dist/cjs/utils.d.ts.map +1 -0
  50. package/dist/cjs/utils.js +263 -0
  51. package/dist/cjs/utils.js.map +1 -0
  52. package/dist/esm/chains.d.ts +6 -0
  53. package/dist/esm/chains.d.ts.map +1 -0
  54. package/dist/esm/chains.js +634 -0
  55. package/dist/esm/chains.js.map +1 -0
  56. package/dist/esm/common.d.ts +318 -0
  57. package/dist/esm/common.d.ts.map +1 -0
  58. package/dist/esm/common.js +785 -0
  59. package/dist/esm/common.js.map +1 -0
  60. package/dist/esm/constructors.d.ts +27 -0
  61. package/dist/esm/constructors.d.ts.map +1 -0
  62. package/dist/esm/constructors.js +49 -0
  63. package/dist/esm/constructors.js.map +1 -0
  64. package/dist/esm/crc.d.ts +8 -0
  65. package/dist/esm/crc.d.ts.map +1 -0
  66. package/dist/esm/crc.js +59 -0
  67. package/dist/esm/crc.js.map +1 -0
  68. package/dist/esm/eips.d.ts +3 -0
  69. package/dist/esm/eips.d.ts.map +1 -0
  70. package/dist/esm/eips.js +586 -0
  71. package/dist/esm/eips.js.map +1 -0
  72. package/dist/esm/enums.d.ts +65 -0
  73. package/dist/esm/enums.d.ts.map +1 -0
  74. package/dist/esm/enums.js +77 -0
  75. package/dist/esm/enums.js.map +1 -0
  76. package/dist/esm/gethGenesis.d.ts +145 -0
  77. package/dist/esm/gethGenesis.d.ts.map +1 -0
  78. package/dist/esm/gethGenesis.js +23 -0
  79. package/dist/esm/gethGenesis.js.map +1 -0
  80. package/dist/esm/hardforks.d.ts +3 -0
  81. package/dist/esm/hardforks.d.ts.map +1 -0
  82. package/dist/esm/hardforks.js +204 -0
  83. package/dist/esm/hardforks.js.map +1 -0
  84. package/dist/esm/index.d.ts +9 -0
  85. package/dist/esm/index.d.ts.map +1 -0
  86. package/dist/esm/index.js +9 -0
  87. package/dist/esm/index.js.map +1 -0
  88. package/dist/esm/interfaces.d.ts +132 -0
  89. package/dist/esm/interfaces.d.ts.map +1 -0
  90. package/dist/esm/interfaces.js +10 -0
  91. package/dist/esm/interfaces.js.map +1 -0
  92. package/dist/esm/package.json +3 -0
  93. package/dist/esm/types.d.ts +167 -0
  94. package/dist/esm/types.d.ts.map +1 -0
  95. package/dist/esm/types.js +2 -0
  96. package/dist/esm/types.js.map +1 -0
  97. package/dist/esm/utils.d.ts +60 -0
  98. package/dist/esm/utils.d.ts.map +1 -0
  99. package/dist/esm/utils.js +258 -0
  100. package/dist/esm/utils.js.map +1 -0
  101. package/dist/tsconfig.prod.cjs.tsbuildinfo +1 -0
  102. package/dist/tsconfig.prod.esm.tsbuildinfo +1 -0
  103. package/package.json +77 -0
  104. package/src/chains.ts +638 -0
  105. package/src/common.ts +913 -0
  106. package/src/constructors.ts +60 -0
  107. package/src/crc.ts +63 -0
  108. package/src/eips.ts +588 -0
  109. package/src/enums.ts +104 -0
  110. package/src/gethGenesis.ts +175 -0
  111. package/src/hardforks.ts +205 -0
  112. package/src/index.ts +8 -0
  113. package/src/interfaces.ts +191 -0
  114. package/src/types.ts +193 -0
  115. package/src/utils.ts +324 -0
@@ -0,0 +1,589 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.eipsDict = void 0;
4
+ const enums_ts_1 = require("./enums.js");
5
+ exports.eipsDict = {
6
+ /**
7
+ * Frontier/Chainstart
8
+ * (there is no Meta-EIP currently for Frontier, so 1 was chosen)
9
+ */
10
+ 1: {
11
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
12
+ },
13
+ /**
14
+ * Homestead HF Meta EIP
15
+ */
16
+ 606: {
17
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
18
+ },
19
+ /**
20
+ * TangerineWhistle HF Meta EIP
21
+ */
22
+ 608: {
23
+ minimumHardfork: enums_ts_1.Hardfork.Homestead,
24
+ },
25
+ /**
26
+ * Spurious Dragon HF Meta EIP
27
+ */
28
+ 607: {
29
+ minimumHardfork: enums_ts_1.Hardfork.TangerineWhistle,
30
+ },
31
+ /**
32
+ * Byzantium HF Meta EIP
33
+ */
34
+ 609: {
35
+ minimumHardfork: enums_ts_1.Hardfork.SpuriousDragon,
36
+ },
37
+ /**
38
+ * Constantinople HF Meta EIP
39
+ */
40
+ 1013: {
41
+ minimumHardfork: enums_ts_1.Hardfork.Constantinople,
42
+ },
43
+ /**
44
+ * Petersburg HF Meta EIP
45
+ */
46
+ 1716: {
47
+ minimumHardfork: enums_ts_1.Hardfork.Constantinople,
48
+ },
49
+ /**
50
+ * Istanbul HF Meta EIP
51
+ */
52
+ 1679: {
53
+ minimumHardfork: enums_ts_1.Hardfork.Constantinople,
54
+ },
55
+ /**
56
+ * MuirGlacier HF Meta EIP
57
+ */
58
+ 2384: {
59
+ minimumHardfork: enums_ts_1.Hardfork.Istanbul,
60
+ },
61
+ /**
62
+ * Description : DUPN, SWAPN and EXCHANGE instructions
63
+ * URL : https://eips.ethereum.org/EIPS/eip-8024
64
+ * Status : Review
65
+ */
66
+ 8024: {
67
+ minimumHardfork: enums_ts_1.Hardfork.Amsterdam,
68
+ requiredEIPs: [],
69
+ },
70
+ /**
71
+ * Description : Transient storage opcodes
72
+ * URL : https://eips.ethereum.org/EIPS/eip-1153
73
+ * Status : Final
74
+ */
75
+ 1153: {
76
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
77
+ },
78
+ /**
79
+ * Description : Fee market change for ETH 1.0 chain
80
+ * URL : https://eips.ethereum.org/EIPS/eip-1559
81
+ * Status : Final
82
+ */
83
+ 1559: {
84
+ minimumHardfork: enums_ts_1.Hardfork.Berlin,
85
+ requiredEIPs: [2930],
86
+ },
87
+ /**
88
+ * Description : ModExp gas cost
89
+ * URL : https://eips.ethereum.org/EIPS/eip-2565
90
+ * Status : Final
91
+ */
92
+ 2565: {
93
+ minimumHardfork: enums_ts_1.Hardfork.Byzantium,
94
+ },
95
+ /**
96
+ * Description : BLS12-381 precompiles
97
+ * URL : https://eips.ethereum.org/EIPS/eip-2537
98
+ * Status : Review
99
+ */
100
+ 2537: {
101
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
102
+ },
103
+ /**
104
+ * Description : Typed Transaction Envelope
105
+ * URL : https://eips.ethereum.org/EIPS/eip-2718
106
+ * Status : Final
107
+ */
108
+ 2718: {
109
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
110
+ },
111
+ /**
112
+ * Description : Gas cost increases for state access opcodes
113
+ * URL : https://eips.ethereum.org/EIPS/eip-2929
114
+ * Status : Final
115
+ */
116
+ 2929: {
117
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
118
+ },
119
+ /**
120
+ * Description : Optional access lists
121
+ * URL : https://eips.ethereum.org/EIPS/eip-2930
122
+ * Status : Final
123
+ */
124
+ 2930: {
125
+ minimumHardfork: enums_ts_1.Hardfork.Istanbul,
126
+ requiredEIPs: [2718, 2929],
127
+ },
128
+ /**
129
+ * Description : Save historical block hashes in state (Verkle related usage, UNSTABLE)
130
+ * URL : https://github.com/gballet/EIPs/pull/3/commits/2e9ac09a142b0d9fb4db0b8d4609f92e5d9990c5
131
+ * Status : Draft
132
+ */
133
+ 2935: {
134
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
135
+ },
136
+ /**
137
+ * Description : BASEFEE opcode
138
+ * URL : https://eips.ethereum.org/EIPS/eip-3198
139
+ * Status : Final
140
+ */
141
+ 3198: {
142
+ minimumHardfork: enums_ts_1.Hardfork.London,
143
+ },
144
+ /**
145
+ * Description : Reduction in refunds
146
+ * URL : https://eips.ethereum.org/EIPS/eip-3529
147
+ * Status : Final
148
+ */
149
+ 3529: {
150
+ minimumHardfork: enums_ts_1.Hardfork.Berlin,
151
+ requiredEIPs: [2929],
152
+ },
153
+ /**
154
+ * Description : EVM Object Format (EOF) v1
155
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-3540.md
156
+ * Status : Review
157
+ */
158
+ 3540: {
159
+ minimumHardfork: enums_ts_1.Hardfork.London,
160
+ requiredEIPs: [3541, 3860],
161
+ },
162
+ /**
163
+ * Description : Reject new contracts starting with the 0xEF byte
164
+ * URL : https://eips.ethereum.org/EIPS/eip-3541
165
+ * Status : Final
166
+ */
167
+ 3541: {
168
+ minimumHardfork: enums_ts_1.Hardfork.Berlin,
169
+ },
170
+ /**
171
+ * Description : Difficulty Bomb Delay to December 1st 2021
172
+ * URL : https://eips.ethereum.org/EIPS/eip-3554
173
+ * Status : Final
174
+ */
175
+ 3554: {
176
+ minimumHardfork: enums_ts_1.Hardfork.MuirGlacier,
177
+ },
178
+ /**
179
+ * Description : Reject transactions from senders with deployed code
180
+ * URL : https://eips.ethereum.org/EIPS/eip-3607
181
+ * Status : Final
182
+ */
183
+ 3607: {
184
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
185
+ },
186
+ /**
187
+ * Description : Warm COINBASE
188
+ * URL : https://eips.ethereum.org/EIPS/eip-3651
189
+ * Status : Final
190
+ */
191
+ 3651: {
192
+ minimumHardfork: enums_ts_1.Hardfork.London,
193
+ requiredEIPs: [2929],
194
+ },
195
+ /**
196
+ * Description : EOF - Code Validation
197
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-3670.md
198
+ * Status : Review
199
+ */
200
+ 3670: {
201
+ minimumHardfork: enums_ts_1.Hardfork.London,
202
+ requiredEIPs: [3540],
203
+ },
204
+ /**
205
+ * Description : Upgrade consensus to Proof-of-Stake
206
+ * URL : https://eips.ethereum.org/EIPS/eip-3675
207
+ * Status : Final
208
+ */
209
+ 3675: {
210
+ minimumHardfork: enums_ts_1.Hardfork.London,
211
+ },
212
+ /**
213
+ * Description : PUSH0 instruction
214
+ * URL : https://eips.ethereum.org/EIPS/eip-3855
215
+ * Status : Final
216
+ */
217
+ 3855: {
218
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
219
+ },
220
+ /**
221
+ * Description : Limit and meter initcode
222
+ * URL : https://eips.ethereum.org/EIPS/eip-3860
223
+ * Status : Final
224
+ */
225
+ 3860: {
226
+ minimumHardfork: enums_ts_1.Hardfork.SpuriousDragon,
227
+ },
228
+ /**
229
+ * Description : EOF - Static relative jumps
230
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-4200.md
231
+ * Status : Review
232
+ */
233
+ 4200: {
234
+ minimumHardfork: enums_ts_1.Hardfork.London,
235
+ requiredEIPs: [3540, 3670],
236
+ },
237
+ /**
238
+ * Description : Difficulty Bomb Delay to June 2022
239
+ * URL : https://eips.ethereum.org/EIPS/eip-4345
240
+ * Status : Final
241
+ */
242
+ 4345: {
243
+ minimumHardfork: enums_ts_1.Hardfork.London,
244
+ },
245
+ /**
246
+ * Description : Supplant DIFFICULTY opcode with PREVRANDAO
247
+ * URL : https://eips.ethereum.org/EIPS/eip-4399
248
+ * Status : Final
249
+ */
250
+ 4399: {
251
+ minimumHardfork: enums_ts_1.Hardfork.London,
252
+ },
253
+ /**
254
+ * Description : EOF - Functions
255
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-4750.md
256
+ * Status : Review
257
+ */
258
+ 4750: {
259
+ minimumHardfork: enums_ts_1.Hardfork.London,
260
+ requiredEIPs: [3540, 3670, 5450],
261
+ },
262
+ /**
263
+ * Description : Beacon block root in the EVM
264
+ * URL : https://eips.ethereum.org/EIPS/eip-4788
265
+ * Status : Final
266
+ */
267
+ 4788: {
268
+ minimumHardfork: enums_ts_1.Hardfork.Cancun,
269
+ },
270
+ /**
271
+ * Description : Shard Blob Transactions
272
+ * URL : https://eips.ethereum.org/EIPS/eip-4844
273
+ * Status : Final
274
+ */
275
+ 4844: {
276
+ minimumHardfork: enums_ts_1.Hardfork.Paris,
277
+ requiredEIPs: [1559, 2718, 2930, 4895],
278
+ },
279
+ /**
280
+ * Description : Beacon chain push withdrawals as operations
281
+ * URL : https://eips.ethereum.org/EIPS/eip-4895
282
+ * Status : Final
283
+ */
284
+ 4895: {
285
+ minimumHardfork: enums_ts_1.Hardfork.Paris,
286
+ },
287
+ /**
288
+ * Description : Delaying Difficulty Bomb to mid-September 2022
289
+ * URL : https://eips.ethereum.org/EIPS/eip-5133
290
+ * Status : Final
291
+ */
292
+ 5133: {
293
+ minimumHardfork: enums_ts_1.Hardfork.GrayGlacier,
294
+ },
295
+ /**
296
+ * Description : EOF - Stack Validation
297
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-5450.md
298
+ * Status : Review
299
+ */
300
+ 5450: {
301
+ minimumHardfork: enums_ts_1.Hardfork.London,
302
+ requiredEIPs: [3540, 3670, 4200, 4750],
303
+ },
304
+ /**
305
+ * Description : MCOPY - Memory copying instruction
306
+ * URL : https://eips.ethereum.org/EIPS/eip-5656
307
+ * Status : Final
308
+ */
309
+ 5656: {
310
+ minimumHardfork: enums_ts_1.Hardfork.Shanghai,
311
+ },
312
+ /**
313
+ * Description : Supply validator deposits on chain
314
+ * URL : https://eips.ethereum.org/EIPS/eip-6110
315
+ * Status : Review
316
+ */
317
+ 6110: {
318
+ minimumHardfork: enums_ts_1.Hardfork.Cancun,
319
+ requiredEIPs: [7685],
320
+ },
321
+ /**
322
+ * Description : EOF - JUMPF and non-returning functions
323
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-6206.md
324
+ * Status : Review
325
+ */
326
+ 6206: {
327
+ minimumHardfork: enums_ts_1.Hardfork.London,
328
+ requiredEIPs: [4750, 5450],
329
+ },
330
+ /**
331
+ * Description : SELFDESTRUCT only in same transaction
332
+ * URL : https://eips.ethereum.org/EIPS/eip-6780
333
+ * Status : Final
334
+ */
335
+ 6780: {
336
+ minimumHardfork: enums_ts_1.Hardfork.London,
337
+ },
338
+ /**
339
+ * Description : Execution layer triggerable withdrawals (experimental)
340
+ * URL : https://github.com/ethereum/EIPs/blob/3b5fcad6b35782f8aaeba7d4ac26004e8fbd720f/EIPS/eip-7002.md
341
+ * Status : Review
342
+ */
343
+ 7002: {
344
+ minimumHardfork: enums_ts_1.Hardfork.Paris,
345
+ requiredEIPs: [7685],
346
+ },
347
+ /**
348
+ * Description : Revamped CALL instructions
349
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-7069.md
350
+ * Status : Review
351
+ */
352
+ 7069: {
353
+ minimumHardfork: enums_ts_1.Hardfork.Berlin,
354
+ /* Note: per EIP these are the additionally required EIPs:
355
+ EIP 150 - This is the entire Tangerine Whistle hardfork
356
+ EIP 211 - (RETURNDATASIZE / RETURNDATACOPY) - Included in Byzantium
357
+ EIP 214 - (STATICCALL) - Included in Byzantium
358
+ */
359
+ requiredEIPs: [2929],
360
+ },
361
+ /**
362
+ * Description : Increase the MAX_EFFECTIVE_BALANCE -> Execution layer triggered consolidations (experimental)
363
+ * URL : https://eips.ethereum.org/EIPS/eip-7251
364
+ * Status : Draft
365
+ */
366
+ 7251: {
367
+ minimumHardfork: enums_ts_1.Hardfork.Paris,
368
+ requiredEIPs: [7685],
369
+ },
370
+ /**
371
+ * Description : EOF - Data section access instructions
372
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-7480.md
373
+ * Status : Review
374
+ */
375
+ 7480: {
376
+ minimumHardfork: enums_ts_1.Hardfork.London,
377
+ requiredEIPs: [3540, 3670],
378
+ },
379
+ /**
380
+ * Description : BLOBBASEFEE opcode
381
+ * URL : https://eips.ethereum.org/EIPS/eip-7516
382
+ * Status : Final
383
+ */
384
+ 7516: {
385
+ minimumHardfork: enums_ts_1.Hardfork.Paris,
386
+ requiredEIPs: [4844],
387
+ },
388
+ /**
389
+ * Description : Peerdas blob transactions
390
+ * URL : hhttps://eips.ethereum.org/EIPS/eip-7594
391
+ * Status : Review
392
+ */
393
+ 7594: {
394
+ minimumHardfork: enums_ts_1.Hardfork.Paris,
395
+ requiredEIPs: [4844],
396
+ },
397
+ /**
398
+ * Description : EOF Contract Creation
399
+ * URL : https://github.com/ethereum/EIPs/blob/dd32a34cfe4473bce143641bfffe4fd67e1987ab/EIPS/eip-7620.md
400
+ * Status : Review
401
+ */
402
+ 7620: {
403
+ minimumHardfork: enums_ts_1.Hardfork.London,
404
+ /* Note: per EIP these are the additionally required EIPs:
405
+ EIP 170 - (Max contract size) - Included in Spurious Dragon
406
+ */
407
+ requiredEIPs: [3540, 3541, 3670],
408
+ },
409
+ /**
410
+ * Description : Increase calldata cost to reduce maximum block size
411
+ * URL : https://github.com/ethereum/EIPs/blob/da2a86bf15044416e8eb0301c9bdb8d561feeb32/EIPS/eip-7623.md
412
+ * Status : Review
413
+ */
414
+ 7623: {
415
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
416
+ requiredEIPs: [],
417
+ },
418
+ /**
419
+ * Description : General purpose execution layer requests
420
+ * URL : https://eips.ethereum.org/EIPS/eip-7685
421
+ * Status : Review
422
+ */
423
+ 7685: {
424
+ // TODO: Set correct minimum hardfork
425
+ minimumHardfork: enums_ts_1.Hardfork.Cancun,
426
+ requiredEIPs: [3675],
427
+ },
428
+ /**
429
+ * Description : Blob throughput increase
430
+ * URL : https://eips.ethereum.org/EIPS/eip-7691
431
+ * Status : Review
432
+ */
433
+ 7691: {
434
+ minimumHardfork: enums_ts_1.Hardfork.Paris,
435
+ requiredEIPs: [4844],
436
+ },
437
+ /**
438
+ * Description : Blob base fee bounded by execution cost
439
+ * URL : https://eips.ethereum.org/EIPS/eip-7918
440
+ * Status : Last Call
441
+ */
442
+ 7918: {
443
+ minimumHardfork: enums_ts_1.Hardfork.Paris,
444
+ requiredEIPs: [4844],
445
+ },
446
+ /**
447
+ * Description : EVM Object Format (EOFv1) Meta
448
+ * URL : https://github.com/ethereum/EIPs/blob/4153e95befd0264082de3c4c2fe3a85cc74d3152/EIPS/eip-7692.md
449
+ * Status : Draft
450
+ */
451
+ 7692: {
452
+ minimumHardfork: enums_ts_1.Hardfork.Cancun,
453
+ requiredEIPs: [3540, 3670, 4200, 4750, 5450, 6206, 7069, 7480, 7620, 7698],
454
+ },
455
+ /**
456
+ * Description : EOF - Creation transaction
457
+ * URL : https://github.com/ethereum/EIPs/blob/bd421962b4e241aa2b00a85d9cf4e57770bdb954/EIPS/eip-7698.md
458
+ * Status : Draft
459
+ */
460
+ 7698: {
461
+ minimumHardfork: enums_ts_1.Hardfork.London,
462
+ requiredEIPs: [3540, 7620],
463
+ },
464
+ /**
465
+ * Description : Set EOA account code for one transaction
466
+ * URL : https://github.com/ethereum/EIPs/blob/62419ca3f45375db00b04a368ea37c0bfb05386a/EIPS/eip-7702.md
467
+ * Status : Review
468
+ */
469
+ 7702: {
470
+ // TODO: Set correct minimum hardfork
471
+ minimumHardfork: enums_ts_1.Hardfork.Cancun,
472
+ requiredEIPs: [2718, 2929, 2930],
473
+ },
474
+ /**
475
+ * Description : Set upper bounds for MODEXP
476
+ * URL : https://eips.ethereum.org/EIPS/eip-7823
477
+ * Status : Review
478
+ */
479
+ 7823: {
480
+ minimumHardfork: enums_ts_1.Hardfork.Byzantium,
481
+ },
482
+ /**
483
+ * Description : Use historical block hashes saved in state for BLOCKHASH
484
+ * URL : https://eips.ethereum.org/EIPS/eip-7709
485
+ * Status : Final
486
+ */
487
+ 7709: {
488
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
489
+ requiredEIPs: [2935],
490
+ },
491
+ /**
492
+ * Description : Transaction Gas Limit Cap
493
+ * URL : https://eips.ethereum.org/EIPS/eip-7825
494
+ * Status : Draft
495
+ */
496
+ 7825: {
497
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
498
+ requiredEIPs: [],
499
+ },
500
+ /**
501
+ * Description : Ethereum state using a unified binary tree (experimental)
502
+ * URL : hhttps://eips.ethereum.org/EIPS/eip-7864
503
+ * Status : Draft
504
+ */
505
+ 7864: {
506
+ minimumHardfork: enums_ts_1.Hardfork.London,
507
+ },
508
+ /**
509
+ * Description : EIP-7883: ModExp Gas Cost Increase
510
+ * URL : hhttps://eips.ethereum.org/EIPS/eip-7883
511
+ * Status : Draft
512
+ */
513
+ 7883: {
514
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
515
+ },
516
+ /**
517
+ * Description : Block-level gas accounting without refunds
518
+ * URL : https://eips.ethereum.org/EIPS/eip-7778
519
+ * Status : Draft
520
+ */
521
+ 7778: {
522
+ minimumHardfork: enums_ts_1.Hardfork.Amsterdam,
523
+ requiredEIPs: [],
524
+ },
525
+ /**
526
+ * Description : Block Level Access Lists (BAL)
527
+ * URL : https://eips.ethereum.org/EIPS/eip-7928
528
+ * Status : Draft (in development, do not use in production)
529
+ */
530
+ 7928: {
531
+ minimumHardfork: enums_ts_1.Hardfork.Prague,
532
+ requiredEIPs: [],
533
+ },
534
+ /**
535
+ * Description : Count leading zeros (CLZ) opcode
536
+ * URL : https://eips.ethereum.org/EIPS/eip-7939
537
+ * Status : Draft
538
+ */
539
+ 7939: {
540
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
541
+ requiredEIPs: [],
542
+ },
543
+ /**
544
+ * Description : Precompile for secp256r1 Curve Support
545
+ * URL : https://eips.ethereum.org/EIPS/eip-7951
546
+ * Status : Draft
547
+ */
548
+ 7951: {
549
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
550
+ requiredEIPs: [],
551
+ },
552
+ /**
553
+ * Description : RLP Execution Block Size Limit
554
+ * URL : https://eips.ethereum.org/EIPS/eip-7934
555
+ * Status : Last Call
556
+ */
557
+ 7934: {
558
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
559
+ requiredEIPs: [],
560
+ },
561
+ /**
562
+ * Description : ETH transfers emit a log
563
+ * URL : https://eips.ethereum.org/EIPS/eip-7708
564
+ * Status : Draft
565
+ */
566
+ 7708: {
567
+ minimumHardfork: enums_ts_1.Hardfork.Chainstart,
568
+ requiredEIPs: [1559, 4788, 6780],
569
+ },
570
+ /**
571
+ * Description : SLOTNUM opcode
572
+ * URL : https://eips.ethereum.org/EIPS/eip-7843
573
+ * Status : Draft
574
+ */
575
+ 7843: {
576
+ minimumHardfork: enums_ts_1.Hardfork.Cancun,
577
+ requiredEIPs: [],
578
+ },
579
+ /**
580
+ * Description : Frame Transaction
581
+ * URL : https://github.com/ethereum/EIPs/blob/ee66073462f5c0f5db43353b5ce4183a72157327/EIPS/eip-8141.md
582
+ * Status : Draft
583
+ */
584
+ 8141: {
585
+ minimumHardfork: enums_ts_1.Hardfork.Prague,
586
+ requiredEIPs: [2718, 4844],
587
+ },
588
+ };
589
+ //# sourceMappingURL=eips.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eips.js","sourceRoot":"","sources":["../../src/eips.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ export type Chain = (typeof Chain)[keyof typeof Chain];
2
+ export declare const Chain: {
3
+ readonly Mainnet: 1;
4
+ readonly Sepolia: 11155111;
5
+ readonly Holesky: 17000;
6
+ readonly Hoodi: 560048;
7
+ };
8
+ export declare const ChainNameFromNumber: {
9
+ [key in Chain]: string;
10
+ };
11
+ /**
12
+ * Genesis state meta info which is decoupled from common's genesis params
13
+ */
14
+ type GenesisState = {
15
+ name: string;
16
+ blockNumber: bigint;
17
+ stateRoot: Uint8Array;
18
+ };
19
+ /**
20
+ * GenesisState info about well known ethereum chains
21
+ */
22
+ export declare const ChainGenesis: Record<Chain, GenesisState>;
23
+ export type Hardfork = (typeof Hardfork)[keyof typeof Hardfork];
24
+ export declare const Hardfork: {
25
+ readonly Chainstart: "chainstart";
26
+ readonly Homestead: "homestead";
27
+ readonly Dao: "dao";
28
+ readonly TangerineWhistle: "tangerineWhistle";
29
+ readonly SpuriousDragon: "spuriousDragon";
30
+ readonly Byzantium: "byzantium";
31
+ readonly Constantinople: "constantinople";
32
+ readonly Petersburg: "petersburg";
33
+ readonly Istanbul: "istanbul";
34
+ readonly MuirGlacier: "muirGlacier";
35
+ readonly Berlin: "berlin";
36
+ readonly London: "london";
37
+ readonly ArrowGlacier: "arrowGlacier";
38
+ readonly GrayGlacier: "grayGlacier";
39
+ readonly MergeNetsplitBlock: "mergeNetsplitBlock";
40
+ readonly Paris: "paris";
41
+ readonly Shanghai: "shanghai";
42
+ readonly Cancun: "cancun";
43
+ readonly Prague: "prague";
44
+ readonly Osaka: "osaka";
45
+ readonly Bpo1: "bpo1";
46
+ readonly Bpo2: "bpo2";
47
+ readonly Bpo3: "bpo3";
48
+ readonly Bpo4: "bpo4";
49
+ readonly Bpo5: "bpo5";
50
+ readonly Amsterdam: "amsterdam";
51
+ };
52
+ export type ConsensusType = (typeof ConsensusType)[keyof typeof ConsensusType];
53
+ export declare const ConsensusType: {
54
+ readonly ProofOfStake: "pos";
55
+ readonly ProofOfWork: "pow";
56
+ readonly ProofOfAuthority: "poa";
57
+ };
58
+ export type ConsensusAlgorithm = (typeof ConsensusAlgorithm)[keyof typeof ConsensusAlgorithm];
59
+ export declare const ConsensusAlgorithm: {
60
+ readonly Ethash: "ethash";
61
+ readonly Clique: "clique";
62
+ readonly Casper: "casper";
63
+ };
64
+ export {};
65
+ //# sourceMappingURL=enums.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/enums.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAA;AAEtD,eAAO,MAAM,KAAK;;;;;CAKR,CAAA;AAGV,eAAO,MAAM,mBAAmB,EAAE;KAAG,GAAG,IAAI,KAAK,GAAG,MAAM;CAMzD,CAAA;AAED;;GAEG;AACH,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,CAAA;IAEZ,WAAW,EAAE,MAAM,CAAA;IAEnB,SAAS,EAAE,UAAU,CAAA;CACtB,CAAA;AAGD;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,KAAK,EAAE,YAAY,CAqBpD,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAA;AAE/D,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BX,CAAA;AAEV,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAA;AAE9E,eAAO,MAAM,aAAa;;;;CAIhB,CAAA;AAEV,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAA;AAE7F,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAA"}