@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
@@ -1834,30 +1834,10 @@ export declare const buySupplyWithV4SwapHookABI: readonly [{
1834
1834
  readonly indexed: false;
1835
1835
  }];
1836
1836
  readonly name: "BuyInitialSupply";
1837
- }, {
1838
- readonly type: "error";
1839
- readonly inputs: readonly [{
1840
- readonly name: "target";
1841
- readonly internalType: "address";
1842
- readonly type: "address";
1843
- }];
1844
- readonly name: "AddressEmptyCode";
1845
- }, {
1846
- readonly type: "error";
1847
- readonly inputs: readonly [{
1848
- readonly name: "account";
1849
- readonly internalType: "address";
1850
- readonly type: "address";
1851
- }];
1852
- readonly name: "AddressInsufficientBalance";
1853
1837
  }, {
1854
1838
  readonly type: "error";
1855
1839
  readonly inputs: readonly [];
1856
1840
  readonly name: "AddressZero";
1857
- }, {
1858
- readonly type: "error";
1859
- readonly inputs: readonly [];
1860
- readonly name: "FailedInnerCall";
1861
1841
  }, {
1862
1842
  readonly type: "error";
1863
1843
  readonly inputs: readonly [];
@@ -1894,10 +1874,6 @@ export declare const buySupplyWithV4SwapHookABI: readonly [{
1894
1874
  readonly type: "address";
1895
1875
  }];
1896
1876
  readonly name: "SafeERC20FailedOperation";
1897
- }, {
1898
- readonly type: "error";
1899
- readonly inputs: readonly [];
1900
- readonly name: "V3RouteCannotStartWithInputCurrency";
1901
1877
  }, {
1902
1878
  readonly type: "error";
1903
1879
  readonly inputs: readonly [];
@@ -5852,53 +5828,6 @@ export declare const iUniswapV3PoolABI: readonly [{
5852
5828
  }];
5853
5829
  readonly stateMutability: "nonpayable";
5854
5830
  }];
