@keep-network/tbtc-v2 0.1.0 → 0.1.1-dev

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 (296) hide show
  1. package/README.adoc +12 -0
  2. package/artifacts/.chainId +1 -1
  3. package/artifacts/Bank.json +807 -0
  4. package/artifacts/Bridge.json +2300 -0
  5. package/artifacts/Deposit.json +117 -0
  6. package/artifacts/DepositSweep.json +77 -0
  7. package/artifacts/EcdsaDkgValidator.json +532 -0
  8. package/artifacts/EcdsaInactivity.json +156 -0
  9. package/artifacts/EcdsaSortitionPool.json +1004 -0
  10. package/artifacts/Fraud.json +164 -0
  11. package/artifacts/KeepRegistry.json +99 -0
  12. package/artifacts/KeepStake.json +286 -0
  13. package/artifacts/KeepToken.json +711 -0
  14. package/artifacts/KeepTokenStaking.json +483 -0
  15. package/artifacts/MovingFunds.json +249 -0
  16. package/artifacts/NuCypherStakingEscrow.json +256 -0
  17. package/artifacts/NuCypherToken.json +711 -0
  18. package/artifacts/RandomBeaconStub.json +141 -0
  19. package/artifacts/Redemption.json +174 -0
  20. package/artifacts/ReimbursementPool.json +509 -0
  21. package/artifacts/Relay.json +123 -0
  22. package/artifacts/T.json +1148 -0
  23. package/artifacts/TBTC.json +36 -35
  24. package/artifacts/TBTCToken.json +738 -0
  25. package/artifacts/TBTCVault.json +691 -0
  26. package/artifacts/TokenStaking.json +2288 -0
  27. package/artifacts/TokenholderGovernor.json +1795 -0
  28. package/artifacts/TokenholderTimelock.json +1058 -0
  29. package/artifacts/VendingMachine.json +34 -33
  30. package/artifacts/VendingMachineKeep.json +400 -0
  31. package/artifacts/VendingMachineNuCypher.json +400 -0
  32. package/artifacts/WalletRegistry.json +1843 -0
  33. package/artifacts/WalletRegistryGovernance.json +2754 -0
  34. package/artifacts/Wallets.json +186 -0
  35. package/artifacts/solcInputs/5e62cff1ead0900b07facca4b559e818.json +314 -0
  36. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
  37. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.json +2 -2
  38. package/build/contracts/bank/Bank.sol/Bank.dbg.json +4 -0
  39. package/build/contracts/bank/Bank.sol/Bank.json +542 -0
  40. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +4 -0
  41. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.json +34 -0
  42. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +4 -0
  43. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.json +10 -0
  44. package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +4 -0
  45. package/build/contracts/bridge/Bridge.sol/Bridge.json +2686 -0
  46. package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +4 -0
  47. package/build/contracts/bridge/BridgeState.sol/BridgeState.json +226 -0
  48. package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +4 -0
  49. package/build/contracts/bridge/Deposit.sol/Deposit.json +72 -0
  50. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +4 -0
  51. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.json +30 -0
  52. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +4 -0
  53. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.json +10 -0
  54. package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +4 -0
  55. package/build/contracts/bridge/Fraud.sol/Fraud.json +86 -0
  56. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +4 -0
  57. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.json +10 -0
  58. package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +4 -0
  59. package/build/contracts/bridge/IRelay.sol/IRelay.json +37 -0
  60. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +4 -0
  61. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.json +138 -0
  62. package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +4 -0
  63. package/build/contracts/bridge/Redemption.sol/OutboundTx.json +10 -0
  64. package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +4 -0
  65. package/build/contracts/bridge/Redemption.sol/Redemption.json +92 -0
  66. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
  67. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.json +2 -2
  68. package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +4 -0
  69. package/build/contracts/bridge/Wallets.sol/Wallets.json +112 -0
  70. package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
  71. package/build/contracts/token/TBTC.sol/TBTC.json +4 -4
  72. package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +4 -0
  73. package/build/contracts/vault/DonationVault.sol/DonationVault.json +108 -0
  74. package/build/contracts/vault/IVault.sol/IVault.dbg.json +4 -0
  75. package/build/contracts/vault/IVault.sol/IVault.json +52 -0
  76. package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +4 -0
  77. package/build/contracts/vault/TBTCVault.sol/TBTCVault.json +449 -0
  78. package/contracts/GovernanceUtils.sol +4 -4
  79. package/contracts/bank/Bank.sol +436 -0
  80. package/contracts/bank/IReceiveBalanceApproval.sol +45 -0
  81. package/contracts/bridge/BitcoinTx.sol +326 -0
  82. package/contracts/bridge/Bridge.sol +1793 -0
  83. package/contracts/bridge/BridgeState.sol +739 -0
  84. package/contracts/bridge/Deposit.sol +269 -0
  85. package/contracts/bridge/DepositSweep.sol +574 -0
  86. package/contracts/bridge/EcdsaLib.sol +45 -0
  87. package/contracts/bridge/Fraud.sol +579 -0
  88. package/contracts/bridge/Heartbeat.sol +112 -0
  89. package/contracts/bridge/IRelay.sol +28 -0
  90. package/contracts/bridge/MovingFunds.sol +1077 -0
  91. package/contracts/bridge/Redemption.sol +1020 -0
  92. package/contracts/bridge/VendingMachine.sol +2 -2
  93. package/contracts/bridge/Wallets.sol +719 -0
  94. package/contracts/hardhat-dependency-compiler/.hardhat-dependency-compiler +1 -0
  95. package/contracts/hardhat-dependency-compiler/@keep-network/ecdsa/contracts/WalletRegistry.sol +3 -0
  96. package/contracts/hardhat-dependency-compiler/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol +3 -0
  97. package/contracts/hardhat-dependency-compiler/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +3 -0
  98. package/contracts/token/TBTC.sol +1 -1
  99. package/contracts/vault/DonationVault.sol +125 -0
  100. package/contracts/vault/IVault.sol +44 -0
  101. package/contracts/vault/TBTCVault.sol +305 -0
  102. package/deploy/00_resolve_relay.ts +28 -0
  103. package/deploy/00_resolve_tbtc_v1_token.ts +1 -1
  104. package/deploy/01_deploy_tbtc_v2_token.ts +8 -1
  105. package/deploy/02_deploy_vending_machine.ts +7 -0
  106. package/deploy/{03_transfer_roles.ts → 03_transfer_vending_machine_roles.ts} +1 -1
  107. package/deploy/04_deploy_bank.ts +27 -0
  108. package/deploy/05_deploy_bridge.ts +80 -0
  109. package/deploy/06_deploy_tbtc_vault.ts +30 -0
  110. package/deploy/07_bank_update_bridge.ts +19 -0
  111. package/deploy/08_transfer_bank_ownership.ts +15 -0
  112. package/deploy/09_transfer_tbtc_vault_ownership.ts +15 -0
  113. package/deploy/10_transfer_bridge_governance.ts +20 -0
  114. package/deploy/11_initialize_wallet_owner.ts +18 -0
  115. package/deploy/11_transfer_proxy_admin_ownership.ts +30 -0
  116. package/deploy/12_deploy_proxy_admin_with_deputy.ts +33 -0
  117. package/export/deploy/00_resolve_relay.js +24 -0
  118. package/export/deploy/00_resolve_tbtc_v1_token.js +24 -0
  119. package/export/deploy/01_deploy_tbtc_v2_token.js +19 -0
  120. package/export/deploy/02_deploy_vending_machine.js +25 -0
  121. package/export/deploy/03_transfer_vending_machine_roles.js +19 -0
  122. package/export/deploy/04_deploy_bank.js +21 -0
  123. package/export/deploy/05_deploy_bridge.js +69 -0
  124. package/export/deploy/06_deploy_tbtc_vault.js +24 -0
  125. package/export/deploy/07_bank_update_bridge.js +13 -0
  126. package/export/deploy/08_transfer_bank_ownership.js +11 -0
  127. package/export/deploy/09_transfer_tbtc_vault_ownership.js +11 -0
  128. package/export/deploy/10_transfer_bridge_governance.js +11 -0
  129. package/export/deploy/11_initialize_wallet_owner.js +14 -0
  130. package/export/deploy/11_transfer_proxy_admin_ownership.js +23 -0
  131. package/export/deploy/12_deploy_proxy_admin_with_deputy.js +22 -0
  132. package/export/hardhat.config.js +169 -0
  133. package/export/test/bank/Bank.test.js +1012 -0
  134. package/export/test/bridge/Bridge.Deployment.test.js +76 -0
  135. package/export/test/bridge/Bridge.Deposit.test.js +1834 -0
  136. package/export/test/bridge/Bridge.Frauds.test.js +1349 -0
  137. package/export/test/bridge/Bridge.MovingFunds.test.js +2437 -0
  138. package/export/test/bridge/Bridge.Parameters.test.js +400 -0
  139. package/export/test/bridge/Bridge.Redemption.test.js +2523 -0
  140. package/export/test/bridge/Bridge.Vaults.test.js +74 -0
  141. package/export/test/bridge/Bridge.Wallets.test.js +1017 -0
  142. package/export/test/bridge/EcdsaLib.test.js +46 -0
  143. package/export/test/bridge/Heartbeat.test.js +77 -0
  144. package/export/test/bridge/VendingMachine.Upgrade.test.js +160 -0
  145. package/export/test/bridge/VendingMachine.test.js +762 -0
  146. package/export/test/data/deposit-sweep.js +655 -0
  147. package/export/test/data/ecdsa.js +18 -0
  148. package/export/test/data/fraud.js +158 -0
  149. package/export/test/data/moving-funds.js +815 -0
  150. package/export/test/data/redemption.js +1011 -0
  151. package/export/test/fixtures/bridge.js +54 -0
  152. package/export/test/fixtures/index.js +57 -0
  153. package/export/test/helpers/contract-test-helpers.js +18 -0
  154. package/export/test/integration/Slashing.test.js +279 -0
  155. package/export/test/integration/WalleCreation.test.js +66 -0
  156. package/export/test/integration/utils/ecdsa-wallet-registry.js +137 -0
  157. package/export/test/integration/utils/fixture.js +77 -0
  158. package/export/test/integration/utils/gas.js +36 -0
  159. package/export/test/integration/utils/random-beacon.js +26 -0
  160. package/export/test/integration/utils/staking.js +19 -0
  161. package/export/test/vault/DonationVault.test.js +202 -0
  162. package/export/test/vault/TBTCVault.Redemption.test.js +357 -0
  163. package/export/test/vault/TBTCVault.test.js +768 -0
  164. package/export/typechain/BTCUtils.js +2 -0
  165. package/export/typechain/Bank.js +2 -0
  166. package/export/typechain/BankStub.js +2 -0
  167. package/export/typechain/Bridge.js +2 -0
  168. package/export/typechain/BridgeState.js +2 -0
  169. package/export/typechain/BridgeStub.js +2 -0
  170. package/export/typechain/Deposit.js +2 -0
  171. package/export/typechain/DepositSweep.js +2 -0
  172. package/export/typechain/DonationVault.js +2 -0
  173. package/export/typechain/ERC165.js +2 -0
  174. package/export/typechain/ERC1967Proxy.js +2 -0
  175. package/export/typechain/ERC1967Upgrade.js +2 -0
  176. package/export/typechain/ERC20WithPermit.js +2 -0
  177. package/export/typechain/ERC721.js +2 -0
  178. package/export/typechain/EcdsaAuthorization.js +2 -0
  179. package/export/typechain/EcdsaDkg.js +2 -0
  180. package/export/typechain/EcdsaDkgValidator.js +2 -0
  181. package/export/typechain/EcdsaInactivity.js +2 -0
  182. package/export/typechain/Fraud.js +2 -0
  183. package/export/typechain/Governable.js +2 -0
  184. package/export/typechain/HeartbeatStub.js +2 -0
  185. package/export/typechain/IApplication.js +2 -0
  186. package/export/typechain/IApproveAndCall.js +2 -0
  187. package/export/typechain/IBeacon.js +2 -0
  188. package/export/typechain/IERC165.js +2 -0
  189. package/export/typechain/IERC1822Proxiable.js +2 -0
  190. package/export/typechain/IERC20.js +2 -0
  191. package/export/typechain/IERC20Metadata.js +2 -0
  192. package/export/typechain/IERC20WithPermit.js +2 -0
  193. package/export/typechain/IERC721.js +2 -0
  194. package/export/typechain/IERC721Metadata.js +2 -0
  195. package/export/typechain/IERC721Receiver.js +2 -0
  196. package/export/typechain/IRandomBeacon.js +2 -0
  197. package/export/typechain/IRandomBeaconConsumer.js +2 -0
  198. package/export/typechain/IReceiveApproval.js +2 -0
  199. package/export/typechain/IReceiveBalanceApproval.js +2 -0
  200. package/export/typechain/IRelay.js +2 -0
  201. package/export/typechain/IStaking.js +2 -0
  202. package/export/typechain/IVault.js +2 -0
  203. package/export/typechain/IWalletOwner.js +2 -0
  204. package/export/typechain/IWalletRegistry.js +2 -0
  205. package/export/typechain/Initializable.js +2 -0
  206. package/export/typechain/MisfundRecovery.js +2 -0
  207. package/export/typechain/MovingFunds.js +2 -0
  208. package/export/typechain/Ownable.js +2 -0
  209. package/export/typechain/Proxy.js +2 -0
  210. package/export/typechain/ProxyAdmin.js +2 -0
  211. package/export/typechain/ReceiveApprovalStub.js +2 -0
  212. package/export/typechain/Redemption.js +2 -0
  213. package/export/typechain/Reimbursable.js +2 -0
  214. package/export/typechain/ReimbursementPool.js +2 -0
  215. package/export/typechain/Rewards.js +2 -0
  216. package/export/typechain/SortitionPool.js +2 -0
  217. package/export/typechain/SortitionTree.js +2 -0
  218. package/export/typechain/TBTC.js +2 -0
  219. package/export/typechain/TBTCVault.js +2 -0
  220. package/export/typechain/TestERC20.js +2 -0
  221. package/export/typechain/TestERC721.js +2 -0
  222. package/export/typechain/TestEcdsaLib.js +2 -0
  223. package/export/typechain/TestRelay.js +2 -0
  224. package/export/typechain/TransparentUpgradeableProxy.js +2 -0
  225. package/export/typechain/VendingMachine.js +2 -0
  226. package/export/typechain/WalletRegistry.js +2 -0
  227. package/export/typechain/Wallets.js +2 -0
  228. package/export/typechain/common.js +2 -0
  229. package/export/typechain/factories/BTCUtils__factory.js +94 -0
  230. package/export/typechain/factories/BankStub__factory.js +586 -0
  231. package/export/typechain/factories/Bank__factory.js +573 -0
  232. package/export/typechain/factories/BridgeState__factory.js +257 -0
  233. package/export/typechain/factories/BridgeStub__factory.js +2912 -0
  234. package/export/typechain/factories/Bridge__factory.js +2526 -0
  235. package/export/typechain/factories/DepositSweep__factory.js +61 -0
  236. package/export/typechain/factories/Deposit__factory.js +103 -0
  237. package/export/typechain/factories/DonationVault__factory.js +139 -0
  238. package/export/typechain/factories/ERC165__factory.js +38 -0
  239. package/export/typechain/factories/ERC1967Proxy__factory.js +111 -0
  240. package/export/typechain/factories/ERC1967Upgrade__factory.js +64 -0
  241. package/export/typechain/factories/ERC20WithPermit__factory.js +524 -0
  242. package/export/typechain/factories/ERC721__factory.js +388 -0
  243. package/export/typechain/factories/EcdsaAuthorization__factory.js +211 -0
  244. package/export/typechain/factories/EcdsaDkgValidator__factory.js +441 -0
  245. package/export/typechain/factories/EcdsaDkg__factory.js +192 -0
  246. package/export/typechain/factories/EcdsaInactivity__factory.js +134 -0
  247. package/export/typechain/factories/Fraud__factory.js +117 -0
  248. package/export/typechain/factories/Governable__factory.js +64 -0
  249. package/export/typechain/factories/HeartbeatStub__factory.js +61 -0
  250. package/export/typechain/factories/IApplication__factory.js +152 -0
  251. package/export/typechain/factories/IApproveAndCall__factory.js +48 -0
  252. package/export/typechain/factories/IBeacon__factory.js +32 -0
  253. package/export/typechain/factories/IERC165__factory.js +38 -0
  254. package/export/typechain/factories/IERC1822Proxiable__factory.js +32 -0
  255. package/export/typechain/factories/IERC20Metadata__factory.js +241 -0
  256. package/export/typechain/factories/IERC20WithPermit__factory.js +389 -0
  257. package/export/typechain/factories/IERC20__factory.js +202 -0
  258. package/export/typechain/factories/IERC721Metadata__factory.js +349 -0
  259. package/export/typechain/factories/IERC721Receiver__factory.js +53 -0
  260. package/export/typechain/factories/IERC721__factory.js +304 -0
  261. package/export/typechain/factories/IRandomBeaconConsumer__factory.js +37 -0
  262. package/export/typechain/factories/IRandomBeacon__factory.js +32 -0
  263. package/export/typechain/factories/IReceiveApproval__factory.js +47 -0
  264. package/export/typechain/factories/IReceiveBalanceApproval__factory.js +42 -0
  265. package/export/typechain/factories/IRelay__factory.js +45 -0
  266. package/export/typechain/factories/IStaking__factory.js +722 -0
  267. package/export/typechain/factories/IVault__factory.js +60 -0
  268. package/export/typechain/factories/IWalletOwner__factory.js +65 -0
  269. package/export/typechain/factories/IWalletRegistry__factory.js +138 -0
  270. package/export/typechain/factories/Initializable__factory.js +32 -0
  271. package/export/typechain/factories/MisfundRecovery__factory.js +145 -0
  272. package/export/typechain/factories/MovingFunds__factory.js +169 -0
  273. package/export/typechain/factories/Ownable__factory.js +71 -0
  274. package/export/typechain/factories/ProxyAdmin__factory.js +191 -0
  275. package/export/typechain/factories/Proxy__factory.js +27 -0
  276. package/export/typechain/factories/ReceiveApprovalStub__factory.js +127 -0
  277. package/export/typechain/factories/Redemption__factory.js +123 -0
  278. package/export/typechain/factories/Reimbursable__factory.js +58 -0
  279. package/export/typechain/factories/ReimbursementPool__factory.js +350 -0
  280. package/export/typechain/factories/Rewards__factory.js +117 -0
  281. package/export/typechain/factories/SortitionPool__factory.js +610 -0
  282. package/export/typechain/factories/SortitionTree__factory.js +149 -0
  283. package/export/typechain/factories/TBTCVault__factory.js +480 -0
  284. package/export/typechain/factories/TBTC__factory.js +564 -0
  285. package/export/typechain/factories/TestERC20__factory.js +539 -0
  286. package/export/typechain/factories/TestERC721__factory.js +421 -0
  287. package/export/typechain/factories/TestEcdsaLib__factory.js +66 -0
  288. package/export/typechain/factories/TestRelay__factory.js +94 -0
  289. package/export/typechain/factories/TransparentUpgradeableProxy__factory.js +186 -0
  290. package/export/typechain/factories/VendingMachine__factory.js +549 -0
  291. package/export/typechain/factories/WalletRegistry__factory.js +1919 -0
  292. package/export/typechain/factories/Wallets__factory.js +143 -0
  293. package/export/typechain/index.js +132 -0
  294. package/export.json +15932 -503
  295. package/package.json +47 -26
  296. package/artifacts/solcInputs/7cc3eda3cb3ff2522d18b5e7b31ea228.json +0 -104
