essential-eth 0.5.11-next.1 → 0.5.13-next.1

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 (187) hide show
  1. package/dist/{classes → cjs/classes}/Contract.d.ts +0 -0
  2. package/dist/cjs/classes/Contract.js +140 -0
  3. package/dist/{classes → cjs/classes}/test/Contract/crv-abi.d.ts +0 -0
  4. package/dist/cjs/classes/test/Contract/crv-abi.js +488 -0
  5. package/dist/{classes → cjs/classes}/test/Contract/ens-abi.d.ts +0 -0
  6. package/dist/cjs/classes/test/Contract/ens-abi.js +453 -0
  7. package/dist/{classes → cjs/classes}/test/Contract/fei-abi.d.ts +0 -0
  8. package/dist/cjs/classes/test/Contract/fei-abi.js +526 -0
  9. package/dist/{classes → cjs/classes}/test/Contract/foo-abi.d.ts +0 -0
  10. package/dist/cjs/classes/test/Contract/foo-abi.js +42 -0
  11. package/dist/{classes → cjs/classes}/test/Contract/uniswap-abi.d.ts +0 -0
  12. package/dist/cjs/classes/test/Contract/uniswap-abi.js +121 -0
  13. package/dist/{classes → cjs/classes}/utils/clean-block.d.ts +0 -0
  14. package/dist/cjs/classes/utils/clean-block.js +160 -0
  15. package/dist/{classes → cjs/classes}/utils/clean-log.d.ts +0 -0
  16. package/dist/cjs/classes/utils/clean-log.js +37 -0
  17. package/dist/{classes → cjs/classes}/utils/clean-transaction-receipt.d.ts +0 -0
  18. package/dist/cjs/classes/utils/clean-transaction-receipt.js +50 -0
  19. package/dist/{classes → cjs/classes}/utils/clean-transaction.d.ts +0 -0
  20. package/dist/cjs/classes/utils/clean-transaction.js +51 -0
  21. package/dist/{classes → cjs/classes}/utils/encode-decode-transaction.d.ts +0 -0
  22. package/dist/cjs/classes/utils/encode-decode-transaction.js +137 -0
  23. package/dist/{classes → cjs/classes}/utils/fetchers.d.ts +0 -0
  24. package/dist/cjs/classes/utils/fetchers.js +81 -0
  25. package/dist/{classes → cjs/classes}/utils/hex-to-decimal.d.ts +0 -0
  26. package/dist/cjs/classes/utils/hex-to-decimal.js +24 -0
  27. package/dist/{classes → cjs/classes}/utils/prepare-transaction.d.ts +0 -0
  28. package/dist/cjs/classes/utils/prepare-transaction.js +45 -0
  29. package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
  30. package/dist/cjs/index.js +54 -0
  31. package/dist/cjs/index.umd.js +2 -0
  32. package/dist/cjs/index.umd.js.map +1 -0
  33. package/dist/{logger → cjs/logger}/logger.d.ts +0 -0
  34. package/dist/cjs/logger/logger.js +36 -0
  35. package/dist/cjs/logger/package-version.d.ts +1 -0
  36. package/dist/cjs/logger/package-version.js +5 -0
  37. package/dist/{providers → cjs/providers}/BaseProvider.d.ts +0 -0
  38. package/dist/cjs/providers/BaseProvider.js +512 -0
  39. package/dist/{providers → cjs/providers}/FallthroughProvider.d.ts +0 -0
  40. package/dist/cjs/providers/FallthroughProvider.js +65 -0
  41. package/dist/{providers → cjs/providers}/JsonRpcProvider.d.ts +0 -0
  42. package/dist/cjs/providers/JsonRpcProvider.js +46 -0
  43. package/dist/{providers → cjs/providers}/test/rpc-urls.d.ts +0 -0
  44. package/dist/cjs/providers/test/rpc-urls.js +14 -0
  45. package/dist/{providers → cjs/providers}/utils/chains-info.d.ts +0 -0
  46. package/dist/cjs/providers/utils/chains-info.js +1402 -0
  47. package/dist/{shared → cjs/shared}/tiny-big/helpers.d.ts +0 -0
  48. package/dist/cjs/shared/tiny-big/helpers.js +97 -0
  49. package/dist/{shared → cjs/shared}/tiny-big/tiny-big.d.ts +0 -0
  50. package/dist/cjs/shared/tiny-big/tiny-big.js +101 -0
  51. package/dist/{shared → cjs/shared}/validate-type.d.ts +0 -0
  52. package/dist/cjs/shared/validate-type.js +9 -0
  53. package/dist/{types → cjs/types}/Block.types.d.ts +0 -0
  54. package/dist/cjs/types/Block.types.js +2 -0
  55. package/dist/{types → cjs/types}/Contract.types.d.ts +0 -0
  56. package/dist/cjs/types/Contract.types.js +2 -0
  57. package/dist/{types → cjs/types}/Filter.types.d.ts +0 -0
  58. package/dist/cjs/types/Filter.types.js +2 -0
  59. package/dist/{types → cjs/types}/Network.types.d.ts +0 -0
  60. package/dist/cjs/types/Network.types.js +2 -0
  61. package/dist/{types → cjs/types}/Transaction.types.d.ts +0 -0
  62. package/dist/cjs/types/Transaction.types.js +2 -0
  63. package/dist/{utils → cjs/utils}/bytes.d.ts +0 -0
  64. package/dist/cjs/utils/bytes.js +711 -0
  65. package/dist/{utils → cjs/utils}/compute-address.d.ts +0 -0
  66. package/dist/cjs/utils/compute-address.js +33 -0
  67. package/dist/{utils → cjs/utils}/compute-public-key.d.ts +0 -0
  68. package/dist/cjs/utils/compute-public-key.js +26 -0
  69. package/dist/{utils → cjs/utils}/ether-to-gwei.d.ts +0 -0
  70. package/dist/cjs/utils/ether-to-gwei.js +35 -0
  71. package/dist/{utils → cjs/utils}/ether-to-wei.d.ts +0 -0
  72. package/dist/cjs/utils/ether-to-wei.js +35 -0
  73. package/dist/{utils → cjs/utils}/gwei-to-ether.d.ts +0 -0
  74. package/dist/cjs/utils/gwei-to-ether.js +35 -0
  75. package/dist/{utils → cjs/utils}/hash-message.d.ts +0 -0
  76. package/dist/cjs/utils/hash-message.js +28 -0
  77. package/dist/{utils → cjs/utils}/is-address.d.ts +0 -0
  78. package/dist/cjs/utils/is-address.js +39 -0
  79. package/dist/{utils → cjs/utils}/keccak256.d.ts +0 -0
  80. package/dist/cjs/utils/keccak256.js +31 -0
  81. package/dist/{utils → cjs/utils}/solidity-keccak256.d.ts +0 -0
  82. package/dist/cjs/utils/solidity-keccak256.js +138 -0
  83. package/dist/{utils → cjs/utils}/split-signature.d.ts +0 -0
  84. package/dist/cjs/utils/split-signature.js +163 -0
  85. package/dist/{utils → cjs/utils}/to-checksum-address.d.ts +0 -0
  86. package/dist/cjs/utils/to-checksum-address.js +46 -0
  87. package/dist/{utils → cjs/utils}/to-utf8-bytes.d.ts +0 -0
  88. package/dist/cjs/utils/to-utf8-bytes.js +21 -0
  89. package/dist/{utils → cjs/utils}/wei-to-ether.d.ts +0 -0
  90. package/dist/cjs/utils/wei-to-ether.js +45 -0
  91. package/dist/esm/classes/Contract.d.ts +11 -0
  92. package/dist/esm/classes/Contract.js +65 -0
  93. package/dist/esm/classes/test/Contract/crv-abi.d.ts +2 -0
  94. package/dist/esm/classes/test/Contract/crv-abi.js +470 -0
  95. package/dist/esm/classes/test/Contract/ens-abi.d.ts +2 -0
  96. package/dist/esm/classes/test/Contract/ens-abi.js +435 -0
  97. package/dist/esm/classes/test/Contract/fei-abi.d.ts +2 -0
  98. package/dist/esm/classes/test/Contract/fei-abi.js +521 -0
  99. package/dist/esm/classes/test/Contract/foo-abi.d.ts +2 -0
  100. package/dist/esm/classes/test/Contract/foo-abi.js +33 -0
  101. package/dist/esm/classes/test/Contract/uniswap-abi.d.ts +2 -0
  102. package/dist/esm/classes/test/Contract/uniswap-abi.js +116 -0
  103. package/dist/esm/classes/utils/clean-block.d.ts +3 -0
  104. package/dist/esm/classes/utils/clean-block.js +35 -0
  105. package/dist/esm/classes/utils/clean-log.d.ts +2 -0
  106. package/dist/esm/classes/utils/clean-log.js +26 -0
  107. package/dist/esm/classes/utils/clean-transaction-receipt.d.ts +2 -0
  108. package/dist/esm/classes/utils/clean-transaction-receipt.js +34 -0
  109. package/dist/esm/classes/utils/clean-transaction.d.ts +2 -0
  110. package/dist/esm/classes/utils/clean-transaction.js +33 -0
  111. package/dist/esm/classes/utils/encode-decode-transaction.d.ts +4 -0
  112. package/dist/esm/classes/utils/encode-decode-transaction.js +98 -0
  113. package/dist/esm/classes/utils/fetchers.d.ts +9 -0
  114. package/dist/esm/classes/utils/fetchers.js +43 -0
  115. package/dist/esm/classes/utils/hex-to-decimal.d.ts +1 -0
  116. package/dist/esm/classes/utils/hex-to-decimal.js +3 -0
  117. package/dist/esm/classes/utils/prepare-transaction.d.ts +2 -0
  118. package/dist/esm/classes/utils/prepare-transaction.js +34 -0
  119. package/dist/esm/index.d.ts +25 -0
  120. package/dist/esm/index.js +20 -0
  121. package/dist/esm/logger/logger.d.ts +11 -0
  122. package/dist/esm/logger/logger.js +33 -0
  123. package/dist/esm/logger/package-version.d.ts +1 -0
  124. package/dist/esm/logger/package-version.js +1 -0
  125. package/dist/esm/providers/BaseProvider.d.ts +24 -0
  126. package/dist/esm/providers/BaseProvider.js +157 -0
  127. package/dist/esm/providers/FallthroughProvider.d.ts +11 -0
  128. package/dist/esm/providers/FallthroughProvider.js +41 -0
  129. package/dist/esm/providers/JsonRpcProvider.d.ts +7 -0
  130. package/dist/esm/providers/JsonRpcProvider.js +15 -0
  131. package/dist/esm/providers/test/rpc-urls.d.ts +11 -0
  132. package/dist/esm/providers/test/rpc-urls.js +11 -0
  133. package/dist/esm/providers/utils/chains-info.d.ts +467 -0
  134. package/dist/esm/providers/utils/chains-info.js +1398 -0
  135. package/dist/esm/shared/tiny-big/helpers.d.ts +1 -0
  136. package/dist/esm/shared/tiny-big/helpers.js +58 -0
  137. package/dist/esm/shared/tiny-big/tiny-big.d.ts +10 -0
  138. package/dist/esm/shared/tiny-big/tiny-big.js +45 -0
  139. package/dist/esm/shared/validate-type.d.ts +3 -0
  140. package/dist/esm/shared/validate-type.js +5 -0
  141. package/dist/esm/types/Block.types.d.ts +40 -0
  142. package/dist/esm/types/Block.types.js +1 -0
  143. package/dist/esm/types/Contract.types.d.ts +24 -0
  144. package/dist/esm/types/Contract.types.js +1 -0
  145. package/dist/esm/types/Filter.types.d.ts +12 -0
  146. package/dist/esm/types/Filter.types.js +1 -0
  147. package/dist/esm/types/Network.types.d.ts +5 -0
  148. package/dist/esm/types/Network.types.js +1 -0
  149. package/dist/esm/types/Transaction.types.d.ts +113 -0
  150. package/dist/esm/types/Transaction.types.js +1 -0
  151. package/dist/esm/utils/bytes.d.ts +40 -0
  152. package/dist/esm/utils/bytes.js +245 -0
  153. package/dist/esm/utils/compute-address.d.ts +1 -0
  154. package/dist/esm/utils/compute-address.js +11 -0
  155. package/dist/esm/utils/compute-public-key.d.ts +2 -0
  156. package/dist/esm/utils/compute-public-key.js +6 -0
  157. package/dist/esm/utils/ether-to-gwei.d.ts +3 -0
  158. package/dist/esm/utils/ether-to-gwei.js +7 -0
  159. package/dist/esm/utils/ether-to-wei.d.ts +3 -0
  160. package/dist/esm/utils/ether-to-wei.js +7 -0
  161. package/dist/esm/utils/gwei-to-ether.d.ts +3 -0
  162. package/dist/esm/utils/gwei-to-ether.js +7 -0
  163. package/dist/esm/utils/hash-message.d.ts +2 -0
  164. package/dist/esm/utils/hash-message.js +12 -0
  165. package/dist/esm/utils/is-address.d.ts +1 -0
  166. package/dist/esm/utils/is-address.js +12 -0
  167. package/dist/esm/utils/keccak256.d.ts +2 -0
  168. package/dist/esm/utils/keccak256.js +13 -0
  169. package/dist/esm/utils/solidity-keccak256.d.ts +2 -0
  170. package/dist/esm/utils/solidity-keccak256.js +85 -0
  171. package/dist/esm/utils/split-signature.d.ts +2 -0
  172. package/dist/esm/utils/split-signature.js +126 -0
  173. package/dist/esm/utils/to-checksum-address.d.ts +1 -0
  174. package/dist/esm/utils/to-checksum-address.js +25 -0
  175. package/dist/esm/utils/to-utf8-bytes.d.ts +1 -0
  176. package/dist/esm/utils/to-utf8-bytes.js +3 -0
  177. package/dist/esm/utils/wei-to-ether.d.ts +3 -0
  178. package/dist/esm/utils/wei-to-ether.js +16 -0
  179. package/package.json +10 -10
  180. package/readme.md +5 -1
  181. package/dist/index.js +0 -1904
  182. package/dist/index.js.map +0 -1
  183. package/dist/index.module.js +0 -1865
  184. package/dist/index.module.js.map +0 -1
  185. package/dist/index.umd.js +0 -2
  186. package/dist/index.umd.js.map +0 -1
  187. package/dist/logger/package-version.d.ts +0 -1
