@gooddollar/goodprotocol 2.0.13 → 2.0.14-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. package/artifacts/abis/DistributionBridgeMock.min.json +1 -1
  2. package/artifacts/abis/DistributionHelper.min.json +1 -1
  3. package/artifacts/abis/DistributionHelperTest.min.json +1 -1
  4. package/artifacts/abis/DistributionHelperTestHelper.min.json +1 -1
  5. package/artifacts/abis/GasPriceMockOracle.min.json +1 -1
  6. package/artifacts/abis/GoodCompoundStakingTest.min.json +1 -1
  7. package/artifacts/abis/GoodReserveCDai.min.json +1 -1
  8. package/artifacts/abis/IFeesFormula.min.json +1 -1
  9. package/artifacts/abis/ISuperGoodDollar.min.json +1 -1
  10. package/artifacts/abis/ISuperToken.min.json +1 -0
  11. package/artifacts/abis/MultichainFeeFormula.min.json +1 -0
  12. package/artifacts/abis/SuperGoodDollar.min.json +1 -1
  13. package/artifacts/abis/SuperToken.min.json +1 -1
  14. package/artifacts/abis/UBIScheme.min.json +1 -1
  15. package/artifacts/abis/UBISchemeV2.min.json +1 -1
  16. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  17. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  18. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  19. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  20. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  21. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  32. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  33. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +1 -1
  34. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  35. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  36. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  37. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  38. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  39. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  40. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  41. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  42. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  43. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  44. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  45. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +1 -1
  46. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +2 -2
  47. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  48. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.json +2 -2
  49. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.dbg.json +1 -1
  50. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.json +2 -2
  51. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  52. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
  53. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  54. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.json +2 -2
  55. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  56. package/artifacts/contracts/governance/GReputation.sol/GReputation.json +2 -2
  57. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
  58. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.json +2 -2
  59. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +1 -1
  60. package/artifacts/contracts/governance/GoodDollarStaking.sol/IStakingUpgrade.dbg.json +1 -1
  61. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
  62. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  63. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.json +2 -2
  64. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  65. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  66. package/artifacts/contracts/governance/Reputation.sol/Reputation.json +2 -2
  67. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  68. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  69. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +1 -1
  70. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +2 -2
  71. package/artifacts/contracts/invite/InvitesFuseV2.sol/InvitesFuseV2.dbg.json +1 -1
  72. package/artifacts/contracts/invite/InvitesFuseV2.sol/InvitesFuseV2.json +2 -2
  73. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  74. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.json +2 -2
  75. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +1 -1
  76. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.json +2 -2
  77. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  78. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.json +2 -2
  79. package/artifacts/contracts/mocks/AaveUSDMockOracle.sol/AaveUSDMockOracle.dbg.json +1 -1
  80. package/artifacts/contracts/mocks/AaveUSDMockOracle.sol/AaveUSDMockOracle.json +2 -2
  81. package/artifacts/contracts/mocks/BatUSDMockOracle.sol/BatUSDMockOracle.dbg.json +1 -1
  82. package/artifacts/contracts/mocks/BatUSDMockOracle.sol/BatUSDMockOracle.json +2 -2
  83. package/artifacts/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.dbg.json +1 -1
  84. package/artifacts/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.json +2 -2
  85. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  86. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.json +2 -2
  87. package/artifacts/contracts/mocks/DaiEthPriceMockOracle.sol/DaiEthPriceMockOracle.dbg.json +1 -1
  88. package/artifacts/contracts/mocks/DaiEthPriceMockOracle.sol/DaiEthPriceMockOracle.json +2 -2
  89. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  90. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.json +2 -2
  91. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +1 -1
  92. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.json +122 -17
  93. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
  94. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.json +242 -17
  95. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
  96. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.json +256 -18
  97. package/artifacts/contracts/mocks/EthUSDMockOracle.sol/EthUSDMockOracle.dbg.json +1 -1
  98. package/artifacts/contracts/mocks/EthUSDMockOracle.sol/EthUSDMockOracle.json +2 -2
  99. package/artifacts/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.dbg.json +1 -1
  100. package/artifacts/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.json +2 -2
  101. package/artifacts/contracts/mocks/GasPriceMockOracle.sol/GasPriceMockOracle.dbg.json +1 -1
  102. package/artifacts/contracts/mocks/GasPriceMockOracle.sol/GasPriceMockOracle.json +15 -2
  103. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  104. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +6 -6
  105. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +1 -1
  106. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.json +2 -2
  107. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  108. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.json +2 -2
  109. package/artifacts/contracts/mocks/IdentityMock.sol/IdentityMock.dbg.json +1 -1
  110. package/artifacts/contracts/mocks/IdentityMock.sol/IdentityMock.json +2 -2
  111. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  112. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.json +2 -2
  113. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  114. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.json +2 -2
  115. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +1 -1
  116. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +1 -1
  117. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.json +2 -2
  118. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
  119. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  120. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.json +2 -2
  121. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  122. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  123. package/artifacts/contracts/mocks/PayableMock.sol/PayableMock.dbg.json +1 -1
  124. package/artifacts/contracts/mocks/PayableMock.sol/PayableMock.json +2 -2
  125. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  126. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.json +2 -2
  127. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +1 -1
  128. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.json +2 -2
  129. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  130. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.json +2 -2
  131. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  132. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.json +2 -2
  133. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  134. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.json +2 -2
  135. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  136. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.json +2 -2
  137. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  138. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.json +2 -2
  139. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  140. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.json +2 -2
  141. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  142. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.json +2 -2
  143. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  144. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.json +2 -2
  145. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  146. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.json +2 -2
  147. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  148. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.json +2 -2
  149. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  150. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.json +2 -2
  151. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  152. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.json +2 -2
  153. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  154. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.json +2 -2
  155. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  156. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.json +2 -2
  157. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
  158. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.json +242 -17
  159. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  160. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.json +2 -2
  161. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  162. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.json +2 -2
  163. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  164. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  165. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.json +45 -19
  166. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  167. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.json +2 -2
  168. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  169. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +2 -2
  170. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  171. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  172. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  173. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.json +2 -2
  174. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  175. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  176. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  177. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.json +2 -2
  178. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  179. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  180. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  181. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.json +2 -2
  182. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  183. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
  184. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  185. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
  186. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  187. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +2 -2
  188. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  189. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
  190. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  191. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
  192. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  193. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +2 -2
  194. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
  195. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.json +2 -2
  196. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +1 -1
  197. package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.dbg.json +1 -1
  198. package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.json +2 -2
  199. package/artifacts/contracts/token/ERC677.sol/ERC677.dbg.json +1 -1
  200. package/artifacts/contracts/token/ERC677.sol/ERC677Receiver.dbg.json +1 -1
  201. package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.dbg.json +1 -1
  202. package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.json +2 -2
  203. package/artifacts/contracts/token/IFeesFormula.sol/IFeesFormula.dbg.json +4 -0
  204. package/artifacts/contracts/token/{FeesFormula.sol → IFeesFormula.sol}/IFeesFormula.json +1 -1
  205. package/artifacts/contracts/token/MultichainFeeFormula.sol/MultichainFeeFormula.dbg.json +4 -0
  206. package/artifacts/contracts/token/MultichainFeeFormula.sol/MultichainFeeFormula.json +58 -0
  207. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/ERC20Permit.dbg.json +1 -1
  208. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/SelfApprove.dbg.json +1 -1
  209. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom.dbg.json +1 -1
  210. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.dbg.json +1 -1
  211. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.json +159 -5
  212. package/artifacts/contracts/token/superfluid/ISuperToken.sol/ISuperToken.dbg.json +4 -0
  213. package/artifacts/contracts/token/superfluid/ISuperToken.sol/ISuperToken.json +1609 -0
  214. package/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.dbg.json +1 -1
  215. package/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.json +233 -190
  216. package/artifacts/contracts/token/superfluid/SuperToken.sol/SuperToken.dbg.json +1 -1
  217. package/artifacts/contracts/token/superfluid/SuperToken.sol/SuperToken.json +198 -193
  218. package/artifacts/contracts/token/superfluid/SuperfluidToken.sol/SuperfluidToken.dbg.json +1 -1
  219. package/artifacts/contracts/token/superfluid/UUPSProxiable.sol/UUPSProxiable.dbg.json +1 -1
  220. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/Proxy.dbg.json +1 -1
  221. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.dbg.json +1 -1
  222. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.json +2 -2
  223. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSUtils.dbg.json +1 -1
  224. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSUtils.json +2 -2
  225. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  226. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +20 -2
  227. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.dbg.json +1 -1
  228. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.json +20 -2
  229. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  230. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.json +2 -2
  231. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.dbg.json +1 -1
  232. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.json +2 -2
  233. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  234. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.json +2 -2
  235. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  236. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.json +2 -2
  237. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.dbg.json +1 -1
  238. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.json +2 -2
  239. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.dbg.json +1 -1
  240. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.json +2 -2
  241. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.dbg.json +1 -1
  242. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.json +2 -2
  243. package/artifacts/contracts/utils/BuyGDClone.sol/ISwapRouter.dbg.json +1 -1
  244. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  245. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.json +2 -2
  246. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  247. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.json +2 -2
  248. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  249. package/artifacts/contracts/utils/DSMath.sol/DSMath.json +2 -2
  250. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  251. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.json +2 -2
  252. package/artifacts/contracts/utils/GDFaucet.sol/GDFaucet.dbg.json +1 -1
  253. package/artifacts/contracts/utils/GDFaucet.sol/GDFaucet.json +2 -2
  254. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  255. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.json +2 -2
  256. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  257. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  258. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  259. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.json +2 -2
  260. package/artifacts/contracts/utils/IdentityFix.sol/IdentityFix.dbg.json +1 -1
  261. package/artifacts/contracts/utils/IdentityFix.sol/IdentityFix.json +2 -2
  262. package/artifacts/contracts/utils/MultiCall.sol/Multicall.dbg.json +1 -1
  263. package/artifacts/contracts/utils/MultiCall.sol/Multicall.json +2 -2
  264. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  265. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.json +2 -2
  266. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  267. package/artifacts/contracts/utils/NameService.sol/NameService.json +2 -2
  268. package/artifacts/contracts/utils/OneTimePayments.sol/OneTimePayments.dbg.json +1 -1
  269. package/artifacts/contracts/utils/OneTimePayments.sol/OneTimePayments.json +2 -2
  270. package/artifacts/contracts/utils/OneTimePaymentsV2.sol/OneTimePaymentsV2.dbg.json +1 -1
  271. package/artifacts/contracts/utils/OneTimePaymentsV2.sol/OneTimePaymentsV2.json +2 -2
  272. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  273. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  274. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.json +2 -2
  275. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  276. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.json +2 -2
  277. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  278. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.json +2 -2
  279. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  280. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.json +2 -2
  281. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  282. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.json +2 -2
  283. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  284. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.json +2 -2
  285. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  286. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
  287. package/contracts/invite/InvitesFuseV2.sol +3 -2
  288. package/contracts/mocks/DistributionBridgeMock.sol +42 -15
  289. package/contracts/mocks/DistributionHelperTest.sol +6 -2
  290. package/contracts/mocks/FeesFormularMock.sol +14 -14
  291. package/contracts/mocks/GasPriceMockOracle.sol +7 -1
  292. package/contracts/reserve/DistributionHelper.sol +147 -23
  293. package/contracts/reserve/GoodReserveCDai.sol +39 -47
  294. package/contracts/staking/GoodFundManager.sol +18 -37
  295. package/contracts/token/GoodDollar.sol +11 -16
  296. package/contracts/token/MultichainFeeFormula.sol +34 -0
  297. package/contracts/token/superfluid/ConstantFlowNFTs.sol +3 -0
  298. package/contracts/token/superfluid/ISuperGoodDollar.sol +4 -5
  299. package/contracts/token/superfluid/ISuperToken.sol +464 -0
  300. package/contracts/token/superfluid/SuperGoodDollar.sol +408 -376
  301. package/contracts/token/superfluid/SuperToken.sol +144 -144
  302. package/contracts/ubi/UBIScheme.sol +9 -5
  303. package/contracts/ubi/UBISchemeV2.sol +6 -0
  304. package/contracts/utils/AdminWallet.sol +2 -1
  305. package/contracts/utils/AdminWalletFuse.sol +2 -1
  306. package/contracts/utils/BuyAndBridgeHelper.sol +13 -13
  307. package/contracts/utils/MultiCall.sol +8 -10
  308. package/dist/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +2 -2
  309. package/dist/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.json +233 -190
  310. package/dist/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.json +2 -2
  311. package/dist/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.json +2 -2
  312. package/hardhat.config.ts +46 -15
  313. package/package.json +7 -7
  314. package/releases/deploy-settings.json +3 -1
  315. package/releases/deployment.json +6 -2
  316. package/scripts/analytics/faucetStats.ts +19 -15
  317. package/scripts/fv.ts +305 -0
  318. package/scripts/multichain-deploy/1_basicdao-deploy.ts +18 -9
  319. package/scripts/multichain-deploy/helpers.ts +204 -64
  320. package/scripts/proposals/gip-15.ts +427 -0
  321. package/scripts/upgrades/multichain-formula-upgrade.ts +140 -0
  322. package/scripts/upgrades/restoreFunds.ts +91 -0
  323. package/scripts/upgrades/superfluid-nft-celo-gas-token.ts +159 -0
  324. package/scripts/utils.ts +15 -0
  325. package/test/helpers.ts +73 -10
  326. package/test/reserve/DistributionHelper.test.ts +183 -218
  327. package/test/reserve/GoodReserveCDai.distribution.test.ts +21 -144
  328. package/test/reserve/GoodReserveCDai.test.ts +98 -302
  329. package/test/staking/StakingRewards.test.ts +324 -936
  330. package/test/token/CeloGasToken.test.ts +108 -0
  331. package/test/token/SuperGoodDollar.test.ts +15 -6
  332. package/test/utils/AdminWallet.test.ts +97 -38
  333. package/test/utils/BuyAndBridgeHelper.test.ts +9 -33
  334. package/truffle-config.js +24 -6
  335. package/types/ConstantInflowNFT.ts +969 -0
  336. package/types/ConstantOutflowNFT.ts +1031 -0
  337. package/types/DistributionBridgeMock.ts +203 -70
  338. package/types/DistributionHelper.ts +325 -30
  339. package/types/DistributionHelperTest.ts +325 -30
  340. package/types/DistributionHelperTestHelper.ts +355 -35
  341. package/types/FlowNFTBase.ts +887 -0
  342. package/types/GasPriceMockOracle.ts +29 -0
  343. package/types/GoodReserveCDai.ts +79 -20
  344. package/types/IConstantFlowAgreementV1.ts +1391 -0
  345. package/types/IConstantInflowNFT.ts +772 -0
  346. package/types/IConstantOutflowNFT.ts +834 -0
  347. package/types/IERC721.ts +487 -0
  348. package/types/IERC721Metadata.ts +538 -0
  349. package/types/IFlowNFTBase.ts +711 -0
  350. package/types/IInstantDistributionAgreementV1.ts +1183 -0
  351. package/types/ILayerZeroFeeEstimator.ts +136 -0
  352. package/types/IMessagePassingBridge.ts +774 -0
  353. package/types/ISETH.ts +2668 -0
  354. package/types/ISETHCustom.ts +161 -0
  355. package/types/ISuperGoodDollar.ts +277 -25
  356. package/types/ISuperToken.ts +202 -346
  357. package/types/ISuperfluid.ts +7 -2
  358. package/types/ISuperfluidGovernance.ts +40 -5
  359. package/types/MultichainFeeFormula.ts +130 -0
  360. package/types/SuperGoodDollar.ts +383 -349
  361. package/types/SuperToken.ts +319 -344
  362. package/types/UBIScheme.ts +36 -0
  363. package/types/UBISchemeV2.ts +36 -0
  364. package/types/factories/AaveMock__factory.ts +1 -1
  365. package/types/factories/AaveStakingFactory__factory.ts +1 -1
  366. package/types/factories/AaveUSDMockOracle__factory.ts +1 -1
  367. package/types/factories/AdminWalletFuse__factory.ts +1 -1
  368. package/types/factories/AdminWallet__factory.ts +1 -1
  369. package/types/factories/BancorFormula__factory.ts +1 -1
  370. package/types/factories/BaseShareFieldV2__factory.ts +1 -1
  371. package/types/factories/BaseShareField__factory.ts +1 -1
  372. package/types/factories/BatUSDMockOracle__factory.ts +1 -1
  373. package/types/factories/BuyAndBridgeHelper__factory.ts +1 -1
  374. package/types/factories/BuyGDCloneFactory__factory.ts +1 -1
  375. package/types/factories/BuyGDClone__factory.ts +1 -1
  376. package/types/factories/CBATMock__factory.ts +1 -1
  377. package/types/factories/CDAILowWorthMock__factory.ts +1 -1
  378. package/types/factories/CDAIMock__factory.ts +1 -1
  379. package/types/factories/CDAINonMintableMock__factory.ts +1 -1
  380. package/types/factories/CDecimalsMock__factory.ts +1 -1
  381. package/types/factories/CSDTMock__factory.ts +1 -1
  382. package/types/factories/CUSDCMock__factory.ts +1 -1
  383. package/types/factories/ClaimersDistribution__factory.ts +1 -1
  384. package/types/factories/CompUSDMockOracle__factory.ts +1 -1
  385. package/types/factories/CompoundStakingFactory__factory.ts +1 -1
  386. package/types/factories/CompoundVotingMachine__factory.ts +1 -1
  387. package/types/factories/ConstantInflowNFT__factory.ts +758 -0
  388. package/types/factories/ConstantOutflowNFT__factory.ts +817 -0
  389. package/types/factories/DAIMock__factory.ts +1 -1
  390. package/types/factories/DAOContract__factory.ts +1 -1
  391. package/types/factories/DAOUpgradeableContract__factory.ts +1 -1
  392. package/types/factories/DaiEthPriceMockOracle__factory.ts +1 -1
  393. package/types/factories/DecimalsMock__factory.ts +1 -1
  394. package/types/factories/DistributionBridgeMock__factory.ts +121 -16
  395. package/types/factories/DistributionHelperTestHelper__factory.ts +255 -17
  396. package/types/factories/DistributionHelperTest__factory.ts +241 -16
  397. package/types/factories/DistributionHelper__factory.ts +241 -16
  398. package/types/factories/DonationsStaking__factory.ts +1 -1
  399. package/types/factories/ERC1967Proxy__factory.ts +1 -1
  400. package/types/factories/ERC20PresetMinterPauserUpgradeable__factory.ts +1 -1
  401. package/types/factories/ERC20Upgradeable__factory.ts +1 -1
  402. package/types/factories/EthUSDMockOracle__factory.ts +1 -1
  403. package/types/factories/EventsEmitter__factory.ts +1 -1
  404. package/types/factories/ExchangeHelper__factory.ts +1 -1
  405. package/types/factories/Faucet__factory.ts +1 -1
  406. package/types/factories/FeesFormulaMock__factory.ts +1 -1
  407. package/types/factories/FlowNFTBase__factory.ts +642 -0
  408. package/types/factories/FuseFaucetV2__factory.ts +1 -1
  409. package/types/factories/FuseFaucet__factory.ts +1 -1
  410. package/types/factories/FuseStakingV3__factory.ts +1 -1
  411. package/types/factories/GDFaucet__factory.ts +1 -1
  412. package/types/factories/GReputation__factory.ts +1 -1
  413. package/types/factories/GasPriceMockOracle__factory.ts +14 -1
  414. package/types/factories/GoodAaveStakingV2__factory.ts +1 -1
  415. package/types/factories/GoodAaveStaking__factory.ts +1 -1
  416. package/types/factories/GoodCompoundStakingTest__factory.ts +1 -1
  417. package/types/factories/GoodCompoundStakingV2__factory.ts +1 -1
  418. package/types/factories/GoodCompoundStaking__factory.ts +1 -1
  419. package/types/factories/GoodDollarMintBurnWrapper__factory.ts +1 -1
  420. package/types/factories/GoodDollarStakingMock__factory.ts +1 -1
  421. package/types/factories/GoodDollarStaking__factory.ts +1 -1
  422. package/types/factories/GoodDollar__factory.ts +1 -1
  423. package/types/factories/GoodFundManagerTest__factory.ts +1 -1
  424. package/types/factories/GoodFundManager__factory.ts +1 -1
  425. package/types/factories/GoodMarketMaker__factory.ts +1 -1
  426. package/types/factories/GoodReserveCDai__factory.ts +44 -18
  427. package/types/factories/GovernanceStaking__factory.ts +1 -1
  428. package/types/factories/IConstantFlowAgreementV1__factory.ts +1064 -0
  429. package/types/factories/IConstantInflowNFT__factory.ts +551 -0
  430. package/types/factories/IConstantOutflowNFT__factory.ts +614 -0
  431. package/types/factories/IERC721Metadata__factory.ts +356 -0
  432. package/types/factories/IERC721__factory.ts +308 -0
  433. package/types/factories/IFlowNFTBase__factory.ts +512 -0
  434. package/types/factories/IInstantDistributionAgreementV1__factory.ts +1015 -0
  435. package/types/factories/ILayerZeroFeeEstimator__factory.ts +79 -0
  436. package/types/factories/IMessagePassingBridge__factory.ts +446 -0
  437. package/types/factories/ISETHCustom__factory.ts +56 -0
  438. package/types/factories/ISETH__factory.ts +1866 -0
  439. package/types/factories/ISuperGoodDollar__factory.ts +159 -5
  440. package/types/factories/ISuperTokenFactory__factory.ts +5 -0
  441. package/types/factories/ISuperToken__factory.ts +130 -191
  442. package/types/factories/ISuperfluidGovernance__factory.ts +23 -5
  443. package/types/factories/ISuperfluid__factory.ts +10 -0
  444. package/types/factories/IdentityFix__factory.ts +1 -1
  445. package/types/factories/IdentityMock__factory.ts +1 -1
  446. package/types/factories/IdentityV2__factory.ts +1 -1
  447. package/types/factories/IncentiveControllerMock__factory.ts +1 -1
  448. package/types/factories/InvitesFuseV2__factory.ts +1 -1
  449. package/types/factories/InvitesV1__factory.ts +1 -1
  450. package/types/factories/InvitesV2__factory.ts +1 -1
  451. package/types/factories/LendingPoolMock__factory.ts +1 -1
  452. package/types/factories/Multicall__factory.ts +1 -1
  453. package/types/factories/MultichainBridgeHelper__factory.ts +1 -1
  454. package/types/factories/MultichainFeeFormula__factory.ts +113 -0
  455. package/types/factories/MultichainRouterMock__factory.ts +1 -1
  456. package/types/factories/NameService__factory.ts +1 -1
  457. package/types/factories/OneTimePaymentsV2__factory.ts +1 -1
  458. package/types/factories/OneTimePayments__factory.ts +1 -1
  459. package/types/factories/OverMintTesterRegularStake__factory.ts +1 -1
  460. package/types/factories/OverMintTester__factory.ts +1 -1
  461. package/types/factories/PayableMock__factory.ts +1 -1
  462. package/types/factories/ProtocolUpgradeFuseRecover__factory.ts +1 -1
  463. package/types/factories/ProtocolUpgradeFuse__factory.ts +1 -1
  464. package/types/factories/ProtocolUpgradeRecover__factory.ts +1 -1
  465. package/types/factories/ProtocolUpgrade__factory.ts +1 -1
  466. package/types/factories/ProxyFactory1967__factory.ts +1 -1
  467. package/types/factories/ReputationTestHelper__factory.ts +1 -1
  468. package/types/factories/Reputation__factory.ts +1 -1
  469. package/types/factories/SixteenDecimalsTokenMock__factory.ts +1 -1
  470. package/types/factories/StakersDistribution__factory.ts +1 -1
  471. package/types/factories/StakingMockFixedAPY__factory.ts +1 -1
  472. package/types/factories/SuperGoodDollar__factory.ts +230 -187
  473. package/types/factories/SuperToken__factory.ts +197 -192
  474. package/types/factories/SwapHelperTest__factory.ts +1 -1
  475. package/types/factories/TwentyDecimalsTokenMock__factory.ts +1 -1
  476. package/types/factories/UBISchemeV2__factory.ts +19 -1
  477. package/types/factories/UBIScheme__factory.ts +19 -1
  478. package/types/factories/USDCMock__factory.ts +1 -1
  479. package/types/factories/UUPSProxy__factory.ts +1 -1
  480. package/types/factories/UniswapV2SwapHelper__factory.ts +1 -1
  481. package/types/factories/UpgradableMock2__factory.ts +1 -1
  482. package/types/factories/UpgradableMock3__factory.ts +1 -1
  483. package/types/factories/UpgradableMock4__factory.ts +1 -1
  484. package/types/factories/UpgradableMock__factory.ts +1 -1
  485. package/types/hardhat.d.ts +166 -4
  486. package/types/index.ts +34 -4
  487. package/yarn.lock +1288 -719
  488. package/artifacts/contracts/token/FeesFormula.sol/IFeesFormula.dbg.json +0 -4
  489. /package/contracts/token/{FeesFormula.sol → IFeesFormula.sol} +0 -0
