dequanto 0.0.1 → 0.1.3

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 (1265) hide show
  1. package/.circleci/config.yml +51 -0
  2. package/.github/workflows/npm-publish.yml +32 -0
  3. package/.vscode/settings.json +42 -11
  4. package/actions/chains.act.ts +136 -0
  5. package/actions/contracts.act.ts +178 -0
  6. package/actions/gen.act.ts +38 -38
  7. package/actions/logs.act.ts +7 -0
  8. package/actions/rpc.act.ts +918 -0
  9. package/actions/safe.act.ts +7 -0
  10. package/actions/tokens.act.ts +41 -12
  11. package/configs/defi.yml +28 -0
  12. package/configs/dequanto.yml +377 -51
  13. package/data/cex/eth.csv +356 -356
  14. package/data/chainlink/feeds.json +3674 -0
  15. package/data/chains/chains.json +972 -0
  16. package/data/evm/eventHashes.json +19314 -0
  17. package/data/evm/events.json +19314 -0
  18. package/data/evm/functionHashes.json +121138 -0
  19. package/data/evm/functions.json +121140 -0
  20. package/data/rpc/coregeth.json +1786 -0
  21. package/data/rpc/eth.json +5873 -0
  22. package/data/rpc/flashbots.json +662 -0
  23. package/data/rpc/metamask.json +3673 -0
  24. package/data/rpc/overrides.json +104 -0
  25. package/data/tokens/1inch.json +11107 -4733
  26. package/data/tokens/arbitrum.json +1 -1
  27. package/data/tokens/coingecko.json +118642 -0
  28. package/data/tokens/sushi.json +6067 -48632
  29. package/exports/core.lib.ts +103 -0
  30. package/hardhat.config.js +41 -1
  31. package/importmap.json +27 -0
  32. package/package-bundler.json +181 -0
  33. package/package.json +121 -49
  34. package/readme.md +22 -4
  35. package/src/ChainAccountService.ts +216 -0
  36. package/src/abi/$abiCoder.ts +62 -0
  37. package/src/abi/$rlp.ts +126 -0
  38. package/src/abi/Logger.ts +24 -0
  39. package/src/abi/_version.ts +1 -0
  40. package/src/abi/abi-coder-packed.ts +90 -0
  41. package/src/abi/abi-coder.ts +163 -0
  42. package/src/abi/coders/abstract-coder.ts +455 -0
  43. package/src/abi/coders/address.ts +39 -0
  44. package/src/abi/coders/anonymous.ts +29 -0
  45. package/src/abi/coders/array.ts +190 -0
  46. package/src/abi/coders/boolean.ts +25 -0
  47. package/src/abi/coders/bytes.ts +41 -0
  48. package/src/abi/coders/fixed-bytes.ts +36 -0
  49. package/src/abi/coders/null.ts +28 -0
  50. package/src/abi/coders/number.ts +59 -0
  51. package/src/abi/coders/string.ts +23 -0
  52. package/src/abi/coders/tuple.ts +61 -0
  53. package/src/abi/fragments.ts +1632 -0
  54. package/src/blocks/BlockDateResolver.ts +159 -149
  55. package/src/bridges/BridgeFactory.ts +16 -16
  56. package/src/bridges/hop/HopAddresses.ts +1 -1
  57. package/src/bridges/hop/HopBridge.ts +437 -430
  58. package/src/bridges/hop/contracts/gen.act.ts +51 -50
  59. package/src/bridges/models/IBridge.ts +44 -43
  60. package/src/chains/PlatformFactory.ts +46 -45
  61. package/src/chains/arbitrum/ArbTokenProvider.ts +39 -39
  62. package/src/chains/arbitrum/ArbWeb3Client.ts +21 -39
  63. package/src/chains/arbitrum/Arbiscan.ts +21 -24
  64. package/src/chains/arbitrum/TokensServiceArbitrum.ts +19 -0
  65. package/src/chains/boba/BobaWeb3Client.ts +21 -49
  66. package/src/chains/boba/Bobascan.ts +22 -25
  67. package/src/chains/xdai/XDaiWeb3Client.ts +56 -82
  68. package/src/chains/xdai/XDaiscan.ts +21 -24
  69. package/src/class/PackedRanges.ts +213 -0
  70. package/src/class/PromiseEvent.ts +21 -0
  71. package/src/class/SubjectKind.ts +5 -0
  72. package/src/class/SubjectStream.ts +137 -0
  73. package/src/class/Subscription.ts +7 -0
  74. package/src/clients/BscWeb3Client.ts +21 -38
  75. package/src/clients/ClientEventsStream.ts +95 -33
  76. package/src/clients/ClientPool.ts +616 -207
  77. package/src/clients/ClientPoolStats.ts +70 -64
  78. package/src/clients/EthWeb3Client.ts +23 -36
  79. package/src/clients/EvmWeb3Client.ts +26 -0
  80. package/src/clients/PolyWeb3Client.ts +42 -91
  81. package/src/clients/Web3BatchRequests.ts +119 -0
  82. package/src/clients/Web3Client.ts +700 -134
  83. package/src/clients/Web3ClientFactory.ts +31 -1
  84. package/src/clients/compatibility/Web3.ts +186 -0
  85. package/src/clients/debug/ClientDebugMethods.ts +100 -0
  86. package/src/clients/handlers/RateLimitGuard.ts +353 -0
  87. package/src/clients/interfaces/IWeb3Client.ts +63 -14
  88. package/src/clients/interfaces/IWeb3ClientStatus.ts +21 -23
  89. package/src/clients/interfaces/IWeb3EndpointOptions.ts +16 -9
  90. package/src/clients/model/ClientStatus.ts +6 -5
  91. package/src/clients/model/PromiEventWrap.ts +62 -61
  92. package/src/clients/model/SubscriptionWrap.ts +53 -53
  93. package/src/clients/utils/$web3Abi.ts +29 -0
  94. package/src/clients/utils/ClientEndpoints.ts +32 -26
  95. package/src/clients/utils/ClientErrorUtil.ts +29 -26
  96. package/src/clients/utils/TxFactory.ts +5 -17
  97. package/src/config/AConfigBase.ts +35 -0
  98. package/src/config/Config.ts +45 -0
  99. package/src/config/ConfigProvider.ts +4 -0
  100. package/src/config/ConfigProviderBrowser.ts +21 -0
  101. package/src/config/ConfigProviderIsoPlatform.ts +90 -0
  102. package/src/config/dequanto.d.ts +5 -0
  103. package/src/config/interface/IConfigData.ts +63 -0
  104. package/src/contracts/BscContract.ts +28 -28
  105. package/src/contracts/Contract.ts +120 -126
  106. package/src/contracts/ContractAbiProvider.ts +69 -0
  107. package/src/contracts/ContractBase.ts +496 -60
  108. package/src/contracts/ContractClassFactory.ts +114 -0
  109. package/src/contracts/ContractCreationResolver.ts +85 -0
  110. package/src/contracts/ContractProvider.ts +55 -55
  111. package/src/contracts/ContractReader.ts +339 -87
  112. package/src/contracts/ContractStorageReaderBase.ts +29 -0
  113. package/src/contracts/ContractStream.ts +34 -18
  114. package/src/contracts/ContractWriter.ts +139 -97
  115. package/src/contracts/EthContract.ts +29 -29
  116. package/src/contracts/TxContract.ts +39 -43
  117. package/src/contracts/deploy/ContractDeployer.ts +155 -0
  118. package/src/contracts/deploy/ContractDeployment.ts +53 -0
  119. package/src/contracts/deploy/ContractSource.ts +3 -0
  120. package/src/contracts/deploy/Deployments.ts +672 -0
  121. package/src/contracts/deploy/proxy/$proxyDeploy.ts +302 -0
  122. package/src/contracts/deploy/proxy/ProxyDeployment.ts +401 -0
  123. package/src/contracts/deploy/storage/DeploymentsStorage.ts +368 -0
  124. package/src/contracts/utils/AbiDeserializer.ts +111 -98
  125. package/src/contracts/utils/ContractBaseUtils.ts +105 -0
  126. package/src/contracts/utils/ConvertUtils.ts +16 -16
  127. package/src/contracts/utils/InputDataUtils.ts +32 -93
  128. package/src/contracts/utils/TypeUtils.ts +21 -21
  129. package/src/contracts/wrappers/FnRequestWrapper.ts +15 -0
  130. package/src/contracts/wrappers/FnSignedWrapper.ts +42 -0
  131. package/src/env/BigIntSerializer.ts +19 -18
  132. package/src/erc4337/Erc4337Factory.ts +54 -0
  133. package/src/erc4337/Erc4337Service.ts +219 -0
  134. package/src/erc4337/Erc4337TxWriter.ts +169 -0
  135. package/src/erc4337/models/Erc4337Abi.ts +7 -0
  136. package/src/erc4337/models/IErc4337Info.ts +8 -0
  137. package/src/erc4337/models/UserOperation.ts +18 -0
  138. package/src/erc4337/utils/$erc4337.ts +31 -0
  139. package/src/evm/EvmBytecode.ts +298 -0
  140. package/src/evm/OpcodesInfo.ts +211 -0
  141. package/src/evm/OpcodesWalker.ts +156 -0
  142. package/src/evm/Stack.ts +58 -0
  143. package/src/evm/functions/$opcodes.ts +122 -0
  144. package/src/evm/functions/opcodes.spec.ts +47 -0
  145. package/src/evm/interfaces/IJumps.ts +3 -0
  146. package/src/evm/interfaces/IMemory.ts +3 -0
  147. package/src/evm/interfaces/IOpcode.ts +11 -0
  148. package/src/evm/interfaces/IStorage.ts +3 -0
  149. package/src/evm/opcodes/add.ts +49 -0
  150. package/src/evm/opcodes/addmod.ts +19 -0
  151. package/src/evm/opcodes/address.ts +22 -0
  152. package/src/evm/opcodes/and.ts +58 -0
  153. package/src/evm/opcodes/balance.ts +25 -0
  154. package/src/evm/opcodes/blockhash.ts +25 -0
  155. package/src/evm/opcodes/byte.ts +34 -0
  156. package/src/evm/opcodes/call.ts +69 -0
  157. package/src/evm/opcodes/callcode.ts +69 -0
  158. package/src/evm/opcodes/calldatacopy.ts +36 -0
  159. package/src/evm/opcodes/calldataload.ts +40 -0
  160. package/src/evm/opcodes/calldatasize.ts +21 -0
  161. package/src/evm/opcodes/caller.ts +22 -0
  162. package/src/evm/opcodes/callvalue.ts +21 -0
  163. package/src/evm/opcodes/codecopy.ts +37 -0
  164. package/src/evm/opcodes/codesize.ts +21 -0
  165. package/src/evm/opcodes/coinbase.ts +21 -0
  166. package/src/evm/opcodes/create.ts +42 -0
  167. package/src/evm/opcodes/create2.ts +41 -0
  168. package/src/evm/opcodes/delegatecall.ts +63 -0
  169. package/src/evm/opcodes/difficulty.ts +21 -0
  170. package/src/evm/opcodes/div.ts +35 -0
  171. package/src/evm/opcodes/dup.ts +7 -0
  172. package/src/evm/opcodes/eq.ts +92 -0
  173. package/src/evm/opcodes/exp.ts +34 -0
  174. package/src/evm/opcodes/extcodecopy.ts +42 -0
  175. package/src/evm/opcodes/extcodehash.ts +25 -0
  176. package/src/evm/opcodes/extcodesize.ts +25 -0
  177. package/src/evm/opcodes/gas.ts +21 -0
  178. package/src/evm/opcodes/gaslimit.ts +21 -0
  179. package/src/evm/opcodes/gasprice.ts +21 -0
  180. package/src/evm/opcodes/gt.ts +39 -0
  181. package/src/evm/opcodes/invalid.ts +24 -0
  182. package/src/evm/opcodes/iszero.ts +48 -0
  183. package/src/evm/opcodes/jump.ts +66 -0
  184. package/src/evm/opcodes/jumpdest.ts +6 -0
  185. package/src/evm/opcodes/jumpi.ts +367 -0
  186. package/src/evm/opcodes/log.ts +89 -0
  187. package/src/evm/opcodes/lt.ts +39 -0
  188. package/src/evm/opcodes/mload.ts +30 -0
  189. package/src/evm/opcodes/mod.ts +33 -0
  190. package/src/evm/opcodes/msize.ts +21 -0
  191. package/src/evm/opcodes/mstore.ts +33 -0
  192. package/src/evm/opcodes/mul.ts +38 -0
  193. package/src/evm/opcodes/mulmod.ts +19 -0
  194. package/src/evm/opcodes/not.ts +30 -0
  195. package/src/evm/opcodes/number.ts +21 -0
  196. package/src/evm/opcodes/or.ts +33 -0
  197. package/src/evm/opcodes/origin.ts +21 -0
  198. package/src/evm/opcodes/pc.ts +7 -0
  199. package/src/evm/opcodes/pop.ts +6 -0
  200. package/src/evm/opcodes/push.ts +8 -0
  201. package/src/evm/opcodes/return.ts +78 -0
  202. package/src/evm/opcodes/returndatacopy.ts +37 -0
  203. package/src/evm/opcodes/returndatasize.ts +21 -0
  204. package/src/evm/opcodes/revert.ts +64 -0
  205. package/src/evm/opcodes/sar.ts +33 -0
  206. package/src/evm/opcodes/selfdestruct.ts +26 -0
  207. package/src/evm/opcodes/sha3.ts +63 -0
  208. package/src/evm/opcodes/shl.ts +42 -0
  209. package/src/evm/opcodes/shr.ts +33 -0
  210. package/src/evm/opcodes/signextend.ts +25 -0
  211. package/src/evm/opcodes/sload.ts +190 -0
  212. package/src/evm/opcodes/sstore.ts +259 -0
  213. package/src/evm/opcodes/staticcall.ts +63 -0
  214. package/src/evm/opcodes/stop.ts +22 -0
  215. package/src/evm/opcodes/sub.ts +33 -0
  216. package/src/evm/opcodes/swap.ts +7 -0
  217. package/src/evm/opcodes/timestamp.ts +21 -0
  218. package/src/evm/opcodes/xor.ts +33 -0
  219. package/src/evm/utils/$bytecode.ts +76 -0
  220. package/src/evm/utils/BigNumber.ts +9 -0
  221. package/src/evm/utils/hex.ts +37 -0
  222. package/src/evm/utils/opcodes.ts +213 -0
  223. package/src/evm/utils/stringify.ts +12 -0
  224. package/src/evm/utils/stringifyEvents.ts +37 -0
  225. package/src/evm/utils/stringifyFunctions.ts +41 -0
  226. package/src/evm/utils/stringifyInstructions.ts +38 -0
  227. package/src/evm/utils/stringifyMappings.ts +65 -0
  228. package/src/evm/utils/stringifyStructs.ts +16 -0
  229. package/src/evm/utils/stringifyVariables.ts +32 -0
  230. package/src/explorer/BlockChainExplorerFactory.ts +644 -0
  231. package/src/explorer/BlockChainExplorerProvider.ts +57 -0
  232. package/src/explorer/BlockChainExplorerStorage.ts +124 -0
  233. package/src/explorer/BlockNumberCache.ts +47 -0
  234. package/src/explorer/Bscscan.ts +24 -0
  235. package/src/explorer/ContractVerifier.ts +289 -0
  236. package/src/explorer/ContractVerifierHtml.ts +207 -0
  237. package/src/explorer/Etherscan.ts +37 -0
  238. package/src/explorer/Evmscan.ts +8 -0
  239. package/src/explorer/IAbiProvider.ts +5 -0
  240. package/src/explorer/IBlockChainExplorer.ts +69 -0
  241. package/src/explorer/Polyscan.ts +24 -0
  242. package/src/explorer/verifiers/FsHtmlVerifier.ts +195 -0
  243. package/src/explorer/verifiers/IVerifier.ts +14 -0
  244. package/src/flashbots/FlashbotWeb3Client.ts +24 -0
  245. package/src/flashbots/FlashbotsProvider.ts +163 -0
  246. package/src/gen/Ast.ts +12 -12
  247. package/src/gen/ContractStorageReaderTemplate.ts +18 -0
  248. package/src/gen/ContractTemplate.ts +134 -36
  249. package/src/gen/Generator.ts +414 -227
  250. package/src/gen/GeneratorFromAbi.ts +451 -128
  251. package/src/gen/GeneratorStorageReader.ts +114 -0
  252. package/src/gen/utils/$gen.ts +11 -0
  253. package/src/gen/utils/Str.ts +40 -0
  254. package/src/handlers/TokenHandler.ts +77 -78
  255. package/src/hardhat/HardhatProvider.ts +469 -0
  256. package/src/hardhat/HardhatWeb3Client.ts +66 -0
  257. package/src/indexer/BlocksTxIndexer.ts +116 -69
  258. package/src/indexer/EventsIndexer.ts +379 -0
  259. package/src/indexer/PendingTxIndexer.ts +123 -124
  260. package/src/indexer/handlers/BlocksWalker.ts +420 -390
  261. package/src/indexer/handlers/TxQueueLoader.ts +144 -143
  262. package/src/indexer/storage/FsEventsIndexerStore.ts +182 -0
  263. package/src/indexer/storage/FsEventsMetaStore.ts +65 -0
  264. package/src/indexer/storage/FsEventsStoreUtils.ts +43 -0
  265. package/src/indexer/storage/interfaces.ts +25 -0
  266. package/src/json/JsonArrayMultiStore.ts +219 -0
  267. package/src/json/JsonArrayStore.ts +193 -310
  268. package/src/json/JsonObjectStore.ts +78 -239
  269. package/src/json/JsonStoreFs.ts +187 -0
  270. package/src/loggers/ILogger.ts +6 -3
  271. package/src/loggers/LoggerService.ts +83 -39
  272. package/src/loggers/TxLoggerService.ts +144 -146
  273. package/src/models/IContractDetails.ts +10 -8
  274. package/src/models/IToken.ts +35 -11
  275. package/src/models/ITokenGlob.ts +14 -14
  276. package/src/models/ITransactionDetails.ts +10 -11
  277. package/src/models/TAccount.ts +53 -0
  278. package/src/models/TAddress.ts +2 -1
  279. package/src/models/TBufferLike.ts +2 -2
  280. package/src/models/TError.ts +4 -0
  281. package/src/models/TEth.ts +223 -0
  282. package/src/models/THex.ts +1 -1
  283. package/src/models/TPlatform.ts +16 -1
  284. package/src/models/TResult.ts +6 -6
  285. package/src/models/TTx.ts +42 -0
  286. package/src/ns/NameService.ts +54 -21
  287. package/src/ns/providers/ANsProvider.ts +110 -0
  288. package/src/ns/providers/EnsProvider.ts +109 -45
  289. package/src/ns/providers/INsProvider.ts +31 -6
  290. package/src/ns/providers/SpaceIdProvider.ts +17 -0
  291. package/src/ns/providers/UDProvider.ts +77 -49
  292. package/src/ns/utils/$ns.ts +27 -15
  293. package/src/prebuilt/1inch/OneInchRouterContract/OneInchRouterContract.ts +313 -0
  294. package/src/prebuilt/amm/AmmFactoryV2Contract/AmmFactoryV2Contract.ts +298 -0
  295. package/src/prebuilt/amm/AmmMasterChefV2Contract/AmmMasterChefV2Contract.ts +642 -0
  296. package/src/prebuilt/amm/AmmPairV2Contract/AmmPairV2Contract.ts +700 -0
  297. package/src/prebuilt/amm/AmmPairV3Contract/AmmPairV3Contract.ts +686 -0
  298. package/src/prebuilt/amm/AmmRouterV2Contract/AmmRouterV2Contract.ts +404 -0
  299. package/src/prebuilt/amm/AmmVaultV2Contract/AmmVaultV2Contract.ts +818 -0
  300. package/src/prebuilt/ens/EnsBaseRegistrar/EnsBaseRegistrar.ts +711 -0
  301. package/src/prebuilt/ens/EnsDnsRegistrar/EnsDnsRegistrar.ts +333 -0
  302. package/src/prebuilt/ens/EnsEthRegistrarController/EnsEthRegistrarController.ts +477 -0
  303. package/src/prebuilt/ens/EnsNameWrapper/EnsNameWrapper.ts +1003 -0
  304. package/src/prebuilt/ens/EnsPublicResolver/EnsPublicResolver.ts +873 -0
  305. package/src/prebuilt/ens/EnsRegistry/EnsRegistry.ts +415 -0
  306. package/src/prebuilt/ens/EnsReverseRegistrar/EnsReverseRegistrar.ts +407 -0
  307. package/src/prebuilt/erc4337/EntryPoint/EntryPoint.ts +640 -0
  308. package/src/prebuilt/erc4337/SimpleAccount/SimpleAccount.ts +501 -0
  309. package/src/prebuilt/erc4337/SimpleAccountFactory/SimpleAccountFactory.ts +184 -0
  310. package/src/prebuilt/openzeppelin/AccessControl.json +206 -0
  311. package/src/prebuilt/openzeppelin/AccessControl.ts +257 -0
  312. package/src/prebuilt/openzeppelin/AccessControlCrossChain.json +219 -0
  313. package/src/prebuilt/openzeppelin/AccessControlCrossChain.ts +266 -0
  314. package/src/prebuilt/openzeppelin/AccessControlDefaultAdminRules.json +391 -0
  315. package/src/prebuilt/openzeppelin/AccessControlDefaultAdminRules.ts +450 -0
  316. package/src/prebuilt/openzeppelin/AccessControlEnumerable.json +249 -0
  317. package/src/prebuilt/openzeppelin/AccessControlEnumerable.ts +275 -0
  318. package/src/prebuilt/openzeppelin/ConditionalEscrow.json +156 -0
  319. package/src/prebuilt/openzeppelin/ConditionalEscrow.ts +259 -0
  320. package/src/prebuilt/openzeppelin/CrossChainEnabledPolygonChild.json +30 -0
  321. package/src/prebuilt/openzeppelin/CrossChainEnabledPolygonChild.ts +150 -0
  322. package/src/prebuilt/openzeppelin/EIP712.json +67 -0
  323. package/src/prebuilt/openzeppelin/EIP712.ts +170 -0
  324. package/src/prebuilt/openzeppelin/ERC1155.json +325 -0
  325. package/src/prebuilt/openzeppelin/ERC1155.ts +291 -0
  326. package/src/prebuilt/openzeppelin/ERC1155Burnable.json +360 -0
  327. package/src/prebuilt/openzeppelin/ERC1155Burnable.ts +309 -0
  328. package/src/prebuilt/openzeppelin/ERC1155Holder.json +99 -0
  329. package/src/prebuilt/openzeppelin/ERC1155Holder.ts +163 -0
  330. package/src/prebuilt/openzeppelin/ERC1155Pausable.json +353 -0
  331. package/src/prebuilt/openzeppelin/ERC1155Pausable.ts +338 -0
  332. package/src/prebuilt/openzeppelin/ERC1155PresetMinterPauser.json +734 -0
  333. package/src/prebuilt/openzeppelin/ERC1155PresetMinterPauser.ts +567 -0
  334. package/src/prebuilt/openzeppelin/ERC1155Receiver.json +99 -0
  335. package/src/prebuilt/openzeppelin/ERC1155Receiver.ts +163 -0
  336. package/src/prebuilt/openzeppelin/ERC1155Supply.json +352 -0
  337. package/src/prebuilt/openzeppelin/ERC1155Supply.ts +305 -0
  338. package/src/prebuilt/openzeppelin/ERC1155URIStorage.json +314 -0
  339. package/src/prebuilt/openzeppelin/ERC1155URIStorage.ts +287 -0
  340. package/src/prebuilt/openzeppelin/ERC165.json +21 -0
  341. package/src/prebuilt/openzeppelin/ERC165.ts +143 -0
  342. package/src/prebuilt/openzeppelin/ERC165Storage.json +21 -0
  343. package/src/prebuilt/openzeppelin/ERC165Storage.ts +143 -0
  344. package/src/prebuilt/openzeppelin/ERC1820Implementer.json +26 -0
  345. package/src/prebuilt/openzeppelin/ERC1820Implementer.ts +143 -0
  346. package/src/prebuilt/openzeppelin/ERC20.json +288 -0
  347. package/src/prebuilt/openzeppelin/ERC20.ts +280 -0
  348. package/src/prebuilt/openzeppelin/ERC20Burnable.json +303 -0
  349. package/src/prebuilt/openzeppelin/ERC20Burnable.ts +298 -0
  350. package/src/prebuilt/openzeppelin/ERC20Capped.json +285 -0
  351. package/src/prebuilt/openzeppelin/ERC20Capped.ts +285 -0
  352. package/src/prebuilt/openzeppelin/ERC20FlashMint.json +349 -0
  353. package/src/prebuilt/openzeppelin/ERC20FlashMint.ts +305 -0
  354. package/src/prebuilt/openzeppelin/ERC20Pausable.json +311 -0
  355. package/src/prebuilt/openzeppelin/ERC20Pausable.ts +327 -0
  356. package/src/prebuilt/openzeppelin/ERC20Permit.json +412 -0
  357. package/src/prebuilt/openzeppelin/ERC20Permit.ts +348 -0
  358. package/src/prebuilt/openzeppelin/ERC20PresetFixedSupply.json +329 -0
  359. package/src/prebuilt/openzeppelin/ERC20PresetFixedSupply.ts +302 -0
  360. package/src/prebuilt/openzeppelin/ERC20PresetMinterPauser.json +663 -0
  361. package/src/prebuilt/openzeppelin/ERC20PresetMinterPauser.ts +554 -0
  362. package/src/prebuilt/openzeppelin/ERC20Snapshot.json +328 -0
  363. package/src/prebuilt/openzeppelin/ERC20Snapshot.ts +315 -0
  364. package/src/prebuilt/openzeppelin/ERC20Votes.json +675 -0
  365. package/src/prebuilt/openzeppelin/ERC20Votes.ts +484 -0
  366. package/src/prebuilt/openzeppelin/ERC20VotesComp.json +718 -0
  367. package/src/prebuilt/openzeppelin/ERC20VotesComp.ts +502 -0
  368. package/src/prebuilt/openzeppelin/ERC20Wrapper.json +333 -0
  369. package/src/prebuilt/openzeppelin/ERC20Wrapper.ts +307 -0
  370. package/src/prebuilt/openzeppelin/ERC2771Context.json +21 -0
  371. package/src/prebuilt/openzeppelin/ERC2771Context.ts +143 -0
  372. package/src/prebuilt/openzeppelin/ERC2981.json +50 -0
  373. package/src/prebuilt/openzeppelin/ERC2981.ts +152 -0
  374. package/src/prebuilt/openzeppelin/ERC4626.json +662 -0
  375. package/src/prebuilt/openzeppelin/ERC4626.ts +470 -0
  376. package/src/prebuilt/openzeppelin/ERC721.json +348 -0
  377. package/src/prebuilt/openzeppelin/ERC721.ts +314 -0
  378. package/src/prebuilt/openzeppelin/ERC721Burnable.json +345 -0
  379. package/src/prebuilt/openzeppelin/ERC721Burnable.ts +321 -0
  380. package/src/prebuilt/openzeppelin/ERC721Consecutive.json +363 -0
  381. package/src/prebuilt/openzeppelin/ERC721Consecutive.ts +331 -0
  382. package/src/prebuilt/openzeppelin/ERC721Enumerable.json +388 -0
  383. package/src/prebuilt/openzeppelin/ERC721Enumerable.ts +337 -0
  384. package/src/prebuilt/openzeppelin/ERC721Holder.json +36 -0
  385. package/src/prebuilt/openzeppelin/ERC721Holder.ts +143 -0
  386. package/src/prebuilt/openzeppelin/ERC721Pausable.json +371 -0
  387. package/src/prebuilt/openzeppelin/ERC721Pausable.ts +361 -0
  388. package/src/prebuilt/openzeppelin/ERC721PresetMinterPauserAutoId.json +742 -0
  389. package/src/prebuilt/openzeppelin/ERC721PresetMinterPauserAutoId.ts +595 -0
  390. package/src/prebuilt/openzeppelin/ERC721Royalty.json +361 -0
  391. package/src/prebuilt/openzeppelin/ERC721Royalty.ts +319 -0
  392. package/src/prebuilt/openzeppelin/ERC721URIStorage.json +364 -0
  393. package/src/prebuilt/openzeppelin/ERC721URIStorage.ts +352 -0
  394. package/src/prebuilt/openzeppelin/ERC721Votes.json +637 -0
  395. package/src/prebuilt/openzeppelin/ERC721Votes.ts +489 -0
  396. package/src/prebuilt/openzeppelin/ERC721Wrapper.json +427 -0
  397. package/src/prebuilt/openzeppelin/ERC721Wrapper.ts +352 -0
  398. package/src/prebuilt/openzeppelin/ERC777.json +578 -0
  399. package/src/prebuilt/openzeppelin/ERC777.ts +456 -0
  400. package/src/prebuilt/openzeppelin/ERC777PresetFixedSupply.json +588 -0
  401. package/src/prebuilt/openzeppelin/ERC777PresetFixedSupply.ts +456 -0
  402. package/src/prebuilt/openzeppelin/Escrow.json +137 -0
  403. package/src/prebuilt/openzeppelin/Escrow.ts +250 -0
  404. package/src/prebuilt/openzeppelin/Governor.json +1010 -0
  405. package/src/prebuilt/openzeppelin/Governor.ts +590 -0
  406. package/src/prebuilt/openzeppelin/GovernorCompatibilityBravo.json +1325 -0
  407. package/src/prebuilt/openzeppelin/GovernorCompatibilityBravo.ts +700 -0
  408. package/src/prebuilt/openzeppelin/GovernorCountingSimple.json +1039 -0
  409. package/src/prebuilt/openzeppelin/GovernorCountingSimple.ts +599 -0
  410. package/src/prebuilt/openzeppelin/GovernorPreventLateQuorum.json +1074 -0
  411. package/src/prebuilt/openzeppelin/GovernorPreventLateQuorum.ts +652 -0
  412. package/src/prebuilt/openzeppelin/GovernorProposalThreshold.json +1010 -0
  413. package/src/prebuilt/openzeppelin/GovernorProposalThreshold.ts +590 -0
  414. package/src/prebuilt/openzeppelin/GovernorSettings.json +1106 -0
  415. package/src/prebuilt/openzeppelin/GovernorSettings.ts +686 -0
  416. package/src/prebuilt/openzeppelin/GovernorTimelockCompound.json +1134 -0
  417. package/src/prebuilt/openzeppelin/GovernorTimelockCompound.ts +683 -0
  418. package/src/prebuilt/openzeppelin/GovernorTimelockControl.json +1127 -0
  419. package/src/prebuilt/openzeppelin/GovernorTimelockControl.ts +672 -0
  420. package/src/prebuilt/openzeppelin/GovernorVotes.json +1023 -0
  421. package/src/prebuilt/openzeppelin/GovernorVotes.ts +599 -0
  422. package/src/prebuilt/openzeppelin/GovernorVotesComp.json +1023 -0
  423. package/src/prebuilt/openzeppelin/GovernorVotesComp.ts +599 -0
  424. package/src/prebuilt/openzeppelin/GovernorVotesQuorumFraction.json +1100 -0
  425. package/src/prebuilt/openzeppelin/GovernorVotesQuorumFraction.ts +653 -0
  426. package/src/prebuilt/openzeppelin/IAMB.json +327 -0
  427. package/src/prebuilt/openzeppelin/IAMB.ts +330 -0
  428. package/src/prebuilt/openzeppelin/IAccessControl.json +174 -0
  429. package/src/prebuilt/openzeppelin/IAccessControl.ts +239 -0
  430. package/src/prebuilt/openzeppelin/IAccessControlDefaultAdminRules.json +346 -0
  431. package/src/prebuilt/openzeppelin/IAccessControlDefaultAdminRules.ts +423 -0
  432. package/src/prebuilt/openzeppelin/IAccessControlEnumerable.json +217 -0
  433. package/src/prebuilt/openzeppelin/IAccessControlEnumerable.ts +257 -0
  434. package/src/prebuilt/openzeppelin/IArbSys.json +355 -0
  435. package/src/prebuilt/openzeppelin/IArbSys.ts +300 -0
  436. package/src/prebuilt/openzeppelin/IBeacon.json +15 -0
  437. package/src/prebuilt/openzeppelin/IBeacon.ts +143 -0
  438. package/src/prebuilt/openzeppelin/IBridge.json +529 -0
  439. package/src/prebuilt/openzeppelin/IBridge.ts +430 -0
  440. package/src/prebuilt/openzeppelin/ICompoundTimelock.json +415 -0
  441. package/src/prebuilt/openzeppelin/ICompoundTimelock.ts +380 -0
  442. package/src/prebuilt/openzeppelin/ICrossDomainMessenger.json +101 -0
  443. package/src/prebuilt/openzeppelin/ICrossDomainMessenger.ts +208 -0
  444. package/src/prebuilt/openzeppelin/IERC1155.json +295 -0
  445. package/src/prebuilt/openzeppelin/IERC1155.ts +278 -0
  446. package/src/prebuilt/openzeppelin/IERC1155MetadataURI.json +314 -0
  447. package/src/prebuilt/openzeppelin/IERC1155MetadataURI.ts +287 -0
  448. package/src/prebuilt/openzeppelin/IERC1155Receiver.json +99 -0
  449. package/src/prebuilt/openzeppelin/IERC1155Receiver.ts +163 -0
  450. package/src/prebuilt/openzeppelin/IERC1271.json +26 -0
  451. package/src/prebuilt/openzeppelin/IERC1271.ts +143 -0
  452. package/src/prebuilt/openzeppelin/IERC1363.json +373 -0
  453. package/src/prebuilt/openzeppelin/IERC1363.ts +287 -0
  454. package/src/prebuilt/openzeppelin/IERC1363Receiver.json +36 -0
  455. package/src/prebuilt/openzeppelin/IERC1363Receiver.ts +143 -0
  456. package/src/prebuilt/openzeppelin/IERC1363Spender.json +31 -0
  457. package/src/prebuilt/openzeppelin/IERC1363Spender.ts +143 -0
  458. package/src/prebuilt/openzeppelin/IERC165.json +21 -0
  459. package/src/prebuilt/openzeppelin/IERC165.ts +143 -0
  460. package/src/prebuilt/openzeppelin/IERC1820Implementer.json +26 -0
  461. package/src/prebuilt/openzeppelin/IERC1820Implementer.ts +143 -0
  462. package/src/prebuilt/openzeppelin/IERC1820Registry.json +215 -0
  463. package/src/prebuilt/openzeppelin/IERC1820Registry.ts +245 -0
  464. package/src/prebuilt/openzeppelin/IERC1822Proxiable.json +15 -0
  465. package/src/prebuilt/openzeppelin/IERC1822Proxiable.ts +143 -0
  466. package/src/prebuilt/openzeppelin/IERC20.json +185 -0
  467. package/src/prebuilt/openzeppelin/IERC20.ts +227 -0
  468. package/src/prebuilt/openzeppelin/IERC20Metadata.json +224 -0
  469. package/src/prebuilt/openzeppelin/IERC20Metadata.ts +254 -0
  470. package/src/prebuilt/openzeppelin/IERC20Permit.json +77 -0
  471. package/src/prebuilt/openzeppelin/IERC20Permit.ts +161 -0
  472. package/src/prebuilt/openzeppelin/IERC2612.json +77 -0
  473. package/src/prebuilt/openzeppelin/IERC2612.ts +161 -0
  474. package/src/prebuilt/openzeppelin/IERC2981.json +50 -0
  475. package/src/prebuilt/openzeppelin/IERC2981.ts +152 -0
  476. package/src/prebuilt/openzeppelin/IERC3156FlashBorrower.json +41 -0
  477. package/src/prebuilt/openzeppelin/IERC3156FlashBorrower.ts +143 -0
  478. package/src/prebuilt/openzeppelin/IERC3156FlashLender.json +79 -0
  479. package/src/prebuilt/openzeppelin/IERC3156FlashLender.ts +161 -0
  480. package/src/prebuilt/openzeppelin/IERC4626.json +614 -0
  481. package/src/prebuilt/openzeppelin/IERC4626.ts +448 -0
  482. package/src/prebuilt/openzeppelin/IERC4906.json +319 -0
  483. package/src/prebuilt/openzeppelin/IERC4906.ts +325 -0
  484. package/src/prebuilt/openzeppelin/IERC5267.json +51 -0
  485. package/src/prebuilt/openzeppelin/IERC5267.ts +157 -0
  486. package/src/prebuilt/openzeppelin/IERC5313.json +15 -0
  487. package/src/prebuilt/openzeppelin/IERC5313.ts +143 -0
  488. package/src/prebuilt/openzeppelin/IERC5805.json +210 -0
  489. package/src/prebuilt/openzeppelin/IERC5805.ts +243 -0
  490. package/src/prebuilt/openzeppelin/IERC6372.json +28 -0
  491. package/src/prebuilt/openzeppelin/IERC6372.ts +152 -0
  492. package/src/prebuilt/openzeppelin/IERC721.json +287 -0
  493. package/src/prebuilt/openzeppelin/IERC721.ts +283 -0
  494. package/src/prebuilt/openzeppelin/IERC721Enumerable.json +343 -0
  495. package/src/prebuilt/openzeppelin/IERC721Enumerable.ts +310 -0
  496. package/src/prebuilt/openzeppelin/IERC721Metadata.json +332 -0
  497. package/src/prebuilt/openzeppelin/IERC721Metadata.ts +310 -0
  498. package/src/prebuilt/openzeppelin/IERC721Receiver.json +36 -0
  499. package/src/prebuilt/openzeppelin/IERC721Receiver.ts +143 -0
  500. package/src/prebuilt/openzeppelin/IERC777.json +393 -0
  501. package/src/prebuilt/openzeppelin/IERC777.ts +359 -0
  502. package/src/prebuilt/openzeppelin/IERC777Recipient.json +40 -0
  503. package/src/prebuilt/openzeppelin/IERC777Recipient.ts +143 -0
  504. package/src/prebuilt/openzeppelin/IERC777Sender.json +40 -0
  505. package/src/prebuilt/openzeppelin/IERC777Sender.ts +143 -0
  506. package/src/prebuilt/openzeppelin/IFxMessageProcessor.json +25 -0
  507. package/src/prebuilt/openzeppelin/IFxMessageProcessor.ts +143 -0
  508. package/src/prebuilt/openzeppelin/IGovernor.json +762 -0
  509. package/src/prebuilt/openzeppelin/IGovernor.ts +471 -0
  510. package/src/prebuilt/openzeppelin/IGovernorCompatibilityBravo.json +992 -0
  511. package/src/prebuilt/openzeppelin/IGovernorCompatibilityBravo.ts +536 -0
  512. package/src/prebuilt/openzeppelin/IGovernorTimelock.json +847 -0
  513. package/src/prebuilt/openzeppelin/IGovernorTimelock.ts +521 -0
  514. package/src/prebuilt/openzeppelin/IInbox.json +444 -0
  515. package/src/prebuilt/openzeppelin/IInbox.ts +337 -0
  516. package/src/prebuilt/openzeppelin/IOutbox.json +410 -0
  517. package/src/prebuilt/openzeppelin/IOutbox.ts +317 -0
  518. package/src/prebuilt/openzeppelin/ITransparentUpgradeableProxy.json +117 -0
  519. package/src/prebuilt/openzeppelin/ITransparentUpgradeableProxy.ts +239 -0
  520. package/src/prebuilt/openzeppelin/IVotes.json +184 -0
  521. package/src/prebuilt/openzeppelin/IVotes.ts +225 -0
  522. package/src/prebuilt/openzeppelin/LibArbitrumL2.json +15 -0
  523. package/src/prebuilt/openzeppelin/LibArbitrumL2.ts +143 -0
  524. package/src/prebuilt/openzeppelin/MinimalForwarder.json +208 -0
  525. package/src/prebuilt/openzeppelin/MinimalForwarder.ts +201 -0
  526. package/src/prebuilt/openzeppelin/Multicall.json +21 -0
  527. package/src/prebuilt/openzeppelin/Multicall.ts +143 -0
  528. package/src/prebuilt/openzeppelin/Ownable.json +54 -0
  529. package/src/prebuilt/openzeppelin/Ownable.ts +177 -0
  530. package/src/prebuilt/openzeppelin/Ownable2Step.json +93 -0
  531. package/src/prebuilt/openzeppelin/Ownable2Step.ts +218 -0
  532. package/src/prebuilt/openzeppelin/Pausable.json +41 -0
  533. package/src/prebuilt/openzeppelin/Pausable.ts +178 -0
  534. package/src/prebuilt/openzeppelin/PaymentSplitter.json +304 -0
  535. package/src/prebuilt/openzeppelin/PaymentSplitter.ts +296 -0
  536. package/src/prebuilt/openzeppelin/ProxyAdmin.json +151 -0
  537. package/src/prebuilt/openzeppelin/ProxyAdmin.ts +228 -0
  538. package/src/prebuilt/openzeppelin/PullPayment.json +34 -0
  539. package/src/prebuilt/openzeppelin/PullPayment.ts +152 -0
  540. package/src/prebuilt/openzeppelin/RefundEscrow.json +226 -0
  541. package/src/prebuilt/openzeppelin/RefundEscrow.ts +356 -0
  542. package/src/prebuilt/openzeppelin/TimelockController.json +891 -0
  543. package/src/prebuilt/openzeppelin/TimelockController.ts +573 -0
  544. package/src/prebuilt/openzeppelin/TokenTimelock.json +69 -0
  545. package/src/prebuilt/openzeppelin/TokenTimelock.ts +174 -0
  546. package/src/prebuilt/openzeppelin/UUPSUpgradeable.json +91 -0
  547. package/src/prebuilt/openzeppelin/UUPSUpgradeable.ts +219 -0
  548. package/src/prebuilt/openzeppelin/UpgradeableBeacon.json +104 -0
  549. package/src/prebuilt/openzeppelin/UpgradeableBeacon.ts +222 -0
  550. package/src/prebuilt/openzeppelin/VestingWallet.json +225 -0
  551. package/src/prebuilt/openzeppelin/VestingWallet.ts +254 -0
  552. package/src/prebuilt/openzeppelin/Votes.json +307 -0
  553. package/src/prebuilt/openzeppelin/Votes.ts +304 -0
  554. package/src/prebuilt/openzeppelin/compiled/TransparentUpgradeableProxy/TransparentUpgradeableProxy.ts +214 -0
  555. package/src/prebuilt/safe/CreateCall.ts +168 -0
  556. package/src/prebuilt/safe/GnosisSafe.ts +683 -0
  557. package/src/prebuilt/safe/MultiSend.ts +147 -0
  558. package/src/prebuilt/safe/Safe.ts +742 -0
  559. package/src/prebuilt/safe/SafeL2.ts +780 -0
  560. package/src/prebuilt/safe/SafeProxyFactory.ts +197 -0
  561. package/src/prebuilt/weth/WETH/WETH.ts +390 -0
  562. package/src/rpc/$rpc.ts +124 -0
  563. package/src/rpc/Rpc.ts +3010 -0
  564. package/src/rpc/RpcBase.ts +154 -0
  565. package/src/rpc/RpcContract.ts +179 -0
  566. package/src/rpc/RpcError.ts +41 -0
  567. package/src/rpc/RpcFunction.ts +42 -0
  568. package/src/rpc/RpcHandler.ts +3 -0
  569. package/src/rpc/RpcModelMiddleware.ts +110 -0
  570. package/src/rpc/RpcSubscription.ts +46 -0
  571. package/src/rpc/transports/HttpTransport.ts +54 -0
  572. package/src/rpc/transports/ITransport.ts +87 -0
  573. package/src/rpc/transports/MessageBasedTransport.ts +133 -0
  574. package/src/rpc/transports/RpcTransport.ts +66 -0
  575. package/src/rpc/transports/WsTransport.ts +87 -0
  576. package/src/rpc/transports/WsTransportIsomorphic.ts +26 -0
  577. package/src/rpc/transports/compatibility/EIP1193Transport.ts +38 -0
  578. package/src/rpc/transports/compatibility/Web3Transport.ts +35 -0
  579. package/src/safe/$gnosis.ts +7 -0
  580. package/src/safe/GnosisSafeFactory.ts +104 -0
  581. package/src/safe/GnosisSafeHandler.ts +472 -0
  582. package/src/safe/GnosisSafeService.ts +86 -0
  583. package/src/safe/SafeTx.ts +93 -0
  584. package/src/safe/abi/GnosisSafe.json +979 -0
  585. package/src/safe/abi/v1_4_1/CreateCall.json +68 -0
  586. package/src/safe/abi/v1_4_1/MultiSend.json +20 -0
  587. package/src/safe/abi/v1_4_1/Safe.json +999 -0
  588. package/src/safe/abi/v1_4_1/SafeL2.json +1104 -0
  589. package/src/safe/abi/v1_4_1/SafeProxyFactory.json +139 -0
  590. package/src/safe/transport/FileServiceTransport.ts +109 -0
  591. package/src/safe/transport/ISafeServiceTransport.ts +20 -0
  592. package/src/safe/transport/InMemoryServiceTransport.ts +84 -0
  593. package/src/safe/transport/SafeServiceTransport.ts +148 -0
  594. package/src/safe/types/SafeServiceTypes.ts +326 -0
  595. package/src/services/TimelockService.ts +666 -0
  596. package/src/solidity/SlotsDump.ts +245 -0
  597. package/src/solidity/SlotsParser/Ast.ts +601 -0
  598. package/src/solidity/SlotsParser/MappingSettersResolver.ts +681 -0
  599. package/src/solidity/SlotsParser/SourceFile.ts +240 -0
  600. package/src/solidity/SlotsParser/models.ts +32 -0
  601. package/src/solidity/SlotsParser.ts +497 -0
  602. package/src/solidity/SlotsStorage.ts +209 -0
  603. package/src/solidity/SolidityParser.ts +108 -0
  604. package/src/solidity/SourceCodeProvider.ts +83 -0
  605. package/src/solidity/storage/Accessor.spec.ts +45 -0
  606. package/src/solidity/storage/Accessor.ts +136 -0
  607. package/src/solidity/storage/MappingKeysLoader.ts +112 -0
  608. package/src/solidity/storage/SlotDynamicArray.ts +46 -0
  609. package/src/solidity/storage/SlotFixedArray.ts +31 -0
  610. package/src/solidity/storage/SlotsStorageHandler.ts +18 -0
  611. package/src/solidity/storage/SlotsStorageTransport.ts +215 -0
  612. package/src/solidity/storage/handlers/SlotBytesHandler.ts +135 -0
  613. package/src/solidity/storage/handlers/SlotDynamicArrayHandler.ts +58 -0
  614. package/src/solidity/storage/handlers/SlotFixedArrayHandler.ts +58 -0
  615. package/src/solidity/storage/handlers/SlotMappingHandler.ts +75 -0
  616. package/src/solidity/storage/handlers/SlotStringHandler.ts +27 -0
  617. package/src/solidity/storage/handlers/SlotStructHandler.ts +47 -0
  618. package/src/solidity/storage/handlers/SlotValueConstantHandler.ts +30 -0
  619. package/src/solidity/storage/handlers/SlotValueHandler.ts +36 -0
  620. package/src/solidity/storage/handlers/SlotValueImmutableHandler.ts +49 -0
  621. package/src/solidity/utils/$str.ts +73 -0
  622. package/src/solidity/utils/$types.ts +61 -0
  623. package/src/tokens/TokenDataProvider.ts +284 -0
  624. package/src/tokens/TokenExchangeService.ts +129 -126
  625. package/src/tokens/TokenExchanges/AmmBase/AmmUtilts.ts +16 -16
  626. package/src/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Service.ts +228 -208
  627. package/src/tokens/TokenExchanges/AmmV2ExchangeBase.ts +242 -242
  628. package/src/tokens/TokenExchanges/AmmV2PriceQuote.ts +433 -0
  629. package/src/tokens/TokenExchanges/OneInchExchange.ts +114 -111
  630. package/src/tokens/TokenExchanges/PancakeswapExchange.ts +25 -30
  631. package/src/tokens/TokenExchanges/SushiswapPolygonExchange.ts +33 -30
  632. package/src/tokens/TokenExchanges/UniswapV2Exchange.ts +28 -0
  633. package/src/tokens/TokenOracles/IOracle.ts +36 -0
  634. package/src/tokens/TokenOracles/TokenPriceStore.ts +130 -129
  635. package/src/tokens/TokenOracles/amm/AmmV1Oracle.ts +219 -0
  636. package/src/tokens/TokenOracles/amm/AmmV2Oracle.ts +57 -0
  637. package/src/tokens/TokenOracles/chainlink/ChainlinkFeedProvider.ts +133 -0
  638. package/src/tokens/TokenOracles/chainlink/ChainlinkOracle.ts +135 -0
  639. package/src/tokens/TokenOracles/coingecko/CoingeckoOracle.ts +121 -0
  640. package/src/tokens/TokenOracles/coingecko/CoingeckoTokenProvider.ts +51 -0
  641. package/src/tokens/TokenPriceService.ts +273 -276
  642. package/src/tokens/TokenPriceServiceProvider.ts +36 -36
  643. package/src/tokens/TokenProviders/ITokenProvider.ts +9 -9
  644. package/src/tokens/TokenProviders/TPChain.ts +53 -41
  645. package/src/tokens/TokenProviders/TPCoingecko.ts +177 -0
  646. package/src/tokens/TokenProviders/TPCoinmarketcap.ts +82 -82
  647. package/src/tokens/TokenProviders/TPConfig.ts +53 -0
  648. package/src/tokens/TokenProviders/TPExplorer.ts +41 -0
  649. package/src/tokens/TokenProviders/TPOneInch.ts +71 -71
  650. package/src/tokens/TokenProviders/TPSushiswap.ts +88 -96
  651. package/src/tokens/TokenProviders/TPUniswap.ts +87 -85
  652. package/src/tokens/TokenService.ts +142 -128
  653. package/src/tokens/TokenSwapService.ts +44 -47
  654. package/src/tokens/TokenTransferService.ts +233 -216
  655. package/src/tokens/TokensService.ts +42 -186
  656. package/src/tokens/TokensServiceBsc.ts +17 -17
  657. package/src/tokens/TokensServiceEth.ts +9 -9
  658. package/src/tokens/TokensServiceFactory.ts +15 -1
  659. package/src/tokens/TokensServicePolygon.ts +17 -17
  660. package/src/tokens/TokensServiceXDai.ts +26 -26
  661. package/src/tokens/defi/ISwapService.ts +12 -12
  662. package/src/tokens/defi/paraswap/Paraswap.ts +242 -244
  663. package/src/tokens/utils/TokenUtils.ts +63 -63
  664. package/src/txs/ITxBuilderOptions.ts +41 -0
  665. package/src/txs/TxDataBuilder.ts +308 -207
  666. package/src/txs/TxLogger.ts +120 -121
  667. package/src/txs/TxNonceManager.ts +86 -0
  668. package/src/txs/TxProvider.ts +70 -68
  669. package/src/txs/TxService.ts +20 -19
  670. package/src/txs/TxWriter.ts +342 -78
  671. package/src/txs/agents/Erc4337Agent.ts +32 -0
  672. package/src/txs/agents/SafeAgent.ts +20 -0
  673. package/src/txs/agents/TxWriterAccountAgents.ts +27 -0
  674. package/src/txs/conditional/GasWatcherLogger.ts +57 -57
  675. package/src/txs/conditional/GasWatcherService.ts +116 -117
  676. package/src/txs/conditional/GasWatcherStore.ts +41 -40
  677. package/src/txs/conditional/GasWatcherTx.ts +142 -143
  678. package/src/txs/receipt/ITxLogItem.ts +31 -25
  679. package/src/txs/receipt/TxLogParser.ts +56 -29
  680. package/src/txs/receipt/TxLogsTransfer.ts +61 -61
  681. package/src/txs/receipt/TxTopicInMemoryProvider.ts +45 -45
  682. package/src/txs/receipt/TxTopicProvider.ts +29 -29
  683. package/src/txs/sig-transports/SigFileTransport.ts +49 -0
  684. package/src/types/TAbi.ts +32 -0
  685. package/src/utils/$abiParser.ts +245 -179
  686. package/src/utils/$abiType.ts +277 -85
  687. package/src/utils/$abiUtils.ts +332 -38
  688. package/src/utils/$account.ts +48 -0
  689. package/src/utils/$address.ts +71 -37
  690. package/src/utils/$array.ts +113 -57
  691. package/src/utils/$base.ts +67 -0
  692. package/src/utils/$bigfloat.ts +562 -0
  693. package/src/utils/$bigint.ts +238 -127
  694. package/src/utils/$block.ts +20 -7
  695. package/src/utils/$bloom.ts +43 -0
  696. package/src/utils/$buffer.ts +196 -0
  697. package/src/utils/$cache.ts +7 -0
  698. package/src/utils/$class.ts +8 -8
  699. package/src/utils/$cli.ts +42 -0
  700. package/src/utils/$color.ts +213 -0
  701. package/src/utils/$config.ts +80 -17
  702. package/src/utils/$const.ts +1 -0
  703. package/src/utils/$contract.ts +309 -67
  704. package/src/utils/$crypto.ts +223 -0
  705. package/src/utils/$csv.ts +70 -54
  706. package/src/utils/$date.ts +697 -473
  707. package/src/utils/$error.ts +16 -0
  708. package/src/utils/$fn.ts +134 -134
  709. package/src/utils/$gas.ts +26 -0
  710. package/src/utils/$hex.ts +133 -0
  711. package/src/utils/$http.ts +219 -0
  712. package/src/utils/$is.ts +73 -37
  713. package/src/utils/$logger.ts +216 -10
  714. package/src/utils/$machine.ts +85 -0
  715. package/src/utils/$number.ts +135 -89
  716. package/src/utils/$object.ts +95 -95
  717. package/src/utils/$path.ts +76 -32
  718. package/src/utils/$perf.ts +20 -0
  719. package/src/utils/$platform.ts +5 -0
  720. package/src/utils/$promise.ts +154 -7
  721. package/src/utils/$regexp.ts +16 -0
  722. package/src/utils/$require.ts +212 -118
  723. package/src/utils/$secret.ts +27 -0
  724. package/src/utils/$semver.ts +27 -0
  725. package/src/utils/$sig.ts +722 -0
  726. package/src/utils/$sign.ts +136 -36
  727. package/src/utils/$signRaw.ts +50 -0
  728. package/src/utils/$signRawNative.ts +105 -0
  729. package/src/utils/$signSerializer.ts +27 -21
  730. package/src/utils/$txData.ts +23 -0
  731. package/src/utils/$wallet.ts +3 -10
  732. package/src/utils/types.ts +58 -29
  733. package/src/wallets/Wallet.ts +33 -33
  734. package/src/wallets/WalletBsc.ts +13 -13
  735. package/src/wallets/WalletService.ts +43 -43
  736. package/test/Batch.spec.ts +89 -0
  737. package/test/BlockChainExplorer.spec.ts +24 -0
  738. package/test/ChainAccount.spec.ts +52 -9
  739. package/test/Fixtures.ts +36 -0
  740. package/test/Web3Client.spec.ts +81 -0
  741. package/test/browser/block.spec.ts +9 -0
  742. package/test/client/block.spec.ts +19 -0
  743. package/test/config.js +68 -0
  744. package/test/config.spec.ts +31 -0
  745. package/test/config.yml +4 -0
  746. package/test/contracts/ContractCreationResolver.spec.ts +26 -0
  747. package/test/ecrecover.spec.ts +63 -0
  748. package/test/erc2612/PermitToken.sol +10 -0
  749. package/test/erc4337/erc4337.spec.ts +407 -0
  750. package/test/fixtures/DaiTokenContract.ts +13 -13
  751. package/test/fixtures/abi/deployments.json +105 -0
  752. package/test/fixtures/abi/encode.json +23798 -0
  753. package/test/fixtures/abi/encodePacked.json +34586 -0
  754. package/test/fixtures/artifacts/AnyERC20/AnyERC20.json +340 -0
  755. package/test/fixtures/artifacts/AnyERC20/AnyERC20.sol +15 -0
  756. package/test/fixtures/contracts/AlphaKlimaSimple.sol +36 -0
  757. package/test/fixtures/contracts/Counter.sol +25 -0
  758. package/test/fixtures/contracts/Ecrecover.sol +33 -0
  759. package/test/fixtures/contracts/Foo.sol +49 -0
  760. package/test/fixtures/contracts/FooErc20.sol +7 -0
  761. package/test/fixtures/contracts/FooNestedModel.sol +6 -0
  762. package/test/fixtures/contracts/FreeToken.sol +263 -0
  763. package/test/fixtures/deployments/DeploymentsFoo.sol +14 -0
  764. package/test/fixtures/deployments/DeploymentsFooV2.sol +11 -0
  765. package/test/fixtures/deployments/DeploymentsFooV3.sol +12 -0
  766. package/test/fixtures/erc4337/core/BaseAccount.sol +107 -0
  767. package/test/fixtures/erc4337/core/BasePaymaster.sol +112 -0
  768. package/test/fixtures/erc4337/core/EntryPoint.sol +631 -0
  769. package/test/fixtures/erc4337/core/Helpers.sol +81 -0
  770. package/test/fixtures/erc4337/core/NonceManager.sol +40 -0
  771. package/test/fixtures/erc4337/core/SenderCreator.sol +28 -0
  772. package/test/fixtures/erc4337/core/StakeManager.sol +124 -0
  773. package/test/fixtures/erc4337/interfaces/IAccount.sol +34 -0
  774. package/test/fixtures/erc4337/interfaces/IAggregator.sol +36 -0
  775. package/test/fixtures/erc4337/interfaces/IEntryPoint.sol +205 -0
  776. package/test/fixtures/erc4337/interfaces/INonceManager.sol +27 -0
  777. package/test/fixtures/erc4337/interfaces/IPaymaster.sol +51 -0
  778. package/test/fixtures/erc4337/interfaces/IStakeManager.sol +104 -0
  779. package/test/fixtures/erc4337/interfaces/UserOperation.sol +91 -0
  780. package/test/fixtures/erc4337/samples/DepositPaymaster.sol +167 -0
  781. package/test/fixtures/erc4337/samples/IOracle.sol +11 -0
  782. package/test/fixtures/erc4337/samples/SimpleAccount.sol +138 -0
  783. package/test/fixtures/erc4337/samples/SimpleAccountFactory.sol +52 -0
  784. package/test/fixtures/erc4337/samples/TokenPaymaster.sol +113 -0
  785. package/test/fixtures/erc4337/samples/VerifyingPaymaster.sol +104 -0
  786. package/test/fixtures/erc4337/samples/bls/BLSAccount.sol +64 -0
  787. package/test/fixtures/erc4337/samples/bls/BLSAccountFactory.sol +61 -0
  788. package/test/fixtures/erc4337/samples/bls/BLSHelper.sol +232 -0
  789. package/test/fixtures/erc4337/samples/bls/BLSSignatureAggregator.sol +164 -0
  790. package/test/fixtures/erc4337/samples/bls/IBLSAccount.sol +16 -0
  791. package/test/fixtures/erc4337/samples/bls/lib/BLSOpen.sol +64 -0
  792. package/test/fixtures/erc4337/samples/bls/lib/hubble-contracts/contracts/libs/BLS.sol +440 -0
  793. package/test/fixtures/erc4337/samples/bls/lib/hubble-contracts/contracts/libs/BNPairingPrecompileCostEstimator.sol +108 -0
  794. package/test/fixtures/erc4337/samples/bls/lib/hubble-contracts/contracts/libs/ModExp.sol +652 -0
  795. package/test/fixtures/erc4337/samples/callback/TokenCallbackHandler.sol +61 -0
  796. package/test/fixtures/erc4337/utils/Exec.sol +70 -0
  797. package/test/fixtures/explorer/0xfbD2aa7efA2B46Ce3c58D7ab0D92C176c71499C0.html +2788 -0
  798. package/test/fixtures/gnosis/GnosisSafe.sol +422 -0
  799. package/test/fixtures/gnosis/GnosisSafeL2.sol +86 -0
  800. package/test/fixtures/gnosis/accessors/SimulateTxAccessor.sol +52 -0
  801. package/test/fixtures/gnosis/base/Executor.sol +27 -0
  802. package/test/fixtures/gnosis/base/FallbackManager.sol +53 -0
  803. package/test/fixtures/gnosis/base/GuardManager.sol +62 -0
  804. package/test/fixtures/gnosis/base/ModuleManager.sol +133 -0
  805. package/test/fixtures/gnosis/base/OwnerManager.sol +149 -0
  806. package/test/fixtures/gnosis/common/Enum.sol +8 -0
  807. package/test/fixtures/gnosis/common/EtherPaymentFallback.sol +13 -0
  808. package/test/fixtures/gnosis/common/SecuredTokenTransfer.sol +35 -0
  809. package/test/fixtures/gnosis/common/SelfAuthorized.sol +16 -0
  810. package/test/fixtures/gnosis/common/SignatureDecoder.sol +36 -0
  811. package/test/fixtures/gnosis/common/Singleton.sol +11 -0
  812. package/test/fixtures/gnosis/common/StorageAccessible.sol +47 -0
  813. package/test/fixtures/gnosis/external/GnosisSafeMath.sol +54 -0
  814. package/test/fixtures/gnosis/interfaces/ERC1155TokenReceiver.sol +49 -0
  815. package/test/fixtures/gnosis/interfaces/ERC721TokenReceiver.sol +24 -0
  816. package/test/fixtures/gnosis/interfaces/ERC777TokensRecipient.sol +13 -0
  817. package/test/fixtures/gnosis/interfaces/IERC165.sol +15 -0
  818. package/test/fixtures/gnosis/interfaces/ISignatureValidator.sol +20 -0
  819. package/test/fixtures/gnosis/interfaces/ViewStorageAccessible.sol +11 -0
  820. package/test/fixtures/gnosis/libraries/CreateCall.sol +30 -0
  821. package/test/fixtures/gnosis/libraries/GnosisSafeStorage.sol +21 -0
  822. package/test/fixtures/gnosis/libraries/MultiSend.sol +66 -0
  823. package/test/fixtures/gnosis/libraries/MultiSendCallOnly.sol +61 -0
  824. package/test/fixtures/gnosis/libraries/SignMessageLib.sol +34 -0
  825. package/test/fixtures/gnosis/proxies/GnosisSafeProxy.sol +44 -0
  826. package/test/fixtures/gnosis/proxies/GnosisSafeProxyFactory.sol +107 -0
  827. package/test/fixtures/gnosis/proxies/IProxyCreationCallback.sol +12 -0
  828. package/test/fixtures/mapping-setters/GTC.sol +611 -0
  829. package/test/fixtures/mapping-setters/UniswapV3Staker/Address.sol +189 -0
  830. package/test/fixtures/mapping-setters/UniswapV3Staker/FullMath.sol +124 -0
  831. package/test/fixtures/mapping-setters/UniswapV3Staker/IERC165.sol +24 -0
  832. package/test/fixtures/mapping-setters/UniswapV3Staker/IERC20.sol +77 -0
  833. package/test/fixtures/mapping-setters/UniswapV3Staker/IERC20Minimal.sol +52 -0
  834. package/test/fixtures/mapping-setters/UniswapV3Staker/IERC721.sol +129 -0
  835. package/test/fixtures/mapping-setters/UniswapV3Staker/IERC721Enumerable.sol +29 -0
  836. package/test/fixtures/mapping-setters/UniswapV3Staker/IERC721Metadata.sol +27 -0
  837. package/test/fixtures/mapping-setters/UniswapV3Staker/IERC721Permit.sol +32 -0
  838. package/test/fixtures/mapping-setters/UniswapV3Staker/IERC721Receiver.sol +21 -0
  839. package/test/fixtures/mapping-setters/UniswapV3Staker/IMulticall.sol +13 -0
  840. package/test/fixtures/mapping-setters/UniswapV3Staker/INonfungiblePositionManager.sol +180 -0
  841. package/test/fixtures/mapping-setters/UniswapV3Staker/IPeripheryImmutableState.sol +12 -0
  842. package/test/fixtures/mapping-setters/UniswapV3Staker/IPeripheryPayments.sol +28 -0
  843. package/test/fixtures/mapping-setters/UniswapV3Staker/IPoolInitializer.sol +22 -0
  844. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3Factory.sol +78 -0
  845. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3Pool.sol +24 -0
  846. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3PoolActions.sol +103 -0
  847. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3PoolDerivedState.sol +40 -0
  848. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3PoolEvents.sol +121 -0
  849. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3PoolImmutables.sol +35 -0
  850. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3PoolOwnerActions.sol +23 -0
  851. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3PoolState.sol +116 -0
  852. package/test/fixtures/mapping-setters/UniswapV3Staker/IUniswapV3Staker.sol +183 -0
  853. package/test/fixtures/mapping-setters/UniswapV3Staker/IncentiveId.sol +14 -0
  854. package/test/fixtures/mapping-setters/UniswapV3Staker/Math.sol +31 -0
  855. package/test/fixtures/mapping-setters/UniswapV3Staker/Multicall.sol +28 -0
  856. package/test/fixtures/mapping-setters/UniswapV3Staker/NFTPositionInfo.sol +47 -0
  857. package/test/fixtures/mapping-setters/UniswapV3Staker/PoolAddress.sol +48 -0
  858. package/test/fixtures/mapping-setters/UniswapV3Staker/RewardMath.sol +42 -0
  859. package/test/fixtures/mapping-setters/UniswapV3Staker/TransferHelper.sol +60 -0
  860. package/test/fixtures/mapping-setters/UniswapV3Staker/TransferHelperExtended.sol +39 -0
  861. package/test/fixtures/mapping-setters/UniswapV3Staker/UniswapV3Staker.sol +350 -0
  862. package/test/fixtures/openzeppelin/Proxy.sol +11 -0
  863. package/test/fixtures/openzeppelin/ProxyAdmin.sol +11 -0
  864. package/test/fixtures/openzeppelin/beacon/BeaconProxy.sol +11 -0
  865. package/test/fixtures/openzeppelin/beacon/UpgradeableBeacon.sol +11 -0
  866. package/test/fixtures/parser/AlphaKlima.sol +36 -0
  867. package/test/fixtures/parser/CToken/CErc20.sol +228 -0
  868. package/test/fixtures/parser/CToken/CErc20Delegate.sol +44 -0
  869. package/test/fixtures/parser/CToken/CErc20Delegator.sol +476 -0
  870. package/test/fixtures/parser/CToken/CToken.sol +1156 -0
  871. package/test/fixtures/parser/CToken/CTokenInterfaces.sol +293 -0
  872. package/test/fixtures/parser/CToken/ComptrollerInterface.sol +72 -0
  873. package/test/fixtures/parser/CToken/EIP20Interface.sol +63 -0
  874. package/test/fixtures/parser/CToken/EIP20NonStandardInterface.sol +71 -0
  875. package/test/fixtures/parser/CToken/ErrorReporter.sol +127 -0
  876. package/test/fixtures/parser/CToken/ExponentialNoError.sol +171 -0
  877. package/test/fixtures/parser/CToken/InterestRateModel.sol +30 -0
  878. package/test/fixtures/parser/DAI.sol +194 -0
  879. package/test/fixtures/parser/PriceOracle.sol +1964 -0
  880. package/test/fixtures/parser/SAFE/Context.sol +24 -0
  881. package/test/fixtures/parser/SAFE/ERC20.sol +383 -0
  882. package/test/fixtures/parser/SAFE/IERC20.sol +82 -0
  883. package/test/fixtures/parser/SAFE/IERC20Metadata.sol +28 -0
  884. package/test/fixtures/parser/SAFE/Ownable.sol +76 -0
  885. package/test/fixtures/parser/SAFE/Pausable.sol +91 -0
  886. package/test/fixtures/parser/SAFE/SafeToken.sol +48 -0
  887. package/test/fixtures/parser/SAFE/TokenRescuer.sol +29 -0
  888. package/test/fixtures/parser/SomeERC20/Context.sol +24 -0
  889. package/test/fixtures/parser/SomeERC20/ERC20.sol +389 -0
  890. package/test/fixtures/parser/SomeERC20/IERC20.sol +82 -0
  891. package/test/fixtures/parser/SomeERC20/IERC20Metadata.sol +28 -0
  892. package/test/fixtures/parser/SomeERC20/Ownable.sol +83 -0
  893. package/test/fixtures/parser/SomeERC20/SomeToken.sol +210 -0
  894. package/test/fixtures/parser/TetherToken.sol +447 -0
  895. package/test/fixtures/parser/USDC.sol +2231 -0
  896. package/test/fixtures/parser/v04/ENJToken.sol +493 -0
  897. package/test/fixtures/parser/v04/MultiSigWallet.sol +371 -0
  898. package/test/fixtures/receipts/swap.json +93 -93
  899. package/test/fixtures/scan/WETH.sol +1533 -0
  900. package/test/fixtures/slots/FooStorage.sol +8 -0
  901. package/test/fixtures/slots/FooStorageBase.sol +6 -0
  902. package/test/fixtures/slots/Vault.sol +85 -0
  903. package/test/flashbots/flashbots.spec.ts +79 -0
  904. package/test/generate/class.spec.ts +293 -5
  905. package/test/generate/evm.spec.ts +71 -0
  906. package/test/generate/gen.spec.ts +69 -0
  907. package/test/generate/openzeppelin.spec.ts +22 -0
  908. package/test/generate/slotreader.spec.ts +34 -0
  909. package/test/hardhat/TestNode.ts +76 -61
  910. package/test/hardhat/compile.spec.ts +22 -0
  911. package/test/hardhat/deploy.spec.ts +579 -0
  912. package/test/hardhat/deployments/deployments.spec.ts +233 -0
  913. package/test/hardhat/deployments/proxy-layout.spec.ts +296 -0
  914. package/test/hardhat/forked.spec.ts +56 -0
  915. package/test/hardhat/gas.spec.ts +40 -0
  916. package/test/hardhat/permit.ts +33 -0
  917. package/test/hardhat/revert.spec.ts +30 -0
  918. package/test/indexer/BlocksWalker.spec.ts +51 -0
  919. package/test/indexer/EventsIndexer.spec.ts +170 -0
  920. package/test/json/JsonStore.spec.ts +170 -0
  921. package/test/node/block.spec.ts +11 -0
  922. package/test/ns.spec.ts +67 -30
  923. package/test/perf/calldata.spec.ts +93 -0
  924. package/test/receipt.spec.ts +52 -27
  925. package/test/rpc/rpc.spec.ts +353 -0
  926. package/test/rpc/rpcUtil.spec.ts +31 -0
  927. package/test/safe/safe.spec.ts +352 -0
  928. package/test/services/timelock.spec.ts +97 -0
  929. package/test/solidity/AbiExtractor.spec.ts +468 -0
  930. package/test/solidity/MappingSettersResolver.spec.ts +516 -0
  931. package/test/solidity/SlotsDump.spec.ts +154 -0
  932. package/test/solidity/SlotsParser.spec.ts +536 -0
  933. package/test/solidity/SlotsReader.spec.ts +388 -0
  934. package/test/solidity/Storage.spec.ts +404 -0
  935. package/test/structs/PackedRanges.spec.ts +56 -0
  936. package/test/subscriptions.spec.ts +127 -0
  937. package/test/token.spec.ts +17 -0
  938. package/test/tokens/oracles.spec.ts +51 -0
  939. package/test/utils/abi-parser-args.spec.ts +143 -0
  940. package/test/utils/abi-parser.spec.ts +141 -117
  941. package/test/utils/abi-types.spec.ts +31 -0
  942. package/test/utils/abi-utils.spec.ts +23 -0
  943. package/test/utils/abi.spec.ts +178 -0
  944. package/test/utils/address.spec.ts +66 -0
  945. package/test/utils/bigfloat/div.spec.ts +1919 -0
  946. package/test/utils/bigfloat/mod.spec.ts +1745 -0
  947. package/test/utils/bigfloat/mul.spec.ts +2085 -0
  948. package/test/utils/bigfloat/round.spec.ts +174 -0
  949. package/test/utils/bigfloat/sqrt.spec.ts +420 -0
  950. package/test/utils/bigint.spec.ts +39 -40
  951. package/test/utils/bytecode.spec.ts +107 -0
  952. package/test/utils/crypto.spec.ts +37 -0
  953. package/test/utils/date.spec.ts +9 -8
  954. package/test/utils/fn.spec.ts +39 -39
  955. package/test/utils/logbloom.spec.ts +17 -0
  956. package/test/utils/number.spec.ts +52 -41
  957. package/test/utils/rlp.spec.ts +142 -0
  958. package/test/utils/sign.spec.ts +327 -22
  959. package/tools/build-dts.ts +111 -0
  960. package/tools/copy-dts.ts +48 -0
  961. package/tsconfig-build.json +24 -24
  962. package/tsconfig-src.json +44 -36
  963. package/tsconfig.esm.json +12 -0
  964. package/tsconfig.json +34 -27
  965. package/tsconfig.umd.json +28 -0
  966. package/typings/globals/axios/index.d.ts +6 -6
  967. package/typings.json +6 -6
  968. package/contracts/abi/erc20.abi.json +0 -222
  969. package/contracts/gen/amm/AmmFactoryV2ContractBase.ts +0 -66
  970. package/contracts/gen/amm/AmmMasterChefV2ContractBase.ts +0 -158
  971. package/contracts/gen/amm/AmmPairContractV2Base.ts +0 -158
  972. package/contracts/gen/amm/AmmPairContractV3Base.ts +0 -125
  973. package/contracts/gen/amm/AmmRouterV2ContractBase.ts +0 -124
  974. package/contracts/gen/amm/AmmVaultV2ContractBase.ts +0 -214
  975. package/contracts/gen/base/ERC20Base.ts +0 -90
  976. package/contracts/gen/bsc/OneInchRouterV3Base.ts +0 -57
  977. package/contracts/gen/eth/WETHBase/WETHBase.sol +0 -756
  978. package/contracts/gen/eth/WETHBase.ts +0 -136
  979. package/contracts/gen/polygon/ERC20PolygonBase.ts +0 -305
  980. package/contracts/gen/polygon/WormholeBridgeContractBase/Address.sol +0 -216
  981. package/contracts/gen/polygon/WormholeBridgeContractBase/BeaconProxy.sol +0 -61
  982. package/contracts/gen/polygon/WormholeBridgeContractBase/Bridge.sol +0 -437
  983. package/contracts/gen/polygon/WormholeBridgeContractBase/BridgeGetters.sol +0 -70
  984. package/contracts/gen/polygon/WormholeBridgeContractBase/BridgeGovernance.sol +0 -142
  985. package/contracts/gen/polygon/WormholeBridgeContractBase/BridgeImplementation.sol +0 -34
  986. package/contracts/gen/polygon/WormholeBridgeContractBase/BridgeSetters.sol +0 -57
  987. package/contracts/gen/polygon/WormholeBridgeContractBase/BridgeState.sol +0 -52
  988. package/contracts/gen/polygon/WormholeBridgeContractBase/BridgeStructs.sol +0 -66
  989. package/contracts/gen/polygon/WormholeBridgeContractBase/BytesLib.sol +0 -510
  990. package/contracts/gen/polygon/WormholeBridgeContractBase/Context.sol +0 -23
  991. package/contracts/gen/polygon/WormholeBridgeContractBase/ERC1967Proxy.sol +0 -32
  992. package/contracts/gen/polygon/WormholeBridgeContractBase/ERC1967Upgrade.sol +0 -193
  993. package/contracts/gen/polygon/WormholeBridgeContractBase/IBeacon.sol +0 -15
  994. package/contracts/gen/polygon/WormholeBridgeContractBase/IERC20.sol +0 -81
  995. package/contracts/gen/polygon/WormholeBridgeContractBase/IWormhole.sol +0 -42
  996. package/contracts/gen/polygon/WormholeBridgeContractBase/Ownable.sol +0 -71
  997. package/contracts/gen/polygon/WormholeBridgeContractBase/Proxy.sol +0 -85
  998. package/contracts/gen/polygon/WormholeBridgeContractBase/SafeERC20.sol +0 -98
  999. package/contracts/gen/polygon/WormholeBridgeContractBase/StorageSlot.sol +0 -83
  1000. package/contracts/gen/polygon/WormholeBridgeContractBase/Structs.sol +0 -40
  1001. package/contracts/gen/polygon/WormholeBridgeContractBase/Token.sol +0 -12
  1002. package/contracts/gen/polygon/WormholeBridgeContractBase/TokenBridge.sol +0 -15
  1003. package/contracts/gen/polygon/WormholeBridgeContractBase/TokenImplementation.sol +0 -177
  1004. package/contracts/gen/polygon/WormholeBridgeContractBase/TokenState.sol +0 -31
  1005. package/contracts/gen/polygon/WormholeBridgeContractBase.ts +0 -231
  1006. package/contracts/gen/xdai/WXDaiTokenContractBase.ts +0 -136
  1007. package/dist/contracts/gen/amm/AmmFactoryV2ContractBase.js +0 -53
  1008. package/dist/contracts/gen/amm/AmmMasterChefV2ContractBase.js +0 -122
  1009. package/dist/contracts/gen/amm/AmmPairContractV2Base.js +0 -122
  1010. package/dist/contracts/gen/amm/AmmPairContractV3Base.js +0 -98
  1011. package/dist/contracts/gen/amm/AmmRouterV2ContractBase.js +0 -95
  1012. package/dist/contracts/gen/amm/AmmVaultV2ContractBase.js +0 -164
  1013. package/dist/contracts/gen/base/ERC20Base.js +0 -64
  1014. package/dist/contracts/gen/bsc/OneInchRouterV3Base.js +0 -47
  1015. package/dist/contracts/gen/eth/WETHBase.js +0 -96
  1016. package/dist/contracts/gen/polygon/ERC20PolygonBase.js +0 -233
  1017. package/dist/contracts/gen/polygon/WormholeBridgeContractBase.js +0 -172
  1018. package/dist/contracts/gen/xdai/WXDaiTokenContractBase.js +0 -96
  1019. package/dist/src/BlockchainExplorer/BlockChainExplorerFactory.js +0 -227
  1020. package/dist/src/BlockchainExplorer/BlockChainExplorerProvider.js +0 -32
  1021. package/dist/src/BlockchainExplorer/BlockNumberCache.js +0 -33
  1022. package/dist/src/BlockchainExplorer/Bscscan.js +0 -27
  1023. package/dist/src/BlockchainExplorer/Etherscan.js +0 -27
  1024. package/dist/src/BlockchainExplorer/IAbiProvider.js +0 -2
  1025. package/dist/src/BlockchainExplorer/IBlockChainExplorer.js +0 -2
  1026. package/dist/src/BlockchainExplorer/Polyscan.js +0 -27
  1027. package/dist/src/ChainAccounts.js +0 -69
  1028. package/dist/src/ChainAccountsService.js +0 -75
  1029. package/dist/src/Config.js +0 -7
  1030. package/dist/src/blocks/BlockDateResolver.js +0 -125
  1031. package/dist/src/bridges/BridgeFactory.js +0 -19
  1032. package/dist/src/bridges/hop/HopAddresses.js +0 -520
  1033. package/dist/src/bridges/hop/HopBridge.js +0 -327
  1034. package/dist/src/bridges/hop/contracts/gen.act.js +0 -43
  1035. package/dist/src/bridges/hop/contracts/polygon/Dai_l2AmmWrapperContract.js +0 -52
  1036. package/dist/src/bridges/hop/contracts/polygon/Dai_l2BridgeContract.js +0 -319
  1037. package/dist/src/bridges/hop/contracts/polygon/Dai_l2SaddleSwapContract.js +0 -178
  1038. package/dist/src/bridges/hop/contracts/polygon/Eth_l2AmmWrapperContract.js +0 -52
  1039. package/dist/src/bridges/hop/contracts/polygon/Eth_l2BridgeContract.js +0 -319
  1040. package/dist/src/bridges/hop/contracts/polygon/Eth_l2SaddleSwapContract.js +0 -178
  1041. package/dist/src/bridges/hop/contracts/polygon/Matic_l2AmmWrapperContract.js +0 -52
  1042. package/dist/src/bridges/hop/contracts/polygon/Matic_l2BridgeContract.js +0 -319
  1043. package/dist/src/bridges/hop/contracts/polygon/Matic_l2SaddleSwapContract.js +0 -178
  1044. package/dist/src/bridges/hop/contracts/polygon/Usdc_l2AmmWrapperContract.js +0 -52
  1045. package/dist/src/bridges/hop/contracts/polygon/Usdc_l2BridgeContract.js +0 -319
  1046. package/dist/src/bridges/hop/contracts/polygon/Usdc_l2SaddleSwapContract.js +0 -178
  1047. package/dist/src/bridges/hop/contracts/polygon/Usdt_l2AmmWrapperContract.js +0 -52
  1048. package/dist/src/bridges/hop/contracts/polygon/Usdt_l2BridgeContract.js +0 -319
  1049. package/dist/src/bridges/hop/contracts/polygon/Usdt_l2SaddleSwapContract.js +0 -178
  1050. package/dist/src/bridges/hop/contracts/polygon/Wbtc_l2AmmWrapperContract.js +0 -52
  1051. package/dist/src/bridges/hop/contracts/polygon/Wbtc_l2BridgeContract.js +0 -319
  1052. package/dist/src/bridges/hop/contracts/polygon/Wbtc_l2SaddleSwapContract.js +0 -178
  1053. package/dist/src/bridges/models/IBridge.js +0 -2
  1054. package/dist/src/bridges/wormhole/contracts/WormholeBridgeContract.js +0 -15
  1055. package/dist/src/chains/PlatformFactory.js +0 -42
  1056. package/dist/src/chains/arbitrum/ArbTokenProvider.js +0 -40
  1057. package/dist/src/chains/arbitrum/ArbWeb3Client.js +0 -39
  1058. package/dist/src/chains/arbitrum/Arbiscan.js +0 -27
  1059. package/dist/src/chains/boba/BobaWeb3Client.js +0 -47
  1060. package/dist/src/chains/boba/Bobascan.js +0 -28
  1061. package/dist/src/chains/xdai/XDaiWeb3Client.js +0 -87
  1062. package/dist/src/chains/xdai/XDaiscan.js +0 -27
  1063. package/dist/src/chains/xdai/tokens/WXDaiTokenContract.js +0 -15
  1064. package/dist/src/clients/BscWeb3Client.js +0 -38
  1065. package/dist/src/clients/ClientEventsStream.js +0 -34
  1066. package/dist/src/clients/ClientPool.js +0 -560
  1067. package/dist/src/clients/ClientPoolStats.js +0 -52
  1068. package/dist/src/clients/EthWeb3Client.js +0 -35
  1069. package/dist/src/clients/HardhatWeb3Client.js +0 -56
  1070. package/dist/src/clients/PolyWeb3Client.js +0 -77
  1071. package/dist/src/clients/Web3Client.js +0 -186
  1072. package/dist/src/clients/Web3ClientFactory.js +0 -32
  1073. package/dist/src/clients/interfaces/IWeb3Client.js +0 -2
  1074. package/dist/src/clients/interfaces/IWeb3ClientStatus.js +0 -2
  1075. package/dist/src/clients/interfaces/IWeb3EndpointOptions.js +0 -2
  1076. package/dist/src/clients/model/ClientStatus.js +0 -9
  1077. package/dist/src/clients/model/PromiEventWrap.js +0 -52
  1078. package/dist/src/clients/model/SubscriptionWrap.js +0 -42
  1079. package/dist/src/clients/utils/ClientEndpoints.js +0 -27
  1080. package/dist/src/clients/utils/ClientErrorUtil.js +0 -30
  1081. package/dist/src/clients/utils/TxFactory.js +0 -14
  1082. package/dist/src/contracts/BscContract.js +0 -30
  1083. package/dist/src/contracts/Contract.js +0 -90
  1084. package/dist/src/contracts/ContractBase.js +0 -139
  1085. package/dist/src/contracts/ContractFactory.js +0 -17
  1086. package/dist/src/contracts/ContractProvider.js +0 -40
  1087. package/dist/src/contracts/ContractReader.js +0 -76
  1088. package/dist/src/contracts/ContractStream.js +0 -20
  1089. package/dist/src/contracts/ContractWriter.js +0 -62
  1090. package/dist/src/contracts/EthContract.js +0 -31
  1091. package/dist/src/contracts/TxContract.js +0 -37
  1092. package/dist/src/contracts/common/ERC20.js +0 -14
  1093. package/dist/src/contracts/common/ERC20Polygon.js +0 -14
  1094. package/dist/src/contracts/common/PoolPair.js +0 -23
  1095. package/dist/src/contracts/utils/AbiDeserializer.js +0 -89
  1096. package/dist/src/contracts/utils/ConvertUtils.js +0 -21
  1097. package/dist/src/contracts/utils/InputDataUtils.js +0 -87
  1098. package/dist/src/contracts/utils/TypeUtils.js +0 -24
  1099. package/dist/src/defi/OneInch/OneInchRouter.js +0 -14
  1100. package/dist/src/env/BigIntSerializer.js +0 -19
  1101. package/dist/src/gen/Ast.js +0 -12
  1102. package/dist/src/gen/ContractTemplate.js +0 -27
  1103. package/dist/src/gen/Generator.js +0 -180
  1104. package/dist/src/gen/GeneratorFromAbi.js +0 -361
  1105. package/dist/src/handlers/TokenHandler.js +0 -69
  1106. package/dist/src/indexer/BlocksTxIndexer.js +0 -52
  1107. package/dist/src/indexer/PendingTxIndexer.js +0 -96
  1108. package/dist/src/indexer/handlers/BlocksWalker.js +0 -306
  1109. package/dist/src/indexer/handlers/TxQueueLoader.js +0 -117
  1110. package/dist/src/json/JsonArrayStore.js +0 -296
  1111. package/dist/src/json/JsonObjectStore.js +0 -214
  1112. package/dist/src/json/JsonStore.spec.js +0 -83
  1113. package/dist/src/loggers/ILogger.js +0 -2
  1114. package/dist/src/loggers/LoggerService.js +0 -34
  1115. package/dist/src/loggers/TxLoggerService.js +0 -122
  1116. package/dist/src/models/IContractDetails.js +0 -2
  1117. package/dist/src/models/IToken.js +0 -2
  1118. package/dist/src/models/ITokenGlob.js +0 -6
  1119. package/dist/src/models/ITransactionDetails.js +0 -2
  1120. package/dist/src/models/TAddress.js +0 -2
  1121. package/dist/src/models/TBufferLike.js +0 -2
  1122. package/dist/src/models/THex.js +0 -2
  1123. package/dist/src/models/TPlatform.js +0 -2
  1124. package/dist/src/models/TResult.js +0 -2
  1125. package/dist/src/ns/NameService.js +0 -19
  1126. package/dist/src/ns/providers/EnsProvider.js +0 -41
  1127. package/dist/src/ns/providers/INsProvider.js +0 -2
  1128. package/dist/src/ns/providers/UDProvider.js +0 -39
  1129. package/dist/src/ns/utils/$ns.js +0 -17
  1130. package/dist/src/structs/PackedRanges.js +0 -186
  1131. package/dist/src/structs/PackedRanges.spec.js +0 -30
  1132. package/dist/src/tokens/TokenExchangeService.js +0 -110
  1133. package/dist/src/tokens/TokenExchanges/AmmBase/AmmUtilts.js +0 -17
  1134. package/dist/src/tokens/TokenExchanges/AmmBase/V2/AmmFactoryV2Contract.js +0 -15
  1135. package/dist/src/tokens/TokenExchanges/AmmBase/V2/AmmMasterChefV2Contract.js +0 -15
  1136. package/dist/src/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Contract.js +0 -16
  1137. package/dist/src/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Service.js +0 -144
  1138. package/dist/src/tokens/TokenExchanges/AmmBase/V2/AmmRouterV2Contract.js +0 -15
  1139. package/dist/src/tokens/TokenExchanges/AmmBase/V2/AmmVaultV2Contract.js +0 -15
  1140. package/dist/src/tokens/TokenExchanges/AmmBase/V3/AmmPairV3Contract.js +0 -22
  1141. package/dist/src/tokens/TokenExchanges/AmmV2ExchangeBase.js +0 -194
  1142. package/dist/src/tokens/TokenExchanges/OneInchExchange.js +0 -92
  1143. package/dist/src/tokens/TokenExchanges/PancakeswapExchange.js +0 -28
  1144. package/dist/src/tokens/TokenExchanges/SushiswapPolygonExchange.js +0 -28
  1145. package/dist/src/tokens/TokenExchanges/UniswapExchange.js +0 -28
  1146. package/dist/src/tokens/TokenOracles/AmmPriceV2Oracle.js +0 -319
  1147. package/dist/src/tokens/TokenOracles/TokenPriceStore.js +0 -108
  1148. package/dist/src/tokens/TokenPriceService.js +0 -196
  1149. package/dist/src/tokens/TokenPriceServiceProvider.js +0 -31
  1150. package/dist/src/tokens/TokenProviders/ATokenProvider.js +0 -38
  1151. package/dist/src/tokens/TokenProviders/ITokenProvider.js +0 -2
  1152. package/dist/src/tokens/TokenProviders/TPChain.js +0 -35
  1153. package/dist/src/tokens/TokenProviders/TPCoinmarketcap.js +0 -63
  1154. package/dist/src/tokens/TokenProviders/TPOneInch.js +0 -65
  1155. package/dist/src/tokens/TokenProviders/TPSushiswap.js +0 -89
  1156. package/dist/src/tokens/TokenProviders/TPUniswap.js +0 -84
  1157. package/dist/src/tokens/TokenService.js +0 -115
  1158. package/dist/src/tokens/TokenSwapService.js +0 -37
  1159. package/dist/src/tokens/TokenTransferService.js +0 -189
  1160. package/dist/src/tokens/TokensService.js +0 -236
  1161. package/dist/src/tokens/TokensServiceBsc.js +0 -18
  1162. package/dist/src/tokens/TokensServiceEth.js +0 -15
  1163. package/dist/src/tokens/TokensServiceFactory.js +0 -29
  1164. package/dist/src/tokens/TokensServicePolygon.js +0 -18
  1165. package/dist/src/tokens/TokensServiceXDai.js +0 -24
  1166. package/dist/src/tokens/defi/ISwapService.js +0 -2
  1167. package/dist/src/tokens/defi/paraswap/Paraswap.js +0 -135
  1168. package/dist/src/tokens/erc20/eth/WETH.js +0 -14
  1169. package/dist/src/tokens/utils/TokenUtils.js +0 -66
  1170. package/dist/src/txs/ITxConfig.js +0 -2
  1171. package/dist/src/txs/TxDataBuilder.js +0 -159
  1172. package/dist/src/txs/TxLogger.js +0 -119
  1173. package/dist/src/txs/TxProvider.js +0 -73
  1174. package/dist/src/txs/TxService.js +0 -19
  1175. package/dist/src/txs/TxWriter.js +0 -287
  1176. package/dist/src/txs/conditional/GasWatcherLogger.js +0 -61
  1177. package/dist/src/txs/conditional/GasWatcherService.js +0 -103
  1178. package/dist/src/txs/conditional/GasWatcherStore.js +0 -25
  1179. package/dist/src/txs/conditional/GasWatcherTx.js +0 -126
  1180. package/dist/src/txs/receipt/ITxLogItem.js +0 -2
  1181. package/dist/src/txs/receipt/TxLogParser.js +0 -27
  1182. package/dist/src/txs/receipt/TxLogsTransfer.js +0 -50
  1183. package/dist/src/txs/receipt/TxTopicInMemoryProvider.js +0 -41
  1184. package/dist/src/txs/receipt/TxTopicProvider.js +0 -25
  1185. package/dist/src/utils/$abiParser.js +0 -159
  1186. package/dist/src/utils/$abiType.js +0 -77
  1187. package/dist/src/utils/$abiUtils.js +0 -43
  1188. package/dist/src/utils/$address.js +0 -41
  1189. package/dist/src/utils/$array.js +0 -60
  1190. package/dist/src/utils/$bigint.js +0 -130
  1191. package/dist/src/utils/$block.js +0 -10
  1192. package/dist/src/utils/$class.js +0 -13
  1193. package/dist/src/utils/$config.js +0 -18
  1194. package/dist/src/utils/$contract.js +0 -67
  1195. package/dist/src/utils/$csv.js +0 -79
  1196. package/dist/src/utils/$date.js +0 -496
  1197. package/dist/src/utils/$fn.js +0 -117
  1198. package/dist/src/utils/$is.js +0 -40
  1199. package/dist/src/utils/$logger.js +0 -15
  1200. package/dist/src/utils/$number.js +0 -95
  1201. package/dist/src/utils/$object.js +0 -82
  1202. package/dist/src/utils/$path.js +0 -33
  1203. package/dist/src/utils/$promise.js +0 -13
  1204. package/dist/src/utils/$require.js +0 -127
  1205. package/dist/src/utils/$sign.js +0 -35
  1206. package/dist/src/utils/$signSerializer.js +0 -264
  1207. package/dist/src/utils/$wallet.js +0 -13
  1208. package/dist/src/utils/types.js +0 -2
  1209. package/dist/src/wallets/Wallet.js +0 -26
  1210. package/dist/src/wallets/WalletBsc.js +0 -17
  1211. package/dist/src/wallets/WalletService.js +0 -35
  1212. package/dist/src/www/utils/BlockChainExplorerFormatter.js +0 -15
  1213. package/src/BlockchainExplorer/BlockChainExplorerFactory.ts +0 -273
  1214. package/src/BlockchainExplorer/BlockChainExplorerProvider.ts +0 -26
  1215. package/src/BlockchainExplorer/BlockNumberCache.ts +0 -46
  1216. package/src/BlockchainExplorer/Bscscan.ts +0 -23
  1217. package/src/BlockchainExplorer/Etherscan.ts +0 -25
  1218. package/src/BlockchainExplorer/IAbiProvider.ts +0 -5
  1219. package/src/BlockchainExplorer/IBlockChainExplorer.ts +0 -37
  1220. package/src/BlockchainExplorer/Polyscan.ts +0 -23
  1221. package/src/ChainAccounts.ts +0 -72
  1222. package/src/ChainAccountsService.ts +0 -74
  1223. package/src/Config.ts +0 -34
  1224. package/src/bridges/hop/contracts/polygon/Dai_l2AmmWrapperContract.ts +0 -69
  1225. package/src/bridges/hop/contracts/polygon/Dai_l2BridgeContract.ts +0 -453
  1226. package/src/bridges/hop/contracts/polygon/Dai_l2SaddleSwapContract.ts +0 -264
  1227. package/src/bridges/hop/contracts/polygon/Eth_l2AmmWrapperContract.ts +0 -69
  1228. package/src/bridges/hop/contracts/polygon/Eth_l2BridgeContract.ts +0 -453
  1229. package/src/bridges/hop/contracts/polygon/Eth_l2SaddleSwapContract.ts +0 -264
  1230. package/src/bridges/hop/contracts/polygon/Matic_l2AmmWrapperContract.ts +0 -69
  1231. package/src/bridges/hop/contracts/polygon/Matic_l2BridgeContract.ts +0 -453
  1232. package/src/bridges/hop/contracts/polygon/Matic_l2SaddleSwapContract.ts +0 -264
  1233. package/src/bridges/hop/contracts/polygon/Usdc_l2AmmWrapperContract.ts +0 -69
  1234. package/src/bridges/hop/contracts/polygon/Usdc_l2BridgeContract.ts +0 -453
  1235. package/src/bridges/hop/contracts/polygon/Usdc_l2SaddleSwapContract.ts +0 -264
  1236. package/src/bridges/hop/contracts/polygon/Usdt_l2AmmWrapperContract.ts +0 -69
  1237. package/src/bridges/hop/contracts/polygon/Usdt_l2BridgeContract.ts +0 -453
  1238. package/src/bridges/hop/contracts/polygon/Usdt_l2SaddleSwapContract.ts +0 -264
  1239. package/src/bridges/hop/contracts/polygon/Wbtc_l2AmmWrapperContract.ts +0 -69
  1240. package/src/bridges/hop/contracts/polygon/Wbtc_l2BridgeContract.ts +0 -453
  1241. package/src/bridges/hop/contracts/polygon/Wbtc_l2SaddleSwapContract.ts +0 -264
  1242. package/src/bridges/wormhole/contracts/WormholeBridgeContract.ts +0 -14
  1243. package/src/chains/xdai/tokens/WXDaiTokenContract.json +0 -279
  1244. package/src/chains/xdai/tokens/WXDaiTokenContract.ts +0 -14
  1245. package/src/clients/HardhatWeb3Client.ts +0 -60
  1246. package/src/contracts/ContractFactory.ts +0 -19
  1247. package/src/contracts/common/ERC20.ts +0 -13
  1248. package/src/contracts/common/ERC20Polygon.ts +0 -13
  1249. package/src/contracts/common/PoolPair.ts +0 -22
  1250. package/src/defi/OneInch/OneInchRouter.ts +0 -13
  1251. package/src/json/JsonStore.spec.ts +0 -98
  1252. package/src/structs/PackedRanges.spec.ts +0 -38
  1253. package/src/structs/PackedRanges.ts +0 -207
  1254. package/src/tokens/TokenExchanges/AmmBase/V2/AmmFactoryV2Contract.ts +0 -15
  1255. package/src/tokens/TokenExchanges/AmmBase/V2/AmmMasterChefV2Contract.ts +0 -15
  1256. package/src/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Contract.ts +0 -17
  1257. package/src/tokens/TokenExchanges/AmmBase/V2/AmmRouterV2Contract.ts +0 -15
  1258. package/src/tokens/TokenExchanges/AmmBase/V2/AmmVaultV2Contract.ts +0 -15
  1259. package/src/tokens/TokenExchanges/AmmBase/V3/AmmPairV3Contract.ts +0 -24
  1260. package/src/tokens/TokenExchanges/UniswapExchange.ts +0 -31
  1261. package/src/tokens/TokenOracles/AmmPriceV2Oracle.ts +0 -440
  1262. package/src/tokens/erc20/eth/WETH.ts +0 -13
  1263. package/src/txs/ITxConfig.ts +0 -27
  1264. package/src/www/utils/BlockChainExplorerFormatter.ts +0 -13
  1265. package/test/client.spec.ts +0 -59
