@gooddollar/goodcollective-contracts 1.0.0 → 1.0.2

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 (180) hide show
  1. package/contracts/DirectPayments/DirectPaymentsPool.sol +12 -2
  2. package/contracts/GoodCollective/GoodCollectiveSuperApp.sol +264 -0
  3. package/contracts/GoodCollective/SuperAppBaseFlow.sol +204 -0
  4. package/contracts/utils/SwapRouterMock.sol +32 -0
  5. package/package.json +7 -2
  6. package/releases/deployment.json +7984 -2746
  7. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/AggregatorV3Interface.ts +199 -0
  8. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/CERC20.ts +630 -0
  9. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/ERC20.ts +450 -0
  10. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IAaveIncentivesController.ts +161 -0
  11. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IAdminWallet.ts +189 -0
  12. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IDonationStaking.ts +98 -0
  13. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IERC2917.ts +750 -0
  14. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IFirstClaimPool.ts +144 -0
  15. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IGoodDollar.ts +1033 -0
  16. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IGoodStaking.ts +281 -0
  17. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IHasRouter.ts +81 -0
  18. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IIdentity.ts +598 -0
  19. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IIdentityV2.ts +689 -0
  20. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/ILendingPool.ts +257 -0
  21. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IMultichainRouter.ts +179 -0
  22. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/INameService.ts +100 -0
  23. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/IUBIScheme.ts +137 -0
  24. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/ProxyAdmin.ts +278 -0
  25. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/Reserve.ts +117 -0
  26. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/Staking.ts +175 -0
  27. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/Uniswap.ts +464 -0
  28. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/UniswapFactory.ts +105 -0
  29. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/UniswapPair.ts +209 -0
  30. package/typechain-types/@gooddollar/goodprotocol/contracts/Interfaces.sol/index.ts +26 -0
  31. package/typechain-types/@gooddollar/goodprotocol/contracts/index.ts +7 -0
  32. package/typechain-types/@gooddollar/goodprotocol/contracts/token/FeesFormula.sol/IFeesFormula.ts +115 -0
  33. package/typechain-types/@gooddollar/goodprotocol/contracts/token/FeesFormula.sol/index.ts +4 -0
  34. package/typechain-types/@gooddollar/goodprotocol/contracts/token/index.ts +7 -0
  35. package/typechain-types/@gooddollar/goodprotocol/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom.ts +726 -0
  36. package/typechain-types/@gooddollar/goodprotocol/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.ts +3662 -0
  37. package/typechain-types/@gooddollar/goodprotocol/contracts/token/superfluid/ISuperGoodDollar.sol/index.ts +5 -0
  38. package/typechain-types/@gooddollar/goodprotocol/contracts/token/superfluid/index.ts +5 -0
  39. package/typechain-types/@gooddollar/goodprotocol/index.ts +5 -0
  40. package/typechain-types/@gooddollar/index.ts +5 -0
  41. package/typechain-types/@openzeppelin/contracts/index.ts +4 -0
  42. package/typechain-types/@openzeppelin/contracts/token/ERC20/IERC20.ts +342 -0
  43. package/typechain-types/@openzeppelin/contracts/token/ERC20/index.ts +4 -0
  44. package/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.ts +559 -0
  45. package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts +619 -0
  46. package/typechain-types/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
  47. package/typechain-types/@openzeppelin/contracts/token/ERC721/index.ts +6 -0
  48. package/typechain-types/@openzeppelin/contracts/token/ERC777/IERC777.ts +650 -0
  49. package/typechain-types/@openzeppelin/contracts/token/ERC777/index.ts +4 -0
  50. package/typechain-types/@openzeppelin/contracts/token/index.ts +9 -0
  51. package/typechain-types/@openzeppelin/contracts/utils/index.ts +5 -0
  52. package/typechain-types/@openzeppelin/contracts/utils/introspection/IERC165.ts +103 -0
  53. package/typechain-types/@openzeppelin/contracts/utils/introspection/index.ts +4 -0
  54. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/index.ts +5 -0
  55. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1.ts +1390 -0
  56. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1.ts +1280 -0
  57. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/index.ts +5 -0
  58. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/index.ts +9 -0
  59. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantInflowNFT.ts +876 -0
  60. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantOutflowNFT.ts +945 -0
  61. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IFlowNFTBase.ts +807 -0
  62. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement.ts +157 -0
  63. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp.ts +457 -0
  64. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.ts +2806 -0
  65. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory.ts +465 -0
  66. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.ts +1727 -0
  67. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance.ts +506 -0
  68. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken.ts +1010 -0
  69. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/index.ts +13 -0
  70. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo.ts +384 -0
  71. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/TokenInfo.ts +109 -0
  72. package/typechain-types/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/index.ts +5 -0
  73. package/typechain-types/@superfluid-finance/ethereum-contracts/index.ts +5 -0
  74. package/typechain-types/@superfluid-finance/index.ts +5 -0
  75. package/typechain-types/@uniswap/index.ts +7 -0
  76. package/typechain-types/@uniswap/v3-core/contracts/index.ts +5 -0
  77. package/typechain-types/@uniswap/v3-core/contracts/interfaces/callback/IUniswapV3SwapCallback.ts +122 -0
  78. package/typechain-types/@uniswap/v3-core/contracts/interfaces/callback/index.ts +4 -0
  79. package/typechain-types/@uniswap/v3-core/contracts/interfaces/index.ts +5 -0
  80. package/typechain-types/@uniswap/v3-core/index.ts +5 -0
  81. package/typechain-types/@uniswap/v3-periphery/contracts/index.ts +5 -0
  82. package/typechain-types/@uniswap/v3-periphery/contracts/interfaces/ISwapRouter.ts +369 -0
  83. package/typechain-types/@uniswap/v3-periphery/contracts/interfaces/index.ts +4 -0
  84. package/typechain-types/@uniswap/v3-periphery/index.ts +5 -0
  85. package/typechain-types/contracts/DirectPayments/DirectPaymentsPool.sol/DirectPaymentsPool.ts +763 -0
  86. package/typechain-types/contracts/GoodCollective/GoodCollectiveSuperApp.ts +843 -0
  87. package/typechain-types/contracts/GoodCollective/SuperAppBaseFlow.ts +523 -0
  88. package/typechain-types/contracts/GoodCollective/index.ts +5 -0
  89. package/typechain-types/contracts/index.ts +4 -1
  90. package/typechain-types/contracts/utils/SwapRouterMock.ts +194 -0
  91. package/typechain-types/contracts/utils/index.ts +4 -0
  92. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/AggregatorV3Interface__factory.ts +121 -0
  93. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/CERC20__factory.ts +384 -0
  94. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/ERC20__factory.ts +288 -0
  95. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IAaveIncentivesController__factory.ts +83 -0
  96. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IAdminWallet__factory.ts +78 -0
  97. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IDonationStaking__factory.ts +33 -0
  98. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IERC2917__factory.ts +496 -0
  99. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IFirstClaimPool__factory.ts +65 -0
  100. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IGoodDollar__factory.ts +598 -0
  101. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IGoodStaking__factory.ts +178 -0
  102. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IHasRouter__factory.ts +39 -0
  103. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IIdentityV2__factory.ts +334 -0
  104. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IIdentity__factory.ts +287 -0
  105. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/ILendingPool__factory.ts +171 -0
  106. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IMultichainRouter__factory.ts +82 -0
  107. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/INameService__factory.ts +45 -0
  108. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/IUBIScheme__factory.ts +71 -0
  109. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/ProxyAdmin__factory.ts +131 -0
  110. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/Reserve__factory.ts +55 -0
  111. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/Staking__factory.ts +77 -0
  112. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/UniswapFactory__factory.ts +50 -0
  113. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/UniswapPair__factory.ts +120 -0
  114. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/Uniswap__factory.ts +275 -0
  115. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/Interfaces.sol/index.ts +26 -0
  116. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/index.ts +5 -0
  117. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/token/FeesFormula.sol/IFeesFormula__factory.ts +60 -0
  118. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/token/FeesFormula.sol/index.ts +4 -0
  119. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/token/index.ts +5 -0
  120. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom__factory.ts +370 -0
  121. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar__factory.ts +2301 -0
  122. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/token/superfluid/ISuperGoodDollar.sol/index.ts +5 -0
  123. package/typechain-types/factories/@gooddollar/goodprotocol/contracts/token/superfluid/index.ts +4 -0
  124. package/typechain-types/factories/@gooddollar/goodprotocol/index.ts +4 -0
  125. package/typechain-types/factories/@gooddollar/index.ts +4 -0
  126. package/typechain-types/factories/@openzeppelin/contracts/index.ts +2 -0
  127. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +206 -0
  128. package/typechain-types/factories/@openzeppelin/contracts/token/ERC20/index.ts +4 -0
  129. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.ts +311 -0
  130. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts +356 -0
  131. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.ts +4 -0
  132. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/index.ts +5 -0
  133. package/typechain-types/factories/@openzeppelin/contracts/token/ERC777/IERC777__factory.ts +417 -0
  134. package/typechain-types/factories/@openzeppelin/contracts/token/ERC777/index.ts +4 -0
  135. package/typechain-types/factories/@openzeppelin/contracts/token/index.ts +6 -0
  136. package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +4 -0
  137. package/typechain-types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts +45 -0
  138. package/typechain-types/factories/@openzeppelin/contracts/utils/introspection/index.ts +4 -0
  139. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/index.ts +4 -0
  140. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/IConstantFlowAgreementV1__factory.ts +986 -0
  141. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/IInstantDistributionAgreementV1__factory.ts +1015 -0
  142. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/agreements/index.ts +5 -0
  143. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/index.ts +6 -0
  144. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantInflowNFT__factory.ts +551 -0
  145. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantOutflowNFT__factory.ts +614 -0
  146. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IFlowNFTBase__factory.ts +515 -0
  147. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperAgreement__factory.ts +78 -0
  148. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperApp__factory.ts +275 -0
  149. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperTokenFactory__factory.ts +276 -0
  150. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken__factory.ts +1839 -0
  151. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidGovernance__factory.ts +264 -0
  152. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluidToken__factory.ts +697 -0
  153. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid__factory.ts +1151 -0
  154. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/index.ts +13 -0
  155. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/ERC20WithTokenInfo__factory.ts +248 -0
  156. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/TokenInfo__factory.ts +65 -0
  157. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/contracts/interfaces/tokens/index.ts +5 -0
  158. package/typechain-types/factories/@superfluid-finance/ethereum-contracts/index.ts +4 -0
  159. package/typechain-types/factories/@superfluid-finance/index.ts +4 -0
  160. package/typechain-types/factories/@uniswap/index.ts +5 -0
  161. package/typechain-types/factories/@uniswap/v3-core/contracts/index.ts +4 -0
  162. package/typechain-types/factories/@uniswap/v3-core/contracts/interfaces/callback/IUniswapV3SwapCallback__factory.ts +53 -0
  163. package/typechain-types/factories/@uniswap/v3-core/contracts/interfaces/callback/index.ts +4 -0
  164. package/typechain-types/factories/@uniswap/v3-core/contracts/interfaces/index.ts +4 -0
  165. package/typechain-types/factories/@uniswap/v3-core/index.ts +4 -0
  166. package/typechain-types/factories/@uniswap/v3-periphery/contracts/index.ts +4 -0
  167. package/typechain-types/factories/@uniswap/v3-periphery/contracts/interfaces/ISwapRouter__factory.ts +263 -0
  168. package/typechain-types/factories/@uniswap/v3-periphery/contracts/interfaces/index.ts +4 -0
  169. package/typechain-types/factories/@uniswap/v3-periphery/index.ts +4 -0
  170. package/typechain-types/factories/contracts/DirectPayments/DirectPaymentsFactory__factory.ts +1 -1
  171. package/typechain-types/factories/contracts/DirectPayments/DirectPaymentsPool.sol/DirectPaymentsPool__factory.ts +581 -3
  172. package/typechain-types/factories/contracts/GoodCollective/GoodCollectiveSuperApp__factory.ts +584 -0
  173. package/typechain-types/factories/contracts/GoodCollective/SuperAppBaseFlow__factory.ts +335 -0
  174. package/typechain-types/factories/contracts/GoodCollective/index.ts +5 -0
  175. package/typechain-types/factories/contracts/index.ts +2 -1
  176. package/typechain-types/factories/contracts/utils/SwapRouterMock__factory.ts +183 -0
  177. package/typechain-types/factories/contracts/utils/index.ts +4 -0
  178. package/typechain-types/factories/index.ts +3 -0
  179. package/typechain-types/hardhat.d.ts +445 -4
  180. package/typechain-types/index.ts +106 -4
