@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,60 @@
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.IVault__factory = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "address",
13
+ name: "owner",
14
+ type: "address",
15
+ },
16
+ {
17
+ internalType: "uint256",
18
+ name: "amount",
19
+ type: "uint256",
20
+ },
21
+ {
22
+ internalType: "bytes",
23
+ name: "extraData",
24
+ type: "bytes",
25
+ },
26
+ ],
27
+ name: "receiveBalanceApproval",
28
+ outputs: [],
29
+ stateMutability: "nonpayable",
30
+ type: "function",
31
+ },
32
+ {
33
+ inputs: [
34
+ {
35
+ internalType: "address[]",
36
+ name: "depositors",
37
+ type: "address[]",
38
+ },
39
+ {
40
+ internalType: "uint256[]",
41
+ name: "depositedAmounts",
42
+ type: "uint256[]",
43
+ },
44
+ ],
45
+ name: "receiveBalanceIncrease",
46
+ outputs: [],
47
+ stateMutability: "nonpayable",
48
+ type: "function",
49
+ },
50
+ ];
51
+ class IVault__factory {
52
+ static createInterface() {
53
+ return new ethers_1.utils.Interface(_abi);
54
+ }
55
+ static connect(address, signerOrProvider) {
56
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
57
+ }
58
+ }
59
+ exports.IVault__factory = IVault__factory;
60
+ IVault__factory.abi = _abi;
@@ -0,0 +1,65 @@
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.IWalletOwner__factory = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "bytes32",
13
+ name: "walletID",
14
+ type: "bytes32",
15
+ },
16
+ {
17
+ internalType: "bytes32",
18
+ name: "publicKeyX",
19
+ type: "bytes32",
20
+ },
21
+ {
22
+ internalType: "bytes32",
23
+ name: "publicKeyY",
24
+ type: "bytes32",
25
+ },
26
+ ],
27
+ name: "__ecdsaWalletCreatedCallback",
28
+ outputs: [],
29
+ stateMutability: "nonpayable",
30
+ type: "function",
31
+ },
32
+ {
33
+ inputs: [
34
+ {
35
+ internalType: "bytes32",
36
+ name: "walletID",
37
+ type: "bytes32",
38
+ },
39
+ {
40
+ internalType: "bytes32",
41
+ name: "publicKeyX",
42
+ type: "bytes32",
43
+ },
44
+ {
45
+ internalType: "bytes32",
46
+ name: "publicKeyY",
47
+ type: "bytes32",
48
+ },
49
+ ],
50
+ name: "__ecdsaWalletHeartbeatFailedCallback",
51
+ outputs: [],
52
+ stateMutability: "nonpayable",
53
+ type: "function",
54
+ },
55
+ ];
56
+ class IWalletOwner__factory {
57
+ static createInterface() {
58
+ return new ethers_1.utils.Interface(_abi);
59
+ }
60
+ static connect(address, signerOrProvider) {
61
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
62
+ }
63
+ }
64
+ exports.IWalletOwner__factory = IWalletOwner__factory;
65
+ IWalletOwner__factory.abi = _abi;
@@ -0,0 +1,138 @@
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.IWalletRegistry__factory = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "bytes32",
13
+ name: "walletID",
14
+ type: "bytes32",
15
+ },
16
+ ],
17
+ name: "closeWallet",
18
+ outputs: [],
19
+ stateMutability: "nonpayable",
20
+ type: "function",
21
+ },
22
+ {
23
+ inputs: [],
24
+ name: "getWalletCreationState",
25
+ outputs: [
26
+ {
27
+ internalType: "enum EcdsaDkg.State",
28
+ name: "",
29
+ type: "uint8",
30
+ },
31
+ ],
32
+ stateMutability: "view",
33
+ type: "function",
34
+ },
35
+ {
36
+ inputs: [
37
+ {
38
+ internalType: "bytes32",
39
+ name: "walletID",
40
+ type: "bytes32",
41
+ },
42
+ ],
43
+ name: "getWalletPublicKey",
44
+ outputs: [
45
+ {
46
+ internalType: "bytes",
47
+ name: "",
48
+ type: "bytes",
49
+ },
50
+ ],
51
+ stateMutability: "view",
52
+ type: "function",
53
+ },
54
+ {
55
+ inputs: [
56
+ {
57
+ internalType: "bytes32",
58
+ name: "walletID",
59
+ type: "bytes32",
60
+ },
61
+ {
62
+ internalType: "uint32[]",
63
+ name: "walletMembersIDs",
64
+ type: "uint32[]",
65
+ },
66
+ {
67
+ internalType: "address",
68
+ name: "operator",
69
+ type: "address",
70
+ },
71
+ {
72
+ internalType: "uint256",
73
+ name: "walletMemberIndex",
74
+ type: "uint256",
75
+ },
76
+ ],
77
+ name: "isWalletMember",
78
+ outputs: [
79
+ {
80
+ internalType: "bool",
81
+ name: "",
82
+ type: "bool",
83
+ },
84
+ ],
85
+ stateMutability: "view",
86
+ type: "function",
87
+ },
88
+ {
89
+ inputs: [],
90
+ name: "requestNewWallet",
91
+ outputs: [],
92
+ stateMutability: "nonpayable",
93
+ type: "function",
94
+ },
95
+ {
96
+ inputs: [
97
+ {
98
+ internalType: "uint96",
99
+ name: "amount",
100
+ type: "uint96",
101
+ },
102
+ {
103
+ internalType: "uint256",
104
+ name: "rewardMultiplier",
105
+ type: "uint256",
106
+ },
107
+ {
108
+ internalType: "address",
109
+ name: "notifier",
110
+ type: "address",
111
+ },
112
+ {
113
+ internalType: "bytes32",
114
+ name: "walletID",
115
+ type: "bytes32",
116
+ },
117
+ {
118
+ internalType: "uint32[]",
119
+ name: "walletMembersIDs",
120
+ type: "uint32[]",
121
+ },
122
+ ],
123
+ name: "seize",
124
+ outputs: [],
125
+ stateMutability: "nonpayable",
126
+ type: "function",
127
+ },
128
+ ];
129
+ class IWalletRegistry__factory {
130
+ static createInterface() {
131
+ return new ethers_1.utils.Interface(_abi);
132
+ }
133
+ static connect(address, signerOrProvider) {
134
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
135
+ }
136
+ }
137
+ exports.IWalletRegistry__factory = IWalletRegistry__factory;
138
+ IWalletRegistry__factory.abi = _abi;
@@ -0,0 +1,32 @@
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.Initializable__factory = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ anonymous: false,
11
+ inputs: [
12
+ {
13
+ indexed: false,
14
+ internalType: "uint8",
15
+ name: "version",
16
+ type: "uint8",
17
+ },
18
+ ],
19
+ name: "Initialized",
20
+ type: "event",
21
+ },
22
+ ];
23
+ class Initializable__factory {
24
+ static createInterface() {
25
+ return new ethers_1.utils.Interface(_abi);
26
+ }
27
+ static connect(address, signerOrProvider) {
28
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
29
+ }
30
+ }
31
+ exports.Initializable__factory = Initializable__factory;
32
+ Initializable__factory.abi = _abi;
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MisfundRecovery__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ anonymous: false,
11
+ inputs: [
12
+ {
13
+ indexed: true,
14
+ internalType: "address",
15
+ name: "previousOwner",
16
+ type: "address",
17
+ },
18
+ {
19
+ indexed: true,
20
+ internalType: "address",
21
+ name: "newOwner",
22
+ type: "address",
23
+ },
24
+ ],
25
+ name: "OwnershipTransferred",
26
+ type: "event",
27
+ },
28
+ {
29
+ inputs: [],
30
+ name: "owner",
31
+ outputs: [
32
+ {
33
+ internalType: "address",
34
+ name: "",
35
+ type: "address",
36
+ },
37
+ ],
38
+ stateMutability: "view",
39
+ type: "function",
40
+ },
41
+ {
42
+ inputs: [
43
+ {
44
+ internalType: "contract IERC20",
45
+ name: "token",
46
+ type: "address",
47
+ },
48
+ {
49
+ internalType: "address",
50
+ name: "recipient",
51
+ type: "address",
52
+ },
53
+ {
54
+ internalType: "uint256",
55
+ name: "amount",
56
+ type: "uint256",
57
+ },
58
+ ],
59
+ name: "recoverERC20",
60
+ outputs: [],
61
+ stateMutability: "nonpayable",
62
+ type: "function",
63
+ },
64
+ {
65
+ inputs: [
66
+ {
67
+ internalType: "contract IERC721",
68
+ name: "token",
69
+ type: "address",
70
+ },
71
+ {
72
+ internalType: "address",
73
+ name: "recipient",
74
+ type: "address",
75
+ },
76
+ {
77
+ internalType: "uint256",
78
+ name: "tokenId",
79
+ type: "uint256",
80
+ },
81
+ {
82
+ internalType: "bytes",
83
+ name: "data",
84
+ type: "bytes",
85
+ },
86
+ ],
87
+ name: "recoverERC721",
88
+ outputs: [],
89
+ stateMutability: "nonpayable",
90
+ type: "function",
91
+ },
92
+ {
93
+ inputs: [],
94
+ name: "renounceOwnership",
95
+ outputs: [],
96
+ stateMutability: "nonpayable",
97
+ type: "function",
98
+ },
99
+ {
100
+ inputs: [
101
+ {
102
+ internalType: "address",
103
+ name: "newOwner",
104
+ type: "address",
105
+ },
106
+ ],
107
+ name: "transferOwnership",
108
+ outputs: [],
109
+ stateMutability: "nonpayable",
110
+ type: "function",
111
+ },
112
+ ];
113
+ const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6109128061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c80638da5cb5b116100505780638da5cb5b14610089578063f2fde38b146100a8578063fc4e51f6146100bb57600080fd5b80631171bda91461006c578063715018a614610081575b600080fd5b61007f61007a3660046106ea565b6100ce565b005b61007f610146565b600054604080516001600160a01b039092168252519081900360200190f35b61007f6100b636600461072b565b6101ac565b61007f6100c9366004610748565b61028e565b6000546001600160a01b0316331461012d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6101416001600160a01b038416838361036e565b505050565b6000546001600160a01b031633146101a05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610124565b6101aa60006103ee565b565b6000546001600160a01b031633146102065760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610124565b6001600160a01b0381166102825760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610124565b61028b816103ee565b50565b6000546001600160a01b031633146102e85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610124565b6040517fb88d4fde0000000000000000000000000000000000000000000000000000000081526001600160a01b0386169063b88d4fde9061033590309088908890889088906004016107e7565b600060405180830381600087803b15801561034f57600080fd5b505af1158015610363573d6000803e3d6000fd5b505050505050505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052610141908490610456565b600080546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006104ab826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661053b9092919063ffffffff16565b80519091501561014157808060200190518101906104c9919061083b565b6101415760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610124565b606061054a8484600085610554565b90505b9392505050565b6060824710156105cc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610124565b6001600160a01b0385163b6106235760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610124565b600080866001600160a01b0316858760405161063f919061088d565b60006040518083038185875af1925050503d806000811461067c576040519150601f19603f3d011682016040523d82523d6000602084013e610681565b606091505b509150915061069182828661069c565b979650505050505050565b606083156106ab57508161054d565b8251156106bb5782518084602001fd5b8160405162461bcd60e51b815260040161012491906108a9565b6001600160a01b038116811461028b57600080fd5b6000806000606084860312156106ff57600080fd5b833561070a816106d5565b9250602084013561071a816106d5565b929592945050506040919091013590565b60006020828403121561073d57600080fd5b813561054d816106d5565b60008060008060006080868803121561076057600080fd5b853561076b816106d5565b9450602086013561077b816106d5565b935060408601359250606086013567ffffffffffffffff8082111561079f57600080fd5b818801915088601f8301126107b357600080fd5b8135818111156107c257600080fd5b8960208285010111156107d457600080fd5b9699959850939650602001949392505050565b60006001600160a01b03808816835280871660208401525084604083015260806060830152826080830152828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b60006020828403121561084d57600080fd5b8151801515811461054d57600080fd5b60005b83811015610878578181015183820152602001610860565b83811115610887576000848401525b50505050565b6000825161089f81846020870161085d565b9190910192915050565b60208152600082518060208401526108c881604085016020870161085d565b601f01601f1916919091016040019291505056fea2646970667358221220ff32c1aa918ca5dac3da3d928de46b242485480b1d02fbdcf18badb9bd69084764736f6c63430008090033";
114
+ const isSuperArgs = (xs) => xs.length > 1;
115
+ class MisfundRecovery__factory extends ethers_1.ContractFactory {
116
+ constructor(...args) {
117
+ if (isSuperArgs(args)) {
118
+ super(...args);
119
+ }
120
+ else {
121
+ super(_abi, _bytecode, args[0]);
122
+ }
123
+ }
124
+ deploy(overrides) {
125
+ return super.deploy(overrides || {});
126
+ }
127
+ getDeployTransaction(overrides) {
128
+ return super.getDeployTransaction(overrides || {});
129
+ }
130
+ attach(address) {
131
+ return super.attach(address);
132
+ }
133
+ connect(signer) {
134
+ return super.connect(signer);
135
+ }
136
+ static createInterface() {
137
+ return new ethers_1.utils.Interface(_abi);
138
+ }
139
+ static connect(address, signerOrProvider) {
140
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
141
+ }
142
+ }
143
+ exports.MisfundRecovery__factory = MisfundRecovery__factory;
144
+ MisfundRecovery__factory.bytecode = _bytecode;
145
+ MisfundRecovery__factory.abi = _abi;