@zoralabs/coins 0.7.1 → 1.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 (167) hide show
  1. package/.turbo/turbo-build.log +106 -84
  2. package/CHANGELOG.md +68 -0
  3. package/abis/BadImpl.json +15 -0
  4. package/abis/BalanceDeltaLibrary.json +15 -0
  5. package/abis/BaseCoin.json +1350 -0
  6. package/abis/BaseCoinDeployHook.json +78 -0
  7. package/abis/BaseHook.json +897 -0
  8. package/abis/BaseTest.json +60 -91
  9. package/abis/BeforeSwapDeltaLibrary.json +15 -0
  10. package/abis/BuySupplyWithSwapRouterHook.json +126 -0
  11. package/abis/Coin.json +214 -150
  12. package/abis/CoinConstants.json +65 -0
  13. package/abis/CoinDopplerMultiCurve.json +38 -0
  14. package/abis/CoinRewardsV4.json +54 -0
  15. package/abis/CoinTest.json +66 -111
  16. package/abis/CoinUniV4Test.json +1053 -0
  17. package/abis/CoinV4.json +1687 -0
  18. package/abis/CurrencyLibrary.json +25 -0
  19. package/abis/DeployHooks.json +9 -0
  20. package/abis/DeployScript.json +47 -0
  21. package/abis/DeployedCoinVersionLookup.json +21 -0
  22. package/abis/DeployedCoinVersionLookupTest.json +716 -0
  23. package/abis/DifferentNamespaceVersionLookup.json +39 -0
  24. package/abis/DopplerUniswapV3Test.json +62 -184
  25. package/abis/ERC20.json +310 -0
  26. package/abis/FactoryTest.json +98 -98
  27. package/abis/FakeHookNoInterface.json +21 -0
  28. package/abis/FeeEstimatorHook.json +1528 -0
  29. package/abis/Hooks.json +28 -0
  30. package/abis/HooksDeployment.json +23 -0
  31. package/abis/HooksTest.json +698 -0
  32. package/abis/IAllowanceTransfer.json +486 -0
  33. package/abis/ICoin.json +62 -69
  34. package/abis/ICoinDeployHook.json +31 -0
  35. package/abis/ICoinV3.json +879 -0
  36. package/abis/ICoinV4.json +915 -0
  37. package/abis/IContractMetadata.json +28 -0
  38. package/abis/IDeployedCoinVersionLookup.json +21 -0
  39. package/abis/IEIP712.json +15 -0
  40. package/abis/IEIP712_v4.json +15 -0
  41. package/abis/IERC20Minimal.json +172 -0
  42. package/abis/IERC6909Claims.json +288 -0
  43. package/abis/IERC721.json +36 -36
  44. package/abis/IERC721Permit_v4.json +88 -0
  45. package/abis/IExtsload.json +64 -0
  46. package/abis/IExttload.json +40 -0
  47. package/abis/IHasAfterCoinDeploy.json +31 -0
  48. package/abis/IHasContractName.json +15 -0
  49. package/abis/IHasPoolKey.json +42 -0
  50. package/abis/IHasRewardsRecipients.json +54 -0
  51. package/abis/IHasSwapPath.json +60 -0
  52. package/abis/IHooks.json +789 -0
  53. package/abis/IImmutableState.json +15 -0
  54. package/abis/IMsgSender.json +15 -0
  55. package/abis/IMulticall_v4.json +21 -0
  56. package/abis/INotifier.json +187 -0
  57. package/abis/IPermit2.json +865 -0
  58. package/abis/IPermit2Forwarder.json +138 -0
  59. package/abis/IPoolConfigEncoding.json +46 -0
  60. package/abis/IPoolInitializer_v4.json +53 -0
  61. package/abis/IPoolManager.json +1286 -0
  62. package/abis/IPositionManager.json +712 -0
  63. package/abis/IProtocolFees.json +174 -0
  64. package/abis/ISignatureTransfer.json +394 -0
  65. package/abis/ISubscriber.json +89 -0
  66. package/abis/ISwapPathRouter.json +92 -0
  67. package/abis/ISwapRouter.json +82 -0
  68. package/abis/IUniversalRouter.json +61 -0
  69. package/abis/IUnlockCallback.json +21 -0
  70. package/abis/IUnorderedNonce.json +44 -0
  71. package/abis/IV4Quoter.json +310 -0
  72. package/abis/IV4Router.json +47 -0
  73. package/abis/IZoraFactory.json +328 -4
  74. package/abis/IZoraV4CoinHook.json +427 -0
  75. package/abis/ImmutableState.json +36 -0
  76. package/abis/LPFeeLibrary.json +65 -0
  77. package/abis/MockERC20.json +21 -0
  78. package/abis/MultiOwnableTest.json +60 -91
  79. package/abis/{CoinConfigurationVersions.json → Position.json} +1 -1
  80. package/abis/PrintUpgradeCommand.json +9 -0
  81. package/abis/ProxyShim.json +24 -0
  82. package/abis/Simulate.json +0 -91
  83. package/abis/StateLibrary.json +80 -0
  84. package/abis/TestDeployedCoinVersionLookupImplementation.json +39 -0
  85. package/abis/TestV4Swap.json +9 -0
  86. package/abis/{CoinSetup.json → UniV3BuySell.json} +5 -0
  87. package/abis/UniV3Errors.json +32 -0
  88. package/abis/UpgradeCoinImpl.json +47 -0
  89. package/abis/UpgradeFactoryImpl.json +9 -0
  90. package/abis/UpgradesTest.json +671 -0
  91. package/abis/Vm.json +1482 -111
  92. package/abis/VmSafe.json +856 -32
  93. package/abis/ZoraFactoryImpl.json +450 -1
  94. package/abis/ZoraV4CoinHook.json +1439 -0
  95. package/addresses/8453.json +8 -3
  96. package/addresses/84532.json +8 -3
  97. package/dist/index.cjs +1998 -184
  98. package/dist/index.cjs.map +1 -1
  99. package/dist/index.js +1989 -178
  100. package/dist/index.js.map +1 -1
  101. package/dist/wagmiGenerated.d.ts +2852 -688
  102. package/dist/wagmiGenerated.d.ts.map +1 -1
  103. package/package/wagmiGenerated.ts +1992 -173
  104. package/package.json +7 -2
  105. package/remappings.txt +6 -1
  106. package/script/CoinsDeployerBase.sol +105 -10
  107. package/script/DeployDevFactory.s.sol +21 -0
  108. package/script/DeployHooks.s.sol +22 -0
  109. package/script/PrintUpgradeCommand.s.sol +13 -0
  110. package/script/Simulate.s.sol +4 -12
  111. package/script/TestBackingCoinSwap.s.sol +146 -0
  112. package/script/TestV4Swap.s.sol +136 -0
  113. package/script/UpgradeCoinImpl.sol +2 -2
  114. package/script/UpgradeFactoryImpl.s.sol +23 -0
  115. package/src/BaseCoin.sol +176 -0
  116. package/src/Coin.sol +93 -515
  117. package/src/CoinV4.sol +121 -0
  118. package/src/ZoraFactoryImpl.sol +257 -57
  119. package/src/hooks/ZoraV4CoinHook.sol +195 -0
  120. package/src/hooks/deployment/BaseCoinDeployHook.sol +62 -0
  121. package/src/hooks/deployment/BuySupplyWithSwapRouterHook.sol +80 -0
  122. package/src/interfaces/ICoin.sol +35 -39
  123. package/src/interfaces/ICoinDeployHook.sol +8 -0
  124. package/src/interfaces/ICoinV3.sol +71 -0
  125. package/src/interfaces/ICoinV4.sol +69 -0
  126. package/src/interfaces/IDeployedCoinVersionLookup.sol +11 -0
  127. package/src/interfaces/IMsgSender.sol +9 -0
  128. package/src/interfaces/IPoolConfigEncoding.sol +14 -0
  129. package/src/interfaces/ISwapPathRouter.sol +14 -0
  130. package/src/interfaces/ISwapRouter.sol +1 -35
  131. package/src/interfaces/IZoraFactory.sol +97 -7
  132. package/src/interfaces/IZoraV4CoinHook.sol +116 -0
  133. package/src/libs/CoinCommon.sol +15 -0
  134. package/src/libs/CoinConfigurationVersions.sol +116 -1
  135. package/src/{utils → libs}/CoinConstants.sol +11 -6
  136. package/src/libs/CoinDopplerMultiCurve.sol +134 -0
  137. package/src/libs/CoinDopplerUniV3.sol +19 -171
  138. package/src/libs/CoinRewards.sol +195 -0
  139. package/src/libs/CoinRewardsV4.sol +180 -0
  140. package/src/libs/CoinSetup.sol +40 -20
  141. package/src/libs/CoinSetupV3.sol +50 -0
  142. package/src/libs/DopplerMath.sol +156 -0
  143. package/src/libs/HooksDeployment.sol +84 -0
  144. package/src/libs/MarketConstants.sol +4 -0
  145. package/src/libs/PoolStateReader.sol +22 -0
  146. package/src/libs/UniV3BuySell.sol +231 -0
  147. package/src/libs/UniV3Errors.sol +11 -0
  148. package/src/libs/UniV4SwapHelper.sol +65 -0
  149. package/src/libs/UniV4SwapToCurrency.sol +109 -0
  150. package/src/libs/V4Liquidity.sol +129 -0
  151. package/src/types/PoolConfiguration.sol +15 -0
  152. package/src/utils/DeployedCoinVersionLookup.sol +52 -0
  153. package/src/version/ContractVersionBase.sol +1 -1
  154. package/test/Coin.t.sol +94 -101
  155. package/test/CoinDopplerUniV3.t.sol +35 -184
  156. package/test/CoinUniV4.t.sol +752 -0
  157. package/test/DeploymentHooks.t.sol +270 -0
  158. package/test/Factory.t.sol +84 -50
  159. package/test/MultiOwnable.t.sol +6 -3
  160. package/test/Upgrades.t.sol +68 -0
  161. package/test/mocks/MockERC20.sol +12 -0
  162. package/test/utils/BaseTest.sol +124 -59
  163. package/test/utils/DeployedCoinVersionLookup.t.sol +127 -0
  164. package/test/utils/FeeEstimatorHook.sol +84 -0
  165. package/test/utils/ProxyShim.sol +17 -0
  166. package/wagmi.config.ts +10 -9
  167. package/src/libs/CoinLegacy.sol +0 -48
