quantumcoin 6.14.4 → 7.0.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 (1272) hide show
  1. package/.github/workflows/publish-npmjs.yaml +22 -0
  2. package/.gitignore +12 -0
  3. package/{LICENSE.md → LICENSE} +1 -1
  4. package/README-SDK.md +700 -0
  5. package/README.md +84 -89
  6. package/config.d.ts +50 -0
  7. package/config.js +115 -0
  8. package/examples/events.js +35 -0
  9. package/examples/example.js +61 -0
  10. package/examples/package-lock.json +1150 -0
  11. package/examples/package.json +17 -0
  12. package/examples/read-operations.js +28 -0
  13. package/examples/wallet-offline.js +29 -0
  14. package/generate-sdk.js +888 -0
  15. package/index.js +12 -0
  16. package/package.json +44 -120
  17. package/src/abi/fragments.d.ts +42 -0
  18. package/src/abi/fragments.js +63 -0
  19. package/src/abi/index.d.ts +13 -0
  20. package/src/abi/index.js +9 -0
  21. package/src/abi/interface.d.ts +114 -0
  22. package/src/abi/interface.js +352 -0
  23. package/src/constants.d.ts +61 -0
  24. package/src/constants.js +94 -0
  25. package/src/contract/contract-factory.d.ts +28 -0
  26. package/src/contract/contract-factory.js +93 -0
  27. package/src/contract/contract.d.ts +105 -0
  28. package/src/contract/contract.js +312 -0
  29. package/src/contract/index.d.ts +9 -0
  30. package/src/contract/index.js +9 -0
  31. package/src/errors/index.d.ts +92 -0
  32. package/src/errors/index.js +188 -0
  33. package/src/generator/index.js +426 -0
  34. package/src/index.d.ts +111 -0
  35. package/src/index.js +41 -0
  36. package/src/internal/hex.d.ts +61 -0
  37. package/src/internal/hex.js +144 -0
  38. package/src/providers/extra-providers.d.ts +128 -0
  39. package/src/providers/extra-providers.js +575 -0
  40. package/src/providers/index.d.ts +16 -0
  41. package/src/providers/index.js +10 -0
  42. package/src/providers/json-rpc-provider.d.ts +12 -0
  43. package/src/providers/json-rpc-provider.js +79 -0
  44. package/src/providers/provider.d.ts +194 -0
  45. package/src/providers/provider.js +359 -0
  46. package/src/utils/address.d.ts +72 -0
  47. package/src/utils/address.js +182 -0
  48. package/src/utils/encoding.d.ts +120 -0
  49. package/src/utils/encoding.js +306 -0
  50. package/src/utils/hashing.d.ts +76 -0
  51. package/src/utils/hashing.js +298 -0
  52. package/src/utils/index.d.ts +55 -0
  53. package/src/utils/index.js +13 -0
  54. package/src/utils/result.d.ts +57 -0
  55. package/src/utils/result.js +128 -0
  56. package/src/utils/rlp.d.ts +12 -0
  57. package/src/utils/rlp.js +200 -0
  58. package/src/utils/units.d.ts +29 -0
  59. package/src/utils/units.js +107 -0
  60. package/src/wallet/index.d.ts +10 -0
  61. package/src/wallet/index.js +8 -0
  62. package/src/wallet/wallet.d.ts +160 -0
  63. package/src/wallet/wallet.js +489 -0
  64. package/test/e2e/helpers.js +47 -0
  65. package/test/e2e/transactional.test.js +191 -0
  66. package/test/e2e/typed-generator.e2e.test.js +402 -0
  67. package/test/fixtures/ConstructorParam.sol +23 -0
  68. package/test/fixtures/MultiContracts.sol +37 -0
  69. package/test/fixtures/SimpleStorage.sol +18 -0
  70. package/test/fixtures/StakingContract.abi.json +1 -0
  71. package/test/integration/ipc-provider.test.js +44 -0
  72. package/test/integration/provider.test.js +72 -0
  73. package/test/integration/ws-provider.test.js +33 -0
  74. package/test/security/malformed-input.test.js +31 -0
  75. package/test/unit/abi-interface.test.js +98 -0
  76. package/test/unit/address-wallet.test.js +257 -0
  77. package/test/unit/browser-provider.test.js +82 -0
  78. package/test/unit/contract.test.js +82 -0
  79. package/test/unit/encoding-units-rlp.test.js +89 -0
  80. package/test/unit/errors.test.js +74 -0
  81. package/test/unit/filter-by-blockhash.test.js +52 -0
  82. package/test/unit/generate-contract-cli.test.js +38 -0
  83. package/test/unit/generate-sdk-artifacts-json.test.js +65 -0
  84. package/test/unit/generator.test.js +98 -0
  85. package/test/unit/hashing.test.js +54 -0
  86. package/test/unit/init.test.js +36 -0
  87. package/test/unit/interface.test.js +53 -0
  88. package/test/unit/internal-hex.test.js +47 -0
  89. package/test/unit/providers.test.js +144 -0
  90. package/test/unit/result.test.js +77 -0
  91. package/test/unit/utils.test.js +54 -0
  92. package/CHANGELOG.md +0 -442
  93. package/FUNDING.json +0 -10
  94. package/SECURITY.md +0 -34
  95. package/dist/README.md +0 -22
  96. package/lib.commonjs/README.md +0 -16
  97. package/lib.commonjs/_version.d.ts +0 -5
  98. package/lib.commonjs/_version.d.ts.map +0 -1
  99. package/lib.commonjs/_version.js +0 -9
  100. package/lib.commonjs/_version.js.map +0 -1
  101. package/lib.commonjs/abi/abi-coder.d.ts +0 -61
  102. package/lib.commonjs/abi/abi-coder.d.ts.map +0 -1
  103. package/lib.commonjs/abi/abi-coder.js +0 -210
  104. package/lib.commonjs/abi/abi-coder.js.map +0 -1
  105. package/lib.commonjs/abi/bytes32.d.ts +0 -15
  106. package/lib.commonjs/abi/bytes32.d.ts.map +0 -1
  107. package/lib.commonjs/abi/bytes32.js +0 -45
  108. package/lib.commonjs/abi/bytes32.js.map +0 -1
  109. package/lib.commonjs/abi/coders/abstract-coder.d.ts +0 -124
  110. package/lib.commonjs/abi/coders/abstract-coder.d.ts.map +0 -1
  111. package/lib.commonjs/abi/coders/abstract-coder.js +0 -472
  112. package/lib.commonjs/abi/coders/abstract-coder.js.map +0 -1
  113. package/lib.commonjs/abi/coders/address.d.ts +0 -13
  114. package/lib.commonjs/abi/coders/address.d.ts.map +0 -1
  115. package/lib.commonjs/abi/coders/address.js +0 -33
  116. package/lib.commonjs/abi/coders/address.js.map +0 -1
  117. package/lib.commonjs/abi/coders/anonymous.d.ts +0 -15
  118. package/lib.commonjs/abi/coders/anonymous.d.ts.map +0 -1
  119. package/lib.commonjs/abi/coders/anonymous.js +0 -27
  120. package/lib.commonjs/abi/coders/anonymous.js.map +0 -1
  121. package/lib.commonjs/abi/coders/array.d.ts +0 -25
  122. package/lib.commonjs/abi/coders/array.d.ts.map +0 -1
  123. package/lib.commonjs/abi/coders/array.js +0 -165
  124. package/lib.commonjs/abi/coders/array.js.map +0 -1
  125. package/lib.commonjs/abi/coders/boolean.d.ts +0 -13
  126. package/lib.commonjs/abi/coders/boolean.d.ts.map +0 -1
  127. package/lib.commonjs/abi/coders/boolean.js +0 -25
  128. package/lib.commonjs/abi/coders/boolean.js.map +0 -1
  129. package/lib.commonjs/abi/coders/bytes.d.ts +0 -19
  130. package/lib.commonjs/abi/coders/bytes.d.ts.map +0 -1
  131. package/lib.commonjs/abi/coders/bytes.js +0 -39
  132. package/lib.commonjs/abi/coders/bytes.js.map +0 -1
  133. package/lib.commonjs/abi/coders/fixed-bytes.d.ts +0 -15
  134. package/lib.commonjs/abi/coders/fixed-bytes.d.ts.map +0 -1
  135. package/lib.commonjs/abi/coders/fixed-bytes.js +0 -32
  136. package/lib.commonjs/abi/coders/fixed-bytes.js.map +0 -1
  137. package/lib.commonjs/abi/coders/null.d.ts +0 -12
  138. package/lib.commonjs/abi/coders/null.d.ts.map +0 -1
  139. package/lib.commonjs/abi/coders/null.js +0 -28
  140. package/lib.commonjs/abi/coders/null.js.map +0 -1
  141. package/lib.commonjs/abi/coders/number.d.ts +0 -16
  142. package/lib.commonjs/abi/coders/number.d.ts.map +0 -1
  143. package/lib.commonjs/abi/coders/number.js +0 -49
  144. package/lib.commonjs/abi/coders/number.js.map +0 -1
  145. package/lib.commonjs/abi/coders/string.d.ts +0 -13
  146. package/lib.commonjs/abi/coders/string.d.ts.map +0 -1
  147. package/lib.commonjs/abi/coders/string.js +0 -25
  148. package/lib.commonjs/abi/coders/string.js.map +0 -1
  149. package/lib.commonjs/abi/coders/tuple.d.ts +0 -16
  150. package/lib.commonjs/abi/coders/tuple.d.ts.map +0 -1
  151. package/lib.commonjs/abi/coders/tuple.js +0 -67
  152. package/lib.commonjs/abi/coders/tuple.js.map +0 -1
  153. package/lib.commonjs/abi/fragments.d.ts +0 -466
  154. package/lib.commonjs/abi/fragments.d.ts.map +0 -1
  155. package/lib.commonjs/abi/fragments.js +0 -1331
  156. package/lib.commonjs/abi/fragments.js.map +0 -1
  157. package/lib.commonjs/abi/index.d.ts +0 -18
  158. package/lib.commonjs/abi/index.d.ts.map +0 -1
  159. package/lib.commonjs/abi/index.js +0 -40
  160. package/lib.commonjs/abi/index.js.map +0 -1
  161. package/lib.commonjs/abi/interface.d.ts +0 -382
  162. package/lib.commonjs/abi/interface.d.ts.map +0 -1
  163. package/lib.commonjs/abi/interface.js +0 -1110
  164. package/lib.commonjs/abi/interface.js.map +0 -1
  165. package/lib.commonjs/abi/typed.d.ts +0 -570
  166. package/lib.commonjs/abi/typed.d.ts.map +0 -1
  167. package/lib.commonjs/abi/typed.js +0 -606
  168. package/lib.commonjs/abi/typed.js.map +0 -1
  169. package/lib.commonjs/address/address.d.ts +0 -36
  170. package/lib.commonjs/address/address.d.ts.map +0 -1
  171. package/lib.commonjs/address/address.js +0 -133
  172. package/lib.commonjs/address/address.js.map +0 -1
  173. package/lib.commonjs/address/checks.d.ts +0 -81
  174. package/lib.commonjs/address/checks.d.ts.map +0 -1
  175. package/lib.commonjs/address/checks.js +0 -120
  176. package/lib.commonjs/address/checks.js.map +0 -1
  177. package/lib.commonjs/address/contract-address.d.ts +0 -48
  178. package/lib.commonjs/address/contract-address.d.ts.map +0 -1
  179. package/lib.commonjs/address/contract-address.js +0 -74
  180. package/lib.commonjs/address/contract-address.js.map +0 -1
  181. package/lib.commonjs/address/index.d.ts +0 -49
  182. package/lib.commonjs/address/index.d.ts.map +0 -1
  183. package/lib.commonjs/address/index.js +0 -28
  184. package/lib.commonjs/address/index.js.map +0 -1
  185. package/lib.commonjs/constants/addresses.d.ts +0 -7
  186. package/lib.commonjs/constants/addresses.d.ts.map +0 -1
  187. package/lib.commonjs/constants/addresses.js +0 -10
  188. package/lib.commonjs/constants/addresses.js.map +0 -1
  189. package/lib.commonjs/constants/hashes.d.ts +0 -7
  190. package/lib.commonjs/constants/hashes.d.ts.map +0 -1
  191. package/lib.commonjs/constants/hashes.js +0 -10
  192. package/lib.commonjs/constants/hashes.js.map +0 -1
  193. package/lib.commonjs/constants/index.d.ts +0 -10
  194. package/lib.commonjs/constants/index.d.ts.map +0 -1
  195. package/lib.commonjs/constants/index.js +0 -22
  196. package/lib.commonjs/constants/index.js.map +0 -1
  197. package/lib.commonjs/constants/numbers.d.ts +0 -31
  198. package/lib.commonjs/constants/numbers.d.ts.map +0 -1
  199. package/lib.commonjs/constants/numbers.js +0 -34
  200. package/lib.commonjs/constants/numbers.js.map +0 -1
  201. package/lib.commonjs/constants/strings.d.ts +0 -13
  202. package/lib.commonjs/constants/strings.d.ts.map +0 -1
  203. package/lib.commonjs/constants/strings.js +0 -17
  204. package/lib.commonjs/constants/strings.js.map +0 -1
  205. package/lib.commonjs/contract/contract.d.ts +0 -168
  206. package/lib.commonjs/contract/contract.d.ts.map +0 -1
  207. package/lib.commonjs/contract/contract.js +0 -960
  208. package/lib.commonjs/contract/contract.js.map +0 -1
  209. package/lib.commonjs/contract/factory.d.ts +0 -62
  210. package/lib.commonjs/contract/factory.d.ts.map +0 -1
  211. package/lib.commonjs/contract/factory.js +0 -116
  212. package/lib.commonjs/contract/factory.js.map +0 -1
  213. package/lib.commonjs/contract/index.d.ts +0 -13
  214. package/lib.commonjs/contract/index.d.ts.map +0 -1
  215. package/lib.commonjs/contract/index.js +0 -24
  216. package/lib.commonjs/contract/index.js.map +0 -1
  217. package/lib.commonjs/contract/types.d.ts +0 -193
  218. package/lib.commonjs/contract/types.d.ts.map +0 -1
  219. package/lib.commonjs/contract/types.js +0 -6
  220. package/lib.commonjs/contract/types.js.map +0 -1
  221. package/lib.commonjs/contract/wrappers.d.ts +0 -143
  222. package/lib.commonjs/contract/wrappers.d.ts.map +0 -1
  223. package/lib.commonjs/contract/wrappers.js +0 -186
  224. package/lib.commonjs/contract/wrappers.js.map +0 -1
  225. package/lib.commonjs/crypto/crypto-browser.d.ts +0 -15
  226. package/lib.commonjs/crypto/crypto-browser.d.ts.map +0 -1
  227. package/lib.commonjs/crypto/crypto-browser.js +0 -55
  228. package/lib.commonjs/crypto/crypto-browser.js.map +0 -1
  229. package/lib.commonjs/crypto/crypto.d.ts +0 -2
  230. package/lib.commonjs/crypto/crypto.d.ts.map +0 -1
  231. package/lib.commonjs/crypto/crypto.js +0 -9
  232. package/lib.commonjs/crypto/crypto.js.map +0 -1
  233. package/lib.commonjs/crypto/hmac.d.ts +0 -25
  234. package/lib.commonjs/crypto/hmac.d.ts.map +0 -1
  235. package/lib.commonjs/crypto/hmac.js +0 -51
  236. package/lib.commonjs/crypto/hmac.js.map +0 -1
  237. package/lib.commonjs/crypto/index.d.ts +0 -25
  238. package/lib.commonjs/crypto/index.d.ts.map +0 -1
  239. package/lib.commonjs/crypto/index.js +0 -49
  240. package/lib.commonjs/crypto/index.js.map +0 -1
  241. package/lib.commonjs/crypto/keccak.d.ts +0 -35
  242. package/lib.commonjs/crypto/keccak.d.ts.map +0 -1
  243. package/lib.commonjs/crypto/keccak.js +0 -52
  244. package/lib.commonjs/crypto/keccak.js.map +0 -1
  245. package/lib.commonjs/crypto/pbkdf2.d.ts +0 -35
  246. package/lib.commonjs/crypto/pbkdf2.d.ts.map +0 -1
  247. package/lib.commonjs/crypto/pbkdf2.js +0 -53
  248. package/lib.commonjs/crypto/pbkdf2.js.map +0 -1
  249. package/lib.commonjs/crypto/random.d.ts +0 -14
  250. package/lib.commonjs/crypto/random.d.ts.map +0 -1
  251. package/lib.commonjs/crypto/random.js +0 -38
  252. package/lib.commonjs/crypto/random.js.map +0 -1
  253. package/lib.commonjs/crypto/ripemd160.d.ts +0 -25
  254. package/lib.commonjs/crypto/ripemd160.d.ts.map +0 -1
  255. package/lib.commonjs/crypto/ripemd160.js +0 -42
  256. package/lib.commonjs/crypto/ripemd160.js.map +0 -1
  257. package/lib.commonjs/crypto/scrypt.d.ts +0 -82
  258. package/lib.commonjs/crypto/scrypt.d.ts.map +0 -1
  259. package/lib.commonjs/crypto/scrypt.js +0 -104
  260. package/lib.commonjs/crypto/scrypt.js.map +0 -1
  261. package/lib.commonjs/crypto/sha2.d.ts +0 -47
  262. package/lib.commonjs/crypto/sha2.d.ts.map +0 -1
  263. package/lib.commonjs/crypto/sha2.js +0 -76
  264. package/lib.commonjs/crypto/sha2.js.map +0 -1
  265. package/lib.commonjs/crypto/signature.d.ts +0 -145
  266. package/lib.commonjs/crypto/signature.d.ts.map +0 -1
  267. package/lib.commonjs/crypto/signature.js +0 -302
  268. package/lib.commonjs/crypto/signature.js.map +0 -1
  269. package/lib.commonjs/crypto/signing-key.d.ts +0 -63
  270. package/lib.commonjs/crypto/signing-key.d.ts.map +0 -1
  271. package/lib.commonjs/crypto/signing-key.js +0 -102
  272. package/lib.commonjs/crypto/signing-key.js.map +0 -1
  273. package/lib.commonjs/hash/authorization.d.ts +0 -18
  274. package/lib.commonjs/hash/authorization.d.ts.map +0 -1
  275. package/lib.commonjs/hash/authorization.js +0 -30
  276. package/lib.commonjs/hash/authorization.js.map +0 -1
  277. package/lib.commonjs/hash/id.d.ts +0 -13
  278. package/lib.commonjs/hash/id.d.ts.map +0 -1
  279. package/lib.commonjs/hash/id.js +0 -21
  280. package/lib.commonjs/hash/id.js.map +0 -1
  281. package/lib.commonjs/hash/index.d.ts +0 -15
  282. package/lib.commonjs/hash/index.d.ts.map +0 -1
  283. package/lib.commonjs/hash/index.js +0 -30
  284. package/lib.commonjs/hash/index.js.map +0 -1
  285. package/lib.commonjs/hash/message.d.ts +0 -36
  286. package/lib.commonjs/hash/message.d.ts.map +0 -1
  287. package/lib.commonjs/hash/message.js +0 -56
  288. package/lib.commonjs/hash/message.js.map +0 -1
  289. package/lib.commonjs/hash/namehash.d.ts +0 -20
  290. package/lib.commonjs/hash/namehash.d.ts.map +0 -1
  291. package/lib.commonjs/hash/namehash.js +0 -91
  292. package/lib.commonjs/hash/namehash.js.map +0 -1
  293. package/lib.commonjs/hash/solidity.d.ts +0 -31
  294. package/lib.commonjs/hash/solidity.d.ts.map +0 -1
  295. package/lib.commonjs/hash/solidity.js +0 -109
  296. package/lib.commonjs/hash/solidity.js.map +0 -1
  297. package/lib.commonjs/hash/typed-data.d.ts +0 -150
  298. package/lib.commonjs/hash/typed-data.d.ts.map +0 -1
  299. package/lib.commonjs/hash/typed-data.js +0 -524
  300. package/lib.commonjs/hash/typed-data.js.map +0 -1
  301. package/lib.commonjs/index.d.ts +0 -11
  302. package/lib.commonjs/index.d.ts.map +0 -1
  303. package/lib.commonjs/index.js +0 -15
  304. package/lib.commonjs/index.js.map +0 -1
  305. package/lib.commonjs/package.json +0 -12
  306. package/lib.commonjs/providers/abstract-provider.d.ts +0 -451
  307. package/lib.commonjs/providers/abstract-provider.d.ts.map +0 -1
  308. package/lib.commonjs/providers/abstract-provider.js +0 -1409
  309. package/lib.commonjs/providers/abstract-provider.js.map +0 -1
  310. package/lib.commonjs/providers/abstract-signer.d.ts +0 -69
  311. package/lib.commonjs/providers/abstract-signer.d.ts.map +0 -1
  312. package/lib.commonjs/providers/abstract-signer.js +0 -249
  313. package/lib.commonjs/providers/abstract-signer.js.map +0 -1
  314. package/lib.commonjs/providers/community.d.ts +0 -29
  315. package/lib.commonjs/providers/community.d.ts.map +0 -1
  316. package/lib.commonjs/providers/community.js +0 -40
  317. package/lib.commonjs/providers/community.js.map +0 -1
  318. package/lib.commonjs/providers/contracts.d.ts +0 -36
  319. package/lib.commonjs/providers/contracts.d.ts.map +0 -1
  320. package/lib.commonjs/providers/contracts.js +0 -3
  321. package/lib.commonjs/providers/contracts.js.map +0 -1
  322. package/lib.commonjs/providers/default-provider.d.ts +0 -41
  323. package/lib.commonjs/providers/default-provider.d.ts.map +0 -1
  324. package/lib.commonjs/providers/default-provider.js +0 -92
  325. package/lib.commonjs/providers/default-provider.js.map +0 -1
  326. package/lib.commonjs/providers/ens-resolver.d.ts +0 -147
  327. package/lib.commonjs/providers/ens-resolver.d.ts.map +0 -1
  328. package/lib.commonjs/providers/ens-resolver.js +0 -502
  329. package/lib.commonjs/providers/ens-resolver.js.map +0 -1
  330. package/lib.commonjs/providers/format.d.ts +0 -15
  331. package/lib.commonjs/providers/format.d.ts.map +0 -1
  332. package/lib.commonjs/providers/format.js +0 -298
  333. package/lib.commonjs/providers/format.js.map +0 -1
  334. package/lib.commonjs/providers/formatting.d.ts +0 -318
  335. package/lib.commonjs/providers/formatting.d.ts.map +0 -1
  336. package/lib.commonjs/providers/formatting.js +0 -10
  337. package/lib.commonjs/providers/formatting.js.map +0 -1
  338. package/lib.commonjs/providers/index.d.ts +0 -41
  339. package/lib.commonjs/providers/index.d.ts.map +0 -1
  340. package/lib.commonjs/providers/index.js +0 -64
  341. package/lib.commonjs/providers/index.js.map +0 -1
  342. package/lib.commonjs/providers/network.d.ts +0 -99
  343. package/lib.commonjs/providers/network.d.ts.map +0 -1
  344. package/lib.commonjs/providers/network.js +0 -269
  345. package/lib.commonjs/providers/network.js.map +0 -1
  346. package/lib.commonjs/providers/pagination.d.ts +0 -6
  347. package/lib.commonjs/providers/pagination.d.ts.map +0 -1
  348. package/lib.commonjs/providers/pagination.js +0 -3
  349. package/lib.commonjs/providers/pagination.js.map +0 -1
  350. package/lib.commonjs/providers/plugin-fallback.d.ts +0 -13
  351. package/lib.commonjs/providers/plugin-fallback.d.ts.map +0 -1
  352. package/lib.commonjs/providers/plugin-fallback.js +0 -31
  353. package/lib.commonjs/providers/plugin-fallback.js.map +0 -1
  354. package/lib.commonjs/providers/plugins-network.d.ts +0 -170
  355. package/lib.commonjs/providers/plugins-network.d.ts.map +0 -1
  356. package/lib.commonjs/providers/plugins-network.js +0 -216
  357. package/lib.commonjs/providers/plugins-network.js.map +0 -1
  358. package/lib.commonjs/providers/provider-browser.d.ts +0 -108
  359. package/lib.commonjs/providers/provider-browser.d.ts.map +0 -1
  360. package/lib.commonjs/providers/provider-browser.js +0 -204
  361. package/lib.commonjs/providers/provider-browser.js.map +0 -1
  362. package/lib.commonjs/providers/provider-fallback.d.ts +0 -115
  363. package/lib.commonjs/providers/provider-fallback.d.ts.map +0 -1
  364. package/lib.commonjs/providers/provider-fallback.js +0 -624
  365. package/lib.commonjs/providers/provider-fallback.js.map +0 -1
  366. package/lib.commonjs/providers/provider-ipcsocket-browser.d.ts +0 -3
  367. package/lib.commonjs/providers/provider-ipcsocket-browser.d.ts.map +0 -1
  368. package/lib.commonjs/providers/provider-ipcsocket-browser.js +0 -6
  369. package/lib.commonjs/providers/provider-ipcsocket-browser.js.map +0 -1
  370. package/lib.commonjs/providers/provider-ipcsocket.d.ts +0 -21
  371. package/lib.commonjs/providers/provider-ipcsocket.d.ts.map +0 -1
  372. package/lib.commonjs/providers/provider-ipcsocket.js +0 -72
  373. package/lib.commonjs/providers/provider-ipcsocket.js.map +0 -1
  374. package/lib.commonjs/providers/provider-jsonrpc.d.ts +0 -361
  375. package/lib.commonjs/providers/provider-jsonrpc.d.ts.map +0 -1
  376. package/lib.commonjs/providers/provider-jsonrpc.js +0 -980
  377. package/lib.commonjs/providers/provider-jsonrpc.js.map +0 -1
  378. package/lib.commonjs/providers/provider-socket.d.ts +0 -113
  379. package/lib.commonjs/providers/provider-socket.d.ts.map +0 -1
  380. package/lib.commonjs/providers/provider-socket.js +0 -309
  381. package/lib.commonjs/providers/provider-socket.js.map +0 -1
  382. package/lib.commonjs/providers/provider-websocket.d.ts +0 -37
  383. package/lib.commonjs/providers/provider-websocket.d.ts.map +0 -1
  384. package/lib.commonjs/providers/provider-websocket.js +0 -80
  385. package/lib.commonjs/providers/provider-websocket.js.map +0 -1
  386. package/lib.commonjs/providers/provider.d.ts +0 -1223
  387. package/lib.commonjs/providers/provider.d.ts.map +0 -1
  388. package/lib.commonjs/providers/provider.js +0 -1321
  389. package/lib.commonjs/providers/provider.js.map +0 -1
  390. package/lib.commonjs/providers/signer-noncemanager.d.ts +0 -38
  391. package/lib.commonjs/providers/signer-noncemanager.d.ts.map +0 -1
  392. package/lib.commonjs/providers/signer-noncemanager.js +0 -78
  393. package/lib.commonjs/providers/signer-noncemanager.js.map +0 -1
  394. package/lib.commonjs/providers/signer.d.ts +0 -131
  395. package/lib.commonjs/providers/signer.d.ts.map +0 -1
  396. package/lib.commonjs/providers/signer.js +0 -3
  397. package/lib.commonjs/providers/signer.js.map +0 -1
  398. package/lib.commonjs/providers/subscriber-connection.d.ts +0 -25
  399. package/lib.commonjs/providers/subscriber-connection.d.ts.map +0 -1
  400. package/lib.commonjs/providers/subscriber-connection.js +0 -56
  401. package/lib.commonjs/providers/subscriber-connection.js.map +0 -1
  402. package/lib.commonjs/providers/subscriber-filterid.d.ts +0 -64
  403. package/lib.commonjs/providers/subscriber-filterid.d.ts.map +0 -1
  404. package/lib.commonjs/providers/subscriber-filterid.js +0 -180
  405. package/lib.commonjs/providers/subscriber-filterid.js.map +0 -1
  406. package/lib.commonjs/providers/subscriber-polling.d.ts +0 -100
  407. package/lib.commonjs/providers/subscriber-polling.d.ts.map +0 -1
  408. package/lib.commonjs/providers/subscriber-polling.js +0 -303
  409. package/lib.commonjs/providers/subscriber-polling.js.map +0 -1
  410. package/lib.commonjs/providers/ws-browser.d.ts +0 -3
  411. package/lib.commonjs/providers/ws-browser.d.ts.map +0 -1
  412. package/lib.commonjs/providers/ws-browser.js +0 -19
  413. package/lib.commonjs/providers/ws-browser.js.map +0 -1
  414. package/lib.commonjs/providers/ws.d.ts +0 -2
  415. package/lib.commonjs/providers/ws.d.ts.map +0 -1
  416. package/lib.commonjs/providers/ws.js +0 -6
  417. package/lib.commonjs/providers/ws.js.map +0 -1
  418. package/lib.commonjs/quantumcoin.d.ts +0 -24
  419. package/lib.commonjs/quantumcoin.d.ts.map +0 -1
  420. package/lib.commonjs/quantumcoin.js +0 -199
  421. package/lib.commonjs/quantumcoin.js.map +0 -1
  422. package/lib.commonjs/transaction/accesslist.d.ts +0 -6
  423. package/lib.commonjs/transaction/accesslist.d.ts.map +0 -1
  424. package/lib.commonjs/transaction/accesslist.js +0 -41
  425. package/lib.commonjs/transaction/accesslist.js.map +0 -1
  426. package/lib.commonjs/transaction/address.d.ts +0 -15
  427. package/lib.commonjs/transaction/address.d.ts.map +0 -1
  428. package/lib.commonjs/transaction/address.js +0 -39
  429. package/lib.commonjs/transaction/address.js.map +0 -1
  430. package/lib.commonjs/transaction/authorization.d.ts +0 -3
  431. package/lib.commonjs/transaction/authorization.d.ts.map +0 -1
  432. package/lib.commonjs/transaction/authorization.js +0 -16
  433. package/lib.commonjs/transaction/authorization.js.map +0 -1
  434. package/lib.commonjs/transaction/index.d.ts +0 -40
  435. package/lib.commonjs/transaction/index.d.ts.map +0 -1
  436. package/lib.commonjs/transaction/index.js +0 -19
  437. package/lib.commonjs/transaction/index.js.map +0 -1
  438. package/lib.commonjs/transaction/transaction.d.ts +0 -400
  439. package/lib.commonjs/transaction/transaction.d.ts.map +0 -1
  440. package/lib.commonjs/transaction/transaction.js +0 -1148
  441. package/lib.commonjs/transaction/transaction.js.map +0 -1
  442. package/lib.commonjs/utils/base58.d.ts +0 -23
  443. package/lib.commonjs/utils/base58.d.ts.map +0 -1
  444. package/lib.commonjs/utils/base58.js +0 -68
  445. package/lib.commonjs/utils/base58.js.map +0 -1
  446. package/lib.commonjs/utils/base64-browser.d.ts +0 -4
  447. package/lib.commonjs/utils/base64-browser.d.ts.map +0 -1
  448. package/lib.commonjs/utils/base64-browser.js +0 -24
  449. package/lib.commonjs/utils/base64-browser.js.map +0 -1
  450. package/lib.commonjs/utils/base64.d.ts +0 -40
  451. package/lib.commonjs/utils/base64.d.ts.map +0 -1
  452. package/lib.commonjs/utils/base64.js +0 -58
  453. package/lib.commonjs/utils/base64.js.map +0 -1
  454. package/lib.commonjs/utils/data.d.ts +0 -93
  455. package/lib.commonjs/utils/data.d.ts.map +0 -1
  456. package/lib.commonjs/utils/data.js +0 -184
  457. package/lib.commonjs/utils/data.js.map +0 -1
  458. package/lib.commonjs/utils/errors.d.ts +0 -512
  459. package/lib.commonjs/utils/errors.d.ts.map +0 -1
  460. package/lib.commonjs/utils/errors.js +0 -235
  461. package/lib.commonjs/utils/errors.js.map +0 -1
  462. package/lib.commonjs/utils/events.d.ts +0 -77
  463. package/lib.commonjs/utils/events.d.ts.map +0 -1
  464. package/lib.commonjs/utils/events.js +0 -46
  465. package/lib.commonjs/utils/events.js.map +0 -1
  466. package/lib.commonjs/utils/fetch.d.ts +0 -363
  467. package/lib.commonjs/utils/fetch.d.ts.map +0 -1
  468. package/lib.commonjs/utils/fetch.js +0 -858
  469. package/lib.commonjs/utils/fetch.js.map +0 -1
  470. package/lib.commonjs/utils/fixednumber.d.ts +0 -252
  471. package/lib.commonjs/utils/fixednumber.d.ts.map +0 -1
  472. package/lib.commonjs/utils/fixednumber.js +0 -530
  473. package/lib.commonjs/utils/fixednumber.js.map +0 -1
  474. package/lib.commonjs/utils/geturl-browser.d.ts +0 -4
  475. package/lib.commonjs/utils/geturl-browser.d.ts.map +0 -1
  476. package/lib.commonjs/utils/geturl-browser.js +0 -67
  477. package/lib.commonjs/utils/geturl-browser.js.map +0 -1
  478. package/lib.commonjs/utils/geturl.d.ts +0 -10
  479. package/lib.commonjs/utils/geturl.d.ts.map +0 -1
  480. package/lib.commonjs/utils/geturl.js +0 -120
  481. package/lib.commonjs/utils/geturl.js.map +0 -1
  482. package/lib.commonjs/utils/index.d.ts +0 -30
  483. package/lib.commonjs/utils/index.d.ts.map +0 -1
  484. package/lib.commonjs/utils/index.js +0 -78
  485. package/lib.commonjs/utils/index.js.map +0 -1
  486. package/lib.commonjs/utils/maths.d.ts +0 -66
  487. package/lib.commonjs/utils/maths.d.ts.map +0 -1
  488. package/lib.commonjs/utils/maths.js +0 -229
  489. package/lib.commonjs/utils/maths.js.map +0 -1
  490. package/lib.commonjs/utils/properties.d.ts +0 -23
  491. package/lib.commonjs/utils/properties.d.ts.map +0 -1
  492. package/lib.commonjs/utils/properties.js +0 -59
  493. package/lib.commonjs/utils/properties.js.map +0 -1
  494. package/lib.commonjs/utils/rlp-decode.d.ts +0 -6
  495. package/lib.commonjs/utils/rlp-decode.d.ts.map +0 -1
  496. package/lib.commonjs/utils/rlp-decode.js +0 -83
  497. package/lib.commonjs/utils/rlp-decode.js.map +0 -1
  498. package/lib.commonjs/utils/rlp-encode.d.ts +0 -6
  499. package/lib.commonjs/utils/rlp-encode.d.ts.map +0 -1
  500. package/lib.commonjs/utils/rlp-encode.js +0 -53
  501. package/lib.commonjs/utils/rlp-encode.js.map +0 -1
  502. package/lib.commonjs/utils/rlp.d.ts +0 -17
  503. package/lib.commonjs/utils/rlp.d.ts.map +0 -1
  504. package/lib.commonjs/utils/rlp.js +0 -14
  505. package/lib.commonjs/utils/rlp.js.map +0 -1
  506. package/lib.commonjs/utils/units.d.ts +0 -24
  507. package/lib.commonjs/utils/units.d.ts.map +0 -1
  508. package/lib.commonjs/utils/units.js +0 -90
  509. package/lib.commonjs/utils/units.js.map +0 -1
  510. package/lib.commonjs/utils/utf8.d.ts +0 -96
  511. package/lib.commonjs/utils/utf8.d.ts.map +0 -1
  512. package/lib.commonjs/utils/utf8.js +0 -227
  513. package/lib.commonjs/utils/utf8.js.map +0 -1
  514. package/lib.commonjs/utils/uuid.d.ts +0 -8
  515. package/lib.commonjs/utils/uuid.d.ts.map +0 -1
  516. package/lib.commonjs/utils/uuid.js +0 -34
  517. package/lib.commonjs/utils/uuid.js.map +0 -1
  518. package/lib.commonjs/wallet/base-wallet.d.ts +0 -57
  519. package/lib.commonjs/wallet/base-wallet.d.ts.map +0 -1
  520. package/lib.commonjs/wallet/base-wallet.js +0 -127
  521. package/lib.commonjs/wallet/base-wallet.js.map +0 -1
  522. package/lib.commonjs/wallet/index.d.ts +0 -23
  523. package/lib.commonjs/wallet/index.d.ts.map +0 -1
  524. package/lib.commonjs/wallet/index.js +0 -30
  525. package/lib.commonjs/wallet/index.js.map +0 -1
  526. package/lib.commonjs/wallet/json-keystore.d.ts +0 -40
  527. package/lib.commonjs/wallet/json-keystore.d.ts.map +0 -1
  528. package/lib.commonjs/wallet/json-keystore.js +0 -90
  529. package/lib.commonjs/wallet/json-keystore.js.map +0 -1
  530. package/lib.commonjs/wallet/utils.d.ts +0 -8
  531. package/lib.commonjs/wallet/utils.d.ts.map +0 -1
  532. package/lib.commonjs/wallet/utils.js +0 -149
  533. package/lib.commonjs/wallet/utils.js.map +0 -1
  534. package/lib.commonjs/wallet/wallet.d.ts +0 -62
  535. package/lib.commonjs/wallet/wallet.d.ts.map +0 -1
  536. package/lib.commonjs/wallet/wallet.js +0 -109
  537. package/lib.commonjs/wallet/wallet.js.map +0 -1
  538. package/lib.commonjs/wordlists/bit-reader.d.ts +0 -5
  539. package/lib.commonjs/wordlists/bit-reader.d.ts.map +0 -1
  540. package/lib.commonjs/wordlists/bit-reader.js +0 -36
  541. package/lib.commonjs/wordlists/bit-reader.js.map +0 -1
  542. package/lib.commonjs/wordlists/decode-owl.d.ts +0 -9
  543. package/lib.commonjs/wordlists/decode-owl.d.ts.map +0 -1
  544. package/lib.commonjs/wordlists/decode-owl.js +0 -60
  545. package/lib.commonjs/wordlists/decode-owl.js.map +0 -1
  546. package/lib.commonjs/wordlists/decode-owla.d.ts +0 -5
  547. package/lib.commonjs/wordlists/decode-owla.d.ts.map +0 -1
  548. package/lib.commonjs/wordlists/decode-owla.js +0 -32
  549. package/lib.commonjs/wordlists/decode-owla.js.map +0 -1
  550. package/lib.commonjs/wordlists/generation/encode-latin.d.ts +0 -25
  551. package/lib.commonjs/wordlists/generation/encode-latin.d.ts.map +0 -1
  552. package/lib.commonjs/wordlists/generation/encode-latin.js +0 -351
  553. package/lib.commonjs/wordlists/generation/encode-latin.js.map +0 -1
  554. package/lib.commonjs/wordlists/index.d.ts +0 -25
  555. package/lib.commonjs/wordlists/index.d.ts.map +0 -1
  556. package/lib.commonjs/wordlists/index.js +0 -33
  557. package/lib.commonjs/wordlists/index.js.map +0 -1
  558. package/lib.commonjs/wordlists/lang-cz.d.ts +0 -23
  559. package/lib.commonjs/wordlists/lang-cz.d.ts.map +0 -1
  560. package/lib.commonjs/wordlists/lang-cz.js +0 -35
  561. package/lib.commonjs/wordlists/lang-cz.js.map +0 -1
  562. package/lib.commonjs/wordlists/lang-en.d.ts +0 -23
  563. package/lib.commonjs/wordlists/lang-en.d.ts.map +0 -1
  564. package/lib.commonjs/wordlists/lang-en.js +0 -35
  565. package/lib.commonjs/wordlists/lang-en.js.map +0 -1
  566. package/lib.commonjs/wordlists/lang-es.d.ts +0 -23
  567. package/lib.commonjs/wordlists/lang-es.d.ts.map +0 -1
  568. package/lib.commonjs/wordlists/lang-es.js +0 -36
  569. package/lib.commonjs/wordlists/lang-es.js.map +0 -1
  570. package/lib.commonjs/wordlists/lang-fr.d.ts +0 -23
  571. package/lib.commonjs/wordlists/lang-fr.d.ts.map +0 -1
  572. package/lib.commonjs/wordlists/lang-fr.js +0 -36
  573. package/lib.commonjs/wordlists/lang-fr.js.map +0 -1
  574. package/lib.commonjs/wordlists/lang-it.d.ts +0 -23
  575. package/lib.commonjs/wordlists/lang-it.d.ts.map +0 -1
  576. package/lib.commonjs/wordlists/lang-it.js +0 -35
  577. package/lib.commonjs/wordlists/lang-it.js.map +0 -1
  578. package/lib.commonjs/wordlists/lang-ja.d.ts +0 -27
  579. package/lib.commonjs/wordlists/lang-ja.d.ts.map +0 -1
  580. package/lib.commonjs/wordlists/lang-ja.js +0 -158
  581. package/lib.commonjs/wordlists/lang-ja.js.map +0 -1
  582. package/lib.commonjs/wordlists/lang-ko.d.ts +0 -25
  583. package/lib.commonjs/wordlists/lang-ko.d.ts.map +0 -1
  584. package/lib.commonjs/wordlists/lang-ko.js +0 -93
  585. package/lib.commonjs/wordlists/lang-ko.js.map +0 -1
  586. package/lib.commonjs/wordlists/lang-pt.d.ts +0 -23
  587. package/lib.commonjs/wordlists/lang-pt.d.ts.map +0 -1
  588. package/lib.commonjs/wordlists/lang-pt.js +0 -35
  589. package/lib.commonjs/wordlists/lang-pt.js.map +0 -1
  590. package/lib.commonjs/wordlists/lang-zh.d.ts +0 -32
  591. package/lib.commonjs/wordlists/lang-zh.d.ts.map +0 -1
  592. package/lib.commonjs/wordlists/lang-zh.js +0 -96
  593. package/lib.commonjs/wordlists/lang-zh.js.map +0 -1
  594. package/lib.commonjs/wordlists/wordlist-owl.d.ts +0 -32
  595. package/lib.commonjs/wordlists/wordlist-owl.d.ts.map +0 -1
  596. package/lib.commonjs/wordlists/wordlist-owl.js +0 -70
  597. package/lib.commonjs/wordlists/wordlist-owl.js.map +0 -1
  598. package/lib.commonjs/wordlists/wordlist-owla.d.ts +0 -30
  599. package/lib.commonjs/wordlists/wordlist-owla.d.ts.map +0 -1
  600. package/lib.commonjs/wordlists/wordlist-owla.js +0 -40
  601. package/lib.commonjs/wordlists/wordlist-owla.js.map +0 -1
  602. package/lib.commonjs/wordlists/wordlist.d.ts +0 -47
  603. package/lib.commonjs/wordlists/wordlist.d.ts.map +0 -1
  604. package/lib.commonjs/wordlists/wordlist.js +0 -46
  605. package/lib.commonjs/wordlists/wordlist.js.map +0 -1
  606. package/lib.commonjs/wordlists/wordlists-browser.d.ts +0 -3
  607. package/lib.commonjs/wordlists/wordlists-browser.d.ts.map +0 -1
  608. package/lib.commonjs/wordlists/wordlists-browser.js +0 -8
  609. package/lib.commonjs/wordlists/wordlists-browser.js.map +0 -1
  610. package/lib.commonjs/wordlists/wordlists-extra.d.ts +0 -9
  611. package/lib.commonjs/wordlists/wordlists-extra.d.ts.map +0 -1
  612. package/lib.commonjs/wordlists/wordlists-extra.js +0 -20
  613. package/lib.commonjs/wordlists/wordlists-extra.js.map +0 -1
  614. package/lib.commonjs/wordlists/wordlists.d.ts +0 -16
  615. package/lib.commonjs/wordlists/wordlists.d.ts.map +0 -1
  616. package/lib.commonjs/wordlists/wordlists.js +0 -38
  617. package/lib.commonjs/wordlists/wordlists.js.map +0 -1
  618. package/lib.esm/README.md +0 -16
  619. package/lib.esm/_version.d.ts +0 -5
  620. package/lib.esm/_version.d.ts.map +0 -1
  621. package/lib.esm/_version.js +0 -6
  622. package/lib.esm/_version.js.map +0 -1
  623. package/lib.esm/abi/abi-coder.d.ts +0 -61
  624. package/lib.esm/abi/abi-coder.d.ts.map +0 -1
  625. package/lib.esm/abi/abi-coder.js +0 -206
  626. package/lib.esm/abi/abi-coder.js.map +0 -1
  627. package/lib.esm/abi/bytes32.d.ts +0 -15
  628. package/lib.esm/abi/bytes32.d.ts.map +0 -1
  629. package/lib.esm/abi/bytes32.js +0 -40
  630. package/lib.esm/abi/bytes32.js.map +0 -1
  631. package/lib.esm/abi/coders/abstract-coder.d.ts +0 -124
  632. package/lib.esm/abi/coders/abstract-coder.d.ts.map +0 -1
  633. package/lib.esm/abi/coders/abstract-coder.js +0 -466
  634. package/lib.esm/abi/coders/abstract-coder.js.map +0 -1
  635. package/lib.esm/abi/coders/address.d.ts +0 -13
  636. package/lib.esm/abi/coders/address.d.ts.map +0 -1
  637. package/lib.esm/abi/coders/address.js +0 -29
  638. package/lib.esm/abi/coders/address.js.map +0 -1
  639. package/lib.esm/abi/coders/anonymous.d.ts +0 -15
  640. package/lib.esm/abi/coders/anonymous.d.ts.map +0 -1
  641. package/lib.esm/abi/coders/anonymous.js +0 -23
  642. package/lib.esm/abi/coders/anonymous.js.map +0 -1
  643. package/lib.esm/abi/coders/array.d.ts +0 -25
  644. package/lib.esm/abi/coders/array.d.ts.map +0 -1
  645. package/lib.esm/abi/coders/array.js +0 -159
  646. package/lib.esm/abi/coders/array.js.map +0 -1
  647. package/lib.esm/abi/coders/boolean.d.ts +0 -13
  648. package/lib.esm/abi/coders/boolean.d.ts.map +0 -1
  649. package/lib.esm/abi/coders/boolean.js +0 -21
  650. package/lib.esm/abi/coders/boolean.js.map +0 -1
  651. package/lib.esm/abi/coders/bytes.d.ts +0 -19
  652. package/lib.esm/abi/coders/bytes.d.ts.map +0 -1
  653. package/lib.esm/abi/coders/bytes.js +0 -34
  654. package/lib.esm/abi/coders/bytes.js.map +0 -1
  655. package/lib.esm/abi/coders/fixed-bytes.d.ts +0 -15
  656. package/lib.esm/abi/coders/fixed-bytes.d.ts.map +0 -1
  657. package/lib.esm/abi/coders/fixed-bytes.js +0 -28
  658. package/lib.esm/abi/coders/fixed-bytes.js.map +0 -1
  659. package/lib.esm/abi/coders/null.d.ts +0 -12
  660. package/lib.esm/abi/coders/null.d.ts.map +0 -1
  661. package/lib.esm/abi/coders/null.js +0 -24
  662. package/lib.esm/abi/coders/null.js.map +0 -1
  663. package/lib.esm/abi/coders/number.d.ts +0 -16
  664. package/lib.esm/abi/coders/number.d.ts.map +0 -1
  665. package/lib.esm/abi/coders/number.js +0 -45
  666. package/lib.esm/abi/coders/number.js.map +0 -1
  667. package/lib.esm/abi/coders/string.d.ts +0 -13
  668. package/lib.esm/abi/coders/string.d.ts.map +0 -1
  669. package/lib.esm/abi/coders/string.js +0 -21
  670. package/lib.esm/abi/coders/string.js.map +0 -1
  671. package/lib.esm/abi/coders/tuple.d.ts +0 -16
  672. package/lib.esm/abi/coders/tuple.d.ts.map +0 -1
  673. package/lib.esm/abi/coders/tuple.js +0 -63
  674. package/lib.esm/abi/coders/tuple.js.map +0 -1
  675. package/lib.esm/abi/fragments.d.ts +0 -466
  676. package/lib.esm/abi/fragments.d.ts.map +0 -1
  677. package/lib.esm/abi/fragments.js +0 -1319
  678. package/lib.esm/abi/fragments.js.map +0 -1
  679. package/lib.esm/abi/index.d.ts +0 -18
  680. package/lib.esm/abi/index.d.ts.map +0 -1
  681. package/lib.esm/abi/index.js +0 -17
  682. package/lib.esm/abi/index.js.map +0 -1
  683. package/lib.esm/abi/interface.d.ts +0 -382
  684. package/lib.esm/abi/interface.d.ts.map +0 -1
  685. package/lib.esm/abi/interface.js +0 -1101
  686. package/lib.esm/abi/interface.js.map +0 -1
  687. package/lib.esm/abi/typed.d.ts +0 -570
  688. package/lib.esm/abi/typed.d.ts.map +0 -1
  689. package/lib.esm/abi/typed.js +0 -602
  690. package/lib.esm/abi/typed.js.map +0 -1
  691. package/lib.esm/address/address.d.ts +0 -36
  692. package/lib.esm/address/address.d.ts.map +0 -1
  693. package/lib.esm/address/address.js +0 -129
  694. package/lib.esm/address/address.js.map +0 -1
  695. package/lib.esm/address/checks.d.ts +0 -81
  696. package/lib.esm/address/checks.d.ts.map +0 -1
  697. package/lib.esm/address/checks.js +0 -114
  698. package/lib.esm/address/checks.js.map +0 -1
  699. package/lib.esm/address/contract-address.d.ts +0 -48
  700. package/lib.esm/address/contract-address.d.ts.map +0 -1
  701. package/lib.esm/address/contract-address.js +0 -69
  702. package/lib.esm/address/contract-address.js.map +0 -1
  703. package/lib.esm/address/index.d.ts +0 -49
  704. package/lib.esm/address/index.d.ts.map +0 -1
  705. package/lib.esm/address/index.js +0 -19
  706. package/lib.esm/address/index.js.map +0 -1
  707. package/lib.esm/constants/addresses.d.ts +0 -7
  708. package/lib.esm/constants/addresses.d.ts.map +0 -1
  709. package/lib.esm/constants/addresses.js +0 -7
  710. package/lib.esm/constants/addresses.js.map +0 -1
  711. package/lib.esm/constants/hashes.d.ts +0 -7
  712. package/lib.esm/constants/hashes.d.ts.map +0 -1
  713. package/lib.esm/constants/hashes.js +0 -7
  714. package/lib.esm/constants/hashes.js.map +0 -1
  715. package/lib.esm/constants/index.d.ts +0 -10
  716. package/lib.esm/constants/index.d.ts.map +0 -1
  717. package/lib.esm/constants/index.js +0 -10
  718. package/lib.esm/constants/index.js.map +0 -1
  719. package/lib.esm/constants/numbers.d.ts +0 -31
  720. package/lib.esm/constants/numbers.d.ts.map +0 -1
  721. package/lib.esm/constants/numbers.js +0 -31
  722. package/lib.esm/constants/numbers.js.map +0 -1
  723. package/lib.esm/constants/strings.d.ts +0 -13
  724. package/lib.esm/constants/strings.d.ts.map +0 -1
  725. package/lib.esm/constants/strings.js +0 -14
  726. package/lib.esm/constants/strings.js.map +0 -1
  727. package/lib.esm/contract/contract.d.ts +0 -168
  728. package/lib.esm/contract/contract.d.ts.map +0 -1
  729. package/lib.esm/contract/contract.js +0 -953
  730. package/lib.esm/contract/contract.js.map +0 -1
  731. package/lib.esm/contract/factory.d.ts +0 -62
  732. package/lib.esm/contract/factory.d.ts.map +0 -1
  733. package/lib.esm/contract/factory.js +0 -112
  734. package/lib.esm/contract/factory.js.map +0 -1
  735. package/lib.esm/contract/index.d.ts +0 -13
  736. package/lib.esm/contract/index.d.ts.map +0 -1
  737. package/lib.esm/contract/index.js +0 -12
  738. package/lib.esm/contract/index.js.map +0 -1
  739. package/lib.esm/contract/types.d.ts +0 -193
  740. package/lib.esm/contract/types.d.ts.map +0 -1
  741. package/lib.esm/contract/types.js +0 -5
  742. package/lib.esm/contract/types.js.map +0 -1
  743. package/lib.esm/contract/wrappers.d.ts +0 -143
  744. package/lib.esm/contract/wrappers.d.ts.map +0 -1
  745. package/lib.esm/contract/wrappers.js +0 -177
  746. package/lib.esm/contract/wrappers.js.map +0 -1
  747. package/lib.esm/crypto/crypto-browser.d.ts +0 -15
  748. package/lib.esm/crypto/crypto-browser.d.ts.map +0 -1
  749. package/lib.esm/crypto/crypto-browser.js +0 -48
  750. package/lib.esm/crypto/crypto-browser.js.map +0 -1
  751. package/lib.esm/crypto/crypto.d.ts +0 -2
  752. package/lib.esm/crypto/crypto.d.ts.map +0 -1
  753. package/lib.esm/crypto/crypto.js +0 -2
  754. package/lib.esm/crypto/crypto.js.map +0 -1
  755. package/lib.esm/crypto/hmac.d.ts +0 -25
  756. package/lib.esm/crypto/hmac.d.ts.map +0 -1
  757. package/lib.esm/crypto/hmac.js +0 -47
  758. package/lib.esm/crypto/hmac.js.map +0 -1
  759. package/lib.esm/crypto/index.d.ts +0 -25
  760. package/lib.esm/crypto/index.d.ts.map +0 -1
  761. package/lib.esm/crypto/index.js +0 -36
  762. package/lib.esm/crypto/index.js.map +0 -1
  763. package/lib.esm/crypto/keccak.d.ts +0 -35
  764. package/lib.esm/crypto/keccak.d.ts.map +0 -1
  765. package/lib.esm/crypto/keccak.js +0 -48
  766. package/lib.esm/crypto/keccak.js.map +0 -1
  767. package/lib.esm/crypto/pbkdf2.d.ts +0 -35
  768. package/lib.esm/crypto/pbkdf2.d.ts.map +0 -1
  769. package/lib.esm/crypto/pbkdf2.js +0 -49
  770. package/lib.esm/crypto/pbkdf2.js.map +0 -1
  771. package/lib.esm/crypto/random.d.ts +0 -14
  772. package/lib.esm/crypto/random.d.ts.map +0 -1
  773. package/lib.esm/crypto/random.js +0 -34
  774. package/lib.esm/crypto/random.js.map +0 -1
  775. package/lib.esm/crypto/ripemd160.d.ts +0 -25
  776. package/lib.esm/crypto/ripemd160.d.ts.map +0 -1
  777. package/lib.esm/crypto/ripemd160.js +0 -38
  778. package/lib.esm/crypto/ripemd160.js.map +0 -1
  779. package/lib.esm/crypto/scrypt.d.ts +0 -82
  780. package/lib.esm/crypto/scrypt.d.ts.map +0 -1
  781. package/lib.esm/crypto/scrypt.js +0 -99
  782. package/lib.esm/crypto/scrypt.js.map +0 -1
  783. package/lib.esm/crypto/sha2.d.ts +0 -47
  784. package/lib.esm/crypto/sha2.d.ts.map +0 -1
  785. package/lib.esm/crypto/sha2.js +0 -71
  786. package/lib.esm/crypto/sha2.js.map +0 -1
  787. package/lib.esm/crypto/signature.d.ts +0 -145
  788. package/lib.esm/crypto/signature.d.ts.map +0 -1
  789. package/lib.esm/crypto/signature.js +0 -300
  790. package/lib.esm/crypto/signature.js.map +0 -1
  791. package/lib.esm/crypto/signing-key.d.ts +0 -63
  792. package/lib.esm/crypto/signing-key.d.ts.map +0 -1
  793. package/lib.esm/crypto/signing-key.js +0 -97
  794. package/lib.esm/crypto/signing-key.js.map +0 -1
  795. package/lib.esm/hash/authorization.d.ts +0 -18
  796. package/lib.esm/hash/authorization.d.ts.map +0 -1
  797. package/lib.esm/hash/authorization.js +0 -25
  798. package/lib.esm/hash/authorization.js.map +0 -1
  799. package/lib.esm/hash/id.d.ts +0 -13
  800. package/lib.esm/hash/id.d.ts.map +0 -1
  801. package/lib.esm/hash/id.js +0 -17
  802. package/lib.esm/hash/id.js.map +0 -1
  803. package/lib.esm/hash/index.d.ts +0 -15
  804. package/lib.esm/hash/index.d.ts.map +0 -1
  805. package/lib.esm/hash/index.js +0 -13
  806. package/lib.esm/hash/index.js.map +0 -1
  807. package/lib.esm/hash/message.d.ts +0 -36
  808. package/lib.esm/hash/message.d.ts.map +0 -1
  809. package/lib.esm/hash/message.js +0 -51
  810. package/lib.esm/hash/message.js.map +0 -1
  811. package/lib.esm/hash/namehash.d.ts +0 -20
  812. package/lib.esm/hash/namehash.d.ts.map +0 -1
  813. package/lib.esm/hash/namehash.js +0 -84
  814. package/lib.esm/hash/namehash.js.map +0 -1
  815. package/lib.esm/hash/solidity.d.ts +0 -31
  816. package/lib.esm/hash/solidity.d.ts.map +0 -1
  817. package/lib.esm/hash/solidity.js +0 -103
  818. package/lib.esm/hash/solidity.js.map +0 -1
  819. package/lib.esm/hash/typed-data.d.ts +0 -150
  820. package/lib.esm/hash/typed-data.d.ts.map +0 -1
  821. package/lib.esm/hash/typed-data.js +0 -519
  822. package/lib.esm/hash/typed-data.js.map +0 -1
  823. package/lib.esm/index.d.ts +0 -11
  824. package/lib.esm/index.d.ts.map +0 -1
  825. package/lib.esm/index.js +0 -11
  826. package/lib.esm/index.js.map +0 -1
  827. package/lib.esm/package.json +0 -12
  828. package/lib.esm/providers/abstract-provider.d.ts +0 -451
  829. package/lib.esm/providers/abstract-provider.d.ts.map +0 -1
  830. package/lib.esm/providers/abstract-provider.js +0 -1404
  831. package/lib.esm/providers/abstract-provider.js.map +0 -1
  832. package/lib.esm/providers/abstract-signer.d.ts +0 -69
  833. package/lib.esm/providers/abstract-signer.d.ts.map +0 -1
  834. package/lib.esm/providers/abstract-signer.js +0 -244
  835. package/lib.esm/providers/abstract-signer.js.map +0 -1
  836. package/lib.esm/providers/community.d.ts +0 -29
  837. package/lib.esm/providers/community.d.ts.map +0 -1
  838. package/lib.esm/providers/community.js +0 -36
  839. package/lib.esm/providers/community.js.map +0 -1
  840. package/lib.esm/providers/contracts.d.ts +0 -36
  841. package/lib.esm/providers/contracts.d.ts.map +0 -1
  842. package/lib.esm/providers/contracts.js +0 -2
  843. package/lib.esm/providers/contracts.js.map +0 -1
  844. package/lib.esm/providers/default-provider.d.ts +0 -41
  845. package/lib.esm/providers/default-provider.d.ts.map +0 -1
  846. package/lib.esm/providers/default-provider.js +0 -88
  847. package/lib.esm/providers/default-provider.js.map +0 -1
  848. package/lib.esm/providers/ens-resolver.d.ts +0 -147
  849. package/lib.esm/providers/ens-resolver.d.ts.map +0 -1
  850. package/lib.esm/providers/ens-resolver.js +0 -496
  851. package/lib.esm/providers/ens-resolver.js.map +0 -1
  852. package/lib.esm/providers/format.d.ts +0 -15
  853. package/lib.esm/providers/format.d.ts.map +0 -1
  854. package/lib.esm/providers/format.js +0 -283
  855. package/lib.esm/providers/format.js.map +0 -1
  856. package/lib.esm/providers/formatting.d.ts +0 -318
  857. package/lib.esm/providers/formatting.d.ts.map +0 -1
  858. package/lib.esm/providers/formatting.js +0 -9
  859. package/lib.esm/providers/formatting.js.map +0 -1
  860. package/lib.esm/providers/index.d.ts +0 -41
  861. package/lib.esm/providers/index.d.ts.map +0 -1
  862. package/lib.esm/providers/index.js +0 -31
  863. package/lib.esm/providers/index.js.map +0 -1
  864. package/lib.esm/providers/network.d.ts +0 -99
  865. package/lib.esm/providers/network.d.ts.map +0 -1
  866. package/lib.esm/providers/network.js +0 -265
  867. package/lib.esm/providers/network.js.map +0 -1
  868. package/lib.esm/providers/pagination.d.ts +0 -6
  869. package/lib.esm/providers/pagination.d.ts.map +0 -1
  870. package/lib.esm/providers/pagination.js +0 -2
  871. package/lib.esm/providers/pagination.js.map +0 -1
  872. package/lib.esm/providers/plugin-fallback.d.ts +0 -13
  873. package/lib.esm/providers/plugin-fallback.d.ts.map +0 -1
  874. package/lib.esm/providers/plugin-fallback.js +0 -26
  875. package/lib.esm/providers/plugin-fallback.js.map +0 -1
  876. package/lib.esm/providers/plugins-network.d.ts +0 -170
  877. package/lib.esm/providers/plugins-network.d.ts.map +0 -1
  878. package/lib.esm/providers/plugins-network.js +0 -208
  879. package/lib.esm/providers/plugins-network.js.map +0 -1
  880. package/lib.esm/providers/provider-browser.d.ts +0 -108
  881. package/lib.esm/providers/provider-browser.d.ts.map +0 -1
  882. package/lib.esm/providers/provider-browser.js +0 -200
  883. package/lib.esm/providers/provider-browser.js.map +0 -1
  884. package/lib.esm/providers/provider-fallback.d.ts +0 -115
  885. package/lib.esm/providers/provider-fallback.d.ts.map +0 -1
  886. package/lib.esm/providers/provider-fallback.js +0 -620
  887. package/lib.esm/providers/provider-fallback.js.map +0 -1
  888. package/lib.esm/providers/provider-ipcsocket-browser.d.ts +0 -3
  889. package/lib.esm/providers/provider-ipcsocket-browser.d.ts.map +0 -1
  890. package/lib.esm/providers/provider-ipcsocket-browser.js +0 -3
  891. package/lib.esm/providers/provider-ipcsocket-browser.js.map +0 -1
  892. package/lib.esm/providers/provider-ipcsocket.d.ts +0 -21
  893. package/lib.esm/providers/provider-ipcsocket.d.ts.map +0 -1
  894. package/lib.esm/providers/provider-ipcsocket.js +0 -68
  895. package/lib.esm/providers/provider-ipcsocket.js.map +0 -1
  896. package/lib.esm/providers/provider-jsonrpc.d.ts +0 -361
  897. package/lib.esm/providers/provider-jsonrpc.d.ts.map +0 -1
  898. package/lib.esm/providers/provider-jsonrpc.js +0 -973
  899. package/lib.esm/providers/provider-jsonrpc.js.map +0 -1
  900. package/lib.esm/providers/provider-socket.d.ts +0 -113
  901. package/lib.esm/providers/provider-socket.d.ts.map +0 -1
  902. package/lib.esm/providers/provider-socket.js +0 -301
  903. package/lib.esm/providers/provider-socket.js.map +0 -1
  904. package/lib.esm/providers/provider-websocket.d.ts +0 -37
  905. package/lib.esm/providers/provider-websocket.d.ts.map +0 -1
  906. package/lib.esm/providers/provider-websocket.js +0 -76
  907. package/lib.esm/providers/provider-websocket.js.map +0 -1
  908. package/lib.esm/providers/provider.d.ts +0 -1223
  909. package/lib.esm/providers/provider.d.ts.map +0 -1
  910. package/lib.esm/providers/provider.js +0 -1312
  911. package/lib.esm/providers/provider.js.map +0 -1
  912. package/lib.esm/providers/signer-noncemanager.d.ts +0 -38
  913. package/lib.esm/providers/signer-noncemanager.d.ts.map +0 -1
  914. package/lib.esm/providers/signer-noncemanager.js +0 -74
  915. package/lib.esm/providers/signer-noncemanager.js.map +0 -1
  916. package/lib.esm/providers/signer.d.ts +0 -131
  917. package/lib.esm/providers/signer.d.ts.map +0 -1
  918. package/lib.esm/providers/signer.js +0 -2
  919. package/lib.esm/providers/signer.js.map +0 -1
  920. package/lib.esm/providers/subscriber-connection.d.ts +0 -25
  921. package/lib.esm/providers/subscriber-connection.d.ts.map +0 -1
  922. package/lib.esm/providers/subscriber-connection.js +0 -52
  923. package/lib.esm/providers/subscriber-connection.js.map +0 -1
  924. package/lib.esm/providers/subscriber-filterid.d.ts +0 -64
  925. package/lib.esm/providers/subscriber-filterid.d.ts.map +0 -1
  926. package/lib.esm/providers/subscriber-filterid.js +0 -174
  927. package/lib.esm/providers/subscriber-filterid.js.map +0 -1
  928. package/lib.esm/providers/subscriber-polling.d.ts +0 -100
  929. package/lib.esm/providers/subscriber-polling.d.ts.map +0 -1
  930. package/lib.esm/providers/subscriber-polling.js +0 -293
  931. package/lib.esm/providers/subscriber-polling.js.map +0 -1
  932. package/lib.esm/providers/ws-browser.d.ts +0 -3
  933. package/lib.esm/providers/ws-browser.d.ts.map +0 -1
  934. package/lib.esm/providers/ws-browser.js +0 -16
  935. package/lib.esm/providers/ws-browser.js.map +0 -1
  936. package/lib.esm/providers/ws.d.ts +0 -2
  937. package/lib.esm/providers/ws.d.ts.map +0 -1
  938. package/lib.esm/providers/ws.js +0 -2
  939. package/lib.esm/providers/ws.js.map +0 -1
  940. package/lib.esm/quantumcoin.d.ts +0 -24
  941. package/lib.esm/quantumcoin.d.ts.map +0 -1
  942. package/lib.esm/quantumcoin.js +0 -22
  943. package/lib.esm/quantumcoin.js.map +0 -1
  944. package/lib.esm/transaction/accesslist.d.ts +0 -6
  945. package/lib.esm/transaction/accesslist.d.ts.map +0 -1
  946. package/lib.esm/transaction/accesslist.js +0 -37
  947. package/lib.esm/transaction/accesslist.js.map +0 -1
  948. package/lib.esm/transaction/address.d.ts +0 -15
  949. package/lib.esm/transaction/address.d.ts.map +0 -1
  950. package/lib.esm/transaction/address.js +0 -34
  951. package/lib.esm/transaction/address.js.map +0 -1
  952. package/lib.esm/transaction/authorization.d.ts +0 -3
  953. package/lib.esm/transaction/authorization.d.ts.map +0 -1
  954. package/lib.esm/transaction/authorization.js +0 -12
  955. package/lib.esm/transaction/authorization.js.map +0 -1
  956. package/lib.esm/transaction/index.d.ts +0 -40
  957. package/lib.esm/transaction/index.d.ts.map +0 -1
  958. package/lib.esm/transaction/index.js +0 -11
  959. package/lib.esm/transaction/index.js.map +0 -1
  960. package/lib.esm/transaction/transaction.d.ts +0 -400
  961. package/lib.esm/transaction/transaction.d.ts.map +0 -1
  962. package/lib.esm/transaction/transaction.js +0 -1144
  963. package/lib.esm/transaction/transaction.js.map +0 -1
  964. package/lib.esm/utils/base58.d.ts +0 -23
  965. package/lib.esm/utils/base58.d.ts.map +0 -1
  966. package/lib.esm/utils/base58.js +0 -63
  967. package/lib.esm/utils/base58.js.map +0 -1
  968. package/lib.esm/utils/base64-browser.d.ts +0 -4
  969. package/lib.esm/utils/base64-browser.d.ts.map +0 -1
  970. package/lib.esm/utils/base64-browser.js +0 -19
  971. package/lib.esm/utils/base64-browser.js.map +0 -1
  972. package/lib.esm/utils/base64.d.ts +0 -40
  973. package/lib.esm/utils/base64.d.ts.map +0 -1
  974. package/lib.esm/utils/base64.js +0 -53
  975. package/lib.esm/utils/base64.js.map +0 -1
  976. package/lib.esm/utils/data.d.ts +0 -93
  977. package/lib.esm/utils/data.d.ts.map +0 -1
  978. package/lib.esm/utils/data.js +0 -170
  979. package/lib.esm/utils/data.js.map +0 -1
  980. package/lib.esm/utils/errors.d.ts +0 -512
  981. package/lib.esm/utils/errors.d.ts.map +0 -1
  982. package/lib.esm/utils/errors.js +0 -224
  983. package/lib.esm/utils/errors.js.map +0 -1
  984. package/lib.esm/utils/events.d.ts +0 -77
  985. package/lib.esm/utils/events.d.ts.map +0 -1
  986. package/lib.esm/utils/events.js +0 -42
  987. package/lib.esm/utils/events.js.map +0 -1
  988. package/lib.esm/utils/fetch.d.ts +0 -363
  989. package/lib.esm/utils/fetch.d.ts.map +0 -1
  990. package/lib.esm/utils/fetch.js +0 -852
  991. package/lib.esm/utils/fetch.js.map +0 -1
  992. package/lib.esm/utils/fixednumber.d.ts +0 -252
  993. package/lib.esm/utils/fixednumber.d.ts.map +0 -1
  994. package/lib.esm/utils/fixednumber.js +0 -526
  995. package/lib.esm/utils/fixednumber.js.map +0 -1
  996. package/lib.esm/utils/geturl-browser.d.ts +0 -4
  997. package/lib.esm/utils/geturl-browser.d.ts.map +0 -1
  998. package/lib.esm/utils/geturl-browser.js +0 -62
  999. package/lib.esm/utils/geturl-browser.js.map +0 -1
  1000. package/lib.esm/utils/geturl.d.ts +0 -10
  1001. package/lib.esm/utils/geturl.d.ts.map +0 -1
  1002. package/lib.esm/utils/geturl.js +0 -114
  1003. package/lib.esm/utils/geturl.js.map +0 -1
  1004. package/lib.esm/utils/index.d.ts +0 -30
  1005. package/lib.esm/utils/index.d.ts.map +0 -1
  1006. package/lib.esm/utils/index.js +0 -22
  1007. package/lib.esm/utils/index.js.map +0 -1
  1008. package/lib.esm/utils/maths.d.ts +0 -66
  1009. package/lib.esm/utils/maths.d.ts.map +0 -1
  1010. package/lib.esm/utils/maths.js +0 -215
  1011. package/lib.esm/utils/maths.js.map +0 -1
  1012. package/lib.esm/utils/properties.d.ts +0 -23
  1013. package/lib.esm/utils/properties.d.ts.map +0 -1
  1014. package/lib.esm/utils/properties.js +0 -54
  1015. package/lib.esm/utils/properties.js.map +0 -1
  1016. package/lib.esm/utils/rlp-decode.d.ts +0 -6
  1017. package/lib.esm/utils/rlp-decode.d.ts.map +0 -1
  1018. package/lib.esm/utils/rlp-decode.js +0 -79
  1019. package/lib.esm/utils/rlp-decode.js.map +0 -1
  1020. package/lib.esm/utils/rlp-encode.d.ts +0 -6
  1021. package/lib.esm/utils/rlp-encode.d.ts.map +0 -1
  1022. package/lib.esm/utils/rlp-encode.js +0 -49
  1023. package/lib.esm/utils/rlp-encode.js.map +0 -1
  1024. package/lib.esm/utils/rlp.d.ts +0 -17
  1025. package/lib.esm/utils/rlp.d.ts.map +0 -1
  1026. package/lib.esm/utils/rlp.js +0 -9
  1027. package/lib.esm/utils/rlp.js.map +0 -1
  1028. package/lib.esm/utils/units.d.ts +0 -24
  1029. package/lib.esm/utils/units.d.ts.map +0 -1
  1030. package/lib.esm/utils/units.js +0 -83
  1031. package/lib.esm/utils/units.js.map +0 -1
  1032. package/lib.esm/utils/utf8.d.ts +0 -96
  1033. package/lib.esm/utils/utf8.d.ts.map +0 -1
  1034. package/lib.esm/utils/utf8.js +0 -221
  1035. package/lib.esm/utils/utf8.js.map +0 -1
  1036. package/lib.esm/utils/uuid.d.ts +0 -8
  1037. package/lib.esm/utils/uuid.d.ts.map +0 -1
  1038. package/lib.esm/utils/uuid.js +0 -30
  1039. package/lib.esm/utils/uuid.js.map +0 -1
  1040. package/lib.esm/wallet/base-wallet.d.ts +0 -57
  1041. package/lib.esm/wallet/base-wallet.d.ts.map +0 -1
  1042. package/lib.esm/wallet/base-wallet.js +0 -123
  1043. package/lib.esm/wallet/base-wallet.js.map +0 -1
  1044. package/lib.esm/wallet/index.d.ts +0 -23
  1045. package/lib.esm/wallet/index.d.ts.map +0 -1
  1046. package/lib.esm/wallet/index.js +0 -22
  1047. package/lib.esm/wallet/index.js.map +0 -1
  1048. package/lib.esm/wallet/json-keystore.d.ts +0 -40
  1049. package/lib.esm/wallet/json-keystore.d.ts.map +0 -1
  1050. package/lib.esm/wallet/json-keystore.js +0 -84
  1051. package/lib.esm/wallet/json-keystore.js.map +0 -1
  1052. package/lib.esm/wallet/utils.d.ts +0 -8
  1053. package/lib.esm/wallet/utils.d.ts.map +0 -1
  1054. package/lib.esm/wallet/utils.js +0 -142
  1055. package/lib.esm/wallet/utils.js.map +0 -1
  1056. package/lib.esm/wallet/wallet.d.ts +0 -62
  1057. package/lib.esm/wallet/wallet.d.ts.map +0 -1
  1058. package/lib.esm/wallet/wallet.js +0 -105
  1059. package/lib.esm/wallet/wallet.js.map +0 -1
  1060. package/lib.esm/wordlists/bit-reader.d.ts +0 -5
  1061. package/lib.esm/wordlists/bit-reader.d.ts.map +0 -1
  1062. package/lib.esm/wordlists/bit-reader.js +0 -32
  1063. package/lib.esm/wordlists/bit-reader.js.map +0 -1
  1064. package/lib.esm/wordlists/decode-owl.d.ts +0 -9
  1065. package/lib.esm/wordlists/decode-owl.d.ts.map +0 -1
  1066. package/lib.esm/wordlists/decode-owl.js +0 -55
  1067. package/lib.esm/wordlists/decode-owl.js.map +0 -1
  1068. package/lib.esm/wordlists/decode-owla.d.ts +0 -5
  1069. package/lib.esm/wordlists/decode-owla.d.ts.map +0 -1
  1070. package/lib.esm/wordlists/decode-owla.js +0 -28
  1071. package/lib.esm/wordlists/decode-owla.js.map +0 -1
  1072. package/lib.esm/wordlists/generation/encode-latin.d.ts +0 -25
  1073. package/lib.esm/wordlists/generation/encode-latin.d.ts.map +0 -1
  1074. package/lib.esm/wordlists/generation/encode-latin.js +0 -344
  1075. package/lib.esm/wordlists/generation/encode-latin.js.map +0 -1
  1076. package/lib.esm/wordlists/index.d.ts +0 -25
  1077. package/lib.esm/wordlists/index.d.ts.map +0 -1
  1078. package/lib.esm/wordlists/index.js +0 -25
  1079. package/lib.esm/wordlists/index.js.map +0 -1
  1080. package/lib.esm/wordlists/lang-cz.d.ts +0 -23
  1081. package/lib.esm/wordlists/lang-cz.d.ts.map +0 -1
  1082. package/lib.esm/wordlists/lang-cz.js +0 -31
  1083. package/lib.esm/wordlists/lang-cz.js.map +0 -1
  1084. package/lib.esm/wordlists/lang-en.d.ts +0 -23
  1085. package/lib.esm/wordlists/lang-en.d.ts.map +0 -1
  1086. package/lib.esm/wordlists/lang-en.js +0 -31
  1087. package/lib.esm/wordlists/lang-en.js.map +0 -1
  1088. package/lib.esm/wordlists/lang-es.d.ts +0 -23
  1089. package/lib.esm/wordlists/lang-es.d.ts.map +0 -1
  1090. package/lib.esm/wordlists/lang-es.js +0 -32
  1091. package/lib.esm/wordlists/lang-es.js.map +0 -1
  1092. package/lib.esm/wordlists/lang-fr.d.ts +0 -23
  1093. package/lib.esm/wordlists/lang-fr.d.ts.map +0 -1
  1094. package/lib.esm/wordlists/lang-fr.js +0 -32
  1095. package/lib.esm/wordlists/lang-fr.js.map +0 -1
  1096. package/lib.esm/wordlists/lang-it.d.ts +0 -23
  1097. package/lib.esm/wordlists/lang-it.d.ts.map +0 -1
  1098. package/lib.esm/wordlists/lang-it.js +0 -31
  1099. package/lib.esm/wordlists/lang-it.js.map +0 -1
  1100. package/lib.esm/wordlists/lang-ja.d.ts +0 -27
  1101. package/lib.esm/wordlists/lang-ja.d.ts.map +0 -1
  1102. package/lib.esm/wordlists/lang-ja.js +0 -154
  1103. package/lib.esm/wordlists/lang-ja.js.map +0 -1
  1104. package/lib.esm/wordlists/lang-ko.d.ts +0 -25
  1105. package/lib.esm/wordlists/lang-ko.d.ts.map +0 -1
  1106. package/lib.esm/wordlists/lang-ko.js +0 -89
  1107. package/lib.esm/wordlists/lang-ko.js.map +0 -1
  1108. package/lib.esm/wordlists/lang-pt.d.ts +0 -23
  1109. package/lib.esm/wordlists/lang-pt.d.ts.map +0 -1
  1110. package/lib.esm/wordlists/lang-pt.js +0 -31
  1111. package/lib.esm/wordlists/lang-pt.js.map +0 -1
  1112. package/lib.esm/wordlists/lang-zh.d.ts +0 -32
  1113. package/lib.esm/wordlists/lang-zh.d.ts.map +0 -1
  1114. package/lib.esm/wordlists/lang-zh.js +0 -92
  1115. package/lib.esm/wordlists/lang-zh.js.map +0 -1
  1116. package/lib.esm/wordlists/wordlist-owl.d.ts +0 -32
  1117. package/lib.esm/wordlists/wordlist-owl.d.ts.map +0 -1
  1118. package/lib.esm/wordlists/wordlist-owl.js +0 -66
  1119. package/lib.esm/wordlists/wordlist-owl.js.map +0 -1
  1120. package/lib.esm/wordlists/wordlist-owla.d.ts +0 -30
  1121. package/lib.esm/wordlists/wordlist-owla.d.ts.map +0 -1
  1122. package/lib.esm/wordlists/wordlist-owla.js +0 -36
  1123. package/lib.esm/wordlists/wordlist-owla.js.map +0 -1
  1124. package/lib.esm/wordlists/wordlist.d.ts +0 -47
  1125. package/lib.esm/wordlists/wordlist.d.ts.map +0 -1
  1126. package/lib.esm/wordlists/wordlist.js +0 -42
  1127. package/lib.esm/wordlists/wordlist.js.map +0 -1
  1128. package/lib.esm/wordlists/wordlists-browser.d.ts +0 -3
  1129. package/lib.esm/wordlists/wordlists-browser.d.ts.map +0 -1
  1130. package/lib.esm/wordlists/wordlists-browser.js +0 -5
  1131. package/lib.esm/wordlists/wordlists-browser.js.map +0 -1
  1132. package/lib.esm/wordlists/wordlists-extra.d.ts +0 -9
  1133. package/lib.esm/wordlists/wordlists-extra.d.ts.map +0 -1
  1134. package/lib.esm/wordlists/wordlists-extra.js +0 -9
  1135. package/lib.esm/wordlists/wordlists-extra.js.map +0 -1
  1136. package/lib.esm/wordlists/wordlists.d.ts +0 -16
  1137. package/lib.esm/wordlists/wordlists.d.ts.map +0 -1
  1138. package/lib.esm/wordlists/wordlists.js +0 -35
  1139. package/lib.esm/wordlists/wordlists.js.map +0 -1
  1140. package/rollup.config.mjs +0 -50
  1141. package/src.ts/_version.ts +0 -6
  1142. package/src.ts/abi/abi-coder.ts +0 -237
  1143. package/src.ts/abi/bytes32.ts +0 -45
  1144. package/src.ts/abi/coders/abstract-coder.ts +0 -541
  1145. package/src.ts/abi/coders/address.ts +0 -36
  1146. package/src.ts/abi/coders/anonymous.ts +0 -29
  1147. package/src.ts/abi/coders/array.ts +0 -199
  1148. package/src.ts/abi/coders/boolean.ts +0 -27
  1149. package/src.ts/abi/coders/bytes.ts +0 -43
  1150. package/src.ts/abi/coders/fixed-bytes.ts +0 -37
  1151. package/src.ts/abi/coders/null.ts +0 -28
  1152. package/src.ts/abi/coders/number.ts +0 -63
  1153. package/src.ts/abi/coders/string.ts +0 -29
  1154. package/src.ts/abi/coders/tuple.ts +0 -69
  1155. package/src.ts/abi/fragments.ts +0 -1617
  1156. package/src.ts/abi/index.ts +0 -41
  1157. package/src.ts/abi/interface.ts +0 -1271
  1158. package/src.ts/abi/typed.ts +0 -796
  1159. package/src.ts/address/address.ts +0 -148
  1160. package/src.ts/address/checks.ts +0 -123
  1161. package/src.ts/address/contract-address.ts +0 -80
  1162. package/src.ts/address/index.ts +0 -57
  1163. package/src.ts/constants/addresses.ts +0 -8
  1164. package/src.ts/constants/hashes.ts +0 -7
  1165. package/src.ts/constants/index.ts +0 -16
  1166. package/src.ts/constants/numbers.ts +0 -35
  1167. package/src.ts/constants/strings.ts +0 -16
  1168. package/src.ts/contract/contract.ts +0 -1120
  1169. package/src.ts/contract/factory.ts +0 -143
  1170. package/src.ts/contract/index.ts +0 -31
  1171. package/src.ts/contract/types.ts +0 -236
  1172. package/src.ts/contract/wrappers.ts +0 -225
  1173. package/src.ts/crypto/crypto-browser.ts +0 -64
  1174. package/src.ts/crypto/crypto.ts +0 -4
  1175. package/src.ts/crypto/hmac.ts +0 -51
  1176. package/src.ts/crypto/index.ts +0 -59
  1177. package/src.ts/crypto/keccak.ts +0 -54
  1178. package/src.ts/crypto/pbkdf2.ts +0 -55
  1179. package/src.ts/crypto/random.ts +0 -36
  1180. package/src.ts/crypto/ripemd160.ts +0 -43
  1181. package/src.ts/crypto/scrypt.ts +0 -114
  1182. package/src.ts/crypto/sha2.ts +0 -78
  1183. package/src.ts/crypto/signature.ts +0 -349
  1184. package/src.ts/crypto/signing-key.ts +0 -123
  1185. package/src.ts/hash/authorization.ts +0 -38
  1186. package/src.ts/hash/id.ts +0 -17
  1187. package/src.ts/hash/index.ts +0 -18
  1188. package/src.ts/hash/message.ts +0 -51
  1189. package/src.ts/hash/namehash.ts +0 -101
  1190. package/src.ts/hash/solidity.ts +0 -117
  1191. package/src.ts/hash/typed-data.ts +0 -658
  1192. package/src.ts/index.ts +0 -12
  1193. package/src.ts/providers/abstract-provider.ts +0 -1761
  1194. package/src.ts/providers/abstract-signer.ts +0 -314
  1195. package/src.ts/providers/community.ts +0 -49
  1196. package/src.ts/providers/contracts.ts +0 -42
  1197. package/src.ts/providers/default-provider.ts +0 -96
  1198. package/src.ts/providers/ens-resolver.ts +0 -606
  1199. package/src.ts/providers/format.ts +0 -320
  1200. package/src.ts/providers/formatting.ts +0 -418
  1201. package/src.ts/providers/index.ts +0 -125
  1202. package/src.ts/providers/network.ts +0 -327
  1203. package/src.ts/providers/pagination.ts +0 -8
  1204. package/src.ts/providers/plugin-fallback.ts +0 -35
  1205. package/src.ts/providers/plugins-network.ts +0 -281
  1206. package/src.ts/providers/provider-browser.ts +0 -334
  1207. package/src.ts/providers/provider-fallback.ts +0 -801
  1208. package/src.ts/providers/provider-ipcsocket-browser.ts +0 -3
  1209. package/src.ts/providers/provider-ipcsocket.ts +0 -81
  1210. package/src.ts/providers/provider-jsonrpc.ts +0 -1335
  1211. package/src.ts/providers/provider-socket.ts +0 -352
  1212. package/src.ts/providers/provider-websocket.ts +0 -103
  1213. package/src.ts/providers/provider.ts +0 -2136
  1214. package/src.ts/providers/signer-noncemanager.ts +0 -98
  1215. package/src.ts/providers/signer.ts +0 -166
  1216. package/src.ts/providers/subscriber-connection.ts +0 -74
  1217. package/src.ts/providers/subscriber-filterid.ts +0 -199
  1218. package/src.ts/providers/subscriber-polling.ts +0 -321
  1219. package/src.ts/providers/ws-browser.ts +0 -11
  1220. package/src.ts/providers/ws.ts +0 -3
  1221. package/src.ts/quantumcoin.ts +0 -219
  1222. package/src.ts/thirdparty.d.ts +0 -16
  1223. package/src.ts/transaction/accesslist.ts +0 -43
  1224. package/src.ts/transaction/address.ts +0 -35
  1225. package/src.ts/transaction/authorization.ts +0 -14
  1226. package/src.ts/transaction/index.ts +0 -51
  1227. package/src.ts/transaction/transaction.ts +0 -1379
  1228. package/src.ts/utils/base58.ts +0 -73
  1229. package/src.ts/utils/base64-browser.ts +0 -25
  1230. package/src.ts/utils/base64.ts +0 -56
  1231. package/src.ts/utils/data.ts +0 -199
  1232. package/src.ts/utils/errors.ts +0 -793
  1233. package/src.ts/utils/events.ts +0 -105
  1234. package/src.ts/utils/fetch.ts +0 -970
  1235. package/src.ts/utils/fixednumber.ts +0 -643
  1236. package/src.ts/utils/geturl-browser.ts +0 -81
  1237. package/src.ts/utils/geturl.ts +0 -134
  1238. package/src.ts/utils/index.ts +0 -95
  1239. package/src.ts/utils/maths.ts +0 -240
  1240. package/src.ts/utils/properties.ts +0 -60
  1241. package/src.ts/utils/rlp-decode.ts +0 -104
  1242. package/src.ts/utils/rlp-encode.ts +0 -64
  1243. package/src.ts/utils/rlp.ts +0 -20
  1244. package/src.ts/utils/test.txt +0 -0
  1245. package/src.ts/utils/units.ts +0 -91
  1246. package/src.ts/utils/utf8.ts +0 -325
  1247. package/src.ts/utils/uuid.ts +0 -36
  1248. package/src.ts/wallet/base-wallet.ts +0 -160
  1249. package/src.ts/wallet/index.ts +0 -32
  1250. package/src.ts/wallet/json-keystore.ts +0 -108
  1251. package/src.ts/wallet/utils.ts +0 -147
  1252. package/src.ts/wallet/wallet.ts +0 -138
  1253. package/src.ts/wordlists/bit-reader.ts +0 -35
  1254. package/src.ts/wordlists/decode-owl.ts +0 -58
  1255. package/src.ts/wordlists/decode-owla.ts +0 -33
  1256. package/src.ts/wordlists/generation/encode-latin.ts +0 -370
  1257. package/src.ts/wordlists/index.ts +0 -26
  1258. package/src.ts/wordlists/lang-cz.ts +0 -33
  1259. package/src.ts/wordlists/lang-en.ts +0 -33
  1260. package/src.ts/wordlists/lang-es.ts +0 -35
  1261. package/src.ts/wordlists/lang-fr.ts +0 -34
  1262. package/src.ts/wordlists/lang-it.ts +0 -33
  1263. package/src.ts/wordlists/lang-ja.ts +0 -181
  1264. package/src.ts/wordlists/lang-ko.ts +0 -104
  1265. package/src.ts/wordlists/lang-pt.ts +0 -34
  1266. package/src.ts/wordlists/lang-zh.ts +0 -112
  1267. package/src.ts/wordlists/wordlist-owl.ts +0 -77
  1268. package/src.ts/wordlists/wordlist-owla.ts +0 -41
  1269. package/src.ts/wordlists/wordlist.ts +0 -59
  1270. package/src.ts/wordlists/wordlists-browser.ts +0 -8
  1271. package/src.ts/wordlists/wordlists-extra.ts +0 -9
  1272. package/src.ts/wordlists/wordlists.ts +0 -38