5855
- export declare const iUniversalRouterABI: readonly [{
5856
- readonly type: "function";
5857
- readonly inputs: readonly [{
5858
- readonly name: "commands";
5859
- readonly internalType: "bytes";
5860
- readonly type: "bytes";
5861
- }, {
5862
- readonly name: "inputs";
5863
- readonly internalType: "bytes[]";
5864
- readonly type: "bytes[]";
5865
- }, {
5866
- readonly name: "deadline";
5867
- readonly internalType: "uint256";
5868
- readonly type: "uint256";
5869
- }];
5870
- readonly name: "execute";
5871
- readonly outputs: readonly [];
5872
- readonly stateMutability: "payable";
5873
- }, {
5874
- readonly type: "error";
5875
- readonly inputs: readonly [];
5876
- readonly name: "ETHNotAccepted";
5877
- }, {
5878
- readonly type: "error";
5879
- readonly inputs: readonly [{
5880
- readonly name: "commandIndex";
5881
- readonly internalType: "uint256";
5882
- readonly type: "uint256";
5883
- }, {
5884
- readonly name: "message";
5885
- readonly internalType: "bytes";
5886
- readonly type: "bytes";
5887
- }];
5888
- readonly name: "ExecutionFailed";
5889
- }, {
5890
- readonly type: "error";
5891
- readonly inputs: readonly [];
5892
- readonly name: "InvalidEthSender";
5893
- }, {
5894
- readonly type: "error";
5895
- readonly inputs: readonly [];
5896
- readonly name: "LengthMismatch";
5897
- }, {
5898
- readonly type: "error";
5899
- readonly inputs: readonly [];
5900
- readonly name: "TransactionDeadlinePassed";
5901
- }];
5902
5831
  export declare const zoraFactoryImplABI: readonly [{
5903
5832
  readonly type: "constructor";
5904
5833
  readonly inputs: readonly [{
@@ -6726,10 +6655,6 @@ export declare const zoraFactoryImplABI: readonly [{
6726
6655
  readonly type: "error";
6727
6656
  readonly inputs: readonly [];
6728
6657
  readonly name: "Deprecated";
6729
- }, {
6730
- readonly type: "error";
6731
- readonly inputs: readonly [];
6732
- readonly name: "ERC1167FailedCreateClone";
6733
6658
  }, {
6734
6659
  readonly type: "error";
6735
6660
  readonly inputs: readonly [{
@@ -6749,7 +6674,23 @@ export declare const zoraFactoryImplABI: readonly [{
6749
6674
  }, {
6750
6675
  readonly type: "error";
6751
6676
  readonly inputs: readonly [];
6752
- readonly name: "FailedInnerCall";
6677
+ readonly name: "FailedCall";
6678
+ }, {
6679
+ readonly type: "error";
6680
+ readonly inputs: readonly [];
6681
+ readonly name: "FailedDeployment";
6682
+ }, {
6683
+ readonly type: "error";
6684
+ readonly inputs: readonly [{
6685
+ readonly name: "balance";
6686
+ readonly internalType: "uint256";
6687
+ readonly type: "uint256";
6688
+ }, {
6689
+ readonly name: "needed";
6690
+ readonly internalType: "uint256";
6691
+ readonly type: "uint256";
6692
+ }];
6693
+ readonly name: "InsufficientBalance";
6753
6694
  }, {
6754
6695
  readonly type: "error";
6755
6696
  readonly inputs: readonly [];
@@ -6851,4 +6792,1446 @@ export declare const zoraFactoryImplABI: readonly [{
6851
6792
  readonly inputs: readonly [];
6852
6793
  readonly name: "ZeroDiscoverySupplyShare";
6853
6794
  }];
6795
+ export declare const zoraV4CoinHookABI: readonly [{
6796
+ readonly type: "constructor";
6797
+ readonly inputs: readonly [{
6798
+ readonly name: "poolManager_";
6799
+ readonly internalType: "contract IPoolManager";
6800
+ readonly type: "address";
6801
+ }, {
6802
+ readonly name: "coinVersionLookup_";
6803
+ readonly internalType: "contract IDeployedCoinVersionLookup";
6804
+ readonly type: "address";
6805
+ }, {
6806
+ readonly name: "trustedMsgSenderLookup_";
6807
+ readonly internalType: "contract ITrustedMsgSenderProviderLookup";
6808
+ readonly type: "address";
6809
+ }, {
6810
+ readonly name: "upgradeGate_";
6811
+ readonly internalType: "contract IHooksUpgradeGate";
6812
+ readonly type: "address";
6813
+ }, {
6814
+ readonly name: "zoraLimitOrderBook_";
6815
+ readonly internalType: "contract IZoraLimitOrderBookCoinsInterface";
6816
+ readonly type: "address";
6817
+ }, {
6818
+ readonly name: "zoraHookRegistry_";
6819
+ readonly internalType: "contract IZoraHookRegistry";
6820
+ readonly type: "address";
6821
+ }];
6822
+ readonly stateMutability: "nonpayable";
6823
+ }, {
6824
+ readonly type: "receive";
6825
+ readonly stateMutability: "payable";
6826
+ }, {
6827
+ readonly type: "function";
6828
+ readonly inputs: readonly [{
6829
+ readonly name: "sender";
6830
+ readonly internalType: "address";
6831
+ readonly type: "address";
6832
+ }, {
6833
+ readonly name: "key";
6834
+ readonly internalType: "struct PoolKey";
6835
+ readonly type: "tuple";
6836
+ readonly components: readonly [{
6837
+ readonly name: "currency0";
6838
+ readonly internalType: "Currency";
6839
+ readonly type: "address";
6840
+ }, {
6841
+ readonly name: "currency1";
6842
+ readonly internalType: "Currency";
6843
+ readonly type: "address";
6844
+ }, {
6845
+ readonly name: "fee";
6846
+ readonly internalType: "uint24";
6847
+ readonly type: "uint24";
6848
+ }, {
6849
+ readonly name: "tickSpacing";
6850
+ readonly internalType: "int24";
6851
+ readonly type: "int24";
6852
+ }, {
6853
+ readonly name: "hooks";
6854
+ readonly internalType: "contract IHooks";
6855
+ readonly type: "address";
6856
+ }];
6857
+ }, {
6858
+ readonly name: "params";
6859
+ readonly internalType: "struct ModifyLiquidityParams";
6860
+ readonly type: "tuple";
6861
+ readonly components: readonly [{
6862
+ readonly name: "tickLower";
6863
+ readonly internalType: "int24";
6864
+ readonly type: "int24";
6865
+ }, {
6866
+ readonly name: "tickUpper";
6867
+ readonly internalType: "int24";
6868
+ readonly type: "int24";
6869
+ }, {
6870
+ readonly name: "liquidityDelta";
6871
+ readonly internalType: "int256";
6872
+ readonly type: "int256";
6873
+ }, {
6874
+ readonly name: "salt";
6875
+ readonly internalType: "bytes32";
6876
+ readonly type: "bytes32";
6877
+ }];
6878
+ }, {
6879
+ readonly name: "delta";
6880
+ readonly internalType: "BalanceDelta";
6881
+ readonly type: "int256";
6882
+ }, {
6883
+ readonly name: "feesAccrued";
6884
+ readonly internalType: "BalanceDelta";
6885
+ readonly type: "int256";
6886
+ }, {
6887
+ readonly name: "hookData";
6888
+ readonly internalType: "bytes";
6889
+ readonly type: "bytes";
6890
+ }];
6891
+ readonly name: "afterAddLiquidity";
6892
+ readonly outputs: readonly [{
6893
+ readonly name: "";
6894
+ readonly internalType: "bytes4";
6895
+ readonly type: "bytes4";
6896
+ }, {
6897
+ readonly name: "";
6898
+ readonly internalType: "BalanceDelta";
6899
+ readonly type: "int256";
6900
+ }];
6901
+ readonly stateMutability: "nonpayable";
6902
+ }, {
6903
+ readonly type: "function";
6904
+ readonly inputs: readonly [{
6905
+ readonly name: "sender";
6906
+ readonly internalType: "address";
6907
+ readonly type: "address";
6908
+ }, {
6909
+ readonly name: "key";
6910
+ readonly internalType: "struct PoolKey";
6911
+ readonly type: "tuple";
6912
+ readonly components: readonly [{
6913
+ readonly name: "currency0";
6914
+ readonly internalType: "Currency";
6915
+ readonly type: "address";
6916
+ }, {
6917
+ readonly name: "currency1";
6918
+ readonly internalType: "Currency";
6919
+ readonly type: "address";
6920
+ }, {
6921
+ readonly name: "fee";
6922
+ readonly internalType: "uint24";
6923
+ readonly type: "uint24";
6924
+ }, {
6925
+ readonly name: "tickSpacing";
6926
+ readonly internalType: "int24";
6927
+ readonly type: "int24";
6928
+ }, {
6929
+ readonly name: "hooks";
6930
+ readonly internalType: "contract IHooks";
6931
+ readonly type: "address";
6932
+ }];
6933
+ }, {
6934
+ readonly name: "amount0";
6935
+ readonly internalType: "uint256";
6936
+ readonly type: "uint256";
6937
+ }, {
6938
+ readonly name: "amount1";
6939
+ readonly internalType: "uint256";
6940
+ readonly type: "uint256";
6941
+ }, {
6942
+ readonly name: "hookData";
6943
+ readonly internalType: "bytes";
6944
+ readonly type: "bytes";
6945
+ }];
6946
+ readonly name: "afterDonate";
6947
+ readonly outputs: readonly [{
6948
+ readonly name: "";
6949
+ readonly internalType: "bytes4";
6950
+ readonly type: "bytes4";
6951
+ }];
6952
+ readonly stateMutability: "nonpayable";
6953
+ }, {
6954
+ readonly type: "function";
6955
+ readonly inputs: readonly [{
6956
+ readonly name: "sender";
6957
+ readonly internalType: "address";
6958
+ readonly type: "address";
6959
+ }, {
6960
+ readonly name: "key";
6961
+ readonly internalType: "struct PoolKey";
6962
+ readonly type: "tuple";
6963
+ readonly components: readonly [{
6964
+ readonly name: "currency0";
6965
+ readonly internalType: "Currency";
6966
+ readonly type: "address";
6967
+ }, {
6968
+ readonly name: "currency1";
6969
+ readonly internalType: "Currency";
6970
+ readonly type: "address";
6971
+ }, {
6972
+ readonly name: "fee";
6973
+ readonly internalType: "uint24";
6974
+ readonly type: "uint24";
6975
+ }, {
6976
+ readonly name: "tickSpacing";
6977
+ readonly internalType: "int24";
6978
+ readonly type: "int24";
6979
+ }, {
6980
+ readonly name: "hooks";
6981
+ readonly internalType: "contract IHooks";
6982
+ readonly type: "address";
6983
+ }];
6984
+ }, {
6985
+ readonly name: "sqrtPriceX96";
6986
+ readonly internalType: "uint160";
6987
+ readonly type: "uint160";
6988
+ }, {
6989
+ readonly name: "tick";
6990
+ readonly internalType: "int24";
6991
+ readonly type: "int24";
6992
+ }];
6993
+ readonly name: "afterInitialize";
6994
+ readonly outputs: readonly [{
6995
+ readonly name: "";
6996
+ readonly internalType: "bytes4";
6997
+ readonly type: "bytes4";
6998
+ }];
6999
+ readonly stateMutability: "nonpayable";
7000
+ }, {
7001
+ readonly type: "function";
7002
+ readonly inputs: readonly [{
7003
+ readonly name: "sender";
7004
+ readonly internalType: "address";
7005
+ readonly type: "address";
7006
+ }, {
7007
+ readonly name: "key";
7008
+ readonly internalType: "struct PoolKey";
7009
+ readonly type: "tuple";
7010
+ readonly components: readonly [{
7011
+ readonly name: "currency0";
7012
+ readonly internalType: "Currency";
7013
+ readonly type: "address";
7014
+ }, {
7015
+ readonly name: "currency1";
7016
+ readonly internalType: "Currency";
7017
+ readonly type: "address";
7018
+ }, {
7019
+ readonly name: "fee";
7020
+ readonly internalType: "uint24";
7021
+ readonly type: "uint24";
7022
+ }, {
7023
+ readonly name: "tickSpacing";
7024
+ readonly internalType: "int24";
7025
+ readonly type: "int24";
7026
+ }, {
7027
+ readonly name: "hooks";
7028
+ readonly internalType: "contract IHooks";
7029
+ readonly type: "address";
7030
+ }];
7031
+ }, {
7032
+ readonly name: "params";
7033
+ readonly internalType: "struct ModifyLiquidityParams";
7034
+ readonly type: "tuple";
7035
+ readonly components: readonly [{
7036
+ readonly name: "tickLower";
7037
+ readonly internalType: "int24";
7038
+ readonly type: "int24";
7039
+ }, {
7040
+ readonly name: "tickUpper";
7041
+ readonly internalType: "int24";
7042
+ readonly type: "int24";
7043
+ }, {
7044
+ readonly name: "liquidityDelta";
7045
+ readonly internalType: "int256";
7046
+ readonly type: "int256";
7047
+ }, {
7048
+ readonly name: "salt";
7049
+ readonly internalType: "bytes32";
7050
+ readonly type: "bytes32";
7051
+ }];
7052
+ }, {
7053
+ readonly name: "delta";
7054
+ readonly internalType: "BalanceDelta";
7055
+ readonly type: "int256";
7056
+ }, {
7057
+ readonly name: "feesAccrued";
7058
+ readonly internalType: "BalanceDelta";
7059
+ readonly type: "int256";
7060
+ }, {
7061
+ readonly name: "hookData";
7062
+ readonly internalType: "bytes";
7063
+ readonly type: "bytes";
7064
+ }];
7065
+ readonly name: "afterRemoveLiquidity";
7066
+ readonly outputs: readonly [{
7067
+ readonly name: "";
7068
+ readonly internalType: "bytes4";
7069
+ readonly type: "bytes4";
7070
+ }, {
7071
+ readonly name: "";
7072
+ readonly internalType: "BalanceDelta";
7073
+ readonly type: "int256";
7074
+ }];
7075
+ readonly stateMutability: "nonpayable";
7076
+ }, {
7077
+ readonly type: "function";
7078
+ readonly inputs: readonly [{
7079
+ readonly name: "sender";
7080
+ readonly internalType: "address";
7081
+ readonly type: "address";
7082
+ }, {
7083
+ readonly name: "key";
7084
+ readonly internalType: "struct PoolKey";
7085
+ readonly type: "tuple";
7086
+ readonly components: readonly [{
7087
+ readonly name: "currency0";
7088
+ readonly internalType: "Currency";
7089
+ readonly type: "address";
7090
+ }, {
7091
+ readonly name: "currency1";
7092
+ readonly internalType: "Currency";
7093
+ readonly type: "address";
7094
+ }, {
7095
+ readonly name: "fee";
7096
+ readonly internalType: "uint24";
7097
+ readonly type: "uint24";
7098
+ }, {
7099
+ readonly name: "tickSpacing";
7100
+ readonly internalType: "int24";
7101
+ readonly type: "int24";
7102
+ }, {
7103
+ readonly name: "hooks";
7104
+ readonly internalType: "contract IHooks";
7105
+ readonly type: "address";
7106
+ }];
7107
+ }, {
7108
+ readonly name: "params";
7109
+ readonly internalType: "struct SwapParams";
7110
+ readonly type: "tuple";
7111
+ readonly components: readonly [{
7112
+ readonly name: "zeroForOne";
7113
+ readonly internalType: "bool";
7114
+ readonly type: "bool";
7115
+ }, {
7116
+ readonly name: "amountSpecified";
7117
+ readonly internalType: "int256";
7118
+ readonly type: "int256";
7119
+ }, {
7120
+ readonly name: "sqrtPriceLimitX96";
7121
+ readonly internalType: "uint160";
7122
+ readonly type: "uint160";
7123
+ }];
7124
+ }, {
7125
+ readonly name: "delta";
7126
+ readonly internalType: "BalanceDelta";
7127
+ readonly type: "int256";
7128
+ }, {
7129
+ readonly name: "hookData";
7130
+ readonly internalType: "bytes";
7131
+ readonly type: "bytes";
7132
+ }];
7133
+ readonly name: "afterSwap";
7134
+ readonly outputs: readonly [{
7135
+ readonly name: "";
7136
+ readonly internalType: "bytes4";
7137
+ readonly type: "bytes4";
7138
+ }, {
7139
+ readonly name: "";
7140
+ readonly internalType: "int128";
7141
+ readonly type: "int128";
7142
+ }];
7143
+ readonly stateMutability: "nonpayable";
7144
+ }, {
7145
+ readonly type: "function";
7146
+ readonly inputs: readonly [{
7147
+ readonly name: "sender";
7148
+ readonly internalType: "address";
7149
+ readonly type: "address";
7150
+ }, {
7151
+ readonly name: "key";
7152
+ readonly internalType: "struct PoolKey";
7153
+ readonly type: "tuple";
7154
+ readonly components: readonly [{
7155
+ readonly name: "currency0";
7156
+ readonly internalType: "Currency";
7157
+ readonly type: "address";
7158
+ }, {
7159
+ readonly name: "currency1";
7160
+ readonly internalType: "Currency";
7161
+ readonly type: "address";
7162
+ }, {
7163
+ readonly name: "fee";
7164
+ readonly internalType: "uint24";
7165
+ readonly type: "uint24";
7166
+ }, {
7167
+ readonly name: "tickSpacing";
7168
+ readonly internalType: "int24";
7169
+ readonly type: "int24";
7170
+ }, {
7171
+ readonly name: "hooks";
7172
+ readonly internalType: "contract IHooks";
7173
+ readonly type: "address";
7174
+ }];
7175
+ }, {
7176
+ readonly name: "params";
7177
+ readonly internalType: "struct ModifyLiquidityParams";
7178
+ readonly type: "tuple";
7179
+ readonly components: readonly [{
7180
+ readonly name: "tickLower";
7181
+ readonly internalType: "int24";
7182
+ readonly type: "int24";
7183
+ }, {
7184
+ readonly name: "tickUpper";
7185
+ readonly internalType: "int24";
7186
+ readonly type: "int24";
7187
+ }, {
7188
+ readonly name: "liquidityDelta";
7189
+ readonly internalType: "int256";
7190
+ readonly type: "int256";
7191
+ }, {
7192
+ readonly name: "salt";
7193
+ readonly internalType: "bytes32";
7194
+ readonly type: "bytes32";
7195
+ }];
7196
+ }, {
7197
+ readonly name: "hookData";
7198
+ readonly internalType: "bytes";
7199
+ readonly type: "bytes";
7200
+ }];
7201
+ readonly name: "beforeAddLiquidity";
7202
+ readonly outputs: readonly [{
7203
+ readonly name: "";
7204
+ readonly internalType: "bytes4";
7205
+ readonly type: "bytes4";
7206
+ }];
7207
+ readonly stateMutability: "nonpayable";
7208
+ }, {
7209
+ readonly type: "function";
7210
+ readonly inputs: readonly [{
7211
+ readonly name: "sender";
7212
+ readonly internalType: "address";
7213
+ readonly type: "address";
7214
+ }, {
7215
+ readonly name: "key";
7216
+ readonly internalType: "struct PoolKey";
7217
+ readonly type: "tuple";
7218
+ readonly components: readonly [{
7219
+ readonly name: "currency0";
7220
+ readonly internalType: "Currency";
7221
+ readonly type: "address";
7222
+ }, {
7223
+ readonly name: "currency1";
7224
+ readonly internalType: "Currency";
7225
+ readonly type: "address";
7226
+ }, {
7227
+ readonly name: "fee";
7228
+ readonly internalType: "uint24";
7229
+ readonly type: "uint24";
7230
+ }, {
7231
+ readonly name: "tickSpacing";
7232
+ readonly internalType: "int24";
7233
+ readonly type: "int24";
7234
+ }, {
7235
+ readonly name: "hooks";
7236
+ readonly internalType: "contract IHooks";
7237
+ readonly type: "address";
7238
+ }];
7239
+ }, {
7240
+ readonly name: "amount0";
7241
+ readonly internalType: "uint256";
7242
+ readonly type: "uint256";
7243
+ }, {
7244
+ readonly name: "amount1";
7245
+ readonly internalType: "uint256";
7246
+ readonly type: "uint256";
7247
+ }, {
7248
+ readonly name: "hookData";
7249
+ readonly internalType: "bytes";
7250
+ readonly type: "bytes";
7251
+ }];
7252
+ readonly name: "beforeDonate";
7253
+ readonly outputs: readonly [{
7254
+ readonly name: "";
7255
+ readonly internalType: "bytes4";
7256
+ readonly type: "bytes4";
7257
+ }];
7258
+ readonly stateMutability: "nonpayable";
7259
+ }, {
7260
+ readonly type: "function";
7261
+ readonly inputs: readonly [{
7262
+ readonly name: "sender";
7263
+ readonly internalType: "address";
7264
+ readonly type: "address";
7265
+ }, {
7266
+ readonly name: "key";
7267
+ readonly internalType: "struct PoolKey";
7268
+ readonly type: "tuple";
7269
+ readonly components: readonly [{
7270
+ readonly name: "currency0";
7271
+ readonly internalType: "Currency";
7272
+ readonly type: "address";
7273
+ }, {
7274
+ readonly name: "currency1";
7275
+ readonly internalType: "Currency";
7276
+ readonly type: "address";
7277
+ }, {
7278
+ readonly name: "fee";
7279
+ readonly internalType: "uint24";
7280
+ readonly type: "uint24";
7281
+ }, {
7282
+ readonly name: "tickSpacing";
7283
+ readonly internalType: "int24";
7284
+ readonly type: "int24";
7285
+ }, {
7286
+ readonly name: "hooks";
7287
+ readonly internalType: "contract IHooks";
7288
+ readonly type: "address";
7289
+ }];
7290
+ }, {
7291
+ readonly name: "sqrtPriceX96";
7292
+ readonly internalType: "uint160";
7293
+ readonly type: "uint160";
7294
+ }];
7295
+ readonly name: "beforeInitialize";
7296
+ readonly outputs: readonly [{
7297
+ readonly name: "";
7298
+ readonly internalType: "bytes4";
7299
+ readonly type: "bytes4";
7300
+ }];
7301
+ readonly stateMutability: "nonpayable";
7302
+ }, {
7303
+ readonly type: "function";
7304
+ readonly inputs: readonly [{
7305
+ readonly name: "sender";
7306
+ readonly internalType: "address";
7307
+ readonly type: "address";
7308
+ }, {
7309
+ readonly name: "key";
7310
+ readonly internalType: "struct PoolKey";
7311
+ readonly type: "tuple";
7312
+ readonly components: readonly [{
7313
+ readonly name: "currency0";
7314
+ readonly internalType: "Currency";
7315
+ readonly type: "address";
7316
+ }, {
7317
+ readonly name: "currency1";
7318
+ readonly internalType: "Currency";
7319
+ readonly type: "address";
7320
+ }, {
7321
+ readonly name: "fee";
7322
+ readonly internalType: "uint24";
7323
+ readonly type: "uint24";
7324
+ }, {
7325
+ readonly name: "tickSpacing";
7326
+ readonly internalType: "int24";
7327
+ readonly type: "int24";
7328
+ }, {
7329
+ readonly name: "hooks";
7330
+ readonly internalType: "contract IHooks";
7331
+ readonly type: "address";
7332
+ }];
7333
+ }, {
7334
+ readonly name: "params";
7335
+ readonly internalType: "struct ModifyLiquidityParams";
7336
+ readonly type: "tuple";
7337
+ readonly components: readonly [{
7338
+ readonly name: "tickLower";
7339
+ readonly internalType: "int24";
7340
+ readonly type: "int24";
7341
+ }, {
7342
+ readonly name: "tickUpper";
7343
+ readonly internalType: "int24";
7344
+ readonly type: "int24";
7345
+ }, {
7346
+ readonly name: "liquidityDelta";
7347
+ readonly internalType: "int256";
7348
+ readonly type: "int256";
7349
+ }, {
7350
+ readonly name: "salt";
7351
+ readonly internalType: "bytes32";
7352
+ readonly type: "bytes32";
7353
+ }];
7354
+ }, {
7355
+ readonly name: "hookData";
7356
+ readonly internalType: "bytes";
7357
+ readonly type: "bytes";
7358
+ }];
7359
+ readonly name: "beforeRemoveLiquidity";
7360
+ readonly outputs: readonly [{
7361
+ readonly name: "";
7362
+ readonly internalType: "bytes4";
7363
+ readonly type: "bytes4";
7364
+ }];
7365
+ readonly stateMutability: "nonpayable";
7366
+ }, {
7367
+ readonly type: "function";
7368
+ readonly inputs: readonly [{
7369
+ readonly name: "sender";
7370
+ readonly internalType: "address";
7371
+ readonly type: "address";
7372
+ }, {
7373
+ readonly name: "key";
7374
+ readonly internalType: "struct PoolKey";
7375
+ readonly type: "tuple";
7376
+ readonly components: readonly [{
7377
+ readonly name: "currency0";
7378
+ readonly internalType: "Currency";
7379
+ readonly type: "address";
7380
+ }, {
7381
+ readonly name: "currency1";
7382
+ readonly internalType: "Currency";
7383
+ readonly type: "address";
7384
+ }, {
7385
+ readonly name: "fee";
7386
+ readonly internalType: "uint24";
7387
+ readonly type: "uint24";
7388
+ }, {
7389
+ readonly name: "tickSpacing";
7390
+ readonly internalType: "int24";
7391
+ readonly type: "int24";
7392
+ }, {
7393
+ readonly name: "hooks";
7394
+ readonly internalType: "contract IHooks";
7395
+ readonly type: "address";
7396
+ }];
7397
+ }, {
7398
+ readonly name: "params";
7399
+ readonly internalType: "struct SwapParams";
7400
+ readonly type: "tuple";
7401
+ readonly components: readonly [{
7402
+ readonly name: "zeroForOne";
7403
+ readonly internalType: "bool";
7404
+ readonly type: "bool";
7405
+ }, {
7406
+ readonly name: "amountSpecified";
7407
+ readonly internalType: "int256";
7408
+ readonly type: "int256";
7409
+ }, {
7410
+ readonly name: "sqrtPriceLimitX96";
7411
+ readonly internalType: "uint160";
7412
+ readonly type: "uint160";
7413
+ }];
7414
+ }, {
7415
+ readonly name: "hookData";
7416
+ readonly internalType: "bytes";
7417
+ readonly type: "bytes";
7418
+ }];
7419
+ readonly name: "beforeSwap";
7420
+ readonly outputs: readonly [{
7421
+ readonly name: "";
7422
+ readonly internalType: "bytes4";
7423
+ readonly type: "bytes4";
7424
+ }, {
7425
+ readonly name: "";
7426
+ readonly internalType: "BeforeSwapDelta";
7427
+ readonly type: "int256";
7428
+ }, {
7429
+ readonly name: "";
7430
+ readonly internalType: "uint24";
7431
+ readonly type: "uint24";
7432
+ }];
7433
+ readonly stateMutability: "nonpayable";
7434
+ }, {
7435
+ readonly type: "function";
7436
+ readonly inputs: readonly [];
7437
+ readonly name: "contractVersion";
7438
+ readonly outputs: readonly [{
7439
+ readonly name: "";
7440
+ readonly internalType: "string";
7441
+ readonly type: "string";
7442
+ }];
7443
+ readonly stateMutability: "pure";
7444
+ }, {
7445
+ readonly type: "function";
7446
+ readonly inputs: readonly [];
7447
+ readonly name: "getHookPermissions";
7448
+ readonly outputs: readonly [{
7449
+ readonly name: "";
7450
+ readonly internalType: "struct Hooks.Permissions";
7451
+ readonly type: "tuple";
7452
+ readonly components: readonly [{
7453
+ readonly name: "beforeInitialize";
7454
+ readonly internalType: "bool";
7455
+ readonly type: "bool";
7456
+ }, {
7457
+ readonly name: "afterInitialize";
7458
+ readonly internalType: "bool";
7459
+ readonly type: "bool";
7460
+ }, {
7461
+ readonly name: "beforeAddLiquidity";
7462
+ readonly internalType: "bool";
7463
+ readonly type: "bool";
7464
+ }, {
7465
+ readonly name: "afterAddLiquidity";
7466
+ readonly internalType: "bool";
7467
+ readonly type: "bool";
7468
+ }, {
7469
+ readonly name: "beforeRemoveLiquidity";
7470
+ readonly internalType: "bool";
7471
+ readonly type: "bool";
7472
+ }, {
7473
+ readonly name: "afterRemoveLiquidity";
7474
+ readonly internalType: "bool";
7475
+ readonly type: "bool";
7476
+ }, {
7477
+ readonly name: "beforeSwap";
7478
+ readonly internalType: "bool";
7479
+ readonly type: "bool";
7480
+ }, {
7481
+ readonly name: "afterSwap";
7482
+ readonly internalType: "bool";
7483
+ readonly type: "bool";
7484
+ }, {
7485
+ readonly name: "beforeDonate";
7486
+ readonly internalType: "bool";
7487
+ readonly type: "bool";
7488
+ }, {
7489
+ readonly name: "afterDonate";
7490
+ readonly internalType: "bool";
7491
+ readonly type: "bool";
7492
+ }, {
7493
+ readonly name: "beforeSwapReturnDelta";
7494
+ readonly internalType: "bool";
7495
+ readonly type: "bool";
7496
+ }, {
7497
+ readonly name: "afterSwapReturnDelta";
7498
+ readonly internalType: "bool";
7499
+ readonly type: "bool";
7500
+ }, {
7501
+ readonly name: "afterAddLiquidityReturnDelta";
7502
+ readonly internalType: "bool";
7503
+ readonly type: "bool";
7504
+ }, {
7505
+ readonly name: "afterRemoveLiquidityReturnDelta";
7506
+ readonly internalType: "bool";
7507
+ readonly type: "bool";
7508
+ }];
7509
+ }];
7510
+ readonly stateMutability: "pure";
7511
+ }, {
7512
+ readonly type: "function";
7513
+ readonly inputs: readonly [{
7514
+ readonly name: "key";
7515
+ readonly internalType: "struct PoolKey";
7516
+ readonly type: "tuple";
7517
+ readonly components: readonly [{
7518
+ readonly name: "currency0";
7519
+ readonly internalType: "Currency";
7520
+ readonly type: "address";
7521
+ }, {
7522
+ readonly name: "currency1";
7523
+ readonly internalType: "Currency";
7524
+ readonly type: "address";
7525
+ }, {
7526
+ readonly name: "fee";
7527
+ readonly internalType: "uint24";
7528
+ readonly type: "uint24";
7529
+ }, {
7530
+ readonly name: "tickSpacing";
7531
+ readonly internalType: "int24";
7532
+ readonly type: "int24";
7533
+ }, {
7534
+ readonly name: "hooks";
7535
+ readonly internalType: "contract IHooks";
7536
+ readonly type: "address";
7537
+ }];
7538
+ }];
7539
+ readonly name: "getPoolCoin";
7540
+ readonly outputs: readonly [{
7541
+ readonly name: "";
7542
+ readonly internalType: "struct IZoraV4CoinHook.PoolCoin";
7543
+ readonly type: "tuple";
7544
+ readonly components: readonly [{
7545
+ readonly name: "coin";
7546
+ readonly internalType: "address";
7547
+ readonly type: "address";
7548
+ }, {
7549
+ readonly name: "positions";
7550
+ readonly internalType: "struct LpPosition[]";
7551
+ readonly type: "tuple[]";
7552
+ readonly components: readonly [{
7553
+ readonly name: "tickLower";
7554
+ readonly internalType: "int24";
7555
+ readonly type: "int24";
7556
+ }, {
7557
+ readonly name: "tickUpper";
7558
+ readonly internalType: "int24";
7559
+ readonly type: "int24";
7560
+ }, {
7561
+ readonly name: "liquidity";
7562
+ readonly internalType: "uint128";
7563
+ readonly type: "uint128";
7564
+ }];
7565
+ }];
7566
+ }];
7567
+ readonly stateMutability: "view";
7568
+ }, {
7569
+ readonly type: "function";
7570
+ readonly inputs: readonly [{
7571
+ readonly name: "poolKeyHash";
7572
+ readonly internalType: "bytes32";
7573
+ readonly type: "bytes32";
7574
+ }];
7575
+ readonly name: "getPoolCoinByHash";
7576
+ readonly outputs: readonly [{
7577
+ readonly name: "";
7578
+ readonly internalType: "struct IZoraV4CoinHook.PoolCoin";
7579
+ readonly type: "tuple";
7580
+ readonly components: readonly [{
7581
+ readonly name: "coin";
7582
+ readonly internalType: "address";
7583
+ readonly type: "address";
7584
+ }, {
7585
+ readonly name: "positions";
7586
+ readonly internalType: "struct LpPosition[]";
7587
+ readonly type: "tuple[]";
7588
+ readonly components: readonly [{
7589
+ readonly name: "tickLower";
7590
+ readonly internalType: "int24";
7591
+ readonly type: "int24";
7592
+ }, {
7593
+ readonly name: "tickUpper";
7594
+ readonly internalType: "int24";
7595
+ readonly type: "int24";
7596
+ }, {
7597
+ readonly name: "liquidity";
7598
+ readonly internalType: "uint128";
7599
+ readonly type: "uint128";
7600
+ }];
7601
+ }];
7602
+ }];
7603
+ readonly stateMutability: "view";
7604
+ }, {
7605
+ readonly type: "function";
7606
+ readonly inputs: readonly [];
7607
+ readonly name: "getTrustedMsgSenderLookup";
7608
+ readonly outputs: readonly [{
7609
+ readonly name: "";
7610
+ readonly internalType: "contract ITrustedMsgSenderProviderLookup";
7611
+ readonly type: "address";
7612
+ }];
7613
+ readonly stateMutability: "view";
7614
+ }, {
7615
+ readonly type: "function";
7616
+ readonly inputs: readonly [{
7617
+ readonly name: "poolKey";
7618
+ readonly internalType: "struct PoolKey";
7619
+ readonly type: "tuple";
7620
+ readonly components: readonly [{
7621
+ readonly name: "currency0";
7622
+ readonly internalType: "Currency";
7623
+ readonly type: "address";
7624
+ }, {
7625
+ readonly name: "currency1";
7626
+ readonly internalType: "Currency";
7627
+ readonly type: "address";
7628
+ }, {
7629
+ readonly name: "fee";
7630
+ readonly internalType: "uint24";
7631
+ readonly type: "uint24";
7632
+ }, {
7633
+ readonly name: "tickSpacing";
7634
+ readonly internalType: "int24";
7635
+ readonly type: "int24";
7636
+ }, {
7637
+ readonly name: "hooks";
7638
+ readonly internalType: "contract IHooks";
7639
+ readonly type: "address";
7640
+ }];
7641
+ }, {
7642
+ readonly name: "coin";
7643
+ readonly internalType: "address";
7644
+ readonly type: "address";
7645
+ }, {
7646
+ readonly name: "sqrtPriceX96";
7647
+ readonly internalType: "uint160";
7648
+ readonly type: "uint160";
7649
+ }, {
7650
+ readonly name: "migratedLiquidity";
7651
+ readonly internalType: "struct BurnedPosition[]";
7652
+ readonly type: "tuple[]";
7653
+ readonly components: readonly [{
7654
+ readonly name: "tickLower";
7655
+ readonly internalType: "int24";
7656
+ readonly type: "int24";
7657
+ }, {
7658
+ readonly name: "tickUpper";
7659
+ readonly internalType: "int24";
7660
+ readonly type: "int24";
7661
+ }, {
7662
+ readonly name: "amount0Received";
7663
+ readonly internalType: "uint128";
7664
+ readonly type: "uint128";
7665
+ }, {
7666
+ readonly name: "amount1Received";
7667
+ readonly internalType: "uint128";
7668
+ readonly type: "uint128";
7669
+ }];
7670
+ }, {
7671
+ readonly name: "additionalData";
7672
+ readonly internalType: "bytes";
7673
+ readonly type: "bytes";
7674
+ }];
7675
+ readonly name: "initializeFromMigration";
7676
+ readonly outputs: readonly [];
7677
+ readonly stateMutability: "nonpayable";
7678
+ }, {
7679
+ readonly type: "function";
7680
+ readonly inputs: readonly [{
7681
+ readonly name: "poolKey";
7682
+ readonly internalType: "struct PoolKey";
7683
+ readonly type: "tuple";
7684
+ readonly components: readonly [{
7685
+ readonly name: "currency0";
7686
+ readonly internalType: "Currency";
7687
+ readonly type: "address";
7688
+ }, {
7689
+ readonly name: "currency1";
7690
+ readonly internalType: "Currency";
7691
+ readonly type: "address";
7692
+ }, {
7693
+ readonly name: "fee";
7694
+ readonly internalType: "uint24";
7695
+ readonly type: "uint24";
7696
+ }, {
7697
+ readonly name: "tickSpacing";
7698
+ readonly internalType: "int24";
7699
+ readonly type: "int24";
7700
+ }, {
7701
+ readonly name: "hooks";
7702
+ readonly internalType: "contract IHooks";
7703
+ readonly type: "address";
7704
+ }];
7705
+ }, {
7706
+ readonly name: "coin";
7707
+ readonly internalType: "address";
7708
+ readonly type: "address";
7709
+ }, {
7710
+ readonly name: "sqrtPriceX96";
7711
+ readonly internalType: "uint160";
7712
+ readonly type: "uint160";
7713
+ }, {
7714
+ readonly name: "migratedLiquidity";
7715
+ readonly internalType: "struct BurnedPosition[]";
7716
+ readonly type: "tuple[]";
7717
+ readonly components: readonly [{
7718
+ readonly name: "tickLower";
7719
+ readonly internalType: "int24";
7720
+ readonly type: "int24";
7721
+ }, {
7722
+ readonly name: "tickUpper";
7723
+ readonly internalType: "int24";
7724
+ readonly type: "int24";
7725
+ }, {
7726
+ readonly name: "amount0Received";
7727
+ readonly internalType: "uint128";
7728
+ readonly type: "uint128";
7729
+ }, {
7730
+ readonly name: "amount1Received";
7731
+ readonly internalType: "uint128";
7732
+ readonly type: "uint128";
7733
+ }];
7734
+ }, {
7735
+ readonly name: "additionalData";
7736
+ readonly internalType: "bytes";
7737
+ readonly type: "bytes";
7738
+ }];
7739
+ readonly name: "initializeFromMigrationWithUpdateableFee";
7740
+ readonly outputs: readonly [{
7741
+ readonly name: "fee";
7742
+ readonly internalType: "uint24";
7743
+ readonly type: "uint24";
7744
+ }, {
7745
+ readonly name: "tickSpacing";
7746
+ readonly internalType: "int24";
7747
+ readonly type: "int24";
7748
+ }];
7749
+ readonly stateMutability: "nonpayable";
7750
+ }, {
7751
+ readonly type: "function";
7752
+ readonly inputs: readonly [{
7753
+ readonly name: "sender";
7754
+ readonly internalType: "address";
7755
+ readonly type: "address";
7756
+ }];
7757
+ readonly name: "isTrustedMessageSender";
7758
+ readonly outputs: readonly [{
7759
+ readonly name: "";
7760
+ readonly internalType: "bool";
7761
+ readonly type: "bool";
7762
+ }];
7763
+ readonly stateMutability: "view";
7764
+ }, {
7765
+ readonly type: "function";
7766
+ readonly inputs: readonly [{
7767
+ readonly name: "newHook";
7768
+ readonly internalType: "address";
7769
+ readonly type: "address";
7770
+ }, {
7771
+ readonly name: "poolKey";
7772
+ readonly internalType: "struct PoolKey";
7773
+ readonly type: "tuple";
7774
+ readonly components: readonly [{
7775
+ readonly name: "currency0";
7776
+ readonly internalType: "Currency";
7777
+ readonly type: "address";
7778
+ }, {
7779
+ readonly name: "currency1";
7780
+ readonly internalType: "Currency";
7781
+ readonly type: "address";
7782
+ }, {
7783
+ readonly name: "fee";
7784
+ readonly internalType: "uint24";
7785
+ readonly type: "uint24";
7786
+ }, {
7787
+ readonly name: "tickSpacing";
7788
+ readonly internalType: "int24";
7789
+ readonly type: "int24";
7790
+ }, {
7791
+ readonly name: "hooks";
7792
+ readonly internalType: "contract IHooks";
7793
+ readonly type: "address";
7794
+ }];
7795
+ }, {
7796
+ readonly name: "additionalData";
7797
+ readonly internalType: "bytes";
7798
+ readonly type: "bytes";
7799
+ }];
7800
+ readonly name: "migrateLiquidity";
7801
+ readonly outputs: readonly [{
7802
+ readonly name: "newPoolKey";
7803
+ readonly internalType: "struct PoolKey";
7804
+ readonly type: "tuple";
7805
+ readonly components: readonly [{
7806
+ readonly name: "currency0";
7807
+ readonly internalType: "Currency";
7808
+ readonly type: "address";
7809
+ }, {
7810
+ readonly name: "currency1";
7811
+ readonly internalType: "Currency";
7812
+ readonly type: "address";
7813
+ }, {
7814
+ readonly name: "fee";
7815
+ readonly internalType: "uint24";
7816
+ readonly type: "uint24";
7817
+ }, {
7818
+ readonly name: "tickSpacing";
7819
+ readonly internalType: "int24";
7820
+ readonly type: "int24";
7821
+ }, {
7822
+ readonly name: "hooks";
7823
+ readonly internalType: "contract IHooks";
7824
+ readonly type: "address";
7825
+ }];
7826
+ }];
7827
+ readonly stateMutability: "nonpayable";
7828
+ }, {
7829
+ readonly type: "function";
7830
+ readonly inputs: readonly [];
7831
+ readonly name: "poolManager";
7832
+ readonly outputs: readonly [{
7833
+ readonly name: "";
7834
+ readonly internalType: "contract IPoolManager";
7835
+ readonly type: "address";
7836
+ }];
7837
+ readonly stateMutability: "view";
7838
+ }, {
7839
+ readonly type: "function";
7840
+ readonly inputs: readonly [{
7841
+ readonly name: "interfaceId";
7842
+ readonly internalType: "bytes4";
7843
+ readonly type: "bytes4";
7844
+ }];
7845
+ readonly name: "supportsInterface";
7846
+ readonly outputs: readonly [{
7847
+ readonly name: "";
7848
+ readonly internalType: "bool";
7849
+ readonly type: "bool";
7850
+ }];
7851
+ readonly stateMutability: "view";
7852
+ }, {
7853
+ readonly type: "function";
7854
+ readonly inputs: readonly [{
7855
+ readonly name: "data";
7856
+ readonly internalType: "bytes";
7857
+ readonly type: "bytes";
7858
+ }];
7859
+ readonly name: "unlockCallback";
7860
+ readonly outputs: readonly [{
7861
+ readonly name: "";
7862
+ readonly internalType: "bytes";
7863
+ readonly type: "bytes";
7864
+ }];
7865
+ readonly stateMutability: "nonpayable";
7866
+ }, {
7867
+ readonly type: "event";
7868
+ readonly anonymous: false;
7869
+ readonly inputs: readonly [{
7870
+ readonly name: "coin";
7871
+ readonly internalType: "address";
7872
+ readonly type: "address";
7873
+ readonly indexed: false;
7874
+ }, {
7875
+ readonly name: "currency";
7876
+ readonly internalType: "address";
7877
+ readonly type: "address";
7878
+ readonly indexed: false;
7879
+ }, {
7880
+ readonly name: "payoutRecipient";
7881
+ readonly internalType: "address";
7882
+ readonly type: "address";
7883
+ readonly indexed: false;
7884
+ }, {
7885
+ readonly name: "platformReferrer";
7886
+ readonly internalType: "address";
7887
+ readonly type: "address";
7888
+ readonly indexed: false;
7889
+ }, {
7890
+ readonly name: "tradeReferrer";
7891
+ readonly internalType: "address";
7892
+ readonly type: "address";
7893
+ readonly indexed: false;
7894
+ }, {
7895
+ readonly name: "protocolRewardRecipient";
7896
+ readonly internalType: "address";
7897
+ readonly type: "address";
7898
+ readonly indexed: false;
7899
+ }, {
7900
+ readonly name: "dopplerRecipient";
7901
+ readonly internalType: "address";
7902
+ readonly type: "address";
7903
+ readonly indexed: false;
7904
+ }, {
7905
+ readonly name: "marketRewards";
7906
+ readonly internalType: "struct IZoraV4CoinHook.MarketRewardsV4";
7907
+ readonly type: "tuple";
7908
+ readonly components: readonly [{
7909
+ readonly name: "creatorPayoutAmountCurrency";
7910
+ readonly internalType: "uint256";
7911
+ readonly type: "uint256";
7912
+ }, {
7913
+ readonly name: "creatorPayoutAmountCoin";
7914
+ readonly internalType: "uint256";
7915
+ readonly type: "uint256";
7916
+ }, {
7917
+ readonly name: "platformReferrerAmountCurrency";
7918
+ readonly internalType: "uint256";
7919
+ readonly type: "uint256";
7920
+ }, {
7921
+ readonly name: "platformReferrerAmountCoin";
7922
+ readonly internalType: "uint256";
7923
+ readonly type: "uint256";
7924
+ }, {
7925
+ readonly name: "tradeReferrerAmountCurrency";
7926
+ readonly internalType: "uint256";
7927
+ readonly type: "uint256";
7928
+ }, {
7929
+ readonly name: "tradeReferrerAmountCoin";
7930
+ readonly internalType: "uint256";
7931
+ readonly type: "uint256";
7932
+ }, {
7933
+ readonly name: "protocolAmountCurrency";
7934
+ readonly internalType: "uint256";
7935
+ readonly type: "uint256";
7936
+ }, {
7937
+ readonly name: "protocolAmountCoin";
7938
+ readonly internalType: "uint256";
7939
+ readonly type: "uint256";
7940
+ }, {
7941
+ readonly name: "dopplerAmountCurrency";
7942
+ readonly internalType: "uint256";
7943
+ readonly type: "uint256";
7944
+ }, {
7945
+ readonly name: "dopplerAmountCoin";
7946
+ readonly internalType: "uint256";
7947
+ readonly type: "uint256";
7948
+ }];
7949
+ readonly indexed: false;
7950
+ }];
7951
+ readonly name: "CoinMarketRewardsV4";
7952
+ }, {
7953
+ readonly type: "event";
7954
+ readonly anonymous: false;
7955
+ readonly inputs: readonly [{
7956
+ readonly name: "coin";
7957
+ readonly internalType: "address";
7958
+ readonly type: "address";
7959
+ readonly indexed: true;
7960
+ }, {
7961
+ readonly name: "currency";
7962
+ readonly internalType: "address";
7963
+ readonly type: "address";
7964
+ readonly indexed: false;
7965
+ }, {
7966
+ readonly name: "creator";
7967
+ readonly internalType: "address";
7968
+ readonly type: "address";
7969
+ readonly indexed: false;
7970
+ }, {
7971
+ readonly name: "protocol";
7972
+ readonly internalType: "address";
7973
+ readonly type: "address";
7974
+ readonly indexed: false;
7975
+ }, {
7976
+ readonly name: "creatorAmount";
7977
+ readonly internalType: "uint256";
7978
+ readonly type: "uint256";
7979
+ readonly indexed: false;
7980
+ }, {
7981
+ readonly name: "protocolAmount";
7982
+ readonly internalType: "uint256";
7983
+ readonly type: "uint256";
7984
+ readonly indexed: false;
7985
+ }];
7986
+ readonly name: "CreatorCoinRewards";
7987
+ }, {
7988
+ readonly type: "event";
7989
+ readonly anonymous: false;
7990
+ readonly inputs: readonly [{
7991
+ readonly name: "coin";
7992
+ readonly internalType: "address";
7993
+ readonly type: "address";
7994
+ readonly indexed: true;
7995
+ }, {
7996
+ readonly name: "currency";
7997
+ readonly internalType: "address";
7998
+ readonly type: "address";
7999
+ readonly indexed: true;
8000
+ }, {
8001
+ readonly name: "amountCurrency";
8002
+ readonly internalType: "uint256";
8003
+ readonly type: "uint256";
8004
+ readonly indexed: false;
8005
+ }, {
8006
+ readonly name: "tick";
8007
+ readonly internalType: "int24";
8008
+ readonly type: "int24";
8009
+ readonly indexed: false;
8010
+ }, {
8011
+ readonly name: "liquidity";
8012
+ readonly internalType: "uint128";
8013
+ readonly type: "uint128";
8014
+ readonly indexed: false;
8015
+ }];
8016
+ readonly name: "LpReward";
8017
+ }, {
8018
+ readonly type: "event";
8019
+ readonly anonymous: false;
8020
+ readonly inputs: readonly [{
8021
+ readonly name: "sender";
8022
+ readonly internalType: "address";
8023
+ readonly type: "address";
8024
+ readonly indexed: true;
8025
+ }, {
8026
+ readonly name: "swapSender";
8027
+ readonly internalType: "address";
8028
+ readonly type: "address";
8029
+ readonly indexed: true;
8030
+ }, {
8031
+ readonly name: "isTrustedSwapSenderAddress";
8032
+ readonly internalType: "bool";
8033
+ readonly type: "bool";
8034
+ readonly indexed: false;
8035
+ }, {
8036
+ readonly name: "key";
8037
+ readonly internalType: "struct PoolKey";
8038
+ readonly type: "tuple";
8039
+ readonly components: readonly [{
8040
+ readonly name: "currency0";
8041
+ readonly internalType: "Currency";
8042
+ readonly type: "address";
8043
+ }, {
8044
+ readonly name: "currency1";
8045
+ readonly internalType: "Currency";
8046
+ readonly type: "address";
8047
+ }, {
8048
+ readonly name: "fee";
8049
+ readonly internalType: "uint24";
8050
+ readonly type: "uint24";
8051
+ }, {
8052
+ readonly name: "tickSpacing";
8053
+ readonly internalType: "int24";
8054
+ readonly type: "int24";
8055
+ }, {
8056
+ readonly name: "hooks";
8057
+ readonly internalType: "contract IHooks";
8058
+ readonly type: "address";
8059
+ }];
8060
+ readonly indexed: false;
8061
+ }, {
8062
+ readonly name: "poolKeyHash";
8063
+ readonly internalType: "bytes32";
8064
+ readonly type: "bytes32";
8065
+ readonly indexed: true;
8066
+ }, {
8067
+ readonly name: "params";
8068
+ readonly internalType: "struct SwapParams";
8069
+ readonly type: "tuple";
8070
+ readonly components: readonly [{
8071
+ readonly name: "zeroForOne";
8072
+ readonly internalType: "bool";
8073
+ readonly type: "bool";
8074
+ }, {
8075
+ readonly name: "amountSpecified";
8076
+ readonly internalType: "int256";
8077
+ readonly type: "int256";
8078
+ }, {
8079
+ readonly name: "sqrtPriceLimitX96";
8080
+ readonly internalType: "uint160";
8081
+ readonly type: "uint160";
8082
+ }];
8083
+ readonly indexed: false;
8084
+ }, {
8085
+ readonly name: "amount0";
8086
+ readonly internalType: "int128";
8087
+ readonly type: "int128";
8088
+ readonly indexed: false;
8089
+ }, {
8090
+ readonly name: "amount1";
8091
+ readonly internalType: "int128";
8092
+ readonly type: "int128";
8093
+ readonly indexed: false;
8094
+ }, {
8095
+ readonly name: "isCoinBuy";
8096
+ readonly internalType: "bool";
8097
+ readonly type: "bool";
8098
+ readonly indexed: false;
8099
+ }, {
8100
+ readonly name: "hookData";
8101
+ readonly internalType: "bytes";
8102
+ readonly type: "bytes";
8103
+ readonly indexed: false;
8104
+ }, {
8105
+ readonly name: "sqrtPriceX96";
8106
+ readonly internalType: "uint160";
8107
+ readonly type: "uint160";
8108
+ readonly indexed: false;
8109
+ }];
8110
+ readonly name: "Swapped";
8111
+ }, {
8112
+ readonly type: "error";
8113
+ readonly inputs: readonly [];
8114
+ readonly name: "CoinVersionLookupCannotBeZeroAddress";
8115
+ }, {
8116
+ readonly type: "error";
8117
+ readonly inputs: readonly [];
8118
+ readonly name: "EthTransferFailed";
8119
+ }, {
8120
+ readonly type: "error";
8121
+ readonly inputs: readonly [];
8122
+ readonly name: "HookNotImplemented";
8123
+ }, {
8124
+ readonly type: "error";
8125
+ readonly inputs: readonly [{
8126
+ readonly name: "callbackId";
8127
+ readonly internalType: "uint8";
8128
+ readonly type: "uint8";
8129
+ }];
8130
+ readonly name: "InvalidCallbackId";
8131
+ }, {
8132
+ readonly type: "error";
8133
+ readonly inputs: readonly [{
8134
+ readonly name: "newHook";
8135
+ readonly internalType: "address";
8136
+ readonly type: "address";
8137
+ }];
8138
+ readonly name: "InvalidNewHook";
8139
+ }, {
8140
+ readonly type: "error";
8141
+ readonly inputs: readonly [{
8142
+ readonly name: "key";
8143
+ readonly internalType: "struct PoolKey";
8144
+ readonly type: "tuple";
8145
+ readonly components: readonly [{
8146
+ readonly name: "currency0";
8147
+ readonly internalType: "Currency";
8148
+ readonly type: "address";
8149
+ }, {
8150
+ readonly name: "currency1";
8151
+ readonly internalType: "Currency";
8152
+ readonly type: "address";
8153
+ }, {
8154
+ readonly name: "fee";
8155
+ readonly internalType: "uint24";
8156
+ readonly type: "uint24";
8157
+ }, {
8158
+ readonly name: "tickSpacing";
8159
+ readonly internalType: "int24";
8160
+ readonly type: "int24";
8161
+ }, {
8162
+ readonly name: "hooks";
8163
+ readonly internalType: "contract IHooks";
8164
+ readonly type: "address";
8165
+ }];
8166
+ }];
8167
+ readonly name: "NoCoinForHook";
8168
+ }, {
8169
+ readonly type: "error";
8170
+ readonly inputs: readonly [{
8171
+ readonly name: "coin";
8172
+ readonly internalType: "address";
8173
+ readonly type: "address";
8174
+ }];
8175
+ readonly name: "NotACoin";
8176
+ }, {
8177
+ readonly type: "error";
8178
+ readonly inputs: readonly [];
8179
+ readonly name: "NotPoolManager";
8180
+ }, {
8181
+ readonly type: "error";
8182
+ readonly inputs: readonly [{
8183
+ readonly name: "caller";
8184
+ readonly internalType: "address";
8185
+ readonly type: "address";
8186
+ }, {
8187
+ readonly name: "expectedCoin";
8188
+ readonly internalType: "address";
8189
+ readonly type: "address";
8190
+ }];
8191
+ readonly name: "OnlyCoin";
8192
+ }, {
8193
+ readonly type: "error";
8194
+ readonly inputs: readonly [];
8195
+ readonly name: "PathMustHaveAtLeastOneStep";
8196
+ }, {
8197
+ readonly type: "error";
8198
+ readonly inputs: readonly [];
8199
+ readonly name: "SafeCastOverflow";
8200
+ }, {
8201
+ readonly type: "error";
8202
+ readonly inputs: readonly [{
8203
+ readonly name: "token";
8204
+ readonly internalType: "address";
8205
+ readonly type: "address";
8206
+ }];
8207
+ readonly name: "SafeERC20FailedOperation";
8208
+ }, {
8209
+ readonly type: "error";
8210
+ readonly inputs: readonly [];
8211
+ readonly name: "TrustedMsgSenderLookupCannotBeZeroAddress";
8212
+ }, {
8213
+ readonly type: "error";
8214
+ readonly inputs: readonly [];
8215
+ readonly name: "UpgradeGateCannotBeZeroAddress";
8216
+ }, {
8217
+ readonly type: "error";
8218
+ readonly inputs: readonly [{
8219
+ readonly name: "oldHook";
8220
+ readonly internalType: "address";
8221
+ readonly type: "address";
8222
+ }, {
8223
+ readonly name: "newHook";
8224
+ readonly internalType: "address";
8225
+ readonly type: "address";
8226
+ }];
8227
+ readonly name: "UpgradePathNotRegistered";
8228
+ }, {
8229
+ readonly type: "error";
8230
+ readonly inputs: readonly [];
8231
+ readonly name: "ZoraHookRegistryCannotBeZeroAddress";
8232
+ }, {
8233
+ readonly type: "error";
8234
+ readonly inputs: readonly [];
8235
+ readonly name: "ZoraLimitOrderBookCannotBeZeroAddress";
8236
+ }];
6854
8237
  //# sourceMappingURL=wagmiGenerated.d.ts.map