package/abis/Coin.json CHANGED
@@ -3,32 +3,32 @@
3
3
  "type": "constructor",
4
4
  "inputs": [
5
5
  {
6
- "name": "_protocolRewardRecipient",
6
+ "name": "protocolRewardRecipient_",
7
7
  "type": "address",
8
8
  "internalType": "address"
9
9
  },
10
10
  {
11
- "name": "_protocolRewards",
11
+ "name": "protocolRewards_",
12
12
  "type": "address",
13
13
  "internalType": "address"
14
14
  },
15
15
  {
16
- "name": "_weth",
16
+ "name": "weth_",
17
17
  "type": "address",
18
18
  "internalType": "address"
19
19
  },
20
20
  {
21
- "name": "_v3Factory",
21
+ "name": "v3Factory_",
22
22
  "type": "address",
23
23
  "internalType": "address"
24
24
  },
25
25
  {
26
- "name": "_swapRouter",
26
+ "name": "swapRouter_",
27
27
  "type": "address",
28
28
  "internalType": "address"
29
29
  },
30
30
  {
31
- "name": "_airlock",
31
+ "name": "airlock_",
32
32
  "type": "address",
33
33
  "internalType": "address"
34
34
  }
@@ -52,97 +52,6 @@
52
52
  ],
53
53
  "stateMutability": "view"