@@ -1,1617 +0,0 @@
1
- /**
2
- * A fragment is a single item from an ABI, which may represent any of:
3
- *
4
- * - [Functions](FunctionFragment)
5
- * - [Events](EventFragment)
6
- * - [Constructors](ConstructorFragment)
7
- * - Custom [Errors](ErrorFragment)
8
- * - [Fallback or Receive](FallbackFragment) functions
9
- *
10
- * @_subsection api/abi/abi-coder:Fragments [about-fragments]
11
- */
12
-
13
- import {
14
- defineProperties, getBigInt, getNumber,
15
- assert, assertPrivate, assertArgument
16
- } from "../utils/index.js";
17
- import { id } from "../hash/index.js";
18
-
19
- /**
20
- * A Type description in a [JSON ABI format](link-solc-jsonabi).
21
- */
22
- export interface JsonFragmentType {
23
- /**
24
- * The parameter name.
25
- */
26
- readonly name?: string;
27
-
28
- /**
29
- * If the parameter is indexed.
30
- */
31
- readonly indexed?: boolean;
32
-
33
- /**
34
- * The type of the parameter.
35
- */
36
- readonly type?: string;
37
-
38
- /**
39
- * The internal Solidity type.
40
- */
41
- readonly internalType?: string;
42
-
43
- /**
44
- * The components for a tuple.
45
- */
46
- readonly components?: ReadonlyArray<JsonFragmentType>;
47
- }
48
-
49
- /**
50
- * A fragment for a method, event or error in a [JSON ABI format](link-solc-jsonabi).
51
- */
52
- export interface JsonFragment {
53
- /**
54
- * The name of the error, event, function, etc.
55
- */
56
- readonly name?: string;
57
-
58
- /**
59
- * The type of the fragment (e.g. ``event``, ``"function"``, etc.)
60
- */
61
- readonly type?: string;
62
-
63
- /**
64
- * If the event is anonymous.
65
- */
66
- readonly anonymous?: boolean;
67
-
68
- /**
69
- * If the function is payable.
70
- */
71
- readonly payable?: boolean;
72
-
73
- /**
74
- * If the function is constant.
75
- */
76
- readonly constant?: boolean;
77
-
78
- /**
79
- * The mutability state of the function.
80
- */
81
- readonly stateMutability?: string;
82
-
83
- /**
84
- * The input parameters.
85
- */
86
- readonly inputs?: ReadonlyArray<JsonFragmentType>;
87
-
88
- /**
89
- * The output parameters.
90
- */
91
- readonly outputs?: ReadonlyArray<JsonFragmentType>;
92
-
93
- /**
94
- * The gas limit to use when sending a transaction for this function.
95
- */
96
- readonly gas?: string;
97
- };
98
-
99
- /**
100
- * The format to serialize the output as.
101
- *
102
- * **``"sighash"``** - the bare formatting, used to compute the selector
103
- * or topic hash; this format cannot be reversed (as it discards ``indexed``)
104
- * so cannot by used to export an [[Interface]].
105
- *
106
- * **``"minimal"``** - Human-Readable ABI with minimal spacing and without
107
- * names, so it is compact, but will result in Result objects that cannot
108
- * be accessed by name.
109
- *
110
- * **``"full"``** - Full Human-Readable ABI, with readable spacing and names
111
- * intact; this is generally the recommended format.
112
- *
113
- * **``"json"``** - The [JSON ABI format](link-solc-jsonabi).
114
- */
115
- export type FormatType = "sighash" | "minimal" | "full" | "json";
116
-
117
- // [ "a", "b" ] => { "a": 1, "b": 1 }
118
- function setify(items: Array<string>): ReadonlySet<string> {
119
- const result: Set<string> = new Set();
120
- items.forEach((k) => result.add(k));
121
- return Object.freeze(result);
122
- }
123
-
124
- const _kwVisibDeploy = "external public payable override";
125
- const KwVisibDeploy = setify(_kwVisibDeploy.split(" "));
126
-
127
- // Visibility Keywords
128
- const _kwVisib = "constant external internal payable private public pure view override";
129
- const KwVisib = setify(_kwVisib.split(" "));
130
-
131
- const _kwTypes = "constructor error event fallback function receive struct";
132
- const KwTypes = setify(_kwTypes.split(" "));
133
-
134
- const _kwModifiers = "calldata memory storage payable indexed";
135
- const KwModifiers = setify(_kwModifiers.split(" "));
136
-
137
- const _kwOther = "tuple returns";
138
-
139
- // All Keywords
140
- const _keywords = [ _kwTypes, _kwModifiers, _kwOther, _kwVisib ].join(" ");
141
- const Keywords = setify(_keywords.split(" "));
142
-
143
- // Single character tokens
144
- const SimpleTokens: Record<string, string> = {
145
- "(": "OPEN_PAREN", ")": "CLOSE_PAREN",
146
- "[": "OPEN_BRACKET", "]": "CLOSE_BRACKET",
147
- ",": "COMMA", "@": "AT"
148
- };
149
-
150
- // Parser regexes to consume the next token
151
- const regexWhitespacePrefix = new RegExp("^(\\s*)");
152
- const regexNumberPrefix = new RegExp("^([0-9]+)");
153
- const regexIdPrefix = new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)");
154
-
155
- // Parser regexs to check validity
156
- const regexId = new RegExp("^([a-zA-Z$_][a-zA-Z0-9$_]*)$");
157
- const regexType = new RegExp("^(address|bool|bytes([0-9]*)|string|u?int([0-9]*))$");
158
-
159
- /**
160
- * @ignore:
161
- */
162
- type Token = Readonly<{
163
- // Type of token (e.g. TYPE, KEYWORD, NUMBER, etc)
164
- type: string;
165
-
166
- // Offset into the original source code
167
- offset: number;
168
-
169
- // Actual text content of the token
170
- text: string;
171
-
172
- // The parenthesis depth
173
- depth: number;
174
-
175
- // If a parenthesis, the offset (in tokens) that balances it
176
- match: number;
177
-
178
- // For parenthesis and commas, the offset (in tokens) to the
179
- // previous/next parenthesis or comma in the list
180
- linkBack: number;
181
- linkNext: number;
182
-
183
- // If a BRACKET, the value inside
184
- value: number;
185
- }>;
186
-
187
- class TokenString {
188
- #offset: number;
189
- #tokens: ReadonlyArray<Token>;
190
-
191
- get offset(): number { return this.#offset; }
192
- get length(): number { return this.#tokens.length - this.#offset; }
193
-
194
- constructor(tokens: ReadonlyArray<Token>) {
195
- this.#offset = 0;
196
- this.#tokens = tokens.slice();
197
- }
198
-
199
- clone(): TokenString { return new TokenString(this.#tokens); }
200
- reset(): void { this.#offset = 0; }
201
-
202
- #subTokenString(from: number = 0, to: number = 0): TokenString {
203
- return new TokenString(this.#tokens.slice(from, to).map((t) => {
204
- return Object.freeze(Object.assign({ }, t, {
205
- match: (t.match - from),
206
- linkBack: (t.linkBack - from),
207
- linkNext: (t.linkNext - from),
208
- }));
209
- }));
210
- }
211
-
212
- // Pops and returns the value of the next token, if it is a keyword in allowed; throws if out of tokens
213
- popKeyword(allowed: ReadonlySet<string>): string {
214
- const top = this.peek();
215
- if (top.type !== "KEYWORD" || !allowed.has(top.text)) { throw new Error(`expected keyword ${ top.text }`); }
216
- return this.pop().text;
217
- }
218
-
219
- // Pops and returns the value of the next token if it is `type`; throws if out of tokens
220
- popType(type: string): string {
221
- if (this.peek().type !== type) {
222
- const top = this.peek();
223
- throw new Error(`expected ${ type }; got ${ top.type } ${ JSON.stringify(top.text) }`);
224
- }
225
- return this.pop().text;
226
- }
227
-
228
- // Pops and returns a "(" TOKENS ")"
229
- popParen(): TokenString {
230
- const top = this.peek();
231
- if (top.type !== "OPEN_PAREN") { throw new Error("bad start"); }
232
- const result = this.#subTokenString(this.#offset + 1, top.match + 1);
233
- this.#offset = top.match + 1;
234
- return result;
235
- }
236
-
237
- // Pops and returns the items within "(" ITEM1 "," ITEM2 "," ... ")"
238
- popParams(): Array<TokenString> {
239
- const top = this.peek();
240
-
241
- if (top.type !== "OPEN_PAREN") { throw new Error("bad start"); }
242
-
243
- const result: Array<TokenString> = [ ];
244
-
245
- while(this.#offset < top.match - 1) {
246
- const link = this.peek().linkNext;
247
- result.push(this.#subTokenString(this.#offset + 1, link));
248
- this.#offset = link;
249
- }
250
-
251
- this.#offset = top.match + 1;
252
-
253
- return result;
254
- }
255
-
256
- // Returns the top Token, throwing if out of tokens
257
- peek(): Token {
258
- if (this.#offset >= this.#tokens.length) {
259
- throw new Error("out-of-bounds");
260
- }
261
- return this.#tokens[this.#offset];
262
- }
263
-
264
- // Returns the next value, if it is a keyword in `allowed`
265
- peekKeyword(allowed: ReadonlySet<string>): null | string {
266
- const top = this.peekType("KEYWORD");
267
- return (top != null && allowed.has(top)) ? top: null;
268
- }
269
-
270
- // Returns the value of the next token if it is `type`
271
- peekType(type: string): null | string {
272
- if (this.length === 0) { return null; }
273
- const top = this.peek();
274
- return (top.type === type) ? top.text: null;
275
- }
276
-
277
- // Returns the next token; throws if out of tokens
278
- pop(): Token {
279
- const result = this.peek();
280
- this.#offset++;
281
- return result;
282
- }
283
-
284
- toString(): string {
285
- const tokens: Array<string> = [ ];
286
- for (let i = this.#offset; i < this.#tokens.length; i++) {
287
- const token = this.#tokens[i];
288
- tokens.push(`${ token.type }:${ token.text }`);
289
- }
290
- return `<TokenString ${ tokens.join(" ") }>`
291
- }
292
- }
293
-
294
- type Writeable<T> = { -readonly [P in keyof T]: T[P] };
295
-
296
- function lex(text: string): TokenString {
297
- const tokens: Array<Token> = [ ];
298
-
299
- const throwError = (message: string) => {
300
- const token = (offset < text.length) ? JSON.stringify(text[offset]): "$EOI";
301
- throw new Error(`invalid token ${ token } at ${ offset }: ${ message }`);
302
- };
303
-
304
- let brackets: Array<number> = [ ];
305
- let commas: Array<number> = [ ];
306
-
307
- let offset = 0;
308
- while (offset < text.length) {
309
-
310
- // Strip off any leading whitespace
311
- let cur = text.substring(offset);
312
- let match = cur.match(regexWhitespacePrefix);
313
- if (match) {
314
- offset += match[1].length;
315
- cur = text.substring(offset);
316
- }
317
-
318
- const token = { depth: brackets.length, linkBack: -1, linkNext: -1, match: -1, type: "", text: "", offset, value: -1 };
319
- tokens.push(token);
320
-
321
- let type = (SimpleTokens[cur[0]] || "");
322
- if (type) {
323
- token.type = type;
324
- token.text = cur[0];
325
- offset++;
326
-
327
- if (type === "OPEN_PAREN") {
328
- brackets.push(tokens.length - 1);
329
- commas.push(tokens.length - 1);
330
-
331
- } else if (type == "CLOSE_PAREN") {
332
- if (brackets.length === 0) { throwError("no matching open bracket"); }
333
-
334
- token.match = brackets.pop() as number;
335
- (<Writeable<Token>>(tokens[token.match])).match = tokens.length - 1;
336
- token.depth--;
337
-
338
- token.linkBack = commas.pop() as number;
339
- (<Writeable<Token>>(tokens[token.linkBack])).linkNext = tokens.length - 1;
340
-
341
- } else if (type === "COMMA") {
342
- token.linkBack = commas.pop() as number;
343
- (<Writeable<Token>>(tokens[token.linkBack])).linkNext = tokens.length - 1;
344
- commas.push(tokens.length - 1);
345
-
346
- } else if (type === "OPEN_BRACKET") {
347
- token.type = "BRACKET";
348
-
349
- } else if (type === "CLOSE_BRACKET") {
350
- // Remove the CLOSE_BRACKET
351
- let suffix = (tokens.pop() as Token).text;
352
- if (tokens.length > 0 && tokens[tokens.length - 1].type === "NUMBER") {
353
- const value = (tokens.pop() as Token).text;
354
- suffix = value + suffix;
355
- (<Writeable<Token>>(tokens[tokens.length - 1])).value = getNumber(value);
356
- }
357
- if (tokens.length === 0 || tokens[tokens.length - 1].type !== "BRACKET") {
358
- throw new Error("missing opening bracket");
359
- }
360
- (<Writeable<Token>>(tokens[tokens.length - 1])).text += suffix;
361
- }
362
-
363
- continue;
364
- }
365
-
366
- match = cur.match(regexIdPrefix);
367
- if (match) {
368
- token.text = match[1];
369
- offset += token.text.length;
370
-
371
- if (Keywords.has(token.text)) {
372
- token.type = "KEYWORD";
373
- continue;
374
- }
375
-
376
- if (token.text.match(regexType)) {
377
- token.type = "TYPE";
378
- continue;
379
- }
380
-
381
- token.type = "ID";
382
- continue;
383
- }
384
-
385
- match = cur.match(regexNumberPrefix);
386
- if (match) {
387
- token.text = match[1];
388
- token.type = "NUMBER";
389
- offset += token.text.length;
390
- continue;
391
- }
392
-
393
- throw new Error(`unexpected token ${ JSON.stringify(cur[0]) } at position ${ offset }`);
394
- }
395
-
396
- return new TokenString(tokens.map((t) => Object.freeze(t)));
397
- }
398
-
399
- // Check only one of `allowed` is in `set`
400
- function allowSingle(set: ReadonlySet<string>, allowed: ReadonlySet<string>): void {
401
- let included: Array<string> = [ ];
402
- for (const key in allowed.keys()) {
403
- if (set.has(key)) { included.push(key); }
404
- }
405
- if (included.length > 1) { throw new Error(`conflicting types: ${ included.join(", ") }`); }
406
- }
407
-
408
- // Functions to process a Solidity Signature TokenString from left-to-right for...
409
-
410
- // ...the name with an optional type, returning the name
411
- function consumeName(type: string, tokens: TokenString): string {
412
- if (tokens.peekKeyword(KwTypes)) {
413
- const keyword = tokens.pop().text;
414
- if (keyword !== type) {
415
- throw new Error(`expected ${ type }, got ${ keyword }`);
416
- }
417
- }
418
-
419
- return tokens.popType("ID");
420
- }
421
-
422
- // ...all keywords matching allowed, returning the keywords
423
- function consumeKeywords(tokens: TokenString, allowed?: ReadonlySet<string>): ReadonlySet<string> {
424
- const keywords: Set<string> = new Set();
425
- while (true) {
426
- const keyword = tokens.peekType("KEYWORD");
427
-
428
- if (keyword == null || (allowed && !allowed.has(keyword))) { break; }
429
- tokens.pop();
430
-
431
- if (keywords.has(keyword)) { throw new Error(`duplicate keywords: ${ JSON.stringify(keyword) }`); }
432
- keywords.add(keyword);
433
- }
434
-
435
- return Object.freeze(keywords);
436
- }
437
-
438
- // ...all visibility keywords, returning the coalesced mutability
439
- function consumeMutability(tokens: TokenString): "payable" | "nonpayable" | "view" | "pure" {
440
- let modifiers = consumeKeywords(tokens, KwVisib);
441
-
442
- // Detect conflicting modifiers
443
- allowSingle(modifiers, setify("constant payable nonpayable".split(" ")));
444
- allowSingle(modifiers, setify("pure view payable nonpayable".split(" ")));
445
-
446
- // Process mutability states
447
- if (modifiers.has("view")) { return "view"; }
448
- if (modifiers.has("pure")) { return "pure"; }
449
- if (modifiers.has("payable")) { return "payable"; }
450
- if (modifiers.has("nonpayable")) { return "nonpayable"; }
451
-
452
- // Process legacy `constant` last
453
- if (modifiers.has("constant")) { return "view"; }
454
-
455
- return "nonpayable";
456
- }
457
-
458
- // ...a parameter list, returning the ParamType list
459
- function consumeParams(tokens: TokenString, allowIndexed?: boolean): Array<ParamType> {
460
- return tokens.popParams().map((t) => ParamType.from(t, allowIndexed));
461
- }
462
-
463
- // ...a gas limit, returning a BigNumber or null if none
464
- function consumeGas(tokens: TokenString): null | bigint {
465
- if (tokens.peekType("AT")) {
466
- tokens.pop();
467
- if (tokens.peekType("NUMBER")) {
468
- return getBigInt(tokens.pop().text);
469
- }
470
- throw new Error("invalid gas");
471
- }
472
- return null;
473
- }
474
-
475
- function consumeEoi(tokens: TokenString): void {
476
- if (tokens.length) {
477
- throw new Error(`unexpected tokens at offset ${ tokens.offset }: ${ tokens.toString() }`);
478
- }
479
- }
480
-
481
- const regexArrayType = new RegExp(/^(.*)\[([0-9]*)\]$/);
482
-
483
- function verifyBasicType(type: string): string {
484
- const match = type.match(regexType);
485
- assertArgument(match, "invalid type", "type", type);
486
- if (type === "uint") { return "uint256"; }
487
- if (type === "int") { return "int256"; }
488
-
489
- if (match[2]) {
490
- // bytesXX
491
- const length = parseInt(match[2]);
492
- assertArgument(length !== 0 && length <= 32, "invalid bytes length", "type", type);
493
-
494
- } else if (match[3]) {
495
- // intXX or uintXX
496
- const size = parseInt(match[3] as string);
497
- assertArgument(size !== 0 && size <= 256 && (size % 8) === 0, "invalid numeric width", "type", type);
498
- }
499
-
500
- return type;
501
- }
502
-
503
- // Make the Fragment constructors effectively private
504
- const _guard = { };
505
-
506
-
507
- /**
508
- * When [walking](ParamType-walk) a [[ParamType]], this is called
509
- * on each component.
510
- */
511
- export type ParamTypeWalkFunc = (type: string, value: any) => any;
512
-
513
- /**
514
- * When [walking asynchronously](ParamType-walkAsync) a [[ParamType]],
515
- * this is called on each component.
516
- */
517
- export type ParamTypeWalkAsyncFunc = (type: string, value: any) => any | Promise<any>;
518
-
519
- const internal = Symbol.for("_ethers_internal");
520
-
521
- const ParamTypeInternal = "_ParamTypeInternal";
522
- const ErrorFragmentInternal = "_ErrorInternal";
523
- const EventFragmentInternal = "_EventInternal";
524
- const ConstructorFragmentInternal = "_ConstructorInternal";
525
- const FallbackFragmentInternal = "_FallbackInternal";
526
- const FunctionFragmentInternal = "_FunctionInternal";
527
- const StructFragmentInternal = "_StructInternal";
528
-
529
- /**
530
- * Each input and output of a [[Fragment]] is an Array of **ParamType**.
531
- */
532
- export class ParamType {
533
-
534
- /**
535
- * The local name of the parameter (or ``""`` if unbound)
536
- */
537
- readonly name!: string;
538
-
539
- /**
540
- * The fully qualified type (e.g. ``"address"``, ``"tuple(address)"``,
541
- * ``"uint256[3][]"``)
542
- */
543
- readonly type!: string;
544
-
545
- /**
546
- * The base type (e.g. ``"address"``, ``"tuple"``, ``"array"``)
547
- */
548
- readonly baseType!: string;
549
-
550
- /**
551
- * True if the parameters is indexed.
552
- *
553
- * For non-indexable types this is ``null``.
554
- */
555
- readonly indexed!: null | boolean;
556
-
557
- /**
558
- * The components for the tuple.
559
- *
560
- * For non-tuple types this is ``null``.
561
- */
562
- readonly components!: null | ReadonlyArray<ParamType>;
563
-
564
- /**
565
- * The array length, or ``-1`` for dynamic-lengthed arrays.
566
- *
567
- * For non-array types this is ``null``.
568
- */
569
- readonly arrayLength!: null | number;
570
-
571
- /**
572
- * The type of each child in the array.
573
- *
574
- * For non-array types this is ``null``.
575
- */
576
- readonly arrayChildren!: null | ParamType;
577
-
578
-
579
- /**
580
- * @private
581
- */
582
- constructor(guard: any, name: string, type: string, baseType: string, indexed: null | boolean, components: null | ReadonlyArray<ParamType>, arrayLength: null | number, arrayChildren: null | ParamType) {
583
- assertPrivate(guard, _guard, "ParamType");
584
- Object.defineProperty(this, internal, { value: ParamTypeInternal });
585
-
586
- if (components) { components = Object.freeze(components.slice()); }
587
-
588
- if (baseType === "array") {
589
- if (arrayLength == null || arrayChildren == null) {
590
- throw new Error("");
591
- }
592
- } else if (arrayLength != null || arrayChildren != null) {
593
- throw new Error("");
594
- }
595
-
596
- if (baseType === "tuple") {
597
- if (components == null) { throw new Error(""); }
598
- } else if (components != null) {
599
- throw new Error("");
600
- }
601
-
602
- defineProperties<ParamType>(this, {
603
- name, type, baseType, indexed, components, arrayLength, arrayChildren
604
- });
605
- }
606
-
607
- /**
608
- * Return a string representation of this type.
609
- *
610
- * For example,
611
- *
612
- * ``sighash" => "(uint256,address)"``
613
- *
614
- * ``"minimal" => "tuple(uint256,address) indexed"``
615
- *
616
- * ``"full" => "tuple(uint256 foo, address bar) indexed baz"``
617
- */
618
- format(format?: FormatType): string {
619
- if (format == null) { format = "sighash"; }
620
- if (format === "json") {
621
- const name = this.name || "";
622
-
623
- if (this.isArray()) {
624
- const result = JSON.parse(this.arrayChildren.format("json"));
625
- result.name = name;
626
- result.type += `[${ (this.arrayLength < 0 ? "": String(this.arrayLength)) }]`;
627
- return JSON.stringify(result);
628
- }
629
-
630
- const result: any = {
631
- type: ((this.baseType === "tuple") ? "tuple": this.type),
632
- name
633
- };
634
-
635
-
636
- if (typeof(this.indexed) === "boolean") { result.indexed = this.indexed; }
637
- if (this.isTuple()) {
638
- result.components = this.components.map((c) => JSON.parse(c.format(format)));
639
- }
640
- return JSON.stringify(result);
641
- }
642
-
643
- let result = "";
644
-
645
- // Array
646
- if (this.isArray()) {
647
- result += this.arrayChildren.format(format);
648
- result += `[${ (this.arrayLength < 0 ? "": String(this.arrayLength)) }]`;
649
- } else {
650
- if (this.isTuple()) {
651
- result += "(" + this.components.map(
652
- (comp) => comp.format(format)
653
- ).join((format === "full") ? ", ": ",") + ")";
654
- } else {
655
- result += this.type;
656
- }
657
- }
658
-
659
- if (format !== "sighash") {
660
- if (this.indexed === true) { result += " indexed"; }
661
- if (format === "full" && this.name) {
662
- result += " " + this.name;
663
- }
664
- }
665
-
666
- return result;
667
- }
668
-
669
- /**
670
- * Returns true if %%this%% is an Array type.
671
- *
672
- * This provides a type gaurd ensuring that [[arrayChildren]]
673
- * and [[arrayLength]] are non-null.
674
- */
675
- isArray(): this is (ParamType & { arrayChildren: ParamType, arrayLength: number }) {
676
- return (this.baseType === "array")
677
- }
678
-
679
- /**
680
- * Returns true if %%this%% is a Tuple type.
681
- *
682
- * This provides a type gaurd ensuring that [[components]]
683
- * is non-null.
684
- */
685
- isTuple(): this is (ParamType & { components: ReadonlyArray<ParamType> }) {
686
- return (this.baseType === "tuple");
687
- }
688
-
689
- /**
690
- * Returns true if %%this%% is an Indexable type.
691
- *
692
- * This provides a type gaurd ensuring that [[indexed]]
693
- * is non-null.
694
- */
695
- isIndexable(): this is (ParamType & { indexed: boolean }) {
696
- return (this.indexed != null);
697
- }
698
-
699
- /**
700
- * Walks the **ParamType** with %%value%%, calling %%process%%
701
- * on each type, destructing the %%value%% recursively.
702
- */
703
- walk(value: any, process: ParamTypeWalkFunc): any {
704
- if (this.isArray()) {
705
- if (!Array.isArray(value)) { throw new Error("invalid array value"); }
706
- if (this.arrayLength !== -1 && value.length !== this.arrayLength) {
707
- throw new Error("array is wrong length");
708
- }
709
- const _this = this;
710
- return value.map((v) => (_this.arrayChildren.walk(v, process)));
711
- }
712
-
713
- if (this.isTuple()) {
714
- if (!Array.isArray(value)) { throw new Error("invalid tuple value"); }
715
- if (value.length !== this.components.length) {
716
- throw new Error("array is wrong length");
717
- }
718
- const _this = this;
719
- return value.map((v, i) => (_this.components[i].walk(v, process)));
720
- }
721
-
722
- return process(this.type, value);
723
- }
724
-
725
- #walkAsync(promises: Array<Promise<void>>, value: any, process: ParamTypeWalkAsyncFunc, setValue: (value: any) => void): void {
726
-
727
- if (this.isArray()) {
728
- if (!Array.isArray(value)) { throw new Error("invalid array value"); }
729
- if (this.arrayLength !== -1 && value.length !== this.arrayLength) {
730
- throw new Error("array is wrong length");
731
- }
732
- const childType = this.arrayChildren;
733
-
734
- const result = value.slice();
735
- result.forEach((value, index) => {
736
- childType.#walkAsync(promises, value, process, (value: any) => {
737
- result[index] = value;
738
- });
739
- });
740
- setValue(result);
741
- return;
742
- }
743
-
744
- if (this.isTuple()) {
745
- const components = this.components;
746
-
747
- // Convert the object into an array
748
- let result: Array<any>;
749
- if (Array.isArray(value)) {
750
- result = value.slice();
751
-
752
- } else {
753
- if (value == null || typeof(value) !== "object") {
754
- throw new Error("invalid tuple value");
755
- }
756
-
757
- result = components.map((param) => {
758
- if (!param.name) { throw new Error("cannot use object value with unnamed components"); }
759
- if (!(param.name in value)) {
760
- throw new Error(`missing value for component ${ param.name }`);
761
- }
762
- return value[param.name];
763
- });
764
- }
765
-
766
- if (result.length !== this.components.length) {
767
- throw new Error("array is wrong length");
768
- }
769
-
770
- result.forEach((value, index) => {
771
- components[index].#walkAsync(promises, value, process, (value: any) => {
772
- result[index] = value;
773
- });
774
- });
775
- setValue(result);
776
- return;
777
- }
778
-
779
- const result = process(this.type, value);
780
- if (result.then) {
781
- promises.push((async function() { setValue(await result); })());
782
- } else {
783
- setValue(result);
784
- }
785
- }
786
-
787
- /**
788
- * Walks the **ParamType** with %%value%%, asynchronously calling
789
- * %%process%% on each type, destructing the %%value%% recursively.
790
- *
791
- * This can be used to resolve ENS names by walking and resolving each
792
- * ``"address"`` type.
793
- */
794
- async walkAsync(value: any, process: ParamTypeWalkAsyncFunc): Promise<any> {
795
- const promises: Array<Promise<void>> = [ ];
796
- const result: [ any ] = [ value ];
797
- this.#walkAsync(promises, value, process, (value: any) => {
798
- result[0] = value;
799
- });
800
- if (promises.length) { await Promise.all(promises); }
801
- return result[0];
802
- }
803
-
804
- /**
805
- * Creates a new **ParamType** for %%obj%%.
806
- *
807
- * If %%allowIndexed%% then the ``indexed`` keyword is permitted,
808
- * otherwise the ``indexed`` keyword will throw an error.
809
- */
810
- static from(obj: any, allowIndexed?: boolean): ParamType {
811
- if (ParamType.isParamType(obj)) { return obj; }
812
-
813
- if (typeof(obj) === "string") {
814
- try {
815
- return ParamType.from(lex(obj), allowIndexed);
816
- } catch (error) {
817
- assertArgument(false, "invalid param type", "obj", obj);
818
- }
819
-
820
- } else if (obj instanceof TokenString) {
821
- let type = "", baseType = "";
822
- let comps: null | Array<ParamType> = null;
823
-
824
- if (consumeKeywords(obj, setify([ "tuple" ])).has("tuple") || obj.peekType("OPEN_PAREN")) {
825
- // Tuple
826
- baseType = "tuple";
827
- comps = obj.popParams().map((t) => ParamType.from(t));
828
- type = `tuple(${ comps.map((c) => c.format()).join(",") })`;
829
- } else {
830
- // Normal
831
- type = verifyBasicType(obj.popType("TYPE"));
832
- baseType = type;
833
- }
834
-
835
- // Check for Array
836
- let arrayChildren: null | ParamType = null;
837
- let arrayLength: null | number = null;
838
-
839
- while (obj.length && obj.peekType("BRACKET")) {
840
- const bracket = obj.pop(); //arrays[i];
841
- arrayChildren = new ParamType(_guard, "", type, baseType, null, comps, arrayLength, arrayChildren);
842
- arrayLength = bracket.value;
843
- type += bracket.text;
844
- baseType = "array";
845
- comps = null;
846
- }
847
-
848
- let indexed: null | boolean = null;
849
- const keywords = consumeKeywords(obj, KwModifiers);
850
- if (keywords.has("indexed")) {
851
- if (!allowIndexed) { throw new Error(""); }
852
- indexed = true;
853
- }
854
-
855
- const name = (obj.peekType("ID") ? obj.pop().text: "");
856
-
857
- if (obj.length) { throw new Error("leftover tokens"); }
858
-
859
- return new ParamType(_guard, name, type, baseType, indexed, comps, arrayLength, arrayChildren);
860
- }
861
-
862
- const name = obj.name;
863
- assertArgument(!name || (typeof(name) === "string" && name.match(regexId)),
864
- "invalid name", "obj.name", name);
865
-
866
- let indexed = obj.indexed;
867
- if (indexed != null) {
868
- assertArgument(allowIndexed, "parameter cannot be indexed", "obj.indexed", obj.indexed);
869
- indexed = !!indexed;
870
- }
871
-
872
- let type = obj.type;
873
-
874
- let arrayMatch = type.match(regexArrayType);
875
- if (arrayMatch) {
876
- const arrayLength = parseInt(arrayMatch[2] || "-1");
877
- const arrayChildren = ParamType.from({
878
- type: arrayMatch[1],
879
- components: obj.components
880
- });
881
-
882
- return new ParamType(_guard, name || "", type, "array", indexed, null, arrayLength, arrayChildren);
883
- }
884
-
885
- if (type === "tuple" || type.startsWith("tuple("/* fix: ) */) || type.startsWith("(" /* fix: ) */)) {
886
- const comps = (obj.components != null) ? obj.components.map((c: any) => ParamType.from(c)): null;
887
- const tuple = new ParamType(_guard, name || "", type, "tuple", indexed, comps, null, null);
888
- // @TODO: use lexer to validate and normalize type
889
- return tuple;
890
- }
891
-
892
- type = verifyBasicType(obj.type);
893
-
894
- return new ParamType(_guard, name || "", type, type, indexed, null, null, null);
895
- }
896
-
897
- /**
898
- * Returns true if %%value%% is a **ParamType**.
899
- */
900
- static isParamType(value: any): value is ParamType {
901
- return (value && value[internal] === ParamTypeInternal);
902
- }
903
- }
904
-
905
- /**
906
- * The type of a [[Fragment]].
907
- */
908
- export type FragmentType = "constructor" | "error" | "event" | "fallback" | "function" | "struct";
909
-
910
- /**
911
- * An abstract class to represent An individual fragment from a parse ABI.
912
- */
913
- export abstract class Fragment {
914
- /**
915
- * The type of the fragment.
916
- */
917
- readonly type!: FragmentType;
918
-
919
- /**
920
- * The inputs for the fragment.
921
- */
922
- readonly inputs!: ReadonlyArray<ParamType>;
923
-
924
- /**
925
- * @private
926
- */
927
- constructor(guard: any, type: FragmentType, inputs: ReadonlyArray<ParamType>) {
928
- assertPrivate(guard, _guard, "Fragment");
929
- inputs = Object.freeze(inputs.slice());
930
- defineProperties<Fragment>(this, { type, inputs });
931
- }
932
-
933
- /**
934
- * Returns a string representation of this fragment as %%format%%.
935
- */
936
- abstract format(format?: FormatType): string;
937
-
938
- /**
939
- * Creates a new **Fragment** for %%obj%%, wich can be any supported
940
- * ABI frgament type.
941
- */
942
- static from(obj: any): Fragment {
943
- if (typeof(obj) === "string") {
944
-
945
- // Try parsing JSON...
946
- try {
947
- Fragment.from(JSON.parse(obj));
948
- } catch (e) { }
949
-
950
- // ...otherwise, use the human-readable lexer
951
- return Fragment.from(lex(obj));
952
- }
953
-
954
- if (obj instanceof TokenString) {
955
- // Human-readable ABI (already lexed)
956
-
957
- const type = obj.peekKeyword(KwTypes);
958
-
959
- switch (type) {
960
- case "constructor": return ConstructorFragment.from(obj);
961
- case "error": return ErrorFragment.from(obj);
962
- case "event": return EventFragment.from(obj);
963
- case "fallback": case "receive":
964
- return FallbackFragment.from(obj);
965
- case "function": return FunctionFragment.from(obj);
966
- case "struct": return StructFragment.from(obj);
967
- }
968
-
969
- } else if (typeof(obj) === "object") {
970
- // JSON ABI
971
-
972
- switch (obj.type) {
973
- case "constructor": return ConstructorFragment.from(obj);
974
- case "error": return ErrorFragment.from(obj);
975
- case "event": return EventFragment.from(obj);
976
- case "fallback": case "receive":
977
- return FallbackFragment.from(obj);
978
- case "function": return FunctionFragment.from(obj);
979
- case "struct": return StructFragment.from(obj);
980
- }
981
-
982
- assert(false, `unsupported type: ${ obj.type }`, "UNSUPPORTED_OPERATION", {
983
- operation: "Fragment.from"
984
- });
985
- }
986
-
987
- assertArgument(false, "unsupported frgament object", "obj", obj);
988
- }
989
-
990
- /**
991
- * Returns true if %%value%% is a [[ConstructorFragment]].
992
- */
993
- static isConstructor(value: any): value is ConstructorFragment {
994
- return ConstructorFragment.isFragment(value);
995
- }
996
-
997
- /**
998
- * Returns true if %%value%% is an [[ErrorFragment]].
999
- */
1000
- static isError(value: any): value is ErrorFragment {
1001
- return ErrorFragment.isFragment(value);
1002
- }
1003
-
1004
- /**
1005
- * Returns true if %%value%% is an [[EventFragment]].
1006
- */
1007
- static isEvent(value: any): value is EventFragment {
1008
- return EventFragment.isFragment(value);
1009
- }
1010
-
1011
- /**
1012
- * Returns true if %%value%% is a [[FunctionFragment]].
1013
- */
1014
- static isFunction(value: any): value is FunctionFragment {
1015
- return FunctionFragment.isFragment(value);
1016
- }
1017
-
1018
- /**
1019
- * Returns true if %%value%% is a [[StructFragment]].
1020
- */
1021
- static isStruct(value: any): value is StructFragment {
1022
- return StructFragment.isFragment(value);
1023
- }
1024
- }
1025
-
1026
- /**
1027
- * An abstract class to represent An individual fragment
1028
- * which has a name from a parse ABI.
1029
- */
1030
- export abstract class NamedFragment extends Fragment {
1031
- /**
1032
- * The name of the fragment.
1033
- */
1034
- readonly name!: string;
1035
-
1036
- /**
1037
- * @private
1038
- */
1039
- constructor(guard: any, type: FragmentType, name: string, inputs: ReadonlyArray<ParamType>) {
1040
- super(guard, type, inputs);
1041
- assertArgument(typeof(name) === "string" && name.match(regexId),
1042
- "invalid identifier", "name", name);
1043
- inputs = Object.freeze(inputs.slice());
1044
- defineProperties<NamedFragment>(this, { name });
1045
- }
1046
- }
1047
-
1048
- function joinParams(format: FormatType, params: ReadonlyArray<ParamType>): string {
1049
- return "(" + params.map((p) => p.format(format)).join((format === "full") ? ", ": ",") + ")";
1050
- }
1051
-
1052
- /**
1053
- * A Fragment which represents a //Custom Error//.
1054
- */
1055
- export class ErrorFragment extends NamedFragment {
1056
- /**
1057
- * @private
1058
- */
1059
- constructor(guard: any, name: string, inputs: ReadonlyArray<ParamType>) {
1060
- super(guard, "error", name, inputs);
1061
- Object.defineProperty(this, internal, { value: ErrorFragmentInternal });
1062
- }
1063
-
1064
- /**
1065
- * The Custom Error selector.
1066
- */
1067
- get selector(): string {
1068
- return id(this.format("sighash")).substring(0, 10);
1069
- }
1070
-
1071
- /**
1072
- * Returns a string representation of this fragment as %%format%%.
1073
- */
1074
- format(format?: FormatType): string {
1075
- if (format == null) { format = "sighash"; }
1076
- if (format === "json") {
1077
- return JSON.stringify({
1078
- type: "error",
1079
- name: this.name,
1080
- inputs: this.inputs.map((input) => JSON.parse(input.format(format))),
1081
- });
1082
- }
1083
-
1084
- const result: Array<string> = [ ];
1085
- if (format !== "sighash") { result.push("error"); }
1086
- result.push(this.name + joinParams(format, this.inputs));
1087
- return result.join(" ");
1088
- }
1089
-
1090
- /**
1091
- * Returns a new **ErrorFragment** for %%obj%%.
1092
- */
1093
- static from(obj: any): ErrorFragment {
1094
- if (ErrorFragment.isFragment(obj)) { return obj; }
1095
-
1096
- if (typeof(obj) === "string") {
1097
- return ErrorFragment.from(lex(obj));
1098
-
1099
- } else if (obj instanceof TokenString) {
1100
- const name = consumeName("error", obj);
1101
- const inputs = consumeParams(obj);
1102
- consumeEoi(obj);
1103
-
1104
- return new ErrorFragment(_guard, name, inputs);
1105
- }
1106
-
1107
- return new ErrorFragment(_guard, obj.name,
1108
- obj.inputs ? obj.inputs.map(ParamType.from): [ ]);
1109
- }
1110
-
1111
- /**
1112
- * Returns ``true`` and provides a type guard if %%value%% is an
1113
- * **ErrorFragment**.
1114
- */
1115
- static isFragment(value: any): value is ErrorFragment {
1116
- return (value && value[internal] === ErrorFragmentInternal);
1117
- }
1118
- }
1119
-
1120
- /**
1121
- * A Fragment which represents an Event.
1122
- */
1123
- export class EventFragment extends NamedFragment {
1124
- /**
1125
- * Whether this event is anonymous.
1126
- */
1127
- readonly anonymous!: boolean;
1128
-
1129
- /**
1130
- * @private
1131
- */
1132
- constructor(guard: any, name: string, inputs: ReadonlyArray<ParamType>, anonymous: boolean) {
1133
- super(guard, "event", name, inputs);
1134
- Object.defineProperty(this, internal, { value: EventFragmentInternal });
1135
- defineProperties<EventFragment>(this, { anonymous });
1136
- }
1137
-
1138
- /**
1139
- * The Event topic hash.
1140
- */
1141
- get topicHash(): string {
1142
- return id(this.format("sighash"));
1143
- }
1144
-
1145
- /**
1146
- * Returns a string representation of this event as %%format%%.
1147
- */
1148
- format(format?: FormatType): string {
1149
- if (format == null) { format = "sighash"; }
1150
- if (format === "json") {
1151
- return JSON.stringify({
1152
- type: "event",
1153
- anonymous: this.anonymous,
1154
- name: this.name,
1155
- inputs: this.inputs.map((i) => JSON.parse(i.format(format)))
1156
- });
1157
- }
1158
-
1159
- const result: Array<string> = [ ];
1160
- if (format !== "sighash") { result.push("event"); }
1161
- result.push(this.name + joinParams(format, this.inputs));
1162
- if (format !== "sighash" && this.anonymous) { result.push("anonymous"); }
1163
- return result.join(" ");
1164
- }
1165
-
1166
- /**
1167
- * Return the topic hash for an event with %%name%% and %%params%%.
1168
- */
1169
- static getTopicHash(name: string, params?: Array<any>): string {
1170
- params = (params || []).map((p) => ParamType.from(p));
1171
- const fragment = new EventFragment(_guard, name, params, false);
1172
- return fragment.topicHash;
1173
- }
1174
-
1175
- /**
1176
- * Returns a new **EventFragment** for %%obj%%.
1177
- */
1178
- static from(obj: any): EventFragment {
1179
- if (EventFragment.isFragment(obj)) { return obj; }
1180
-
1181
- if (typeof(obj) === "string") {
1182
- try {
1183
- return EventFragment.from(lex(obj));
1184
- } catch (error) {
1185
- assertArgument(false, "invalid event fragment", "obj", obj);
1186
- }
1187
-
1188
- } else if (obj instanceof TokenString) {
1189
- const name = consumeName("event", obj);
1190
- const inputs = consumeParams(obj, true);
1191
- const anonymous = !!consumeKeywords(obj, setify([ "anonymous" ])).has("anonymous");
1192
- consumeEoi(obj);
1193
-
1194
- return new EventFragment(_guard, name, inputs, anonymous);
1195
- }
1196
-
1197
- return new EventFragment(_guard, obj.name,
1198
- obj.inputs ? obj.inputs.map((p: any) => ParamType.from(p, true)): [ ], !!obj.anonymous);
1199
- }
1200
-
1201
- /**
1202
- * Returns ``true`` and provides a type guard if %%value%% is an
1203
- * **EventFragment**.
1204
- */
1205
- static isFragment(value: any): value is EventFragment {
1206
- return (value && value[internal] === EventFragmentInternal);
1207
- }
1208
- }
1209
-
1210
- /**
1211
- * A Fragment which represents a constructor.
1212
- */
1213
- export class ConstructorFragment extends Fragment {
1214
-
1215
- /**
1216
- * Whether the constructor can receive an endowment.
1217
- */
1218
- readonly payable!: boolean;
1219
-
1220
- /**
1221
- * The recommended gas limit for deployment or ``null``.
1222
- */
1223
- readonly gas!: null | bigint;
1224
-
1225
- /**
1226
- * @private
1227
- */
1228
- constructor(guard: any, type: FragmentType, inputs: ReadonlyArray<ParamType>, payable: boolean, gas: null | bigint) {
1229
- super(guard, type, inputs);
1230
- Object.defineProperty(this, internal, { value: ConstructorFragmentInternal });
1231
- defineProperties<ConstructorFragment>(this, { payable, gas });
1232
- }
1233
-
1234
- /**
1235
- * Returns a string representation of this constructor as %%format%%.
1236
- */
1237
- format(format?: FormatType): string {
1238
- assert(format != null && format !== "sighash", "cannot format a constructor for sighash",
1239
- "UNSUPPORTED_OPERATION", { operation: "format(sighash)" });
1240
-
1241
- if (format === "json") {
1242
- return JSON.stringify({
1243
- type: "constructor",
1244
- stateMutability: (this.payable ? "payable": "undefined"),
1245
- payable: this.payable,
1246
- gas: ((this.gas != null) ? this.gas: undefined),
1247
- inputs: this.inputs.map((i) => JSON.parse(i.format(format)))
1248
- });
1249
- }
1250
-
1251
- const result = [ `constructor${ joinParams(format, this.inputs) }` ];
1252
- if (this.payable) { result.push("payable"); }
1253
- if (this.gas != null) { result.push(`@${ this.gas.toString() }`); }
1254
- return result.join(" ");
1255
- }
1256
-
1257
- /**
1258
- * Returns a new **ConstructorFragment** for %%obj%%.
1259
- */
1260
- static from(obj: any): ConstructorFragment {
1261
- if (ConstructorFragment.isFragment(obj)) { return obj; }
1262
-
1263
- if (typeof(obj) === "string") {
1264
- try {
1265
- return ConstructorFragment.from(lex(obj));
1266
- } catch (error) {
1267
- assertArgument(false, "invalid constuctor fragment", "obj", obj);
1268
- }
1269
-
1270
- } else if (obj instanceof TokenString) {
1271
- consumeKeywords(obj, setify([ "constructor" ]));
1272
- const inputs = consumeParams(obj);
1273
- const payable = !!consumeKeywords(obj, KwVisibDeploy).has("payable");
1274
- const gas = consumeGas(obj);
1275
- consumeEoi(obj);
1276
-
1277
- return new ConstructorFragment(_guard, "constructor", inputs, payable, gas);
1278
- }
1279
-
1280
- return new ConstructorFragment(_guard, "constructor",
1281
- obj.inputs ? obj.inputs.map(ParamType.from): [ ],
1282
- !!obj.payable, (obj.gas != null) ? obj.gas: null);
1283
- }
1284
-
1285
- /**
1286
- * Returns ``true`` and provides a type guard if %%value%% is a
1287
- * **ConstructorFragment**.
1288
- */
1289
- static isFragment(value: any): value is ConstructorFragment {
1290
- return (value && value[internal] === ConstructorFragmentInternal);
1291
- }
1292
- }
1293
-
1294
- /**
1295
- * A Fragment which represents a method.
1296
- */
1297
- export class FallbackFragment extends Fragment {
1298
-
1299
- /**
1300
- * If the function can be sent value during invocation.
1301
- */
1302
- readonly payable!: boolean;
1303
-
1304
- constructor(guard: any, inputs: ReadonlyArray<ParamType>, payable: boolean) {
1305
- super(guard, "fallback", inputs);
1306
- Object.defineProperty(this, internal, { value: FallbackFragmentInternal });
1307
- defineProperties<FallbackFragment>(this, { payable });
1308
- }
1309
-
1310
- /**
1311
- * Returns a string representation of this fallback as %%format%%.
1312
- */
1313
- format(format?: FormatType): string {
1314
- const type = ((this.inputs.length === 0) ? "receive": "fallback");
1315
-
1316
- if (format === "json") {
1317
- const stateMutability = (this.payable ? "payable": "nonpayable");
1318
- return JSON.stringify({ type, stateMutability });
1319
- }
1320
-
1321
- return `${ type }()${ this.payable ? " payable": "" }`;
1322
- }
1323
-
1324
- /**
1325
- * Returns a new **FallbackFragment** for %%obj%%.
1326
- */
1327
- static from(obj: any): FallbackFragment {
1328
- if (FallbackFragment.isFragment(obj)) { return obj; }
1329
-
1330
- if (typeof(obj) === "string") {
1331
- try {
1332
- return FallbackFragment.from(lex(obj));
1333
- } catch (error) {
1334
- assertArgument(false, "invalid fallback fragment", "obj", obj);
1335
- }
1336
-
1337
- } else if (obj instanceof TokenString) {
1338
- const errorObj = obj.toString();
1339
-
1340
- const topIsValid = obj.peekKeyword(setify([ "fallback", "receive" ]));
1341
- assertArgument(topIsValid, "type must be fallback or receive", "obj", errorObj);
1342
-
1343
- const type = obj.popKeyword(setify([ "fallback", "receive" ]));
1344
-
1345
- // receive()
1346
- if (type === "receive") {
1347
- const inputs = consumeParams(obj);
1348
- assertArgument(inputs.length === 0, `receive cannot have arguments`, "obj.inputs", inputs);
1349
- consumeKeywords(obj, setify([ "payable" ]));
1350
- consumeEoi(obj);
1351
- return new FallbackFragment(_guard, [ ], true);
1352
- }
1353
-
1354
- // fallback() [payable]
1355
- // fallback(bytes) [payable] returns (bytes)
1356
- let inputs = consumeParams(obj);
1357
- if (inputs.length) {
1358
- assertArgument(inputs.length === 1 && inputs[0].type === "bytes",
1359
- "invalid fallback inputs", "obj.inputs",
1360
- inputs.map((i) => i.format("minimal")).join(", "));
1361
- } else {
1362
- inputs = [ ParamType.from("bytes") ];
1363
- }
1364
-
1365
- const mutability = consumeMutability(obj);
1366
- assertArgument(mutability === "nonpayable" || mutability === "payable", "fallback cannot be constants", "obj.stateMutability", mutability);
1367
-
1368
- if (consumeKeywords(obj, setify([ "returns" ])).has("returns")) {
1369
- const outputs = consumeParams(obj);
1370
- assertArgument(outputs.length === 1 && outputs[0].type === "bytes",
1371
- "invalid fallback outputs", "obj.outputs",
1372
- outputs.map((i) => i.format("minimal")).join(", "));
1373
- }
1374
-
1375
- consumeEoi(obj);
1376
-
1377
- return new FallbackFragment(_guard, inputs, mutability === "payable");
1378
- }
1379
-
1380
- if (obj.type === "receive") {
1381
- return new FallbackFragment(_guard, [ ], true);
1382
- }
1383
-
1384
- if (obj.type === "fallback") {
1385
- const inputs = [ ParamType.from("bytes") ];
1386
- const payable = (obj.stateMutability === "payable");
1387
- return new FallbackFragment(_guard, inputs, payable);
1388
- }
1389
-
1390
- assertArgument(false, "invalid fallback description", "obj", obj);
1391
- }
1392
-
1393
- /**
1394
- * Returns ``true`` and provides a type guard if %%value%% is a
1395
- * **FallbackFragment**.
1396
- */
1397
- static isFragment(value: any): value is FallbackFragment {
1398
- return (value && value[internal] === FallbackFragmentInternal);
1399
- }
1400
- }
1401
-
1402
-
1403
- /**
1404
- * A Fragment which represents a method.
1405
- */
1406
- export class FunctionFragment extends NamedFragment {
1407
- /**
1408
- * If the function is constant (e.g. ``pure`` or ``view`` functions).
1409
- */
1410
- readonly constant!: boolean;
1411
-
1412
- /**
1413
- * The returned types for the result of calling this function.
1414
- */
1415
- readonly outputs!: ReadonlyArray<ParamType>;
1416
-
1417
- /**
1418
- * The state mutability (e.g. ``payable``, ``nonpayable``, ``view``
1419
- * or ``pure``)
1420
- */
1421
- readonly stateMutability!: "payable" | "nonpayable" | "view" | "pure";
1422
-
1423
- /**
1424
- * If the function can be sent value during invocation.
1425
- */
1426
- readonly payable!: boolean;
1427
-
1428
- /**
1429
- * The recommended gas limit to send when calling this function.
1430
- */
1431
- readonly gas!: null | bigint;
1432
-
1433
- /**
1434
- * @private
1435
- */
1436
- constructor(guard: any, name: string, stateMutability: "payable" | "nonpayable" | "view" | "pure", inputs: ReadonlyArray<ParamType>, outputs: ReadonlyArray<ParamType>, gas: null | bigint) {
1437
- super(guard, "function", name, inputs);
1438
- Object.defineProperty(this, internal, { value: FunctionFragmentInternal });
1439
- outputs = Object.freeze(outputs.slice());
1440
- const constant = (stateMutability === "view" || stateMutability === "pure");
1441
- const payable = (stateMutability === "payable");
1442
- defineProperties<FunctionFragment>(this, { constant, gas, outputs, payable, stateMutability });
1443
- }
1444
-
1445
- /**
1446
- * The Function selector.
1447
- */
1448
- get selector(): string {
1449
- return id(this.format("sighash")).substring(0, 10);
1450
- }
1451
-
1452
- /**
1453
- * Returns a string representation of this function as %%format%%.
1454
- */
1455
- format(format?: FormatType): string {
1456
- if (format == null) { format = "sighash"; }
1457
- if (format === "json") {
1458
- return JSON.stringify({
1459
- type: "function",
1460
- name: this.name,
1461
- constant: this.constant,
1462
- stateMutability: ((this.stateMutability !== "nonpayable") ? this.stateMutability: undefined),
1463
- payable: this.payable,
1464
- gas: ((this.gas != null) ? this.gas: undefined),
1465
- inputs: this.inputs.map((i) => JSON.parse(i.format(format))),
1466
- outputs: this.outputs.map((o) => JSON.parse(o.format(format))),
1467
- });
1468
- }
1469
-
1470
- const result: Array<string> = [];
1471
-
1472
- if (format !== "sighash") { result.push("function"); }
1473
-
1474
- result.push(this.name + joinParams(format, this.inputs));
1475
-
1476
- if (format !== "sighash") {
1477
- if (this.stateMutability !== "nonpayable") {
1478
- result.push(this.stateMutability);
1479
- }
1480
-
1481
- if (this.outputs && this.outputs.length) {
1482
- result.push("returns");
1483
- result.push(joinParams(format, this.outputs));
1484
- }
1485
-
1486
- if (this.gas != null) { result.push(`@${ this.gas.toString() }`); }
1487
- }
1488
- return result.join(" ");
1489
- }
1490
-
1491
- /**
1492
- * Return the selector for a function with %%name%% and %%params%%.
1493
- */
1494
- static getSelector(name: string, params?: Array<any>): string {
1495
- params = (params || []).map((p) => ParamType.from(p));
1496
- const fragment = new FunctionFragment(_guard, name, "view", params, [ ], null);
1497
- return fragment.selector;
1498
- }
1499
-
1500
- /**
1501
- * Returns a new **FunctionFragment** for %%obj%%.
1502
- */
1503
- static from(obj: any): FunctionFragment {
1504
- if (FunctionFragment.isFragment(obj)) { return obj; }
1505
-
1506
- if (typeof(obj) === "string") {
1507
- try {
1508
- return FunctionFragment.from(lex(obj));
1509
- } catch (error) {
1510
- assertArgument(false, "invalid function fragment", "obj", obj);
1511
- }
1512
-
1513
- } else if (obj instanceof TokenString) {
1514
- const name = consumeName("function", obj);
1515
- const inputs = consumeParams(obj);
1516
- const mutability = consumeMutability(obj);
1517
-
1518
- let outputs: Array<ParamType> = [ ];
1519
- if (consumeKeywords(obj, setify([ "returns" ])).has("returns")) {
1520
- outputs = consumeParams(obj);
1521
- }
1522
-
1523
- const gas = consumeGas(obj);
1524
-
1525
- consumeEoi(obj);
1526
-
1527
- return new FunctionFragment(_guard, name, mutability, inputs, outputs, gas);
1528
- }
1529
-
1530
- let stateMutability = obj.stateMutability;
1531
-
1532
- // Use legacy Solidity ABI logic if stateMutability is missing
1533
- if (stateMutability == null) {
1534
- stateMutability = "payable";
1535
-
1536
- if (typeof(obj.constant) === "boolean") {
1537
- stateMutability = "view";
1538
- if (!obj.constant) {
1539
- stateMutability = "payable"
1540
- if (typeof(obj.payable) === "boolean" && !obj.payable) {
1541
- stateMutability = "nonpayable";
1542
- }
1543
- }
1544
- } else if (typeof(obj.payable) === "boolean" && !obj.payable) {
1545
- stateMutability = "nonpayable";
1546
- }
1547
- }
1548
-
1549
- // @TODO: verifyState for stateMutability (e.g. throw if
1550
- // payable: false but stateMutability is "nonpayable")
1551
-
1552
- return new FunctionFragment(_guard, obj.name, stateMutability,
1553
- obj.inputs ? obj.inputs.map(ParamType.from): [ ],
1554
- obj.outputs ? obj.outputs.map(ParamType.from): [ ],
1555
- (obj.gas != null) ? obj.gas: null);
1556
- }
1557
-
1558
- /**
1559
- * Returns ``true`` and provides a type guard if %%value%% is a
1560
- * **FunctionFragment**.
1561
- */
1562
- static isFragment(value: any): value is FunctionFragment {
1563
- return (value && value[internal] === FunctionFragmentInternal);
1564
- }
1565
- }
1566
-
1567
- /**
1568
- * A Fragment which represents a structure.
1569
- */
1570
- export class StructFragment extends NamedFragment {
1571
-
1572
- /**
1573
- * @private
1574
- */
1575
- constructor(guard: any, name: string, inputs: ReadonlyArray<ParamType>) {
1576
- super(guard, "struct", name, inputs);
1577
- Object.defineProperty(this, internal, { value: StructFragmentInternal });
1578
- }
1579
-
1580
- /**
1581
- * Returns a string representation of this struct as %%format%%.
1582
- */
1583
- format(): string {
1584
- throw new Error("@TODO");
1585
- }
1586
-
1587
- /**
1588
- * Returns a new **StructFragment** for %%obj%%.
1589
- */
1590
- static from(obj: any): StructFragment {
1591
- if (typeof(obj) === "string") {
1592
- try {
1593
- return StructFragment.from(lex(obj));
1594
- } catch (error) {
1595
- assertArgument(false, "invalid struct fragment", "obj", obj);
1596
- }
1597
-
1598
- } else if (obj instanceof TokenString) {
1599
- const name = consumeName("struct", obj);
1600
- const inputs = consumeParams(obj);
1601
- consumeEoi(obj);
1602
- return new StructFragment(_guard, name, inputs);
1603
- }
1604
-
1605
- return new StructFragment(_guard, obj.name, obj.inputs ? obj.inputs.map(ParamType.from): [ ]);
1606
- }
1607
-
1608
- // @TODO: fix this return type
1609
- /**
1610
- * Returns ``true`` and provides a type guard if %%value%% is a
1611
- * **StructFragment**.
1612
- */
1613
- static isFragment(value: any): value is FunctionFragment {
1614
- return (value && value[internal] === StructFragmentInternal);
1615
- }
1616
- }
1617
-