@zoralabs/coins 2.4.0 → 2.4.1

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 (120) hide show
  1. package/.turbo/turbo-build$colon$js.log +116 -124
  2. package/CHANGELOG.md +6 -0
  3. package/abis/Address.json +0 -16
  4. package/abis/BuySupplyWithSwapRouterHook.json +0 -27
  5. package/abis/BuySupplyWithV4SwapHook.json +0 -32
  6. package/abis/Clones.json +1 -1
  7. package/abis/CoinDopplerMultiCurve.json +109 -0
  8. package/abis/Create2.json +0 -21
  9. package/abis/ERC1967Proxy.json +1 -1
  10. package/abis/ERC1967Utils.json +0 -45
  11. package/abis/{UpgradeCoinImpl.json → Errors.json} +14 -10
  12. package/abis/{MockERC20.json → IERC1363.json} +134 -104
  13. package/abis/IERC1967.json +47 -0
  14. package/abis/IERC20.json +0 -36
  15. package/abis/IProtocolRewards.json +0 -258
  16. package/abis/{Script.json → ISupportsLimitOrderFill.json} +2 -2
  17. package/abis/IZoraLimitOrderBookCoinsInterface.json +67 -0
  18. package/abis/IZoraV4CoinHook.json +10 -0
  19. package/abis/ProxyShim.json +15 -16
  20. package/abis/SafeCast.json +51 -0
  21. package/abis/{AddressConstants.json → SafeCast160.json} +1 -1
  22. package/abis/Strings.json +10 -0
  23. package/abis/UUPSUpgradeable.json +1 -1
  24. package/abis/V3ToV4SwapLib.json +28 -0
  25. package/abis/ZoraFactory.json +1 -1
  26. package/abis/ZoraFactoryImpl.json +22 -6
  27. package/abis/ZoraV4CoinHook.json +20 -48
  28. package/dist/index.cjs +950 -43
  29. package/dist/index.cjs.map +1 -1
  30. package/dist/index.js +948 -41
  31. package/dist/index.js.map +1 -1
  32. package/dist/wagmiGenerated.d.ts +1459 -76
  33. package/dist/wagmiGenerated.d.ts.map +1 -1
  34. package/package/wagmiGenerated.ts +951 -44
  35. package/package.json +9 -9
  36. package/remappings.txt +2 -1
  37. package/src/ZoraFactoryImpl.sol +8 -0
  38. package/src/deployment/ForkedCoinsAddresses.sol +54 -0
  39. package/src/hooks/ZoraV4CoinHook.sol +74 -20
  40. package/src/hooks/deployment/BuySupplyWithV4SwapHook.sol +20 -142
  41. package/src/interfaces/ISupportsLimitOrderFill.sol +11 -0
  42. package/src/interfaces/IZoraLimitOrderBookCoinsInterface.sol +21 -0
  43. package/src/interfaces/IZoraV4CoinHook.sol +6 -0
  44. package/src/libs/CoinConstants.sol +6 -0
  45. package/src/libs/CoinDopplerMultiCurve.sol +1 -1
  46. package/src/libs/CoinRewardsV4.sol +0 -1
  47. package/src/libs/HooksDeployment.sol +20 -8
  48. package/src/libs/UniV4SwapHelper.sol +35 -0
  49. package/src/libs/V3ToV4SwapLib.sol +261 -0
  50. package/src/version/ContractVersionBase.sol +1 -1
  51. package/test/BuySupplyWithV4SwapHook.t.sol +4 -3
  52. package/test/Coin.t.sol +7 -1
  53. package/test/CoinUniV4.t.sol +2 -1
  54. package/test/ContentCoinRewards.t.sol +5 -1
  55. package/test/CreatorCoin.t.sol +3 -1
  56. package/test/CreatorCoinRewards.t.sol +3 -1
  57. package/test/Factory.t.sol +20 -7
  58. package/test/HooksDeployment.t.sol +16 -3
  59. package/test/LiquidityMigration.t.sol +52 -44
  60. package/test/MultiOwnable.t.sol +2 -1
  61. package/test/Upgrades.t.sol +110 -81
  62. package/test/V4Liquidity.t.sol +1 -1
  63. package/test/mocks/MockSwapRouter.sol +33 -0
  64. package/test/mocks/MockZoraLimitOrderBook.sol +14 -0
  65. package/test/utils/BaseTest.sol +14 -448
  66. package/test/utils/FeeEstimatorHook.sol +6 -2
  67. package/test/utils/V4TestSetup.sol +595 -0
  68. package/wagmi.config.ts +1 -1
  69. package/abis/BaseTest.json +0 -718
  70. package/abis/DeterministicDeployerAndCaller.json +0 -315
  71. package/abis/DeterministicUUPSProxyDeployer.json +0 -167
  72. package/abis/EIP712.json +0 -67
  73. package/abis/ERC20.json +0 -310
  74. package/abis/FeeEstimatorHook.json +0 -1938
  75. package/abis/IERC721.json +0 -287
  76. package/abis/IERC721Enumerable.json +0 -343
  77. package/abis/IERC721Metadata.json +0 -332
  78. package/abis/IERC721TokenReceiver.json +0 -36
  79. package/abis/IImmutableCreate2Factory.json +0 -93
  80. package/abis/IMulticall3.json +0 -440
  81. package/abis/ISafe.json +0 -15
  82. package/abis/ISymbol.json +0 -15
  83. package/abis/IUniswapV4Router04.json +0 -484
  84. package/abis/IUniversalRouter.json +0 -61
  85. package/abis/IV4Quoter.json +0 -310
  86. package/abis/ImmutableCreate2FactoryUtils.json +0 -15
  87. package/abis/LibString.json +0 -7
  88. package/abis/Math.json +0 -7
  89. package/abis/MockAirlock.json +0 -39
  90. package/abis/MockERC721.json +0 -350
  91. package/abis/ProtocolRewards.json +0 -494
  92. package/abis/ShortStrings.json +0 -18
  93. package/abis/SimpleERC20.json +0 -326
  94. package/abis/StdAssertions.json +0 -379
  95. package/abis/StdInvariant.json +0 -180
  96. package/abis/Test.json +0 -570
  97. package/abis/VmContractHelper235.json +0 -233
  98. package/abis/VmContractHelper242.json +0 -233
  99. package/abis/stdError.json +0 -119
  100. package/abis/stdStorageSafe.json +0 -52
  101. package/addresses/8453.json +0 -13
  102. package/addresses/84532.json +0 -10
  103. package/deterministicConfig/deployerAndCaller.json +0 -5
  104. package/deterministicConfig/zoraFactory.json +0 -8
  105. package/script/Deploy.s.sol +0 -23
  106. package/script/DeployAutoSwapper.s.sol +0 -30
  107. package/script/DeployDevFactory.s.sol +0 -21
  108. package/script/DeployPostDeploymentHooks.s.sol +0 -20
  109. package/script/DeployTrustedMsgSenderLookup.s.sol +0 -20
  110. package/script/DeployUpgradeGate.s.sol +0 -21
  111. package/script/GenerateDeterministicParams.s.sol +0 -43
  112. package/script/PrintRegisterUpgradePath.s.sol +0 -28
  113. package/script/PrintUpgradeCommand.s.sol +0 -13
  114. package/script/TestBackingCoinSwap.s.sol +0 -144
  115. package/script/TestV4Swap.s.sol +0 -133
  116. package/script/UpgradeCoinImpl.sol +0 -23
  117. package/script/UpgradeFactoryImpl.s.sol +0 -28
  118. package/script/UpgradeHooks.s.sol +0 -23
  119. package/src/deployment/CoinsDeployerBase.sol +0 -297
  120. /package/{test → src}/utils/ProxyShim.sol +0 -0