54
54
  },
55
- {
56
- "type": "function",
57
- "name": "MAX_TOTAL_SUPPLY",
58
- "inputs": [],
59
- "outputs": [
60
- {
61
- "name": "",
62
- "type": "uint256",
63
- "internalType": "uint256"
64
- }
65
- ],
66
- "stateMutability": "view"
67
- },
68
- {
69
- "type": "function",
70
- "name": "MIN_ORDER_SIZE",
71
- "inputs": [],
72
- "outputs": [
73
- {
74
- "name": "",
75
- "type": "uint256",
76
- "internalType": "uint256"
77
- }
78
- ],
79
- "stateMutability": "view"
80
- },
81
- {
82
- "type": "function",
83
- "name": "PLATFORM_REFERRER_FEE_BPS",
84
- "inputs": [],
85
- "outputs": [
86
- {
87
- "name": "",
88
- "type": "uint256",
89
- "internalType": "uint256"
90
- }
91
- ],
92
- "stateMutability": "view"
93
- },
94
- {
95
- "type": "function",
96
- "name": "PROTOCOL_FEE_BPS",
97
- "inputs": [],
98
- "outputs": [
99
- {
100
- "name": "",
101
- "type": "uint256",
102
- "internalType": "uint256"
103
- }
104
- ],
105
- "stateMutability": "view"
106
- },
107
- {
108
- "type": "function",
109
- "name": "TOKEN_CREATOR_FEE_BPS",
110
- "inputs": [],
111
- "outputs": [
112
- {
113
- "name": "",
114
- "type": "uint256",
115
- "internalType": "uint256"
116
- }
117
- ],
118
- "stateMutability": "view"
119
- },
120
- {
121
- "type": "function",
122
- "name": "TOTAL_FEE_BPS",
123
- "inputs": [],
124
- "outputs": [
125
- {
126
- "name": "",
127
- "type": "uint256",
128
- "internalType": "uint256"
129
- }
130
- ],
131
- "stateMutability": "view"
132
- },
133
- {
134
- "type": "function",
135
- "name": "TRADE_REFERRER_FEE_BPS",
136
- "inputs": [],
137
- "outputs": [
138
- {
139
- "name": "",
140
- "type": "uint256",
141
- "internalType": "uint256"
142
- }
143
- ],
144
- "stateMutability": "view"
145
- },
146
55
  {
147
56
  "type": "function",
148
57
  "name": "WETH",
@@ -384,6 +293,19 @@
384
293
  ],
