@gooddollar/goodprotocol 2.0.19 → 2.0.21

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 (186) hide show
  1. package/artifacts/abis/BuyGDCloneFactory.min.json +1 -1
  2. package/artifacts/abis/IQuoterV2.min.json +1 -0
  3. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  4. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  5. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  6. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  7. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  8. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  9. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  10. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  11. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  12. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  13. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  14. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  15. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  32. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +1 -1
  33. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  34. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.dbg.json +1 -1
  35. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  36. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  37. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  38. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
  39. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +1 -1
  40. package/artifacts/contracts/governance/GoodDollarStaking.sol/IStakingUpgrade.dbg.json +1 -1
  41. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
  42. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  43. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  44. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  45. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  46. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +1 -1
  47. package/artifacts/contracts/invite/InvitesFuseV2.sol/InvitesFuseV2.dbg.json +1 -1
  48. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  49. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +1 -1
  50. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  51. package/artifacts/contracts/mocks/AaveUSDMockOracle.sol/AaveUSDMockOracle.dbg.json +1 -1
  52. package/artifacts/contracts/mocks/BatUSDMockOracle.sol/BatUSDMockOracle.dbg.json +1 -1
  53. package/artifacts/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.dbg.json +1 -1
  54. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  55. package/artifacts/contracts/mocks/DaiEthPriceMockOracle.sol/DaiEthPriceMockOracle.dbg.json +1 -1
  56. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  57. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +1 -1
  58. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
  59. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
  60. package/artifacts/contracts/mocks/EthUSDMockOracle.sol/EthUSDMockOracle.dbg.json +1 -1
  61. package/artifacts/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.dbg.json +1 -1
  62. package/artifacts/contracts/mocks/GasPriceMockOracle.sol/GasPriceMockOracle.dbg.json +1 -1
  63. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  64. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +1 -1
  65. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  66. package/artifacts/contracts/mocks/IdentityMock.sol/IdentityMock.dbg.json +1 -1
  67. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  68. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  69. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +1 -1
  70. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +1 -1
  71. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
  72. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  73. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  74. package/artifacts/contracts/mocks/PayableMock.sol/PayableMock.dbg.json +1 -1
  75. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  76. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +1 -1
  77. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  78. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  79. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  80. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  81. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  82. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  83. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  84. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  85. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  86. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  87. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  88. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  89. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  90. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  91. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
  92. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  93. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  94. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  95. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  96. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  97. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  98. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  99. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  100. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  101. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  102. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  103. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  104. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  105. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  106. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  107. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  108. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  109. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  110. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  111. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  112. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
  113. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +1 -1
  114. package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.dbg.json +1 -1
  115. package/artifacts/contracts/token/ERC677.sol/ERC677.dbg.json +1 -1
  116. package/artifacts/contracts/token/ERC677.sol/ERC677Receiver.dbg.json +1 -1
  117. package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.dbg.json +1 -1
  118. package/artifacts/contracts/token/IFeesFormula.sol/IFeesFormula.dbg.json +1 -1
  119. package/artifacts/contracts/token/MultichainFeeFormula.sol/MultichainFeeFormula.dbg.json +1 -1
  120. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/ERC20Permit.dbg.json +1 -1
  121. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/SelfApprove.dbg.json +1 -1
  122. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom.dbg.json +1 -1
  123. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.dbg.json +1 -1
  124. package/artifacts/contracts/token/superfluid/ISuperToken.sol/ISuperToken.dbg.json +1 -1
  125. package/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.dbg.json +1 -1
  126. package/artifacts/contracts/token/superfluid/SuperToken.sol/SuperToken.dbg.json +1 -1
  127. package/artifacts/contracts/token/superfluid/SuperfluidToken.sol/SuperfluidToken.dbg.json +1 -1
  128. package/artifacts/contracts/token/superfluid/UUPSProxiable.sol/UUPSProxiable.dbg.json +1 -1
  129. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/Proxy.dbg.json +1 -1
  130. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.dbg.json +1 -1
  131. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSUtils.dbg.json +1 -1
  132. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  133. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.dbg.json +1 -1
  134. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  135. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.dbg.json +1 -1
  136. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  137. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  138. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.dbg.json +1 -1
  139. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.dbg.json +1 -1
  140. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.json +2 -2
  141. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.dbg.json +1 -1
  142. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.json +259 -2
  143. package/artifacts/contracts/utils/BuyGDClone.sol/DonateGDClone.dbg.json +1 -1
  144. package/artifacts/contracts/utils/BuyGDClone.sol/DonateGDClone.json +2 -2
  145. package/artifacts/contracts/utils/BuyGDClone.sol/IQuoterV2.dbg.json +4 -0
  146. package/artifacts/contracts/utils/BuyGDClone.sol/IQuoterV2.json +111 -0
  147. package/artifacts/contracts/utils/BuyGDClone.sol/ISwapRouter.dbg.json +1 -1
  148. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  149. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  150. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  151. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  152. package/artifacts/contracts/utils/GDFaucet.sol/GDFaucet.dbg.json +1 -1
  153. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  154. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  155. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  156. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  157. package/artifacts/contracts/utils/IdentityFix.sol/IdentityFix.dbg.json +1 -1
  158. package/artifacts/contracts/utils/MultiCall.sol/Multicall.dbg.json +1 -1
  159. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  160. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  161. package/artifacts/contracts/utils/OneTimePayments.sol/OneTimePayments.dbg.json +1 -1
  162. package/artifacts/contracts/utils/OneTimePaymentsV2.sol/OneTimePaymentsV2.dbg.json +1 -1
  163. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  164. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  165. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  166. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  167. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  168. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  169. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  170. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  171. package/contracts/utils/BuyGDClone.sol +182 -2
  172. package/package.json +1 -1
  173. package/releases/deployment.json +1 -1
  174. package/scripts/blockchainTestSetup.sh +18 -0
  175. package/scripts/deployFullDAO.ts +21 -0
  176. package/scripts/test/simulateInterest.ts +1 -1
  177. package/types/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.ts +320 -3
  178. package/types/contracts/utils/BuyGDClone.sol/IQuoterV2.ts +184 -0
  179. package/types/contracts/utils/BuyGDClone.sol/index.ts +1 -0
  180. package/types/factories/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory__factory.ts +258 -1
  181. package/types/factories/contracts/utils/BuyGDClone.sol/BuyGDClone__factory.ts +1 -1
  182. package/types/factories/contracts/utils/BuyGDClone.sol/DonateGDClone__factory.ts +1 -1
  183. package/types/factories/contracts/utils/BuyGDClone.sol/IQuoterV2__factory.ts +126 -0
  184. package/types/factories/contracts/utils/BuyGDClone.sol/index.ts +1 -0
  185. package/types/hardhat.d.ts +9 -0
  186. package/types/index.ts +2 -0
