@venusprotocol/protocol-reserve 1.0.0-dev.6 → 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 (182) hide show
  1. package/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.dbg.json +1 -1
  2. package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
  3. package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +2 -2
  4. package/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  5. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +1 -1
  6. package/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  7. package/artifacts/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol/Ownable2StepUpgradeable.dbg.json +1 -1
  8. package/artifacts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  9. package/artifacts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  10. package/artifacts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.dbg.json +1 -1
  11. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
  12. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +4 -0
  13. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/{draft-IERC20PermitUpgradeable.sol → IERC20PermitUpgradeable.sol}/IERC20PermitUpgradeable.json +1 -1
  14. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.dbg.json +1 -1
  15. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.json +2 -2
  16. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  17. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.json +2 -2
  18. package/artifacts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  19. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.sol/AccessControlledV8.dbg.json +1 -1
  20. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.sol/IAccessControlManagerV8.dbg.json +1 -1
  21. package/artifacts/@venusprotocol/isolated-pools/contracts/MaxLoopsLimitHelper.sol/MaxLoopsLimitHelper.dbg.json +1 -1
  22. package/artifacts/build-info/5e0d0fa03533470b2e430f8020bc271c.json +1 -0
  23. package/artifacts/contracts/Interfaces/ComptrollerInterface.sol/ComptrollerInterface.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces/IIncomeDestination.sol/IIncomeDestination.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces/IProtocolShareReserve.sol/IProtocolShareReserve.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces/IVToken.sol/IVToken.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces/PoolRegistryInterface.sol/PoolRegistryInterface.dbg.json +1 -1
  28. package/artifacts/contracts/ProtocolReserve/ProtocolShareReserve.sol/ProtocolShareReserve.dbg.json +1 -1
  29. package/artifacts/contracts/ProtocolReserve/ProtocolShareReserve.sol/ProtocolShareReserve.json +67 -56
  30. package/artifacts/contracts/Test/Mocks/MockToken.sol/MockToken.dbg.json +1 -1
  31. package/artifacts/contracts/Test/Mocks/MockToken.sol/MockToken.json +2 -2
  32. package/contracts/Interfaces/IProtocolShareReserve.sol +5 -1
  33. package/contracts/ProtocolReserve/ProtocolShareReserve.sol +70 -86
  34. package/contracts/Test/Mocks/MockToken.sol +5 -1
  35. package/deploy/1-deploy.ts +64 -0
  36. package/deployments/bscmainnet/.chainId +1 -0
  37. package/deployments/bscmainnet/DefaultProxyAdmin.json +257 -0
  38. package/deployments/bscmainnet/ProtocolShareReserve.json +1054 -0
  39. package/deployments/bscmainnet/ProtocolShareReserve_Implementation.json +1264 -0
  40. package/deployments/bscmainnet/ProtocolShareReserve_Proxy.json +277 -0
  41. package/deployments/bscmainnet/solcInputs/0e89febeebc7444140de8e67c9067d2c.json +78 -0
  42. package/deployments/bscmainnet/solcInputs/45a7e25696ff2229490239636d073de0.json +90 -0
  43. package/deployments/bscmainnet/solcInputs/c87a4970e440c0598abee31750358915.json +90 -0
  44. package/deployments/bscmainnet/solcInputs/f7c7133e4506082d7aa8242a8f52a4c9.json +87 -0
  45. package/deployments/bsctestnet/.chainId +1 -0
  46. package/deployments/bsctestnet/DefaultProxyAdmin.json +257 -0
  47. package/deployments/bsctestnet/ProtocolShareReserve.json +1054 -0
  48. package/deployments/bsctestnet/ProtocolShareReserve_Implementation.json +1264 -0
  49. package/deployments/bsctestnet/ProtocolShareReserve_Proxy.json +277 -0
  50. package/deployments/bsctestnet/solcInputs/0e89febeebc7444140de8e67c9067d2c.json +78 -0
  51. package/deployments/bsctestnet/solcInputs/45a7e25696ff2229490239636d073de0.json +90 -0
  52. package/deployments/bsctestnet/solcInputs/c87a4970e440c0598abee31750358915.json +90 -0
  53. package/deployments/bsctestnet/solcInputs/f7c7133e4506082d7aa8242a8f52a4c9.json +87 -0
  54. package/package.json +56 -61
  55. package/typechain/{@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.ts → AccessControlledV8.d.ts} +125 -128
  56. package/typechain/ComptrollerInterface.d.ts +101 -0
  57. package/typechain/ContextUpgradeable.d.ts +92 -0
  58. package/typechain/ERC20.d.ts +441 -0
  59. package/typechain/IAccessControl.d.ts +333 -0
  60. package/typechain/IAccessControlManagerV8.d.ts +504 -0
  61. package/typechain/IERC20.d.ts +324 -0
  62. package/typechain/{@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts → IERC20Metadata.d.ts} +146 -169
  63. package/typechain/IERC20PermitUpgradeable.d.ts +187 -0
  64. package/typechain/IERC20Upgradeable.d.ts +324 -0
  65. package/typechain/IIncomeDestination.d.ts +122 -0
  66. package/typechain/IProtocolShareReserve.d.ts +127 -0
  67. package/typechain/IVToken.d.ts +98 -0
  68. package/typechain/Initializable.d.ts +92 -0
  69. package/typechain/MaxLoopsLimitHelper.d.ts +128 -0
  70. package/typechain/MockToken.d.ts +469 -0
  71. package/typechain/{@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.ts → Ownable2StepUpgradeable.d.ts} +102 -105
  72. package/typechain/OwnableUpgradeable.d.ts +193 -0
  73. package/typechain/PoolRegistryInterface.d.ts +121 -0
  74. package/typechain/{contracts/ProtocolReserve/ProtocolShareReserve.ts → ProtocolShareReserve.d.ts} +538 -486
  75. package/typechain/ReentrancyGuardUpgradeable.d.ts +92 -0
  76. package/typechain/common.d.ts +35 -0
  77. package/typechain/factories/{@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8__factory.ts → AccessControlledV8__factory.ts} +5 -6
  78. package/typechain/factories/{contracts/Interfaces/ComptrollerInterface__factory.ts → ComptrollerInterface__factory.ts} +5 -6
  79. package/typechain/factories/{@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts → ContextUpgradeable__factory.ts} +5 -6
  80. package/typechain/factories/{@openzeppelin/contracts/token/ERC20/ERC20__factory.ts → ERC20__factory.ts} +21 -33
  81. package/typechain/factories/{@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8__factory.ts → IAccessControlManagerV8__factory.ts} +5 -6
  82. package/typechain/factories/{@openzeppelin/contracts/access/IAccessControl__factory.ts → IAccessControl__factory.ts} +5 -6
  83. package/typechain/factories/{@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts → IERC20Metadata__factory.ts} +5 -6
  84. package/typechain/factories/{@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable__factory.ts → IERC20PermitUpgradeable__factory.ts} +5 -6
  85. package/typechain/factories/{@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.ts → IERC20Upgradeable__factory.ts} +5 -6
  86. package/typechain/factories/{@openzeppelin/contracts/token/ERC20/IERC20__factory.ts → IERC20__factory.ts} +4 -8
  87. package/typechain/factories/{contracts/Interfaces/IIncomeDestination__factory.ts → IIncomeDestination__factory.ts} +5 -6
  88. package/typechain/factories/{contracts/Interfaces/IProtocolShareReserve__factory.ts → IProtocolShareReserve__factory.ts} +5 -6
  89. package/typechain/factories/{contracts/Interfaces/IVToken__factory.ts → IVToken__factory.ts} +4 -8
  90. package/typechain/factories/{@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts → Initializable__factory.ts} +4 -8
  91. package/typechain/factories/{@venusprotocol/isolated-pools/contracts/MaxLoopsLimitHelper__factory.ts → MaxLoopsLimitHelper__factory.ts} +5 -6
  92. package/typechain/factories/{contracts/Test/Mocks/MockToken__factory.ts → MockToken__factory.ts} +24 -36
  93. package/typechain/factories/{@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable__factory.ts → Ownable2StepUpgradeable__factory.ts} +5 -6
  94. package/typechain/factories/{@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts → OwnableUpgradeable__factory.ts} +5 -6
  95. package/typechain/factories/{contracts/Interfaces/PoolRegistryInterface__factory.ts → PoolRegistryInterface__factory.ts} +5 -6
  96. package/typechain/factories/ProtocolShareReserve__factory.ts +869 -0
  97. package/typechain/factories/{@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.ts → ReentrancyGuardUpgradeable__factory.ts} +5 -6
  98. package/typechain/index.ts +42 -55
  99. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +0 -4
  100. package/artifacts/build-info/1b4d833fe9f0ac50f7e6ab5ae3115468.json +0 -1
  101. package/artifacts/contracts/Interfaces/IPrime.sol/IPrime.dbg.json +0 -4
  102. package/artifacts/contracts/Interfaces/IPrime.sol/IPrime.json +0 -74
  103. package/contracts/Interfaces/IPrime.sol +0 -12
  104. package/contracts/interfaces/IProtocolShareReserve.sol +0 -12
  105. package/contracts/test/Mocks/MockToken.sol +0 -22
  106. package/typechain/@openzeppelin/contracts/access/IAccessControl.ts +0 -343
  107. package/typechain/@openzeppelin/contracts/access/index.ts +0 -4
  108. package/typechain/@openzeppelin/contracts/index.ts +0 -11
  109. package/typechain/@openzeppelin/contracts/token/ERC20/ERC20.ts +0 -466
  110. package/typechain/@openzeppelin/contracts/token/ERC20/IERC20.ts +0 -344
  111. package/typechain/@openzeppelin/contracts/token/ERC20/extensions/index.ts +0 -4
  112. package/typechain/@openzeppelin/contracts/token/ERC20/index.ts +0 -10
  113. package/typechain/@openzeppelin/contracts/token/index.ts +0 -8
  114. package/typechain/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +0 -190
  115. package/typechain/@openzeppelin/contracts-upgradeable/access/index.ts +0 -5
  116. package/typechain/@openzeppelin/contracts-upgradeable/index.ts +0 -20
  117. package/typechain/@openzeppelin/contracts-upgradeable/proxy/index.ts +0 -8
  118. package/typechain/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts +0 -72
  119. package/typechain/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +0 -4
  120. package/typechain/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.ts +0 -72
  121. package/typechain/@openzeppelin/contracts-upgradeable/security/index.ts +0 -4
  122. package/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.ts +0 -344
  123. package/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.ts +0 -195
  124. package/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/index.ts +0 -4
  125. package/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.ts +0 -8
  126. package/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +0 -9
  127. package/typechain/@openzeppelin/contracts-upgradeable/token/index.ts +0 -8
  128. package/typechain/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts +0 -72
  129. package/typechain/@openzeppelin/contracts-upgradeable/utils/index.ts +0 -4
  130. package/typechain/@openzeppelin/index.ts +0 -11
  131. package/typechain/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.ts +0 -530
  132. package/typechain/@venusprotocol/governance-contracts/contracts/Governance/index.ts +0 -5
  133. package/typechain/@venusprotocol/governance-contracts/contracts/index.ts +0 -8
  134. package/typechain/@venusprotocol/governance-contracts/index.ts +0 -8
  135. package/typechain/@venusprotocol/index.ts +0 -11
  136. package/typechain/@venusprotocol/isolated-pools/contracts/MaxLoopsLimitHelper.ts +0 -119
  137. package/typechain/@venusprotocol/isolated-pools/contracts/index.ts +0 -4
  138. package/typechain/@venusprotocol/isolated-pools/index.ts +0 -8
  139. package/typechain/common.ts +0 -48
  140. package/typechain/contracts/Interfaces/ComptrollerInterface.ts +0 -90
  141. package/typechain/contracts/Interfaces/IIncomeDestination.ts +0 -112
  142. package/typechain/contracts/Interfaces/IPrime.ts +0 -205
  143. package/typechain/contracts/Interfaces/IProtocolShareReserve.ts +0 -122
  144. package/typechain/contracts/Interfaces/IVToken.ts +0 -87
  145. package/typechain/contracts/Interfaces/PoolRegistryInterface.ts +0 -110
  146. package/typechain/contracts/Interfaces/index.ts +0 -9
  147. package/typechain/contracts/ProtocolReserve/index.ts +0 -4
  148. package/typechain/contracts/Test/Mocks/MockToken.ts +0 -498
  149. package/typechain/contracts/Test/Mocks/index.ts +0 -4
  150. package/typechain/contracts/Test/index.ts +0 -8
  151. package/typechain/contracts/index.ts +0 -14
  152. package/typechain/factories/@openzeppelin/contracts/access/index.ts +0 -4
  153. package/typechain/factories/@openzeppelin/contracts/index.ts +0 -5
  154. package/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +0 -4
  155. package/typechain/factories/@openzeppelin/contracts/token/ERC20/index.ts +0 -6
  156. package/typechain/factories/@openzeppelin/contracts/token/index.ts +0 -4
  157. package/typechain/factories/@openzeppelin/contracts-upgradeable/access/index.ts +0 -5
  158. package/typechain/factories/@openzeppelin/contracts-upgradeable/index.ts +0 -8
  159. package/typechain/factories/@openzeppelin/contracts-upgradeable/proxy/index.ts +0 -4
  160. package/typechain/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +0 -4
  161. package/typechain/factories/@openzeppelin/contracts-upgradeable/security/index.ts +0 -4
  162. package/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/index.ts +0 -4
  163. package/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.ts +0 -4
  164. package/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +0 -5
  165. package/typechain/factories/@openzeppelin/contracts-upgradeable/token/index.ts +0 -4
  166. package/typechain/factories/@openzeppelin/contracts-upgradeable/utils/index.ts +0 -4
  167. package/typechain/factories/@openzeppelin/index.ts +0 -5
  168. package/typechain/factories/@venusprotocol/governance-contracts/contracts/Governance/index.ts +0 -5
  169. package/typechain/factories/@venusprotocol/governance-contracts/contracts/index.ts +0 -4
  170. package/typechain/factories/@venusprotocol/governance-contracts/index.ts +0 -4
  171. package/typechain/factories/@venusprotocol/index.ts +0 -5
  172. package/typechain/factories/@venusprotocol/isolated-pools/contracts/index.ts +0 -4
  173. package/typechain/factories/@venusprotocol/isolated-pools/index.ts +0 -4
  174. package/typechain/factories/contracts/Interfaces/IPrime__factory.ts +0 -87
  175. package/typechain/factories/contracts/Interfaces/index.ts +0 -9
  176. package/typechain/factories/contracts/ProtocolReserve/ProtocolShareReserve__factory.ts +0 -867
  177. package/typechain/factories/contracts/ProtocolReserve/index.ts +0 -4
  178. package/typechain/factories/contracts/Test/Mocks/index.ts +0 -4
  179. package/typechain/factories/contracts/Test/index.ts +0 -4
  180. package/typechain/factories/contracts/index.ts +0 -6
  181. package/typechain/factories/index.ts +0 -6
  182. package/typechain/hardhat.d.ts +0 -231