385
294
  "stateMutability": "view"
386
295
  },
296
+ {
297
+ "type": "function",
298
+ "name": "dopplerFeeRecipient",
299
+ "inputs": [],
300
+ "outputs": [
301
+ {
302
+ "name": "",
303
+ "type": "address",
304
+ "internalType": "address"
305
+ }
306
+ ],
307
+ "stateMutability": "view"
308
+ },
387
309
  {
388
310
  "type": "function",
389
311
  "name": "eip712Domain",
@@ -427,6 +349,61 @@
427
349
  ],
428
350
  "stateMutability": "view"
429
351
  },
352
+ {
353
+ "type": "function",
354
+ "name": "getPoolConfiguration",
355
+ "inputs": [],
356
+ "outputs": [
357
+ {
358
+ "name": "",
359
+ "type": "tuple",
360
+ "internalType": "struct PoolConfiguration",
361
+ "components": [
362
+ {
363
+ "name": "version",
364
+ "type": "uint8",
365
+ "internalType": "uint8"
366
+ },
367
+ {
368
+ "name": "numPositions",
369
+ "type": "uint16",
370
+ "internalType": "uint16"
371
+ },
372
+ {
373
+ "name": "fee",
374
+ "type": "uint24",
375
+ "internalType": "uint24"
376
+ },
377
+ {
378
+ "name": "tickSpacing",
379
+ "type": "int24",
380
+ "internalType": "int24"
381
+ },
382
+ {
383
+ "name": "numDiscoveryPositions",
384
+ "type": "uint16[]",
385
+ "internalType": "uint16[]"
386
+ },
387
+ {
388
+ "name": "tickLower",
389
+ "type": "int24[]",
390
+ "internalType": "int24[]"
391
+ },
392
+ {
393
+ "name": "tickUpper",
394
+ "type": "int24[]",
395
+ "internalType": "int24[]"
396
+ },
397
+ {
398
+ "name": "maxDiscoverySupplyShare",
399
+ "type": "uint256[]",
400
+ "internalType": "uint256[]"
401
+ }
402
+ ]
403
+ }
404
+ ],
405
+ "stateMutability": "view"
406
+ },
430
407
  {
431
408
  "type": "function",
432
409
  "name": "initialize",
@@ -457,14 +434,88 @@
457
434
  "internalType": "string"
458
435
  },
