ox 0.0.1 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (756) hide show
  1. package/Abi/package.json +6 -0
  2. package/Abi.ts +163 -0
  3. package/AbiConstructor/package.json +6 -0
  4. package/AbiConstructor.ts +413 -0
  5. package/AbiError/package.json +6 -0
  6. package/AbiError.ts +719 -0
  7. package/AbiEvent/package.json +6 -0
  8. package/AbiEvent.ts +1284 -0
  9. package/AbiFunction/package.json +6 -0
  10. package/AbiFunction.ts +813 -0
  11. package/AbiItem/package.json +6 -0
  12. package/AbiItem.ts +779 -0
  13. package/AbiParameters/package.json +6 -0
  14. package/AbiParameters.ts +712 -0
  15. package/AccessList/package.json +6 -0
  16. package/AccessList.ts +124 -0
  17. package/AccountProof/package.json +6 -0
  18. package/AccountProof.ts +35 -0
  19. package/Address/package.json +6 -0
  20. package/Address.ts +359 -0
  21. package/AesGcm/package.json +6 -0
  22. package/AesGcm.ts +220 -0
  23. package/Authorization/package.json +6 -0
  24. package/Authorization.ts +639 -0
  25. package/Base58/package.json +6 -0
  26. package/Base58.ts +180 -0
  27. package/Base64/package.json +6 -0
  28. package/Base64.ts +333 -0
  29. package/Blobs/package.json +6 -0
  30. package/Blobs.ts +982 -0
  31. package/Block/package.json +6 -0
  32. package/Block.ts +317 -0
  33. package/Bloom/package.json +6 -0
  34. package/Bloom.ts +80 -0
  35. package/Bls/package.json +6 -0
  36. package/Bls.ts +496 -0
  37. package/BlsPoint/package.json +6 -0
  38. package/BlsPoint.ts +232 -0
  39. package/Bytes/package.json +6 -0
  40. package/Bytes.ts +963 -0
  41. package/CHANGELOG.md +7 -0
  42. package/Caches/package.json +6 -0
  43. package/Caches.ts +21 -0
  44. package/ContractAddress/package.json +6 -0
  45. package/ContractAddress.ts +181 -0
  46. package/Ens/package.json +6 -0
  47. package/Ens.ts +116 -0
  48. package/Errors/package.json +6 -0
  49. package/Errors.ts +95 -0
  50. package/Fee/package.json +6 -0
  51. package/Fee.ts +57 -0
  52. package/Filter/package.json +6 -0
  53. package/Filter.ts +144 -0
  54. package/Hash/package.json +6 -0
  55. package/Hash.ts +210 -0
  56. package/HdKey/package.json +6 -0
  57. package/HdKey.ts +175 -0
  58. package/Hex/package.json +6 -0
  59. package/Hex.ts +1040 -0
  60. package/Json/package.json +6 -0
  61. package/Json.ts +84 -0
  62. package/Kzg/package.json +6 -0
  63. package/Kzg.ts +51 -0
  64. package/LICENSE +21 -0
  65. package/Log/package.json +6 -0
  66. package/Log.ts +248 -0
  67. package/Mnemonic/package.json +6 -0
  68. package/Mnemonic.ts +249 -0
  69. package/P256/package.json +6 -0
  70. package/P256.ts +230 -0
  71. package/PersonalMessage/package.json +6 -0
  72. package/PersonalMessage.ts +70 -0
  73. package/Provider/package.json +6 -0
  74. package/Provider.ts +354 -0
  75. package/PublicKey/package.json +6 -0
  76. package/PublicKey.ts +545 -0
  77. package/README.md +75 -26
  78. package/Rlp/package.json +6 -0
  79. package/Rlp.ts +390 -0
  80. package/RpcRequest/package.json +6 -0
  81. package/RpcRequest.ts +192 -0
  82. package/RpcResponse/package.json +6 -0
  83. package/RpcResponse.ts +389 -0
  84. package/RpcSchema/package.json +6 -0
  85. package/RpcSchema.ts +273 -0
  86. package/RpcTransport/package.json +6 -0
  87. package/RpcTransport.ts +198 -0
  88. package/Secp256k1/package.json +6 -0
  89. package/Secp256k1.ts +304 -0
  90. package/Signature/package.json +6 -0
  91. package/Signature.ts +909 -0
  92. package/Siwe/package.json +6 -0
  93. package/Siwe.ts +516 -0
  94. package/Solidity/package.json +6 -0
  95. package/Solidity.ts +109 -0
  96. package/Transaction/package.json +6 -0
  97. package/Transaction.ts +429 -0
  98. package/TransactionEnvelope/package.json +6 -0
  99. package/TransactionEnvelope.ts +205 -0
  100. package/TransactionEnvelopeEip1559/package.json +6 -0
  101. package/TransactionEnvelopeEip1559.ts +656 -0
  102. package/TransactionEnvelopeEip2930/package.json +6 -0
  103. package/TransactionEnvelopeEip2930.ts +624 -0
  104. package/TransactionEnvelopeEip4844/package.json +6 -0
  105. package/TransactionEnvelopeEip4844.ts +764 -0
  106. package/TransactionEnvelopeEip7702/package.json +6 -0
  107. package/TransactionEnvelopeEip7702.ts +639 -0
  108. package/TransactionEnvelopeLegacy/package.json +6 -0
  109. package/TransactionEnvelopeLegacy.ts +674 -0
  110. package/TransactionReceipt/package.json +6 -0
  111. package/TransactionReceipt.ts +341 -0
  112. package/TransactionRequest/package.json +6 -0
  113. package/TransactionRequest.ts +151 -0
  114. package/TypedData/package.json +6 -0
  115. package/TypedData.ts +931 -0
  116. package/ValidatorData/package.json +6 -0
  117. package/ValidatorData.ts +87 -0
  118. package/Value/package.json +6 -0
  119. package/Value.ts +242 -0
  120. package/WebAuthnP256/package.json +6 -0
  121. package/WebAuthnP256.ts +803 -0
  122. package/WebCryptoP256/package.json +6 -0
  123. package/WebCryptoP256.ts +190 -0
  124. package/Withdrawal/package.json +6 -0
  125. package/Withdrawal.ts +95 -0
  126. package/_cjs/Abi.js +17 -0
  127. package/_cjs/Abi.js.map +1 -0
  128. package/_cjs/AbiConstructor.js +42 -0
  129. package/_cjs/AbiConstructor.js.map +1 -0
  130. package/_cjs/AbiError.js +98 -0
  131. package/_cjs/AbiError.js.map +1 -0
  132. package/_cjs/AbiEvent.js +338 -0
  133. package/_cjs/AbiEvent.js.map +1 -0
  134. package/_cjs/AbiFunction.js +85 -0
  135. package/_cjs/AbiFunction.js.map +1 -0
  136. package/_cjs/AbiItem.js +180 -0
  137. package/_cjs/AbiItem.js.map +1 -0
  138. package/_cjs/AbiParameters.js +229 -0
  139. package/_cjs/AbiParameters.js.map +1 -0
  140. package/_cjs/AccessList.js +51 -0
  141. package/_cjs/AccessList.js.map +1 -0
  142. package/_cjs/AccountProof.js +3 -0
  143. package/_cjs/AccountProof.js.map +1 -0
  144. package/_cjs/Address.js +121 -0
  145. package/_cjs/Address.js.map +1 -0
  146. package/_cjs/AesGcm.js +55 -0
  147. package/_cjs/AesGcm.js.map +1 -0
  148. package/_cjs/Authorization.js +99 -0
  149. package/_cjs/Authorization.js.map +1 -0
  150. package/_cjs/Base58.js +52 -0
  151. package/_cjs/Base58.js.map +1 -0
  152. package/_cjs/Base64.js +76 -0
  153. package/_cjs/Base64.js.map +1 -0
  154. package/_cjs/Blobs.js +255 -0
  155. package/_cjs/Blobs.js.map +1 -0
  156. package/_cjs/Block.js +87 -0
  157. package/_cjs/Block.js.map +1 -0
  158. package/_cjs/Bloom.js +23 -0
  159. package/_cjs/Bloom.js.map +1 -0
  160. package/_cjs/Bls.js +79 -0
  161. package/_cjs/Bls.js.map +1 -0
  162. package/_cjs/BlsPoint.js +32 -0
  163. package/_cjs/BlsPoint.js.map +1 -0
  164. package/_cjs/Bytes.js +279 -0
  165. package/_cjs/Bytes.js.map +1 -0
  166. package/_cjs/Caches.js +14 -0
  167. package/_cjs/Caches.js.map +1 -0
  168. package/_cjs/ContractAddress.js +39 -0
  169. package/_cjs/ContractAddress.js.map +1 -0
  170. package/_cjs/Ens.js +37 -0
  171. package/_cjs/Ens.js.map +1 -0
  172. package/_cjs/Errors.js +99 -0
  173. package/_cjs/Errors.js.map +1 -0
  174. package/_cjs/Fee.js +3 -0
  175. package/_cjs/Fee.js.map +1 -0
  176. package/_cjs/Filter.js +43 -0
  177. package/_cjs/Filter.js.map +1 -0
  178. package/_cjs/Hash.js +40 -0
  179. package/_cjs/Hash.js.map +1 -0
  180. package/_cjs/HdKey.js +30 -0
  181. package/_cjs/HdKey.js.map +1 -0
  182. package/_cjs/Hex.js +324 -0
  183. package/_cjs/Hex.js.map +1 -0
  184. package/_cjs/Json.js +25 -0
  185. package/_cjs/Json.js.map +1 -0
  186. package/_cjs/Kzg.js +14 -0
  187. package/_cjs/Kzg.js.map +1 -0
  188. package/_cjs/Log.js +35 -0
  189. package/_cjs/Log.js.map +1 -0
  190. package/_cjs/Mnemonic.js +56 -0
  191. package/_cjs/Mnemonic.js.map +1 -0
  192. package/_cjs/P256.js +52 -0
  193. package/_cjs/P256.js.map +1 -0
  194. package/_cjs/PersonalMessage.js +16 -0
  195. package/_cjs/PersonalMessage.js.map +1 -0
  196. package/_cjs/Provider.js +90 -0
  197. package/_cjs/Provider.js.map +1 -0
  198. package/_cjs/PublicKey.js +192 -0
  199. package/_cjs/PublicKey.js.map +1 -0
  200. package/_cjs/Rlp.js +179 -0
  201. package/_cjs/Rlp.js.map +1 -0
  202. package/_cjs/RpcRequest.js +27 -0
  203. package/_cjs/RpcRequest.js.map +1 -0
  204. package/_cjs/RpcResponse.js +368 -0
  205. package/_cjs/RpcResponse.js.map +1 -0
  206. package/_cjs/RpcSchema.js +7 -0
  207. package/_cjs/RpcSchema.js.map +1 -0
  208. package/_cjs/RpcTransport.js +95 -0
  209. package/_cjs/RpcTransport.js.map +1 -0
  210. package/_cjs/Secp256k1.js +57 -0
  211. package/_cjs/Secp256k1.js.map +1 -0
  212. package/_cjs/Signature.js +305 -0
  213. package/_cjs/Signature.js.map +1 -0
  214. package/_cjs/Siwe.js +231 -0
  215. package/_cjs/Siwe.js.map +1 -0
  216. package/_cjs/Solidity.js +104 -0
  217. package/_cjs/Solidity.js.map +1 -0
  218. package/_cjs/Transaction.js +106 -0
  219. package/_cjs/Transaction.js.map +1 -0
  220. package/_cjs/TransactionEnvelope.js +80 -0
  221. package/_cjs/TransactionEnvelope.js.map +1 -0
  222. package/_cjs/TransactionEnvelopeEip1559.js +182 -0
  223. package/_cjs/TransactionEnvelopeEip1559.js.map +1 -0
  224. package/_cjs/TransactionEnvelopeEip2930.js +166 -0
  225. package/_cjs/TransactionEnvelopeEip2930.js.map +1 -0
  226. package/_cjs/TransactionEnvelopeEip4844.js +224 -0
  227. package/_cjs/TransactionEnvelopeEip4844.js.map +1 -0
  228. package/_cjs/TransactionEnvelopeEip7702.js +156 -0
  229. package/_cjs/TransactionEnvelopeEip7702.js.map +1 -0
  230. package/_cjs/TransactionEnvelopeLegacy.js +221 -0
  231. package/_cjs/TransactionEnvelopeLegacy.js.map +1 -0
  232. package/_cjs/TransactionReceipt.js +76 -0
  233. package/_cjs/TransactionReceipt.js.map +1 -0
  234. package/_cjs/TransactionRequest.js +51 -0
  235. package/_cjs/TransactionRequest.js.map +1 -0
  236. package/_cjs/TypedData.js +318 -0
  237. package/_cjs/TypedData.js.map +1 -0
  238. package/_cjs/ValidatorData.js +16 -0
  239. package/_cjs/ValidatorData.js.map +1 -0
  240. package/_cjs/Value.js +96 -0
  241. package/_cjs/Value.js.map +1 -0
  242. package/_cjs/WebAuthnP256.js +245 -0
  243. package/_cjs/WebAuthnP256.js.map +1 -0
  244. package/_cjs/WebCryptoP256.js +46 -0
  245. package/_cjs/WebCryptoP256.js.map +1 -0
  246. package/_cjs/Withdrawal.js +24 -0
  247. package/_cjs/Withdrawal.js.map +1 -0
  248. package/_cjs/index.js +66 -0
  249. package/_cjs/index.js.map +1 -0
  250. package/_cjs/internal/abi.js +11 -0
  251. package/_cjs/internal/abi.js.map +1 -0
  252. package/_cjs/internal/abiConstructor.js +3 -0
  253. package/_cjs/internal/abiConstructor.js.map +1 -0
  254. package/_cjs/internal/abiError.js +3 -0
  255. package/_cjs/internal/abiError.js.map +1 -0
  256. package/_cjs/internal/abiEvent.js +3 -0
  257. package/_cjs/internal/abiEvent.js.map +1 -0
  258. package/_cjs/internal/abiFunction.js +3 -0
  259. package/_cjs/internal/abiFunction.js.map +1 -0
  260. package/_cjs/internal/abiItem.js +110 -0
  261. package/_cjs/internal/abiItem.js.map +1 -0
  262. package/_cjs/internal/abiParameters.js +376 -0
  263. package/_cjs/internal/abiParameters.js.map +1 -0
  264. package/_cjs/internal/base58.js +89 -0
  265. package/_cjs/internal/base58.js.map +1 -0
  266. package/_cjs/internal/bytes.js +88 -0
  267. package/_cjs/internal/bytes.js.map +1 -0
  268. package/_cjs/internal/cursor.js +210 -0
  269. package/_cjs/internal/cursor.js.map +1 -0
  270. package/_cjs/internal/ens.js +43 -0
  271. package/_cjs/internal/ens.js.map +1 -0
  272. package/_cjs/internal/errors.js +28 -0
  273. package/_cjs/internal/errors.js.map +1 -0
  274. package/_cjs/internal/hdKey.js +19 -0
  275. package/_cjs/internal/hdKey.js.map +1 -0
  276. package/_cjs/internal/hex.js +66 -0
  277. package/_cjs/internal/hex.js.map +1 -0
  278. package/_cjs/internal/lru.js +34 -0
  279. package/_cjs/internal/lru.js.map +1 -0
  280. package/_cjs/internal/mnemonic/wordlists.js +24 -0
  281. package/_cjs/internal/mnemonic/wordlists.js.map +1 -0
  282. package/_cjs/internal/promise.js +49 -0
  283. package/_cjs/internal/promise.js.map +1 -0
  284. package/_cjs/internal/register.js +3 -0
  285. package/_cjs/internal/register.js.map +1 -0
  286. package/_cjs/internal/rpcSchema.js +3 -0
  287. package/_cjs/internal/rpcSchema.js.map +1 -0
  288. package/_cjs/internal/rpcSchemas/eth.js +3 -0
  289. package/_cjs/internal/rpcSchemas/eth.js.map +1 -0
  290. package/_cjs/internal/rpcSchemas/wallet.js +3 -0
  291. package/_cjs/internal/rpcSchemas/wallet.js.map +1 -0
  292. package/_cjs/internal/rpcTransport.js +19 -0
  293. package/_cjs/internal/rpcTransport.js.map +1 -0
  294. package/_cjs/internal/types.js +3 -0
  295. package/_cjs/internal/types.js.map +1 -0
  296. package/_cjs/internal/uid.js +17 -0
  297. package/_cjs/internal/uid.js.map +1 -0
  298. package/_cjs/internal/webauthn.js +28 -0
  299. package/_cjs/internal/webauthn.js.map +1 -0
  300. package/_cjs/package.json +1 -0
  301. package/_cjs/trusted-setups/Paths.js +6 -0
  302. package/_cjs/trusted-setups/Paths.js.map +1 -0
  303. package/_cjs/trusted-setups/index.js +5 -0
  304. package/_cjs/trusted-setups/index.js.map +1 -0
  305. package/_cjs/trusted-setups/internal/paths.js +11 -0
  306. package/_cjs/trusted-setups/internal/paths.js.map +1 -0
  307. package/_cjs/version.js +5 -0
  308. package/_cjs/version.js.map +1 -0
  309. package/_cjs/window/index.js +3 -0
  310. package/_cjs/window/index.js.map +1 -0
  311. package/_esm/Abi.js +19 -0
  312. package/_esm/Abi.js.map +1 -0
  313. package/_esm/AbiConstructor.js +102 -0
  314. package/_esm/AbiConstructor.js.map +1 -0
  315. package/_esm/AbiError.js +364 -0
  316. package/_esm/AbiError.js.map +1 -0
  317. package/_esm/AbiEvent.js +1038 -0
  318. package/_esm/AbiEvent.js.map +1 -0
  319. package/_esm/AbiFunction.js +549 -0
  320. package/_esm/AbiFunction.js.map +1 -0
  321. package/_esm/AbiItem.js +574 -0
  322. package/_esm/AbiItem.js.map +1 -0
  323. package/_esm/AbiParameters.js +543 -0
  324. package/_esm/AbiParameters.js.map +1 -0
  325. package/_esm/AccessList.js +105 -0
  326. package/_esm/AccessList.js.map +1 -0
  327. package/_esm/AccountProof.js +2 -0
  328. package/_esm/AccountProof.js.map +1 -0
  329. package/_esm/Address.js +268 -0
  330. package/_esm/Address.js.map +1 -0
  331. package/_esm/AesGcm.js +124 -0
  332. package/_esm/AesGcm.js.map +1 -0
  333. package/_esm/Authorization.js +441 -0
  334. package/_esm/Authorization.js.map +1 -0
  335. package/_esm/Base58.js +142 -0
  336. package/_esm/Base58.js.map +1 -0
  337. package/_esm/Base64.js +236 -0
  338. package/_esm/Base64.js.map +1 -0
  339. package/_esm/Blobs.js +624 -0
  340. package/_esm/Blobs.js.map +1 -0
  341. package/_esm/Block.js +177 -0
  342. package/_esm/Block.js.map +1 -0
  343. package/_esm/Bloom.js +57 -0
  344. package/_esm/Bloom.js.map +1 -0
  345. package/_esm/Bls.js +141 -0
  346. package/_esm/Bls.js.map +1 -0
  347. package/_esm/BlsPoint.js +59 -0
  348. package/_esm/BlsPoint.js.map +1 -0
  349. package/_esm/Bytes.js +719 -0
  350. package/_esm/Bytes.js.map +1 -0
  351. package/_esm/Caches.js +19 -0
  352. package/_esm/Caches.js.map +1 -0
  353. package/_esm/ContractAddress.js +110 -0
  354. package/_esm/ContractAddress.js.map +1 -0
  355. package/_esm/Ens.js +84 -0
  356. package/_esm/Ens.js.map +1 -0
  357. package/_esm/Errors.js +105 -0
  358. package/_esm/Errors.js.map +1 -0
  359. package/_esm/Fee.js +2 -0
  360. package/_esm/Fee.js.map +1 -0
  361. package/_esm/Filter.js +100 -0
  362. package/_esm/Filter.js.map +1 -0
  363. package/_esm/Hash.js +126 -0
  364. package/_esm/Hash.js.map +1 -0
  365. package/_esm/HdKey.js +107 -0
  366. package/_esm/HdKey.js.map +1 -0
  367. package/_esm/Hex.js +763 -0
  368. package/_esm/Hex.js.map +1 -0
  369. package/_esm/Json.js +62 -0
  370. package/_esm/Json.js.map +1 -0
  371. package/_esm/Kzg.js +30 -0
  372. package/_esm/Kzg.js.map +1 -0
  373. package/_esm/Log.js +181 -0
  374. package/_esm/Log.js.map +1 -0
  375. package/_esm/Mnemonic.js +154 -0
  376. package/_esm/Mnemonic.js.map +1 -0
  377. package/_esm/P256.js +131 -0
  378. package/_esm/P256.js.map +1 -0
  379. package/_esm/PersonalMessage.js +46 -0
  380. package/_esm/PersonalMessage.js.map +1 -0
  381. package/_esm/Provider.js +122 -0
  382. package/_esm/Provider.js.map +1 -0
  383. package/_esm/PublicKey.js +395 -0
  384. package/_esm/PublicKey.js.map +1 -0
  385. package/_esm/Rlp.js +267 -0
  386. package/_esm/Rlp.js.map +1 -0
  387. package/_esm/RpcRequest.js +131 -0
  388. package/_esm/RpcRequest.js.map +1 -0
  389. package/_esm/RpcResponse.js +457 -0
  390. package/_esm/RpcResponse.js.map +1 -0
  391. package/_esm/RpcSchema.js +46 -0
  392. package/_esm/RpcSchema.js.map +1 -0
  393. package/_esm/RpcTransport.js +110 -0
  394. package/_esm/RpcTransport.js.map +1 -0
  395. package/_esm/Secp256k1.js +173 -0
  396. package/_esm/Secp256k1.js.map +1 -0
  397. package/_esm/Signature.js +696 -0
  398. package/_esm/Signature.js.map +1 -0
  399. package/_esm/Siwe.js +374 -0
  400. package/_esm/Siwe.js.map +1 -0
  401. package/_esm/Solidity.js +104 -0
  402. package/_esm/Solidity.js.map +1 -0
  403. package/_esm/Transaction.js +176 -0
  404. package/_esm/Transaction.js.map +1 -0
  405. package/_esm/TransactionEnvelope.js +139 -0
  406. package/_esm/TransactionEnvelope.js.map +1 -0
  407. package/_esm/TransactionEnvelopeEip1559.js +455 -0
  408. package/_esm/TransactionEnvelopeEip1559.js.map +1 -0
  409. package/_esm/TransactionEnvelopeEip2930.js +439 -0
  410. package/_esm/TransactionEnvelopeEip2930.js.map +1 -0
  411. package/_esm/TransactionEnvelopeEip4844.js +542 -0
  412. package/_esm/TransactionEnvelopeEip4844.js.map +1 -0
  413. package/_esm/TransactionEnvelopeEip7702.js +442 -0
  414. package/_esm/TransactionEnvelopeEip7702.js.map +1 -0
  415. package/_esm/TransactionEnvelopeLegacy.js +495 -0
  416. package/_esm/TransactionEnvelopeLegacy.js.map +1 -0
  417. package/_esm/TransactionReceipt.js +229 -0
  418. package/_esm/TransactionReceipt.js.map +1 -0
  419. package/_esm/TransactionRequest.js +89 -0
  420. package/_esm/TransactionRequest.js.map +1 -0
  421. package/_esm/TypedData.js +635 -0
  422. package/_esm/TypedData.js.map +1 -0
  423. package/_esm/ValidatorData.js +52 -0
  424. package/_esm/ValidatorData.js.map +1 -0
  425. package/_esm/Value.js +196 -0
  426. package/_esm/Value.js.map +1 -0
  427. package/_esm/WebAuthnP256.js +471 -0
  428. package/_esm/WebAuthnP256.js.map +1 -0
  429. package/_esm/WebCryptoP256.js +116 -0
  430. package/_esm/WebCryptoP256.js.map +1 -0
  431. package/_esm/Withdrawal.js +72 -0
  432. package/_esm/Withdrawal.js.map +1 -0
  433. package/_esm/index.js +3366 -0
  434. package/_esm/index.js.map +1 -0
  435. package/_esm/internal/abi.js +9 -0
  436. package/_esm/internal/abi.js.map +1 -0
  437. package/_esm/internal/abiConstructor.js +2 -0
  438. package/_esm/internal/abiConstructor.js.map +1 -0
  439. package/_esm/internal/abiError.js +2 -0
  440. package/_esm/internal/abiError.js.map +1 -0
  441. package/_esm/internal/abiEvent.js +2 -0
  442. package/_esm/internal/abiEvent.js.map +1 -0
  443. package/_esm/internal/abiFunction.js +2 -0
  444. package/_esm/internal/abiFunction.js.map +1 -0
  445. package/_esm/internal/abiItem.js +122 -0
  446. package/_esm/internal/abiItem.js.map +1 -0
  447. package/_esm/internal/abiParameters.js +419 -0
  448. package/_esm/internal/abiParameters.js.map +1 -0
  449. package/_esm/internal/base58.js +91 -0
  450. package/_esm/internal/base58.js.map +1 -0
  451. package/_esm/internal/bytes.js +86 -0
  452. package/_esm/internal/bytes.js.map +1 -0
  453. package/_esm/internal/cursor.js +207 -0
  454. package/_esm/internal/cursor.js.map +1 -0
  455. package/_esm/internal/ens.js +47 -0
  456. package/_esm/internal/ens.js.map +1 -0
  457. package/_esm/internal/errors.js +26 -0
  458. package/_esm/internal/errors.js.map +1 -0
  459. package/_esm/internal/hdKey.js +17 -0
  460. package/_esm/internal/hdKey.js.map +1 -0
  461. package/_esm/internal/hex.js +64 -0
  462. package/_esm/internal/hex.js.map +1 -0
  463. package/_esm/internal/lru.js +36 -0
  464. package/_esm/internal/lru.js.map +1 -0
  465. package/_esm/internal/mnemonic/wordlists.js +11 -0
  466. package/_esm/internal/mnemonic/wordlists.js.map +1 -0
  467. package/_esm/internal/promise.js +52 -0
  468. package/_esm/internal/promise.js.map +1 -0
  469. package/_esm/internal/register.js +2 -0
  470. package/_esm/internal/register.js.map +1 -0
  471. package/_esm/internal/rpcSchema.js +2 -0
  472. package/_esm/internal/rpcSchema.js.map +1 -0
  473. package/_esm/internal/rpcSchemas/eth.js +2 -0
  474. package/_esm/internal/rpcSchemas/eth.js.map +1 -0
  475. package/_esm/internal/rpcSchemas/wallet.js +2 -0
  476. package/_esm/internal/rpcSchemas/wallet.js.map +1 -0
  477. package/_esm/internal/rpcTransport.js +20 -0
  478. package/_esm/internal/rpcTransport.js.map +1 -0
  479. package/_esm/internal/types.js +2 -0
  480. package/_esm/internal/types.js.map +1 -0
  481. package/_esm/internal/uid.js +15 -0
  482. package/_esm/internal/uid.js.map +1 -0
  483. package/_esm/internal/webauthn.js +35 -0
  484. package/_esm/internal/webauthn.js.map +1 -0
  485. package/_esm/package.json +1 -0
  486. package/_esm/trusted-setups/Paths.js +3 -0
  487. package/_esm/trusted-setups/Paths.js.map +1 -0
  488. package/_esm/trusted-setups/index.js +2 -0
  489. package/_esm/trusted-setups/index.js.map +1 -0
  490. package/_esm/trusted-setups/internal/paths.js +12 -0
  491. package/_esm/trusted-setups/internal/paths.js.map +1 -0
  492. package/_esm/version.js +3 -0
  493. package/_esm/version.js.map +1 -0
  494. package/_esm/window/index.js +2 -0
  495. package/_esm/window/index.js.map +1 -0
  496. package/_test/Abi.test-d/package.json +6 -0
  497. package/_test/AbiConstructor.test-d/package.json +6 -0
  498. package/_test/AbiError.test-d/package.json +6 -0
  499. package/_test/AbiEvent.snap-d/package.json +6 -0
  500. package/_test/AbiEvent.snap-d.ts +329 -0
  501. package/_test/AbiFunction.snap-d/package.json +6 -0
  502. package/_test/AbiFunction.snap-d.ts +262 -0
  503. package/_test/AbiItem.snap-d/package.json +6 -0
  504. package/_test/AbiItem.snap-d.ts +131 -0
  505. package/_test/AbiParameters.bench/package.json +6 -0
  506. package/_test/AbiParameters.snap-d/package.json +6 -0
  507. package/_test/AbiParameters.snap-d.ts +66 -0
  508. package/_test/Address.bench/package.json +6 -0
  509. package/_test/Base58.bench/package.json +6 -0
  510. package/_test/Hex.bench/package.json +6 -0
  511. package/_test/Hex.test-d/package.json +6 -0
  512. package/_test/PublicKey.test-d/package.json +6 -0
  513. package/_test/Rlp.bench/package.json +6 -0
  514. package/_test/Rlp.test-d/package.json +6 -0
  515. package/_test/Signature.snap-d/package.json +6 -0
  516. package/_test/Signature.snap-d.ts +96 -0
  517. package/_test/TransactionEnvelopeEip1559.test-d/package.json +6 -0
  518. package/_test/TransactionEnvelopeEip2930.test-d/package.json +6 -0
  519. package/_test/TransactionEnvelopeEip4844.test-d/package.json +6 -0
  520. package/_test/TransactionEnvelopeEip7702.test-d/package.json +6 -0
  521. package/_test/TransactionEnvelopeLegacy.test-d/package.json +6 -0
  522. package/_test/TypedData.test-d/package.json +6 -0
  523. package/_types/Abi.d.ts +137 -0
  524. package/_types/Abi.d.ts.map +1 -0
  525. package/_types/AbiConstructor.d.ts +305 -0
  526. package/_types/AbiConstructor.d.ts.map +1 -0
  527. package/_types/AbiError.d.ts +522 -0
  528. package/_types/AbiError.d.ts.map +1 -0
  529. package/_types/AbiEvent.d.ts +892 -0
  530. package/_types/AbiEvent.d.ts.map +1 -0
  531. package/_types/AbiFunction.d.ts +602 -0
  532. package/_types/AbiFunction.d.ts.map +1 -0
  533. package/_types/AbiItem.d.ts +544 -0
  534. package/_types/AbiItem.d.ts.map +1 -0
  535. package/_types/AbiParameters.d.ts +466 -0
  536. package/_types/AbiParameters.d.ts.map +1 -0
  537. package/_types/AccessList.d.ts +83 -0
  538. package/_types/AccessList.d.ts.map +1 -0
  539. package/_types/AccountProof.d.ts +32 -0
  540. package/_types/AccountProof.d.ts.map +1 -0
  541. package/_types/Address.d.ts +244 -0
  542. package/_types/Address.d.ts.map +1 -0
  543. package/_types/AesGcm.d.ts +116 -0
  544. package/_types/AesGcm.d.ts.map +1 -0
  545. package/_types/Authorization.d.ts +461 -0
  546. package/_types/Authorization.d.ts.map +1 -0
  547. package/_types/Base58.d.ts +131 -0
  548. package/_types/Base58.d.ts.map +1 -0
  549. package/_types/Base64.d.ts +244 -0
  550. package/_types/Base64.d.ts.map +1 -0
  551. package/_types/Blobs.d.ts +556 -0
  552. package/_types/Blobs.d.ts.map +1 -0
  553. package/_types/Block.d.ts +190 -0
  554. package/_types/Block.d.ts.map +1 -0
  555. package/_types/Bloom.d.ts +54 -0
  556. package/_types/Bloom.d.ts.map +1 -0
  557. package/_types/Bls.d.ts +365 -0
  558. package/_types/Bls.d.ts.map +1 -0
  559. package/_types/BlsPoint.d.ts +187 -0
  560. package/_types/BlsPoint.d.ts.map +1 -0
  561. package/_types/Bytes.d.ts +674 -0
  562. package/_types/Bytes.d.ts.map +1 -0
  563. package/_types/Caches.d.ts +13 -0
  564. package/_types/Caches.d.ts.map +1 -0
  565. package/_types/ContractAddress.d.ts +115 -0
  566. package/_types/ContractAddress.d.ts.map +1 -0
  567. package/_types/Ens.d.ts +72 -0
  568. package/_types/Ens.d.ts.map +1 -0
  569. package/_types/Errors.d.ts +33 -0
  570. package/_types/Errors.d.ts.map +1 -0
  571. package/_types/Fee.d.ts +41 -0
  572. package/_types/Fee.d.ts.map +1 -0
  573. package/_types/Filter.d.ts +100 -0
  574. package/_types/Filter.d.ts.map +1 -0
  575. package/_types/Hash.d.ts +135 -0
  576. package/_types/Hash.d.ts.map +1 -0
  577. package/_types/HdKey.d.ts +146 -0
  578. package/_types/HdKey.d.ts.map +1 -0
  579. package/_types/Hex.d.ts +711 -0
  580. package/_types/Hex.d.ts.map +1 -0
  581. package/_types/Json.d.ts +53 -0
  582. package/_types/Json.d.ts.map +1 -0
  583. package/_types/Kzg.d.ts +42 -0
  584. package/_types/Kzg.d.ts.map +1 -0
  585. package/_types/Log.d.ts +194 -0
  586. package/_types/Log.d.ts.map +1 -0
  587. package/_types/Mnemonic.d.ts +176 -0
  588. package/_types/Mnemonic.d.ts.map +1 -0
  589. package/_types/P256.d.ts +207 -0
  590. package/_types/P256.d.ts.map +1 -0
  591. package/_types/PersonalMessage.d.ts +49 -0
  592. package/_types/PersonalMessage.d.ts.map +1 -0
  593. package/_types/Provider.d.ts +268 -0
  594. package/_types/Provider.d.ts.map +1 -0
  595. package/_types/PublicKey.d.ts +327 -0
  596. package/_types/PublicKey.d.ts.map +1 -0
  597. package/_types/Rlp.d.ts +153 -0
  598. package/_types/Rlp.d.ts.map +1 -0
  599. package/_types/RpcRequest.d.ts +144 -0
  600. package/_types/RpcRequest.d.ts.map +1 -0
  601. package/_types/RpcResponse.d.ts +266 -0
  602. package/_types/RpcResponse.d.ts.map +1 -0
  603. package/_types/RpcSchema.d.ts +248 -0
  604. package/_types/RpcSchema.d.ts.map +1 -0
  605. package/_types/RpcTransport.d.ts +65 -0
  606. package/_types/RpcTransport.d.ts.map +1 -0
  607. package/_types/Secp256k1.d.ts +277 -0
  608. package/_types/Secp256k1.d.ts.map +1 -0
  609. package/_types/Signature.d.ts +601 -0
  610. package/_types/Signature.d.ts.map +1 -0
  611. package/_types/Siwe.d.ts +249 -0
  612. package/_types/Siwe.d.ts.map +1 -0
  613. package/_types/Solidity.d.ts +100 -0
  614. package/_types/Solidity.d.ts.map +1 -0
  615. package/_types/Transaction.d.ts +235 -0
  616. package/_types/Transaction.d.ts.map +1 -0
  617. package/_types/TransactionEnvelope.d.ts +141 -0
  618. package/_types/TransactionEnvelope.d.ts.map +1 -0
  619. package/_types/TransactionEnvelopeEip1559.d.ts +367 -0
  620. package/_types/TransactionEnvelopeEip1559.d.ts.map +1 -0
  621. package/_types/TransactionEnvelopeEip2930.d.ts +364 -0
  622. package/_types/TransactionEnvelopeEip2930.d.ts.map +1 -0
  623. package/_types/TransactionEnvelopeEip4844.d.ts +419 -0
  624. package/_types/TransactionEnvelopeEip4844.d.ts.map +1 -0
  625. package/_types/TransactionEnvelopeEip7702.d.ts +377 -0
  626. package/_types/TransactionEnvelopeEip7702.d.ts.map +1 -0
  627. package/_types/TransactionEnvelopeLegacy.d.ts +358 -0
  628. package/_types/TransactionEnvelopeLegacy.d.ts.map +1 -0
  629. package/_types/TransactionReceipt.d.ts +271 -0
  630. package/_types/TransactionReceipt.d.ts.map +1 -0
  631. package/_types/TransactionRequest.d.ts +92 -0
  632. package/_types/TransactionRequest.d.ts.map +1 -0
  633. package/_types/TypedData.d.ts +496 -0
  634. package/_types/TypedData.d.ts.map +1 -0
  635. package/_types/ValidatorData.d.ts +64 -0
  636. package/_types/ValidatorData.d.ts.map +1 -0
  637. package/_types/Value.d.ts +159 -0
  638. package/_types/Value.d.ts.map +1 -0
  639. package/_types/WebAuthnP256.d.ts +445 -0
  640. package/_types/WebAuthnP256.d.ts.map +1 -0
  641. package/_types/WebCryptoP256.d.ts +119 -0
  642. package/_types/WebCryptoP256.d.ts.map +1 -0
  643. package/_types/Withdrawal.d.ts +74 -0
  644. package/_types/Withdrawal.d.ts.map +1 -0
  645. package/_types/index.d.ts +3367 -0
  646. package/_types/index.d.ts.map +1 -0
  647. package/_types/internal/abi.d.ts +4 -0
  648. package/_types/internal/abi.d.ts.map +1 -0
  649. package/_types/internal/abiConstructor.d.ts +11 -0
  650. package/_types/internal/abiConstructor.d.ts.map +1 -0
  651. package/_types/internal/abiError.d.ts +11 -0
  652. package/_types/internal/abiError.d.ts.map +1 -0
  653. package/_types/internal/abiEvent.d.ts +60 -0
  654. package/_types/internal/abiEvent.d.ts.map +1 -0
  655. package/_types/internal/abiFunction.d.ts +11 -0
  656. package/_types/internal/abiFunction.d.ts.map +1 -0
  657. package/_types/internal/abiItem.d.ts +100 -0
  658. package/_types/internal/abiItem.d.ts.map +1 -0
  659. package/_types/internal/abiParameters.d.ts +169 -0
  660. package/_types/internal/abiParameters.d.ts.map +1 -0
  661. package/_types/internal/base58.d.ts +17 -0
  662. package/_types/internal/base58.d.ts.map +1 -0
  663. package/_types/internal/bytes.d.ts +52 -0
  664. package/_types/internal/bytes.d.ts.map +1 -0
  665. package/_types/internal/cursor.d.ts +70 -0
  666. package/_types/internal/cursor.d.ts.map +1 -0
  667. package/_types/internal/ens.d.ts +23 -0
  668. package/_types/internal/ens.d.ts.map +1 -0
  669. package/_types/internal/errors.d.ts +7 -0
  670. package/_types/internal/errors.d.ts.map +1 -0
  671. package/_types/internal/hdKey.d.ts +10 -0
  672. package/_types/internal/hdKey.d.ts.map +1 -0
  673. package/_types/internal/hex.d.ts +39 -0
  674. package/_types/internal/hex.d.ts.map +1 -0
  675. package/_types/internal/lru.d.ts +13 -0
  676. package/_types/internal/lru.d.ts.map +1 -0
  677. package/_types/internal/mnemonic/wordlists.d.ts +11 -0
  678. package/_types/internal/mnemonic/wordlists.d.ts.map +1 -0
  679. package/_types/internal/promise.d.ts +27 -0
  680. package/_types/internal/promise.d.ts.map +1 -0
  681. package/_types/internal/register.d.ts +13 -0
  682. package/_types/internal/register.d.ts.map +1 -0
  683. package/_types/internal/rpcSchema.d.ts +12 -0
  684. package/_types/internal/rpcSchema.d.ts.map +1 -0
  685. package/_types/internal/rpcSchemas/eth.d.ts +718 -0
  686. package/_types/internal/rpcSchemas/eth.d.ts.map +1 -0
  687. package/_types/internal/rpcSchemas/wallet.d.ts +416 -0
  688. package/_types/internal/rpcSchemas/wallet.d.ts.map +1 -0
  689. package/_types/internal/rpcTransport.d.ts +38 -0
  690. package/_types/internal/rpcTransport.d.ts.map +1 -0
  691. package/_types/internal/types.d.ts +284 -0
  692. package/_types/internal/types.d.ts.map +1 -0
  693. package/_types/internal/uid.d.ts +3 -0
  694. package/_types/internal/uid.d.ts.map +1 -0
  695. package/_types/internal/webauthn.d.ts +127 -0
  696. package/_types/internal/webauthn.d.ts.map +1 -0
  697. package/_types/trusted-setups/Paths.d.ts +2 -0
  698. package/_types/trusted-setups/Paths.d.ts.map +1 -0
  699. package/_types/trusted-setups/index.d.ts +2 -0
  700. package/_types/trusted-setups/index.d.ts.map +1 -0
  701. package/_types/trusted-setups/internal/paths.d.ts +3 -0
  702. package/_types/trusted-setups/internal/paths.d.ts.map +1 -0
  703. package/_types/version.d.ts +3 -0
  704. package/_types/version.d.ts.map +1 -0
  705. package/_types/window/index.d.ts +7 -0
  706. package/_types/window/index.d.ts.map +1 -0
  707. package/index.ts +3427 -0
  708. package/internal/abi.ts +11 -0
  709. package/internal/abiConstructor.ts +32 -0
  710. package/internal/abiError.ts +30 -0
  711. package/internal/abiEvent.ts +154 -0
  712. package/internal/abiFunction.ts +32 -0
  713. package/internal/abiItem.ts +593 -0
  714. package/internal/abiParameters.ts +741 -0
  715. package/internal/base58.ts +106 -0
  716. package/internal/bytes.ts +152 -0
  717. package/internal/cursor.ts +252 -0
  718. package/internal/ens.ts +64 -0
  719. package/internal/errors.ts +26 -0
  720. package/internal/hdKey.ts +25 -0
  721. package/internal/hex.ts +123 -0
  722. package/internal/lru.ts +34 -0
  723. package/internal/mnemonic/wordlists.ts +10 -0
  724. package/internal/promise.ts +66 -0
  725. package/internal/register.ts +15 -0
  726. package/internal/rpcSchema.ts +20 -0
  727. package/internal/rpcSchemas/eth.ts +727 -0
  728. package/internal/rpcSchemas/wallet.ts +428 -0
  729. package/internal/rpcTransport.ts +74 -0
  730. package/internal/types.ts +414 -0
  731. package/internal/uid.ts +15 -0
  732. package/internal/webauthn.ts +198 -0
  733. package/package.json +500 -20
  734. package/trusted-setups/Paths/package.json +6 -0
  735. package/trusted-setups/Paths.ts +3 -0
  736. package/trusted-setups/index.ts +1 -0
  737. package/trusted-setups/internal/paths.ts +13 -0
  738. package/trusted-setups/internal/setups/mainnet.json +8265 -0
  739. package/trusted-setups/internal/setups/mainnet.txt +4163 -0
  740. package/trusted-setups/package.json +6 -0
  741. package/tsdoc.json +4 -0
  742. package/version/package.json +6 -0
  743. package/version.ts +2 -0
  744. package/window/index.ts +7 -0
  745. package/window/package.json +6 -0
  746. package/cl/ansiesc.js +0 -25
  747. package/cl/deps.js +0 -7
  748. package/cl/editor.js +0 -141
  749. package/cl/index.html +0 -19
  750. package/cl/ox.js +0 -44
  751. package/cl/socket.io.js +0 -1922
  752. package/cl/style.css +0 -37
  753. package/srv/deps.js +0 -88
  754. package/srv/httpSrv.js +0 -82
  755. package/srv/ox.js +0 -44
  756. package/srv/remoteXtermReq.js +0 -70