@@ -0,0 +1,333 @@
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
+ Overrides,
15
+ CallOverrides,
16
+ } from "ethers";
17
+ import { BytesLike } from "@ethersproject/bytes";
18
+ import { Listener, Provider } from "@ethersproject/providers";
19
+ import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi";
20
+ import type { TypedEventFilter, TypedEvent, TypedListener } from "./common";
21
+
22
+ interface IAccessControlInterface extends ethers.utils.Interface {
23
+ functions: {
24
+ "getRoleAdmin(bytes32)": FunctionFragment;
25
+ "grantRole(bytes32,address)": FunctionFragment;
26
+ "hasRole(bytes32,address)": FunctionFragment;
27
+ "renounceRole(bytes32,address)": FunctionFragment;
28
+ "revokeRole(bytes32,address)": FunctionFragment;
29
+ };
30
+
31
+ encodeFunctionData(
32
+ functionFragment: "getRoleAdmin",
33
+ values: [BytesLike]
34
+ ): string;
35
+ encodeFunctionData(
36
+ functionFragment: "grantRole",
37
+ values: [BytesLike, string]
38
+ ): string;
39
+ encodeFunctionData(
40
+ functionFragment: "hasRole",
41
+ values: [BytesLike, string]
42
+ ): string;
43
+ encodeFunctionData(
44
+ functionFragment: "renounceRole",
45
+ values: [BytesLike, string]
46
+ ): string;
47
+ encodeFunctionData(
48
+ functionFragment: "revokeRole",
49
+ values: [BytesLike, string]
50
+ ): string;
51
+
52
+ decodeFunctionResult(
53
+ functionFragment: "getRoleAdmin",
54
+ data: BytesLike
55
+ ): Result;
56
+ decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result;
57
+ decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result;
58
+ decodeFunctionResult(
59
+ functionFragment: "renounceRole",
60
+ data: BytesLike
61
+ ): Result;
62
+ decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result;
63
+
64
+ events: {
65
+ "RoleAdminChanged(bytes32,bytes32,bytes32)": EventFragment;
66
+ "RoleGranted(bytes32,address,address)": EventFragment;
67
+ "RoleRevoked(bytes32,address,address)": EventFragment;
68
+ };
69
+
70
+ getEvent(nameOrSignatureOrTopic: "RoleAdminChanged"): EventFragment;
71
+ getEvent(nameOrSignatureOrTopic: "RoleGranted"): EventFragment;
72
+ getEvent(nameOrSignatureOrTopic: "RoleRevoked"): EventFragment;
73
+ }
74
+
75
+ export type RoleAdminChangedEvent = TypedEvent<
76
+ [string, string, string] & {
77
+ role: string;
78
+ previousAdminRole: string;
79
+ newAdminRole: string;
80
+ }
81
+ >;
82
+
83
+ export type RoleGrantedEvent = TypedEvent<
84
+ [string, string, string] & { role: string; account: string; sender: string }
85
+ >;
86
+
87
+ export type RoleRevokedEvent = TypedEvent<
88
+ [string, string, string] & { role: string; account: string; sender: string }
89
+ >;
90
+
91
+ export class IAccessControl extends BaseContract {
92
+ connect(signerOrProvider: Signer | Provider | string): this;
93
+ attach(addressOrName: string): this;
94
+ deployed(): Promise<this>;
95
+
96
+ listeners<EventArgsArray extends Array<any>, EventArgsObject>(
97
+ eventFilter?: TypedEventFilter<EventArgsArray, EventArgsObject>
98
+ ): Array<TypedListener<EventArgsArray, EventArgsObject>>;
99
+ off<EventArgsArray extends Array<any>, EventArgsObject>(
100
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>,
101
+ listener: TypedListener<EventArgsArray, EventArgsObject>
102
+ ): this;
103
+ on<EventArgsArray extends Array<any>, EventArgsObject>(
104
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>,
105
+ listener: TypedListener<EventArgsArray, EventArgsObject>
106
+ ): this;
107
+ once<EventArgsArray extends Array<any>, EventArgsObject>(
108
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>,
109
+ listener: TypedListener<EventArgsArray, EventArgsObject>
110
+ ): this;
111
+ removeListener<EventArgsArray extends Array<any>, EventArgsObject>(
112
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>,
113
+ listener: TypedListener<EventArgsArray, EventArgsObject>
114
+ ): this;
115
+ removeAllListeners<EventArgsArray extends Array<any>, EventArgsObject>(
116
+ eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>
117
+ ): this;
118
+
119
+ listeners(eventName?: string): Array<Listener>;
120
+ off(eventName: string, listener: Listener): this;
121
+ on(eventName: string, listener: Listener): this;
122
+ once(eventName: string, listener: Listener): this;
123
+ removeListener(eventName: string, listener: Listener): this;
124
+ removeAllListeners(eventName?: string): this;
125
+
126
+ queryFilter<EventArgsArray extends Array<any>, EventArgsObject>(
127
+ event: TypedEventFilter<EventArgsArray, EventArgsObject>,
128
+ fromBlockOrBlockhash?: string | number | undefined,
129
+ toBlock?: string | number | undefined
130
+ ): Promise<Array<TypedEvent<EventArgsArray & EventArgsObject>>>;
131
+
132
+ interface: IAccessControlInterface;
133
+
134
+ functions: {
135
+ getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<[string]>;
136
+
137
+ grantRole(
138
+ role: BytesLike,
139
+ account: string,
140
+ overrides?: Overrides & { from?: string | Promise<string> }
141
+ ): Promise<ContractTransaction>;
142
+
143
+ hasRole(
144
+ role: BytesLike,
145
+ account: string,
146
+ overrides?: CallOverrides
147
+ ): Promise<[boolean]>;
148
+
149
+ renounceRole(
150
+ role: BytesLike,
151
+ account: string,
152
+ overrides?: Overrides & { from?: string | Promise<string> }
153
+ ): Promise<ContractTransaction>;
154
+
155
+ revokeRole(
156
+ role: BytesLike,
157
+ account: string,
158
+ overrides?: Overrides & { from?: string | Promise<string> }
159
+ ): Promise<ContractTransaction>;
160
+ };
161
+
162
+ getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<string>;
163
+
164
+ grantRole(
165
+ role: BytesLike,
166
+ account: string,
167
+ overrides?: Overrides & { from?: string | Promise<string> }
168
+ ): Promise<ContractTransaction>;
169
+
170
+ hasRole(
171
+ role: BytesLike,
172
+ account: string,
173
+ overrides?: CallOverrides
174
+ ): Promise<boolean>;
175
+
176
+ renounceRole(
177
+ role: BytesLike,
178
+ account: string,
179
+ overrides?: Overrides & { from?: string | Promise<string> }
180
+ ): Promise<ContractTransaction>;
181
+
182
+ revokeRole(
183
+ role: BytesLike,
184
+ account: string,
185
+ overrides?: Overrides & { from?: string | Promise<string> }
186
+ ): Promise<ContractTransaction>;
187
+
188
+ callStatic: {
189
+ getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<string>;
190
+
191
+ grantRole(
192
+ role: BytesLike,
193
+ account: string,
194
+ overrides?: CallOverrides
195
+ ): Promise<void>;
196
+
197
+ hasRole(
198
+ role: BytesLike,
199
+ account: string,
200
+ overrides?: CallOverrides
201
+ ): Promise<boolean>;
202
+
203
+ renounceRole(
204
+ role: BytesLike,
205
+ account: string,
206
+ overrides?: CallOverrides
207
+ ): Promise<void>;
208
+
209
+ revokeRole(
210
+ role: BytesLike,
211
+ account: string,
212
+ overrides?: CallOverrides
213
+ ): Promise<void>;
214
+ };
215
+
216
+ filters: {
217
+ "RoleAdminChanged(bytes32,bytes32,bytes32)"(
218
+ role?: BytesLike | null,
219
+ previousAdminRole?: BytesLike | null,
220
+ newAdminRole?: BytesLike | null
221
+ ): TypedEventFilter<
222
+ [string, string, string],
223
+ { role: string; previousAdminRole: string; newAdminRole: string }
224
+ >;
225
+
226
+ RoleAdminChanged(
227
+ role?: BytesLike | null,
228
+ previousAdminRole?: BytesLike | null,
229
+ newAdminRole?: BytesLike | null
230
+ ): TypedEventFilter<
231
+ [string, string, string],
232
+ { role: string; previousAdminRole: string; newAdminRole: string }
233
+ >;
234
+
235
+ "RoleGranted(bytes32,address,address)"(
236
+ role?: BytesLike | null,
237
+ account?: string | null,
238
+ sender?: string | null
239
+ ): TypedEventFilter<
240
+ [string, string, string],
241
+ { role: string; account: string; sender: string }
242
+ >;
243
+
244
+ RoleGranted(
245
+ role?: BytesLike | null,
246
+ account?: string | null,
247
+ sender?: string | null
248
+ ): TypedEventFilter<
249
+ [string, string, string],
250
+ { role: string; account: string; sender: string }
251
+ >;
252
+
253
+ "RoleRevoked(bytes32,address,address)"(
254
+ role?: BytesLike | null,
255
+ account?: string | null,
256
+ sender?: string | null
257
+ ): TypedEventFilter<
258
+ [string, string, string],
259
+ { role: string; account: string; sender: string }
260
+ >;
261
+
262
+ RoleRevoked(
263
+ role?: BytesLike | null,
264
+ account?: string | null,
265
+ sender?: string | null
266
+ ): TypedEventFilter<
267
+ [string, string, string],
268
+ { role: string; account: string; sender: string }
269
+ >;
270
+ };
271
+
272
+ estimateGas: {
273
+ getRoleAdmin(
274
+ role: BytesLike,
275
+ overrides?: CallOverrides
276
+ ): Promise<BigNumber>;
277
+
278
+ grantRole(
279
+ role: BytesLike,
280
+ account: string,
281
+ overrides?: Overrides & { from?: string | Promise<string> }
282
+ ): Promise<BigNumber>;
283
+
284
+ hasRole(
285
+ role: BytesLike,
286
+ account: string,
287
+ overrides?: CallOverrides
288
+ ): Promise<BigNumber>;
289
+
290
+ renounceRole(
291
+ role: BytesLike,
292
+ account: string,
293
+ overrides?: Overrides & { from?: string | Promise<string> }
294
+ ): Promise<BigNumber>;
295
+
296
+ revokeRole(
297
+ role: BytesLike,
298
+ account: string,
299
+ overrides?: Overrides & { from?: string | Promise<string> }
300
+ ): Promise<BigNumber>;
301
+ };
302
+
303
+ populateTransaction: {
304
+ getRoleAdmin(
305
+ role: BytesLike,
306
+ overrides?: CallOverrides
307
+ ): Promise<PopulatedTransaction>;
308
+
309
+ grantRole(
310
+ role: BytesLike,
311
+ account: string,
312
+ overrides?: Overrides & { from?: string | Promise<string> }
313
+ ): Promise<PopulatedTransaction>;
314
+
315
+ hasRole(
316
+ role: BytesLike,
317
+ account: string,
318
+ overrides?: CallOverrides
319
+ ): Promise<PopulatedTransaction>;
320
+
321
+ renounceRole(
322
+ role: BytesLike,
323
+ account: string,
324
+ overrides?: Overrides & { from?: string | Promise<string> }
325
+ ): Promise<PopulatedTransaction>;
326
+
327
+ revokeRole(
328
+ role: BytesLike,
329
+ account: string,
330
+ overrides?: Overrides & { from?: string | Promise<string> }
331
+ ): Promise<PopulatedTransaction>;
332
+ };
333
+ }