459
436
  {
460
- "name": "poolConfig_",
461
- "type": "bytes",
462
- "internalType": "bytes"
437
+ "name": "platformReferrer_",
438
+ "type": "address",
439
+ "internalType": "address"
463
440
  },
464
441
  {
465
- "name": "platformReferrer_",
442
+ "name": "currency_",
466
443
  "type": "address",
467
444
  "internalType": "address"
445
+ },
446
+ {
447
+ "name": "poolAddress_",
448
+ "type": "address",
449
+ "internalType": "address"
450
+ },
451
+ {
452
+ "name": "poolConfiguration_",
453
+ "type": "tuple",
454
+ "internalType": "struct PoolConfiguration",
455
+ "components": [
456
+ {
457
+ "name": "version",
458
+ "type": "uint8",
459
+ "internalType": "uint8"
460
+ },
461
+ {
462
+ "name": "numPositions",
463
+ "type": "uint16",
464
+ "internalType": "uint16"
465
+ },
466
+ {
467
+ "name": "fee",
468
+ "type": "uint24",
469
+ "internalType": "uint24"
470
+ },
471
+ {
472
+ "name": "tickSpacing",
473
+ "type": "int24",
474
+ "internalType": "int24"
475
+ },
476
+ {
477
+ "name": "numDiscoveryPositions",
478
+ "type": "uint16[]",
479
+ "internalType": "uint16[]"
480
+ },
481
+ {
482
+ "name": "tickLower",
483
+ "type": "int24[]",
484
+ "internalType": "int24[]"
485
+ },
486
+ {
487
+ "name": "tickUpper",
488
+ "type": "int24[]",
489
+ "internalType": "int24[]"
490
+ },
491
+ {
492
+ "name": "maxDiscoverySupplyShare",
493
+ "type": "uint256[]",
494
+ "internalType": "uint256[]"
495
+ }
496
+ ]
497
+ },
498
+ {
499
+ "name": "positions_",
500
+ "type": "tuple[]",
501
+ "internalType": "struct LpPosition[]",
502
+ "components": [
503
+ {
504
+ "name": "tickLower",
505
+ "type": "int24",
506
+ "internalType": "int24"
507
+ },
508
+ {
509
+ "name": "tickUpper",
510
+ "type": "int24",
511
+ "internalType": "int24"
512
+ },
513
+ {
514
+ "name": "liquidity",
515
+ "type": "uint128",
516
+ "internalType": "uint128"
517
+ }
518
+ ]
468
519
  }
469
520
  ],
470
521
  "outputs": [],
@@ -489,6 +540,32 @@
489
540
  ],
490
541
  "stateMutability": "view"
491
542
  },
543
+ {
544
+ "type": "function",
545
+ "name": "market",
546
+ "inputs": [],
547
+ "outputs": [
548
+ {
549
+ "name": "",
550
+ "type": "bytes",
551
+ "internalType": "bytes"
552
+ }
553
+ ],
554
+ "stateMutability": "view"
555
+ },
556
+ {
557
+ "type": "function",
558
+ "name": "marketVersion",
559
+ "inputs": [],
560
+ "outputs": [
561
+ {
562
+ "name": "",
563
+ "type": "uint8",
564
+ "internalType": "uint8"
565
+ }
566
+ ],
567
+ "stateMutability": "view"
568
+ },
492
569
  {
493
570
  "type": "function",
494
571
  "name": "name",
@@ -626,44 +703,35 @@
626
703
  "type": "uint8",
627
704
  "internalType": "uint8"
628
705
  },