@@ -0,0 +1,266 @@
1
+ import type { Errors, RpcRequest } from './index.js';
2
+ import type { Compute, IsNarrowable, OneOf, UnionPartialBy } from './internal/types.js';
3
+ /** A JSON-RPC response object as per the [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification#request_object). */
4
+ export type RpcResponse<result = unknown, error extends ErrorObject = ErrorObject> = Compute<{
5
+ id: number;
6
+ jsonrpc: '2.0';
7
+ } & OneOf<{
8
+ result: result;
9
+ } | {
10
+ error: error;
11
+ }>>;
12
+ /** JSON-RPC error object as per the [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification#error_object). */
13
+ export type ErrorObject = {
14
+ code: number;
15
+ message: string;
16
+ data?: unknown | undefined;
17
+ };
18
+ /**
19
+ * A type-safe interface to instantiate a JSON-RPC response object as per the [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification#response_object).
20
+ *
21
+ * @example
22
+ * ### Instantiating a Response Object
23
+ *
24
+ * ```ts twoslash
25
+ * import { RpcResponse } from 'ox'
26
+ *
27
+ * const response = RpcResponse.from({
28
+ * id: 0,
29
+ * jsonrpc: '2.0',
30
+ * result: '0x69420',
31
+ * })
32
+ * ```
33
+ *
34
+ * @example
35
+ * ### Type-safe Instantiation
36
+ *
37
+ * If you have a JSON-RPC request object, you can use it to strongly-type the response. If a `request` is provided,
38
+ * then the `id` and `jsonrpc` properties will be overridden with the values from the request.
39
+ *
40
+ * ```ts twoslash
41
+ * import { RpcRequest, RpcResponse } from 'ox'
42
+ *
43
+ * const request = RpcRequest.from({ id: 0, method: 'eth_blockNumber' })
44
+ *
45
+ * const response = RpcResponse.from(
46
+ * { result: '0x69420' },
47
+ * { request },
48
+ * )
49
+ * ```
50
+ *
51
+ * @param response - Opaque JSON-RPC response object.
52
+ * @param options - Parsing options.
53
+ * @returns Typed JSON-RPC result, or response object (if `raw` is `true`).
54
+ */
55
+ export declare function from<request extends RpcRequest.RpcRequest | undefined = undefined, const response = (request extends RpcRequest.RpcRequest ? request['_returnType'] : RpcResponse) | unknown>(response: from.Response<request, response>, options?: from.Options<request>): Compute<from.ReturnType<response>>;
56
+ export declare namespace from {
57
+ type Response<request extends RpcRequest.RpcRequest | undefined = undefined, response = unknown> = response & (request extends RpcRequest.RpcRequest ? UnionPartialBy<RpcResponse<request['_returnType']>, 'id' | 'jsonrpc'> : RpcResponse);
58
+ type Options<request extends RpcRequest.RpcRequest | undefined = RpcRequest.RpcRequest | undefined> = {
59
+ request?: request | RpcRequest.RpcRequest | undefined;
60
+ };
61
+ type ReturnType<response> = IsNarrowable<response, RpcResponse> extends true ? RpcResponse : response & Readonly<{
62
+ id: number;
63
+ jsonrpc: '2.0';
64
+ }>;
65
+ }
66
+ /**
67
+ * A type-safe interface to parse a JSON-RPC response object as per the [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification#response_object), and extract the result.
68
+ *
69
+ * @example
70
+ * ```ts twoslash
71
+ * import { RpcRequest, RpcResponse } from 'ox'
72
+ *
73
+ * // 1. Create a request store.
74
+ * const store = RpcRequest.createStore()
75
+ *
76
+ * // 2. Get a request object.
77
+ * const request = store.prepare({
78
+ * method: 'eth_getBlockByNumber',
79
+ * params: ['0x1', false],
80
+ * })
81
+ *
82
+ * // 3. Send the JSON-RPC request via HTTP.
83
+ * const block = await fetch('https://1.rpc.thirdweb.com', {
84
+ * body: JSON.stringify(request),
85
+ * headers: {
86
+ * 'Content-Type': 'application/json',
87
+ * },
88
+ * method: 'POST',
89
+ * })
90
+ * .then((response) => response.json())
91
+ * // 4. Parse the JSON-RPC response into a type-safe result. // [!code focus]
92
+ * .then((response) => RpcResponse.parse(response, { request })) // [!code focus]
93
+ *
94
+ * block // [!code focus]
95
+ * // ^?
96
+ *
97
+ *
98
+ *
99
+ *
100
+ *
101
+ *
102
+ *
103
+ *
104
+ *
105
+ *
106
+ *
107
+ * ```
108
+ *
109
+ * :::tip
110
+ *
111
+ * If you don't need the return type, you can omit the options entirely.
112
+ *
113
+ * ```ts twoslash
114
+ * // @noErrors
115
+ * import { RpcResponse } from 'ox'
116
+ *
117
+ * const block = await fetch('https://1.rpc.thirdweb.com', {})
118
+ * .then((response) => response.json())
119
+ * .then((response) => RpcResponse.parse(response, { request })) // [!code --]
120
+ * .then(RpcResponse.parse) // [!code ++]
121
+ * ```
122
+ * :::
123
+ *
124
+ * @example
125
+ * ### Raw Mode
126
+ *
127
+ * If `raw` is `true`, the response will be returned as an object with `result` and `error` properties instead of returning the `result` directly and throwing errors.
128
+ *
129
+ * ```ts twoslash
130
+ * import { RpcRequest, RpcResponse } from 'ox'
131
+ *
132
+ * const store = RpcRequest.createStore()
133
+ *
134
+ * const request = store.prepare({
135
+ * method: 'eth_blockNumber',
136
+ * })
137
+ *
138
+ * const response = RpcResponse.parse({}, {
139
+ * request,
140
+ * raw: true, // [!code hl]
141
+ * })
142
+ *
143
+ * response.result
144
+ * // ^?
145
+ *
146
+ *
147
+ * response.error
148
+ * // ^?
149
+ *
150
+ *
151
+ * ```
152
+ *
153
+ * @param response - Opaque JSON-RPC response object.
154
+ * @param options - Parsing options.
155
+ * @returns Typed JSON-RPC result, or response object (if `raw` is `true`).
156
+ */
157
+ export declare function parse<const response extends RpcResponse | unknown, returnType, raw extends boolean = false>(response: response, options?: parse.Options<returnType, raw>): parse.ReturnType<unknown extends response ? returnType : response extends RpcResponse ? response extends {
158
+ result: infer result;
159
+ } ? result : never : returnType, raw>;
160
+ export declare namespace parse {
161
+ var parseError: (error: unknown) => parse.ErrorType;
162
+ }
163
+ export declare namespace parse {
164
+ type Options<returnType, raw extends boolean = false> = {
165
+ /**
166
+ * JSON-RPC Method that was used to make the request. Used for typing the response.
167
+ */
168
+ request?: {
169
+ _returnType: returnType;
170
+ } | RpcRequest.RpcRequest | undefined;
171
+ /**
172
+ * Enables raw mode – responses will return an object with `result` and `error` properties instead of returning the `result` directly and throwing errors.
173
+ *
174
+ * - `true`: a JSON-RPC response object will be returned with `result` and `error` properties.
175
+ * - `false`: the JSON-RPC response object's `result` property will be returned directly, and JSON-RPC Errors will be thrown.
176
+ *
177
+ * @default false
178
+ */
179
+ raw?: raw | boolean | undefined;
180
+ };
181
+ type ReturnType<returnType, raw extends boolean = false> = Compute<raw extends true ? RpcResponse<returnType> : returnType>;
182
+ type ErrorType = ParseError | InvalidInputError | ResourceNotFoundError | ResourceUnavailableError | TransactionRejectedError | MethodNotSupportedError | LimitExceededError | VersionNotSupportedError | InvalidRequestError | MethodNotFoundError | InvalidParamsError | InternalError | BaseErrorType | Errors.GlobalErrorType;
183
+ }
184
+ export type BaseErrorType = BaseError & {
185
+ name: 'BaseError';
186
+ };
187
+ /** Thrown when a JSON-RPC error has occurred. */
188
+ export declare class BaseError extends Error {
189
+ name: string;
190
+ readonly code: number;
191
+ readonly data?: unknown | undefined;
192
+ constructor(errorObject: ErrorObject);
193
+ }
194
+ /** Thrown when the input to a JSON-RPC method is invalid. */
195
+ export declare class InvalidInputError extends BaseError {
196
+ static readonly code = -32000;
197
+ readonly code = -32000;
198
+ readonly name = "RpcResponse.InvalidInputError";
199
+ }
200
+ /** Thrown when a JSON-RPC resource is not found. */
201
+ export declare class ResourceNotFoundError extends BaseError {
202
+ static readonly code = -32001;
203
+ readonly code = -32001;
204
+ readonly name = "RpcResponse.ResourceNotFoundError";
205
+ }
206
+ /** Thrown when a JSON-RPC resource is unavailable. */
207
+ export declare class ResourceUnavailableError extends BaseError {
208
+ static readonly code = -32002;
209
+ readonly code = -32002;
210
+ readonly name = "RpcResponse.ResourceUnavailableError";
211
+ }
212
+ /** Thrown when a JSON-RPC transaction is rejected. */
213
+ export declare class TransactionRejectedError extends BaseError {
214
+ static readonly code = -32003;
215
+ readonly code = -32003;
216
+ readonly name = "RpcResponse.TransactionRejectedError";
217
+ }
218
+ /** Thrown when a JSON-RPC method is not supported. */
219
+ export declare class MethodNotSupportedError extends BaseError {
220
+ static readonly code = -32004;
221
+ readonly code = -32004;
222
+ readonly name = "RpcResponse.MethodNotSupportedError";
223
+ }
224
+ /** Thrown when a rate-limit is exceeded. */
225
+ export declare class LimitExceededError extends BaseError {
226
+ static readonly code = -32005;
227
+ readonly code = -32005;
228
+ readonly name = "RpcResponse.LimitExceededError";
229
+ }
230
+ /** Thrown when a JSON-RPC version is not supported. */
231
+ export declare class VersionNotSupportedError extends BaseError {
232
+ static readonly code = -32006;
233
+ readonly code = -32006;
234
+ readonly name = "RpcResponse.VersionNotSupportedError";
235
+ }
236
+ /** Thrown when a JSON-RPC request is invalid. */
237
+ export declare class InvalidRequestError extends BaseError {
238
+ static readonly code = -32600;
239
+ readonly code = -32600;
240
+ readonly name = "RpcResponse.InvalidRequestError";
241
+ }
242
+ /** Thrown when a JSON-RPC method is not found. */
243
+ export declare class MethodNotFoundError extends BaseError {
244
+ static readonly code = -32601;
245
+ readonly code = -32601;
246
+ readonly name = "RpcResponse.MethodNotFoundError";
247
+ }
248
+ /** Thrown when the parameters to a JSON-RPC method are invalid. */
249
+ export declare class InvalidParamsError extends BaseError {
250
+ static readonly code = -32602;
251
+ readonly code = -32602;
252
+ readonly name = "RpcResponse.InvalidParamsError";
253
+ }
254
+ /** Thrown when an internal JSON-RPC error has occurred. */
255
+ export declare class InternalError extends BaseError {
256
+ static readonly code = -32603;
257
+ readonly code = -32603;
258
+ readonly name = "RpcResponse.InternalErrorError";
259
+ }
260
+ /** Thrown when a JSON-RPC response is invalid. */
261
+ export declare class ParseError extends BaseError {
262
+ static readonly code = -32700;
263
+ readonly code = -32700;
264
+ readonly name = "RpcResponse.ParseError";
265
+ }
266
+ //# sourceMappingURL=RpcResponse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RpcResponse.d.ts","sourceRoot":"","sources":["../RpcResponse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,248 @@
1
+ import type { ResolvedRegister } from './internal/register.js';
2
+ import type { Compute, IsNarrowable } from './internal/types.js';
3
+ export type { Eth } from './internal/rpcSchemas/eth.js';
4
+ export type { Wallet } from './internal/rpcSchemas/wallet.js';
5
+ /**
6
+ * Instantiates a statically typed Schema. This is a runtime-noop function, and is purposed
7
+ * to be used as a type-level tag to be used with {@link ox#Provider.(from:function)} or
8
+ * {@link ox#RpcTransport.(fromHttp:function)}.
9
+ *
10
+ * @example
11
+ * ### Using with `Provider.from`
12
+ *
13
+ * ```ts twoslash
14
+ * // @noErrors
15
+ * import 'ox/window'
16
+ * import { Provider, RpcSchema } from 'ox'
17
+ *
18
+ * const schema = RpcSchema.from<
19
+ * | RpcSchema.Default
20
+ * | {
21
+ * Request: {
22
+ * method: 'abe_foo',
23
+ * params: [id: number],
24
+ * }
25
+ * ReturnType: string
26
+ * }
27
+ * | {
28
+ * Request: {
29
+ * method: 'abe_bar',
30
+ * params: [id: string],
31
+ * }
32
+ * ReturnType: string
33
+ * }
34
+ * >()
35
+ *
36
+ * const provider = Provider.from(window.ethereum, { schema })
37
+ *
38
+ * const blockNumber = await provider.request({ method: 'e' })
39
+ * // ^|
40
+ *
41
+ *
42
+ *
43
+ *
44
+ *
45
+ * ```
46
+ */
47
+ export declare function from<schema extends Generic>(): schema;
48
+ /**
49
+ * Extracts a schema item from a {@link ox#RpcSchema.Generic} or {@link ox#RpcSchema.MethodNameGeneric}.
50
+ *
51
+ * @example
52
+ * ```ts twoslash
53
+ * import { RpcSchema } from 'ox'
54
+ *
55
+ * type Item = RpcSchema.ExtractItem<RpcSchema.Eth, 'eth_getBlockByNumber'>
56
+ * // ^?
57
+ *
58
+ *
59
+ *
60
+ *
61
+ *
62
+ *
63
+ *
64
+ *
65
+ *
66
+ *
67
+ *
68
+ *
69
+ *
70
+ * ```
71
+ */
72
+ export type ExtractItem<schema extends Generic, methodName extends MethodNameGeneric<schema> = MethodNameGeneric<schema>> = Compute<{
73
+ Request: ExtractRequest<schema, methodName>;
74
+ ReturnType: ExtractReturnType<schema, methodName>;
75
+ }>;
76
+ /**
77
+ * Extracts request from a {@link ox#RpcSchema.Generic} or {@link ox#RpcSchema.MethodNameGeneric}.
78
+ *
79
+ * @example
80
+ * ```ts twoslash
81
+ * import { RpcSchema } from 'ox'
82
+ *
83
+ * type Request = RpcSchema.ExtractRequest<RpcSchema.Eth, 'eth_getBlockByNumber'>
84
+ * // ^?
85
+ *
86
+ *
87
+ *
88
+ *
89
+ *
90
+ *
91
+ *
92
+ *
93
+ *
94
+ *
95
+ *
96
+ * ```
97
+ */
98
+ export type ExtractRequest<schema extends Generic, methodName extends MethodNameGeneric<schema> = MethodNameGeneric<schema>> = Extract<schema['Request'], {
99
+ method: methodName;
100
+ }>;
101
+ /**
102
+ * Type-safe union of all JSON-RPC Method Names.
103
+ *
104
+ * @example
105
+ * ```ts twoslash
106
+ * import { RpcSchema } from 'ox'
107
+ *
108
+ * type MethodName = RpcSchema.ExtractMethodName<RpcSchema.Default>
109
+ * // ^?
110
+ *
111
+ *
112
+ *
113
+ *
114
+ *
115
+ *
116
+ *
117
+ *
118
+ * ```
119
+ */
120
+ export type ExtractMethodName<schema extends Generic> = schema['Request']['method'];
121
+ /**
122
+ * Extracts parameters from a {@link ox#RpcSchema.Generic} or {@link ox#RpcSchema.MethodNameGeneric}.
123
+ *
124
+ * @example
125
+ * ```ts twoslash
126
+ * import { RpcSchema } from 'ox'
127
+ *
128
+ * type Eth_GetBlockByNumber = RpcSchema.ExtractParams<RpcSchema.Eth, 'eth_getBlockByNumber'>
129
+ * // ^?
130
+ *
131
+ *
132
+ *
133
+ *
134
+ *
135
+ * ```
136
+ */
137
+ export type ExtractParams<schema extends Generic, methodName extends MethodNameGeneric<schema> = MethodNameGeneric<schema>> = ExtractRequest<schema, methodName>['params'];
138
+ /**
139
+ * Extracts return type from a {@link ox#RpcSchema.Generic} or {@link ox#RpcSchema.MethodNameGeneric}.
140
+ *
141
+ * @example
142
+ * ```ts twoslash
143
+ * import { RpcSchema } from 'ox'
144
+ *
145
+ * type ReturnType = RpcSchema.ExtractReturnType<RpcSchema.Eth, 'eth_getBlockByNumber'>
146
+ * // ^?
147
+ *
148
+ *
149
+ *
150
+ *
151
+ *
152
+ *
153
+ *
154
+ *
155
+ *
156
+ *
157
+ *
158
+ * ```
159
+ */
160
+ export type ExtractReturnType<schema extends Generic, methodName extends MethodNameGeneric<schema> = MethodNameGeneric<schema>> = methodName extends schema['Request']['method'] ? IsNarrowable<schema, Generic> extends true ? Extract<schema, {
161
+ Request: {
162
+ method: methodName;
163
+ };
164
+ }>['ReturnType'] : unknown : unknown;
165
+ /**
166
+ * Type to define a custom type-safe JSON-RPC Schema.
167
+ *
168
+ * @example
169
+ * ```ts twoslash
170
+ * import { RpcSchema, RpcRequest } from 'ox'
171
+ *
172
+ * type Schema = RpcSchema.From<{
173
+ * Request: {
174
+ * method: 'eth_foobar',
175
+ * params: [id: number],
176
+ * }
177
+ * ReturnType: string
178
+ * }>
179
+ * ```
180
+ */
181
+ export type From<schema extends Generic> = schema;
182
+ /**
183
+ * Generic type to define a JSON-RPC Method.
184
+ *
185
+ * @example
186
+ * ```ts twoslash
187
+ * import { RpcSchema } from 'ox'
188
+ *
189
+ * type Schema = RpcSchema.Generic
190
+ * // ^?
191
+ *
192
+ *
193
+ *
194
+ *
195
+ *
196
+ *
197
+ * ```
198
+ */
199
+ export type Generic<name extends string = string, params = unknown> = {
200
+ Request: {
201
+ method: name;
202
+ params?: params | undefined;
203
+ };
204
+ ReturnType?: unknown;
205
+ };
206
+ /**
207
+ * Type-safe union of all JSON-RPC Methods.
208
+ *
209
+ * @example
210
+ * ```ts twoslash
211
+ * import { RpcSchema } from 'ox'
212
+ *
213
+ * type Schema = RpcSchema.Default
214
+ * // ^?
215
+ *
216
+ *
217
+ *
218
+ *
219
+ *
220
+ *
221
+ *
222
+ *
223
+ *
224
+ *
225
+ *
226
+ *
227
+ *
228
+ * ```
229
+ */
230
+ export type Default = ResolvedRegister['RpcSchema'];
231
+ /**
232
+ * Generic type to define a JSON-RPC Method Name.
233
+ *
234
+ * @example
235
+ * ```ts twoslash
236
+ * import { RpcSchema } from 'ox'
237
+ *
238
+ * type Name = RpcSchema.MethodNameGeneric
239
+ * // ^?
240
+ *
241
+ *
242
+ *
243
+ *
244
+ *
245
+ * ```
246
+ */
247
+ export type MethodNameGeneric<schema extends Generic = Generic> = schema['Request']['method'] | (string & {});
248
+ //# sourceMappingURL=RpcSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RpcSchema.d.ts","sourceRoot":"","sources":["../RpcSchema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import * as Errors from './Errors.js';
2
+ import type * as RpcResponse from './RpcResponse.js';
3
+ import type * as RpcSchema from './RpcSchema.js';
4
+ import * as promise from './internal/promise.js';
5
+ import type * as RpcSchema_internal from './internal/rpcSchema.js';
6
+ import * as internal from './internal/rpcTransport.js';
7
+ import type { Compute } from './internal/types.js';
8
+ /** Root type for an RPC Transport. */
9
+ export type RpcTransport<raw extends boolean = false, options extends Record<string, unknown> = {}, schema extends RpcSchema.Generic = RpcSchema.Default> = Compute<{
10
+ request: RequestFn<raw, options, schema>;
11
+ }>;
12
+ /** HTTP-based RPC Transport. */
13
+ export type Http<raw extends boolean = false, schema extends RpcSchema.Generic = RpcSchema.Default> = RpcTransport<raw, HttpOptions, schema>;
14
+ export type HttpOptions = {
15
+ /** Request configuration to pass to `fetch`. */
16
+ fetchOptions?: Omit<RequestInit, 'body'> | ((method: RpcSchema.Generic['Request']) => Omit<RequestInit, 'body'> | Promise<Omit<RequestInit, 'body'>>) | undefined;
17
+ /** Function to use to make the request. @default fetch */
18
+ fetchFn?: typeof fetch | undefined;
19
+ /** Timeout for the request in milliseconds. @default 10_000 */
20
+ timeout?: number | undefined;
21
+ };
22
+ export type RequestFn<raw extends boolean = false, options extends Record<string, unknown> = {}, schema extends RpcSchema.Generic = RpcSchema.Default> = <methodName extends RpcSchema.MethodNameGeneric, raw_override extends boolean | undefined = undefined>(parameters: Compute<RpcSchema_internal.ExtractRequestOpaque<schema, methodName>>, options?: internal.Options<raw_override, options, schema> | undefined) => Promise<raw_override extends boolean ? raw_override extends true ? RpcResponse.RpcResponse<RpcSchema.ExtractReturnType<schema, methodName>> : RpcSchema.ExtractReturnType<schema, methodName> : raw extends true ? RpcResponse.RpcResponse<RpcSchema.ExtractReturnType<schema, methodName>> : RpcSchema.ExtractReturnType<schema, methodName>>;
23
+ /**
24
+ * Creates a HTTP JSON-RPC Transport from a URL.
25
+ *
26
+ * @example
27
+ * ```ts twoslash
28
+ * import { RpcTransport } from 'ox'
29
+ *
30
+ * const transport = RpcTransport.fromHttp('https://1.rpc.thirdweb.com')
31
+ *
32
+ * const blockNumber = await transport.request({ method: 'eth_blockNumber' })
33
+ * // @log: '0x1a2b3c'
34
+ * ```
35
+ *
36
+ * @param url - URL to perform the JSON-RPC requests to.
37
+ * @param options - Transport options.
38
+ * @returns HTTP JSON-RPC Transport.
39
+ */
40
+ export declare function fromHttp<raw extends boolean = false, schema extends RpcSchema.Generic = RpcSchema.Default>(url: string, options?: fromHttp.Options<raw, schema>): Http<raw, schema>;
41
+ export declare namespace fromHttp {
42
+ var parseError: (error: unknown) => fromHttp.ErrorType;
43
+ }
44
+ export declare namespace fromHttp {
45
+ type Options<raw extends boolean = false, schema extends RpcSchema.Generic = RpcSchema.Default> = internal.Options<raw, HttpOptions, schema>;
46
+ type ErrorType = promise.withTimeout.ErrorType | HttpError | Errors.GlobalErrorType;
47
+ }
48
+ /** Thrown when a HTTP request fails. */
49
+ export declare class HttpError extends Errors.BaseError {
50
+ readonly name = "RpcTransport.HttpError";
51
+ constructor({ body, details, response, url, }: {
52
+ body: unknown;
53
+ details: string;
54
+ response: Response;
55
+ url: string;
56
+ });
57
+ }
58
+ /** Thrown when a HTTP response is malformed. */
59
+ export declare class MalformedResponseError extends Errors.BaseError {
60
+ readonly name = "RpcTransport.MalformedResponseError";
61
+ constructor({ response }: {
62
+ response: string;
63
+ });
64
+ }
65
+ //# sourceMappingURL=RpcTransport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RpcTransport.d.ts","sourceRoot":"","sources":["../RpcTransport.ts"],"names":[],"mappings":"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"}