@@ -40,12 +40,15 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
40
40
  "burnFrom(address,uint256)": FunctionFragment;
41
41
  "cap()": FunctionFragment;
42
42
  "castrate()": FunctionFragment;
43
+ "constantInflowNFT()": FunctionFragment;
44
+ "constantOutflowNFT()": FunctionFragment;
43
45
  "createAgreement(bytes32,bytes32[])": FunctionFragment;
46
+ "creditGasFees(address,address,address,address,uint256,uint256,uint256,uint256)": FunctionFragment;
47
+ "debitGasFees(address,uint256)": FunctionFragment;
44
48
  "decimals()": FunctionFragment;
45
49
  "decreaseAllowance(address,uint256)": FunctionFragment;
46
50
  "defaultOperators()": FunctionFragment;
47
51
  "disableHostOperations()": FunctionFragment;
48
- "downgrade(uint256)": FunctionFragment;
49
52
  "enableHostOperations(bool)": FunctionFragment;
50
53
  "feeRecipient()": FunctionFragment;
51
54
  "formula()": FunctionFragment;
@@ -58,7 +61,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
58
61
  "getRoleAdmin(bytes32)": FunctionFragment;
59
62
  "getRoleMember(bytes32,uint256)": FunctionFragment;
60
63
  "getRoleMemberCount(bytes32)": FunctionFragment;