629
- {
630
- "name": "tickLower",
631
- "type": "int24",
632
- "internalType": "int24"
633
- },
634
- {
635
- "name": "tickUpper",
636
- "type": "int24",
637
- "internalType": "int24"
638
- },
639
706
  {
640
707
  "name": "numPositions",
641
708
  "type": "uint16",
642
709
  "internalType": "uint16"
643
710
  },
644
711
  {
645
- "name": "maxDiscoverySupplyShare",
646
- "type": "uint256",
647
- "internalType": "uint256"
712
+ "name": "fee",
713
+ "type": "uint24",
714
+ "internalType": "uint24"
715
+ },
716
+ {
717
+ "name": "tickSpacing",
718
+ "type": "int24",
719
+ "internalType": "int24"
648
720
  }
649
721
  ],
650
722
  "stateMutability": "view"
651
723
  },
652
724
  {
653
725
  "type": "function",
654
- "name": "poolState",
655
- "inputs": [],
656
- "outputs": [
657
- {
658
- "name": "asset",
659
- "type": "address",
660
- "internalType": "address"
661
- },
726
+ "name": "positions",
727
+ "inputs": [
662
728
  {
663
- "name": "numeraire",
664
- "type": "address",
665
- "internalType": "address"
666
- },
729
+ "name": "",
730
+ "type": "uint256",
731
+ "internalType": "uint256"
732
+ }
733
+ ],
734
+ "outputs": [
667
735
  {
668
736
  "name": "tickLower",
669
737
  "type": "int24",
@@ -675,29 +743,9 @@
675
743
  "internalType": "int24"
676
744
  },
677
745
  {
678
- "name": "numPositions",
679
- "type": "uint16",
680
- "internalType": "uint16"
681
- },
682
- {
683
- "name": "isInitialized",
684
- "type": "bool",
685
- "internalType": "bool"
686
- },
687
- {
688
- "name": "isExited",
689
- "type": "bool",
690
- "internalType": "bool"
691
- },
692
- {
693
- "name": "maxShareToBeSold",
694
- "type": "uint256",
695
- "internalType": "uint256"
696
- },
697
- {
698
- "name": "totalTokensOnBondingCurve",
699
- "type": "uint256",
700
- "internalType": "uint256"
746
+ "name": "liquidity",
747
+ "type": "uint128",
748
+ "internalType": "uint128"
701
749
  }
702
750
  ],
703
751
  "stateMutability": "view"
@@ -1443,6 +1491,11 @@
1443
1491
  "name": "AddressZero",
1444
1492
  "inputs": []
1445
1493
  },