@@ -1,1938 +0,0 @@
1
- [
2
- {
3
- "type": "constructor",
4
- "inputs": [
5
- {
6
- "name": "_poolManager",
7
- "type": "address",
8
- "internalType": "contract IPoolManager"
9
- },
10
- {
11
- "name": "_coinVersionLookup",
12
- "type": "address",
13
- "internalType": "contract IDeployedCoinVersionLookup"
14
- },
15
- {
16
- "name": "trustedMsgSenderLookup",
17
- "type": "address",
18
- "internalType": "contract ITrustedMsgSenderProviderLookup"
19
- },
20
- {
21
- "name": "upgradeGate",
22
- "type": "address",
23
- "internalType": "contract IHooksUpgradeGate"
24
- }
25
- ],
26
- "stateMutability": "nonpayable"
27
- },
28
- {
29
- "type": "receive",
30
- "stateMutability": "payable"
31
- },
32
- {
33
- "type": "function",
34
- "name": "afterAddLiquidity",
35
- "inputs": [
36
- {
37
- "name": "sender",
38
- "type": "address",
39
- "internalType": "address"
40
- },
41
- {
42
- "name": "key",
43
- "type": "tuple",
44
- "internalType": "struct PoolKey",
45
- "components": [
46
- {
47
- "name": "currency0",
48
- "type": "address",
49
- "internalType": "Currency"
50
- },
51
- {
52
- "name": "currency1",
53
- "type": "address",
54
- "internalType": "Currency"
55
- },
56
- {
57
- "name": "fee",
58
- "type": "uint24",
59
- "internalType": "uint24"
60
- },
61
- {
62
- "name": "tickSpacing",
63
- "type": "int24",
64
- "internalType": "int24"
65
- },
66
- {
67
- "name": "hooks",
68
- "type": "address",
69
- "internalType": "contract IHooks"
70
- }
71
- ]
72
- },
73
- {
74
- "name": "params",
75
- "type": "tuple",
76
- "internalType": "struct ModifyLiquidityParams",
77
- "components": [
78
- {
79
- "name": "tickLower",
80
- "type": "int24",
81
- "internalType": "int24"
82
- },
83
- {
84
- "name": "tickUpper",
85
- "type": "int24",
86
- "internalType": "int24"
87
- },
88
- {
89
- "name": "liquidityDelta",
90
- "type": "int256",
91
- "internalType": "int256"
92
- },
93
- {
94
- "name": "salt",
95
- "type": "bytes32",
96
- "internalType": "bytes32"
97
- }
98
- ]
99
- },
100
- {
101
- "name": "delta",
102
- "type": "int256",
103
- "internalType": "BalanceDelta"
104
- },
105
- {
106
- "name": "feesAccrued",
107
- "type": "int256",
108
- "internalType": "BalanceDelta"
109
- },
110
- {
111
- "name": "hookData",
112
- "type": "bytes",
113
- "internalType": "bytes"
114
- }
115
- ],
116
- "outputs": [
117
- {
118
- "name": "",
119
- "type": "bytes4",
120
- "internalType": "bytes4"
121
- },
122
- {
123
- "name": "",
124
- "type": "int256",
125
- "internalType": "BalanceDelta"
126
- }
127
- ],
128
- "stateMutability": "nonpayable"
129
- },
130
- {
131
- "type": "function",
132
- "name": "afterDonate",
133
- "inputs": [
134
- {
135
- "name": "sender",
136
- "type": "address",
137
- "internalType": "address"
138
- },
139
- {
140
- "name": "key",
141
- "type": "tuple",
142
- "internalType": "struct PoolKey",
143
- "components": [
144
- {
145
- "name": "currency0",
146
- "type": "address",
147
- "internalType": "Currency"
148
- },
149
- {
150
- "name": "currency1",
151
- "type": "address",
152
- "internalType": "Currency"
153
- },
154
- {
155
- "name": "fee",
156
- "type": "uint24",
157
- "internalType": "uint24"
158
- },
159
- {
160
- "name": "tickSpacing",
161
- "type": "int24",
162
- "internalType": "int24"
163
- },
164
- {
165
- "name": "hooks",
166
- "type": "address",
167
- "internalType": "contract IHooks"
168
- }
169
- ]
170
- },
171
- {
172
- "name": "amount0",
173
- "type": "uint256",
174
- "internalType": "uint256"
175
- },
176
- {
177
- "name": "amount1",
178
- "type": "uint256",
179
- "internalType": "uint256"
180
- },
181
- {
182
- "name": "hookData",
183
- "type": "bytes",
184
- "internalType": "bytes"
185
- }
186
- ],
187
- "outputs": [
188
- {
189
- "name": "",
190
- "type": "bytes4",
191
- "internalType": "bytes4"
192
- }
193
- ],
194
- "stateMutability": "nonpayable"
195
- },
196
- {
197
- "type": "function",
198
- "name": "afterInitialize",
199
- "inputs": [
200
- {
201
- "name": "sender",
202
- "type": "address",
203
- "internalType": "address"
204
- },
205
- {
206
- "name": "key",
207
- "type": "tuple",
208
- "internalType": "struct PoolKey",
209
- "components": [
210
- {
211
- "name": "currency0",
212
- "type": "address",
213
- "internalType": "Currency"
214
- },
215
- {
216
- "name": "currency1",
217
- "type": "address",
218
- "internalType": "Currency"
219
- },
220
- {
221
- "name": "fee",
222
- "type": "uint24",
223
- "internalType": "uint24"
224
- },
225
- {
226
- "name": "tickSpacing",
227
- "type": "int24",
228
- "internalType": "int24"
229
- },
230
- {
231
- "name": "hooks",
232
- "type": "address",
233
- "internalType": "contract IHooks"
234
- }
235
- ]
236
- },
237
- {
238
- "name": "sqrtPriceX96",
239
- "type": "uint160",
240
- "internalType": "uint160"
241
- },
242
- {
243
- "name": "tick",
244
- "type": "int24",
245
- "internalType": "int24"
246
- }
247
- ],
248
- "outputs": [
249
- {
250
- "name": "",
251
- "type": "bytes4",
252
- "internalType": "bytes4"
253
- }
254
- ],
255
- "stateMutability": "nonpayable"
256
- },
257
- {
258
- "type": "function",
259
- "name": "afterRemoveLiquidity",
260
- "inputs": [
261
- {
262
- "name": "sender",
263
- "type": "address",
264
- "internalType": "address"
265
- },
266
- {
267
- "name": "key",
268
- "type": "tuple",
269
- "internalType": "struct PoolKey",
270
- "components": [
271
- {
272
- "name": "currency0",
273
- "type": "address",
274
- "internalType": "Currency"
275
- },
276
- {
277
- "name": "currency1",
278
- "type": "address",
279
- "internalType": "Currency"
280
- },
281
- {
282
- "name": "fee",
283
- "type": "uint24",
284
- "internalType": "uint24"
285
- },
286
- {
287
- "name": "tickSpacing",
288
- "type": "int24",
289
- "internalType": "int24"
290
- },
291
- {
292
- "name": "hooks",
293
- "type": "address",
294
- "internalType": "contract IHooks"
295
- }
296
- ]
297
- },
298
- {
299
- "name": "params",
300
- "type": "tuple",
301
- "internalType": "struct ModifyLiquidityParams",
302
- "components": [
303
- {
304
- "name": "tickLower",
305
- "type": "int24",
306
- "internalType": "int24"
307
- },
308
- {
309
- "name": "tickUpper",
310
- "type": "int24",
311
- "internalType": "int24"
312
- },
313
- {
314
- "name": "liquidityDelta",
315
- "type": "int256",
316
- "internalType": "int256"
317
- },
318
- {
319
- "name": "salt",
320
- "type": "bytes32",
321
- "internalType": "bytes32"
322
- }
323
- ]
324
- },
325
- {
326
- "name": "delta",
327
- "type": "int256",
328
- "internalType": "BalanceDelta"
329
- },
330
- {
331
- "name": "feesAccrued",
332
- "type": "int256",
333
- "internalType": "BalanceDelta"
334
- },
335
- {
336
- "name": "hookData",
337
- "type": "bytes",
338
- "internalType": "bytes"
339
- }
340
- ],
341
- "outputs": [
342
- {
343
- "name": "",
344
- "type": "bytes4",
345
- "internalType": "bytes4"
346
- },
347
- {
348
- "name": "",
349
- "type": "int256",
350
- "internalType": "BalanceDelta"
351
- }
352
- ],
353
- "stateMutability": "nonpayable"
354
- },
355
- {
356
- "type": "function",
357
- "name": "afterSwap",
358
- "inputs": [
359
- {
360
- "name": "sender",
361
- "type": "address",
362
- "internalType": "address"
363
- },
364
- {
365
- "name": "key",
366
- "type": "tuple",
367
- "internalType": "struct PoolKey",
368
- "components": [
369
- {
370
- "name": "currency0",
371
- "type": "address",
372
- "internalType": "Currency"
373
- },
374
- {
375
- "name": "currency1",
376
- "type": "address",
377
- "internalType": "Currency"
378
- },
379
- {
380
- "name": "fee",
381
- "type": "uint24",
382
- "internalType": "uint24"
383
- },
384
- {
385
- "name": "tickSpacing",
386
- "type": "int24",
387
- "internalType": "int24"
388
- },
389
- {
390
- "name": "hooks",
391
- "type": "address",
392
- "internalType": "contract IHooks"
393
- }
394
- ]
395
- },
396
- {
397
- "name": "params",
398
- "type": "tuple",
399
- "internalType": "struct SwapParams",
400
- "components": [
401
- {
402
- "name": "zeroForOne",
403
- "type": "bool",
404
- "internalType": "bool"
405
- },
406
- {
407
- "name": "amountSpecified",
408
- "type": "int256",
409
- "internalType": "int256"
410
- },
411
- {
412
- "name": "sqrtPriceLimitX96",
413
- "type": "uint160",
414
- "internalType": "uint160"
415
- }
416
- ]
417
- },
418
- {
419
- "name": "delta",
420
- "type": "int256",
421
- "internalType": "BalanceDelta"
422
- },
423
- {
424
- "name": "hookData",
425
- "type": "bytes",
426
- "internalType": "bytes"
427
- }
428
- ],
429
- "outputs": [
430
- {
431
- "name": "",
432
- "type": "bytes4",
433
- "internalType": "bytes4"
434
- },
435
- {
436
- "name": "",
437
- "type": "int128",
438
- "internalType": "int128"
439
- }
440
- ],
441
- "stateMutability": "nonpayable"
442
- },
443
- {
444
- "type": "function",
445
- "name": "beforeAddLiquidity",
446
- "inputs": [
447
- {
448
- "name": "sender",
449
- "type": "address",
450
- "internalType": "address"
451
- },
452
- {
453
- "name": "key",
454
- "type": "tuple",
455
- "internalType": "struct PoolKey",
456
- "components": [
457
- {
458
- "name": "currency0",
459
- "type": "address",
460
- "internalType": "Currency"
461
- },
462
- {
463
- "name": "currency1",
464
- "type": "address",
465
- "internalType": "Currency"
466
- },
467
- {
468
- "name": "fee",
469
- "type": "uint24",
470
- "internalType": "uint24"
471
- },
472
- {
473
- "name": "tickSpacing",
474
- "type": "int24",
475
- "internalType": "int24"
476
- },
477
- {
478
- "name": "hooks",
479
- "type": "address",
480
- "internalType": "contract IHooks"
481
- }
482
- ]
483
- },
484
- {
485
- "name": "params",
486
- "type": "tuple",
487
- "internalType": "struct ModifyLiquidityParams",
488
- "components": [
489
- {
490
- "name": "tickLower",
491
- "type": "int24",
492
- "internalType": "int24"
493
- },
494
- {
495
- "name": "tickUpper",
496
- "type": "int24",
497
- "internalType": "int24"
498
- },
499
- {
500
- "name": "liquidityDelta",
501
- "type": "int256",
502
- "internalType": "int256"
503
- },
504
- {
505
- "name": "salt",
506
- "type": "bytes32",
507
- "internalType": "bytes32"
508
- }
509
- ]
510
- },
511
- {
512
- "name": "hookData",
513
- "type": "bytes",
514
- "internalType": "bytes"
515
- }
516
- ],
517
- "outputs": [
518
- {
519
- "name": "",
520
- "type": "bytes4",
521
- "internalType": "bytes4"
522
- }
523
- ],
524
- "stateMutability": "nonpayable"
525
- },
526
- {
527
- "type": "function",
528
- "name": "beforeDonate",
529
- "inputs": [
530
- {
531
- "name": "sender",
532
- "type": "address",
533
- "internalType": "address"
534
- },
535
- {
536
- "name": "key",
537
- "type": "tuple",
538
- "internalType": "struct PoolKey",
539
- "components": [
540
- {
541
- "name": "currency0",
542
- "type": "address",
543
- "internalType": "Currency"
544
- },
545
- {
546
- "name": "currency1",
547
- "type": "address",
548
- "internalType": "Currency"
549
- },
550
- {
551
- "name": "fee",
552
- "type": "uint24",
553
- "internalType": "uint24"
554
- },
555
- {
556
- "name": "tickSpacing",
557
- "type": "int24",
558
- "internalType": "int24"
559
- },
560
- {
561
- "name": "hooks",
562
- "type": "address",
563
- "internalType": "contract IHooks"
564
- }
565
- ]
566
- },
567
- {
568
- "name": "amount0",
569
- "type": "uint256",
570
- "internalType": "uint256"
571
- },
572
- {
573
- "name": "amount1",
574
- "type": "uint256",
575
- "internalType": "uint256"
576
- },
577
- {
578
- "name": "hookData",
579
- "type": "bytes",
580
- "internalType": "bytes"
581
- }
582
- ],
583
- "outputs": [
584
- {
585
- "name": "",
586
- "type": "bytes4",
587
- "internalType": "bytes4"
588
- }
589
- ],
590
- "stateMutability": "nonpayable"
591
- },
592
- {
593
- "type": "function",
594
- "name": "beforeInitialize",
595
- "inputs": [
596
- {
597
- "name": "sender",
598
- "type": "address",
599
- "internalType": "address"
600
- },
601
- {
602
- "name": "key",
603
- "type": "tuple",
604
- "internalType": "struct PoolKey",
605
- "components": [
606
- {
607
- "name": "currency0",
608
- "type": "address",
609
- "internalType": "Currency"
610
- },
611
- {
612
- "name": "currency1",
613
- "type": "address",
614
- "internalType": "Currency"
615
- },
616
- {
617
- "name": "fee",
618
- "type": "uint24",
619
- "internalType": "uint24"
620
- },
621
- {
622
- "name": "tickSpacing",
623
- "type": "int24",
624
- "internalType": "int24"
625
- },
626
- {
627
- "name": "hooks",
628
- "type": "address",
629
- "internalType": "contract IHooks"
630
- }
631
- ]
632
- },
633
- {
634
- "name": "sqrtPriceX96",
635
- "type": "uint160",
636
- "internalType": "uint160"
637
- }
638
- ],
639
- "outputs": [
640
- {
641
- "name": "",
642
- "type": "bytes4",
643
- "internalType": "bytes4"
644
- }
645
- ],
646
- "stateMutability": "nonpayable"
647
- },
648
- {
649
- "type": "function",
650
- "name": "beforeRemoveLiquidity",
651
- "inputs": [
652
- {
653
- "name": "sender",
654
- "type": "address",
655
- "internalType": "address"
656
- },
657
- {
658
- "name": "key",
659
- "type": "tuple",
660
- "internalType": "struct PoolKey",
661
- "components": [
662
- {
663
- "name": "currency0",
664
- "type": "address",
665
- "internalType": "Currency"
666
- },
667
- {
668
- "name": "currency1",
669
- "type": "address",
670
- "internalType": "Currency"
671
- },
672
- {
673
- "name": "fee",
674
- "type": "uint24",
675
- "internalType": "uint24"
676
- },
677
- {
678
- "name": "tickSpacing",
679
- "type": "int24",
680
- "internalType": "int24"
681
- },
682
- {
683
- "name": "hooks",
684
- "type": "address",
685
- "internalType": "contract IHooks"
686
- }
687
- ]
688
- },
689
- {
690
- "name": "params",
691
- "type": "tuple",
692
- "internalType": "struct ModifyLiquidityParams",
693
- "components": [
694
- {
695
- "name": "tickLower",
696
- "type": "int24",
697
- "internalType": "int24"
698
- },
699
- {
700
- "name": "tickUpper",
701
- "type": "int24",
702
- "internalType": "int24"
703
- },
704
- {
705
- "name": "liquidityDelta",
706
- "type": "int256",
707
- "internalType": "int256"
708
- },
709
- {
710
- "name": "salt",
711
- "type": "bytes32",
712
- "internalType": "bytes32"
713
- }
714
- ]
715
- },
716
- {
717
- "name": "hookData",
718
- "type": "bytes",
719
- "internalType": "bytes"
720
- }
721
- ],
722
- "outputs": [
723
- {
724
- "name": "",
725
- "type": "bytes4",
726
- "internalType": "bytes4"
727
- }
728
- ],
729
- "stateMutability": "nonpayable"
730
- },
731
- {
732
- "type": "function",
733
- "name": "beforeSwap",
734
- "inputs": [
735
- {
736
- "name": "sender",
737
- "type": "address",
738
- "internalType": "address"
739
- },
740
- {
741
- "name": "key",
742
- "type": "tuple",
743
- "internalType": "struct PoolKey",
744
- "components": [
745
- {
746
- "name": "currency0",
747
- "type": "address",
748
- "internalType": "Currency"
749
- },
750
- {
751
- "name": "currency1",
752
- "type": "address",
753
- "internalType": "Currency"
754
- },
755
- {
756
- "name": "fee",
757
- "type": "uint24",
758
- "internalType": "uint24"
759
- },
760
- {
761
- "name": "tickSpacing",
762
- "type": "int24",
763
- "internalType": "int24"
764
- },
765
- {
766
- "name": "hooks",
767
- "type": "address",
768
- "internalType": "contract IHooks"
769
- }
770
- ]
771
- },
772
- {
773
- "name": "params",
774
- "type": "tuple",
775
- "internalType": "struct SwapParams",
776
- "components": [
777
- {
778
- "name": "zeroForOne",
779
- "type": "bool",
780
- "internalType": "bool"
781
- },
782
- {
783
- "name": "amountSpecified",
784
- "type": "int256",
785
- "internalType": "int256"
786
- },
787
- {
788
- "name": "sqrtPriceLimitX96",
789
- "type": "uint160",
790
- "internalType": "uint160"
791
- }
792
- ]
793
- },
794
- {
795
- "name": "hookData",
796
- "type": "bytes",
797
- "internalType": "bytes"
798
- }
799
- ],
800
- "outputs": [
801
- {
802
- "name": "",
803
- "type": "bytes4",
804
- "internalType": "bytes4"
805
- },
806
- {
807
- "name": "",
808
- "type": "int256",
809
- "internalType": "BeforeSwapDelta"
810
- },
811
- {
812
- "name": "",
813
- "type": "uint24",
814
- "internalType": "uint24"
815
- }
816
- ],
817
- "stateMutability": "nonpayable"
818
- },
819
- {
820
- "type": "function",
821
- "name": "contractVersion",
822
- "inputs": [],
823
- "outputs": [
824
- {
825
- "name": "",
826
- "type": "string",
827
- "internalType": "string"
828
- }
829
- ],
830
- "stateMutability": "pure"
831
- },
832
- {
833
- "type": "function",
834
- "name": "feeState",
835
- "inputs": [],
836
- "outputs": [
837
- {
838
- "name": "fees0",
839
- "type": "uint128",
840
- "internalType": "uint128"
841
- },
842
- {
843
- "name": "fees1",
844
- "type": "uint128",
845
- "internalType": "uint128"
846
- },
847
- {
848
- "name": "afterSwapCurrency",
849
- "type": "address",
850
- "internalType": "Currency"
851
- },
852
- {
853
- "name": "afterSwapCurrencyAmount",
854
- "type": "uint128",
855
- "internalType": "uint128"
856
- },
857
- {
858
- "name": "lastDelta",
859
- "type": "int256",
860
- "internalType": "BalanceDelta"
861
- },
862
- {
863
- "name": "lastSwapParams",
864
- "type": "tuple",
865
- "internalType": "struct SwapParams",
866
- "components": [
867
- {
868
- "name": "zeroForOne",
869
- "type": "bool",
870
- "internalType": "bool"
871
- },
872
- {
873
- "name": "amountSpecified",
874
- "type": "int256",
875
- "internalType": "int256"
876
- },
877
- {
878
- "name": "sqrtPriceLimitX96",
879
- "type": "uint160",
880
- "internalType": "uint160"
881
- }
882
- ]
883
- },
884
- {
885
- "name": "currencyBalanceChange",
886
- "type": "uint256",
887
- "internalType": "uint256"
888
- },
889
- {
890
- "name": "coinBalanceChange",
891
- "type": "uint256",
892
- "internalType": "uint256"
893
- }
894
- ],
895
- "stateMutability": "view"
896
- },
897
- {
898
- "type": "function",
899
- "name": "getFeeState",
900
- "inputs": [],
901
- "outputs": [
902
- {
903
- "name": "",
904
- "type": "tuple",
905
- "internalType": "struct FeeEstimatorHook.FeeEstimatorState",
906
- "components": [
907
- {
908
- "name": "fees0",
909
- "type": "uint128",
910
- "internalType": "uint128"
911
- },
912
- {
913
- "name": "fees1",
914
- "type": "uint128",
915
- "internalType": "uint128"
916
- },
917
- {
918
- "name": "afterSwapCurrency",
919
- "type": "address",
920
- "internalType": "Currency"
921
- },
922
- {
923
- "name": "afterSwapCurrencyAmount",
924
- "type": "uint128",
925
- "internalType": "uint128"
926
- },
927
- {
928
- "name": "lastDelta",
929
- "type": "int256",
930
- "internalType": "BalanceDelta"
931
- },
932
- {
933
- "name": "lastSwapParams",
934
- "type": "tuple",
935
- "internalType": "struct SwapParams",
936
- "components": [
937
- {
938
- "name": "zeroForOne",
939
- "type": "bool",
940
- "internalType": "bool"
941
- },
942
- {
943
- "name": "amountSpecified",
944
- "type": "int256",
945
- "internalType": "int256"
946
- },
947
- {
948
- "name": "sqrtPriceLimitX96",
949
- "type": "uint160",
950
- "internalType": "uint160"
951
- }
952
- ]
953
- },
954
- {
955
- "name": "currencyBalanceChange",
956
- "type": "uint256",
957
- "internalType": "uint256"
958
- },
959
- {
960
- "name": "coinBalanceChange",
961
- "type": "uint256",
962
- "internalType": "uint256"
963
- }
964
- ]
965
- }
966
- ],
967
- "stateMutability": "view"
968
- },
969
- {
970
- "type": "function",
971
- "name": "getHookPermissions",
972
- "inputs": [],
973
- "outputs": [
974
- {
975
- "name": "",
976
- "type": "tuple",
977
- "internalType": "struct Hooks.Permissions",
978
- "components": [
979
- {
980
- "name": "beforeInitialize",
981
- "type": "bool",
982
- "internalType": "bool"
983
- },
984
- {
985
- "name": "afterInitialize",
986
- "type": "bool",
987
- "internalType": "bool"
988
- },
989
- {
990
- "name": "beforeAddLiquidity",
991
- "type": "bool",
992
- "internalType": "bool"
993
- },
994
- {
995
- "name": "afterAddLiquidity",
996
- "type": "bool",
997
- "internalType": "bool"
998
- },
999
- {
1000
- "name": "beforeRemoveLiquidity",
1001
- "type": "bool",
1002
- "internalType": "bool"
1003
- },
1004
- {
1005
- "name": "afterRemoveLiquidity",
1006
- "type": "bool",
1007
- "internalType": "bool"
1008
- },
1009
- {
1010
- "name": "beforeSwap",
1011
- "type": "bool",
1012
- "internalType": "bool"
1013
- },
1014
- {
1015
- "name": "afterSwap",
1016
- "type": "bool",
1017
- "internalType": "bool"
1018
- },
1019
- {
1020
- "name": "beforeDonate",
1021
- "type": "bool",
1022
- "internalType": "bool"
1023
- },
1024
- {
1025
- "name": "afterDonate",
1026
- "type": "bool",
1027
- "internalType": "bool"
1028
- },
1029
- {
1030
- "name": "beforeSwapReturnDelta",
1031
- "type": "bool",
1032
- "internalType": "bool"
1033
- },
1034
- {
1035
- "name": "afterSwapReturnDelta",
1036
- "type": "bool",
1037
- "internalType": "bool"
1038
- },
1039
- {
1040
- "name": "afterAddLiquidityReturnDelta",
1041
- "type": "bool",
1042
- "internalType": "bool"
1043
- },
1044
- {
1045
- "name": "afterRemoveLiquidityReturnDelta",
1046
- "type": "bool",
1047
- "internalType": "bool"
1048
- }
1049
- ]
1050
- }
1051
- ],
1052
- "stateMutability": "pure"
1053
- },
1054
- {
1055
- "type": "function",
1056
- "name": "getPoolCoin",
1057
- "inputs": [
1058
- {
1059
- "name": "key",
1060
- "type": "tuple",
1061
- "internalType": "struct PoolKey",
1062
- "components": [
1063
- {
1064
- "name": "currency0",
1065
- "type": "address",
1066
- "internalType": "Currency"
1067
- },
1068
- {
1069
- "name": "currency1",
1070
- "type": "address",
1071
- "internalType": "Currency"
1072
- },
1073
- {
1074
- "name": "fee",
1075
- "type": "uint24",
1076
- "internalType": "uint24"
1077
- },
1078
- {
1079
- "name": "tickSpacing",
1080
- "type": "int24",
1081
- "internalType": "int24"
1082
- },
1083
- {
1084
- "name": "hooks",
1085
- "type": "address",
1086
- "internalType": "contract IHooks"
1087
- }
1088
- ]
1089
- }
1090
- ],
1091
- "outputs": [
1092
- {
1093
- "name": "",
1094
- "type": "tuple",
1095
- "internalType": "struct IZoraV4CoinHook.PoolCoin",
1096
- "components": [
1097
- {
1098
- "name": "coin",
1099
- "type": "address",
1100
- "internalType": "address"
1101
- },
1102
- {
1103
- "name": "positions",
1104
- "type": "tuple[]",
1105
- "internalType": "struct LpPosition[]",
1106
- "components": [
1107
- {
1108
- "name": "tickLower",
1109
- "type": "int24",
1110
- "internalType": "int24"
1111
- },
1112
- {
1113
- "name": "tickUpper",
1114
- "type": "int24",
1115
- "internalType": "int24"
1116
- },
1117
- {
1118
- "name": "liquidity",
1119
- "type": "uint128",
1120
- "internalType": "uint128"
1121
- }
1122
- ]
1123
- }
1124
- ]
1125
- }
1126
- ],
1127
- "stateMutability": "view"
1128
- },
1129
- {
1130
- "type": "function",
1131
- "name": "getPoolCoinByHash",
1132
- "inputs": [
1133
- {
1134
- "name": "poolKeyHash",
1135
- "type": "bytes32",
1136
- "internalType": "bytes32"
1137
- }
1138
- ],
1139
- "outputs": [
1140
- {
1141
- "name": "",
1142
- "type": "tuple",
1143
- "internalType": "struct IZoraV4CoinHook.PoolCoin",
1144
- "components": [
1145
- {
1146
- "name": "coin",
1147
- "type": "address",
1148
- "internalType": "address"
1149
- },
1150
- {
1151
- "name": "positions",
1152
- "type": "tuple[]",
1153
- "internalType": "struct LpPosition[]",
1154
- "components": [
1155
- {
1156
- "name": "tickLower",
1157
- "type": "int24",
1158
- "internalType": "int24"
1159
- },
1160
- {
1161
- "name": "tickUpper",
1162
- "type": "int24",
1163
- "internalType": "int24"
1164
- },
1165
- {
1166
- "name": "liquidity",
1167
- "type": "uint128",
1168
- "internalType": "uint128"
1169
- }
1170
- ]
1171
- }
1172
- ]
1173
- }
1174
- ],
1175
- "stateMutability": "view"
1176
- },
1177
- {
1178
- "type": "function",
1179
- "name": "getTrustedMsgSenderLookup",
1180
- "inputs": [],
1181
- "outputs": [
1182
- {
1183
- "name": "",
1184
- "type": "address",
1185
- "internalType": "contract ITrustedMsgSenderProviderLookup"
1186
- }
1187
- ],
1188
- "stateMutability": "view"
1189
- },
1190
- {
1191
- "type": "function",
1192
- "name": "initializeFromMigration",
1193
- "inputs": [
1194
- {
1195
- "name": "poolKey",
1196
- "type": "tuple",
1197
- "internalType": "struct PoolKey",
1198
- "components": [
1199
- {
1200
- "name": "currency0",
1201
- "type": "address",
1202
- "internalType": "Currency"
1203
- },
1204
- {
1205
- "name": "currency1",
1206
- "type": "address",
1207
- "internalType": "Currency"
1208
- },
1209
- {
1210
- "name": "fee",
1211
- "type": "uint24",
1212
- "internalType": "uint24"
1213
- },
1214
- {
1215
- "name": "tickSpacing",
1216
- "type": "int24",
1217
- "internalType": "int24"
1218
- },
1219
- {
1220
- "name": "hooks",
1221
- "type": "address",
1222
- "internalType": "contract IHooks"
1223
- }
1224
- ]
1225
- },
1226
- {
1227
- "name": "coin",
1228
- "type": "address",
1229
- "internalType": "address"
1230
- },
1231
- {
1232
- "name": "sqrtPriceX96",
1233
- "type": "uint160",
1234
- "internalType": "uint160"
1235
- },
1236
- {
1237
- "name": "migratedLiquidity",
1238
- "type": "tuple[]",
1239
- "internalType": "struct BurnedPosition[]",
1240
- "components": [
1241
- {
1242
- "name": "tickLower",
1243
- "type": "int24",
1244
- "internalType": "int24"
1245
- },
1246
- {
1247
- "name": "tickUpper",
1248
- "type": "int24",
1249
- "internalType": "int24"
1250
- },
1251
- {
1252
- "name": "amount0Received",
1253
- "type": "uint128",
1254
- "internalType": "uint128"
1255
- },
1256
- {
1257
- "name": "amount1Received",
1258
- "type": "uint128",
1259
- "internalType": "uint128"
1260
- }
1261
- ]
1262
- },
1263
- {
1264
- "name": "additionalData",
1265
- "type": "bytes",
1266
- "internalType": "bytes"
1267
- }
1268
- ],
1269
- "outputs": [],
1270
- "stateMutability": "nonpayable"
1271
- },
1272
- {
1273
- "type": "function",
1274
- "name": "initializeFromMigrationWithUpdateableFee",
1275
- "inputs": [
1276
- {
1277
- "name": "poolKey",
1278
- "type": "tuple",
1279
- "internalType": "struct PoolKey",
1280
- "components": [
1281
- {
1282
- "name": "currency0",
1283
- "type": "address",
1284
- "internalType": "Currency"
1285
- },
1286
- {
1287
- "name": "currency1",
1288
- "type": "address",
1289
- "internalType": "Currency"
1290
- },
1291
- {
1292
- "name": "fee",
1293
- "type": "uint24",
1294
- "internalType": "uint24"
1295
- },
1296
- {
1297
- "name": "tickSpacing",
1298
- "type": "int24",
1299
- "internalType": "int24"
1300
- },
1301
- {
1302
- "name": "hooks",
1303
- "type": "address",
1304
- "internalType": "contract IHooks"
1305
- }
1306
- ]
1307
- },
1308
- {
1309
- "name": "coin",
1310
- "type": "address",
1311
- "internalType": "address"
1312
- },
1313
- {
1314
- "name": "sqrtPriceX96",
1315
- "type": "uint160",
1316
- "internalType": "uint160"
1317
- },
1318
- {
1319
- "name": "migratedLiquidity",
1320
- "type": "tuple[]",
1321
- "internalType": "struct BurnedPosition[]",
1322
- "components": [
1323
- {
1324
- "name": "tickLower",
1325
- "type": "int24",
1326
- "internalType": "int24"
1327
- },
1328
- {
1329
- "name": "tickUpper",
1330
- "type": "int24",
1331
- "internalType": "int24"
1332
- },
1333
- {
1334
- "name": "amount0Received",
1335
- "type": "uint128",
1336
- "internalType": "uint128"
1337
- },
1338
- {
1339
- "name": "amount1Received",
1340
- "type": "uint128",
1341
- "internalType": "uint128"
1342
- }
1343
- ]
1344
- },
1345
- {
1346
- "name": "additionalData",
1347
- "type": "bytes",
1348
- "internalType": "bytes"
1349
- }
1350
- ],
1351
- "outputs": [
1352
- {
1353
- "name": "fee",
1354
- "type": "uint24",
1355
- "internalType": "uint24"
1356
- },
1357
- {
1358
- "name": "tickSpacing",
1359
- "type": "int24",
1360
- "internalType": "int24"
1361
- }
1362
- ],
1363
- "stateMutability": "nonpayable"
1364
- },
1365
- {
1366
- "type": "function",
1367
- "name": "isTrustedMessageSender",
1368
- "inputs": [
1369
- {
1370
- "name": "sender",
1371
- "type": "address",
1372
- "internalType": "address"
1373
- }
1374
- ],
1375
- "outputs": [
1376
- {
1377
- "name": "",
1378
- "type": "bool",
1379
- "internalType": "bool"
1380
- }
1381
- ],
1382
- "stateMutability": "view"
1383
- },
1384
- {
1385
- "type": "function",
1386
- "name": "migrateLiquidity",
1387
- "inputs": [
1388
- {
1389
- "name": "newHook",
1390
- "type": "address",
1391
- "internalType": "address"
1392
- },
1393
- {
1394
- "name": "poolKey",
1395
- "type": "tuple",
1396
- "internalType": "struct PoolKey",
1397
- "components": [
1398
- {
1399
- "name": "currency0",
1400
- "type": "address",
1401
- "internalType": "Currency"
1402
- },
1403
- {
1404
- "name": "currency1",
1405
- "type": "address",
1406
- "internalType": "Currency"
1407
- },
1408
- {
1409
- "name": "fee",
1410
- "type": "uint24",
1411
- "internalType": "uint24"
1412
- },
1413
- {
1414
- "name": "tickSpacing",
1415
- "type": "int24",
1416
- "internalType": "int24"
1417
- },
1418
- {
1419
- "name": "hooks",
1420
- "type": "address",
1421
- "internalType": "contract IHooks"
1422
- }
1423
- ]
1424
- },
1425
- {
1426
- "name": "additionalData",
1427
- "type": "bytes",
1428
- "internalType": "bytes"
1429
- }
1430
- ],
1431
- "outputs": [
1432
- {
1433
- "name": "newPoolKey",
1434
- "type": "tuple",
1435
- "internalType": "struct PoolKey",
1436
- "components": [
1437
- {
1438
- "name": "currency0",
1439
- "type": "address",
1440
- "internalType": "Currency"
1441
- },
1442
- {
1443
- "name": "currency1",
1444
- "type": "address",
1445
- "internalType": "Currency"
1446
- },
1447
- {
1448
- "name": "fee",
1449
- "type": "uint24",
1450
- "internalType": "uint24"
1451
- },
1452
- {
1453
- "name": "tickSpacing",
1454
- "type": "int24",
1455
- "internalType": "int24"
1456
- },
1457
- {
1458
- "name": "hooks",
1459
- "type": "address",
1460
- "internalType": "contract IHooks"
1461
- }
1462
- ]
1463
- }
1464
- ],
1465
- "stateMutability": "nonpayable"
1466
- },
1467
- {
1468
- "type": "function",
1469
- "name": "poolManager",
1470
- "inputs": [],
1471
- "outputs": [
1472
- {
1473
- "name": "",
1474
- "type": "address",
1475
- "internalType": "contract IPoolManager"
1476
- }
1477
- ],
1478
- "stateMutability": "view"
1479
- },
1480
- {
1481
- "type": "function",
1482
- "name": "supportsInterface",
1483
- "inputs": [
1484
- {
1485
- "name": "interfaceId",
1486
- "type": "bytes4",
1487
- "internalType": "bytes4"
1488
- }
1489
- ],
1490
- "outputs": [
1491
- {
1492
- "name": "",
1493
- "type": "bool",
1494
- "internalType": "bool"
1495
- }
1496
- ],
1497
- "stateMutability": "view"
1498
- },
1499
- {
1500
- "type": "function",
1501
- "name": "unlockCallback",
1502
- "inputs": [
1503
- {
1504
- "name": "data",
1505
- "type": "bytes",
1506
- "internalType": "bytes"
1507
- }
1508
- ],
1509
- "outputs": [
1510
- {
1511
- "name": "",
1512
- "type": "bytes",
1513
- "internalType": "bytes"
1514
- }
1515
- ],
1516
- "stateMutability": "nonpayable"
1517
- },
1518
- {
1519
- "type": "event",
1520
- "name": "CoinMarketRewardsV4",
1521
- "inputs": [
1522
- {
1523
- "name": "coin",
1524
- "type": "address",
1525
- "indexed": false,
1526
- "internalType": "address"
1527
- },
1528
- {
1529
- "name": "currency",
1530
- "type": "address",
1531
- "indexed": false,
1532
- "internalType": "address"
1533
- },
1534
- {
1535
- "name": "payoutRecipient",
1536
- "type": "address",
1537
- "indexed": false,
1538
- "internalType": "address"
1539
- },
1540
- {
1541
- "name": "platformReferrer",
1542
- "type": "address",
1543
- "indexed": false,
1544
- "internalType": "address"
1545
- },
1546
- {
1547
- "name": "tradeReferrer",
1548
- "type": "address",
1549
- "indexed": false,
1550
- "internalType": "address"
1551
- },
1552
- {
1553
- "name": "protocolRewardRecipient",
1554
- "type": "address",
1555
- "indexed": false,
1556
- "internalType": "address"
1557
- },
1558
- {
1559
- "name": "dopplerRecipient",
1560
- "type": "address",
1561
- "indexed": false,
1562
- "internalType": "address"
1563
- },
1564
- {
1565
- "name": "marketRewards",
1566
- "type": "tuple",
1567
- "indexed": false,
1568
- "internalType": "struct IZoraV4CoinHook.MarketRewardsV4",
1569
- "components": [
1570
- {
1571
- "name": "creatorPayoutAmountCurrency",
1572
- "type": "uint256",
1573
- "internalType": "uint256"
1574
- },
1575
- {
1576
- "name": "creatorPayoutAmountCoin",
1577
- "type": "uint256",
1578
- "internalType": "uint256"
1579
- },
1580
- {
1581
- "name": "platformReferrerAmountCurrency",
1582
- "type": "uint256",
1583
- "internalType": "uint256"
1584
- },
1585
- {
1586
- "name": "platformReferrerAmountCoin",
1587
- "type": "uint256",
1588
- "internalType": "uint256"
1589
- },
1590
- {
1591
- "name": "tradeReferrerAmountCurrency",
1592
- "type": "uint256",
1593
- "internalType": "uint256"
1594
- },
1595
- {
1596
- "name": "tradeReferrerAmountCoin",
1597
- "type": "uint256",
1598
- "internalType": "uint256"
1599
- },
1600
- {
1601
- "name": "protocolAmountCurrency",
1602
- "type": "uint256",
1603
- "internalType": "uint256"
1604
- },
1605
- {
1606
- "name": "protocolAmountCoin",
1607
- "type": "uint256",
1608
- "internalType": "uint256"
1609
- },
1610
- {
1611
- "name": "dopplerAmountCurrency",
1612
- "type": "uint256",
1613
- "internalType": "uint256"
1614
- },
1615
- {
1616
- "name": "dopplerAmountCoin",
1617
- "type": "uint256",
1618
- "internalType": "uint256"
1619
- }
1620
- ]
1621
- }
1622
- ],
1623
- "anonymous": false
1624
- },
1625
- {
1626
- "type": "event",
1627
- "name": "LpReward",
1628
- "inputs": [
1629
- {
1630
- "name": "coin",
1631
- "type": "address",
1632
- "indexed": true,
1633
- "internalType": "address"
1634
- },
1635
- {
1636
- "name": "currency",
1637
- "type": "address",
1638
- "indexed": true,
1639
- "internalType": "address"
1640
- },
1641
- {
1642
- "name": "amountCurrency",
1643
- "type": "uint256",
1644
- "indexed": false,
1645
- "internalType": "uint256"
1646
- },
1647
- {
1648
- "name": "tick",
1649
- "type": "int24",
1650
- "indexed": false,
1651
- "internalType": "int24"
1652
- },
1653
- {
1654
- "name": "liquidity",
1655
- "type": "uint128",
1656
- "indexed": false,
1657
- "internalType": "uint128"
1658
- }
1659
- ],
1660
- "anonymous": false
1661
- },
1662
- {
1663
- "type": "event",
1664
- "name": "Swapped",
1665
- "inputs": [
1666
- {
1667
- "name": "sender",
1668
- "type": "address",
1669
- "indexed": true,
1670
- "internalType": "address"
1671
- },
1672
- {
1673
- "name": "swapSender",
1674
- "type": "address",
1675
- "indexed": true,
1676
- "internalType": "address"
1677
- },
1678
- {
1679
- "name": "isTrustedSwapSenderAddress",
1680
- "type": "bool",
1681
- "indexed": false,
1682
- "internalType": "bool"
1683
- },
1684
- {
1685
- "name": "key",
1686
- "type": "tuple",
1687
- "indexed": false,
1688
- "internalType": "struct PoolKey",
1689
- "components": [
1690
- {
1691
- "name": "currency0",
1692
- "type": "address",
1693
- "internalType": "Currency"
1694
- },
1695
- {
1696
- "name": "currency1",
1697
- "type": "address",
1698
- "internalType": "Currency"
1699
- },
1700
- {
1701
- "name": "fee",
1702
- "type": "uint24",
1703
- "internalType": "uint24"
1704
- },
1705
- {
1706
- "name": "tickSpacing",
1707
- "type": "int24",
1708
- "internalType": "int24"
1709
- },
1710
- {
1711
- "name": "hooks",
1712
- "type": "address",
1713
- "internalType": "contract IHooks"
1714
- }
1715
- ]
1716
- },
1717
- {
1718
- "name": "poolKeyHash",
1719
- "type": "bytes32",
1720
- "indexed": true,
1721
- "internalType": "bytes32"
1722
- },
1723
- {
1724
- "name": "params",
1725
- "type": "tuple",
1726
- "indexed": false,
1727
- "internalType": "struct SwapParams",
1728
- "components": [
1729
- {
1730
- "name": "zeroForOne",
1731
- "type": "bool",
1732
- "internalType": "bool"
1733
- },
1734
- {
1735
- "name": "amountSpecified",
1736
- "type": "int256",
1737
- "internalType": "int256"
1738
- },
1739
- {
1740
- "name": "sqrtPriceLimitX96",
1741
- "type": "uint160",
1742
- "internalType": "uint160"
1743
- }
1744
- ]
1745
- },
1746
- {
1747
- "name": "amount0",
1748
- "type": "int128",
1749
- "indexed": false,
1750
- "internalType": "int128"
1751
- },
1752
- {
1753
- "name": "amount1",
1754
- "type": "int128",
1755
- "indexed": false,
1756
- "internalType": "int128"
1757
- },
1758
- {
1759
- "name": "isCoinBuy",
1760
- "type": "bool",
1761
- "indexed": false,
1762
- "internalType": "bool"
1763
- },
1764
- {
1765
- "name": "hookData",
1766
- "type": "bytes",
1767
- "indexed": false,
1768
- "internalType": "bytes"
1769
- },
1770
- {
1771
- "name": "sqrtPriceX96",
1772
- "type": "uint160",
1773
- "indexed": false,
1774
- "internalType": "uint160"
1775
- }
1776
- ],
1777
- "anonymous": false
1778
- },
1779
- {
1780
- "type": "error",
1781
- "name": "CannotMintZeroLiquidity",
1782
- "inputs": []
1783
- },
1784
- {
1785
- "type": "error",
1786
- "name": "CoinVersionLookupCannotBeZeroAddress",
1787
- "inputs": []
1788
- },
1789
- {
1790
- "type": "error",
1791
- "name": "HookNotImplemented",
1792
- "inputs": []
1793
- },
1794
- {
1795
- "type": "error",
1796
- "name": "InvalidCallbackId",
1797
- "inputs": [
1798
- {
1799
- "name": "callbackId",
1800
- "type": "uint8",
1801
- "internalType": "uint8"
1802
- }
1803
- ]
1804
- },
1805
- {
1806
- "type": "error",
1807
- "name": "InvalidNewHook",
1808
- "inputs": [
1809
- {
1810
- "name": "newHook",
1811
- "type": "address",
1812
- "internalType": "address"
1813
- }
1814
- ]
1815
- },
1816
- {
1817
- "type": "error",
1818
- "name": "InvalidTickRangeMisordered",
1819
- "inputs": [
1820
- {
1821
- "name": "tickLower",
1822
- "type": "int24",
1823
- "internalType": "int24"
1824
- },
1825
- {
1826
- "name": "tickUpper",
1827
- "type": "int24",
1828
- "internalType": "int24"
1829
- }
1830
- ]
1831
- },
1832
- {
1833
- "type": "error",
1834
- "name": "NoCoinForHook",
1835
- "inputs": [
1836
- {
1837
- "name": "key",
1838
- "type": "tuple",
1839
- "internalType": "struct PoolKey",
1840
- "components": [
1841
- {
1842
- "name": "currency0",
1843
- "type": "address",
1844
- "internalType": "Currency"
1845
- },
1846
- {
1847
- "name": "currency1",
1848
- "type": "address",
1849
- "internalType": "Currency"
1850
- },
1851
- {
1852
- "name": "fee",
1853
- "type": "uint24",
1854
- "internalType": "uint24"
1855
- },
1856
- {
1857
- "name": "tickSpacing",
1858
- "type": "int24",
1859
- "internalType": "int24"
1860
- },
1861
- {
1862
- "name": "hooks",
1863
- "type": "address",
1864
- "internalType": "contract IHooks"
1865
- }
1866
- ]
1867
- }
1868
- ]
1869
- },
1870
- {
1871
- "type": "error",
1872
- "name": "NotACoin",
1873
- "inputs": [
1874
- {
1875
- "name": "coin",
1876
- "type": "address",
1877
- "internalType": "address"
1878
- }
1879
- ]
1880
- },
1881
- {
1882
- "type": "error",
1883
- "name": "NotPoolManager",
1884
- "inputs": []
1885
- },
1886
- {
1887
- "type": "error",
1888
- "name": "OnlyCoin",
1889
- "inputs": [
1890
- {
1891
- "name": "caller",
1892
- "type": "address",
1893
- "internalType": "address"
1894
- },
1895
- {
1896
- "name": "expectedCoin",
1897
- "type": "address",
1898
- "internalType": "address"
1899
- }
1900
- ]
1901
- },
1902
- {
1903
- "type": "error",
1904
- "name": "PathMustHaveAtLeastOneStep",
1905
- "inputs": []
1906
- },
1907
- {
1908
- "type": "error",
1909
- "name": "SafeCastOverflow",
1910
- "inputs": []
1911
- },
1912
- {
1913
- "type": "error",
1914
- "name": "TrustedMsgSenderLookupCannotBeZeroAddress",
1915
- "inputs": []
1916
- },
1917
- {
1918
- "type": "error",
1919
- "name": "UpgradeGateCannotBeZeroAddress",
1920
- "inputs": []
1921
- },
1922
- {
1923
- "type": "error",
1924
- "name": "UpgradePathNotRegistered",
1925
- "inputs": [
1926
- {
1927
- "name": "oldHook",
1928
- "type": "address",
1929
- "internalType": "address"
1930
- },
1931
- {
1932
- "name": "newHook",
1933
- "type": "address",
1934
- "internalType": "address"
1935
- }
1936
- ]
1937
- }
1938
- ]