File without changes
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Contract = exports.defineReadOnly = exports.BaseContract = void 0;
13
+ const encode_decode_transaction_1 = require("./utils/encode-decode-transaction");
14
+ const fetchers_1 = require("./utils/fetchers");
15
+ /**
16
+ *
17
+ * @param txnData
18
+ * @example
19
+ */
20
+ function estimateGas(txnData) {
21
+ // https://ethereum.stackexchange.com/questions/1570/what-does-intrinsic-gas-too-low-mean/1694
22
+ txnData.split('').reduce((previousValue, currentValue) => {
23
+ // 0 characters are 4 gwei, all others are 48 gwei
24
+ const characterCost = currentValue === '0' ? 4 : 68;
25
+ return previousValue + characterCost;
26
+ }, 0);
27
+ }
28
+ class BaseContract {
29
+ /**
30
+ * @param addressOrName The ethereum address of the smart-contract
31
+ * @param contractInterface The JSON ABI of the smart-contract (like http://api.etherscan.io/api?module=contract&action=getabi&address=0x090d4613473dee047c3f2706764f49e0821d256e&format=raw)
32
+ * @param signerOrProvider An instantiated essential-eth provider
33
+ * @example
34
+ */
35
+ constructor(addressOrName, contractInterface, signerOrProvider) {
36
+ this._address = addressOrName;
37
+ this._provider = signerOrProvider;
38
+ contractInterface
39
+ .filter((jsonABIArgument) => jsonABIArgument.type === 'function')
40
+ .forEach((jsonABIArgument) => {
41
+ if ('name' in jsonABIArgument &&
42
+ typeof jsonABIArgument.name === 'string') {
43
+ defineReadOnly(this, jsonABIArgument.name, (..._args) => __awaiter(this, void 0, void 0, function* () {
44
+ let functionArguments = _args;
45
+ let options = {};
46
+ // remove options from encoding
47
+ const lastArg = _args[_args.length - 1];
48
+ if (!Array.isArray(lastArg) && typeof lastArg === 'object') {
49
+ options = lastArg;
50
+ functionArguments = _args.slice(0, _args.length - 1);
51
+ }
52
+ const data = (0, encode_decode_transaction_1.encodeData)(jsonABIArgument, functionArguments);
53
+ const decimalGas = typeof options.gasLimit === 'number'
54
+ ? options.gasLimit /* user passed in "gasLimit" directly */
55
+ : typeof (jsonABIArgument === null || jsonABIArgument === void 0 ? void 0 : jsonABIArgument.gas) ===
56
+ 'number' /* ABI specified "gas". */
57
+ ? estimateGas(data)
58
+ : null;
59
+ const req = () => __awaiter(this, void 0, void 0, function* () {
60
+ return yield (0, fetchers_1.post)(this._provider.selectRpcUrl(), (0, fetchers_1.buildRPCPostBody)('eth_call', [
61
+ Object.assign({ to: this._address.toLowerCase(), data }, (decimalGas
62
+ ? { gas: `0x${decimalGas.toString(16)}` }
63
+ : {})),
64
+ 'latest',
65
+ ]));
66
+ });
67
+ const nodeResponse = yield req();
68
+ return (0, encode_decode_transaction_1.decodeRPCResponse)(jsonABIArgument, nodeResponse);
69
+ }));
70
+ }
71
+ });
72
+ }
73
+ }
74
+ exports.BaseContract = BaseContract;
75
+ /**
76
+ * Applies the unique contract's methods to the instantiated Contract in the constructor based-upon the provided ABI
77
+ *
78
+ * @param object
79
+ * @param name
80
+ * @param value
81
+ * @example
82
+ */
83
+ function defineReadOnly(object, name, value) {
84
+ Object.defineProperty(object, name, {
85
+ enumerable: true,
86
+ value: value,
87
+ writable: false,
88
+ });
89
+ }
90
+ exports.defineReadOnly = defineReadOnly;
91
+ /**
92
+ * @alpha
93
+ * Only accepts ABIS in JSON format. This allows for stronger typing and assurances of data-types
94
+ * Only read-only function calls currently supported.
95
+ * @example
96
+ * ```typescript
97
+ * import { Contract, JsonRpcProvider } from 'essential-eth';
98
+ * // UNI airdrop contract
99
+ * const contractAddress = '0x090D4613473dEE047c3f2706764f49E0821D256e';
100
+ * const provider = new JsonRpcProvider();
101
+ *
102
+ * const JSONABI = [
103
+ * {
104
+ * inputs: [
105
+ * {
106
+ * internalType: 'uint256',
107
+ * name: 'index',
108
+ * type: 'uint256',
109
+ * },
110
+ * ],
111
+ * name: 'isClaimed',
112
+ * outputs: [
113
+ * {
114
+ * internalType: 'bool',
115
+ * name: '',
116
+ * type: 'bool',
117
+ * },
118
+ * ],
119
+ * stateMutability: 'view',
120
+ * type: 'function',
121
+ * },
122
+ * ]
123
+ *
124
+ * const contract = new Contract(
125
+ * contractAddress,
126
+ * JSONABI,
127
+ * provider,
128
+ * );
129
+ *
130
+ * (async () => {
131
+ * // prints boolean as to whether index 0 has claimed airdrop or not
132
+ * console.log(await contract.isClaimed(0));
133
+ * })()
134
+ *
135
+ *
136
+ * ```
137
+ */
138
+ class Contract extends BaseContract {
139
+ }
140
+ exports.Contract = Contract;
@@ -0,0 +1,488 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.abi = void 0;
4
+ exports.abi =
5
+ // 20210406000308
6
+ // http://api.etherscan.io/api?module=contract&action=getabi&address=0x575CCD8e2D300e2377B43478339E364000318E2c&format=raw
7
+ [
8
+ {
9
+ name: 'Fund',
10
+ inputs: [
11
+ {
12
+ type: 'address',
13
+ name: 'recipient',
14
+ indexed: true,
15
+ },
16
+ {
17
+ type: 'uint256',
18
+ name: 'amount',
19
+ indexed: false,
20
+ },
21
+ ],
22
+ anonymous: false,
23
+ type: 'event',
24
+ },
25
+ {
26
+ name: 'Claim',
27
+ inputs: [
28
+ {
29
+ type: 'address',
30
+ name: 'recipient',
31
+ indexed: true,
32
+ },
33
+ {
34
+ type: 'uint256',
35
+ name: 'claimed',
36
+ indexed: false,
37
+ },
38
+ ],
39
+ anonymous: false,
40
+ type: 'event',
41
+ },
42
+ {
43
+ name: 'ToggleDisable',
44
+ inputs: [
45
+ {
46
+ type: 'address',
47
+ name: 'recipient',
48
+ indexed: false,
49
+ },
50
+ {
51
+ type: 'bool',
52
+ name: 'disabled',
53
+ indexed: false,
54
+ },
55
+ ],
56
+ anonymous: false,
57
+ type: 'event',
58
+ },
59
+ {
60
+ name: 'CommitOwnership',
61
+ inputs: [
62
+ {
63
+ type: 'address',
64
+ name: 'admin',
65
+ indexed: false,
66
+ },
67
+ ],
68
+ anonymous: false,
69
+ type: 'event',
70
+ },
71
+ {
72
+ name: 'ApplyOwnership',
73
+ inputs: [
74
+ {
75
+ type: 'address',
76
+ name: 'admin',
77
+ indexed: false,
78
+ },
79
+ ],
80
+ anonymous: false,
81
+ type: 'event',
82
+ },
83
+ {
84
+ outputs: [],
85
+ inputs: [
86
+ {
87
+ type: 'address',
88
+ name: '_token',
89
+ },
90
+ {
91
+ type: 'uint256',
92
+ name: '_start_time',
93
+ },
94
+ {
95
+ type: 'uint256',
96
+ name: '_end_time',
97
+ },
98
+ {
99
+ type: 'bool',
100
+ name: '_can_disable',
101
+ },
102
+ {
103
+ type: 'address[4]',
104
+ name: '_fund_admins',
105
+ },
106
+ ],
107
+ stateMutability: 'nonpayable',
108
+ type: 'constructor',
109
+ },
110
+ {
111
+ name: 'add_tokens',
112
+ outputs: [],
113
+ inputs: [
114
+ {
115
+ type: 'uint256',
116
+ name: '_amount',
117
+ },
118
+ ],
119
+ stateMutability: 'nonpayable',
120
+ type: 'function',
121
+ gas: 39108,
122
+ },
123
+ {
124
+ name: 'fund',
125
+ outputs: [],
126
+ inputs: [
127
+ {
128
+ type: 'address[100]',
129
+ name: '_recipients',
130
+ },
131
+ {
132
+ type: 'uint256[100]',
133
+ name: '_amounts',
134
+ },
135
+ ],
136
+ stateMutability: 'nonpayable',
137
+ type: 'function',
138
+ gas: 3962646,
139
+ },
140
+ {
141
+ name: 'toggle_disable',
142
+ outputs: [],
143
+ inputs: [
144
+ {
145
+ type: 'address',
146
+ name: '_recipient',
147
+ },
148
+ ],
149
+ stateMutability: 'nonpayable',
150
+ type: 'function',
151
+ gas: 40280,
152
+ },
153
+ {
154
+ name: 'disable_can_disable',
155
+ outputs: [],
156
+ inputs: [],
157
+ stateMutability: 'nonpayable',
158
+ type: 'function',
159
+ gas: 21295,
160
+ },
161
+ {
162
+ name: 'disable_fund_admins',
163
+ outputs: [],
164
+ inputs: [],
165
+ stateMutability: 'nonpayable',
166
+ type: 'function',
167
+ gas: 21325,
168
+ },
169
+ {
170
+ name: 'vestedSupply',
171
+ outputs: [
172
+ {
173
+ type: 'uint256',
174
+ name: '',
175
+ },
176
+ ],
177
+ inputs: [],
178
+ stateMutability: 'view',
179
+ type: 'function',
180
+ gas: 4468,
181
+ },
182
+ {
183
+ name: 'lockedSupply',
184
+ outputs: [
185
+ {
186
+ type: 'uint256',
187
+ name: '',
188
+ },
189
+ ],
190
+ inputs: [],
191
+ stateMutability: 'view',
192
+ type: 'function',
193
+ gas: 5465,
194
+ },
195
+ {
196
+ name: 'vestedOf',
197
+ outputs: [
198
+ {
199
+ type: 'uint256',
200
+ name: '',
201
+ },
202
+ ],
203
+ inputs: [
204
+ {
205
+ type: 'address',
206
+ name: '_recipient',
207
+ },
208
+ ],
209
+ stateMutability: 'view',
210
+ type: 'function',
211
+ gas: 5163,
212
+ },
213
+ {
214
+ name: 'balanceOf',
215
+ outputs: [
216
+ {
217
+ type: 'uint256',
218
+ name: '',
219
+ },
220
+ ],
221
+ inputs: [
222
+ {
223
+ type: 'address',
224
+ name: '_recipient',
225
+ },
226
+ ],
227
+ stateMutability: 'view',
228
+ type: 'function',
229
+ gas: 6275,
230
+ },
231
+ {
232
+ name: 'lockedOf',
233
+ outputs: [
234
+ {
235
+ type: 'uint256',
236
+ name: '',
237
+ },
238
+ ],
239
+ inputs: [
240
+ {
241
+ type: 'address',
242
+ name: '_recipient',
243
+ },
244
+ ],
245
+ stateMutability: 'view',
246
+ type: 'function',
247
+ gas: 6305,
248
+ },
249
+ {
250
+ name: 'claim',
251
+ outputs: [],
252
+ inputs: [],
253
+ stateMutability: 'nonpayable',
254
+ type: 'function',
255
+ },
256
+ // {
257
+ // name: 'claim',
258
+ // outputs: [],
259
+ // inputs: [
260
+ // {
261
+ // type: 'address',
262
+ // name: 'addr',
263
+ // },
264
+ // ],
265
+ // stateMutability: 'nonpayable',
266
+ // type: 'function',
267
+ // },
268
+ {
269
+ name: 'commit_transfer_ownership',
270
+ outputs: [
271
+ {
272
+ type: 'bool',
273
+ name: '',
274
+ },
275
+ ],
276
+ inputs: [
277
+ {
278
+ type: 'address',
279
+ name: 'addr',
280
+ },
281
+ ],
282
+ stateMutability: 'nonpayable',
283
+ type: 'function',
284
+ gas: 38032,
285
+ },
286
+ {
287
+ name: 'apply_transfer_ownership',
288
+ outputs: [
289
+ {
290
+ type: 'bool',
291
+ name: '',
292
+ },
293
+ ],
294
+ inputs: [],
295
+ stateMutability: 'nonpayable',
296
+ type: 'function',
297
+ gas: 38932,
298
+ },
299
+ {
300
+ name: 'token',
301
+ outputs: [
302
+ {
303
+ type: 'address',
304
+ name: '',
305
+ },
306
+ ],
307
+ inputs: [],
308
+ stateMutability: 'view',
309
+ type: 'function',
310
+ gas: 1601,
311
+ },
312
+ {
313
+ name: 'start_time',
314
+ outputs: [
315
+ {
316
+ type: 'uint256',
317
+ name: '',
318
+ },
319
+ ],
320
+ inputs: [],
321
+ stateMutability: 'view',
322
+ type: 'function',
323
+ gas: 1631,
324
+ },
325
+ {
326
+ name: 'end_time',
327
+ outputs: [
328
+ {
329
+ type: 'uint256',
330
+ name: '',
331
+ },
332
+ ],
333
+ inputs: [],
334
+ stateMutability: 'view',
335
+ type: 'function',
336
+ gas: 1661,
337
+ },
338
+ {
339
+ name: 'initial_locked',
340
+ outputs: [
341
+ {
342
+ type: 'uint256',
343
+ name: '',
344
+ },
345
+ ],
346
+ inputs: [
347
+ {
348
+ type: 'address',
349
+ name: 'arg0',
350
+ },
351
+ ],
352
+ stateMutability: 'view',
353
+ type: 'function',
354
+ gas: 1845,
355
+ },
356
+ {
357
+ name: 'total_claimed',
358
+ outputs: [
359
+ {
360
+ type: 'uint256',
361
+ name: '',
362
+ },
363
+ ],
364
+ inputs: [
365
+ {
366
+ type: 'address',
367
+ name: 'arg0',
368
+ },
369
+ ],
370
+ stateMutability: 'view',
371
+ type: 'function',
372
+ gas: 1875,
373
+ },
374
+ {
375
+ name: 'initial_locked_supply',
376
+ outputs: [
377
+ {
378
+ type: 'uint256',
379
+ name: '',
380
+ },
381
+ ],
382
+ inputs: [],
383
+ stateMutability: 'view',
384
+ type: 'function',
385
+ gas: 1751,
386
+ },
387
+ {
388
+ name: 'unallocated_supply',
389
+ outputs: [
390
+ {
391
+ type: 'uint256',
392
+ name: '',
393
+ },
394
+ ],
395
+ inputs: [],
396
+ stateMutability: 'view',
397
+ type: 'function',
398
+ gas: 1781,
399
+ },
400
+ {
401
+ name: 'can_disable',
402
+ outputs: [
403
+ {
404
+ type: 'bool',
405
+ name: '',
406
+ },
407
+ ],
408
+ inputs: [],
409
+ stateMutability: 'view',
410
+ type: 'function',
411
+ gas: 1811,
412
+ },
413
+ {
414
+ name: 'disabled_at',
415
+ outputs: [
416
+ {
417
+ type: 'uint256',
418
+ name: '',
419
+ },
420
+ ],
421
+ inputs: [
422
+ {
423
+ type: 'address',
424
+ name: 'arg0',
425
+ },
426
+ ],
427
+ stateMutability: 'view',
428
+ type: 'function',
429
+ gas: 1995,
430
+ },
431
+ {
432
+ name: 'admin',
433
+ outputs: [
434
+ {
435
+ type: 'address',
436
+ name: '',
437
+ },
438
+ ],
439
+ inputs: [],
440
+ stateMutability: 'view',
441
+ type: 'function',
442
+ gas: 1871,
443
+ },
444
+ {
445
+ name: 'future_admin',
446
+ outputs: [
447
+ {
448
+ type: 'address',
449
+ name: '',
450
+ },
451
+ ],
452
+ inputs: [],
453
+ stateMutability: 'view',
454
+ type: 'function',
455
+ gas: 1901,
456
+ },
457
+ {
458
+ name: 'fund_admins_enabled',
459
+ outputs: [
460
+ {
461
+ type: 'bool',
462
+ name: '',
463
+ },
464
+ ],
465
+ inputs: [],
466
+ stateMutability: 'view',
467
+ type: 'function',
468
+ gas: 1931,
469
+ },
470
+ {
471
+ name: 'fund_admins',
472
+ outputs: [
473
+ {
474
+ type: 'bool',
475
+ name: '',
476
+ },
477
+ ],
478
+ inputs: [
479
+ {
480
+ type: 'address',
481
+ name: 'arg0',
482
+ },
483
+ ],
484
+ stateMutability: 'view',
485
+ type: 'function',
486
+ gas: 2115,
487
+ },
488
+ ];