61
- "getUnderlyingToken()": FunctionFragment;
62
64
  "grantRole(bytes32,address)": FunctionFragment;
63
65
  "granularity()": FunctionFragment;
64
66
  "hasRole(bytes32,address)": FunctionFragment;
@@ -77,15 +79,18 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
77
79
  "name()": FunctionFragment;
78
80
  "nonces(address)": FunctionFragment;
79
81
  "operationApprove(address,address,uint256)": FunctionFragment;
80
- "operationDowngrade(address,uint256)": FunctionFragment;
82
+ "operationDecreaseAllowance(address,address,uint256)": FunctionFragment;
83
+ "operationIncreaseAllowance(address,address,uint256)": FunctionFragment;
84
+ "operationSend(address,address,uint256,bytes)": FunctionFragment;
81
85
  "operationTransferFrom(address,address,address,uint256)": FunctionFragment;
82
- "operationUpgrade(address,uint256)": FunctionFragment;
83
86
  "operatorBurn(address,uint256,bytes,bytes)": FunctionFragment;
84
87
  "operatorSend(address,address,uint256,bytes,bytes)": FunctionFragment;
85
88
  "owner()": FunctionFragment;
86
89
  "pause()": FunctionFragment;
87
90
  "paused()": FunctionFragment;
88
91
  "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)": FunctionFragment;
92
+ "poolAdminNFT()": FunctionFragment;
93
+ "poolMemberNFT()": FunctionFragment;
89
94
  "proxiableUUID()": FunctionFragment;
90
95
  "realtimeBalanceOf(address,uint256)": FunctionFragment;
91
96
  "realtimeBalanceOfNow(address)": FunctionFragment;
@@ -94,20 +99,17 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
94
99
  "revokeOperator(address)": FunctionFragment;
95
100
  "revokeRole(bytes32,address)": FunctionFragment;
96
101
  "selfApproveFor(address,address,uint256)": FunctionFragment;
97
- "selfBurn(address,uint256,bytes)": FunctionFragment;
98
- "selfMint(address,uint256,bytes)": FunctionFragment;
99
- "selfTransferFrom(address,address,address,uint256)": FunctionFragment;
100
102
  "send(address,uint256,bytes)": FunctionFragment;
101
103
  "setFeeRecipient(address)": FunctionFragment;
102
104
  "setFormula(address)": FunctionFragment;
103
105
  "setIdentity(address)": FunctionFragment;
106
+ "setNFTProxyContracts(address,address,address,address)": FunctionFragment;
104
107
  "settleBalance(address,int256)": FunctionFragment;
105
108
  "supportsInterface(bytes4)": FunctionFragment;
106
109
  "symbol()": FunctionFragment;
107
110
  "terminateAgreement(bytes32,uint256)": FunctionFragment;
108
111
  "totalSupply()": FunctionFragment;
109
112
  "transfer(address,uint256)": FunctionFragment;
110
- "transferAll(address)": FunctionFragment;
111
113
  "transferAndCall(address,uint256,bytes)": FunctionFragment;
112
114
  "transferFrom(address,address,uint256)": FunctionFragment;
113
115
  "transferOwnership(address)": FunctionFragment;
@@ -115,8 +117,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
115
117
  "updateAgreementData(bytes32,bytes32[])": FunctionFragment;
116
118
  "updateAgreementStateSlot(address,uint256,bytes32[])": FunctionFragment;
117
119
  "updateCode(address)": FunctionFragment;
118
- "upgrade(uint256)": FunctionFragment;
119
- "upgradeTo(address,uint256,bytes)": FunctionFragment;
120
120
  };
121
121
 
122
122
  encodeFunctionData(
@@ -157,10 +157,35 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
157
157
  ): string;
158
158
  encodeFunctionData(functionFragment: "cap", values?: undefined): string;
159
159
  encodeFunctionData(functionFragment: "castrate", values?: undefined): string;
160
+ encodeFunctionData(
161
+ functionFragment: "constantInflowNFT",
162
+ values?: undefined
163
+ ): string;
164
+ encodeFunctionData(
165
+ functionFragment: "constantOutflowNFT",
166
+ values?: undefined
167
+ ): string;
160
168
  encodeFunctionData(
161
169
  functionFragment: "createAgreement",
162
170
  values: [BytesLike, BytesLike[]]
163
171
  ): string;
172
+ encodeFunctionData(
173
+ functionFragment: "creditGasFees",
174
+ values: [
175
+ string,
176
+ string,
177
+ string,
178
+ string,
179
+ BigNumberish,
180
+ BigNumberish,
181
+ BigNumberish,
182
+ BigNumberish
183
+ ]
184
+ ): string;
185
+ encodeFunctionData(
186
+ functionFragment: "debitGasFees",
187
+ values: [string, BigNumberish]
188
+ ): string;
164
189
  encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
165
190
  encodeFunctionData(
166
191
  functionFragment: "decreaseAllowance",
@@ -174,10 +199,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
174
199
  functionFragment: "disableHostOperations",
175
200
  values?: undefined
176
201
  ): string;
177
- encodeFunctionData(
178
- functionFragment: "downgrade",
179
- values: [BigNumberish]
180
- ): string;
181
202
  encodeFunctionData(
182
203
  functionFragment: "enableHostOperations",
183
204
  values: [boolean]
@@ -220,10 +241,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
220
241
  functionFragment: "getRoleMemberCount",
221
242
  values: [BytesLike]
222
243
  ): string;
223
- encodeFunctionData(
224
- functionFragment: "getUnderlyingToken",
225
- values?: undefined
226
- ): string;
227
244
  encodeFunctionData(
228
245
  functionFragment: "grantRole",
229
246
  values: [BytesLike, string]
@@ -290,16 +307,20 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
290
307
  values: [string, string, BigNumberish]
291
308
  ): string;
292
309
  encodeFunctionData(
293
- functionFragment: "operationDowngrade",
294
- values: [string, BigNumberish]
310
+ functionFragment: "operationDecreaseAllowance",
311
+ values: [string, string, BigNumberish]
295
312
  ): string;
296
313
  encodeFunctionData(
297
- functionFragment: "operationTransferFrom",
298
- values: [string, string, string, BigNumberish]
314
+ functionFragment: "operationIncreaseAllowance",
315
+ values: [string, string, BigNumberish]
299
316
  ): string;
300
317
  encodeFunctionData(
301
- functionFragment: "operationUpgrade",
302
- values: [string, BigNumberish]
318
+ functionFragment: "operationSend",
319
+ values: [string, string, BigNumberish, BytesLike]
320
+ ): string;
321
+ encodeFunctionData(
322
+ functionFragment: "operationTransferFrom",
323
+ values: [string, string, string, BigNumberish]
303
324
  ): string;
304
325
  encodeFunctionData(
305
326
  functionFragment: "operatorBurn",
@@ -324,6 +345,14 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
324
345
  BytesLike
325
346
  ]
326
347
  ): string;
348
+ encodeFunctionData(
349
+ functionFragment: "poolAdminNFT",
350
+ values?: undefined
351
+ ): string;
352
+ encodeFunctionData(
353
+ functionFragment: "poolMemberNFT",
354
+ values?: undefined
355
+ ): string;
327
356
  encodeFunctionData(
328
357
  functionFragment: "proxiableUUID",
329
358
  values?: undefined
@@ -356,18 +385,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
356
385
  functionFragment: "selfApproveFor",
357
386
  values: [string, string, BigNumberish]
358
387
  ): string;