@@ -13,7 +13,11 @@ import type {
13
13
  Signer,
14
14
  utils,
15
15
  } from "ethers";
16
- import type { FunctionFragment, Result } from "@ethersproject/abi";
16
+ import type {
17
+ FunctionFragment,
18
+ Result,
19
+ EventFragment,
20
+ } from "@ethersproject/abi";
17
21
  import type { Listener, Provider } from "@ethersproject/providers";
18
22
  import type {
19
23
  TypedEventFilter,
@@ -28,11 +32,21 @@ export interface BuyGDCloneFactoryInterface extends utils.Interface {
28
32
  "createAndSwap(address,uint256)": FunctionFragment;
29
33
  "createDonation(address,address,bytes)": FunctionFragment;
30
34
  "createDonationAndSwap(address,address,bool,uint256,bytes)": FunctionFragment;
35
+ "cusd()": FunctionFragment;
31
36
  "donateImpl()": FunctionFragment;
37
+ "gd()": FunctionFragment;
32
38
  "getBaseFee()": FunctionFragment;
33
39
  "impl()": FunctionFragment;
40
+ "minAmountByTWAP(uint256,address,uint32)": FunctionFragment;
41
+ "onTokenTransfer(address,uint256,bytes)": FunctionFragment;
42
+ "oracle()": FunctionFragment;
34
43
  "predict(address)": FunctionFragment;
35
44
  "predictDonation(address,address,bytes)": FunctionFragment;
45
+ "quoteCusd(uint256)": FunctionFragment;
46
+ "quoteToken(uint256,uint24,address)": FunctionFragment;
47
+ "quoter()": FunctionFragment;
48
+ "router()": FunctionFragment;
49
+ "swapToCusd(uint256,uint256,address)": FunctionFragment;
36
50
  };
37
51
 
38
52
  getFunction(
@@ -41,11 +55,21 @@ export interface BuyGDCloneFactoryInterface extends utils.Interface {
41
55
  | "createAndSwap"
42
56
  | "createDonation"
43
57
  | "createDonationAndSwap"
58
+ | "cusd"
44
59
  | "donateImpl"
60
+ | "gd"
45
61
  | "getBaseFee"
46
62
  | "impl"
63
+ | "minAmountByTWAP"
64
+ | "onTokenTransfer"
65
+ | "oracle"
47
66
  | "predict"
48
67
  | "predictDonation"
68
+ | "quoteCusd"
69
+ | "quoteToken"
70
+ | "quoter"
71
+ | "router"
72
+ | "swapToCusd"
49
73
  ): FunctionFragment;
50
74
 
51
75
  encodeFunctionData(functionFragment: "create", values: [string]): string;
@@ -61,20 +85,45 @@ export interface BuyGDCloneFactoryInterface extends utils.Interface {
61
85
  functionFragment: "createDonationAndSwap",
62
86
  values: [string, string, boolean, BigNumberish, BytesLike]
63
87
  ): string;
88
+ encodeFunctionData(functionFragment: "cusd", values?: undefined): string;
64
89
  encodeFunctionData(
65
90
  functionFragment: "donateImpl",
66
91
  values?: undefined
67
92
  ): string;
93
+ encodeFunctionData(functionFragment: "gd", values?: undefined): string;
68
94
  encodeFunctionData(
69
95
  functionFragment: "getBaseFee",
70
96
  values?: undefined
71
97
  ): string;
72
98
  encodeFunctionData(functionFragment: "impl", values?: undefined): string;
99
+ encodeFunctionData(
100
+ functionFragment: "minAmountByTWAP",
101
+ values: [BigNumberish, string, BigNumberish]
102
+ ): string;
103
+ encodeFunctionData(
104
+ functionFragment: "onTokenTransfer",
105
+ values: [string, BigNumberish, BytesLike]
106
+ ): string;
107
+ encodeFunctionData(functionFragment: "oracle", values?: undefined): string;
73
108
  encodeFunctionData(functionFragment: "predict", values: [string]): string;
74
109
  encodeFunctionData(
75
110
  functionFragment: "predictDonation",
76
111
  values: [string, string, BytesLike]
77
112
  ): string;
113
+ encodeFunctionData(
114
+ functionFragment: "quoteCusd",
115
+ values: [BigNumberish]
116
+ ): string;
117
+ encodeFunctionData(
118
+ functionFragment: "quoteToken",
119
+ values: [BigNumberish, BigNumberish, string]
120
+ ): string;
121
+ encodeFunctionData(functionFragment: "quoter", values?: undefined): string;
122
+ encodeFunctionData(functionFragment: "router", values?: undefined): string;
123
+ encodeFunctionData(
124
+ functionFragment: "swapToCusd",
125
+ values: [BigNumberish, BigNumberish, string]
126
+ ): string;
78
127
 
79
128
  decodeFunctionResult(functionFragment: "create", data: BytesLike): Result;
80
129
  decodeFunctionResult(
@@ -89,18 +138,52 @@ export interface BuyGDCloneFactoryInterface extends utils.Interface {
89
138
  functionFragment: "createDonationAndSwap",
90
139
  data: BytesLike
91
140
  ): Result;
141
+ decodeFunctionResult(functionFragment: "cusd", data: BytesLike): Result;
92
142
  decodeFunctionResult(functionFragment: "donateImpl", data: BytesLike): Result;
143
+ decodeFunctionResult(functionFragment: "gd", data: BytesLike): Result;
93
144
  decodeFunctionResult(functionFragment: "getBaseFee", data: BytesLike): Result;
94
145
  decodeFunctionResult(functionFragment: "impl", data: BytesLike): Result;
146
+ decodeFunctionResult(
147
+ functionFragment: "minAmountByTWAP",
148
+ data: BytesLike
149
+ ): Result;
150
+ decodeFunctionResult(
151
+ functionFragment: "onTokenTransfer",
152
+ data: BytesLike
153
+ ): Result;
154
+ decodeFunctionResult(functionFragment: "oracle", data: BytesLike): Result;
95
155
  decodeFunctionResult(functionFragment: "predict", data: BytesLike): Result;
96
156
  decodeFunctionResult(
97
157
  functionFragment: "predictDonation",
98
158
  data: BytesLike
99
159
  ): Result;
160
+ decodeFunctionResult(functionFragment: "quoteCusd", data: BytesLike): Result;
161
+ decodeFunctionResult(functionFragment: "quoteToken", data: BytesLike): Result;
162
+ decodeFunctionResult(functionFragment: "quoter", data: BytesLike): Result;
163
+ decodeFunctionResult(functionFragment: "router", data: BytesLike): Result;
164
+ decodeFunctionResult(functionFragment: "swapToCusd", data: BytesLike): Result;
165
+
166
+ events: {
167
+ "GDSwapToCusd(address,address,uint256,uint256,bytes)": EventFragment;
168
+ };
100
169
 
101
- events: {};
170
+ getEvent(nameOrSignatureOrTopic: "GDSwapToCusd"): EventFragment;
102
171
  }
103
172
 
173
+ export interface GDSwapToCusdEventObject {
174
+ from: string;
175
+ to: string;
176
+ amountIn: BigNumber;
177
+ amountOut: BigNumber;
178
+ note: string;
179
+ }
180
+ export type GDSwapToCusdEvent = TypedEvent<
181
+ [string, string, BigNumber, BigNumber, string],
182
+ GDSwapToCusdEventObject
183
+ >;
184
+
185
+ export type GDSwapToCusdEventFilter = TypedEventFilter<GDSwapToCusdEvent>;
186
+
104
187
  export interface BuyGDCloneFactory extends BaseContract {
105
188
  connect(signerOrProvider: Signer | Provider | string): this;
106
189
  attach(addressOrName: string): this;
@@ -155,12 +238,34 @@ export interface BuyGDCloneFactory extends BaseContract {
155
238
  overrides?: Overrides & { from?: string }
156
239
  ): Promise<ContractTransaction>;
157
240
 
241
+ cusd(overrides?: CallOverrides): Promise<[string]>;
242
+
158
243
  donateImpl(overrides?: CallOverrides): Promise<[string]>;
159
244
 
245
+ gd(overrides?: CallOverrides): Promise<[string]>;
246
+
160
247
  getBaseFee(overrides?: CallOverrides): Promise<[BigNumber]>;
161
248
 
162
249
  impl(overrides?: CallOverrides): Promise<[string]>;
163
250
 
251
+ minAmountByTWAP(
252
+ baseAmount: BigNumberish,
253
+ baseToken: string,
254
+ period: BigNumberish,
255
+ overrides?: CallOverrides
256
+ ): Promise<
257
+ [BigNumber, BigNumber] & { minTwap: BigNumber; quote: BigNumber }
258
+ >;
259
+
260
+ onTokenTransfer(
261
+ from: string,
262
+ amount: BigNumberish,
263
+ data: BytesLike,
264
+ overrides?: Overrides & { from?: string }
265
+ ): Promise<ContractTransaction>;
266
+
267
+ oracle(overrides?: CallOverrides): Promise<[string]>;
268
+
164
269
  predict(owner: string, overrides?: CallOverrides): Promise<[string]>;
165
270
 
166
271
  predictDonation(
@@ -169,6 +274,29 @@ export interface BuyGDCloneFactory extends BaseContract {
169
274
  callData: BytesLike,
170
275
  overrides?: CallOverrides
171
276
  ): Promise<[string]>;
277
+
278
+ quoteCusd(
279
+ amountIn: BigNumberish,
280
+ overrides?: Overrides & { from?: string }
281
+ ): Promise<ContractTransaction>;
282
+
283
+ quoteToken(
284
+ amountIn: BigNumberish,
285
+ fee: BigNumberish,
286
+ targetToken: string,
287
+ overrides?: Overrides & { from?: string }
288
+ ): Promise<ContractTransaction>;
289
+
290
+ quoter(overrides?: CallOverrides): Promise<[string]>;
291
+
292
+ router(overrides?: CallOverrides): Promise<[string]>;
293
+
294
+ swapToCusd(
295
+ amountIn: BigNumberish,
296
+ _minAmount: BigNumberish,
297
+ recipient: string,
298
+ overrides?: Overrides & { from?: string }
299
+ ): Promise<ContractTransaction>;
172
300
  };
173
301
 
174
302
  create(
@@ -198,12 +326,32 @@ export interface BuyGDCloneFactory extends BaseContract {
198
326
  overrides?: Overrides & { from?: string }
199
327
  ): Promise<ContractTransaction>;
200
328
 
329
+ cusd(overrides?: CallOverrides): Promise<string>;
330
+
201
331
  donateImpl(overrides?: CallOverrides): Promise<string>;
202
332
 
333
+ gd(overrides?: CallOverrides): Promise<string>;
334
+
203
335
  getBaseFee(overrides?: CallOverrides): Promise<BigNumber>;
204
336
 
205
337
  impl(overrides?: CallOverrides): Promise<string>;
206
338
 
339
+ minAmountByTWAP(
340
+ baseAmount: BigNumberish,
341
+ baseToken: string,
342
+ period: BigNumberish,
343
+ overrides?: CallOverrides
344
+ ): Promise<[BigNumber, BigNumber] & { minTwap: BigNumber; quote: BigNumber }>;
345
+
346
+ onTokenTransfer(
347
+ from: string,
348
+ amount: BigNumberish,
349
+ data: BytesLike,
350
+ overrides?: Overrides & { from?: string }
351
+ ): Promise<ContractTransaction>;
352
+
353
+ oracle(overrides?: CallOverrides): Promise<string>;
354
+
207
355
  predict(owner: string, overrides?: CallOverrides): Promise<string>;
208
356
 
209
357
  predictDonation(
@@ -213,6 +361,29 @@ export interface BuyGDCloneFactory extends BaseContract {
213
361
  overrides?: CallOverrides
214
362
  ): Promise<string>;
215
363
 
364
+ quoteCusd(
365
+ amountIn: BigNumberish,
366
+ overrides?: Overrides & { from?: string }
367
+ ): Promise<ContractTransaction>;
368
+
369
+ quoteToken(
370
+ amountIn: BigNumberish,
371
+ fee: BigNumberish,
372
+ targetToken: string,
373
+ overrides?: Overrides & { from?: string }
374
+ ): Promise<ContractTransaction>;
375
+
376
+ quoter(overrides?: CallOverrides): Promise<string>;
377
+
378
+ router(overrides?: CallOverrides): Promise<string>;
379
+
380
+ swapToCusd(
381
+ amountIn: BigNumberish,
382
+ _minAmount: BigNumberish,
383
+ recipient: string,
384
+ overrides?: Overrides & { from?: string }
385
+ ): Promise<ContractTransaction>;
386
+
216
387
  callStatic: {
217
388
  create(owner: string, overrides?: CallOverrides): Promise<string>;
218
389
 
@@ -238,12 +409,34 @@ export interface BuyGDCloneFactory extends BaseContract {
238
409
  overrides?: CallOverrides
239
410
  ): Promise<string>;
240
411
 
412
+ cusd(overrides?: CallOverrides): Promise<string>;
413
+
241
414
  donateImpl(overrides?: CallOverrides): Promise<string>;
242
415
 
416
+ gd(overrides?: CallOverrides): Promise<string>;
417
+
243
418
  getBaseFee(overrides?: CallOverrides): Promise<BigNumber>;
244
419
 
245
420
  impl(overrides?: CallOverrides): Promise<string>;
246
421
 
422
+ minAmountByTWAP(
423
+ baseAmount: BigNumberish,
424
+ baseToken: string,
425
+ period: BigNumberish,
426
+ overrides?: CallOverrides
427
+ ): Promise<
428
+ [BigNumber, BigNumber] & { minTwap: BigNumber; quote: BigNumber }
429
+ >;
430
+
431
+ onTokenTransfer(
432
+ from: string,
433
+ amount: BigNumberish,
434
+ data: BytesLike,
435
+ overrides?: CallOverrides
436
+ ): Promise<boolean>;
437
+
438
+ oracle(overrides?: CallOverrides): Promise<string>;
439
+
247
440
  predict(owner: string, overrides?: CallOverrides): Promise<string>;
248
441
 
249
442
  predictDonation(
@@ -252,9 +445,47 @@ export interface BuyGDCloneFactory extends BaseContract {
252
445
  callData: BytesLike,
253
446
  overrides?: CallOverrides
254
447
  ): Promise<string>;
448
+
449
+ quoteCusd(
450
+ amountIn: BigNumberish,
451
+ overrides?: CallOverrides
452
+ ): Promise<BigNumber>;
453
+
454
+ quoteToken(
455
+ amountIn: BigNumberish,
456
+ fee: BigNumberish,
457
+ targetToken: string,
458
+ overrides?: CallOverrides
459
+ ): Promise<BigNumber>;
460
+
461
+ quoter(overrides?: CallOverrides): Promise<string>;
462
+
463
+ router(overrides?: CallOverrides): Promise<string>;
464
+
465
+ swapToCusd(
466
+ amountIn: BigNumberish,
467
+ _minAmount: BigNumberish,
468
+ recipient: string,
469
+ overrides?: CallOverrides
470
+ ): Promise<BigNumber>;
255
471
  };
256
472
 
257
- filters: {};
473
+ filters: {
474
+ "GDSwapToCusd(address,address,uint256,uint256,bytes)"(
475
+ from?: null,
476
+ to?: null,
477
+ amountIn?: null,
478
+ amountOut?: null,
479
+ note?: null
480
+ ): GDSwapToCusdEventFilter;
481
+ GDSwapToCusd(
482
+ from?: null,
483
+ to?: null,
484
+ amountIn?: null,
485
+ amountOut?: null,
486
+ note?: null
487
+ ): GDSwapToCusdEventFilter;
488
+ };
258
489
 
259
490
  estimateGas: {
260
491
  create(
@@ -284,12 +515,32 @@ export interface BuyGDCloneFactory extends BaseContract {
284
515
  overrides?: Overrides & { from?: string }
285
516
  ): Promise<BigNumber>;
286
517
 
518
+ cusd(overrides?: CallOverrides): Promise<BigNumber>;
519
+
287
520
  donateImpl(overrides?: CallOverrides): Promise<BigNumber>;
288
521
 
522
+ gd(overrides?: CallOverrides): Promise<BigNumber>;
523
+
289
524
  getBaseFee(overrides?: CallOverrides): Promise<BigNumber>;
290
525
 
291
526
  impl(overrides?: CallOverrides): Promise<BigNumber>;
292
527
 
528
+ minAmountByTWAP(
529
+ baseAmount: BigNumberish,
530
+ baseToken: string,
531
+ period: BigNumberish,
532
+ overrides?: CallOverrides
533
+ ): Promise<BigNumber>;
534
+
535
+ onTokenTransfer(
536
+ from: string,
537
+ amount: BigNumberish,
538
+ data: BytesLike,
539
+ overrides?: Overrides & { from?: string }
540
+ ): Promise<BigNumber>;
541
+
542
+ oracle(overrides?: CallOverrides): Promise<BigNumber>;
543
+
293
544
  predict(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
294
545
 
295
546
  predictDonation(
@@ -298,6 +549,29 @@ export interface BuyGDCloneFactory extends BaseContract {
298
549
  callData: BytesLike,
299
550
  overrides?: CallOverrides
300
551
  ): Promise<BigNumber>;
552
+
553
+ quoteCusd(
554
+ amountIn: BigNumberish,
555
+ overrides?: Overrides & { from?: string }
556
+ ): Promise<BigNumber>;
557
+
558
+ quoteToken(
559
+ amountIn: BigNumberish,
560
+ fee: BigNumberish,
561
+ targetToken: string,
562
+ overrides?: Overrides & { from?: string }
563
+ ): Promise<BigNumber>;
564
+
565
+ quoter(overrides?: CallOverrides): Promise<BigNumber>;
566
+
567
+ router(overrides?: CallOverrides): Promise<BigNumber>;
568
+
569
+ swapToCusd(
570
+ amountIn: BigNumberish,
571
+ _minAmount: BigNumberish,
572
+ recipient: string,
573
+ overrides?: Overrides & { from?: string }
574
+ ): Promise<BigNumber>;
301
575
  };
302
576
 
303
577
  populateTransaction: {
@@ -328,12 +602,32 @@ export interface BuyGDCloneFactory extends BaseContract {
328
602
  overrides?: Overrides & { from?: string }
329
603
  ): Promise<PopulatedTransaction>;
330
604
 
605
+ cusd(overrides?: CallOverrides): Promise<PopulatedTransaction>;
606
+
331
607
  donateImpl(overrides?: CallOverrides): Promise<PopulatedTransaction>;
332
608
 
609
+ gd(overrides?: CallOverrides): Promise<PopulatedTransaction>;
610
+
333
611
  getBaseFee(overrides?: CallOverrides): Promise<PopulatedTransaction>;
334
612
 
335
613
  impl(overrides?: CallOverrides): Promise<PopulatedTransaction>;
336
614
 
615
+ minAmountByTWAP(
616
+ baseAmount: BigNumberish,
617
+ baseToken: string,
618
+ period: BigNumberish,
619
+ overrides?: CallOverrides
620
+ ): Promise<PopulatedTransaction>;
621
+
622
+ onTokenTransfer(
623
+ from: string,
624
+ amount: BigNumberish,
625
+ data: BytesLike,
626
+ overrides?: Overrides & { from?: string }
627
+ ): Promise<PopulatedTransaction>;
628
+
629
+ oracle(overrides?: CallOverrides): Promise<PopulatedTransaction>;
630
+
337
631
  predict(
338
632
  owner: string,
339
633
  overrides?: CallOverrides
@@ -345,5 +639,28 @@ export interface BuyGDCloneFactory extends BaseContract {
345
639
  callData: BytesLike,
346
640
  overrides?: CallOverrides
347
641
  ): Promise<PopulatedTransaction>;
642
+
643
+ quoteCusd(
644
+ amountIn: BigNumberish,
645
+ overrides?: Overrides & { from?: string }
646
+ ): Promise<PopulatedTransaction>;
647
+
648
+ quoteToken(
649
+ amountIn: BigNumberish,
650
+ fee: BigNumberish,
651
+ targetToken: string,
652
+ overrides?: Overrides & { from?: string }
653
+ ): Promise<PopulatedTransaction>;
654
+
655
+ quoter(overrides?: CallOverrides): Promise<PopulatedTransaction>;
656
+
657
+ router(overrides?: CallOverrides): Promise<PopulatedTransaction>;
658
+
659
+ swapToCusd(
660
+ amountIn: BigNumberish,
661
+ _minAmount: BigNumberish,
662
+ recipient: string,
663
+ overrides?: Overrides & { from?: string }
664
+ ): Promise<PopulatedTransaction>;
348
665
  };
349
666
  }
@@ -0,0 +1,184 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import type { FunctionFragment, Result } from "@ethersproject/abi";
17
+ import type { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "../../../common";
24
+
25
+ export declare namespace IQuoterV2 {
26
+ export type QuoteExactInputSingleParamsStruct = {
27
+ tokenIn: string;
28
+ tokenOut: string;
29
+ amountIn: BigNumberish;
30
+ fee: BigNumberish;
31
+ sqrtPriceLimitX96: BigNumberish;
32
+ };
33
+
34
+ export type QuoteExactInputSingleParamsStructOutput = [
35
+ string,
36
+ string,
37
+ BigNumber,
38
+ number,
39
+ BigNumber
40
+ ] & {
41
+ tokenIn: string;
42
+ tokenOut: string;
43
+ amountIn: BigNumber;
44
+ fee: number;
45
+ sqrtPriceLimitX96: BigNumber;
46
+ };
47
+ }
48
+
49
+ export interface IQuoterV2Interface extends utils.Interface {
50
+ functions: {
51
+ "quoteExactInput(bytes,uint256)": FunctionFragment;
52
+ "quoteExactInputSingle((address,address,uint256,uint24,uint160))": FunctionFragment;
53
+ };
54
+
55
+ getFunction(
56
+ nameOrSignatureOrTopic: "quoteExactInput" | "quoteExactInputSingle"
57
+ ): FunctionFragment;
58
+
59
+ encodeFunctionData(
60
+ functionFragment: "quoteExactInput",
61
+ values: [BytesLike, BigNumberish]
62
+ ): string;
63
+ encodeFunctionData(
64
+ functionFragment: "quoteExactInputSingle",
65
+ values: [IQuoterV2.QuoteExactInputSingleParamsStruct]
66
+ ): string;
67
+
68
+ decodeFunctionResult(
69
+ functionFragment: "quoteExactInput",
70
+ data: BytesLike
71
+ ): Result;
72
+ decodeFunctionResult(
73
+ functionFragment: "quoteExactInputSingle",
74
+ data: BytesLike
75
+ ): Result;
76
+
77
+ events: {};
78
+ }
79
+
80
+ export interface IQuoterV2 extends BaseContract {
81
+ connect(signerOrProvider: Signer | Provider | string): this;
82
+ attach(addressOrName: string): this;
83
+ deployed(): Promise<this>;
84
+
85
+ interface: IQuoterV2Interface;
86
+
87
+ queryFilter<TEvent extends TypedEvent>(
88
+ event: TypedEventFilter<TEvent>,
89
+ fromBlockOrBlockhash?: string | number | undefined,
90
+ toBlock?: string | number | undefined
91
+ ): Promise<Array<TEvent>>;
92
+
93
+ listeners<TEvent extends TypedEvent>(
94
+ eventFilter?: TypedEventFilter<TEvent>
95
+ ): Array<TypedListener<TEvent>>;
96
+ listeners(eventName?: string): Array<Listener>;
97
+ removeAllListeners<TEvent extends TypedEvent>(
98
+ eventFilter: TypedEventFilter<TEvent>
99
+ ): this;
100
+ removeAllListeners(eventName?: string): this;
101
+ off: OnEvent<this>;
102
+ on: OnEvent<this>;
103
+ once: OnEvent<this>;
104
+ removeListener: OnEvent<this>;
105
+
106
+ functions: {
107
+ quoteExactInput(
108
+ path: BytesLike,
109
+ amountIn: BigNumberish,
110
+ overrides?: Overrides & { from?: string }
111
+ ): Promise<ContractTransaction>;
112
+
113
+ quoteExactInputSingle(
114
+ params: IQuoterV2.QuoteExactInputSingleParamsStruct,
115
+ overrides?: Overrides & { from?: string }
116
+ ): Promise<ContractTransaction>;
117
+ };
118
+
119
+ quoteExactInput(
120
+ path: BytesLike,
121
+ amountIn: BigNumberish,
122
+ overrides?: Overrides & { from?: string }
123
+ ): Promise<ContractTransaction>;
124
+
125
+ quoteExactInputSingle(
126
+ params: IQuoterV2.QuoteExactInputSingleParamsStruct,
127
+ overrides?: Overrides & { from?: string }
128
+ ): Promise<ContractTransaction>;
129
+
130
+ callStatic: {
131
+ quoteExactInput(
132
+ path: BytesLike,
133
+ amountIn: BigNumberish,
134
+ overrides?: CallOverrides
135
+ ): Promise<
136
+ [BigNumber, BigNumber[], number[], BigNumber] & {
137
+ amountOut: BigNumber;
138
+ sqrtPriceX96AfterList: BigNumber[];
139
+ initializedTicksCrossedList: number[];
140
+ gasEstimate: BigNumber;
141
+ }
142
+ >;
143
+
144
+ quoteExactInputSingle(
145
+ params: IQuoterV2.QuoteExactInputSingleParamsStruct,
146
+ overrides?: CallOverrides
147
+ ): Promise<
148
+ [BigNumber, BigNumber, number, BigNumber] & {
149
+ amountOut: BigNumber;
150
+ sqrtPriceX96After: BigNumber;
151
+ initializedTicksCrossed: number;
152
+ gasEstimate: BigNumber;
153
+ }
154
+ >;
155
+ };
156
+
157
+ filters: {};
158
+
159
+ estimateGas: {
160
+ quoteExactInput(
161
+ path: BytesLike,
162
+ amountIn: BigNumberish,
163
+ overrides?: Overrides & { from?: string }
164
+ ): Promise<BigNumber>;
165
+
166
+ quoteExactInputSingle(
167
+ params: IQuoterV2.QuoteExactInputSingleParamsStruct,
168
+ overrides?: Overrides & { from?: string }
169
+ ): Promise<BigNumber>;
170
+ };
171
+
172
+ populateTransaction: {
173
+ quoteExactInput(
174
+ path: BytesLike,
175
+ amountIn: BigNumberish,
176
+ overrides?: Overrides & { from?: string }
177
+ ): Promise<PopulatedTransaction>;
178
+
179
+ quoteExactInputSingle(
180
+ params: IQuoterV2.QuoteExactInputSingleParamsStruct,
181
+ overrides?: Overrides & { from?: string }
182
+ ): Promise<PopulatedTransaction>;
183
+ };
184
+ }
@@ -4,4 +4,5 @@
4
4
  export type { BuyGDClone } from "./BuyGDClone";
5
5
  export type { BuyGDCloneFactory } from "./BuyGDCloneFactory";
6
6
  export type { DonateGDClone } from "./DonateGDClone";
7
+ export type { IQuoterV2 } from "./IQuoterV2";
7
8
  export type { ISwapRouter } from "./ISwapRouter";