@@ -0,0 +1,722 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ /* tslint:disable */
4
+ /* eslint-disable */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.IStaking__factory = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "address",
13
+ name: "application",
14
+ type: "address",
15
+ },
16
+ ],
17
+ name: "approveApplication",
18
+ outputs: [],
19
+ stateMutability: "nonpayable",
20
+ type: "function",
21
+ },
22
+ {
23
+ inputs: [
24
+ {
25
+ internalType: "address",
26
+ name: "stakingProvider",
27
+ type: "address",
28
+ },
29
+ ],
30
+ name: "approveAuthorizationDecrease",
31
+ outputs: [
32
+ {
33
+ internalType: "uint96",
34
+ name: "",
35
+ type: "uint96",
36
+ },
37
+ ],
38
+ stateMutability: "nonpayable",
39
+ type: "function",
40
+ },
41
+ {
42
+ inputs: [
43
+ {
44
+ internalType: "address",
45
+ name: "stakingProvider",
46
+ type: "address",
47
+ },
48
+ {
49
+ internalType: "address",
50
+ name: "application",
51
+ type: "address",
52
+ },
53
+ ],
54
+ name: "authorizedStake",
55
+ outputs: [
56
+ {
57
+ internalType: "uint96",
58
+ name: "",
59
+ type: "uint96",
60
+ },
61
+ ],
62
+ stateMutability: "view",
63
+ type: "function",
64
+ },
65
+ {
66
+ inputs: [
67
+ {
68
+ internalType: "address",
69
+ name: "application",
70
+ type: "address",
71
+ },
72
+ ],
73
+ name: "disableApplication",
74
+ outputs: [],
75
+ stateMutability: "nonpayable",
76
+ type: "function",
77
+ },
78
+ {
79
+ inputs: [
80
+ {
81
+ internalType: "address",
82
+ name: "stakingProvider",
83
+ type: "address",
84
+ },
85
+ {
86
+ internalType: "address",
87
+ name: "application",
88
+ type: "address",
89
+ },
90
+ ],
91
+ name: "forceDecreaseAuthorization",
92
+ outputs: [],
93
+ stateMutability: "nonpayable",
94
+ type: "function",
95
+ },
96
+ {
97
+ inputs: [],
98
+ name: "getApplicationsLength",
99
+ outputs: [
100
+ {
101
+ internalType: "uint256",
102
+ name: "",
103
+ type: "uint256",
104
+ },
105
+ ],
106
+ stateMutability: "view",
107
+ type: "function",
108
+ },
109
+ {
110
+ inputs: [
111
+ {
112
+ internalType: "address",
113
+ name: "stakingProvider",
114
+ type: "address",
115
+ },
116
+ {
117
+ internalType: "address",
118
+ name: "application",
119
+ type: "address",
120
+ },
121
+ ],
122
+ name: "getAvailableToAuthorize",
123
+ outputs: [
124
+ {
125
+ internalType: "uint96",
126
+ name: "",
127
+ type: "uint96",
128
+ },
129
+ ],
130
+ stateMutability: "view",
131
+ type: "function",
132
+ },
133
+ {
134
+ inputs: [
135
+ {
136
+ internalType: "address",
137
+ name: "stakingProvider",
138
+ type: "address",
139
+ },
140
+ {
141
+ internalType: "enum IStaking.StakeType",
142
+ name: "stakeTypes",
143
+ type: "uint8",
144
+ },
145
+ ],
146
+ name: "getMinStaked",
147
+ outputs: [
148
+ {
149
+ internalType: "uint96",
150
+ name: "",
151
+ type: "uint96",
152
+ },
153
+ ],
154
+ stateMutability: "view",
155
+ type: "function",
156
+ },
157
+ {
158
+ inputs: [],
159
+ name: "getSlashingQueueLength",
160
+ outputs: [
161
+ {
162
+ internalType: "uint256",
163
+ name: "",
164
+ type: "uint256",
165
+ },
166
+ ],
167
+ stateMutability: "view",
168
+ type: "function",
169
+ },
170
+ {
171
+ inputs: [
172
+ {
173
+ internalType: "address",
174
+ name: "stakingProvider",
175
+ type: "address",
176
+ },
177
+ ],
178
+ name: "getStartStakingTimestamp",
179
+ outputs: [
180
+ {
181
+ internalType: "uint256",
182
+ name: "",
183
+ type: "uint256",
184
+ },
185
+ ],
186
+ stateMutability: "view",
187
+ type: "function",
188
+ },
189
+ {
190
+ inputs: [
191
+ {
192
+ internalType: "address",
193
+ name: "stakingProvider",
194
+ type: "address",
195
+ },
196
+ {
197
+ internalType: "address",
198
+ name: "application",
199
+ type: "address",
200
+ },
201
+ {
202
+ internalType: "uint96",
203
+ name: "amount",
204
+ type: "uint96",
205
+ },
206
+ ],
207
+ name: "increaseAuthorization",
208
+ outputs: [],
209
+ stateMutability: "nonpayable",
210
+ type: "function",
211
+ },
212
+ {
213
+ inputs: [
214
+ {
215
+ internalType: "address",
216
+ name: "stakingProvider",
217
+ type: "address",
218
+ },
219
+ ],
220
+ name: "notifyKeepStakeDiscrepancy",
221
+ outputs: [],
222
+ stateMutability: "nonpayable",
223
+ type: "function",
224
+ },
225
+ {
226
+ inputs: [
227
+ {
228
+ internalType: "address",
229
+ name: "stakingProvider",
230
+ type: "address",
231
+ },
232
+ ],
233
+ name: "notifyNuStakeDiscrepancy",
234
+ outputs: [],
235
+ stateMutability: "nonpayable",
236
+ type: "function",
237
+ },
238
+ {
239
+ inputs: [
240
+ {
241
+ internalType: "address",
242
+ name: "application",
243
+ type: "address",
244
+ },
245
+ ],
246
+ name: "pauseApplication",
247
+ outputs: [],
248
+ stateMutability: "nonpayable",
249
+ type: "function",
250
+ },
251
+ {
252
+ inputs: [
253
+ {
254
+ internalType: "uint256",
255
+ name: "count",
256
+ type: "uint256",
257
+ },
258
+ ],
259
+ name: "processSlashing",
260
+ outputs: [],
261
+ stateMutability: "nonpayable",
262
+ type: "function",
263
+ },
264
+ {
265
+ inputs: [
266
+ {
267
+ internalType: "uint96",
268
+ name: "reward",
269
+ type: "uint96",
270
+ },
271
+ ],
272
+ name: "pushNotificationReward",
273
+ outputs: [],
274
+ stateMutability: "nonpayable",
275
+ type: "function",
276
+ },
277
+ {
278
+ inputs: [
279
+ {
280
+ internalType: "address",
281
+ name: "stakingProvider",
282
+ type: "address",
283
+ },
284
+ ],
285
+ name: "refreshKeepStakeOwner",
286
+ outputs: [],
287
+ stateMutability: "nonpayable",
288
+ type: "function",
289
+ },
290
+ {
291
+ inputs: [
292
+ {
293
+ internalType: "address",
294
+ name: "stakingProvider",
295
+ type: "address",
296
+ },
297
+ {
298
+ internalType: "address",
299
+ name: "application",
300
+ type: "address",
301
+ },
302
+ {
303
+ internalType: "uint96",
304
+ name: "amount",
305
+ type: "uint96",
306
+ },
307
+ ],
308
+ name: "requestAuthorizationDecrease",
309
+ outputs: [],
310
+ stateMutability: "nonpayable",
311
+ type: "function",
312
+ },
313
+ {
314
+ inputs: [
315
+ {
316
+ internalType: "address",
317
+ name: "stakingProvider",
318
+ type: "address",
319
+ },
320
+ ],
321
+ name: "requestAuthorizationDecrease",
322
+ outputs: [],
323
+ stateMutability: "nonpayable",
324
+ type: "function",
325
+ },
326
+ {
327
+ inputs: [
328
+ {
329
+ internalType: "address",
330
+ name: "stakingProvider",
331
+ type: "address",
332
+ },
333
+ ],
334
+ name: "rolesOf",
335
+ outputs: [
336
+ {
337
+ internalType: "address",
338
+ name: "owner",
339
+ type: "address",
340
+ },
341
+ {
342
+ internalType: "address payable",
343
+ name: "beneficiary",
344
+ type: "address",
345
+ },
346
+ {
347
+ internalType: "address",
348
+ name: "authorizer",
349
+ type: "address",
350
+ },
351
+ ],
352
+ stateMutability: "view",
353
+ type: "function",
354
+ },
355
+ {
356
+ inputs: [
357
+ {
358
+ internalType: "uint96",
359
+ name: "amount",
360
+ type: "uint96",
361
+ },
362
+ {
363
+ internalType: "uint256",
364
+ name: "rewardMultipier",
365
+ type: "uint256",
366
+ },
367
+ {
368
+ internalType: "address",
369
+ name: "notifier",
370
+ type: "address",
371
+ },
372
+ {
373
+ internalType: "address[]",
374
+ name: "stakingProviders",
375
+ type: "address[]",
376
+ },
377
+ ],
378
+ name: "seize",
379
+ outputs: [],
380
+ stateMutability: "nonpayable",
381
+ type: "function",
382
+ },
383
+ {
384
+ inputs: [
385
+ {
386
+ internalType: "uint256",
387
+ name: "ceiling",
388
+ type: "uint256",
389
+ },
390
+ ],
391
+ name: "setAuthorizationCeiling",
392
+ outputs: [],
393
+ stateMutability: "nonpayable",
394
+ type: "function",
395
+ },
396
+ {
397
+ inputs: [
398
+ {
399
+ internalType: "uint96",
400
+ name: "amount",
401
+ type: "uint96",
402
+ },
403
+ ],
404
+ name: "setMinimumStakeAmount",
405
+ outputs: [],
406
+ stateMutability: "nonpayable",
407
+ type: "function",
408
+ },
409
+ {
410
+ inputs: [
411
+ {
412
+ internalType: "uint96",
413
+ name: "reward",
414
+ type: "uint96",
415
+ },
416
+ ],
417
+ name: "setNotificationReward",
418
+ outputs: [],
419
+ stateMutability: "nonpayable",
420
+ type: "function",
421
+ },
422
+ {
423
+ inputs: [
424
+ {
425
+ internalType: "address",
426
+ name: "application",
427
+ type: "address",
428
+ },
429
+ {
430
+ internalType: "address",
431
+ name: "panicButton",
432
+ type: "address",
433
+ },
434
+ ],
435
+ name: "setPanicButton",
436
+ outputs: [],
437
+ stateMutability: "nonpayable",
438
+ type: "function",
439
+ },
440
+ {
441
+ inputs: [
442
+ {
443
+ internalType: "uint96",
444
+ name: "penalty",
445
+ type: "uint96",
446
+ },
447
+ {
448
+ internalType: "uint256",
449
+ name: "rewardMultiplier",
450
+ type: "uint256",
451
+ },
452
+ ],
453
+ name: "setStakeDiscrepancyPenalty",
454
+ outputs: [],
455
+ stateMutability: "nonpayable",
456
+ type: "function",
457
+ },
458
+ {
459
+ inputs: [
460
+ {
461
+ internalType: "uint96",
462
+ name: "amount",
463
+ type: "uint96",
464
+ },
465
+ {
466
+ internalType: "address[]",
467
+ name: "stakingProviders",
468
+ type: "address[]",
469
+ },
470
+ ],
471
+ name: "slash",
472
+ outputs: [],
473
+ stateMutability: "nonpayable",
474
+ type: "function",
475
+ },
476
+ {
477
+ inputs: [
478
+ {
479
+ internalType: "address",
480
+ name: "stakingProvider",
481
+ type: "address",
482
+ },
483
+ {
484
+ internalType: "address payable",
485
+ name: "beneficiary",
486
+ type: "address",
487
+ },
488
+ {
489
+ internalType: "address",
490
+ name: "authorizer",
491
+ type: "address",
492
+ },
493
+ {
494
+ internalType: "uint96",
495
+ name: "amount",
496
+ type: "uint96",
497
+ },
498
+ ],
499
+ name: "stake",
500
+ outputs: [],
501
+ stateMutability: "nonpayable",
502
+ type: "function",
503
+ },
504
+ {
505
+ inputs: [
506
+ {
507
+ internalType: "address",
508
+ name: "stakingProvider",
509
+ type: "address",
510
+ },
511
+ ],
512
+ name: "stakeKeep",
513
+ outputs: [],
514
+ stateMutability: "nonpayable",
515
+ type: "function",
516
+ },
517
+ {
518
+ inputs: [
519
+ {
520
+ internalType: "address",
521
+ name: "stakingProvider",
522
+ type: "address",
523
+ },
524
+ {
525
+ internalType: "address payable",
526
+ name: "beneficiary",
527
+ type: "address",
528
+ },
529
+ {
530
+ internalType: "address",
531
+ name: "authorizer",
532
+ type: "address",
533
+ },
534
+ ],
535
+ name: "stakeNu",
536
+ outputs: [],
537
+ stateMutability: "nonpayable",
538
+ type: "function",
539
+ },
540
+ {
541
+ inputs: [
542
+ {
543
+ internalType: "address",
544
+ name: "stakingProvider",
545
+ type: "address",
546
+ },
547
+ ],
548
+ name: "stakedNu",
549
+ outputs: [
550
+ {
551
+ internalType: "uint256",
552
+ name: "",
553
+ type: "uint256",
554
+ },
555
+ ],
556
+ stateMutability: "view",
557
+ type: "function",
558
+ },
559
+ {
560
+ inputs: [
561
+ {
562
+ internalType: "address",
563
+ name: "stakingProvider",
564
+ type: "address",
565
+ },
566
+ ],
567
+ name: "stakes",
568
+ outputs: [
569
+ {
570
+ internalType: "uint96",
571
+ name: "tStake",
572
+ type: "uint96",
573
+ },
574
+ {
575
+ internalType: "uint96",
576
+ name: "keepInTStake",
577
+ type: "uint96",
578
+ },
579
+ {
580
+ internalType: "uint96",
581
+ name: "nuInTStake",
582
+ type: "uint96",
583
+ },
584
+ ],
585
+ stateMutability: "view",
586
+ type: "function",
587
+ },
588
+ {
589
+ inputs: [
590
+ {
591
+ internalType: "address",
592
+ name: "stakingProvider",
593
+ type: "address",
594
+ },
595
+ {
596
+ internalType: "uint96",
597
+ name: "amount",
598
+ type: "uint96",
599
+ },
600
+ ],
601
+ name: "topUp",
602
+ outputs: [],
603
+ stateMutability: "nonpayable",
604
+ type: "function",
605
+ },
606
+ {
607
+ inputs: [
608
+ {
609
+ internalType: "address",
610
+ name: "stakingProvider",
611
+ type: "address",
612
+ },
613
+ ],
614
+ name: "topUpKeep",
615
+ outputs: [],
616
+ stateMutability: "nonpayable",
617
+ type: "function",
618
+ },
619
+ {
620
+ inputs: [
621
+ {
622
+ internalType: "address",
623
+ name: "stakingProvider",
624
+ type: "address",
625
+ },
626
+ ],
627
+ name: "topUpNu",
628
+ outputs: [],
629
+ stateMutability: "nonpayable",
630
+ type: "function",
631
+ },
632
+ {
633
+ inputs: [
634
+ {
635
+ internalType: "address",
636
+ name: "stakingProvider",
637
+ type: "address",
638
+ },
639
+ ],
640
+ name: "unstakeAll",
641
+ outputs: [],
642
+ stateMutability: "nonpayable",
643
+ type: "function",
644
+ },
645
+ {
646
+ inputs: [
647
+ {
648
+ internalType: "address",
649
+ name: "stakingProvider",
650
+ type: "address",
651
+ },
652
+ ],
653
+ name: "unstakeKeep",
654
+ outputs: [],
655
+ stateMutability: "nonpayable",
656
+ type: "function",
657
+ },
658
+ {
659
+ inputs: [
660
+ {
661
+ internalType: "address",
662
+ name: "stakingProvider",
663
+ type: "address",
664
+ },
665
+ {
666
+ internalType: "uint96",
667
+ name: "amount",
668
+ type: "uint96",
669
+ },
670
+ ],
671
+ name: "unstakeNu",
672
+ outputs: [],
673
+ stateMutability: "nonpayable",
674
+ type: "function",
675
+ },
676
+ {
677
+ inputs: [
678
+ {
679
+ internalType: "address",
680
+ name: "stakingProvider",
681
+ type: "address",
682
+ },
683
+ {
684
+ internalType: "uint96",
685
+ name: "amount",
686
+ type: "uint96",
687
+ },
688
+ ],
689
+ name: "unstakeT",
690
+ outputs: [],
691
+ stateMutability: "nonpayable",
692
+ type: "function",
693
+ },
694
+ {
695
+ inputs: [
696
+ {
697
+ internalType: "address",
698
+ name: "recipient",
699
+ type: "address",
700
+ },
701
+ {
702
+ internalType: "uint96",
703
+ name: "amount",
704
+ type: "uint96",
705
+ },
706
+ ],
707
+ name: "withdrawNotificationReward",
708
+ outputs: [],
709
+ stateMutability: "nonpayable",
710
+ type: "function",
711
+ },
712
+ ];
713
+ class IStaking__factory {
714
+ static createInterface() {
715
+ return new ethers_1.utils.Interface(_abi);
716
+ }
717
+ static connect(address, signerOrProvider) {
718
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
719
+ }
720
+ }
721
+ exports.IStaking__factory = IStaking__factory;
722
+ IStaking__factory.abi = _abi;