359
- encodeFunctionData(
360
- functionFragment: "selfBurn",
361
- values: [string, BigNumberish, BytesLike]
362
- ): string;
363
- encodeFunctionData(
364
- functionFragment: "selfMint",
365
- values: [string, BigNumberish, BytesLike]
366
- ): string;
367
- encodeFunctionData(
368
- functionFragment: "selfTransferFrom",
369
- values: [string, string, string, BigNumberish]
370
- ): string;
371
388
  encodeFunctionData(
372
389
  functionFragment: "send",
373
390
  values: [string, BigNumberish, BytesLike]
@@ -378,6 +395,10 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
378
395
  ): string;
379
396
  encodeFunctionData(functionFragment: "setFormula", values: [string]): string;
380
397
  encodeFunctionData(functionFragment: "setIdentity", values: [string]): string;
398
+ encodeFunctionData(
399
+ functionFragment: "setNFTProxyContracts",
400
+ values: [string, string, string, string]
401
+ ): string;
381
402
  encodeFunctionData(
382
403
  functionFragment: "settleBalance",
383
404
  values: [string, BigNumberish]
@@ -399,7 +420,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
399
420
  functionFragment: "transfer",
400
421
  values: [string, BigNumberish]
401
422
  ): string;
402
- encodeFunctionData(functionFragment: "transferAll", values: [string]): string;
403
423
  encodeFunctionData(
404
424
  functionFragment: "transferAndCall",
405
425
  values: [string, BigNumberish, BytesLike]
@@ -422,14 +442,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
422
442
  values: [string, BigNumberish, BytesLike[]]
423
443
  ): string;
424
444
  encodeFunctionData(functionFragment: "updateCode", values: [string]): string;
425
- encodeFunctionData(
426
- functionFragment: "upgrade",
427
- values: [BigNumberish]
428
- ): string;
429
- encodeFunctionData(
430
- functionFragment: "upgradeTo",
431
- values: [string, BigNumberish, BytesLike]
432
- ): string;
433
445
 