@@ -0,0 +1,1010 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import type {
17
+ FunctionFragment,
18
+ Result,
19
+ EventFragment,
20
+ } from "@ethersproject/abi";
21
+ import type { Listener, Provider } from "@ethersproject/providers";
22
+ import type {
23
+ TypedEventFilter,
24
+ TypedEvent,
25
+ TypedListener,
26
+ OnEvent,
27
+ PromiseOrValue,
28
+ } from "../../../../../common";
29
+
30
+ export interface ISuperfluidTokenInterface extends utils.Interface {
31
+ functions: {
32
+ "createAgreement(bytes32,bytes32[])": FunctionFragment;
33
+ "getAccountActiveAgreements(address)": FunctionFragment;
34
+ "getAgreementData(address,bytes32,uint256)": FunctionFragment;
35
+ "getAgreementStateSlot(address,address,uint256,uint256)": FunctionFragment;
36
+ "getHost()": FunctionFragment;
37
+ "isAccountCritical(address,uint256)": FunctionFragment;
38
+ "isAccountCriticalNow(address)": FunctionFragment;
39
+ "isAccountSolvent(address,uint256)": FunctionFragment;
40
+ "isAccountSolventNow(address)": FunctionFragment;
41
+ "makeLiquidationPayoutsV2(bytes32,bytes,address,bool,address,uint256,int256)": FunctionFragment;
42
+ "realtimeBalanceOf(address,uint256)": FunctionFragment;
43
+ "realtimeBalanceOfNow(address)": FunctionFragment;
44
+ "settleBalance(address,int256)": FunctionFragment;
45
+ "terminateAgreement(bytes32,uint256)": FunctionFragment;
46
+ "updateAgreementData(bytes32,bytes32[])": FunctionFragment;
47
+ "updateAgreementStateSlot(address,uint256,bytes32[])": FunctionFragment;
48
+ };
49
+
50
+ getFunction(
51
+ nameOrSignatureOrTopic:
52
+ | "createAgreement"
53
+ | "getAccountActiveAgreements"
54
+ | "getAgreementData"
55
+ | "getAgreementStateSlot"
56
+ | "getHost"
57
+ | "isAccountCritical"
58
+ | "isAccountCriticalNow"
59
+ | "isAccountSolvent"
60
+ | "isAccountSolventNow"
61
+ | "makeLiquidationPayoutsV2"
62
+ | "realtimeBalanceOf"
63
+ | "realtimeBalanceOfNow"
64
+ | "settleBalance"
65
+ | "terminateAgreement"
66
+ | "updateAgreementData"
67
+ | "updateAgreementStateSlot"
68
+ ): FunctionFragment;
69
+
70
+ encodeFunctionData(
71
+ functionFragment: "createAgreement",
72
+ values: [PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike>[]]
73
+ ): string;
74
+ encodeFunctionData(
75
+ functionFragment: "getAccountActiveAgreements",
76
+ values: [PromiseOrValue<string>]
77
+ ): string;
78
+ encodeFunctionData(
79
+ functionFragment: "getAgreementData",
80
+ values: [
81
+ PromiseOrValue<string>,
82
+ PromiseOrValue<BytesLike>,
83
+ PromiseOrValue<BigNumberish>
84
+ ]
85
+ ): string;
86
+ encodeFunctionData(
87
+ functionFragment: "getAgreementStateSlot",
88
+ values: [
89
+ PromiseOrValue<string>,
90
+ PromiseOrValue<string>,
91
+ PromiseOrValue<BigNumberish>,
92
+ PromiseOrValue<BigNumberish>
93
+ ]
94
+ ): string;
95
+ encodeFunctionData(functionFragment: "getHost", values?: undefined): string;
96
+ encodeFunctionData(
97
+ functionFragment: "isAccountCritical",
98
+ values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]
99
+ ): string;
100
+ encodeFunctionData(
101
+ functionFragment: "isAccountCriticalNow",
102
+ values: [PromiseOrValue<string>]
103
+ ): string;
104
+ encodeFunctionData(
105
+ functionFragment: "isAccountSolvent",
106
+ values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]
107
+ ): string;
108
+ encodeFunctionData(
109
+ functionFragment: "isAccountSolventNow",
110
+ values: [PromiseOrValue<string>]
111
+ ): string;
112
+ encodeFunctionData(
113
+ functionFragment: "makeLiquidationPayoutsV2",
114
+ values: [
115
+ PromiseOrValue<BytesLike>,
116
+ PromiseOrValue<BytesLike>,
117
+ PromiseOrValue<string>,
118
+ PromiseOrValue<boolean>,
119
+ PromiseOrValue<string>,
120
+ PromiseOrValue<BigNumberish>,
121
+ PromiseOrValue<BigNumberish>
122
+ ]
123
+ ): string;
124
+ encodeFunctionData(
125
+ functionFragment: "realtimeBalanceOf",
126
+ values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]
127
+ ): string;
128
+ encodeFunctionData(
129
+ functionFragment: "realtimeBalanceOfNow",
130
+ values: [PromiseOrValue<string>]
131
+ ): string;
132
+ encodeFunctionData(
133
+ functionFragment: "settleBalance",
134
+ values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]
135
+ ): string;
136
+ encodeFunctionData(
137
+ functionFragment: "terminateAgreement",
138
+ values: [PromiseOrValue<BytesLike>, PromiseOrValue<BigNumberish>]
139
+ ): string;
140
+ encodeFunctionData(
141
+ functionFragment: "updateAgreementData",
142
+ values: [PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike>[]]
143
+ ): string;
144
+ encodeFunctionData(
145
+ functionFragment: "updateAgreementStateSlot",
146
+ values: [
147
+ PromiseOrValue<string>,
148
+ PromiseOrValue<BigNumberish>,
149
+ PromiseOrValue<BytesLike>[]
150
+ ]
151
+ ): string;
152
+
153
+ decodeFunctionResult(
154
+ functionFragment: "createAgreement",
155
+ data: BytesLike
156
+ ): Result;
157
+ decodeFunctionResult(
158
+ functionFragment: "getAccountActiveAgreements",
159
+ data: BytesLike
160
+ ): Result;
161
+ decodeFunctionResult(
162
+ functionFragment: "getAgreementData",
163
+ data: BytesLike
164
+ ): Result;
165
+ decodeFunctionResult(
166
+ functionFragment: "getAgreementStateSlot",
167
+ data: BytesLike
168
+ ): Result;
169
+ decodeFunctionResult(functionFragment: "getHost", data: BytesLike): Result;
170
+ decodeFunctionResult(
171
+ functionFragment: "isAccountCritical",
172
+ data: BytesLike
173
+ ): Result;
174
+ decodeFunctionResult(
175
+ functionFragment: "isAccountCriticalNow",
176
+ data: BytesLike
177
+ ): Result;
178
+ decodeFunctionResult(
179
+ functionFragment: "isAccountSolvent",
180
+ data: BytesLike
181
+ ): Result;
182
+ decodeFunctionResult(
183
+ functionFragment: "isAccountSolventNow",
184
+ data: BytesLike
185
+ ): Result;
186
+ decodeFunctionResult(
187
+ functionFragment: "makeLiquidationPayoutsV2",
188
+ data: BytesLike
189
+ ): Result;
190
+ decodeFunctionResult(
191
+ functionFragment: "realtimeBalanceOf",
192
+ data: BytesLike
193
+ ): Result;
194
+ decodeFunctionResult(
195
+ functionFragment: "realtimeBalanceOfNow",
196
+ data: BytesLike
197
+ ): Result;
198
+ decodeFunctionResult(
199
+ functionFragment: "settleBalance",
200
+ data: BytesLike
201
+ ): Result;
202
+ decodeFunctionResult(
203
+ functionFragment: "terminateAgreement",
204
+ data: BytesLike
205
+ ): Result;
206
+ decodeFunctionResult(
207
+ functionFragment: "updateAgreementData",
208
+ data: BytesLike
209
+ ): Result;
210
+ decodeFunctionResult(
211
+ functionFragment: "updateAgreementStateSlot",
212
+ data: BytesLike
213
+ ): Result;
214
+
215
+ events: {
216
+ "AgreementCreated(address,bytes32,bytes32[])": EventFragment;
217
+ "AgreementLiquidated(address,bytes32,address,address,uint256)": EventFragment;
218
+ "AgreementLiquidatedBy(address,address,bytes32,address,address,uint256,uint256)": EventFragment;
219
+ "AgreementLiquidatedV2(address,bytes32,address,address,address,uint256,int256,bytes)": EventFragment;
220
+ "AgreementStateUpdated(address,address,uint256)": EventFragment;
221
+ "AgreementTerminated(address,bytes32)": EventFragment;
222
+ "AgreementUpdated(address,bytes32,bytes32[])": EventFragment;
223
+ "Bailout(address,uint256)": EventFragment;
224
+ };
225
+
226
+ getEvent(nameOrSignatureOrTopic: "AgreementCreated"): EventFragment;
227
+ getEvent(nameOrSignatureOrTopic: "AgreementLiquidated"): EventFragment;
228
+ getEvent(nameOrSignatureOrTopic: "AgreementLiquidatedBy"): EventFragment;
229
+ getEvent(nameOrSignatureOrTopic: "AgreementLiquidatedV2"): EventFragment;
230
+ getEvent(nameOrSignatureOrTopic: "AgreementStateUpdated"): EventFragment;
231
+ getEvent(nameOrSignatureOrTopic: "AgreementTerminated"): EventFragment;
232
+ getEvent(nameOrSignatureOrTopic: "AgreementUpdated"): EventFragment;
233
+ getEvent(nameOrSignatureOrTopic: "Bailout"): EventFragment;
234
+ }
235
+
236
+ export interface AgreementCreatedEventObject {
237
+ agreementClass: string;
238
+ id: string;
239
+ data: string[];
240
+ }
241
+ export type AgreementCreatedEvent = TypedEvent<
242
+ [string, string, string[]],
243
+ AgreementCreatedEventObject
244
+ >;
245
+
246
+ export type AgreementCreatedEventFilter =
247
+ TypedEventFilter<AgreementCreatedEvent>;
248
+
249
+ export interface AgreementLiquidatedEventObject {
250
+ agreementClass: string;
251
+ id: string;
252
+ penaltyAccount: string;
253
+ rewardAccount: string;
254
+ rewardAmount: BigNumber;
255
+ }
256
+ export type AgreementLiquidatedEvent = TypedEvent<
257
+ [string, string, string, string, BigNumber],
258
+ AgreementLiquidatedEventObject
259
+ >;
260
+
261
+ export type AgreementLiquidatedEventFilter =
262
+ TypedEventFilter<AgreementLiquidatedEvent>;
263
+
264
+ export interface AgreementLiquidatedByEventObject {
265
+ liquidatorAccount: string;
266
+ agreementClass: string;
267
+ id: string;
268
+ penaltyAccount: string;
269
+ bondAccount: string;
270
+ rewardAmount: BigNumber;
271
+ bailoutAmount: BigNumber;
272
+ }
273
+ export type AgreementLiquidatedByEvent = TypedEvent<
274
+ [string, string, string, string, string, BigNumber, BigNumber],
275
+ AgreementLiquidatedByEventObject
276
+ >;
277
+
278
+ export type AgreementLiquidatedByEventFilter =
279
+ TypedEventFilter<AgreementLiquidatedByEvent>;
280
+
281
+ export interface AgreementLiquidatedV2EventObject {
282
+ agreementClass: string;
283
+ id: string;
284
+ liquidatorAccount: string;
285
+ targetAccount: string;
286
+ rewardAmountReceiver: string;
287
+ rewardAmount: BigNumber;
288
+ targetAccountBalanceDelta: BigNumber;
289
+ liquidationTypeData: string;
290
+ }
291
+ export type AgreementLiquidatedV2Event = TypedEvent<
292
+ [string, string, string, string, string, BigNumber, BigNumber, string],
293
+ AgreementLiquidatedV2EventObject
294
+ >;
295
+
296
+ export type AgreementLiquidatedV2EventFilter =
297
+ TypedEventFilter<AgreementLiquidatedV2Event>;
298
+
299
+ export interface AgreementStateUpdatedEventObject {
300
+ agreementClass: string;
301
+ account: string;
302
+ slotId: BigNumber;
303
+ }
304
+ export type AgreementStateUpdatedEvent = TypedEvent<
305
+ [string, string, BigNumber],
306
+ AgreementStateUpdatedEventObject
307
+ >;
308
+
309
+ export type AgreementStateUpdatedEventFilter =
310
+ TypedEventFilter<AgreementStateUpdatedEvent>;
311
+
312
+ export interface AgreementTerminatedEventObject {
313
+ agreementClass: string;
314
+ id: string;
315
+ }
316
+ export type AgreementTerminatedEvent = TypedEvent<
317
+ [string, string],
318
+ AgreementTerminatedEventObject
319
+ >;
320
+
321
+ export type AgreementTerminatedEventFilter =
322
+ TypedEventFilter<AgreementTerminatedEvent>;
323
+
324
+ export interface AgreementUpdatedEventObject {
325
+ agreementClass: string;
326
+ id: string;
327
+ data: string[];
328
+ }
329
+ export type AgreementUpdatedEvent = TypedEvent<
330
+ [string, string, string[]],
331
+ AgreementUpdatedEventObject
332
+ >;
333
+
334
+ export type AgreementUpdatedEventFilter =
335
+ TypedEventFilter<AgreementUpdatedEvent>;
336
+
337
+ export interface BailoutEventObject {
338
+ bailoutAccount: string;
339
+ bailoutAmount: BigNumber;
340
+ }
341
+ export type BailoutEvent = TypedEvent<[string, BigNumber], BailoutEventObject>;
342
+
343
+ export type BailoutEventFilter = TypedEventFilter<BailoutEvent>;
344
+
345
+ export interface ISuperfluidToken extends BaseContract {
346
+ connect(signerOrProvider: Signer | Provider | string): this;
347
+ attach(addressOrName: string): this;
348
+ deployed(): Promise<this>;
349
+
350
+ interface: ISuperfluidTokenInterface;
351
+
352
+ queryFilter<TEvent extends TypedEvent>(
353
+ event: TypedEventFilter<TEvent>,
354
+ fromBlockOrBlockhash?: string | number | undefined,
355
+ toBlock?: string | number | undefined
356
+ ): Promise<Array<TEvent>>;
357
+
358
+ listeners<TEvent extends TypedEvent>(
359
+ eventFilter?: TypedEventFilter<TEvent>
360
+ ): Array<TypedListener<TEvent>>;
361
+ listeners(eventName?: string): Array<Listener>;
362
+ removeAllListeners<TEvent extends TypedEvent>(
363
+ eventFilter: TypedEventFilter<TEvent>
364
+ ): this;
365
+ removeAllListeners(eventName?: string): this;
366
+ off: OnEvent<this>;
367
+ on: OnEvent<this>;
368
+ once: OnEvent<this>;
369
+ removeListener: OnEvent<this>;
370
+
371
+ functions: {
372
+ createAgreement(
373
+ id: PromiseOrValue<BytesLike>,
374
+ data: PromiseOrValue<BytesLike>[],
375
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
376
+ ): Promise<ContractTransaction>;
377
+
378
+ getAccountActiveAgreements(
379
+ account: PromiseOrValue<string>,
380
+ overrides?: CallOverrides
381
+ ): Promise<[string[]] & { activeAgreements: string[] }>;
382
+
383
+ getAgreementData(
384
+ agreementClass: PromiseOrValue<string>,
385
+ id: PromiseOrValue<BytesLike>,
386
+ dataLength: PromiseOrValue<BigNumberish>,
387
+ overrides?: CallOverrides
388
+ ): Promise<[string[]] & { data: string[] }>;
389
+
390
+ getAgreementStateSlot(
391
+ agreementClass: PromiseOrValue<string>,
392
+ account: PromiseOrValue<string>,
393
+ slotId: PromiseOrValue<BigNumberish>,
394
+ dataLength: PromiseOrValue<BigNumberish>,
395
+ overrides?: CallOverrides
396
+ ): Promise<[string[]] & { slotData: string[] }>;
397
+
398
+ getHost(overrides?: CallOverrides): Promise<[string] & { host: string }>;
399
+
400
+ isAccountCritical(
401
+ account: PromiseOrValue<string>,
402
+ timestamp: PromiseOrValue<BigNumberish>,
403
+ overrides?: CallOverrides
404
+ ): Promise<[boolean] & { isCritical: boolean }>;
405
+
406
+ isAccountCriticalNow(
407
+ account: PromiseOrValue<string>,
408
+ overrides?: CallOverrides
409
+ ): Promise<[boolean] & { isCritical: boolean }>;
410
+
411
+ isAccountSolvent(
412
+ account: PromiseOrValue<string>,
413
+ timestamp: PromiseOrValue<BigNumberish>,
414
+ overrides?: CallOverrides
415
+ ): Promise<[boolean] & { isSolvent: boolean }>;
416
+
417
+ isAccountSolventNow(
418
+ account: PromiseOrValue<string>,
419
+ overrides?: CallOverrides
420
+ ): Promise<[boolean] & { isSolvent: boolean }>;
421
+
422
+ makeLiquidationPayoutsV2(
423
+ id: PromiseOrValue<BytesLike>,
424
+ liquidationTypeData: PromiseOrValue<BytesLike>,
425
+ liquidatorAccount: PromiseOrValue<string>,
426
+ useDefaultRewardAccount: PromiseOrValue<boolean>,
427
+ targetAccount: PromiseOrValue<string>,
428
+ rewardAmount: PromiseOrValue<BigNumberish>,
429
+ targetAccountBalanceDelta: PromiseOrValue<BigNumberish>,
430
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
431
+ ): Promise<ContractTransaction>;
432
+
433
+ realtimeBalanceOf(
434
+ account: PromiseOrValue<string>,
435
+ timestamp: PromiseOrValue<BigNumberish>,
436
+ overrides?: CallOverrides
437
+ ): Promise<
438
+ [BigNumber, BigNumber, BigNumber] & {
439
+ availableBalance: BigNumber;
440
+ deposit: BigNumber;
441
+ owedDeposit: BigNumber;
442
+ }
443
+ >;
444
+
445
+ realtimeBalanceOfNow(
446
+ account: PromiseOrValue<string>,
447
+ overrides?: CallOverrides
448
+ ): Promise<
449
+ [BigNumber, BigNumber, BigNumber, BigNumber] & {
450
+ availableBalance: BigNumber;
451
+ deposit: BigNumber;
452
+ owedDeposit: BigNumber;
453
+ timestamp: BigNumber;
454
+ }
455
+ >;
456
+
457
+ settleBalance(
458
+ account: PromiseOrValue<string>,
459
+ delta: PromiseOrValue<BigNumberish>,
460
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
461
+ ): Promise<ContractTransaction>;
462
+
463
+ terminateAgreement(
464
+ id: PromiseOrValue<BytesLike>,
465
+ dataLength: PromiseOrValue<BigNumberish>,
466
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
467
+ ): Promise<ContractTransaction>;
468
+
469
+ updateAgreementData(
470
+ id: PromiseOrValue<BytesLike>,
471
+ data: PromiseOrValue<BytesLike>[],
472
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
473
+ ): Promise<ContractTransaction>;
474
+
475
+ updateAgreementStateSlot(
476
+ account: PromiseOrValue<string>,
477
+ slotId: PromiseOrValue<BigNumberish>,
478
+ slotData: PromiseOrValue<BytesLike>[],
479
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
480
+ ): Promise<ContractTransaction>;
481
+ };
482
+
483
+ createAgreement(
484
+ id: PromiseOrValue<BytesLike>,
485
+ data: PromiseOrValue<BytesLike>[],
486
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
487
+ ): Promise<ContractTransaction>;
488
+
489
+ getAccountActiveAgreements(
490
+ account: PromiseOrValue<string>,
491
+ overrides?: CallOverrides
492
+ ): Promise<string[]>;
493
+
494
+ getAgreementData(
495
+ agreementClass: PromiseOrValue<string>,
496
+ id: PromiseOrValue<BytesLike>,
497
+ dataLength: PromiseOrValue<BigNumberish>,
498
+ overrides?: CallOverrides
499
+ ): Promise<string[]>;
500
+
501
+ getAgreementStateSlot(
502
+ agreementClass: PromiseOrValue<string>,
503
+ account: PromiseOrValue<string>,
504
+ slotId: PromiseOrValue<BigNumberish>,
505
+ dataLength: PromiseOrValue<BigNumberish>,
506
+ overrides?: CallOverrides
507
+ ): Promise<string[]>;
508
+
509
+ getHost(overrides?: CallOverrides): Promise<string>;
510
+
511
+ isAccountCritical(
512
+ account: PromiseOrValue<string>,
513
+ timestamp: PromiseOrValue<BigNumberish>,
514
+ overrides?: CallOverrides
515
+ ): Promise<boolean>;
516
+
517
+ isAccountCriticalNow(
518
+ account: PromiseOrValue<string>,
519
+ overrides?: CallOverrides
520
+ ): Promise<boolean>;
521
+
522
+ isAccountSolvent(
523
+ account: PromiseOrValue<string>,
524
+ timestamp: PromiseOrValue<BigNumberish>,
525
+ overrides?: CallOverrides
526
+ ): Promise<boolean>;
527
+
528
+ isAccountSolventNow(
529
+ account: PromiseOrValue<string>,
530
+ overrides?: CallOverrides
531
+ ): Promise<boolean>;
532
+
533
+ makeLiquidationPayoutsV2(
534
+ id: PromiseOrValue<BytesLike>,
535
+ liquidationTypeData: PromiseOrValue<BytesLike>,
536
+ liquidatorAccount: PromiseOrValue<string>,
537
+ useDefaultRewardAccount: PromiseOrValue<boolean>,
538
+ targetAccount: PromiseOrValue<string>,
539
+ rewardAmount: PromiseOrValue<BigNumberish>,
540
+ targetAccountBalanceDelta: PromiseOrValue<BigNumberish>,
541
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
542
+ ): Promise<ContractTransaction>;
543
+
544
+ realtimeBalanceOf(
545
+ account: PromiseOrValue<string>,
546
+ timestamp: PromiseOrValue<BigNumberish>,
547
+ overrides?: CallOverrides
548
+ ): Promise<
549
+ [BigNumber, BigNumber, BigNumber] & {
550
+ availableBalance: BigNumber;
551
+ deposit: BigNumber;
552
+ owedDeposit: BigNumber;
553
+ }
554
+ >;
555
+
556
+ realtimeBalanceOfNow(
557
+ account: PromiseOrValue<string>,
558
+ overrides?: CallOverrides
559
+ ): Promise<
560
+ [BigNumber, BigNumber, BigNumber, BigNumber] & {
561
+ availableBalance: BigNumber;
562
+ deposit: BigNumber;
563
+ owedDeposit: BigNumber;
564
+ timestamp: BigNumber;
565
+ }
566
+ >;
567
+
568
+ settleBalance(
569
+ account: PromiseOrValue<string>,
570
+ delta: PromiseOrValue<BigNumberish>,
571
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
572
+ ): Promise<ContractTransaction>;
573
+
574
+ terminateAgreement(
575
+ id: PromiseOrValue<BytesLike>,
576
+ dataLength: PromiseOrValue<BigNumberish>,
577
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
578
+ ): Promise<ContractTransaction>;
579
+
580
+ updateAgreementData(
581
+ id: PromiseOrValue<BytesLike>,
582
+ data: PromiseOrValue<BytesLike>[],
583
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
584
+ ): Promise<ContractTransaction>;
585
+
586
+ updateAgreementStateSlot(
587
+ account: PromiseOrValue<string>,
588
+ slotId: PromiseOrValue<BigNumberish>,
589
+ slotData: PromiseOrValue<BytesLike>[],
590
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
591
+ ): Promise<ContractTransaction>;
592
+
593
+ callStatic: {
594
+ createAgreement(
595
+ id: PromiseOrValue<BytesLike>,
596
+ data: PromiseOrValue<BytesLike>[],
597
+ overrides?: CallOverrides
598
+ ): Promise<void>;
599
+
600
+ getAccountActiveAgreements(
601
+ account: PromiseOrValue<string>,
602
+ overrides?: CallOverrides
603
+ ): Promise<string[]>;
604
+
605
+ getAgreementData(
606
+ agreementClass: PromiseOrValue<string>,
607
+ id: PromiseOrValue<BytesLike>,
608
+ dataLength: PromiseOrValue<BigNumberish>,
609
+ overrides?: CallOverrides
610
+ ): Promise<string[]>;
611
+
612
+ getAgreementStateSlot(
613
+ agreementClass: PromiseOrValue<string>,
614
+ account: PromiseOrValue<string>,
615
+ slotId: PromiseOrValue<BigNumberish>,
616
+ dataLength: PromiseOrValue<BigNumberish>,
617
+ overrides?: CallOverrides
618
+ ): Promise<string[]>;
619
+
620
+ getHost(overrides?: CallOverrides): Promise<string>;
621
+
622
+ isAccountCritical(
623
+ account: PromiseOrValue<string>,
624
+ timestamp: PromiseOrValue<BigNumberish>,
625
+ overrides?: CallOverrides
626
+ ): Promise<boolean>;
627
+
628
+ isAccountCriticalNow(
629
+ account: PromiseOrValue<string>,
630
+ overrides?: CallOverrides
631
+ ): Promise<boolean>;
632
+
633
+ isAccountSolvent(
634
+ account: PromiseOrValue<string>,
635
+ timestamp: PromiseOrValue<BigNumberish>,
636
+ overrides?: CallOverrides
637
+ ): Promise<boolean>;
638
+
639
+ isAccountSolventNow(
640
+ account: PromiseOrValue<string>,
641
+ overrides?: CallOverrides
642
+ ): Promise<boolean>;
643
+
644
+ makeLiquidationPayoutsV2(
645
+ id: PromiseOrValue<BytesLike>,
646
+ liquidationTypeData: PromiseOrValue<BytesLike>,
647
+ liquidatorAccount: PromiseOrValue<string>,
648
+ useDefaultRewardAccount: PromiseOrValue<boolean>,
649
+ targetAccount: PromiseOrValue<string>,
650
+ rewardAmount: PromiseOrValue<BigNumberish>,
651
+ targetAccountBalanceDelta: PromiseOrValue<BigNumberish>,
652
+ overrides?: CallOverrides
653
+ ): Promise<void>;
654
+
655
+ realtimeBalanceOf(
656
+ account: PromiseOrValue<string>,
657
+ timestamp: PromiseOrValue<BigNumberish>,
658
+ overrides?: CallOverrides
659
+ ): Promise<
660
+ [BigNumber, BigNumber, BigNumber] & {
661
+ availableBalance: BigNumber;
662
+ deposit: BigNumber;
663
+ owedDeposit: BigNumber;
664
+ }
665
+ >;
666
+
667
+ realtimeBalanceOfNow(
668
+ account: PromiseOrValue<string>,
669
+ overrides?: CallOverrides
670
+ ): Promise<
671
+ [BigNumber, BigNumber, BigNumber, BigNumber] & {
672
+ availableBalance: BigNumber;
673
+ deposit: BigNumber;
674
+ owedDeposit: BigNumber;
675
+ timestamp: BigNumber;
676
+ }
677
+ >;
678
+
679
+ settleBalance(
680
+ account: PromiseOrValue<string>,
681
+ delta: PromiseOrValue<BigNumberish>,
682
+ overrides?: CallOverrides
683
+ ): Promise<void>;
684
+
685
+ terminateAgreement(
686
+ id: PromiseOrValue<BytesLike>,
687
+ dataLength: PromiseOrValue<BigNumberish>,
688
+ overrides?: CallOverrides
689
+ ): Promise<void>;
690
+
691
+ updateAgreementData(
692
+ id: PromiseOrValue<BytesLike>,
693
+ data: PromiseOrValue<BytesLike>[],
694
+ overrides?: CallOverrides
695
+ ): Promise<void>;
696
+
697
+ updateAgreementStateSlot(
698
+ account: PromiseOrValue<string>,
699
+ slotId: PromiseOrValue<BigNumberish>,
700
+ slotData: PromiseOrValue<BytesLike>[],
701
+ overrides?: CallOverrides
702
+ ): Promise<void>;
703
+ };
704
+
705
+ filters: {
706
+ "AgreementCreated(address,bytes32,bytes32[])"(
707
+ agreementClass?: PromiseOrValue<string> | null,
708
+ id?: null,
709
+ data?: null
710
+ ): AgreementCreatedEventFilter;
711
+ AgreementCreated(
712
+ agreementClass?: PromiseOrValue<string> | null,
713
+ id?: null,
714
+ data?: null
715
+ ): AgreementCreatedEventFilter;
716
+
717
+ "AgreementLiquidated(address,bytes32,address,address,uint256)"(
718
+ agreementClass?: PromiseOrValue<string> | null,
719
+ id?: null,
720
+ penaltyAccount?: PromiseOrValue<string> | null,
721
+ rewardAccount?: PromiseOrValue<string> | null,
722
+ rewardAmount?: null
723
+ ): AgreementLiquidatedEventFilter;
724
+ AgreementLiquidated(
725
+ agreementClass?: PromiseOrValue<string> | null,
726
+ id?: null,
727
+ penaltyAccount?: PromiseOrValue<string> | null,
728
+ rewardAccount?: PromiseOrValue<string> | null,
729
+ rewardAmount?: null
730
+ ): AgreementLiquidatedEventFilter;
731
+
732
+ "AgreementLiquidatedBy(address,address,bytes32,address,address,uint256,uint256)"(
733
+ liquidatorAccount?: null,
734
+ agreementClass?: PromiseOrValue<string> | null,
735
+ id?: null,
736
+ penaltyAccount?: PromiseOrValue<string> | null,
737
+ bondAccount?: PromiseOrValue<string> | null,
738
+ rewardAmount?: null,
739
+ bailoutAmount?: null
740
+ ): AgreementLiquidatedByEventFilter;
741
+ AgreementLiquidatedBy(
742
+ liquidatorAccount?: null,
743
+ agreementClass?: PromiseOrValue<string> | null,
744
+ id?: null,
745
+ penaltyAccount?: PromiseOrValue<string> | null,
746
+ bondAccount?: PromiseOrValue<string> | null,
747
+ rewardAmount?: null,
748
+ bailoutAmount?: null
749
+ ): AgreementLiquidatedByEventFilter;
750
+
751
+ "AgreementLiquidatedV2(address,bytes32,address,address,address,uint256,int256,bytes)"(
752
+ agreementClass?: PromiseOrValue<string> | null,
753
+ id?: null,
754
+ liquidatorAccount?: PromiseOrValue<string> | null,
755
+ targetAccount?: PromiseOrValue<string> | null,
756
+ rewardAmountReceiver?: null,
757
+ rewardAmount?: null,
758
+ targetAccountBalanceDelta?: null,
759
+ liquidationTypeData?: null
760
+ ): AgreementLiquidatedV2EventFilter;
761
+ AgreementLiquidatedV2(
762
+ agreementClass?: PromiseOrValue<string> | null,
763
+ id?: null,
764
+ liquidatorAccount?: PromiseOrValue<string> | null,
765
+ targetAccount?: PromiseOrValue<string> | null,
766
+ rewardAmountReceiver?: null,
767
+ rewardAmount?: null,
768
+ targetAccountBalanceDelta?: null,
769
+ liquidationTypeData?: null
770
+ ): AgreementLiquidatedV2EventFilter;
771
+
772
+ "AgreementStateUpdated(address,address,uint256)"(
773
+ agreementClass?: PromiseOrValue<string> | null,
774
+ account?: PromiseOrValue<string> | null,
775
+ slotId?: null
776
+ ): AgreementStateUpdatedEventFilter;
777
+ AgreementStateUpdated(
778
+ agreementClass?: PromiseOrValue<string> | null,
779
+ account?: PromiseOrValue<string> | null,
780
+ slotId?: null
781
+ ): AgreementStateUpdatedEventFilter;
782
+
783
+ "AgreementTerminated(address,bytes32)"(
784
+ agreementClass?: PromiseOrValue<string> | null,
785
+ id?: null
786
+ ): AgreementTerminatedEventFilter;
787
+ AgreementTerminated(
788
+ agreementClass?: PromiseOrValue<string> | null,
789
+ id?: null
790
+ ): AgreementTerminatedEventFilter;
791
+
792
+ "AgreementUpdated(address,bytes32,bytes32[])"(
793
+ agreementClass?: PromiseOrValue<string> | null,
794
+ id?: null,
795
+ data?: null
796
+ ): AgreementUpdatedEventFilter;
797
+ AgreementUpdated(
798
+ agreementClass?: PromiseOrValue<string> | null,
799
+ id?: null,
800
+ data?: null
801
+ ): AgreementUpdatedEventFilter;
802
+
803
+ "Bailout(address,uint256)"(
804
+ bailoutAccount?: PromiseOrValue<string> | null,
805
+ bailoutAmount?: null
806
+ ): BailoutEventFilter;
807
+ Bailout(
808
+ bailoutAccount?: PromiseOrValue<string> | null,
809
+ bailoutAmount?: null
810
+ ): BailoutEventFilter;
811
+ };
812
+
813
+ estimateGas: {
814
+ createAgreement(
815
+ id: PromiseOrValue<BytesLike>,
816
+ data: PromiseOrValue<BytesLike>[],
817
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
818
+ ): Promise<BigNumber>;
819
+
820
+ getAccountActiveAgreements(
821
+ account: PromiseOrValue<string>,
822
+ overrides?: CallOverrides
823
+ ): Promise<BigNumber>;
824
+
825
+ getAgreementData(
826
+ agreementClass: PromiseOrValue<string>,
827
+ id: PromiseOrValue<BytesLike>,
828
+ dataLength: PromiseOrValue<BigNumberish>,
829
+ overrides?: CallOverrides
830
+ ): Promise<BigNumber>;
831
+
832
+ getAgreementStateSlot(
833
+ agreementClass: PromiseOrValue<string>,
834
+ account: PromiseOrValue<string>,
835
+ slotId: PromiseOrValue<BigNumberish>,
836
+ dataLength: PromiseOrValue<BigNumberish>,
837
+ overrides?: CallOverrides
838
+ ): Promise<BigNumber>;
839
+
840
+ getHost(overrides?: CallOverrides): Promise<BigNumber>;
841
+
842
+ isAccountCritical(
843
+ account: PromiseOrValue<string>,
844
+ timestamp: PromiseOrValue<BigNumberish>,
845
+ overrides?: CallOverrides
846
+ ): Promise<BigNumber>;
847
+
848
+ isAccountCriticalNow(
849
+ account: PromiseOrValue<string>,
850
+ overrides?: CallOverrides
851
+ ): Promise<BigNumber>;
852
+
853
+ isAccountSolvent(
854
+ account: PromiseOrValue<string>,
855
+ timestamp: PromiseOrValue<BigNumberish>,
856
+ overrides?: CallOverrides
857
+ ): Promise<BigNumber>;
858
+
859
+ isAccountSolventNow(
860
+ account: PromiseOrValue<string>,
861
+ overrides?: CallOverrides
862
+ ): Promise<BigNumber>;
863
+
864
+ makeLiquidationPayoutsV2(
865
+ id: PromiseOrValue<BytesLike>,
866
+ liquidationTypeData: PromiseOrValue<BytesLike>,
867
+ liquidatorAccount: PromiseOrValue<string>,
868
+ useDefaultRewardAccount: PromiseOrValue<boolean>,
869
+ targetAccount: PromiseOrValue<string>,
870
+ rewardAmount: PromiseOrValue<BigNumberish>,
871
+ targetAccountBalanceDelta: PromiseOrValue<BigNumberish>,
872
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
873
+ ): Promise<BigNumber>;
874
+
875
+ realtimeBalanceOf(
876
+ account: PromiseOrValue<string>,
877
+ timestamp: PromiseOrValue<BigNumberish>,
878
+ overrides?: CallOverrides
879
+ ): Promise<BigNumber>;
880
+
881
+ realtimeBalanceOfNow(
882
+ account: PromiseOrValue<string>,
883
+ overrides?: CallOverrides
884
+ ): Promise<BigNumber>;
885
+
886
+ settleBalance(
887
+ account: PromiseOrValue<string>,
888
+ delta: PromiseOrValue<BigNumberish>,
889
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
890
+ ): Promise<BigNumber>;
891
+
892
+ terminateAgreement(
893
+ id: PromiseOrValue<BytesLike>,
894
+ dataLength: PromiseOrValue<BigNumberish>,
895
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
896
+ ): Promise<BigNumber>;
897
+
898
+ updateAgreementData(
899
+ id: PromiseOrValue<BytesLike>,
900
+ data: PromiseOrValue<BytesLike>[],
901
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
902
+ ): Promise<BigNumber>;
903
+
904
+ updateAgreementStateSlot(
905
+ account: PromiseOrValue<string>,
906
+ slotId: PromiseOrValue<BigNumberish>,
907
+ slotData: PromiseOrValue<BytesLike>[],
908
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
909
+ ): Promise<BigNumber>;
910
+ };
911
+
912
+ populateTransaction: {
913
+ createAgreement(
914
+ id: PromiseOrValue<BytesLike>,
915
+ data: PromiseOrValue<BytesLike>[],
916
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
917
+ ): Promise<PopulatedTransaction>;
918
+
919
+ getAccountActiveAgreements(
920
+ account: PromiseOrValue<string>,
921
+ overrides?: CallOverrides
922
+ ): Promise<PopulatedTransaction>;
923
+
924
+ getAgreementData(
925
+ agreementClass: PromiseOrValue<string>,
926
+ id: PromiseOrValue<BytesLike>,
927
+ dataLength: PromiseOrValue<BigNumberish>,
928
+ overrides?: CallOverrides
929
+ ): Promise<PopulatedTransaction>;
930
+
931
+ getAgreementStateSlot(
932
+ agreementClass: PromiseOrValue<string>,
933
+ account: PromiseOrValue<string>,
934
+ slotId: PromiseOrValue<BigNumberish>,
935
+ dataLength: PromiseOrValue<BigNumberish>,
936
+ overrides?: CallOverrides
937
+ ): Promise<PopulatedTransaction>;
938
+
939
+ getHost(overrides?: CallOverrides): Promise<PopulatedTransaction>;
940
+
941
+ isAccountCritical(
942
+ account: PromiseOrValue<string>,
943
+ timestamp: PromiseOrValue<BigNumberish>,
944
+ overrides?: CallOverrides
945
+ ): Promise<PopulatedTransaction>;
946
+
947
+ isAccountCriticalNow(
948
+ account: PromiseOrValue<string>,
949
+ overrides?: CallOverrides
950
+ ): Promise<PopulatedTransaction>;
951
+
952
+ isAccountSolvent(
953
+ account: PromiseOrValue<string>,
954
+ timestamp: PromiseOrValue<BigNumberish>,
955
+ overrides?: CallOverrides
956
+ ): Promise<PopulatedTransaction>;
957
+
958
+ isAccountSolventNow(
959
+ account: PromiseOrValue<string>,
960
+ overrides?: CallOverrides
961
+ ): Promise<PopulatedTransaction>;
962
+
963
+ makeLiquidationPayoutsV2(
964
+ id: PromiseOrValue<BytesLike>,
965
+ liquidationTypeData: PromiseOrValue<BytesLike>,
966
+ liquidatorAccount: PromiseOrValue<string>,
967
+ useDefaultRewardAccount: PromiseOrValue<boolean>,
968
+ targetAccount: PromiseOrValue<string>,
969
+ rewardAmount: PromiseOrValue<BigNumberish>,
970
+ targetAccountBalanceDelta: PromiseOrValue<BigNumberish>,
971
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
972
+ ): Promise<PopulatedTransaction>;
973
+
974
+ realtimeBalanceOf(
975
+ account: PromiseOrValue<string>,
976
+ timestamp: PromiseOrValue<BigNumberish>,
977
+ overrides?: CallOverrides
978
+ ): Promise<PopulatedTransaction>;
979
+
980
+ realtimeBalanceOfNow(
981
+ account: PromiseOrValue<string>,
982
+ overrides?: CallOverrides
983
+ ): Promise<PopulatedTransaction>;
984
+
985
+ settleBalance(
986
+ account: PromiseOrValue<string>,
987
+ delta: PromiseOrValue<BigNumberish>,
988
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
989
+ ): Promise<PopulatedTransaction>;
990
+
991
+ terminateAgreement(
992
+ id: PromiseOrValue<BytesLike>,
993
+ dataLength: PromiseOrValue<BigNumberish>,
994
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
995
+ ): Promise<PopulatedTransaction>;
996
+
997
+ updateAgreementData(
998
+ id: PromiseOrValue<BytesLike>,
999
+ data: PromiseOrValue<BytesLike>[],
1000
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
1001
+ ): Promise<PopulatedTransaction>;
1002
+
1003
+ updateAgreementStateSlot(
1004
+ account: PromiseOrValue<string>,
1005
+ slotId: PromiseOrValue<BigNumberish>,
1006
+ slotData: PromiseOrValue<BytesLike>[],
1007
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
1008
+ ): Promise<PopulatedTransaction>;
1009
+ };
1010
+ }