1494
+ {
1495
+ "type": "error",
1496
+ "name": "AddressZero",
1497
+ "inputs": []
1498
+ },
1446
1499
  {
1447
1500
  "type": "error",
1448
1501
  "name": "AlreadyOwner",
@@ -1759,7 +1812,18 @@
1759
1812
  {
1760
1813
  "type": "error",
1761
1814
  "name": "OnlyPool",
1762
- "inputs": []
1815
+ "inputs": [
1816
+ {
1817
+ "name": "sender",
1818
+ "type": "address",
1819
+ "internalType": "address"
1820
+ },
1821
+ {
1822
+ "name": "pool",
1823
+ "type": "address",
1824
+ "internalType": "address"
1825
+ }
1826
+ ]
1763
1827
  },
1764
1828
  {
1765
1829
  "type": "error",
@@ -1,4 +1,43 @@
1
1
  [
2
+ {
3
+ "type": "function",
4
+ "name": "CREATOR_LAUNCH_REWARD",
5
+ "inputs": [],
6
+ "outputs": [
7
+ {
8
+ "name": "",
9
+ "type": "uint256",
10
+ "internalType": "uint256"
11
+ }
12
+ ],
13
+ "stateMutability": "view"
14
+ },
15
+ {
16
+ "type": "function",
17
+ "name": "CREATOR_MARKET_REWARD_BPS",
18
+ "inputs": [],
19
+ "outputs": [
20
+ {
21
+ "name": "",
22
+ "type": "uint256",
23
+ "internalType": "uint256"
24
+ }
25
+ ],
26
+ "stateMutability": "view"
27
+ },
28
+ {
29
+ "type": "function",
30
+ "name": "DOPPLER_MARKET_REWARD_BPS",
31
+ "inputs": [],
32
+ "outputs": [
33
+ {
34
+ "name": "",
35
+ "type": "uint256",
36
+ "internalType": "uint256"
37
+ }
38
+ ],
39
+ "stateMutability": "view"
40
+ },
2
41
  {
3
42
  "type": "function",
4
43
  "name": "MAX_TOTAL_SUPPLY",
@@ -38,6 +77,32 @@
38
77
  ],
39
78
  "stateMutability": "view"
40
79
  },
80
+ {
81
+ "type": "function",
82
+ "name": "PLATFORM_REFERRER_MARKET_REWARD_BPS",
83
+ "inputs": [],
84
+ "outputs": [
85
+ {
86
+ "name": "",
87
+ "type": "uint256",
88
+ "internalType": "uint256"
89
+ }
90
+ ],
91
+ "stateMutability": "view"
92
+ },
93
+ {
94
+ "type": "function",
95
+ "name": "POOL_LAUNCH_SUPPLY",
96
+ "inputs": [],
97
+ "outputs": [
98
+ {
99
+ "name": "",
100
+ "type": "uint256",
101
+ "internalType": "uint256"
102
+ }
103
+ ],
104
+ "stateMutability": "view"
105
+ },
41
106
  {
42
107
  "type": "function",
43
108
  "name": "PROTOCOL_FEE_BPS",
@@ -0,0 +1,38 @@
1
+ [
2
+ {
3
+ "type": "error",
4
+ "name": "ArrayLengthMismatch",
5
+ "inputs": []
6
+ },
7
+ {
8
+ "type": "error",
9
+ "name": "ConfigTickLowerMustBeLessThanTickUpper",
10
+ "inputs": []
11
+ },
12
+ {
13
+ "type": "error",
14
+ "name": "InvalidTickRangeMisordered",
15
+ "inputs": [
16
+ {
17
+ "name": "tickLower",
18
+ "type": "int24",
19
+ "internalType": "int24"
20
+ },
21
+ {
22
+ "name": "tickUpper",
23
+ "type": "int24",
24
+ "internalType": "int24"
25
+ }
26
+ ]
27
+ },
28
+ {
29
+ "type": "error",
30
+ "name": "ZeroDiscoveryPositions",
31
+ "inputs": []
32
+ },
33
+ {
34
+ "type": "error",
35
+ "name": "ZeroDiscoverySupplyShare",
36
+ "inputs": []
37
+ }
38
+ ]
@@ -0,0 +1,54 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "CREATE_REFERRAL_REWARD_BPS",
5
+ "inputs": [],
6
+ "outputs": [
7
+ {
8
+ "name": "",
9
+ "type": "uint256",
10
+ "internalType": "uint256"
11
+ }
12
+ ],
13
+ "stateMutability": "view"
14
+ },
15
+ {
16
+ "type": "function",
17
+ "name": "CREATOR_REWARD_BPS",
18
+ "inputs": [],
19
+ "outputs": [
20
+ {
21
+ "name": "",
22
+ "type": "uint256",
23
+ "internalType": "uint256"
24
+ }
25
+ ],
26
+ "stateMutability": "view"
27
+ },
28
+ {
29
+ "type": "function",
30
+ "name": "DOPPLER_REWARD_BPS",
31
+ "inputs": [],
32
+ "outputs": [
33
+ {
34
+ "name": "",
35
+ "type": "uint256",
36
+ "internalType": "uint256"
37
+ }
38
+ ],
39
+ "stateMutability": "view"
40
+ },
41
+ {
42
+ "type": "function",
43
+ "name": "TRADE_REFERRAL_REWARD_BPS",
44
+ "inputs": [],
45
+ "outputs": [
46
+ {
47
+ "name": "",
48
+ "type": "uint256",
49
+ "internalType": "uint256"
50
+ }
51
+ ],
52
+ "stateMutability": "view"
53
+ }
54
+ ]