@@ -0,0 +1,1786 @@
1
+ {
2
+ "openrpc": "1.0.0",
3
+ "info": {
4
+ "version": "1.0.10",
5
+ "title": "Ethereum JSON-RPC",
6
+ "description": "This API lets you interact with an EVM-based client via JSON-RPC",
7
+ "license": {
8
+ "name": "Apache 2.0",
9
+ "url": "https://www.apache.org/licenses/LICENSE-2.0.html"
10
+ }
11
+ },
12
+ "methods": [
13
+ {
14
+ "name": "web3_clientVersion",
15
+ "description": "Returns the version of the current client",
16
+ "summary": "current client version",
17
+ "params": [],
18
+ "result": {
19
+ "name": "clientVersion",
20
+ "description": "client version",
21
+ "schema": {
22
+ "title": "clientVersion",
23
+ "type": "string"
24
+ }
25
+ }
26
+ },
27
+ {
28
+ "name": "web3_sha3",
29
+ "summary": "Hashes data",
30
+ "description": "Hashes data using the Keccak-256 algorithm",
31
+ "params": [
32
+ {
33
+ "name": "data",
34
+ "description": "data to hash using the Keccak-256 algorithm",
35
+ "summary": "data to hash",
36
+ "schema": {
37
+ "title": "data",
38
+ "type": "string",
39
+ "pattern": "^0x[a-fA-F\\d]+$"
40
+ }
41
+ }
42
+ ],
43
+ "result": {
44
+ "name": "hashedData",
45
+ "description": "Keccak-256 hash of the given data",
46
+ "schema": {
47
+ "$ref": "#/components/schemas/Keccak"
48
+ }
49
+ },
50
+ "examples": [
51
+ {
52
+ "name": "sha3Example",
53
+ "params": [
54
+ {
55
+ "name": "sha3ParamExample",
56
+ "value": "0x68656c6c6f20776f726c64"
57
+ }
58
+ ],
59
+ "result": {
60
+ "name": "sha3ResultExample",
61
+ "value": "0x47173285a8d7341e5e972fc677286384f802f8ef42a5ec5f03bbfa254cb01fad"
62
+ }
63
+ }
64
+ ]
65
+ },
66
+ {
67
+ "name": "net_listening",
68
+ "summary": "returns listening status",
69
+ "description": "Determines if this client is listening for new network connections.",
70
+ "params": [],
71
+ "result": {
72
+ "name": "netListeningResult",
73
+ "description": "`true` if listening is active or `false` if listening is not active",
74
+ "schema": {
75
+ "title": "isNetListening",
76
+ "type": "boolean"
77
+ }
78
+ },
79
+ "examples": [
80
+ {
81
+ "name": "netListeningTrueExample",
82
+ "description": "example of true result for net_listening",
83
+ "params": [],
84
+ "result": {
85
+ "name": "netListeningExampleFalseResult",
86
+ "value": true
87
+ }
88
+ }
89
+ ]
90
+ },
91
+ {
92
+ "name": "net_peerCount",
93
+ "summary": "number of peers",
94
+ "description": "Returns the number of peers currently connected to this client.",
95
+ "params": [],
96
+ "result": {
97
+ "name": "quantity",
98
+ "description": "number of connected peers.",
99
+ "schema": {
100
+ "title": "numConnectedPeers",
101
+ "description": "Hex representation of number of connected peers",
102
+ "type": "string"
103
+ }
104
+ }
105
+ },
106
+ {
107
+ "name": "net_version",
108
+ "summary": "Network identifier associated with network",
109
+ "description": "Returns the network ID associated with the current network.",
110
+ "params": [],
111
+ "result": {
112
+ "name": "networkId",
113
+ "description": "Network ID associated with the current network",
114
+ "schema": {
115
+ "title": "networkId",
116
+ "type": "string",
117
+ "pattern": "^[\\d]+$"
118
+ }
119
+ }
120
+ },
121
+ {
122
+ "name": "eth_blockNumber",
123
+ "summary": "Returns the number of most recent block.",
124
+ "params": [],
125
+ "result": {
126
+ "$ref": "#/components/contentDescriptors/BlockNumber"
127
+ }
128
+ },
129
+ {
130
+ "name": "eth_call",
131
+ "summary": "Executes a new message call (locally) immediately without creating a transaction on the block chain.",
132
+ "params": [
133
+ {
134
+ "$ref": "#/components/contentDescriptors/Transaction"
135
+ },
136
+ {
137
+ "$ref": "#/components/contentDescriptors/BlockNumber"
138
+ }
139
+ ],
140
+ "result": {
141
+ "name": "returnValue",
142
+ "description": "The return value of the executed contract",
143
+ "schema": {
144
+ "$ref": "#/components/schemas/Bytes"
145
+ }
146
+ }
147
+ },
148
+ {
149
+ "name": "eth_chainId",
150
+ "summary": "Returns the currently configured chain id",
151
+ "description": "Returns the currently configured chain id, a value used in replay-protected transaction signing as introduced by [EIP-155](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-155.md).",
152
+ "params": [],
153
+ "result": {
154
+ "name": "chainId",
155
+ "description": "hex format integer of the current chain id. Defaults are ETC=61, ETH=1, Morden=62.",
156
+ "schema": {
157
+ "title": "chainId",
158
+ "type": "string",
159
+ "pattern": "^0x[a-fA-F\\d]+$"
160
+ }
161
+ }
162
+ },
163
+ {
164
+ "name": "eth_coinbase",
165
+ "summary": "Returns the client coinbase address.",
166
+ "params": [],
167
+ "result": {
168
+ "name": "address",
169
+ "description": "The address owned by the client that is used as default for things like the mining reward",
170
+ "schema": {
171
+ "$ref": "#/components/schemas/Address"
172
+ }
173
+ }
174
+ },
175
+ {
176
+ "name": "eth_estimateGas",
177
+ "summary": "Generates and returns an estimate of how much gas is necessary to allow the transaction to complete. The transaction will not be added to the blockchain. Note that the estimate may be significantly more than the amount of gas actually used by the transaction, for a variety of reasons including EVM mechanics and node performance.",
178
+ "params": [
179
+ {
180
+ "$ref": "#/components/contentDescriptors/Transaction"
181
+ }
182
+ ],
183
+ "result": {
184
+ "name": "gasUsed",
185
+ "description": "The amount of gas used",
186
+ "schema": {
187
+ "$ref": "#/components/schemas/Integer"
188
+ }
189
+ }
190
+ },
191
+ {
192
+ "name": "eth_gasPrice",
193
+ "summary": "Returns the current price per gas in wei",
194
+ "params": [],
195
+ "result": {
196
+ "$ref": "#/components/contentDescriptors/GasPrice"
197
+ }
198
+ },
199
+ {
200
+ "name": "eth_getBalance",
201
+ "summary": "Returns Ether balance of a given or account or contract",
202
+ "params": [
203
+ {
204
+ "name": "address",
205
+ "required": true,
206
+ "description": "The address of the account or contract",
207
+ "schema": {
208
+ "$ref": "#/components/schemas/Address"
209
+ }
210
+ },
211
+ {
212
+ "name": "blockNumber",
213
+ "description": "A BlockNumber at which to request the balance",
214
+ "schema": {
215
+ "$ref": "#/components/schemas/BlockNumber"
216
+ }
217
+ }
218
+ ],
219
+ "result": {
220
+ "name": "getBalanceResult",
221
+ "schema": {
222
+ "$ref": "#/components/schemas/IntegerOrNull"
223
+ }
224
+ }
225
+ },
226
+ {
227
+ "name": "eth_getBlockByHash",
228
+ "summary": "Gets a block for a given hash",
229
+ "params": [
230
+ {
231
+ "name": "blockHash",
232
+ "required": true,
233
+ "schema": {
234
+ "$ref": "#/components/schemas/BlockHash"
235
+ }
236
+ },
237
+ {
238
+ "name": "includeTransactions",
239
+ "description": "If `true` it returns the full transaction objects, if `false` only the hashes of the transactions.",
240
+ "required": true,
241
+ "schema": {
242
+ "title": "isTransactionsIncluded",
243
+ "type": "boolean"
244
+ }
245
+ }
246
+ ],
247
+ "result": {
248
+ "name": "getBlockByHashResult",
249
+ "schema": {
250
+ "$ref": "#/components/schemas/BlockOrNull"
251
+ }
252
+ }
253
+ },
254
+ {
255
+ "name": "eth_getBlockByNumber",
256
+ "summary": "Gets a block for a given number",
257
+ "params": [
258
+ {
259
+ "$ref": "#/components/contentDescriptors/BlockNumber"
260
+ },
261
+ {
262
+ "name": "includeTransactions",
263
+ "description": "If `true` it returns the full transaction objects, if `false` only the hashes of the transactions.",
264
+ "required": true,
265
+ "schema": {
266
+ "title": "isTransactionsIncluded",
267
+ "type": "boolean"
268
+ }
269
+ }
270
+ ],
271
+ "result": {
272
+ "name": "getBlockByNumberResult",
273
+ "schema": {
274
+ "$ref": "#/components/schemas/BlockOrNull"
275
+ }
276
+ }
277
+ },
278
+ {
279
+ "name": "eth_getBlockTransactionCountByHash",
280
+ "summary": "Returns the number of transactions in a block from a block matching the given block hash.",
281
+ "params": [
282
+ {
283
+ "$ref": "#/components/contentDescriptors/BlockHash"
284
+ }
285
+ ],
286
+ "result": {
287
+ "name": "blockTransactionCountByHash",
288
+ "description": "The Number of total transactions in the given block",
289
+ "schema": {
290
+ "$ref": "#/components/schemas/IntegerOrNull"
291
+ }
292
+ }
293
+ },
294
+ {
295
+ "name": "eth_getBlockTransactionCountByNumber",
296
+ "summary": "Returns the number of transactions in a block from a block matching the given block number.",
297
+ "params": [
298
+ {
299
+ "$ref": "#/components/contentDescriptors/BlockNumber"
300
+ }
301
+ ],
302
+ "result": {
303
+ "name": "blockTransactionCountByHash",
304
+ "description": "The Number of total transactions in the given block",
305
+ "schema": {
306
+ "$ref": "#/components/schemas/IntegerOrNull"
307
+ }
308
+ }
309
+ },
310
+ {
311
+ "name": "eth_getCode",
312
+ "summary": "Returns code at a given contract address",
313
+ "params": [
314
+ {
315
+ "name": "address",
316
+ "required": true,
317
+ "description": "The address of the contract",
318
+ "schema": {
319
+ "$ref": "#/components/schemas/Address"
320
+ }
321
+ },
322
+ {
323
+ "name": "blockNumber",
324
+ "description": "A BlockNumber of which the code existed",
325
+ "schema": {
326
+ "$ref": "#/components/schemas/BlockNumber"
327
+ }
328
+ }
329
+ ],
330
+ "result": {
331
+ "name": "bytes",
332
+ "schema": {
333
+ "$ref": "#/components/schemas/Bytes"
334
+ }
335
+ }
336
+ },
337
+ {
338
+ "name": "eth_getFilterChanges",
339
+ "summary": "Polling method for a filter, which returns an array of logs which occurred since last poll.",
340
+ "params": [
341
+ {
342
+ "name": "filterId",
343
+ "required": true,
344
+ "schema": {
345
+ "$ref": "#/components/schemas/FilterId"
346
+ }
347
+ }
348
+ ],
349
+ "result": {
350
+ "name": "logResult",
351
+ "schema": {
352
+ "title": "logResult",
353
+ "type": "array",
354
+ "items": {
355
+ "$ref": "#/components/schemas/Log"
356
+ }
357
+ }
358
+ }
359
+ },
360
+ {
361
+ "name": "eth_getFilterLogs",
362
+ "summary": "Returns an array of all logs matching filter with given id.",
363
+ "params": [
364
+ {
365
+ "name": "filterId",
366
+ "required": true,
367
+ "schema": {
368
+ "$ref": "#/components/schemas/FilterId"
369
+ }
370
+ }
371
+ ],
372
+ "result": {
373
+ "$ref": "#/components/contentDescriptors/Logs"
374
+ }
375
+ },
376
+ {
377
+ "name": "eth_getRawTransactionByHash",
378
+ "summary": "Returns raw transaction data of a transaction with the given hash.",
379
+ "params": [
380
+ {
381
+ "$ref": "#/components/contentDescriptors/TransactionHash"
382
+ }
383
+ ],
384
+ "result": {
385
+ "name": "rawTransactionByHash",
386
+ "description": "The raw transaction data",
387
+ "schema": {
388
+ "$ref": "#/components/schemas/Bytes"
389
+ }
390
+ }
391
+ },
392
+ {
393
+ "name": "eth_getRawTransactionByBlockHashAndIndex",
394
+ "summary": "Returns raw transaction data of a transaction with the block hash and index of which it was mined.",
395
+ "params": [
396
+ {
397
+ "$ref": "#/components/contentDescriptors/BlockHash"
398
+ },
399
+ {
400
+ "name": "index",
401
+ "description": "The ordering in which a transaction is mined within its block.",
402
+ "required": true,
403
+ "schema": {
404
+ "$ref": "#/components/schemas/Integer"
405
+ }
406
+ }
407
+ ],
408
+ "result": {
409
+ "name": "rawTransaction",
410
+ "description": "The raw transaction data",
411
+ "schema": {
412
+ "$ref": "#/components/schemas/Bytes"
413
+ }
414
+ }
415
+ },
416
+ {
417
+ "name": "eth_getRawTransactionByBlockNumberAndIndex",
418
+ "summary": "Returns raw transaction data of a transaction with the block number and index of which it was mined.",
419
+ "params": [
420
+ {
421
+ "$ref": "#/components/contentDescriptors/BlockNumber"
422
+ },
423
+ {
424
+ "name": "index",
425
+ "description": "The ordering in which a transaction is mined within its block.",
426
+ "required": true,
427
+ "schema": {
428
+ "$ref": "#/components/schemas/Integer"
429
+ }
430
+ }
431
+ ],
432
+ "result": {
433
+ "name": "rawTransaction",
434
+ "description": "The raw transaction data",
435
+ "schema": {
436
+ "$ref": "#/components/schemas/Bytes"
437
+ }
438
+ }
439
+ },
440
+ {
441
+ "name": "eth_getLogs",
442
+ "summary": "Returns an array of all logs matching a given filter object.",
443
+ "params": [
444
+ {
445
+ "$ref": "#/components/contentDescriptors/Filter"
446
+ }
447
+ ],
448
+ "result": {
449
+ "$ref": "#/components/contentDescriptors/Logs"
450
+ }
451
+ },
452
+ {
453
+ "name": "eth_getStorageAt",
454
+ "summary": "Gets a storage value from a contract address, a position, and an optional blockNumber",
455
+ "params": [
456
+ {
457
+ "$ref": "#/components/contentDescriptors/Address"
458
+ },
459
+ {
460
+ "$ref": "#/components/contentDescriptors/Position"
461
+ },
462
+ {
463
+ "$ref": "#/components/contentDescriptors/BlockNumber"
464
+ }
465
+ ],
466
+ "result": {
467
+ "name": "dataWord",
468
+ "schema": {
469
+ "$ref": "#/components/schemas/DataWord"
470
+ }
471
+ }
472
+ },
473
+ {
474
+ "name": "eth_getTransactionByBlockHashAndIndex",
475
+ "summary": "Returns the information about a transaction requested by the block hash and index of which it was mined.",
476
+ "params": [
477
+ {
478
+ "$ref": "#/components/contentDescriptors/BlockHash"
479
+ },
480
+ {
481
+ "name": "index",
482
+ "description": "The ordering in which a transaction is mined within its block.",
483
+ "required": true,
484
+ "schema": {
485
+ "$ref": "#/components/schemas/Integer"
486
+ }
487
+ }
488
+ ],
489
+ "result": {
490
+ "$ref": "#/components/contentDescriptors/TransactionResult"
491
+ },
492
+ "examples": [
493
+ {
494
+ "name": "nullExample",
495
+ "params": [
496
+ {
497
+ "name": "blockHashExample",
498
+ "value": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"
499
+ },
500
+ {
501
+ "name": "indexExample",
502
+ "value": "0x0"
503
+ }
504
+ ],
505
+ "result": {
506
+ "name": "nullResultExample",
507
+ "value": null
508
+ }
509
+ }
510
+ ]
511
+ },
512
+ {
513
+ "name": "eth_getTransactionByBlockNumberAndIndex",
514
+ "summary": "Returns the information about a transaction requested by the block number and index of which it was mined.",
515
+ "params": [
516
+ {
517
+ "$ref": "#/components/contentDescriptors/BlockNumber"
518
+ },
519
+ {
520
+ "name": "index",
521
+ "description": "The ordering in which a transaction is mined within its block.",
522
+ "required": true,
523
+ "schema": {
524
+ "$ref": "#/components/schemas/Integer"
525
+ }
526
+ }
527
+ ],
528
+ "result": {
529
+ "$ref": "#/components/contentDescriptors/TransactionResult"
530
+ }
531
+ },
532
+ {
533
+ "name": "eth_getTransactionByHash",
534
+ "summary": "Returns the information about a transaction requested by transaction hash.",
535
+ "params": [
536
+ {
537
+ "$ref": "#/components/contentDescriptors/TransactionHash"
538
+ }
539
+ ],
540
+ "result": {
541
+ "$ref": "#/components/contentDescriptors/TransactionResult"
542
+ }
543
+ },
544
+ {
545
+ "name": "eth_getTransactionCount",
546
+ "summary": "Returns the number of transactions sent from an address",
547
+ "params": [
548
+ {
549
+ "$ref": "#/components/contentDescriptors/Address"
550
+ },
551
+ {
552
+ "$ref": "#/components/contentDescriptors/BlockNumber"
553
+ }
554
+ ],
555
+ "result": {
556
+ "name": "transactionCount",
557
+ "schema": {
558
+ "title": "nonceOrNull",
559
+ "oneOf": [
560
+ {
561
+ "$ref": "#/components/schemas/Nonce"
562
+ },
563
+ {
564
+ "$ref": "#/components/schemas/Null"
565
+ }
566
+ ]
567
+ }
568
+ }
569
+ },
570
+ {
571
+ "name": "eth_getTransactionReceipt",
572
+ "summary": "Returns the receipt information of a transaction by its hash.",
573
+ "params": [
574
+ {
575
+ "$ref": "#/components/contentDescriptors/TransactionHash"
576
+ }
577
+ ],
578
+ "result": {
579
+ "name": "transactionReceiptResult",
580
+ "description": "returns either a receipt or null",
581
+ "schema": {
582
+ "title": "transactionReceiptOrNull",
583
+ "oneOf": [
584
+ {
585
+ "$ref": "#/components/schemas/Receipt"
586
+ },
587
+ {
588
+ "$ref": "#/components/schemas/Null"
589
+ }
590
+ ]
591
+ }
592
+ }
593
+ },
594
+ {
595
+ "name": "eth_getUncleByBlockHashAndIndex",
596
+ "summary": "Returns information about a uncle of a block by hash and uncle index position.",
597
+ "params": [
598
+ {
599
+ "$ref": "#/components/contentDescriptors/BlockHash"
600
+ },
601
+ {
602
+ "name": "index",
603
+ "description": "The ordering in which a uncle is included within its block.",
604
+ "required": true,
605
+ "schema": {
606
+ "$ref": "#/components/schemas/Integer"
607
+ }
608
+ }
609
+ ],
610
+ "result": {
611
+ "name": "uncle",
612
+ "schema": {
613
+ "$ref": "#/components/schemas/BlockOrNull"
614
+ }
615
+ }
616
+ },
617
+ {
618
+ "name": "eth_getUncleByBlockNumberAndIndex",
619
+ "summary": "Returns information about a uncle of a block by hash and uncle index position.",
620
+ "params": [
621
+ {
622
+ "name": "uncleBlockNumber",
623
+ "description": "The block in which the uncle was included",
624
+ "required": true,
625
+ "schema": {
626
+ "$ref": "#/components/schemas/BlockNumber"
627
+ }
628
+ },
629
+ {
630
+ "name": "index",
631
+ "description": "The ordering in which a uncle is included within its block.",
632
+ "required": true,
633
+ "schema": {
634
+ "$ref": "#/components/schemas/Integer"
635
+ }
636
+ }
637
+ ],
638
+ "result": {
639
+ "name": "uncleResult",
640
+ "description": "returns an uncle block or null",
641
+ "schema": {
642
+ "$ref": "#/components/schemas/BlockOrNull"
643
+ }
644
+ },
645
+ "examples": [
646
+ {
647
+ "name": "nullResultExample",
648
+ "params": [
649
+ {
650
+ "name": "uncleBlockNumberExample",
651
+ "value": "0x0"
652
+ },
653
+ {
654
+ "name": "uncleBlockNumberIndexExample",
655
+ "value": "0x0"
656
+ }
657
+ ],
658
+ "result": {
659
+ "name": "nullResultExample",
660
+ "value": null
661
+ }
662
+ }
663
+ ]
664
+ },
665
+ {
666
+ "name": "eth_getUncleCountByBlockHash",
667
+ "summary": "Returns the number of uncles in a block from a block matching the given block hash.",
668
+ "params": [
669
+ {
670
+ "$ref": "#/components/contentDescriptors/BlockHash"
671
+ }
672
+ ],
673
+ "result": {
674
+ "name": "uncleCountResult",
675
+ "description": "The Number of total uncles in the given block",
676
+ "schema": {
677
+ "$ref": "#/components/schemas/IntegerOrNull"
678
+ }
679
+ }
680
+ },
681
+ {
682
+ "name": "eth_getUncleCountByBlockNumber",
683
+ "summary": "Returns the number of uncles in a block from a block matching the given block number.",
684
+ "params": [
685
+ {
686
+ "$ref": "#/components/contentDescriptors/BlockNumber"
687
+ }
688
+ ],
689
+ "result": {
690
+ "$ref": "#/components/contentDescriptors/UncleCountResult"
691
+ }
692
+ },
693
+ {
694
+ "name": "eth_getProof",
695
+ "summary": "Returns the account- and storage-values of the specified account including the Merkle-proof.",
696
+ "params": [
697
+ {
698
+ "name": "address",
699
+ "description": "The address of the account or contract",
700
+ "required": true,
701
+ "schema": {
702
+ "$ref": "#/components/schemas/Address"
703
+ }
704
+ },
705
+ {
706
+ "name": "storageKeys",
707
+ "required": true,
708
+ "schema": {
709
+ "title": "storageKeys",
710
+ "description": "A storage key is indexed from the solidity compiler by the order it is declared. For mappings it uses the keccak of the mapping key with its position (and recursively for X-dimensional mappings)",
711
+ "items": {
712
+ "$ref": "#/components/schemas/StorageProofKey"
713
+ }
714
+ }
715
+ },
716
+ {
717
+ "$ref": "#/components/contentDescriptors/BlockNumber"
718
+ }
719
+ ],
720
+ "result": {
721
+ "name": "account",
722
+ "schema": {
723
+ "title": "proofAccountOrNull",
724
+ "oneOf": [
725
+ {
726
+ "title": "proofAccount",
727
+ "type": "object",
728
+ "description": "The merkle proofs of the specified account connecting them to the blockhash of the block specified",
729
+ "properties": {
730
+ "address": {
731
+ "title": "proofAccountAddress",
732
+ "description": "The address of the account or contract of the request",
733
+ "$ref": "#/components/schemas/Address"
734
+ },
735
+ "accountProof": {
736
+ "$ref": "#/components/schemas/ProofNodes"
737
+ },
738
+ "balance": {
739
+ "title": "proofAccountBalance",
740
+ "description": "The Ether balance of the account or contract of the request",
741
+ "$ref": "#/components/schemas/Integer"
742
+ },
743
+ "codeHash": {
744
+ "title": "proofAccountCodeHash",
745
+ "description": "The code hash of the contract of the request (keccak(NULL) if external account)",
746
+ "$ref": "#/components/schemas/Keccak"
747
+ },
748
+ "nonce": {
749
+ "title": "proofAccountNonce",
750
+ "description": "The transaction count of the account or contract of the request",
751
+ "$ref": "#/components/schemas/Nonce"
752
+ },
753
+ "storageHash": {
754
+ "title": "proofAccountStorageHash",
755
+ "description": "The storage hash of the contract of the request (keccak(rlp(NULL)) if external account)",
756
+ "$ref": "#/components/schemas/Keccak"
757
+ },
758
+ "storageProof": {
759
+ "$ref": "#/components/schemas/StorageProof"
760
+ }
761
+ }
762
+ },
763
+ {
764
+ "$ref": "#/components/schemas/Null"
765
+ }
766
+ ]
767
+ }
768
+ }
769
+ },
770
+ {
771
+ "name": "eth_getWork",
772
+ "summary": "Returns the hash of the current block, the seedHash, and the boundary condition to be met ('target').",
773
+ "params": [],
774
+ "result": {
775
+ "name": "work",
776
+ "schema": {
777
+ "title": "getWorkResults",
778
+ "type": "array",
779
+ "items": [
780
+ {
781
+ "$ref": "#/components/schemas/PowHash"
782
+ },
783
+ {
784
+ "$ref": "#/components/schemas/SeedHash"
785
+ },
786
+ {
787
+ "$ref": "#/components/schemas/Difficulty"
788
+ }
789
+ ]
790
+ }
791
+ }
792
+ },
793
+ {
794
+ "name": "eth_hashrate",
795
+ "summary": "Returns the number of hashes per second that the node is mining with.",
796
+ "params": [],
797
+ "result": {
798
+ "name": "hashesPerSecond",
799
+ "description": "Integer of the number of hashes per second",
800
+ "schema": {
801
+ "$ref": "#/components/schemas/Integer"
802
+ }
803
+ }
804
+ },
805
+ {
806
+ "name": "eth_mining",
807
+ "summary": "Returns true if client is actively mining new blocks.",
808
+ "params": [],
809
+ "result": {
810
+ "name": "mining",
811
+ "description": "Whether or not the client is mining",
812
+ "schema": {
813
+ "type": "boolean"
814
+ }
815
+ }
816
+ },
817
+ {
818
+ "name": "eth_newBlockFilter",
819
+ "summary": "Creates a filter in the node, to notify when a new block arrives. To check if the state has changed, call eth_getFilterChanges.",
820
+ "params": [],
821
+ "result": {
822
+ "$ref": "#/components/contentDescriptors/FilterId"
823
+ }
824
+ },
825
+ {
826
+ "name": "eth_newFilter",
827
+ "summary": "Creates a filter object, based on filter options, to notify when the state changes (logs). To check if the state has changed, call eth_getFilterChanges.",
828
+ "params": [
829
+ {
830
+ "$ref": "#/components/contentDescriptors/Filter"
831
+ }
832
+ ],
833
+ "result": {
834
+ "name": "filterId",
835
+ "description": "The filter ID for use in `eth_getFilterChanges`",
836
+ "schema": {
837
+ "$ref": "#/components/schemas/Integer"
838
+ }
839
+ }
840
+ },
841
+ {
842
+ "name": "eth_newPendingTransactionFilter",
843
+ "summary": "Creates a filter in the node, to notify when new pending transactions arrive. To check if the state has changed, call eth_getFilterChanges.",
844
+ "params": [],
845
+ "result": {
846
+ "$ref": "#/components/contentDescriptors/FilterId"
847
+ }
848
+ },
849
+ {
850
+ "name": "eth_pendingTransactions",
851
+ "summary": "Returns the transactions that are pending in the transaction pool and have a from address that is one of the accounts this node manages.",
852
+ "params": [],
853
+ "result": {
854
+ "name": "pendingTransactions",
855
+ "schema": {
856
+ "$ref": "#/components/schemas/Transactions"
857
+ }
858
+ }
859
+ },
860
+ {
861
+ "name": "eth_protocolVersion",
862
+ "summary": "Returns the current ethereum protocol version.",
863
+ "params": [],
864
+ "result": {
865
+ "name": "protocolVersion",
866
+ "description": "The current ethereum protocol version",
867
+ "schema": {
868
+ "$ref": "#/components/schemas/Integer"
869
+ }
870
+ }
871
+ },
872
+ {
873
+ "name": "eth_sendRawTransaction",
874
+ "summary": "Creates new message call transaction or a contract creation for signed transactions.",
875
+ "params": [
876
+ {
877
+ "name": "signedTransactionData",
878
+ "required": true,
879
+ "description": "The signed transaction data",
880
+ "schema": {
881
+ "$ref": "#/components/schemas/Bytes"
882
+ }
883
+ }
884
+ ],
885
+ "result": {
886
+ "name": "transactionHash",
887
+ "description": "The transaction hash, or the zero hash if the transaction is not yet available.",
888
+ "schema": {
889
+ "$ref": "#/components/schemas/Keccak"
890
+ }
891
+ }
892
+ },
893
+ {
894
+ "name": "eth_submitHashrate",
895
+ "deprecated": true,
896
+ "summary": "Used for submitting mining hashrate.",
897
+ "params": [
898
+ {
899
+ "name": "hashRate",
900
+ "required": true,
901
+ "schema": {
902
+ "$ref": "#/components/schemas/DataWord"
903
+ }
904
+ },
905
+ {
906
+ "name": "id",
907
+ "required": true,
908
+ "description": "String identifying the client",
909
+ "schema": {
910
+ "$ref": "#/components/schemas/DataWord"
911
+ }
912
+ }
913
+ ],
914
+ "result": {
915
+ "name": "submitHashRateSuccess",
916
+ "description": "whether of not submitting went through successfully",
917
+ "schema": {
918
+ "type": "boolean"
919
+ }
920
+ }
921
+ },
922
+ {
923
+ "name": "eth_submitWork",
924
+ "summary": "Used for submitting a proof-of-work solution.",
925
+ "params": [
926
+ {
927
+ "$ref": "#/components/contentDescriptors/Nonce"
928
+ },
929
+ {
930
+ "name": "powHash",
931
+ "required": true,
932
+ "schema": {
933
+ "$ref": "#/components/schemas/PowHash"
934
+ }
935
+ },
936
+ {
937
+ "name": "mixHash",
938
+ "required": true,
939
+ "schema": {
940
+ "$ref": "#/components/schemas/MixHash"
941
+ }
942
+ }
943
+ ],
944
+ "result": {
945
+ "name": "solutionValid",
946
+ "description": "returns true if the provided solution is valid, otherwise false.",
947
+ "schema": {
948
+ "type": "boolean"
949
+ }
950
+ },
951
+ "examples": [
952
+ {
953
+ "name": "submitWorkExample",
954
+ "params": [
955
+ {
956
+ "name": "nonceExample",
957
+ "description": "example of a number only used once",
958
+ "value": "0x0000000000000001"
959
+ },
960
+ {
961
+ "name": "powHashExample",
962
+ "description": "proof of work to submit",
963
+ "value": "0x6bf2cAE0dE3ec3ecA5E194a6C6e02cf42aADfe1C2c4Fff12E5D36C3Cf7297F22"
964
+ },
965
+ {
966
+ "name": "mixHashExample",
967
+ "description": "the mix digest example",
968
+ "value": "0xD1FE5700000000000000000000000000D1FE5700000000000000000000000000"
969
+ }
970
+ ],
971
+ "result": {
972
+ "name": "solutionInvalidExample",
973
+ "description": "this example should return `false` as it is not a valid pow to submit",
974
+ "value": false
975
+ }
976
+ }
977
+ ]
978
+ },
979
+ {
980
+ "name": "eth_syncing",
981
+ "summary": "Returns an object with data about the sync status or false.",
982
+ "params": [],
983
+ "result": {
984
+ "name": "syncing",
985
+ "schema": {
986
+ "title": "isSyncingResult",
987
+ "oneOf": [
988
+ {
989
+ "title": "syncingData",
990
+ "description": "An object with sync status data",
991
+ "type": "object",
992
+ "properties": {
993
+ "startingBlock": {
994
+ "title": "syncingDataStartingBlock",
995
+ "description": "Block at which the import started (will only be reset, after the sync reached his head)",
996
+ "$ref": "#/components/schemas/Integer"
997
+ },
998
+ "currentBlock": {
999
+ "title": "syncingDataCurrentBlock",
1000
+ "description": "The current block, same as eth_blockNumber",
1001
+ "$ref": "#/components/schemas/Integer"
1002
+ },
1003
+ "highestBlock": {
1004
+ "title": "syncingDataHighestBlock",
1005
+ "description": "The estimated highest block",
1006
+ "$ref": "#/components/schemas/Integer"
1007
+ },
1008
+ "knownStates": {
1009
+ "title": "syncingDataKnownStates",
1010
+ "description": "The known states",
1011
+ "$ref": "#/components/schemas/Integer"
1012
+ },
1013
+ "pulledStates": {
1014
+ "title": "syncingDataPulledStates",
1015
+ "description": "The pulled states",
1016
+ "$ref": "#/components/schemas/Integer"
1017
+ }
1018
+ }
1019
+ },
1020
+ {
1021
+ "type": "boolean"
1022
+ }
1023
+ ]
1024
+ }
1025
+ }
1026
+ },
1027
+ {
1028
+ "name": "eth_uninstallFilter",
1029
+ "summary": "Uninstalls a filter with given id. Should always be called when watch is no longer needed. Additionally Filters timeout when they aren't requested with eth_getFilterChanges for a period of time.",
1030
+ "params": [
1031
+ {
1032
+ "name": "filterId",
1033
+ "required": true,
1034
+ "schema": {
1035
+ "$ref": "#/components/schemas/FilterId"
1036
+ }
1037
+ }
1038
+ ],
1039
+ "result": {
1040
+ "name": "filterUninstalledSuccess",
1041
+ "description": "returns true if the filter was successfully uninstalled, false otherwise.",
1042
+ "schema": {
1043
+ "type": "boolean"
1044
+ }
1045
+ }
1046
+ }
1047
+ ],
1048
+ "components": {
1049
+ "schemas": {
1050
+ "ProofNode": {
1051
+ "title": "proofNode",
1052
+ "description": "An individual node used to prove a path down a merkle-patricia-tree",
1053
+ "$ref": "#/components/schemas/Bytes"
1054
+ },
1055
+ "StorageProofKey": {
1056
+ "title": "storageProofKey",
1057
+ "description": "The key used to get the storage slot in its account tree.",
1058
+ "$ref": "#/components/schemas/Integer"
1059
+ },
1060
+ "StorageProof": {
1061
+ "title": "storageProofSet",
1062
+ "type": "array",
1063
+ "description": "Current block header PoW hash.",
1064
+ "items": {
1065
+ "title": "storageProof",
1066
+ "type": "object",
1067
+ "description": "Object proving a relationship of a storage value to an account's storageHash.",
1068
+ "properties": {
1069
+ "key": {
1070
+ "$ref": "#/components/schemas/StorageProofKey"
1071
+ },
1072
+ "value": {
1073
+ "title": "storageProofValue",
1074
+ "description": "The value of the storage slot in its account tree",
1075
+ "$ref": "#/components/schemas/Integer"
1076
+ },
1077
+ "proof": {
1078
+ "$ref": "#/components/schemas/ProofNodes"
1079
+ }
1080
+ }
1081
+ }
1082
+ },
1083
+ "ProofNodes": {
1084
+ "title": "proofNodes",
1085
+ "type": "array",
1086
+ "description": "The set of node values needed to traverse a patricia merkle tree (from root to leaf) to retrieve a value",
1087
+ "items": {
1088
+ "$ref": "#/components/schemas/ProofNode"
1089
+ }
1090
+ },
1091
+ "PowHash": {
1092
+ "title": "powHash",
1093
+ "description": "Current block header PoW hash.",
1094
+ "$ref": "#/components/schemas/DataWord"
1095
+ },
1096
+ "SeedHash": {
1097
+ "title": "seedHash",
1098
+ "description": "The seed hash used for the DAG.",
1099
+ "$ref": "#/components/schemas/DataWord"
1100
+ },
1101
+ "MixHash": {
1102
+ "title": "mixHash",
1103
+ "description": "The mix digest.",
1104
+ "$ref": "#/components/schemas/DataWord"
1105
+ },
1106
+ "Difficulty": {
1107
+ "title": "difficulty",
1108
+ "description": "The boundary condition ('target'), 2^256 / difficulty.",
1109
+ "$ref": "#/components/schemas/DataWord"
1110
+ },
1111
+ "FilterId": {
1112
+ "title": "filterId",
1113
+ "type": "string",
1114
+ "description": "An identifier used to reference the filter."
1115
+ },
1116
+ "BlockHash": {
1117
+ "title": "blockHash",
1118
+ "type": "string",
1119
+ "pattern": "^0x[a-fA-F\\d]{64}$",
1120
+ "description": "The hex representation of the Keccak 256 of the RLP encoded block"
1121
+ },
1122
+ "BlockNumber": {
1123
+ "title": "blockNumber",
1124
+ "type": "string",
1125
+ "description": "The hex representation of the block's height",
1126
+ "$ref": "#/components/schemas/Integer"
1127
+ },
1128
+ "BlockNumberTag": {
1129
+ "title": "blockNumberTag",
1130
+ "type": "string",
1131
+ "description": "The optional block height description",
1132
+ "enum": [
1133
+ "earliest",
1134
+ "latest",
1135
+ "pending"
1136
+ ]
1137
+ },
1138
+ "BlockOrNull": {
1139
+ "title": "blockOrNull",
1140
+ "oneOf": [
1141
+ {
1142
+ "$ref": "#/components/schemas/Block"
1143
+ },
1144
+ {
1145
+ "$ref": "#/components/schemas/Null"
1146
+ }
1147
+ ]
1148
+ },
1149
+ "IntegerOrNull": {
1150
+ "title": "integerOrNull",
1151
+ "oneOf": [
1152
+ {
1153
+ "$ref": "#/components/schemas/Integer"
1154
+ },
1155
+ {
1156
+ "$ref": "#/components/schemas/Null"
1157
+ }
1158
+ ]
1159
+ },
1160
+ "AddressOrNull": {
1161
+ "title": "addressOrNull",
1162
+ "oneOf": [
1163
+ {
1164
+ "$ref": "#/components/schemas/Address"
1165
+ },
1166
+ {
1167
+ "$ref": "#/components/schemas/Null"
1168
+ }
1169
+ ]
1170
+ },
1171
+ "Receipt": {
1172
+ "title": "receipt",
1173
+ "type": "object",
1174
+ "description": "The receipt of a transaction",
1175
+ "required": [
1176
+ "blockHash",
1177
+ "blockNumber",
1178
+ "contractAddress",
1179
+ "cumulativeGasUsed",
1180
+ "from",
1181
+ "gasUsed",
1182
+ "logs",
1183
+ "logsBloom",
1184
+ "to",
1185
+ "transactionHash",
1186
+ "transactionIndex"
1187
+ ],
1188
+ "properties": {
1189
+ "blockHash": {
1190
+ "$ref": "#/components/schemas/BlockHash"
1191
+ },
1192
+ "blockNumber": {
1193
+ "$ref": "#/components/schemas/BlockNumber"
1194
+ },
1195
+ "contractAddress": {
1196
+ "title": "ReceiptContractAddress",
1197
+ "description": "The contract address created, if the transaction was a contract creation, otherwise null",
1198
+ "$ref": "#/components/schemas/AddressOrNull"
1199
+ },
1200
+ "cumulativeGasUsed": {
1201
+ "title": "ReceiptCumulativeGasUsed",
1202
+ "description": "The gas units used by the transaction",
1203
+ "$ref": "#/components/schemas/Integer"
1204
+ },
1205
+ "from": {
1206
+ "$ref": "#/components/schemas/From"
1207
+ },
1208
+ "gasUsed": {
1209
+ "title": "ReceiptGasUsed",
1210
+ "description": "The total gas used by the transaction",
1211
+ "$ref": "#/components/schemas/Integer"
1212
+ },
1213
+ "logs": {
1214
+ "title": "logs",
1215
+ "type": "array",
1216
+ "description": "An array of all the logs triggered during the transaction",
1217
+ "items": {
1218
+ "$ref": "#/components/schemas/Log"
1219
+ }
1220
+ },
1221
+ "logsBloom": {
1222
+ "$ref": "#/components/schemas/BloomFilter"
1223
+ },
1224
+ "to": {
1225
+ "$ref": "#/components/schemas/To"
1226
+ },
1227
+ "transactionHash": {
1228
+ "$ref": "#/components/schemas/TransactionHash"
1229
+ },
1230
+ "transactionIndex": {
1231
+ "$ref": "#/components/schemas/TransactionIndex"
1232
+ },
1233
+ "postTransactionState": {
1234
+ "title": "ReceiptPostTransactionState",
1235
+ "description": "The intermediate stateRoot directly after transaction execution.",
1236
+ "$ref": "#/components/schemas/Keccak"
1237
+ },
1238
+ "status": {
1239
+ "title": "ReceiptStatus",
1240
+ "description": "Whether or not the transaction threw an error.",
1241
+ "type": "boolean"
1242
+ }
1243
+ }
1244
+ },
1245
+ "BloomFilter": {
1246
+ "title": "bloomFilter",
1247
+ "type": "string",
1248
+ "description": "A 2048 bit bloom filter from the logs of the transaction. Each log sets 3 bits though taking the low-order 11 bits of each of the first three pairs of bytes in a Keccak 256 hash of the log's byte series"
1249
+ },
1250
+ "Log": {
1251
+ "title": "log",
1252
+ "type": "object",
1253
+ "description": "An indexed event generated during a transaction",
1254
+ "properties": {
1255
+ "address": {
1256
+ "title": "LogAddress",
1257
+ "description": "Sender of the transaction",
1258
+ "$ref": "#/components/schemas/Address"
1259
+ },
1260
+ "blockHash": {
1261
+ "$ref": "#/components/schemas/BlockHash"
1262
+ },
1263
+ "blockNumber": {
1264
+ "$ref": "#/components/schemas/BlockNumber"
1265
+ },
1266
+ "data": {
1267
+ "title": "LogData",
1268
+ "description": "The data/input string sent along with the transaction",
1269
+ "$ref": "#/components/schemas/Bytes"
1270
+ },
1271
+ "logIndex": {
1272
+ "title": "LogIndex",
1273
+ "description": "The index of the event within its transaction, null when its pending",
1274
+ "$ref": "#/components/schemas/Integer"
1275
+ },
1276
+ "removed": {
1277
+ "title": "logIsRemoved",
1278
+ "description": "Whether or not the log was orphaned off the main chain",
1279
+ "type": "boolean"
1280
+ },
1281
+ "topics": {
1282
+ "$ref": "#/components/schemas/Topics"
1283
+ },
1284
+ "transactionHash": {
1285
+ "$ref": "#/components/schemas/TransactionHash"
1286
+ },
1287
+ "transactionIndex": {
1288
+ "$ref": "#/components/schemas/TransactionIndex"
1289
+ }
1290
+ }
1291
+ },
1292
+ "Topics": {
1293
+ "title": "LogTopics",
1294
+ "description": "Topics are order-dependent. Each topic can also be an array of DATA with 'or' options.",
1295
+ "type": "array",
1296
+ "items": {
1297
+ "$ref": "#/components/schemas/Topic"
1298
+ }
1299
+ },
1300
+ "Topic": {
1301
+ "title": "topic",
1302
+ "description": "32 Bytes DATA of indexed log arguments. (In solidity: The first topic is the hash of the signature of the event (e.g. Deposit(address,bytes32,uint256))",
1303
+ "$ref": "#/components/schemas/DataWord"
1304
+ },
1305
+ "TransactionIndex": {
1306
+ "title": "transactionIndex",
1307
+ "description": "The index of the transaction. null when its pending",
1308
+ "$ref": "#/components/schemas/IntegerOrNull"
1309
+ },
1310
+ "BlockNumberOrNull": {
1311
+ "title": "blockNumberOrNull",
1312
+ "description": "The block number or null when its the pending block",
1313
+ "oneOf": [
1314
+ {
1315
+ "$ref": "#/components/schemas/BlockNumber"
1316
+ },
1317
+ {
1318
+ "$ref": "#/components/schemas/Null"
1319
+ }
1320
+ ]
1321
+ },
1322
+ "BlockHashOrNull": {
1323
+ "title": "blockHashOrNull",
1324
+ "description": "The block hash or null when its the pending block",
1325
+ "$ref": "#/components/schemas/KeccakOrPending"
1326
+ },
1327
+ "NonceOrNull": {
1328
+ "title": "nonceOrNull",
1329
+ "description": "Randomly selected number to satisfy the proof-of-work or null when its the pending block",
1330
+ "oneOf": [
1331
+ {
1332
+ "$ref": "#/components/schemas/Nonce"
1333
+ },
1334
+ {
1335
+ "$ref": "#/components/schemas/Null"
1336
+ }
1337
+ ]
1338
+ },
1339
+ "From": {
1340
+ "title": "From",
1341
+ "description": "The sender of the transaction",
1342
+ "$ref": "#/components/schemas/Address"
1343
+ },
1344
+ "To": {
1345
+ "title": "To",
1346
+ "description": "Destination address of the transaction. Null if it was a contract create.",
1347
+ "oneOf": [
1348
+ {
1349
+ "$ref": "#/components/schemas/Address"
1350
+ },
1351
+ {
1352
+ "$ref": "#/components/schemas/Null"
1353
+ }
1354
+ ]
1355
+ },
1356
+ "Block": {
1357
+ "title": "Block",
1358
+ "description": "The Block is the collection of relevant pieces of information (known as the block header), together with information corresponding to the comprised transactions, and a set of other block headers that are known to have a parent equal to the present block’s parent’s parent.",
1359
+ "type": "object",
1360
+ "properties": {
1361
+ "number": {
1362
+ "$ref": "#/components/schemas/BlockNumberOrNull"
1363
+ },
1364
+ "hash": {
1365
+ "$ref": "#/components/schemas/BlockHashOrNull"
1366
+ },
1367
+ "parentHash": {
1368
+ "$ref": "#/components/schemas/BlockHash"
1369
+ },
1370
+ "nonce": {
1371
+ "$ref": "#/components/schemas/NonceOrNull"
1372
+ },
1373
+ "sha3Uncles": {
1374
+ "title": "blockShaUncles",
1375
+ "description": "Keccak hash of the uncles data in the block",
1376
+ "$ref": "#/components/schemas/Keccak"
1377
+ },
1378
+ "logsBloom": {
1379
+ "title": "blockLogsBloom",
1380
+ "type": "string",
1381
+ "description": "The bloom filter for the logs of the block or null when its the pending block",
1382
+ "pattern": "^0x[a-fA-F\\d]+$"
1383
+ },
1384
+ "transactionsRoot": {
1385
+ "title": "blockTransactionsRoot",
1386
+ "description": "The root of the transactions trie of the block.",
1387
+ "$ref": "#/components/schemas/Keccak"
1388
+ },
1389
+ "stateRoot": {
1390
+ "title": "blockStateRoot",
1391
+ "description": "The root of the final state trie of the block",
1392
+ "$ref": "#/components/schemas/Keccak"
1393
+ },
1394
+ "receiptsRoot": {
1395
+ "title": "blockReceiptsRoot",
1396
+ "description": "The root of the receipts trie of the block",
1397
+ "$ref": "#/components/schemas/Keccak"
1398
+ },
1399
+ "miner": {
1400
+ "$ref": "#/components/schemas/AddressOrNull"
1401
+ },
1402
+ "difficulty": {
1403
+ "title": "blockDifficulty",
1404
+ "type": "string",
1405
+ "description": "Integer of the difficulty for this block"
1406
+ },
1407
+ "totalDifficulty": {
1408
+ "title": "blockTotalDifficulty",
1409
+ "description": "Integer of the total difficulty of the chain until this block",
1410
+ "$ref": "#/components/schemas/IntegerOrNull"
1411
+ },
1412
+ "extraData": {
1413
+ "title": "blockExtraData",
1414
+ "type": "string",
1415
+ "description": "The 'extra data' field of this block"
1416
+ },
1417
+ "size": {
1418
+ "title": "blockSize",
1419
+ "type": "string",
1420
+ "description": "Integer the size of this block in bytes"
1421
+ },
1422
+ "gasLimit": {
1423
+ "title": "blockGasLimit",
1424
+ "type": "string",
1425
+ "description": "The maximum gas allowed in this block"
1426
+ },
1427
+ "gasUsed": {
1428
+ "title": "blockGasUsed",
1429
+ "type": "string",
1430
+ "description": "The total used gas by all transactions in this block"
1431
+ },
1432
+ "timestamp": {
1433
+ "title": "blockTimeStamp",
1434
+ "type": "string",
1435
+ "description": "The unix timestamp for when the block was collated"
1436
+ },
1437
+ "transactions": {
1438
+ "title": "transactionsOrHashes",
1439
+ "description": "Array of transaction objects, or 32 Bytes transaction hashes depending on the last given parameter",
1440
+ "type": "array",
1441
+ "items": {
1442
+ "title": "transactionOrTransactionHash",
1443
+ "oneOf": [
1444
+ {
1445
+ "$ref": "#/components/schemas/Transaction"
1446
+ },
1447
+ {
1448
+ "$ref": "#/components/schemas/TransactionHash"
1449
+ }
1450
+ ]
1451
+ }
1452
+ },
1453
+ "uncles": {
1454
+ "title": "uncleHashes",
1455
+ "description": "Array of uncle hashes",
1456
+ "type": "array",
1457
+ "items": {
1458
+ "title": "uncleHash",
1459
+ "description": "Block hash of the RLP encoding of an uncle block",
1460
+ "$ref": "#/components/schemas/Keccak"
1461
+ }
1462
+ }
1463
+ }
1464
+ },
1465
+ "Transaction": {
1466
+ "title": "transaction",
1467
+ "type": "object",
1468
+ "required": [
1469
+ "gas",
1470
+ "gasPrice",
1471
+ "nonce"
1472
+ ],
1473
+ "properties": {
1474
+ "blockHash": {
1475
+ "$ref": "#/components/schemas/BlockHashOrNull"
1476
+ },
1477
+ "blockNumber": {
1478
+ "$ref": "#/components/schemas/BlockNumberOrNull"
1479
+ },
1480
+ "from": {
1481
+ "$ref": "#/components/schemas/From"
1482
+ },
1483
+ "gas": {
1484
+ "title": "transactionGas",
1485
+ "type": "string",
1486
+ "description": "The gas limit provided by the sender in Wei"
1487
+ },
1488
+ "gasPrice": {
1489
+ "title": "transactionGasPrice",
1490
+ "type": "string",
1491
+ "description": "The gas price willing to be paid by the sender in Wei"
1492
+ },
1493
+ "hash": {
1494
+ "$ref": "#/components/schemas/TransactionHash"
1495
+ },
1496
+ "input": {
1497
+ "title": "transactionInput",
1498
+ "type": "string",
1499
+ "description": "The data field sent with the transaction"
1500
+ },
1501
+ "nonce": {
1502
+ "title": "transactionNonce",
1503
+ "description": "The total number of prior transactions made by the sender",
1504
+ "$ref": "#/components/schemas/Nonce"
1505
+ },
1506
+ "to": {
1507
+ "$ref": "#/components/schemas/To"
1508
+ },
1509
+ "transactionIndex": {
1510
+ "$ref": "#/components/schemas/TransactionIndex"
1511
+ },
1512
+ "value": {
1513
+ "title": "transactionValue",
1514
+ "description": "Value of Ether being transferred in Wei",
1515
+ "$ref": "#/components/schemas/Keccak"
1516
+ },
1517
+ "v": {
1518
+ "title": "transactionSigV",
1519
+ "type": "string",
1520
+ "description": "ECDSA recovery id"
1521
+ },
1522
+ "r": {
1523
+ "title": "transactionSigR",
1524
+ "type": "string",
1525
+ "description": "ECDSA signature r"
1526
+ },
1527
+ "s": {
1528
+ "title": "transactionSigS",
1529
+ "type": "string",
1530
+ "description": "ECDSA signature s"
1531
+ }
1532
+ }
1533
+ },
1534
+ "Transactions": {
1535
+ "title": "transactions",
1536
+ "description": "An array of transactions",
1537
+ "type": "array",
1538
+ "items": {
1539
+ "$ref": "#/components/schemas/Transaction"
1540
+ }
1541
+ },
1542
+ "TransactionHash": {
1543
+ "title": "transactionHash",
1544
+ "type": "string",
1545
+ "description": "Keccak 256 Hash of the RLP encoding of a transaction",
1546
+ "$ref": "#/components/schemas/Keccak"
1547
+ },
1548
+ "KeccakOrPending": {
1549
+ "title": "keccakOrPending",
1550
+ "oneOf": [
1551
+ {
1552
+ "$ref": "#/components/schemas/Keccak"
1553
+ },
1554
+ {
1555
+ "$ref": "#/components/schemas/Null"
1556
+ }
1557
+ ]
1558
+ },
1559
+ "Keccak": {
1560
+ "title": "keccak",
1561
+ "type": "string",
1562
+ "description": "Hex representation of a Keccak 256 hash",
1563
+ "pattern": "^0x[a-fA-F\\d]{64}$"
1564
+ },
1565
+ "Nonce": {
1566
+ "title": "nonce",
1567
+ "description": "A number only to be used once",
1568
+ "$ref": "#/components/schemas/Integer"
1569
+ },
1570
+ "Null": {
1571
+ "title": "null",
1572
+ "type": "null",
1573
+ "description": "Null"
1574
+ },
1575
+ "Integer": {
1576
+ "title": "integer",
1577
+ "type": "string",
1578
+ "pattern": "^0x[a-fA-F0-9]+$",
1579
+ "description": "Hex representation of the integer"
1580
+ },
1581
+ "Address": {
1582
+ "title": "address",
1583
+ "type": "string",
1584
+ "pattern": "^0x[a-fA-F\\d]{40}$"
1585
+ },
1586
+ "Addresses": {
1587
+ "title": "addresses",
1588
+ "type": "array",
1589
+ "description": "List of contract addresses from which to monitor events",
1590
+ "items": {
1591
+ "$ref": "#/components/schemas/Address"
1592
+ }
1593
+ },
1594
+ "Position": {
1595
+ "title": "position",
1596
+ "type": "string",
1597
+ "description": "Hex representation of the storage slot where the variable exists",
1598
+ "pattern": "^0x([a-fA-F0-9]?)+$"
1599
+ },
1600
+ "DataWord": {
1601
+ "title": "dataWord",
1602
+ "type": "string",
1603
+ "description": "Hex representation of a 256 bit unit of data",
1604
+ "pattern": "^0x([a-fA-F\\d]{64})?$"
1605
+ },
1606
+ "Bytes": {
1607
+ "title": "bytes",
1608
+ "type": "string",
1609
+ "description": "Hex representation of a variable length byte array",
1610
+ "pattern": "^0x([a-fA-F0-9]?)+$"
1611
+ }
1612
+ },
1613
+ "contentDescriptors": {
1614
+ "Block": {
1615
+ "name": "block",
1616
+ "summary": "A block",
1617
+ "description": "A block object",
1618
+ "schema": {
1619
+ "$ref": "#/components/schemas/Block"
1620
+ }
1621
+ },
1622
+ "Null": {
1623
+ "name": "Null",
1624
+ "description": "JSON Null value",
1625
+ "summary": "Null value",
1626
+ "schema": {
1627
+ "$ref": "#/components/schemas/Null"
1628
+ }
1629
+ },
1630
+ "Signature": {
1631
+ "name": "signature",
1632
+ "summary": "The signature.",
1633
+ "required": true,
1634
+ "schema": {
1635
+ "title": "signatureBytes",
1636
+ "type": "string",
1637
+ "description": "Hex representation of byte array between 2 and 65 chars long",
1638
+ "pattern": "0x^([A-Fa-f0-9]{2}){65}$"
1639
+ }
1640
+ },
1641
+ "GasPrice": {
1642
+ "name": "gasPrice",
1643
+ "required": true,
1644
+ "schema": {
1645
+ "title": "gasPriceResult",
1646
+ "description": "Integer of the current gas price",
1647
+ "$ref": "#/components/schemas/Integer"
1648
+ }
1649
+ },
1650
+ "Transaction": {
1651
+ "required": true,
1652
+ "name": "transaction",
1653
+ "schema": {
1654
+ "$ref": "#/components/schemas/Transaction"
1655
+ }
1656
+ },
1657
+ "TransactionResult": {
1658
+ "name": "transactionResult",
1659
+ "description": "Returns a transaction or null",
1660
+ "schema": {
1661
+ "title": "TransactionOrNull",
1662
+ "oneOf": [
1663
+ {
1664
+ "$ref": "#/components/schemas/Transaction"
1665
+ },
1666
+ {
1667
+ "$ref": "#/components/schemas/Null"
1668
+ }
1669
+ ]
1670
+ }
1671
+ },
1672
+ "UncleCountResult": {
1673
+ "name": "uncleCountResult",
1674
+ "description": "The Number of total uncles in the given block",
1675
+ "schema": {
1676
+ "$ref": "#/components/schemas/IntegerOrNull"
1677
+ }
1678
+ },
1679
+ "Message": {
1680
+ "name": "message",
1681
+ "required": true,
1682
+ "schema": {
1683
+ "$ref": "#/components/schemas/Bytes"
1684
+ }
1685
+ },
1686
+ "Filter": {
1687
+ "name": "filter",
1688
+ "required": true,
1689
+ "schema": {
1690
+ "title": "filter",
1691
+ "type": "object",
1692
+ "description": "A filter used to monitor the blockchain for log/events",
1693
+ "properties": {
1694
+ "fromBlock": {
1695
+ "$ref": "#/components/schemas/BlockNumber"
1696
+ },
1697
+ "toBlock": {
1698
+ "$ref": "#/components/schemas/BlockNumber"
1699
+ },
1700
+ "address": {
1701
+ "title": "oneOrArrayOfAddresses",
1702
+ "oneOf": [
1703
+ {
1704
+ "$ref": "#/components/schemas/Address"
1705
+ },
1706
+ {
1707
+ "$ref": "#/components/schemas/Addresses"
1708
+ }
1709
+ ]
1710
+ },
1711
+ "topics": {
1712
+ "$ref": "#/components/schemas/Topics"
1713
+ }
1714
+ }
1715
+ }
1716
+ },
1717
+ "Address": {
1718
+ "name": "address",
1719
+ "required": true,
1720
+ "schema": {
1721
+ "$ref": "#/components/schemas/Address"
1722
+ }
1723
+ },
1724
+ "BlockHash": {
1725
+ "name": "blockHash",
1726
+ "required": true,
1727
+ "schema": {
1728
+ "$ref": "#/components/schemas/BlockHash"
1729
+ }
1730
+ },
1731
+ "Nonce": {
1732
+ "name": "nonce",
1733
+ "required": true,
1734
+ "schema": {
1735
+ "$ref": "#/components/schemas/Nonce"
1736
+ }
1737
+ },
1738
+ "Position": {
1739
+ "name": "key",
1740
+ "required": true,
1741
+ "schema": {
1742
+ "$ref": "#/components/schemas/Position"
1743
+ }
1744
+ },
1745
+ "Logs": {
1746
+ "name": "logs",
1747
+ "description": "An array of all logs matching filter with given id.",
1748
+ "schema": {
1749
+ "title": "setOfLogs",
1750
+ "type": "array",
1751
+ "items": {
1752
+ "$ref": "#/components/schemas/Log"
1753
+ }
1754
+ }
1755
+ },
1756
+ "FilterId": {
1757
+ "name": "filterId",
1758
+ "schema": {
1759
+ "$ref": "#/components/schemas/FilterId"
1760
+ }
1761
+ },
1762
+ "BlockNumber": {
1763
+ "name": "blockNumber",
1764
+ "required": true,
1765
+ "schema": {
1766
+ "title": "blockNumberOrTag",
1767
+ "oneOf": [
1768
+ {
1769
+ "$ref": "#/components/schemas/BlockNumber"
1770
+ },
1771
+ {
1772
+ "$ref": "#/components/schemas/BlockNumberTag"
1773
+ }
1774
+ ]
1775
+ }
1776
+ },
1777
+ "TransactionHash": {
1778
+ "name": "transactionHash",
1779
+ "required": true,
1780
+ "schema": {
1781
+ "$ref": "#/components/schemas/TransactionHash"
1782
+ }
1783
+ }
1784
+ }
1785
+ }
1786
+ }