434
446
  decodeFunctionResult(
435
447
  functionFragment: "DEFAULT_ADMIN_ROLE",
@@ -460,10 +472,26 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
460
472
  decodeFunctionResult(functionFragment: "burnFrom", data: BytesLike): Result;
461
473
  decodeFunctionResult(functionFragment: "cap", data: BytesLike): Result;
462
474
  decodeFunctionResult(functionFragment: "castrate", data: BytesLike): Result;
475
+ decodeFunctionResult(
476
+ functionFragment: "constantInflowNFT",
477
+ data: BytesLike
478
+ ): Result;
479
+ decodeFunctionResult(
480
+ functionFragment: "constantOutflowNFT",
481
+ data: BytesLike
482
+ ): Result;
463
483
  decodeFunctionResult(
464
484
  functionFragment: "createAgreement",
465
485
  data: BytesLike
466
486
  ): Result;
487
+ decodeFunctionResult(
488
+ functionFragment: "creditGasFees",
489
+ data: BytesLike
490
+ ): Result;
491
+ decodeFunctionResult(
492
+ functionFragment: "debitGasFees",
493
+ data: BytesLike
494
+ ): Result;
467
495
  decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result;
468
496
  decodeFunctionResult(
469
497
  functionFragment: "decreaseAllowance",
@@ -477,7 +505,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
477
505
  functionFragment: "disableHostOperations",
478
506
  data: BytesLike
479
507
  ): Result;
480
- decodeFunctionResult(functionFragment: "downgrade", data: BytesLike): Result;
481
508
  decodeFunctionResult(
482
509
  functionFragment: "enableHostOperations",
483
510
  data: BytesLike
@@ -517,10 +544,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
517
544
  functionFragment: "getRoleMemberCount",
518
545
  data: BytesLike
519
546
  ): Result;
520
- decodeFunctionResult(
521
- functionFragment: "getUnderlyingToken",
522
- data: BytesLike
523
- ): Result;
524
547
  decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result;
525
548
  decodeFunctionResult(
526
549
  functionFragment: "granularity",
@@ -567,15 +590,19 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
567
590
  data: BytesLike
568
591
  ): Result;
569
592
  decodeFunctionResult(
570
- functionFragment: "operationDowngrade",
593
+ functionFragment: "operationDecreaseAllowance",
571
594
  data: BytesLike
572
595
  ): Result;
573
596
  decodeFunctionResult(
574
- functionFragment: "operationTransferFrom",
597
+ functionFragment: "operationIncreaseAllowance",
575
598
  data: BytesLike
576
599
  ): Result;
577
600
  decodeFunctionResult(
578
- functionFragment: "operationUpgrade",
601
+ functionFragment: "operationSend",
602
+ data: BytesLike
603
+ ): Result;
604
+ decodeFunctionResult(
605
+ functionFragment: "operationTransferFrom",
579
606
  data: BytesLike
580
607
  ): Result;
581
608
  decodeFunctionResult(
@@ -590,6 +617,14 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
590
617
  decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result;
591
618
  decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result;
592
619
  decodeFunctionResult(functionFragment: "permit", data: BytesLike): Result;
620
+ decodeFunctionResult(
621
+ functionFragment: "poolAdminNFT",
622
+ data: BytesLike
623
+ ): Result;
624
+ decodeFunctionResult(
625
+ functionFragment: "poolMemberNFT",
626
+ data: BytesLike
627
+ ): Result;
593
628
  decodeFunctionResult(
594
629
  functionFragment: "proxiableUUID",
595
630
  data: BytesLike
@@ -619,12 +654,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
619
654
  functionFragment: "selfApproveFor",
620
655
  data: BytesLike
621
656
  ): Result;
622
- decodeFunctionResult(functionFragment: "selfBurn", data: BytesLike): Result;
623
- decodeFunctionResult(functionFragment: "selfMint", data: BytesLike): Result;
624
- decodeFunctionResult(
625
- functionFragment: "selfTransferFrom",
626
- data: BytesLike
627
- ): Result;
628
657
  decodeFunctionResult(functionFragment: "send", data: BytesLike): Result;
629
658
  decodeFunctionResult(
630
659
  functionFragment: "setFeeRecipient",
@@ -635,6 +664,10 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
635
664
  functionFragment: "setIdentity",
636
665
  data: BytesLike
637
666
  ): Result;
667
+ decodeFunctionResult(
668
+ functionFragment: "setNFTProxyContracts",
669
+ data: BytesLike
670
+ ): Result;
638
671
  decodeFunctionResult(
639
672
  functionFragment: "settleBalance",
640
673
  data: BytesLike
@@ -653,10 +686,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
653
686
  data: BytesLike
654
687
  ): Result;
655
688
  decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
656
- decodeFunctionResult(
657
- functionFragment: "transferAll",
658
- data: BytesLike
659
- ): Result;
660
689
  decodeFunctionResult(
661
690
  functionFragment: "transferAndCall",
662
691
  data: BytesLike
@@ -679,8 +708,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
679
708
  data: BytesLike
680
709
  ): Result;
681
710
  decodeFunctionResult(functionFragment: "updateCode", data: BytesLike): Result;
682
- decodeFunctionResult(functionFragment: "upgrade", data: BytesLike): Result;
683
- decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result;
684
711
 
685
712
  events: {
686
713
  "AgreementCreated(address,bytes32,bytes32[])": EventFragment;
@@ -695,6 +722,8 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
695
722
  "Bailout(address,uint256)": EventFragment;
696
723
  "Burned(address,address,uint256,bytes,bytes)": EventFragment;
697
724
  "CodeUpdated(bytes32,address)": EventFragment;
725
+ "ConstantInflowNFTCreated(address)": EventFragment;
726
+ "ConstantOutflowNFTCreated(address)": EventFragment;
698
727
  "Initialized(uint8)": EventFragment;
699
728
  "Minted(address,address,uint256,bytes,bytes)": EventFragment;
700
729
  "Paused(address)": EventFragment;
@@ -703,8 +732,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
703
732
  "RoleGranted(bytes32,address,address)": EventFragment;
704
733
  "RoleRevoked(bytes32,address,address)": EventFragment;
705
734
  "Sent(address,address,address,uint256,bytes,bytes)": EventFragment;
706
- "TokenDowngraded(address,uint256)": EventFragment;
707
- "TokenUpgraded(address,uint256)": EventFragment;
708
735
  "Transfer(address,address,uint256,bytes)": EventFragment;
709
736
  "TransferFee(address,address,uint256,uint256,bool)": EventFragment;
710
737
  "Unpaused(address)": EventFragment;
@@ -722,6 +749,8 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
722
749
  getEvent(nameOrSignatureOrTopic: "Bailout"): EventFragment;
723
750
  getEvent(nameOrSignatureOrTopic: "Burned"): EventFragment;
724
751
  getEvent(nameOrSignatureOrTopic: "CodeUpdated"): EventFragment;
752
+ getEvent(nameOrSignatureOrTopic: "ConstantInflowNFTCreated"): EventFragment;
753
+ getEvent(nameOrSignatureOrTopic: "ConstantOutflowNFTCreated"): EventFragment;
725
754
  getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment;
726
755
  getEvent(nameOrSignatureOrTopic: "Minted"): EventFragment;
727
756
  getEvent(nameOrSignatureOrTopic: "Paused"): EventFragment;
@@ -730,8 +759,6 @@ export interface SuperGoodDollarInterface extends ethers.utils.Interface {
730
759
  getEvent(nameOrSignatureOrTopic: "RoleGranted"): EventFragment;
731
760
  getEvent(nameOrSignatureOrTopic: "RoleRevoked"): EventFragment;
732
761
  getEvent(nameOrSignatureOrTopic: "Sent"): EventFragment;
733
- getEvent(nameOrSignatureOrTopic: "TokenDowngraded"): EventFragment;
734
- getEvent(nameOrSignatureOrTopic: "TokenUpgraded"): EventFragment;
735
762
  getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment;
736
763
  getEvent(nameOrSignatureOrTopic: "TransferFee"): EventFragment;
737
764
  getEvent(nameOrSignatureOrTopic: "Unpaused"): EventFragment;
@@ -858,6 +885,22 @@ export type CodeUpdatedEvent = TypedEvent<
858
885
 
859
886
  export type CodeUpdatedEventFilter = TypedEventFilter<CodeUpdatedEvent>;
860
887
 
888
+ export type ConstantInflowNFTCreatedEvent = TypedEvent<
889
+ [string],
890
+ { constantInflowNFT: string }
891
+ >;
892
+
893
+ export type ConstantInflowNFTCreatedEventFilter =
894
+ TypedEventFilter<ConstantInflowNFTCreatedEvent>;
895
+
896
+ export type ConstantOutflowNFTCreatedEvent = TypedEvent<
897
+ [string],
898
+ { constantOutflowNFT: string }
899
+ >;
900
+
901
+ export type ConstantOutflowNFTCreatedEventFilter =
902
+ TypedEventFilter<ConstantOutflowNFTCreatedEvent>;
903
+
861
904
  export type InitializedEvent = TypedEvent<[number], { version: number }>;
862
905
 
863
906
  export type InitializedEventFilter = TypedEventFilter<InitializedEvent>;
@@ -922,20 +965,6 @@ export type SentEvent = TypedEvent<
922
965
 
923
966
  export type SentEventFilter = TypedEventFilter<SentEvent>;
924
967
 
925
- export type TokenDowngradedEvent = TypedEvent<
926
- [string, BigNumber],
927
- { account: string; amount: BigNumber }
928
- >;
929
-
930
- export type TokenDowngradedEventFilter = TypedEventFilter<TokenDowngradedEvent>;
931
-
932
- export type TokenUpgradedEvent = TypedEvent<
933
- [string, BigNumber],
934
- { account: string; amount: BigNumber }
935
- >;
936
-
937
- export type TokenUpgradedEventFilter = TypedEventFilter<TokenUpgradedEvent>;
938
-
939
968
  export type Transfer_address_address_uint256_bytes_Event = TypedEvent<
940
969
  [string, string, BigNumber, string],
941
970
  { from: string; to: string; value: BigNumber; data: string }
@@ -1059,12 +1088,34 @@ export interface SuperGoodDollar extends BaseContract {
1059
1088
  overrides?: Overrides & { from?: string | Promise<string> }
1060
1089
  ): Promise<ContractTransaction>;
1061
1090
 
1091
+ constantInflowNFT(overrides?: CallOverrides): Promise<[string]>;
1092
+
1093
+ constantOutflowNFT(overrides?: CallOverrides): Promise<[string]>;
1094
+
1062
1095
  createAgreement(
1063
1096
  id: BytesLike,
1064
1097
  data: BytesLike[],
1065
1098
  overrides?: Overrides & { from?: string | Promise<string> }
1066
1099
  ): Promise<ContractTransaction>;
1067
1100
 
1101
+ creditGasFees(
1102
+ from: string,
1103
+ feeRecipient: string,
1104
+ gatewayFeeRecipient: string,
1105
+ baseFeeRecipient: string,
1106
+ refund: BigNumberish,
1107
+ tipTxFee: BigNumberish,
1108
+ gatewayFee: BigNumberish,
1109
+ baseTxFee: BigNumberish,
1110
+ overrides?: Overrides & { from?: string | Promise<string> }
1111
+ ): Promise<ContractTransaction>;
1112
+
1113
+ debitGasFees(
1114
+ from: string,
1115
+ value: BigNumberish,
1116
+ overrides?: Overrides & { from?: string | Promise<string> }
1117
+ ): Promise<ContractTransaction>;
1118
+
1068
1119
  decimals(overrides?: CallOverrides): Promise<[number]>;
1069
1120
 
1070
1121
  decreaseAllowance(
@@ -1077,11 +1128,6 @@ export interface SuperGoodDollar extends BaseContract {
1077
1128
 
1078
1129
  disableHostOperations(overrides?: CallOverrides): Promise<[boolean]>;
1079
1130
 
1080
- downgrade(
1081
- amount: BigNumberish,
1082
- overrides?: Overrides & { from?: string | Promise<string> }
1083
- ): Promise<ContractTransaction>;
1084
-
1085
1131
  enableHostOperations(
1086
1132
  enabled: boolean,
1087
1133
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -1142,8 +1188,6 @@ export interface SuperGoodDollar extends BaseContract {
1142
1188
  overrides?: CallOverrides
1143
1189
  ): Promise<[BigNumber]>;
1144
1190
 
1145
- getUnderlyingToken(overrides?: CallOverrides): Promise<[string]>;
1146
-
1147
1191
  grantRole(
1148
1192
  role: BytesLike,
1149
1193
  account: string,
@@ -1174,7 +1218,7 @@ export interface SuperGoodDollar extends BaseContract {
1174
1218
  overrides?: Overrides & { from?: string | Promise<string> }
1175
1219
  ): Promise<ContractTransaction>;
1176
1220
 
1177
- "initialize(string,string,uint256,address,address,address,address)"(
1221
+ "initialize(string,string,uint256,address,address,address,address,address,address)"(
1178
1222
  n: string,
1179
1223
  s: string,
1180
1224
  _cap: BigNumberish,
@@ -1182,6 +1226,8 @@ export interface SuperGoodDollar extends BaseContract {
1182
1226
  _identity: string,
1183
1227
  _feeRecipient: string,
1184
1228
  _owner: string,
1229
+ _outflowNFT: string,
1230
+ _inflowNFT: string,
1185
1231
  overrides?: Overrides & { from?: string | Promise<string> }
1186
1232
  ): Promise<ContractTransaction>;
1187
1233
 
@@ -1245,22 +1291,32 @@ export interface SuperGoodDollar extends BaseContract {
1245
1291
  overrides?: Overrides & { from?: string | Promise<string> }
1246
1292
  ): Promise<ContractTransaction>;
1247
1293
 
1248
- operationDowngrade(
1294
+ operationDecreaseAllowance(
1249
1295
  account: string,
1250
- amount: BigNumberish,
1296
+ spender: string,
1297
+ subtractedValue: BigNumberish,
1251
1298
  overrides?: Overrides & { from?: string | Promise<string> }
1252
1299
  ): Promise<ContractTransaction>;
1253
1300
 
1254
- operationTransferFrom(
1301
+ operationIncreaseAllowance(
1255
1302
  account: string,
1303
+ spender: string,
1304
+ addedValue: BigNumberish,
1305
+ overrides?: Overrides & { from?: string | Promise<string> }
1306
+ ): Promise<ContractTransaction>;
1307
+
1308
+ operationSend(
1256
1309
  spender: string,
1257
1310
  recipient: string,
1258
1311
  amount: BigNumberish,
1312
+ userData: BytesLike,
1259
1313
  overrides?: Overrides & { from?: string | Promise<string> }
1260
1314
  ): Promise<ContractTransaction>;
1261
1315
 
1262
- operationUpgrade(
1316
+ operationTransferFrom(
1263
1317
  account: string,
1318
+ spender: string,
1319
+ recipient: string,
1264
1320
  amount: BigNumberish,
1265
1321
  overrides?: Overrides & { from?: string | Promise<string> }
1266
1322
  ): Promise<ContractTransaction>;
@@ -1301,6 +1357,10 @@ export interface SuperGoodDollar extends BaseContract {
1301
1357
  overrides?: Overrides & { from?: string | Promise<string> }
1302
1358
  ): Promise<ContractTransaction>;
1303
1359
 
1360
+ poolAdminNFT(overrides?: CallOverrides): Promise<[string]>;
1361
+
1362
+ poolMemberNFT(overrides?: CallOverrides): Promise<[string]>;
1363
+
1304
1364
  proxiableUUID(overrides?: CallOverrides): Promise<[string]>;
1305
1365
 
1306
1366
  realtimeBalanceOf(
@@ -1355,28 +1415,6 @@ export interface SuperGoodDollar extends BaseContract {
1355
1415
  overrides?: Overrides & { from?: string | Promise<string> }
1356
1416
  ): Promise<ContractTransaction>;
1357
1417
 
1358
- selfBurn(
1359
- account: string,
1360
- amount: BigNumberish,
1361
- userData: BytesLike,
1362
- overrides?: Overrides & { from?: string | Promise<string> }
1363
- ): Promise<ContractTransaction>;
1364
-
1365
- selfMint(
1366
- account: string,
1367
- amount: BigNumberish,
1368
- userData: BytesLike,
1369
- overrides?: Overrides & { from?: string | Promise<string> }
1370
- ): Promise<ContractTransaction>;
1371
-
1372
- selfTransferFrom(
1373
- holder: string,
1374
- spender: string,
1375
- recipient: string,
1376
- amount: BigNumberish,
1377
- overrides?: Overrides & { from?: string | Promise<string> }
1378
- ): Promise<ContractTransaction>;
1379
-
1380
1418
  send(
1381
1419
  recipient: string,
1382
1420
  amount: BigNumberish,
@@ -1399,6 +1437,14 @@ export interface SuperGoodDollar extends BaseContract {
1399
1437
  overrides?: Overrides & { from?: string | Promise<string> }
1400
1438
  ): Promise<ContractTransaction>;
1401
1439
 
1440
+ setNFTProxyContracts(
1441
+ _constantOutflowNFT: string,
1442
+ _constantInflowNFT: string,
1443
+ _poolAdminNFT: string,
1444
+ _poolMemberNFT: string,
1445
+ overrides?: Overrides & { from?: string | Promise<string> }
1446
+ ): Promise<ContractTransaction>;
1447
+
1402
1448
  settleBalance(
1403
1449
  account: string,
1404
1450
  delta: BigNumberish,
@@ -1426,11 +1472,6 @@ export interface SuperGoodDollar extends BaseContract {
1426
1472
  overrides?: Overrides & { from?: string | Promise<string> }
1427
1473
  ): Promise<ContractTransaction>;
1428
1474
 
1429
- transferAll(
1430
- recipient: string,
1431
- overrides?: Overrides & { from?: string | Promise<string> }
1432
- ): Promise<ContractTransaction>;
1433
-
1434
1475
  transferAndCall(
1435
1476
  to: string,
1436
1477
  amount: BigNumberish,
@@ -1471,18 +1512,6 @@ export interface SuperGoodDollar extends BaseContract {
1471
1512
  newAddress: string,
1472
1513
  overrides?: Overrides & { from?: string | Promise<string> }
1473
1514
  ): Promise<ContractTransaction>;
1474
-
1475
- upgrade(
1476
- amount: BigNumberish,
1477
- overrides?: Overrides & { from?: string | Promise<string> }
1478
- ): Promise<ContractTransaction>;
1479
-
1480
- upgradeTo(
1481
- to: string,
1482
- amount: BigNumberish,
1483
- data: BytesLike,
1484
- overrides?: Overrides & { from?: string | Promise<string> }
1485
- ): Promise<ContractTransaction>;
1486
1515
  };
1487
1516
 
1488
1517
  DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<string>;
@@ -1545,12 +1574,34 @@ export interface SuperGoodDollar extends BaseContract {
1545
1574
  overrides?: Overrides & { from?: string | Promise<string> }
1546
1575
  ): Promise<ContractTransaction>;
1547
1576
 
1577
+ constantInflowNFT(overrides?: CallOverrides): Promise<string>;
1578
+
1579
+ constantOutflowNFT(overrides?: CallOverrides): Promise<string>;
1580
+
1548
1581
  createAgreement(
1549
1582
  id: BytesLike,
1550
1583
  data: BytesLike[],
1551
1584
  overrides?: Overrides & { from?: string | Promise<string> }
1552
1585
  ): Promise<ContractTransaction>;
1553
1586
 
1587
+ creditGasFees(
1588
+ from: string,
1589
+ feeRecipient: string,
1590
+ gatewayFeeRecipient: string,
1591
+ baseFeeRecipient: string,
1592
+ refund: BigNumberish,
1593
+ tipTxFee: BigNumberish,
1594
+ gatewayFee: BigNumberish,
1595
+ baseTxFee: BigNumberish,
1596
+ overrides?: Overrides & { from?: string | Promise<string> }
1597
+ ): Promise<ContractTransaction>;
1598
+
1599
+ debitGasFees(
1600
+ from: string,
1601
+ value: BigNumberish,
1602
+ overrides?: Overrides & { from?: string | Promise<string> }
1603
+ ): Promise<ContractTransaction>;
1604
+
1554
1605
  decimals(overrides?: CallOverrides): Promise<number>;
1555
1606
 
1556
1607
  decreaseAllowance(
@@ -1563,11 +1614,6 @@ export interface SuperGoodDollar extends BaseContract {
1563
1614
 
1564
1615
  disableHostOperations(overrides?: CallOverrides): Promise<boolean>;
1565
1616
 
1566
- downgrade(
1567
- amount: BigNumberish,
1568
- overrides?: Overrides & { from?: string | Promise<string> }
1569
- ): Promise<ContractTransaction>;
1570
-
1571
1617
  enableHostOperations(
1572
1618
  enabled: boolean,
1573
1619
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -1626,8 +1672,6 @@ export interface SuperGoodDollar extends BaseContract {
1626
1672
  overrides?: CallOverrides
1627
1673
  ): Promise<BigNumber>;
1628
1674
 
1629
- getUnderlyingToken(overrides?: CallOverrides): Promise<string>;
1630
-
1631
1675
  grantRole(
1632
1676
  role: BytesLike,
1633
1677
  account: string,
@@ -1658,7 +1702,7 @@ export interface SuperGoodDollar extends BaseContract {
1658
1702
  overrides?: Overrides & { from?: string | Promise<string> }
1659
1703
  ): Promise<ContractTransaction>;
1660
1704
 
1661
- "initialize(string,string,uint256,address,address,address,address)"(
1705
+ "initialize(string,string,uint256,address,address,address,address,address,address)"(
1662
1706
  n: string,
1663
1707
  s: string,
1664
1708
  _cap: BigNumberish,
@@ -1666,6 +1710,8 @@ export interface SuperGoodDollar extends BaseContract {
1666
1710
  _identity: string,
1667
1711
  _feeRecipient: string,
1668
1712
  _owner: string,
1713
+ _outflowNFT: string,
1714
+ _inflowNFT: string,
1669
1715
  overrides?: Overrides & { from?: string | Promise<string> }
1670
1716
  ): Promise<ContractTransaction>;
1671
1717
 
@@ -1729,22 +1775,32 @@ export interface SuperGoodDollar extends BaseContract {
1729
1775
  overrides?: Overrides & { from?: string | Promise<string> }
1730
1776
  ): Promise<ContractTransaction>;
1731
1777
 
1732
- operationDowngrade(
1778
+ operationDecreaseAllowance(
1733
1779
  account: string,
1734
- amount: BigNumberish,
1780
+ spender: string,
1781
+ subtractedValue: BigNumberish,
1735
1782
  overrides?: Overrides & { from?: string | Promise<string> }
1736
1783
  ): Promise<ContractTransaction>;
1737
1784
 
1738
- operationTransferFrom(
1785
+ operationIncreaseAllowance(
1739
1786
  account: string,
1787
+ spender: string,
1788
+ addedValue: BigNumberish,
1789
+ overrides?: Overrides & { from?: string | Promise<string> }
1790
+ ): Promise<ContractTransaction>;
1791
+
1792
+ operationSend(
1740
1793
  spender: string,
1741
1794
  recipient: string,
1742
1795
  amount: BigNumberish,
1796
+ userData: BytesLike,
1743
1797
  overrides?: Overrides & { from?: string | Promise<string> }
1744
1798
  ): Promise<ContractTransaction>;
1745
1799
 
1746
- operationUpgrade(
1800
+ operationTransferFrom(
1747
1801
  account: string,
1802
+ spender: string,
1803
+ recipient: string,
1748
1804
  amount: BigNumberish,
1749
1805
  overrides?: Overrides & { from?: string | Promise<string> }
1750
1806
  ): Promise<ContractTransaction>;
@@ -1785,6 +1841,10 @@ export interface SuperGoodDollar extends BaseContract {
1785
1841
  overrides?: Overrides & { from?: string | Promise<string> }
1786
1842
  ): Promise<ContractTransaction>;
1787
1843
 
1844
+ poolAdminNFT(overrides?: CallOverrides): Promise<string>;
1845
+
1846
+ poolMemberNFT(overrides?: CallOverrides): Promise<string>;
1847
+
1788
1848
  proxiableUUID(overrides?: CallOverrides): Promise<string>;
1789
1849
 
1790
1850
  realtimeBalanceOf(
@@ -1839,28 +1899,6 @@ export interface SuperGoodDollar extends BaseContract {
1839
1899
  overrides?: Overrides & { from?: string | Promise<string> }
1840
1900
  ): Promise<ContractTransaction>;
1841
1901
 
1842
- selfBurn(
1843
- account: string,
1844
- amount: BigNumberish,
1845
- userData: BytesLike,
1846
- overrides?: Overrides & { from?: string | Promise<string> }
1847
- ): Promise<ContractTransaction>;
1848
-
1849
- selfMint(
1850
- account: string,
1851
- amount: BigNumberish,
1852
- userData: BytesLike,
1853
- overrides?: Overrides & { from?: string | Promise<string> }
1854
- ): Promise<ContractTransaction>;
1855
-
1856
- selfTransferFrom(
1857
- holder: string,
1858
- spender: string,
1859
- recipient: string,
1860
- amount: BigNumberish,
1861
- overrides?: Overrides & { from?: string | Promise<string> }
1862
- ): Promise<ContractTransaction>;
1863
-
1864
1902
  send(
1865
1903
  recipient: string,
1866
1904
  amount: BigNumberish,
@@ -1883,6 +1921,14 @@ export interface SuperGoodDollar extends BaseContract {
1883
1921
  overrides?: Overrides & { from?: string | Promise<string> }
1884
1922
  ): Promise<ContractTransaction>;
1885
1923
 
1924
+ setNFTProxyContracts(
1925
+ _constantOutflowNFT: string,
1926
+ _constantInflowNFT: string,
1927
+ _poolAdminNFT: string,
1928
+ _poolMemberNFT: string,
1929
+ overrides?: Overrides & { from?: string | Promise<string> }
1930
+ ): Promise<ContractTransaction>;
1931
+
1886
1932
  settleBalance(
1887
1933
  account: string,
1888
1934
  delta: BigNumberish,
@@ -1910,11 +1956,6 @@ export interface SuperGoodDollar extends BaseContract {
1910
1956
  overrides?: Overrides & { from?: string | Promise<string> }
1911
1957
  ): Promise<ContractTransaction>;
1912
1958
 
1913
- transferAll(
1914
- recipient: string,
1915
- overrides?: Overrides & { from?: string | Promise<string> }
1916
- ): Promise<ContractTransaction>;
1917
-
1918
1959
  transferAndCall(
1919
1960
  to: string,
1920
1961
  amount: BigNumberish,
@@ -1956,18 +1997,6 @@ export interface SuperGoodDollar extends BaseContract {
1956
1997
  overrides?: Overrides & { from?: string | Promise<string> }
1957
1998
  ): Promise<ContractTransaction>;
1958
1999
 
1959
- upgrade(
1960
- amount: BigNumberish,
1961
- overrides?: Overrides & { from?: string | Promise<string> }
1962
- ): Promise<ContractTransaction>;
1963
-
1964
- upgradeTo(
1965
- to: string,
1966
- amount: BigNumberish,
1967
- data: BytesLike,
1968
- overrides?: Overrides & { from?: string | Promise<string> }
1969
- ): Promise<ContractTransaction>;
1970
-
1971
2000
  callStatic: {
1972
2001
  DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<string>;
1973
2002
 
@@ -2021,12 +2050,34 @@ export interface SuperGoodDollar extends BaseContract {
2021
2050
 
2022
2051
  castrate(overrides?: CallOverrides): Promise<void>;
2023
2052
 
2053
+ constantInflowNFT(overrides?: CallOverrides): Promise<string>;
2054
+
2055
+ constantOutflowNFT(overrides?: CallOverrides): Promise<string>;
2056
+
2024
2057
  createAgreement(
2025
2058
  id: BytesLike,
2026
2059
  data: BytesLike[],
2027
2060
  overrides?: CallOverrides
2028
2061
  ): Promise<void>;
2029
2062
 
2063
+ creditGasFees(
2064
+ from: string,
2065
+ feeRecipient: string,
2066
+ gatewayFeeRecipient: string,
2067
+ baseFeeRecipient: string,
2068
+ refund: BigNumberish,
2069
+ tipTxFee: BigNumberish,
2070
+ gatewayFee: BigNumberish,
2071
+ baseTxFee: BigNumberish,
2072
+ overrides?: CallOverrides
2073
+ ): Promise<void>;
2074
+
2075
+ debitGasFees(
2076
+ from: string,
2077
+ value: BigNumberish,
2078
+ overrides?: CallOverrides
2079
+ ): Promise<void>;
2080
+
2030
2081
  decimals(overrides?: CallOverrides): Promise<number>;
2031
2082
 
2032
2083
  decreaseAllowance(
@@ -2039,8 +2090,6 @@ export interface SuperGoodDollar extends BaseContract {
2039
2090
 
2040
2091
  disableHostOperations(overrides?: CallOverrides): Promise<boolean>;
2041
2092
 
2042
- downgrade(amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
2043
-
2044
2093
  enableHostOperations(
2045
2094
  enabled: boolean,
2046
2095
  overrides?: CallOverrides
@@ -2099,8 +2148,6 @@ export interface SuperGoodDollar extends BaseContract {
2099
2148
  overrides?: CallOverrides
2100
2149
  ): Promise<BigNumber>;
2101
2150
 
2102
- getUnderlyingToken(overrides?: CallOverrides): Promise<string>;
2103
-
2104
2151
  grantRole(
2105
2152
  role: BytesLike,
2106
2153
  account: string,
@@ -2131,7 +2178,7 @@ export interface SuperGoodDollar extends BaseContract {
2131
2178
  overrides?: CallOverrides
2132
2179
  ): Promise<void>;
2133
2180
 
2134
- "initialize(string,string,uint256,address,address,address,address)"(
2181
+ "initialize(string,string,uint256,address,address,address,address,address,address)"(
2135
2182
  n: string,
2136
2183
  s: string,
2137
2184
  _cap: BigNumberish,
@@ -2139,6 +2186,8 @@ export interface SuperGoodDollar extends BaseContract {
2139
2186
  _identity: string,
2140
2187
  _feeRecipient: string,
2141
2188
  _owner: string,
2189
+ _outflowNFT: string,
2190
+ _inflowNFT: string,
2142
2191
  overrides?: CallOverrides
2143
2192
  ): Promise<void>;
2144
2193
 
@@ -2202,22 +2251,32 @@ export interface SuperGoodDollar extends BaseContract {
2202
2251
  overrides?: CallOverrides
2203
2252
  ): Promise<void>;
2204
2253
 
2205
- operationDowngrade(
2254
+ operationDecreaseAllowance(
2206
2255
  account: string,
2207
- amount: BigNumberish,
2256
+ spender: string,
2257
+ subtractedValue: BigNumberish,
2208
2258
  overrides?: CallOverrides
2209
2259
  ): Promise<void>;
2210
2260
 
2211
- operationTransferFrom(
2261
+ operationIncreaseAllowance(
2212
2262
  account: string,
2263
+ spender: string,
2264
+ addedValue: BigNumberish,
2265
+ overrides?: CallOverrides
2266
+ ): Promise<void>;
2267
+
2268
+ operationSend(
2213
2269
  spender: string,
2214
2270
  recipient: string,
2215
2271
  amount: BigNumberish,
2272
+ userData: BytesLike,
2216
2273
  overrides?: CallOverrides
2217
2274
  ): Promise<void>;
2218
2275
 
2219
- operationUpgrade(
2276
+ operationTransferFrom(
2220
2277
  account: string,
2278
+ spender: string,
2279
+ recipient: string,
2221
2280
  amount: BigNumberish,
2222
2281
  overrides?: CallOverrides
2223
2282
  ): Promise<void>;
@@ -2256,6 +2315,10 @@ export interface SuperGoodDollar extends BaseContract {
2256
2315
  overrides?: CallOverrides
2257
2316
  ): Promise<void>;
2258
2317
 
2318
+ poolAdminNFT(overrides?: CallOverrides): Promise<string>;
2319
+
2320
+ poolMemberNFT(overrides?: CallOverrides): Promise<string>;
2321
+
2259
2322
  proxiableUUID(overrides?: CallOverrides): Promise<string>;
2260
2323
 
2261
2324
  realtimeBalanceOf(
@@ -2305,28 +2368,6 @@ export interface SuperGoodDollar extends BaseContract {
2305
2368
  overrides?: CallOverrides
2306
2369
  ): Promise<void>;
2307
2370
 
2308
- selfBurn(
2309
- account: string,
2310
- amount: BigNumberish,
2311
- userData: BytesLike,
2312
- overrides?: CallOverrides
2313
- ): Promise<void>;
2314
-
2315
- selfMint(
2316
- account: string,
2317
- amount: BigNumberish,
2318
- userData: BytesLike,
2319
- overrides?: CallOverrides
2320
- ): Promise<void>;
2321
-
2322
- selfTransferFrom(
2323
- holder: string,
2324
- spender: string,
2325
- recipient: string,
2326
- amount: BigNumberish,
2327
- overrides?: CallOverrides
2328
- ): Promise<void>;
2329
-
2330
2371
  send(
2331
2372
  recipient: string,
2332
2373
  amount: BigNumberish,
@@ -2343,6 +2384,14 @@ export interface SuperGoodDollar extends BaseContract {
2343
2384
 
2344
2385
  setIdentity(_identity: string, overrides?: CallOverrides): Promise<void>;
2345
2386
 
2387
+ setNFTProxyContracts(
2388
+ _constantOutflowNFT: string,
2389
+ _constantInflowNFT: string,
2390
+ _poolAdminNFT: string,
2391
+ _poolMemberNFT: string,
2392
+ overrides?: CallOverrides
2393
+ ): Promise<void>;
2394
+
2346
2395
  settleBalance(
2347
2396
  account: string,
2348
2397
  delta: BigNumberish,
@@ -2370,8 +2419,6 @@ export interface SuperGoodDollar extends BaseContract {
2370
2419
  overrides?: CallOverrides
2371
2420
  ): Promise<boolean>;
2372
2421
 
2373
- transferAll(recipient: string, overrides?: CallOverrides): Promise<void>;
2374
-
2375
2422
  transferAndCall(
2376
2423
  to: string,
2377
2424
  amount: BigNumberish,
@@ -2404,15 +2451,6 @@ export interface SuperGoodDollar extends BaseContract {
2404
2451
  ): Promise<void>;
2405
2452
 
2406
2453
  updateCode(newAddress: string, overrides?: CallOverrides): Promise<void>;
2407
-
2408
- upgrade(amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
2409
-
2410
- upgradeTo(
2411
- to: string,
2412
- amount: BigNumberish,
2413
- data: BytesLike,
2414
- overrides?: CallOverrides
2415
- ): Promise<void>;
2416
2454
  };
2417
2455
 
2418
2456
  filters: {
@@ -2563,6 +2601,20 @@ export interface SuperGoodDollar extends BaseContract {
2563
2601
  ): CodeUpdatedEventFilter;
2564
2602
  CodeUpdated(uuid?: null, codeAddress?: null): CodeUpdatedEventFilter;
2565
2603
 
2604
+ "ConstantInflowNFTCreated(address)"(
2605
+ constantInflowNFT?: string | null
2606
+ ): ConstantInflowNFTCreatedEventFilter;
2607
+ ConstantInflowNFTCreated(
2608
+ constantInflowNFT?: string | null
2609
+ ): ConstantInflowNFTCreatedEventFilter;
2610
+
2611
+ "ConstantOutflowNFTCreated(address)"(
2612
+ constantOutflowNFT?: string | null
2613
+ ): ConstantOutflowNFTCreatedEventFilter;
2614
+ ConstantOutflowNFTCreated(
2615
+ constantOutflowNFT?: string | null
2616
+ ): ConstantOutflowNFTCreatedEventFilter;
2617
+
2566
2618
  "Initialized(uint8)"(version?: null): InitializedEventFilter;
2567
2619
  Initialized(version?: null): InitializedEventFilter;
2568
2620
 
@@ -2643,24 +2695,6 @@ export interface SuperGoodDollar extends BaseContract {
2643
2695
  operatorData?: null
2644
2696
  ): SentEventFilter;
2645
2697
 
2646
- "TokenDowngraded(address,uint256)"(
2647
- account?: string | null,
2648
- amount?: null
2649
- ): TokenDowngradedEventFilter;
2650
- TokenDowngraded(
2651
- account?: string | null,
2652
- amount?: null
2653
- ): TokenDowngradedEventFilter;
2654
-
2655
- "TokenUpgraded(address,uint256)"(
2656
- account?: string | null,
2657
- amount?: null
2658
- ): TokenUpgradedEventFilter;
2659
- TokenUpgraded(
2660
- account?: string | null,
2661
- amount?: null
2662
- ): TokenUpgradedEventFilter;
2663
-
2664
2698
  "Transfer(address,address,uint256,bytes)"(
2665
2699
  from?: string | null,
2666
2700
  to?: string | null,
@@ -2753,12 +2787,34 @@ export interface SuperGoodDollar extends BaseContract {
2753
2787
  overrides?: Overrides & { from?: string | Promise<string> }
2754
2788
  ): Promise<BigNumber>;
2755
2789
 
2790
+ constantInflowNFT(overrides?: CallOverrides): Promise<BigNumber>;
2791
+
2792
+ constantOutflowNFT(overrides?: CallOverrides): Promise<BigNumber>;
2793
+
2756
2794
  createAgreement(
2757
2795
  id: BytesLike,
2758
2796
  data: BytesLike[],
2759
2797
  overrides?: Overrides & { from?: string | Promise<string> }
2760
2798
  ): Promise<BigNumber>;
2761
2799
 
2800
+ creditGasFees(
2801
+ from: string,
2802
+ feeRecipient: string,
2803
+ gatewayFeeRecipient: string,
2804
+ baseFeeRecipient: string,
2805
+ refund: BigNumberish,
2806
+ tipTxFee: BigNumberish,
2807
+ gatewayFee: BigNumberish,
2808
+ baseTxFee: BigNumberish,
2809
+ overrides?: Overrides & { from?: string | Promise<string> }
2810
+ ): Promise<BigNumber>;
2811
+
2812
+ debitGasFees(
2813
+ from: string,
2814
+ value: BigNumberish,
2815
+ overrides?: Overrides & { from?: string | Promise<string> }
2816
+ ): Promise<BigNumber>;
2817
+
2762
2818
  decimals(overrides?: CallOverrides): Promise<BigNumber>;
2763
2819
 
2764
2820
  decreaseAllowance(
@@ -2771,11 +2827,6 @@ export interface SuperGoodDollar extends BaseContract {
2771
2827
 
2772
2828
  disableHostOperations(overrides?: CallOverrides): Promise<BigNumber>;
2773
2829
 
2774
- downgrade(
2775
- amount: BigNumberish,
2776
- overrides?: Overrides & { from?: string | Promise<string> }
2777
- ): Promise<BigNumber>;
2778
-
2779
2830
  enableHostOperations(
2780
2831
  enabled: boolean,
2781
2832
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -2837,8 +2888,6 @@ export interface SuperGoodDollar extends BaseContract {
2837
2888
  overrides?: CallOverrides
2838
2889
  ): Promise<BigNumber>;
2839
2890
 
2840
- getUnderlyingToken(overrides?: CallOverrides): Promise<BigNumber>;
2841
-
2842
2891
  grantRole(
2843
2892
  role: BytesLike,
2844
2893
  account: string,
@@ -2869,7 +2918,7 @@ export interface SuperGoodDollar extends BaseContract {
2869
2918
  overrides?: Overrides & { from?: string | Promise<string> }
2870
2919
  ): Promise<BigNumber>;
2871
2920
 
2872
- "initialize(string,string,uint256,address,address,address,address)"(
2921
+ "initialize(string,string,uint256,address,address,address,address,address,address)"(
2873
2922
  n: string,
2874
2923
  s: string,
2875
2924
  _cap: BigNumberish,
@@ -2877,6 +2926,8 @@ export interface SuperGoodDollar extends BaseContract {
2877
2926
  _identity: string,
2878
2927
  _feeRecipient: string,
2879
2928
  _owner: string,
2929
+ _outflowNFT: string,
2930
+ _inflowNFT: string,
2880
2931
  overrides?: Overrides & { from?: string | Promise<string> }
2881
2932
  ): Promise<BigNumber>;
2882
2933
 
@@ -2940,22 +2991,32 @@ export interface SuperGoodDollar extends BaseContract {
2940
2991
  overrides?: Overrides & { from?: string | Promise<string> }
2941
2992
  ): Promise<BigNumber>;
2942
2993
 
2943
- operationDowngrade(
2994
+ operationDecreaseAllowance(
2944
2995
  account: string,
2945
- amount: BigNumberish,
2996
+ spender: string,
2997
+ subtractedValue: BigNumberish,
2946
2998
  overrides?: Overrides & { from?: string | Promise<string> }
2947
2999
  ): Promise<BigNumber>;
2948
3000
 
2949
- operationTransferFrom(
3001
+ operationIncreaseAllowance(
2950
3002
  account: string,
3003
+ spender: string,
3004
+ addedValue: BigNumberish,
3005
+ overrides?: Overrides & { from?: string | Promise<string> }
3006
+ ): Promise<BigNumber>;
3007
+
3008
+ operationSend(
2951
3009
  spender: string,
2952
3010
  recipient: string,
2953
3011
  amount: BigNumberish,
3012
+ userData: BytesLike,
2954
3013
  overrides?: Overrides & { from?: string | Promise<string> }
2955
3014
  ): Promise<BigNumber>;
2956
3015
 
2957
- operationUpgrade(
3016
+ operationTransferFrom(
2958
3017
  account: string,
3018
+ spender: string,
3019
+ recipient: string,
2959
3020
  amount: BigNumberish,
2960
3021
  overrides?: Overrides & { from?: string | Promise<string> }
2961
3022
  ): Promise<BigNumber>;
@@ -2996,6 +3057,10 @@ export interface SuperGoodDollar extends BaseContract {
2996
3057
  overrides?: Overrides & { from?: string | Promise<string> }
2997
3058
  ): Promise<BigNumber>;
2998
3059
 
3060
+ poolAdminNFT(overrides?: CallOverrides): Promise<BigNumber>;
3061
+
3062
+ poolMemberNFT(overrides?: CallOverrides): Promise<BigNumber>;
3063
+
2999
3064
  proxiableUUID(overrides?: CallOverrides): Promise<BigNumber>;
3000
3065
 
3001
3066
  realtimeBalanceOf(
@@ -3037,28 +3102,6 @@ export interface SuperGoodDollar extends BaseContract {
3037
3102
  overrides?: Overrides & { from?: string | Promise<string> }
3038
3103
  ): Promise<BigNumber>;
3039
3104
 
3040
- selfBurn(
3041
- account: string,
3042
- amount: BigNumberish,
3043
- userData: BytesLike,
3044
- overrides?: Overrides & { from?: string | Promise<string> }
3045
- ): Promise<BigNumber>;
3046
-
3047
- selfMint(
3048
- account: string,
3049
- amount: BigNumberish,
3050
- userData: BytesLike,
3051
- overrides?: Overrides & { from?: string | Promise<string> }
3052
- ): Promise<BigNumber>;
3053
-
3054
- selfTransferFrom(
3055
- holder: string,
3056
- spender: string,
3057
- recipient: string,
3058
- amount: BigNumberish,
3059
- overrides?: Overrides & { from?: string | Promise<string> }
3060
- ): Promise<BigNumber>;
3061
-
3062
3105
  send(
3063
3106
  recipient: string,
3064
3107
  amount: BigNumberish,
@@ -3081,6 +3124,14 @@ export interface SuperGoodDollar extends BaseContract {
3081
3124
  overrides?: Overrides & { from?: string | Promise<string> }
3082
3125
  ): Promise<BigNumber>;
3083
3126
 
3127
+ setNFTProxyContracts(
3128
+ _constantOutflowNFT: string,
3129
+ _constantInflowNFT: string,
3130
+ _poolAdminNFT: string,
3131
+ _poolMemberNFT: string,
3132
+ overrides?: Overrides & { from?: string | Promise<string> }
3133
+ ): Promise<BigNumber>;
3134
+
3084
3135
  settleBalance(
3085
3136
  account: string,
3086
3137
  delta: BigNumberish,
@@ -3108,11 +3159,6 @@ export interface SuperGoodDollar extends BaseContract {
3108
3159
  overrides?: Overrides & { from?: string | Promise<string> }
3109
3160
  ): Promise<BigNumber>;
3110
3161
 
3111
- transferAll(
3112
- recipient: string,
3113
- overrides?: Overrides & { from?: string | Promise<string> }
3114
- ): Promise<BigNumber>;
3115
-
3116
3162
  transferAndCall(
3117
3163
  to: string,
3118
3164
  amount: BigNumberish,
@@ -3153,18 +3199,6 @@ export interface SuperGoodDollar extends BaseContract {
3153
3199
  newAddress: string,
3154
3200
  overrides?: Overrides & { from?: string | Promise<string> }
3155
3201
  ): Promise<BigNumber>;
3156
-
3157
- upgrade(
3158
- amount: BigNumberish,
3159
- overrides?: Overrides & { from?: string | Promise<string> }
3160
- ): Promise<BigNumber>;
3161
-
3162
- upgradeTo(
3163
- to: string,
3164
- amount: BigNumberish,
3165
- data: BytesLike,
3166
- overrides?: Overrides & { from?: string | Promise<string> }
3167
- ): Promise<BigNumber>;
3168
3202
  };
3169
3203
 
3170
3204
  populateTransaction: {
@@ -3233,12 +3267,36 @@ export interface SuperGoodDollar extends BaseContract {
3233
3267
  overrides?: Overrides & { from?: string | Promise<string> }
3234
3268
  ): Promise<PopulatedTransaction>;
3235
3269
 
3270
+ constantInflowNFT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
3271
+
3272
+ constantOutflowNFT(
3273
+ overrides?: CallOverrides
3274
+ ): Promise<PopulatedTransaction>;
3275
+
3236
3276
  createAgreement(
3237
3277
  id: BytesLike,
3238
3278
  data: BytesLike[],
3239
3279
  overrides?: Overrides & { from?: string | Promise<string> }
3240
3280
  ): Promise<PopulatedTransaction>;
3241
3281
 
3282
+ creditGasFees(
3283
+ from: string,
3284
+ feeRecipient: string,
3285
+ gatewayFeeRecipient: string,
3286
+ baseFeeRecipient: string,
3287
+ refund: BigNumberish,
3288
+ tipTxFee: BigNumberish,
3289
+ gatewayFee: BigNumberish,
3290
+ baseTxFee: BigNumberish,
3291
+ overrides?: Overrides & { from?: string | Promise<string> }
3292
+ ): Promise<PopulatedTransaction>;
3293
+
3294
+ debitGasFees(
3295
+ from: string,
3296
+ value: BigNumberish,
3297
+ overrides?: Overrides & { from?: string | Promise<string> }
3298
+ ): Promise<PopulatedTransaction>;
3299
+
3242
3300
  decimals(overrides?: CallOverrides): Promise<PopulatedTransaction>;
3243
3301
 
3244
3302
  decreaseAllowance(
@@ -3253,11 +3311,6 @@ export interface SuperGoodDollar extends BaseContract {
3253
3311
  overrides?: CallOverrides
3254
3312
  ): Promise<PopulatedTransaction>;
3255
3313
 
3256
- downgrade(
3257
- amount: BigNumberish,
3258
- overrides?: Overrides & { from?: string | Promise<string> }
3259
- ): Promise<PopulatedTransaction>;
3260
-
3261
3314
  enableHostOperations(
3262
3315
  enabled: boolean,
3263
3316
  overrides?: Overrides & { from?: string | Promise<string> }
@@ -3319,10 +3372,6 @@ export interface SuperGoodDollar extends BaseContract {
3319
3372
  overrides?: CallOverrides
3320
3373
  ): Promise<PopulatedTransaction>;
3321
3374
 
3322
- getUnderlyingToken(
3323
- overrides?: CallOverrides
3324
- ): Promise<PopulatedTransaction>;
3325
-
3326
3375
  grantRole(
3327
3376
  role: BytesLike,
3328
3377
  account: string,
@@ -3353,7 +3402,7 @@ export interface SuperGoodDollar extends BaseContract {
3353
3402
  overrides?: Overrides & { from?: string | Promise<string> }
3354
3403
  ): Promise<PopulatedTransaction>;
3355
3404
 
3356
- "initialize(string,string,uint256,address,address,address,address)"(
3405
+ "initialize(string,string,uint256,address,address,address,address,address,address)"(
3357
3406
  n: string,
3358
3407
  s: string,
3359
3408
  _cap: BigNumberish,
@@ -3361,6 +3410,8 @@ export interface SuperGoodDollar extends BaseContract {
3361
3410
  _identity: string,
3362
3411
  _feeRecipient: string,
3363
3412
  _owner: string,
3413
+ _outflowNFT: string,
3414
+ _inflowNFT: string,
3364
3415
  overrides?: Overrides & { from?: string | Promise<string> }
3365
3416
  ): Promise<PopulatedTransaction>;
3366
3417
 
@@ -3433,22 +3484,32 @@ export interface SuperGoodDollar extends BaseContract {
3433
3484
  overrides?: Overrides & { from?: string | Promise<string> }
3434
3485
  ): Promise<PopulatedTransaction>;
3435
3486
 
3436
- operationDowngrade(
3487
+ operationDecreaseAllowance(
3437
3488
  account: string,
3438
- amount: BigNumberish,
3489
+ spender: string,
3490
+ subtractedValue: BigNumberish,
3439
3491
  overrides?: Overrides & { from?: string | Promise<string> }
3440
3492
  ): Promise<PopulatedTransaction>;
3441
3493
 
3442
- operationTransferFrom(
3494
+ operationIncreaseAllowance(
3443
3495
  account: string,
3496
+ spender: string,
3497
+ addedValue: BigNumberish,
3498
+ overrides?: Overrides & { from?: string | Promise<string> }
3499
+ ): Promise<PopulatedTransaction>;
3500
+
3501
+ operationSend(
3444
3502
  spender: string,
3445
3503
  recipient: string,
3446
3504
  amount: BigNumberish,
3505
+ userData: BytesLike,
3447
3506
  overrides?: Overrides & { from?: string | Promise<string> }
3448
3507
  ): Promise<PopulatedTransaction>;
3449
3508
 
3450
- operationUpgrade(
3509
+ operationTransferFrom(
3451
3510
  account: string,
3511
+ spender: string,
3512
+ recipient: string,
3452
3513
  amount: BigNumberish,
3453
3514
  overrides?: Overrides & { from?: string | Promise<string> }
3454
3515
  ): Promise<PopulatedTransaction>;
@@ -3489,6 +3550,10 @@ export interface SuperGoodDollar extends BaseContract {
3489
3550
  overrides?: Overrides & { from?: string | Promise<string> }
3490
3551
  ): Promise<PopulatedTransaction>;
3491
3552
 
3553
+ poolAdminNFT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
3554
+
3555
+ poolMemberNFT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
3556
+
3492
3557
  proxiableUUID(overrides?: CallOverrides): Promise<PopulatedTransaction>;
3493
3558
 
3494
3559
  realtimeBalanceOf(
@@ -3530,28 +3595,6 @@ export interface SuperGoodDollar extends BaseContract {
3530
3595
  overrides?: Overrides & { from?: string | Promise<string> }
3531
3596
  ): Promise<PopulatedTransaction>;
3532
3597
 
3533
- selfBurn(
3534
- account: string,
3535
- amount: BigNumberish,
3536
- userData: BytesLike,
3537
- overrides?: Overrides & { from?: string | Promise<string> }
3538
- ): Promise<PopulatedTransaction>;
3539
-
3540
- selfMint(
3541
- account: string,
3542
- amount: BigNumberish,
3543
- userData: BytesLike,
3544
- overrides?: Overrides & { from?: string | Promise<string> }
3545
- ): Promise<PopulatedTransaction>;
3546
-
3547
- selfTransferFrom(
3548
- holder: string,
3549
- spender: string,
3550
- recipient: string,
3551
- amount: BigNumberish,
3552
- overrides?: Overrides & { from?: string | Promise<string> }
3553
- ): Promise<PopulatedTransaction>;
3554
-
3555
3598
  send(
3556
3599
  recipient: string,
3557
3600
  amount: BigNumberish,
@@ -3574,6 +3617,14 @@ export interface SuperGoodDollar extends BaseContract {
3574
3617
  overrides?: Overrides & { from?: string | Promise<string> }
3575
3618
  ): Promise<PopulatedTransaction>;
3576
3619
 
3620
+ setNFTProxyContracts(
3621
+ _constantOutflowNFT: string,
3622
+ _constantInflowNFT: string,
3623
+ _poolAdminNFT: string,
3624
+ _poolMemberNFT: string,
3625
+ overrides?: Overrides & { from?: string | Promise<string> }
3626
+ ): Promise<PopulatedTransaction>;
3627
+
3577
3628
  settleBalance(
3578
3629
  account: string,
3579
3630
  delta: BigNumberish,
@@ -3601,11 +3652,6 @@ export interface SuperGoodDollar extends BaseContract {
3601
3652
  overrides?: Overrides & { from?: string | Promise<string> }
3602
3653
  ): Promise<PopulatedTransaction>;
3603
3654
 
3604
- transferAll(
3605
- recipient: string,
3606
- overrides?: Overrides & { from?: string | Promise<string> }
3607
- ): Promise<PopulatedTransaction>;
3608
-
3609
3655
  transferAndCall(
3610
3656
  to: string,
3611
3657
  amount: BigNumberish,
@@ -3646,17 +3692,5 @@ export interface SuperGoodDollar extends BaseContract {
3646
3692
  newAddress: string,
3647
3693
  overrides?: Overrides & { from?: string | Promise<string> }
3648
3694
  ): Promise<PopulatedTransaction>;
3649
-
3650
- upgrade(
3651
- amount: BigNumberish,
3652
- overrides?: Overrides & { from?: string | Promise<string> }
3653
- ): Promise<PopulatedTransaction>;
3654
-
3655
- upgradeTo(
3656
- to: string,
3657
- amount: BigNumberish,
3658
- data: BytesLike,
3659
- overrides?: Overrides & { from?: string | Promise<string> }
3660
- ): Promise<PopulatedTransaction>;
3661
3695
  };
3662
3696
  }