@venusprotocol/venus-periphery 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/LICENSE +11 -0
  2. package/README.md +131 -0
  3. package/artifacts/build-info/3cc16515983b4ebd468ee3d5a8f0ac53.json +1 -0
  4. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/access/Ownable.sol/Ownable.dbg.json +4 -0
  5. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/access/Ownable.sol/Ownable.json +63 -0
  6. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +4 -0
  7. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/interfaces/draft-IERC1822.sol/IERC1822Proxiable.json +24 -0
  8. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +4 -0
  9. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.json +80 -0
  10. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +4 -0
  11. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.json +56 -0
  12. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/Proxy.sol/Proxy.dbg.json +4 -0
  13. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/Proxy.sol/Proxy.json +19 -0
  14. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +4 -0
  15. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/beacon/IBeacon.sol/IBeacon.json +24 -0
  16. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +4 -0
  17. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +171 -0
  18. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +4 -0
  19. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +155 -0
  20. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/utils/Address.sol/Address.dbg.json +4 -0
  21. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/utils/Address.sol/Address.json +10 -0
  22. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/utils/Context.sol/Context.dbg.json +4 -0
  23. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/utils/Context.sol/Context.json +10 -0
  24. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/utils/StorageSlot.sol/StorageSlot.dbg.json +4 -0
  25. package/artifacts/hardhat-deploy/solc_0.8/openzeppelin/utils/StorageSlot.sol/StorageSlot.json +10 -0
  26. package/artifacts/hardhat-deploy/solc_0.8/proxy/OptimizedTransparentUpgradeableProxy.sol/OptimizedTransparentUpgradeableProxy.dbg.json +4 -0
  27. package/artifacts/hardhat-deploy/solc_0.8/proxy/OptimizedTransparentUpgradeableProxy.sol/OptimizedTransparentUpgradeableProxy.json +142 -0
  28. package/deployments/arbitrumone.json +5 -0
  29. package/deployments/arbitrumone_addresses.json +5 -0
  30. package/deployments/arbitrumsepolia.json +5 -0
  31. package/deployments/arbitrumsepolia_addresses.json +5 -0
  32. package/deployments/basemainnet.json +5 -0
  33. package/deployments/basemainnet_addresses.json +5 -0
  34. package/deployments/basesepolia.json +5 -0
  35. package/deployments/basesepolia_addresses.json +5 -0
  36. package/deployments/bscmainnet.json +5 -0
  37. package/deployments/bscmainnet_addresses.json +5 -0
  38. package/deployments/bsctestnet.json +5 -0
  39. package/deployments/bsctestnet_addresses.json +5 -0
  40. package/deployments/ethereum.json +5 -0
  41. package/deployments/ethereum_addresses.json +5 -0
  42. package/deployments/opbnbmainnet.json +5 -0
  43. package/deployments/opbnbmainnet_addresses.json +5 -0
  44. package/deployments/opbnbtestnet.json +5 -0
  45. package/deployments/opbnbtestnet_addresses.json +5 -0
  46. package/deployments/opmainnet.json +5 -0
  47. package/deployments/opmainnet_addresses.json +5 -0
  48. package/deployments/opsepolia.json +5 -0
  49. package/deployments/opsepolia_addresses.json +5 -0
  50. package/deployments/sepolia.json +5 -0
  51. package/deployments/sepolia_addresses.json +5 -0
  52. package/deployments/unichainmainnet.json +5 -0
  53. package/deployments/unichainmainnet_addresses.json +5 -0
  54. package/deployments/unichainsepolia.json +5 -0
  55. package/deployments/unichainsepolia_addresses.json +5 -0
  56. package/deployments/zksyncmainnet.json +5 -0
  57. package/deployments/zksyncmainnet_addresses.json +5 -0
  58. package/deployments/zksyncsepolia.json +5 -0
  59. package/deployments/zksyncsepolia_addresses.json +5 -0
  60. package/dist/hardhat.config.d.ts +15 -0
  61. package/dist/hardhat.config.js +407 -0
  62. package/dist/helpers/deploymentConfig.d.ts +112 -0
  63. package/dist/helpers/deploymentConfig.js +201 -0
  64. package/dist/helpers/deploymentUtils.d.ts +3 -0
  65. package/dist/helpers/deploymentUtils.js +21 -0
  66. package/dist/helpers/utils.d.ts +3 -0
  67. package/dist/helpers/utils.js +28 -0
  68. package/dist/type-extensions.d.ts +6 -0
  69. package/dist/type-extensions.js +3 -0
  70. package/dist/typechain/factories/ERC1967Proxy__factory.d.ts +45 -0
  71. package/dist/typechain/factories/ERC1967Proxy__factory.js +110 -0
  72. package/dist/typechain/factories/ERC1967Upgrade__factory.d.ts +18 -0
  73. package/dist/typechain/factories/ERC1967Upgrade__factory.js +64 -0
  74. package/dist/typechain/factories/IBeacon__factory.d.ts +18 -0
  75. package/dist/typechain/factories/IBeacon__factory.js +32 -0
  76. package/dist/typechain/factories/IERC1822Proxiable__factory.d.ts +18 -0
  77. package/dist/typechain/factories/IERC1822Proxiable__factory.js +32 -0
  78. package/dist/typechain/factories/OptimizedTransparentUpgradeableProxy__factory.d.ts +70 -0
  79. package/dist/typechain/factories/OptimizedTransparentUpgradeableProxy__factory.js +172 -0
  80. package/dist/typechain/factories/Ownable__factory.d.ts +42 -0
  81. package/dist/typechain/factories/Ownable__factory.js +71 -0
  82. package/dist/typechain/factories/ProxyAdmin__factory.d.ts +56 -0
  83. package/dist/typechain/factories/ProxyAdmin__factory.js +201 -0
  84. package/dist/typechain/factories/Proxy__factory.d.ts +11 -0
  85. package/dist/typechain/factories/Proxy__factory.js +27 -0
  86. package/dist/typechain/factories/TransparentUpgradeableProxy__factory.d.ts +70 -0
  87. package/dist/typechain/factories/TransparentUpgradeableProxy__factory.js +185 -0
  88. package/dist/typechain/index.d.ts +18 -0
  89. package/dist/typechain/index.js +21 -0
  90. package/package.json +128 -0
  91. package/typechain/ERC1967Proxy.d.ts +126 -0
  92. package/typechain/ERC1967Upgrade.d.ts +126 -0
  93. package/typechain/IBeacon.d.ts +101 -0
  94. package/typechain/IERC1822Proxiable.d.ts +101 -0
  95. package/typechain/OptimizedTransparentUpgradeableProxy.d.ts +248 -0
  96. package/typechain/Ownable.d.ts +181 -0
  97. package/typechain/Proxy.d.ts +78 -0
  98. package/typechain/ProxyAdmin.d.ts +357 -0
  99. package/typechain/TransparentUpgradeableProxy.d.ts +275 -0
  100. package/typechain/common.d.ts +35 -0
  101. package/typechain/factories/ERC1967Proxy__factory.ts +137 -0
  102. package/typechain/factories/ERC1967Upgrade__factory.ts +71 -0
  103. package/typechain/factories/IBeacon__factory.ts +36 -0
  104. package/typechain/factories/IERC1822Proxiable__factory.ts +39 -0
  105. package/typechain/factories/OptimizedTransparentUpgradeableProxy__factory.ts +213 -0
  106. package/typechain/factories/Ownable__factory.ts +75 -0
  107. package/typechain/factories/ProxyAdmin__factory.ts +215 -0
  108. package/typechain/factories/Proxy__factory.ts +28 -0
  109. package/typechain/factories/TransparentUpgradeableProxy__factory.ts +222 -0
  110. package/typechain/index.ts +22 -0
@@ -0,0 +1,27 @@
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.Proxy__factory = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ stateMutability: "payable",
11
+ type: "fallback",
12
+ },
13
+ {
14
+ stateMutability: "payable",
15
+ type: "receive",
16
+ },
17
+ ];
18
+ class Proxy__factory {
19
+ static createInterface() {
20
+ return new ethers_1.utils.Interface(_abi);
21
+ }
22
+ static connect(address, signerOrProvider) {
23
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
24
+ }
25
+ }
26
+ exports.Proxy__factory = Proxy__factory;
27
+ Proxy__factory.abi = _abi;
@@ -0,0 +1,70 @@
1
+ import { Signer, BytesLike, ContractFactory, PayableOverrides } from "ethers";
2
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
3
+ import type { TransparentUpgradeableProxy, TransparentUpgradeableProxyInterface } from "../TransparentUpgradeableProxy";
4
+ export declare class TransparentUpgradeableProxy__factory extends ContractFactory {
5
+ constructor(...args: [signer: Signer] | ConstructorParameters<typeof ContractFactory>);
6
+ deploy(_logic: string, admin_: string, _data: BytesLike, overrides?: PayableOverrides & {
7
+ from?: string | Promise<string>;
8
+ }): Promise<TransparentUpgradeableProxy>;
9
+ getDeployTransaction(_logic: string, admin_: string, _data: BytesLike, overrides?: PayableOverrides & {
10
+ from?: string | Promise<string>;
11
+ }): TransactionRequest;
12
+ attach(address: string): TransparentUpgradeableProxy;
13
+ connect(signer: Signer): TransparentUpgradeableProxy__factory;
14
+ static readonly bytecode = "0x6080604052604051610fc2380380610fc283398101604081905261002291610460565b828161004f60017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6104d9565b5f80516020610f7b8339815191521461006a5761006a6104ec565b61007582825f6100cf565b506100a3905060017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61046104d9565b5f80516020610f5b833981519152146100be576100be6104ec565b6100c7826100fa565b505050610698565b6100d88361015c565b5f825111806100e45750805b156100f5576100f3838361019b565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6101395f80516020610f5b833981519152546001600160a01b031690565b8260405161014892919061050f565b60405180910390a1610159816101c9565b50565b61016581610229565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b60606101c08383604051806060016040528060278152602001610f9b60279139610264565b90505b92915050565b6001600160a01b0381166101f85760405162461bcd60e51b81526004016101ef9061056f565b60405180910390fd5b805f80516020610f5b8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6102505760405162461bcd60e51b81526004016101ef906105c8565b805f80516020610f7b833981519152610208565b60606001600160a01b0384163b61028d5760405162461bcd60e51b81526004016101ef9061061a565b5f80856001600160a01b0316856040516102a7919061064b565b5f60405180830381855af49150503d805f81146102df576040519150601f19603f3d011682016040523d82523d5f602084013e6102e4565b606091505b5090925090506102f5828286610301565b925050505b9392505050565b606083156103105750816102fa565b8251156103205782518084602001fd5b8160405162461bcd60e51b81526004016101ef9190610687565b5f6001600160a01b0382166101c3565b6103538161033a565b8114610159575f80fd5b80516101c38161034a565b634e487b7160e01b5f52604160045260245ffd5b601f19601f83011681018181106001600160401b03821117156103a1576103a1610368565b6040525050565b5f6103b260405190565b90506103be828261037c565b919050565b5f6001600160401b038211156103db576103db610368565b601f19601f83011660200192915050565b8281835e505f910152565b5f610409610404846103c3565b6103a8565b905082815260208101848484011115610423576104235f80fd5b61042e8482856103ec565b509392505050565b5f82601f830112610448576104485f80fd5b81516104588482602086016103f7565b949350505050565b5f805f60608486031215610475576104755f80fd5b5f610480868661035d565b93505060206104918682870161035d565b92505060408401516001600160401b038111156104af576104af5f80fd5b6104bb86828701610436565b9150509250925092565b634e487b7160e01b5f52601160045260245ffd5b818103818111156101c3576101c36104c5565b634e487b7160e01b5f52600160045260245ffd5b6105098161033a565b82525050565b6040810161051d8285610500565b6102fa6020830184610500565b602681525f602082017f455243313936373a206e65772061646d696e20697320746865207a65726f206181526564647265737360d01b602082015291505b5060400190565b602080825281016101c38161052a565b602d81525f602082017f455243313936373a206e657720696d706c656d656e746174696f6e206973206e81526c1bdd08184818dbdb9d1c9858dd609a1b60208201529150610568565b602080825281016101c38161057f565b602681525f602082017f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f8152651b9d1c9858dd60d21b60208201529150610568565b602080825281016101c3816105d8565b5f610633825190565b6106418185602086016103ec565b9290920192915050565b5f6102fa828461062a565b5f61065f825190565b8084526020840193506106768185602086016103ec565b601f01601f19169290920192915050565b602080825281016101c08184610656565b6108b6806106a55f395ff3fe60806040526004361061004d575f3560e01c80633659cfe6146100645780634f1ef286146100835780635c60da1b146100965780638f283970146100c0578063f851a440146100df5761005c565b3661005c5761005a6100f3565b005b61005a6100f3565b34801561006f575f80fd5b5061005a61007e366004610571565b61010d565b61005a6100913660046105e5565b610148565b3480156100a1575f80fd5b506100aa6101ae565b6040516100b7919061064b565b60405180910390f35b3480156100cb575f80fd5b5061005a6100da366004610571565b6101de565b3480156100ea575f80fd5b506100aa6101fe565b6100fb61021e565b61010b610106610256565b61025f565b565b61011561027d565b6001600160a01b031633036101405761013d8160405180602001604052805f8152505f6102af565b50565b61013d6100f3565b61015061027d565b6001600160a01b031633036101a6576101a18383838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250600192506102af915050565b505050565b6101a16100f3565b5f6101b761027d565b6001600160a01b031633036101d3576101ce610256565b905090565b6101db6100f3565b90565b6101e661027d565b6001600160a01b031633036101405761013d816102d9565b5f61020761027d565b6001600160a01b031633036101d3576101ce61027d565b61022661027d565b6001600160a01b0316330361010b5760405162461bcd60e51b815260040161024d90610659565b60405180910390fd5b5f6101ce610322565b365f80375f80365f845af43d5f803e808015610279573d5ff35b3d5ffd5b5f7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b6102b883610349565b5f825111806102c45750805b156101a1576102d38383610388565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61030261027d565b826040516103119291906106c5565b60405180910390a161013d816103b6565b5f7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6102a0565b61035281610420565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b60606103ad838360405180606001604052806027815260200161085a6027913961046e565b90505b92915050565b6001600160a01b0381166103dc5760405162461bcd60e51b815260040161024d90610725565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6104475760405162461bcd60e51b815260040161024d9061077e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6103ff565b60606001600160a01b0384163b6104975760405162461bcd60e51b815260040161024d906107d0565b5f80856001600160a01b0316856040516104b1919061080c565b5f60405180830381855af49150503d805f81146104e9576040519150601f19603f3d011682016040523d82523d5f602084013e6104ee565b606091505b50915091506104fe82828661050a565b925050505b9392505050565b60608315610519575081610503565b8251156105295782518084602001fd5b8160405162461bcd60e51b815260040161024d9190610848565b5f6001600160a01b0382166103b0565b61055c81610543565b811461013d575f80fd5b80356103b081610553565b5f60208284031215610584576105845f80fd5b5f61058f8484610566565b949350505050565b5f8083601f8401126105aa576105aa5f80fd5b50813567ffffffffffffffff8111156105c4576105c45f80fd5b6020830191508360018202830111156105de576105de5f80fd5b9250929050565b5f805f604084860312156105fa576105fa5f80fd5b5f6106058686610566565b935050602084013567ffffffffffffffff811115610624576106245f80fd5b61063086828701610597565b92509250509250925092565b61064581610543565b82525050565b602081016103b0828461063c565b602080825281016103b081604281527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60208201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267604082015261195d60f21b606082015260800190565b604081016106d3828561063c565b610503602083018461063c565b602681525f602082017f455243313936373a206e65772061646d696e20697320746865207a65726f206181526564647265737360d01b602082015291505b5060400190565b602080825281016103b0816106e0565b602d81525f602082017f455243313936373a206e657720696d706c656d656e746174696f6e206973206e81526c1bdd08184818dbdb9d1c9858dd609a1b6020820152915061071e565b602080825281016103b081610735565b602681525f602082017f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f8152651b9d1c9858dd60d21b6020820152915061071e565b602080825281016103b08161078e565b8281835e505f910152565b5f6107f4825190565b6108028185602086016107e0565b9290920192915050565b5f61050382846107eb565b5f610820825190565b8084526020840193506108378185602086016107e0565b601f01601f19169290920192915050565b602080825281016103ad818461081756fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212205c293cb82dd5d5b7228e518d5479dbf5bd70b6685ce9647aa6d360a311c6735064736f6c63430008190033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564";
15
+ static readonly abi: ({
16
+ inputs: {
17
+ internalType: string;
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ stateMutability: string;
22
+ type: string;
23
+ anonymous?: undefined;
24
+ name?: undefined;
25
+ outputs?: undefined;
26
+ } | {
27
+ anonymous: boolean;
28
+ inputs: {
29
+ indexed: boolean;
30
+ internalType: string;
31
+ name: string;
32
+ type: string;
33
+ }[];
34
+ name: string;
35
+ type: string;
36
+ stateMutability?: undefined;
37
+ outputs?: undefined;
38
+ } | {
39
+ stateMutability: string;
40
+ type: string;
41
+ inputs?: undefined;
42
+ anonymous?: undefined;
43
+ name?: undefined;
44
+ outputs?: undefined;
45
+ } | {
46
+ inputs: never[];
47
+ name: string;
48
+ outputs: {
49
+ internalType: string;
50
+ name: string;
51
+ type: string;
52
+ }[];
53
+ stateMutability: string;
54
+ type: string;
55
+ anonymous?: undefined;
56
+ } | {
57
+ inputs: {
58
+ internalType: string;
59
+ name: string;
60
+ type: string;
61
+ }[];
62
+ name: string;
63
+ outputs: never[];
64
+ stateMutability: string;
65
+ type: string;
66
+ anonymous?: undefined;
67
+ })[];
68
+ static createInterface(): TransparentUpgradeableProxyInterface;
69
+ static connect(address: string, signerOrProvider: Signer | Provider): TransparentUpgradeableProxy;
70
+ }
@@ -0,0 +1,185 @@
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.TransparentUpgradeableProxy__factory = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "address",
13
+ name: "_logic",
14
+ type: "address",
15
+ },
16
+ {
17
+ internalType: "address",
18
+ name: "admin_",
19
+ type: "address",
20
+ },
21
+ {
22
+ internalType: "bytes",
23
+ name: "_data",
24
+ type: "bytes",
25
+ },
26
+ ],
27
+ stateMutability: "payable",
28
+ type: "constructor",
29
+ },
30
+ {
31
+ anonymous: false,
32
+ inputs: [
33
+ {
34
+ indexed: false,
35
+ internalType: "address",
36
+ name: "previousAdmin",
37
+ type: "address",
38
+ },
39
+ {
40
+ indexed: false,
41
+ internalType: "address",
42
+ name: "newAdmin",
43
+ type: "address",
44
+ },
45
+ ],
46
+ name: "AdminChanged",
47
+ type: "event",
48
+ },
49
+ {
50
+ anonymous: false,
51
+ inputs: [
52
+ {
53
+ indexed: true,
54
+ internalType: "address",
55
+ name: "beacon",
56
+ type: "address",
57
+ },
58
+ ],
59
+ name: "BeaconUpgraded",
60
+ type: "event",
61
+ },
62
+ {
63
+ anonymous: false,
64
+ inputs: [
65
+ {
66
+ indexed: true,
67
+ internalType: "address",
68
+ name: "implementation",
69
+ type: "address",
70
+ },
71
+ ],
72
+ name: "Upgraded",
73
+ type: "event",
74
+ },
75
+ {
76
+ stateMutability: "payable",
77
+ type: "fallback",
78
+ },
79
+ {
80
+ inputs: [],
81
+ name: "admin",
82
+ outputs: [
83
+ {
84
+ internalType: "address",
85
+ name: "admin_",
86
+ type: "address",
87
+ },
88
+ ],
89
+ stateMutability: "nonpayable",
90
+ type: "function",
91
+ },
92
+ {
93
+ inputs: [
94
+ {
95
+ internalType: "address",
96
+ name: "newAdmin",
97
+ type: "address",
98
+ },
99
+ ],
100
+ name: "changeAdmin",
101
+ outputs: [],
102
+ stateMutability: "nonpayable",
103
+ type: "function",
104
+ },
105
+ {
106
+ inputs: [],
107
+ name: "implementation",
108
+ outputs: [
109
+ {
110
+ internalType: "address",
111
+ name: "implementation_",
112
+ type: "address",
113
+ },
114
+ ],
115
+ stateMutability: "nonpayable",
116
+ type: "function",
117
+ },
118
+ {
119
+ inputs: [
120
+ {
121
+ internalType: "address",
122
+ name: "newImplementation",
123
+ type: "address",
124
+ },
125
+ ],
126
+ name: "upgradeTo",
127
+ outputs: [],
128
+ stateMutability: "nonpayable",
129
+ type: "function",
130
+ },
131
+ {
132
+ inputs: [
133
+ {
134
+ internalType: "address",
135
+ name: "newImplementation",
136
+ type: "address",
137
+ },
138
+ {
139
+ internalType: "bytes",
140
+ name: "data",
141
+ type: "bytes",
142
+ },
143
+ ],
144
+ name: "upgradeToAndCall",
145
+ outputs: [],
146
+ stateMutability: "payable",
147
+ type: "function",
148
+ },
149
+ {
150
+ stateMutability: "payable",
151
+ type: "receive",
152
+ },
153
+ ];
154
+ const _bytecode = "0x6080604052604051610fc2380380610fc283398101604081905261002291610460565b828161004f60017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6104d9565b5f80516020610f7b8339815191521461006a5761006a6104ec565b61007582825f6100cf565b506100a3905060017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61046104d9565b5f80516020610f5b833981519152146100be576100be6104ec565b6100c7826100fa565b505050610698565b6100d88361015c565b5f825111806100e45750805b156100f5576100f3838361019b565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6101395f80516020610f5b833981519152546001600160a01b031690565b8260405161014892919061050f565b60405180910390a1610159816101c9565b50565b61016581610229565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b60606101c08383604051806060016040528060278152602001610f9b60279139610264565b90505b92915050565b6001600160a01b0381166101f85760405162461bcd60e51b81526004016101ef9061056f565b60405180910390fd5b805f80516020610f5b8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6102505760405162461bcd60e51b81526004016101ef906105c8565b805f80516020610f7b833981519152610208565b60606001600160a01b0384163b61028d5760405162461bcd60e51b81526004016101ef9061061a565b5f80856001600160a01b0316856040516102a7919061064b565b5f60405180830381855af49150503d805f81146102df576040519150601f19603f3d011682016040523d82523d5f602084013e6102e4565b606091505b5090925090506102f5828286610301565b925050505b9392505050565b606083156103105750816102fa565b8251156103205782518084602001fd5b8160405162461bcd60e51b81526004016101ef9190610687565b5f6001600160a01b0382166101c3565b6103538161033a565b8114610159575f80fd5b80516101c38161034a565b634e487b7160e01b5f52604160045260245ffd5b601f19601f83011681018181106001600160401b03821117156103a1576103a1610368565b6040525050565b5f6103b260405190565b90506103be828261037c565b919050565b5f6001600160401b038211156103db576103db610368565b601f19601f83011660200192915050565b8281835e505f910152565b5f610409610404846103c3565b6103a8565b905082815260208101848484011115610423576104235f80fd5b61042e8482856103ec565b509392505050565b5f82601f830112610448576104485f80fd5b81516104588482602086016103f7565b949350505050565b5f805f60608486031215610475576104755f80fd5b5f610480868661035d565b93505060206104918682870161035d565b92505060408401516001600160401b038111156104af576104af5f80fd5b6104bb86828701610436565b9150509250925092565b634e487b7160e01b5f52601160045260245ffd5b818103818111156101c3576101c36104c5565b634e487b7160e01b5f52600160045260245ffd5b6105098161033a565b82525050565b6040810161051d8285610500565b6102fa6020830184610500565b602681525f602082017f455243313936373a206e65772061646d696e20697320746865207a65726f206181526564647265737360d01b602082015291505b5060400190565b602080825281016101c38161052a565b602d81525f602082017f455243313936373a206e657720696d706c656d656e746174696f6e206973206e81526c1bdd08184818dbdb9d1c9858dd609a1b60208201529150610568565b602080825281016101c38161057f565b602681525f602082017f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f8152651b9d1c9858dd60d21b60208201529150610568565b602080825281016101c3816105d8565b5f610633825190565b6106418185602086016103ec565b9290920192915050565b5f6102fa828461062a565b5f61065f825190565b8084526020840193506106768185602086016103ec565b601f01601f19169290920192915050565b602080825281016101c08184610656565b6108b6806106a55f395ff3fe60806040526004361061004d575f3560e01c80633659cfe6146100645780634f1ef286146100835780635c60da1b146100965780638f283970146100c0578063f851a440146100df5761005c565b3661005c5761005a6100f3565b005b61005a6100f3565b34801561006f575f80fd5b5061005a61007e366004610571565b61010d565b61005a6100913660046105e5565b610148565b3480156100a1575f80fd5b506100aa6101ae565b6040516100b7919061064b565b60405180910390f35b3480156100cb575f80fd5b5061005a6100da366004610571565b6101de565b3480156100ea575f80fd5b506100aa6101fe565b6100fb61021e565b61010b610106610256565b61025f565b565b61011561027d565b6001600160a01b031633036101405761013d8160405180602001604052805f8152505f6102af565b50565b61013d6100f3565b61015061027d565b6001600160a01b031633036101a6576101a18383838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250600192506102af915050565b505050565b6101a16100f3565b5f6101b761027d565b6001600160a01b031633036101d3576101ce610256565b905090565b6101db6100f3565b90565b6101e661027d565b6001600160a01b031633036101405761013d816102d9565b5f61020761027d565b6001600160a01b031633036101d3576101ce61027d565b61022661027d565b6001600160a01b0316330361010b5760405162461bcd60e51b815260040161024d90610659565b60405180910390fd5b5f6101ce610322565b365f80375f80365f845af43d5f803e808015610279573d5ff35b3d5ffd5b5f7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b6102b883610349565b5f825111806102c45750805b156101a1576102d38383610388565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61030261027d565b826040516103119291906106c5565b60405180910390a161013d816103b6565b5f7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6102a0565b61035281610420565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b60606103ad838360405180606001604052806027815260200161085a6027913961046e565b90505b92915050565b6001600160a01b0381166103dc5760405162461bcd60e51b815260040161024d90610725565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160a01b0381163b6104475760405162461bcd60e51b815260040161024d9061077e565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6103ff565b60606001600160a01b0384163b6104975760405162461bcd60e51b815260040161024d906107d0565b5f80856001600160a01b0316856040516104b1919061080c565b5f60405180830381855af49150503d805f81146104e9576040519150601f19603f3d011682016040523d82523d5f602084013e6104ee565b606091505b50915091506104fe82828661050a565b925050505b9392505050565b60608315610519575081610503565b8251156105295782518084602001fd5b8160405162461bcd60e51b815260040161024d9190610848565b5f6001600160a01b0382166103b0565b61055c81610543565b811461013d575f80fd5b80356103b081610553565b5f60208284031215610584576105845f80fd5b5f61058f8484610566565b949350505050565b5f8083601f8401126105aa576105aa5f80fd5b50813567ffffffffffffffff8111156105c4576105c45f80fd5b6020830191508360018202830111156105de576105de5f80fd5b9250929050565b5f805f604084860312156105fa576105fa5f80fd5b5f6106058686610566565b935050602084013567ffffffffffffffff811115610624576106245f80fd5b61063086828701610597565b92509250509250925092565b61064581610543565b82525050565b602081016103b0828461063c565b602080825281016103b081604281527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60208201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267604082015261195d60f21b606082015260800190565b604081016106d3828561063c565b610503602083018461063c565b602681525f602082017f455243313936373a206e65772061646d696e20697320746865207a65726f206181526564647265737360d01b602082015291505b5060400190565b602080825281016103b0816106e0565b602d81525f602082017f455243313936373a206e657720696d706c656d656e746174696f6e206973206e81526c1bdd08184818dbdb9d1c9858dd609a1b6020820152915061071e565b602080825281016103b081610735565b602681525f602082017f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f8152651b9d1c9858dd60d21b6020820152915061071e565b602080825281016103b08161078e565b8281835e505f910152565b5f6107f4825190565b6108028185602086016107e0565b9290920192915050565b5f61050382846107eb565b5f610820825190565b8084526020840193506108378185602086016107e0565b601f01601f19169290920192915050565b602080825281016103ad818461081756fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212205c293cb82dd5d5b7228e518d5479dbf5bd70b6685ce9647aa6d360a311c6735064736f6c63430008190033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564";
155
+ class TransparentUpgradeableProxy__factory extends ethers_1.ContractFactory {
156
+ constructor(...args) {
157
+ if (args.length === 1) {
158
+ super(_abi, _bytecode, args[0]);
159
+ }
160
+ else {
161
+ super(...args);
162
+ }
163
+ }
164
+ deploy(_logic, admin_, _data, overrides) {
165
+ return super.deploy(_logic, admin_, _data, overrides || {});
166
+ }
167
+ getDeployTransaction(_logic, admin_, _data, overrides) {
168
+ return super.getDeployTransaction(_logic, admin_, _data, overrides || {});
169
+ }
170
+ attach(address) {
171
+ return super.attach(address);
172
+ }
173
+ connect(signer) {
174
+ return super.connect(signer);
175
+ }
176
+ static createInterface() {
177
+ return new ethers_1.utils.Interface(_abi);
178
+ }
179
+ static connect(address, signerOrProvider) {
180
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
181
+ }
182
+ }
183
+ exports.TransparentUpgradeableProxy__factory = TransparentUpgradeableProxy__factory;
184
+ TransparentUpgradeableProxy__factory.bytecode = _bytecode;
185
+ TransparentUpgradeableProxy__factory.abi = _abi;
@@ -0,0 +1,18 @@
1
+ export type { Ownable } from "./Ownable";
2
+ export type { IERC1822Proxiable } from "./IERC1822Proxiable";
3
+ export type { IBeacon } from "./IBeacon";
4
+ export type { ERC1967Proxy } from "./ERC1967Proxy";
5
+ export type { ERC1967Upgrade } from "./ERC1967Upgrade";
6
+ export type { Proxy } from "./Proxy";
7
+ export type { ProxyAdmin } from "./ProxyAdmin";
8
+ export type { TransparentUpgradeableProxy } from "./TransparentUpgradeableProxy";
9
+ export type { OptimizedTransparentUpgradeableProxy } from "./OptimizedTransparentUpgradeableProxy";
10
+ export { Ownable__factory } from "./factories/Ownable__factory";
11
+ export { IERC1822Proxiable__factory } from "./factories/IERC1822Proxiable__factory";
12
+ export { IBeacon__factory } from "./factories/IBeacon__factory";
13
+ export { ERC1967Proxy__factory } from "./factories/ERC1967Proxy__factory";
14
+ export { ERC1967Upgrade__factory } from "./factories/ERC1967Upgrade__factory";
15
+ export { Proxy__factory } from "./factories/Proxy__factory";
16
+ export { ProxyAdmin__factory } from "./factories/ProxyAdmin__factory";
17
+ export { TransparentUpgradeableProxy__factory } from "./factories/TransparentUpgradeableProxy__factory";
18
+ export { OptimizedTransparentUpgradeableProxy__factory } from "./factories/OptimizedTransparentUpgradeableProxy__factory";
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OptimizedTransparentUpgradeableProxy__factory = exports.TransparentUpgradeableProxy__factory = exports.ProxyAdmin__factory = exports.Proxy__factory = exports.ERC1967Upgrade__factory = exports.ERC1967Proxy__factory = exports.IBeacon__factory = exports.IERC1822Proxiable__factory = exports.Ownable__factory = void 0;
4
+ var Ownable__factory_1 = require("./factories/Ownable__factory");
5
+ Object.defineProperty(exports, "Ownable__factory", { enumerable: true, get: function () { return Ownable__factory_1.Ownable__factory; } });
6
+ var IERC1822Proxiable__factory_1 = require("./factories/IERC1822Proxiable__factory");
7
+ Object.defineProperty(exports, "IERC1822Proxiable__factory", { enumerable: true, get: function () { return IERC1822Proxiable__factory_1.IERC1822Proxiable__factory; } });
8
+ var IBeacon__factory_1 = require("./factories/IBeacon__factory");
9
+ Object.defineProperty(exports, "IBeacon__factory", { enumerable: true, get: function () { return IBeacon__factory_1.IBeacon__factory; } });
10
+ var ERC1967Proxy__factory_1 = require("./factories/ERC1967Proxy__factory");
11
+ Object.defineProperty(exports, "ERC1967Proxy__factory", { enumerable: true, get: function () { return ERC1967Proxy__factory_1.ERC1967Proxy__factory; } });
12
+ var ERC1967Upgrade__factory_1 = require("./factories/ERC1967Upgrade__factory");
13
+ Object.defineProperty(exports, "ERC1967Upgrade__factory", { enumerable: true, get: function () { return ERC1967Upgrade__factory_1.ERC1967Upgrade__factory; } });
14
+ var Proxy__factory_1 = require("./factories/Proxy__factory");
15
+ Object.defineProperty(exports, "Proxy__factory", { enumerable: true, get: function () { return Proxy__factory_1.Proxy__factory; } });
16
+ var ProxyAdmin__factory_1 = require("./factories/ProxyAdmin__factory");
17
+ Object.defineProperty(exports, "ProxyAdmin__factory", { enumerable: true, get: function () { return ProxyAdmin__factory_1.ProxyAdmin__factory; } });
18
+ var TransparentUpgradeableProxy__factory_1 = require("./factories/TransparentUpgradeableProxy__factory");
19
+ Object.defineProperty(exports, "TransparentUpgradeableProxy__factory", { enumerable: true, get: function () { return TransparentUpgradeableProxy__factory_1.TransparentUpgradeableProxy__factory; } });
20
+ var OptimizedTransparentUpgradeableProxy__factory_1 = require("./factories/OptimizedTransparentUpgradeableProxy__factory");
21
+ Object.defineProperty(exports, "OptimizedTransparentUpgradeableProxy__factory", { enumerable: true, get: function () { return OptimizedTransparentUpgradeableProxy__factory_1.OptimizedTransparentUpgradeableProxy__factory; } });
package/package.json ADDED
@@ -0,0 +1,128 @@
1
+ {
2
+ "name": "@venusprotocol/venus-periphery",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "files": [
6
+ "artifacts",
7
+ "typechain",
8
+ "dist",
9
+ "contracts",
10
+ "deployments"
11
+ ],
12
+ "scripts": {
13
+ "compile": "hardhat compile && hardhat compile --config hardhat.config.zksync.ts",
14
+ "test": "hardhat test",
15
+ "test:integration": "hardhat test tests/integration/index.ts",
16
+ "test:fork": "hardhat test tests/hardhat/Fork/*",
17
+ "hardhat:compile": "hardhat compile",
18
+ "hardhat:coverage": "hardhat coverage",
19
+ "lint": "yarn lint:sol && yarn lint:ts && yarn prettier:check",
20
+ "lint:sol": "solhint \"contracts/**/*.sol\"",
21
+ "lint:sol:fix": "prettier --write \"contracts/**/*.sol\"",
22
+ "lint:ts": "eslint --ext .js,.ts .",
23
+ "lint:ts:fix": "eslint --fix --ext .js,.ts .",
24
+ "prettier": "prettier --write \"**/*.{js,json,md,sol,ts,yaml,yml}\"",
25
+ "prettier:check": "prettier --check \"**/*.{js,json,md,sol,ts,yaml,yml}\"",
26
+ "build": "rm -rf dist && hardhat compile && hardhat compile --config hardhat.config.zksync.ts && tsc --declaration",
27
+ "docgen": "hardhat docgen",
28
+ "prepare": "husky install",
29
+ "clean": "hardhat clean && hardhat clean --config hardhat.config.zksync.ts"
30
+ },
31
+ "repository": {
32
+ "type": "git",
33
+ "url": "git+https://github.com/VenusProtocol/venus-periphery.git"
34
+ },
35
+ "keywords": [],
36
+ "author": "",
37
+ "license": "ISC",
38
+ "bugs": {
39
+ "url": "https://github.com/VenusProtocol/venus-periphery/issues"
40
+ },
41
+ "homepage": "https://github.com/VenusProtocol/venus-periphery#readme",
42
+ "engines": {
43
+ "node": ">=18.0.0"
44
+ },
45
+ "dependencies": {
46
+ "@nomiclabs/hardhat-ethers": "^2.2.3",
47
+ "@openzeppelin/contracts": "^4.8.3",
48
+ "@openzeppelin/contracts-upgradeable": "^4.8.3",
49
+ "@openzeppelin/hardhat-upgrades": "^1.21.0",
50
+ "@solidity-parser/parser": "^0.13.2",
51
+ "@venusprotocol/solidity-utilities": "2.0.3",
52
+ "ethers": "^5.7.0",
53
+ "hardhat-deploy": "^0.11.14",
54
+ "module-alias": "^2.2.2"
55
+ },
56
+ "devDependencies": {
57
+ "@commitlint/cli": "^17.0.3",
58
+ "@commitlint/config-conventional": "^17.0.3",
59
+ "@defi-wonderland/smock": "^2.4.0",
60
+ "@matterlabs/hardhat-zksync": "^0.2.0",
61
+ "@matterlabs/hardhat-zksync-deploy": "^0.11.0",
62
+ "@matterlabs/hardhat-zksync-solc": "^1.2.1",
63
+ "@matterlabs/hardhat-zksync-verify": "0.7.0",
64
+ "@nomicfoundation/hardhat-chai-matchers": "^1.0.3",
65
+ "@nomicfoundation/hardhat-network-helpers": "^1.0.4",
66
+ "@nomicfoundation/hardhat-toolbox": "^2.0.0",
67
+ "@nomiclabs/hardhat-etherscan": "^3.0.3",
68
+ "@semantic-release/changelog": "^6.0.1",
69
+ "@semantic-release/git": "^10.0.1",
70
+ "@semantic-release/npm": "^9.0.1",
71
+ "@trivago/prettier-plugin-sort-imports": "3.4.0",
72
+ "@typechain/ethers-v5": "^7.2.0",
73
+ "@typechain/hardhat": "^2.3.1",
74
+ "@types/chai": "^4.3.1",
75
+ "@types/debug": "^4.1.12",
76
+ "@types/mocha": "^9.1.1",
77
+ "@types/node": "^12.20.50",
78
+ "@typescript-eslint/eslint-plugin": "^5.27.1",
79
+ "@typescript-eslint/parser": "^5.27.1",
80
+ "@venusprotocol/governance-contracts": "^2.12.0",
81
+ "@venusprotocol/isolated-pools": "^4.3.0",
82
+ "@venusprotocol/oracle": "^2.13.0",
83
+ "@venusprotocol/protocol-reserve": "^3.3.0",
84
+ "@venusprotocol/venus-protocol": "^9.7.0",
85
+ "bignumber.js": "9.0.0",
86
+ "chai": "^4.3.6",
87
+ "dotenv": "^10.0.0",
88
+ "eslint": "^7.32.0",
89
+ "eslint-config-prettier": "8.5.0",
90
+ "eslint-plugin-import": "^2.26.0",
91
+ "eslint-plugin-node": "^11.1.0",
92
+ "eslint-plugin-prettier": "3.4.1",
93
+ "eslint-plugin-promise": "^5.2.0",
94
+ "hardhat": "^2.22.18",
95
+ "hardhat-dependency-compiler": "^1.2.1",
96
+ "hardhat-deploy": "^0.12.4",
97
+ "hardhat-deploy-ethers": "^0.3.0-beta.13",
98
+ "hardhat-gas-reporter": "^1.0.8",
99
+ "husky": "^8.0.1",
100
+ "prettier": "2.7.1",
101
+ "prettier-plugin-solidity": "1.1.3",
102
+ "semantic-release": "^19.0.3",
103
+ "solhint": "^3.3.7",
104
+ "solidity-coverage": "^0.8.4",
105
+ "solidity-docgen": "^0.6.0-beta.29",
106
+ "solparse": "^2.2.8",
107
+ "ts-node": "^10.7.0",
108
+ "typechain": "^5.2.0",
109
+ "typescript": "^4.6.3",
110
+ "zksync-ethers": "^5.9.1"
111
+ },
112
+ "resolutions": {
113
+ "scrypt.js": "https://registry.npmjs.org/@compound-finance/ethereumjs-wallet/-/ethereumjs-wallet-0.6.3.tgz",
114
+ "ganache-core": "github:compound-finance/ganache-core.git#jflatow/unbreak-fork",
115
+ "solidity-parser-antlr": "https://github.com/solidity-parser/parser#0.8.2",
116
+ "@defi-wonderland/smock": "2.4.0",
117
+ "hardhat": "2.22.18",
118
+ "@venusprotocol/solidity-utilities": "2.0.3"
119
+ },
120
+ "publishConfig": {
121
+ "access": "public",
122
+ "provenance": true
123
+ },
124
+ "_moduleAliases": {
125
+ "@nomiclabs/hardhat-ethers": "node_modules/hardhat-deploy-ethers"
126
+ },
127
+ "packageManager": "yarn@1.22.1"
128
+ }
@@ -0,0 +1,126 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import {
6
+ ethers,
7
+ EventFilter,
8
+ Signer,
9
+ BigNumber,
10
+ BigNumberish,
11
+ PopulatedTransaction,
12
+ BaseContract,
13
+ ContractTransaction,
14
+ } from "ethers";
15
+ import { BytesLike } from "@ethersproject/bytes";
16
+ import { Listener, Provider } from "@ethersproject/providers";
17
+ import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi";
18
+ import type { TypedEventFilter, TypedEvent, TypedListener } from "./common";
19
+
20
+ interface ERC1967ProxyInterface extends ethers.utils.Interface {
21
+ functions: {};
22
+
23
+ events: {
24
+ "AdminChanged(address,address)": EventFragment;
25
+ "BeaconUpgraded(address)": EventFragment;
26
+ "Upgraded(address)": EventFragment;
27
+ };
28
+
29
+ getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment;
30
+ getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment;
31
+ getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment;
32
+ }
33
+
34
+ export type AdminChangedEvent = TypedEvent<
35
+ [string, string] & { previousAdmin: string; newAdmin: string }
36
+ >;
37
+
38
+ export type BeaconUpgradedEvent = TypedEvent<[string] & { beacon: string }>;
39
+
40
+ export type UpgradedEvent = TypedEvent<[string] & { implementation: string }>;
41
+
42
+ export class ERC1967Proxy extends BaseContract {
43
+ connect(signerOrProvider: Signer | Provider | string): this;
44
+ attach(addressOrName: string): this;
45
+ deployed(): Promise<this>;
46
+
47
+ listeners<EventArgsArray extends Array<any>, EventArgsObject>(
48
+ eventFilter?: TypedEventFilter<EventArgsArray, EventArgsObject>
49
+ ): Array<TypedListener<EventArgsArray, EventArgsObject>>;
50
+ off<EventArgsArray extends Array<any>, EventArgsObject>(
51
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>,
52
+ listener: TypedListener<EventArgsArray, EventArgsObject>
53
+ ): this;
54
+ on<EventArgsArray extends Array<any>, EventArgsObject>(
55
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>,
56
+ listener: TypedListener<EventArgsArray, EventArgsObject>
57
+ ): this;
58
+ once<EventArgsArray extends Array<any>, EventArgsObject>(
59
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>,
60
+ listener: TypedListener<EventArgsArray, EventArgsObject>
61
+ ): this;
62
+ removeListener<EventArgsArray extends Array<any>, EventArgsObject>(
63
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>,
64
+ listener: TypedListener<EventArgsArray, EventArgsObject>
65
+ ): this;
66
+ removeAllListeners<EventArgsArray extends Array<any>, EventArgsObject>(
67
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>
68
+ ): this;
69
+
70
+ listeners(eventName?: string): Array<Listener>;
71
+ off(eventName: string, listener: Listener): this;
72
+ on(eventName: string, listener: Listener): this;
73
+ once(eventName: string, listener: Listener): this;
74
+ removeListener(eventName: string, listener: Listener): this;
75
+ removeAllListeners(eventName?: string): this;
76
+
77
+ queryFilter<EventArgsArray extends Array<any>, EventArgsObject>(
78
+ event: TypedEventFilter<EventArgsArray, EventArgsObject>,
79
+ fromBlockOrBlockhash?: string | number | undefined,
80
+ toBlock?: string | number | undefined
81
+ ): Promise<Array<TypedEvent<EventArgsArray & EventArgsObject>>>;
82
+
83
+ interface: ERC1967ProxyInterface;
84
+
85
+ functions: {};
86
+
87
+ callStatic: {};
88
+
89
+ filters: {
90
+ "AdminChanged(address,address)"(
91
+ previousAdmin?: null,
92
+ newAdmin?: null
93
+ ): TypedEventFilter<
94
+ [string, string],
95
+ { previousAdmin: string; newAdmin: string }
96
+ >;
97
+
98
+ AdminChanged(
99
+ previousAdmin?: null,
100
+ newAdmin?: null
101
+ ): TypedEventFilter<
102
+ [string, string],
103
+ { previousAdmin: string; newAdmin: string }
104
+ >;
105
+
106
+ "BeaconUpgraded(address)"(
107
+ beacon?: string | null
108
+ ): TypedEventFilter<[string], { beacon: string }>;
109
+
110
+ BeaconUpgraded(
111
+ beacon?: string | null
112
+ ): TypedEventFilter<[string], { beacon: string }>;
113
+
114
+ "Upgraded(address)"(
115
+ implementation?: string | null
116
+ ): TypedEventFilter<[string], { implementation: string }>;
117
+
118
+ Upgraded(
119
+ implementation?: string | null
120
+ ): TypedEventFilter<[string], { implementation: string }>;
121
+ };
122
+
123
+ estimateGas: {};
124
+
125
+ populateTransaction: {};
126
+ }