@xyo-network/xl1-rpc 1.11.0 → 1.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/dist/neutral/engine/requestSchemas.d.ts +2 -2
  2. package/dist/neutral/engine/requestSchemas.d.ts.map +1 -1
  3. package/dist/neutral/index.mjs +805 -455
  4. package/dist/neutral/index.mjs.map +1 -1
  5. package/dist/neutral/provider/connection/XyoConnection.d.ts +2 -2
  6. package/dist/neutral/provider/connection/XyoConnection.d.ts.map +1 -1
  7. package/dist/neutral/provider/runner/JsonRpcXyoRunner.d.ts +2 -2
  8. package/dist/neutral/provider/runner/JsonRpcXyoRunner.d.ts.map +1 -1
  9. package/dist/neutral/provider/runner/MemoryXyoRunner.d.ts +2 -2
  10. package/dist/neutral/provider/runner/MemoryXyoRunner.d.ts.map +1 -1
  11. package/dist/neutral/provider/runner/NodeXyoRunner.d.ts +2 -2
  12. package/dist/neutral/provider/runner/NodeXyoRunner.d.ts.map +1 -1
  13. package/dist/neutral/provider/signer/JsonRpcXyoSigner.d.ts +5 -5
  14. package/dist/neutral/provider/signer/JsonRpcXyoSigner.d.ts.map +1 -1
  15. package/dist/neutral/provider/signer/MemoryXyoSigner.d.ts +2 -2
  16. package/dist/neutral/provider/signer/MemoryXyoSigner.d.ts.map +1 -1
  17. package/dist/neutral/provider/viewer/JsonRpcXyoViewer.d.ts +5 -5
  18. package/dist/neutral/provider/viewer/JsonRpcXyoViewer.d.ts.map +1 -1
  19. package/dist/neutral/transport/HttpRpcTransport.d.ts +1 -1
  20. package/dist/neutral/transport/HttpRpcTransport.d.ts.map +1 -1
  21. package/dist/neutral/transport/MemoryRpcTransport.d.ts +6 -7
  22. package/dist/neutral/transport/MemoryRpcTransport.d.ts.map +1 -1
  23. package/dist/neutral/transport/RpcTransport.d.ts +1 -1
  24. package/dist/neutral/transport/RpcTransport.d.ts.map +1 -1
  25. package/dist/neutral/transport/post-message/LegacyPostMessageRpcTransport.d.ts +5 -5
  26. package/dist/neutral/transport/post-message/LegacyPostMessageRpcTransport.d.ts.map +1 -1
  27. package/dist/neutral/types/schema/AllRpcSchemas.d.ts +2965 -2
  28. package/dist/neutral/types/schema/AllRpcSchemas.d.ts.map +1 -1
  29. package/dist/neutral/types/schema/XyoGatewayRpcSchemas.d.ts +422 -76
  30. package/dist/neutral/types/schema/XyoGatewayRpcSchemas.d.ts.map +1 -1
  31. package/dist/neutral/types/schema/XyoProviderRpcSchemas.d.ts +297 -3
  32. package/dist/neutral/types/schema/XyoProviderRpcSchemas.d.ts.map +1 -1
  33. package/dist/neutral/types/schema/XyoRunnerRpcSchemas.d.ts +231 -3
  34. package/dist/neutral/types/schema/XyoRunnerRpcSchemas.d.ts.map +1 -1
  35. package/dist/neutral/types/schema/XyoSignerRpcSchemas.d.ts +838 -3
  36. package/dist/neutral/types/schema/XyoSignerRpcSchemas.d.ts.map +1 -1
  37. package/dist/neutral/types/schema/XyoViewerRpcSchemas.d.ts +1611 -3
  38. package/dist/neutral/types/schema/XyoViewerRpcSchemas.d.ts.map +1 -1
  39. package/dist/neutral/types/schema/common/Address.d.ts +7 -0
  40. package/dist/neutral/types/schema/common/Address.d.ts.map +1 -0
  41. package/dist/neutral/types/schema/common/AllowedBlockPayload.d.ts +11 -0
  42. package/dist/neutral/types/schema/common/AllowedBlockPayload.d.ts.map +1 -0
  43. package/dist/neutral/types/schema/common/BlockBoundWitness.d.ts +324 -0
  44. package/dist/neutral/types/schema/common/BlockBoundWitness.d.ts.map +1 -0
  45. package/dist/neutral/types/schema/common/BoundWitness.d.ts +420 -0
  46. package/dist/neutral/types/schema/common/BoundWitness.d.ts.map +1 -0
  47. package/dist/neutral/types/schema/common/Chain.d.ts +4 -0
  48. package/dist/neutral/types/schema/common/Chain.d.ts.map +1 -0
  49. package/dist/neutral/types/schema/common/HydratedBlock.d.ts +474 -0
  50. package/dist/neutral/types/schema/common/HydratedBlock.d.ts.map +1 -0
  51. package/dist/neutral/types/schema/common/HydratedTransaction.d.ts +624 -0
  52. package/dist/neutral/types/schema/common/HydratedTransaction.d.ts.map +1 -0
  53. package/dist/neutral/types/schema/common/Json.d.ts +7 -0
  54. package/dist/neutral/types/schema/common/Json.d.ts.map +1 -0
  55. package/dist/neutral/types/schema/common/Payload.d.ts +134 -0
  56. package/dist/neutral/types/schema/common/Payload.d.ts.map +1 -0
  57. package/dist/neutral/types/schema/common/Sequence.d.ts +9 -0
  58. package/dist/neutral/types/schema/common/Sequence.d.ts.map +1 -0
  59. package/dist/neutral/types/schema/common/TransactionBoundWitness.d.ts +239 -0
  60. package/dist/neutral/types/schema/common/TransactionBoundWitness.d.ts.map +1 -0
  61. package/dist/neutral/types/schema/common/TransactionFees.d.ts +93 -24
  62. package/dist/neutral/types/schema/common/TransactionFees.d.ts.map +1 -1
  63. package/dist/neutral/types/schema/common/index.d.ts +11 -13
  64. package/dist/neutral/types/schema/common/index.d.ts.map +1 -1
  65. package/dist/neutral/types/schema/common/spec/BigIntZod.spec.d.ts +2 -0
  66. package/dist/neutral/types/schema/common/spec/BigIntZod.spec.d.ts.map +1 -0
  67. package/dist/neutral/types/schema/common/spec/HydratedTransaction.spec.d.ts +2 -0
  68. package/dist/neutral/types/schema/common/spec/HydratedTransaction.spec.d.ts.map +1 -0
  69. package/dist/neutral/types/schema/common/spec/Payload.spec.d.ts +2 -0
  70. package/dist/neutral/types/schema/common/spec/Payload.spec.d.ts.map +1 -0
  71. package/dist/neutral/types/schema/common/spec/TransactionBoundWitnessZod.spec.d.ts +2 -0
  72. package/dist/neutral/types/schema/common/spec/TransactionBoundWitnessZod.spec.d.ts.map +1 -0
  73. package/dist/neutral/types/schema/common/spec/UnsignedHydratedTransactionSchema.spec copy.d.ts +2 -0
  74. package/dist/neutral/types/schema/common/spec/UnsignedHydratedTransactionSchema.spec copy.d.ts.map +1 -0
  75. package/dist/neutral/types/schema/createRequestSchema.d.ts +2 -22
  76. package/dist/neutral/types/schema/createRequestSchema.d.ts.map +1 -1
  77. package/dist/neutral/types/schema/createResponseSchema.d.ts +2 -18
  78. package/dist/neutral/types/schema/createResponseSchema.d.ts.map +1 -1
  79. package/dist/neutral/types/schema/index.d.ts +1 -0
  80. package/dist/neutral/types/schema/index.d.ts.map +1 -1
  81. package/dist/node/engine/requestSchemas.d.ts +2 -2
  82. package/dist/node/engine/requestSchemas.d.ts.map +1 -1
  83. package/dist/node/index-node.mjs +834 -486
  84. package/dist/node/index-node.mjs.map +1 -1
  85. package/dist/node/provider/connection/XyoConnection.d.ts +2 -2
  86. package/dist/node/provider/connection/XyoConnection.d.ts.map +1 -1
  87. package/dist/node/provider/runner/JsonRpcXyoRunner.d.ts +2 -2
  88. package/dist/node/provider/runner/JsonRpcXyoRunner.d.ts.map +1 -1
  89. package/dist/node/provider/runner/MemoryXyoRunner.d.ts +2 -2
  90. package/dist/node/provider/runner/MemoryXyoRunner.d.ts.map +1 -1
  91. package/dist/node/provider/runner/NodeXyoRunner.d.ts +2 -2
  92. package/dist/node/provider/runner/NodeXyoRunner.d.ts.map +1 -1
  93. package/dist/node/provider/signer/JsonRpcXyoSigner.d.ts +5 -5
  94. package/dist/node/provider/signer/JsonRpcXyoSigner.d.ts.map +1 -1
  95. package/dist/node/provider/signer/MemoryXyoSigner.d.ts +2 -2
  96. package/dist/node/provider/signer/MemoryXyoSigner.d.ts.map +1 -1
  97. package/dist/node/provider/viewer/JsonRpcXyoViewer.d.ts +5 -5
  98. package/dist/node/provider/viewer/JsonRpcXyoViewer.d.ts.map +1 -1
  99. package/dist/node/transport/HttpRpcTransport.d.ts +1 -1
  100. package/dist/node/transport/HttpRpcTransport.d.ts.map +1 -1
  101. package/dist/node/transport/MemoryRpcTransport.d.ts +6 -7
  102. package/dist/node/transport/MemoryRpcTransport.d.ts.map +1 -1
  103. package/dist/node/transport/RpcTransport.d.ts +1 -1
  104. package/dist/node/transport/RpcTransport.d.ts.map +1 -1
  105. package/dist/node/transport/post-message/LegacyPostMessageRpcTransport.d.ts +5 -5
  106. package/dist/node/transport/post-message/LegacyPostMessageRpcTransport.d.ts.map +1 -1
  107. package/dist/node/types/schema/AllRpcSchemas.d.ts +2965 -2
  108. package/dist/node/types/schema/AllRpcSchemas.d.ts.map +1 -1
  109. package/dist/node/types/schema/XyoGatewayRpcSchemas.d.ts +422 -76
  110. package/dist/node/types/schema/XyoGatewayRpcSchemas.d.ts.map +1 -1
  111. package/dist/node/types/schema/XyoProviderRpcSchemas.d.ts +297 -3
  112. package/dist/node/types/schema/XyoProviderRpcSchemas.d.ts.map +1 -1
  113. package/dist/node/types/schema/XyoRunnerRpcSchemas.d.ts +231 -3
  114. package/dist/node/types/schema/XyoRunnerRpcSchemas.d.ts.map +1 -1
  115. package/dist/node/types/schema/XyoSignerRpcSchemas.d.ts +838 -3
  116. package/dist/node/types/schema/XyoSignerRpcSchemas.d.ts.map +1 -1
  117. package/dist/node/types/schema/XyoViewerRpcSchemas.d.ts +1611 -3
  118. package/dist/node/types/schema/XyoViewerRpcSchemas.d.ts.map +1 -1
  119. package/dist/node/types/schema/common/Address.d.ts +7 -0
  120. package/dist/node/types/schema/common/Address.d.ts.map +1 -0
  121. package/dist/node/types/schema/common/AllowedBlockPayload.d.ts +11 -0
  122. package/dist/node/types/schema/common/AllowedBlockPayload.d.ts.map +1 -0
  123. package/dist/node/types/schema/common/BlockBoundWitness.d.ts +324 -0
  124. package/dist/node/types/schema/common/BlockBoundWitness.d.ts.map +1 -0
  125. package/dist/node/types/schema/common/BoundWitness.d.ts +420 -0
  126. package/dist/node/types/schema/common/BoundWitness.d.ts.map +1 -0
  127. package/dist/node/types/schema/common/Chain.d.ts +4 -0
  128. package/dist/node/types/schema/common/Chain.d.ts.map +1 -0
  129. package/dist/node/types/schema/common/HydratedBlock.d.ts +474 -0
  130. package/dist/node/types/schema/common/HydratedBlock.d.ts.map +1 -0
  131. package/dist/node/types/schema/common/HydratedTransaction.d.ts +624 -0
  132. package/dist/node/types/schema/common/HydratedTransaction.d.ts.map +1 -0
  133. package/dist/node/types/schema/common/Json.d.ts +7 -0
  134. package/dist/node/types/schema/common/Json.d.ts.map +1 -0
  135. package/dist/node/types/schema/common/Payload.d.ts +134 -0
  136. package/dist/node/types/schema/common/Payload.d.ts.map +1 -0
  137. package/dist/node/types/schema/common/Sequence.d.ts +9 -0
  138. package/dist/node/types/schema/common/Sequence.d.ts.map +1 -0
  139. package/dist/node/types/schema/common/TransactionBoundWitness.d.ts +239 -0
  140. package/dist/node/types/schema/common/TransactionBoundWitness.d.ts.map +1 -0
  141. package/dist/node/types/schema/common/TransactionFees.d.ts +93 -24
  142. package/dist/node/types/schema/common/TransactionFees.d.ts.map +1 -1
  143. package/dist/node/types/schema/common/index.d.ts +11 -13
  144. package/dist/node/types/schema/common/index.d.ts.map +1 -1
  145. package/dist/node/types/schema/common/spec/BigIntZod.spec.d.ts +2 -0
  146. package/dist/node/types/schema/common/spec/BigIntZod.spec.d.ts.map +1 -0
  147. package/dist/node/types/schema/common/spec/HydratedTransaction.spec.d.ts +2 -0
  148. package/dist/node/types/schema/common/spec/HydratedTransaction.spec.d.ts.map +1 -0
  149. package/dist/node/types/schema/common/spec/Payload.spec.d.ts +2 -0
  150. package/dist/node/types/schema/common/spec/Payload.spec.d.ts.map +1 -0
  151. package/dist/node/types/schema/common/spec/TransactionBoundWitnessZod.spec.d.ts +2 -0
  152. package/dist/node/types/schema/common/spec/TransactionBoundWitnessZod.spec.d.ts.map +1 -0
  153. package/dist/node/types/schema/common/spec/UnsignedHydratedTransactionSchema.spec copy.d.ts +2 -0
  154. package/dist/node/types/schema/common/spec/UnsignedHydratedTransactionSchema.spec copy.d.ts.map +1 -0
  155. package/dist/node/types/schema/createRequestSchema.d.ts +2 -22
  156. package/dist/node/types/schema/createRequestSchema.d.ts.map +1 -1
  157. package/dist/node/types/schema/createResponseSchema.d.ts +2 -18
  158. package/dist/node/types/schema/createResponseSchema.d.ts.map +1 -1
  159. package/dist/node/types/schema/index.d.ts +1 -0
  160. package/dist/node/types/schema/index.d.ts.map +1 -1
  161. package/package.json +30 -31
  162. package/src/engine/requestSchemas.ts +2 -2
  163. package/src/provider/client/spec/MemoryXyoClient.spec.ts +2 -2
  164. package/src/provider/connection/XyoConnection.ts +3 -3
  165. package/src/provider/connection/spec/XyoConnection.ts +2 -2
  166. package/src/provider/gateway/spec/MemoryXyoGateway.spec.ts +2 -2
  167. package/src/provider/runner/JsonRpcXyoRunner.ts +2 -2
  168. package/src/provider/runner/MemoryXyoRunner.ts +2 -2
  169. package/src/provider/runner/NodeXyoRunner.ts +2 -2
  170. package/src/provider/signer/JsonRpcXyoSigner.ts +11 -8
  171. package/src/provider/signer/MemoryXyoSigner.ts +2 -2
  172. package/src/provider/signer/spec/RpcEngineXyoSigner.spec.ts +5 -4
  173. package/src/provider/viewer/JsonRpcXyoViewer.ts +15 -16
  174. package/src/provider/viewer/spec/JsonRpcXyoViewer.spec.ts +3 -2
  175. package/src/transport/HttpRpcTransport.ts +7 -7
  176. package/src/transport/MemoryRpcTransport.ts +18 -16
  177. package/src/transport/RpcTransport.ts +3 -3
  178. package/src/transport/post-message/LegacyPostMessageRpcTransport.ts +12 -12
  179. package/src/types/schema/AllRpcSchemas.ts +2 -2
  180. package/src/types/schema/XyoGatewayRpcSchemas.ts +17 -17
  181. package/src/types/schema/XyoProviderRpcSchemas.ts +16 -16
  182. package/src/types/schema/XyoRunnerRpcSchemas.ts +8 -11
  183. package/src/types/schema/XyoSignerRpcSchemas.ts +30 -25
  184. package/src/types/schema/XyoViewerRpcSchemas.ts +55 -52
  185. package/src/types/schema/common/Address.ts +5 -0
  186. package/src/types/schema/common/AllowedBlockPayload.ts +16 -0
  187. package/src/types/schema/common/BlockBoundWitness.ts +49 -0
  188. package/src/types/schema/common/BoundWitness.ts +53 -0
  189. package/src/types/schema/common/Chain.ts +5 -0
  190. package/src/types/schema/common/HydratedBlock.ts +32 -0
  191. package/src/types/schema/common/HydratedTransaction.ts +38 -0
  192. package/src/types/schema/common/Json.ts +19 -0
  193. package/src/types/schema/common/Payload.ts +31 -0
  194. package/src/types/schema/common/Sequence.ts +18 -0
  195. package/src/types/schema/common/TransactionBoundWitness.ts +42 -0
  196. package/src/types/schema/common/TransactionFees.ts +37 -11
  197. package/src/types/schema/common/index.ts +11 -13
  198. package/src/types/schema/common/spec/{BigIntSchema.spec.ts → BigIntZod.spec.ts} +6 -7
  199. package/src/types/schema/common/spec/HydratedBlockSchema.spec.ts +9 -83
  200. package/src/types/schema/common/spec/HydratedTransaction.spec.ts +18 -0
  201. package/src/types/schema/common/spec/Payload.spec.ts +29 -0
  202. package/src/types/schema/common/spec/TransactionBoundWitnessZod.spec.ts +18 -0
  203. package/src/types/schema/common/spec/UnsignedHydratedTransactionSchema.spec copy.ts +53 -0
  204. package/src/types/schema/index.ts +1 -0
  205. package/dist/neutral/types/schema/common/AddressSchema.d.ts +0 -5
  206. package/dist/neutral/types/schema/common/AddressSchema.d.ts.map +0 -1
  207. package/dist/neutral/types/schema/common/BigIntSchema.d.ts +0 -4
  208. package/dist/neutral/types/schema/common/BigIntSchema.d.ts.map +0 -1
  209. package/dist/neutral/types/schema/common/BlockBoundWitnessSchema.d.ts +0 -235
  210. package/dist/neutral/types/schema/common/BlockBoundWitnessSchema.d.ts.map +0 -1
  211. package/dist/neutral/types/schema/common/BoundWitnessSchema.d.ts +0 -163
  212. package/dist/neutral/types/schema/common/BoundWitnessSchema.d.ts.map +0 -1
  213. package/dist/neutral/types/schema/common/HashSchema.d.ts +0 -5
  214. package/dist/neutral/types/schema/common/HashSchema.d.ts.map +0 -1
  215. package/dist/neutral/types/schema/common/HexSchema.d.ts +0 -5
  216. package/dist/neutral/types/schema/common/HexSchema.d.ts.map +0 -1
  217. package/dist/neutral/types/schema/common/HydratedBlockSchema.d.ts +0 -282
  218. package/dist/neutral/types/schema/common/HydratedBlockSchema.d.ts.map +0 -1
  219. package/dist/neutral/types/schema/common/HydratedTransactionSchema.d.ts +0 -214
  220. package/dist/neutral/types/schema/common/HydratedTransactionSchema.d.ts.map +0 -1
  221. package/dist/neutral/types/schema/common/JsonSchema.d.ts +0 -7
  222. package/dist/neutral/types/schema/common/JsonSchema.d.ts.map +0 -1
  223. package/dist/neutral/types/schema/common/PayloadSchema.d.ts +0 -28
  224. package/dist/neutral/types/schema/common/PayloadSchema.d.ts.map +0 -1
  225. package/dist/neutral/types/schema/common/SequenceSchema.d.ts +0 -9
  226. package/dist/neutral/types/schema/common/SequenceSchema.d.ts.map +0 -1
  227. package/dist/neutral/types/schema/common/StorageMetaSchema.d.ts +0 -46
  228. package/dist/neutral/types/schema/common/StorageMetaSchema.d.ts.map +0 -1
  229. package/dist/neutral/types/schema/common/TransactionBoundWitnessSchema.d.ts +0 -258
  230. package/dist/neutral/types/schema/common/TransactionBoundWitnessSchema.d.ts.map +0 -1
  231. package/dist/neutral/types/schema/common/spec/BigIntSchema.spec.d.ts +0 -2
  232. package/dist/neutral/types/schema/common/spec/BigIntSchema.spec.d.ts.map +0 -1
  233. package/dist/node/types/schema/common/AddressSchema.d.ts +0 -5
  234. package/dist/node/types/schema/common/AddressSchema.d.ts.map +0 -1
  235. package/dist/node/types/schema/common/BigIntSchema.d.ts +0 -4
  236. package/dist/node/types/schema/common/BigIntSchema.d.ts.map +0 -1
  237. package/dist/node/types/schema/common/BlockBoundWitnessSchema.d.ts +0 -235
  238. package/dist/node/types/schema/common/BlockBoundWitnessSchema.d.ts.map +0 -1
  239. package/dist/node/types/schema/common/BoundWitnessSchema.d.ts +0 -163
  240. package/dist/node/types/schema/common/BoundWitnessSchema.d.ts.map +0 -1
  241. package/dist/node/types/schema/common/HashSchema.d.ts +0 -5
  242. package/dist/node/types/schema/common/HashSchema.d.ts.map +0 -1
  243. package/dist/node/types/schema/common/HexSchema.d.ts +0 -5
  244. package/dist/node/types/schema/common/HexSchema.d.ts.map +0 -1
  245. package/dist/node/types/schema/common/HydratedBlockSchema.d.ts +0 -282
  246. package/dist/node/types/schema/common/HydratedBlockSchema.d.ts.map +0 -1
  247. package/dist/node/types/schema/common/HydratedTransactionSchema.d.ts +0 -214
  248. package/dist/node/types/schema/common/HydratedTransactionSchema.d.ts.map +0 -1
  249. package/dist/node/types/schema/common/JsonSchema.d.ts +0 -7
  250. package/dist/node/types/schema/common/JsonSchema.d.ts.map +0 -1
  251. package/dist/node/types/schema/common/PayloadSchema.d.ts +0 -28
  252. package/dist/node/types/schema/common/PayloadSchema.d.ts.map +0 -1
  253. package/dist/node/types/schema/common/SequenceSchema.d.ts +0 -9
  254. package/dist/node/types/schema/common/SequenceSchema.d.ts.map +0 -1
  255. package/dist/node/types/schema/common/StorageMetaSchema.d.ts +0 -46
  256. package/dist/node/types/schema/common/StorageMetaSchema.d.ts.map +0 -1
  257. package/dist/node/types/schema/common/TransactionBoundWitnessSchema.d.ts +0 -258
  258. package/dist/node/types/schema/common/TransactionBoundWitnessSchema.d.ts.map +0 -1
  259. package/dist/node/types/schema/common/spec/BigIntSchema.spec.d.ts +0 -2
  260. package/dist/node/types/schema/common/spec/BigIntSchema.spec.d.ts.map +0 -1
  261. package/src/types/schema/common/AddressSchema.ts +0 -9
  262. package/src/types/schema/common/BigIntSchema.ts +0 -10
  263. package/src/types/schema/common/BlockBoundWitnessSchema.ts +0 -30
  264. package/src/types/schema/common/BoundWitnessSchema.ts +0 -45
  265. package/src/types/schema/common/HashSchema.ts +0 -7
  266. package/src/types/schema/common/HexSchema.ts +0 -7
  267. package/src/types/schema/common/HydratedBlockSchema.ts +0 -26
  268. package/src/types/schema/common/HydratedTransactionSchema.ts +0 -14
  269. package/src/types/schema/common/JsonSchema.ts +0 -19
  270. package/src/types/schema/common/PayloadSchema.ts +0 -6
  271. package/src/types/schema/common/SequenceSchema.ts +0 -19
  272. package/src/types/schema/common/StorageMetaSchema.ts +0 -14
  273. package/src/types/schema/common/TransactionBoundWitnessSchema.ts +0 -33
@@ -1 +1 @@
1
- {"version":3,"file":"createRequestSchema.d.ts","sourceRoot":"","sources":["../../../../src/types/schema/createRequestSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,mBAAmB,GAAI,OAAO,SAAS,CAAC,CAAC,UAAU,EAAE,WAAW,SAAS,MAAM,GAAG,MAAM,EACnG,YAAY,WAAW,EACvB,eAAc,OAAO,GAAG,YAA4B;;;;;;;;;;;;;;;;;;;;;;;;;mBAOlD,CAAA"}
1
+ {"version":3,"file":"createRequestSchema.d.ts","sourceRoot":"","sources":["../../../../src/types/schema/createRequestSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,mBAAmB,GAAI,OAAO,SAAS,CAAC,CAAC,UAAU,EAAE,WAAW,SAAS,MAAM,GAAG,MAAM,EACnG,YAAY,WAAW,EACvB,eAAc,OAAO,GAAG,YAA4B;;;;;iBAOlD,CAAA"}
@@ -1,24 +1,8 @@
1
1
  import type { ZodUndefined } from 'zod';
2
2
  import { z } from 'zod';
3
3
  export declare const createResponseSchema: <TParams extends z.ZodTypeAny>(resultSchema?: TParams | ZodUndefined) => z.ZodObject<{
4
- id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
4
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
5
5
  jsonrpc: z.ZodLiteral<"2.0">;
6
6
  result: ZodUndefined | TParams;
7
- }, "strip", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
8
- id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
9
- jsonrpc: z.ZodLiteral<"2.0">;
10
- result: ZodUndefined | TParams;
11
- }>, any> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
12
- id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
13
- jsonrpc: z.ZodLiteral<"2.0">;
14
- result: ZodUndefined | TParams;
15
- }>, any>[k]; } : never, z.baseObjectInputType<{
16
- id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
17
- jsonrpc: z.ZodLiteral<"2.0">;
18
- result: ZodUndefined | TParams;
19
- }> extends infer T_1 ? { [k_1 in keyof T_1]: z.baseObjectInputType<{
20
- id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
21
- jsonrpc: z.ZodLiteral<"2.0">;
22
- result: ZodUndefined | TParams;
23
- }>[k_1]; } : never>;
7
+ }, z.core.$strip>;
24
8
  //# sourceMappingURL=createResponseSchema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createResponseSchema.d.ts","sourceRoot":"","sources":["../../../../src/types/schema/createResponseSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,oBAAoB,GAAI,OAAO,SAAS,CAAC,CAAC,UAAU,EAC/D,eAAc,OAAO,GAAG,YAA4B;;;;;;;;;;;;;;;;;;;;mBAMlD,CAAA"}
1
+ {"version":3,"file":"createResponseSchema.d.ts","sourceRoot":"","sources":["../../../../src/types/schema/createResponseSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,oBAAoB,GAAI,OAAO,SAAS,CAAC,CAAC,UAAU,EAC/D,eAAc,OAAO,GAAG,YAA4B;;;;iBAMlD,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export * from './AllRpcSchemas.ts';
2
+ export * from './common/index.ts';
2
3
  export * from './createRequestSchema.ts';
3
4
  export * from './createResponseSchema.ts';
4
5
  export * from './RpcSchemaMap.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA;AACzC,cAAc,mBAAmB,CAAA;AACjC,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA;AACzC,cAAc,mBAAmB,CAAA;AACjC,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "http://json.schemastore.org/package.json",
3
3
  "name": "@xyo-network/xl1-rpc",
4
- "version": "1.11.0",
4
+ "version": "1.12.1",
5
5
  "description": "XYO Layer One API",
6
6
  "homepage": "https://xylabs.com",
7
7
  "bugs": {
@@ -40,8 +40,6 @@
40
40
  },
41
41
  "./package.json": "./package.json"
42
42
  },
43
- "module": "./dist/neutral/index.mjs",
44
- "types": "./dist/neutral/index.d.ts",
45
43
  "files": [
46
44
  "dist",
47
45
  "src"
@@ -59,39 +57,40 @@
59
57
  "dependencies": {
60
58
  "@metamask/json-rpc-engine": "~10.0.3",
61
59
  "@metamask/utils": "~11.4.2",
62
- "@xylabs/assert": "~5.0.3",
63
- "@xylabs/axios": "~5.0.3",
64
- "@xylabs/exists": "~5.0.3",
65
- "@xylabs/hex": "~5.0.3",
66
- "@xylabs/object": "~5.0.3",
67
- "@xylabs/promise": "~5.0.3",
68
- "@xylabs/typeof": "~5.0.3",
69
- "@xyo-network/account-model": "~5.0.2",
70
- "@xyo-network/archivist-memory": "~5.0.2",
71
- "@xyo-network/archivist-model": "~5.0.2",
72
- "@xyo-network/boundwitness-model": "~5.0.2",
73
- "@xyo-network/hash": "~5.0.2",
74
- "@xyo-network/module-model": "~5.0.2",
75
- "@xyo-network/node-model": "~5.0.2",
76
- "@xyo-network/payload-builder": "~5.0.2",
77
- "@xyo-network/payload-model": "~5.0.2",
78
- "@xyo-network/payload-wrapper": "~5.0.2",
79
- "@xyo-network/xl1-protocol": "~1.10.3",
80
- "@xyo-network/xl1-protocol-sdk": "~1.11.0",
81
- "@xyo-network/xl1-wrappers": "~1.11.0",
60
+ "@xylabs/assert": "~5.0.8",
61
+ "@xylabs/axios": "~5.0.8",
62
+ "@xylabs/exists": "~5.0.8",
63
+ "@xylabs/hex": "~5.0.8",
64
+ "@xylabs/object": "~5.0.8",
65
+ "@xylabs/promise": "~5.0.8",
66
+ "@xylabs/typeof": "~5.0.8",
67
+ "@xyo-network/account-model": "~5.0.5",
68
+ "@xyo-network/archivist-memory": "~5.0.5",
69
+ "@xyo-network/archivist-model": "~5.0.5",
70
+ "@xyo-network/boundwitness-model": "~5.0.5",
71
+ "@xyo-network/core-payload-plugins": "~5.0.5",
72
+ "@xyo-network/hash": "~5.0.5",
73
+ "@xyo-network/module-model": "~5.0.5",
74
+ "@xyo-network/node-model": "~5.0.5",
75
+ "@xyo-network/payload-builder": "~5.0.5",
76
+ "@xyo-network/payload-model": "~5.0.5",
77
+ "@xyo-network/xl1-protocol": "~1.10.13",
78
+ "@xyo-network/xl1-protocol-sdk": "~1.12.1",
79
+ "@xyo-network/xl1-wrappers": "~1.12.1",
82
80
  "axios": "~1.11.0",
83
81
  "uuid": "~11.1.0",
84
- "zod": "~3.25.76"
82
+ "zod": "~4.0.17"
85
83
  },
86
84
  "devDependencies": {
87
85
  "@metamask/utils": "~11.4.2",
88
- "@types/node": "~24.2.0",
89
- "@xylabs/logger": "~5.0.3",
90
- "@xylabs/ts-scripts-yarn3": "~7.1.0",
91
- "@xylabs/tsconfig": "~7.1.0",
92
- "@xylabs/vitest-extended": "~5.0.3",
93
- "@xyo-network/account": "~5.0.2",
94
- "@xyo-network/wallet": "~5.0.2",
86
+ "@types/node": "~24.2.1",
87
+ "@xylabs/logger": "~5.0.8",
88
+ "@xylabs/ts-scripts-yarn3": "~7.1.2",
89
+ "@xylabs/tsconfig": "~7.1.2",
90
+ "@xylabs/vitest-extended": "~5.0.8",
91
+ "@xyo-network/account": "~5.0.5",
92
+ "@xyo-network/chain-protocol": "~1.12.1",
93
+ "@xyo-network/wallet": "~5.0.5",
95
94
  "dotenv": "~17.2.1",
96
95
  "typescript": "~5.9.2",
97
96
  "vitest": "~3.2.4"
@@ -1,3 +1,3 @@
1
- import type { AnyZodObject } from 'zod'
1
+ import type { ZodObject, ZodRawShape } from 'zod'
2
2
 
3
- export const requestSchemas: Record<string, AnyZodObject | undefined> = {}
3
+ export const requestSchemas: Record<string, ZodObject<ZodRawShape> | undefined> = {}
@@ -24,7 +24,7 @@ type TestPayload = Payload<{
24
24
  schema: 'network.xyo.test'
25
25
  }>
26
26
 
27
- describe('Client', () => {
27
+ describe.skip('Client', () => {
28
28
  const endpoint = 'http://localhost:8080/rpc'
29
29
  // const dataLakeEndpoint = 'http://localhost:8080/chain/archivist'
30
30
  let account: AccountInstance
@@ -70,7 +70,7 @@ describe('Client', () => {
70
70
  })
71
71
  it.only('should allow for submitting transactions', async () => {
72
72
  const [hash, tx] = await client.gateways['localhost' as GatewayName]?.addPayloadsToChain?.(onChainPayloads, offChainPayloads) ?? []
73
- expect(isHash(hash)).toBeTrue()
73
+ expect(isHash(hash)).toBeTruthy()
74
74
  expect(tx).toBeDefined()
75
75
  })
76
76
  })
@@ -5,7 +5,7 @@ import { PayloadBuilder } from '@xyo-network/payload-builder'
5
5
  import { isAnyPayload, type Payload } from '@xyo-network/payload-model'
6
6
  import type {
7
7
  AllowedBlockPayload,
8
- HydratedTransaction,
8
+ SignedHydratedTransactionWithStorageMeta,
9
9
  TransactionBoundWitness, TransactionFeesBigInt,
10
10
  TransactionOptions, XyoConnectionProvider, XyoDataLakeProvider, XyoDataLakeViewer, XyoNetwork, XyoRunner, XyoSigner, XyoViewer,
11
11
  } from '@xyo-network/xl1-protocol'
@@ -77,7 +77,7 @@ export class XyoConnection implements XyoConnectionProvider {
77
77
  {
78
78
  chain, exp, fees, from, nbf,
79
79
  }: TransactionOptions = {},
80
- ): Promise<HydratedTransaction> {
80
+ ): Promise<SignedHydratedTransactionWithStorageMeta> {
81
81
  const viewer = assertEx(this.viewer, () => 'No viewer available')
82
82
  // eslint-disable-next-line sonarjs/deprecation
83
83
  const signer = assertEx(this.signer, () => 'No signer available')
@@ -100,7 +100,7 @@ export class XyoConnection implements XyoConnectionProvider {
100
100
  feesResolved,
101
101
  fromResolved,
102
102
  ), () => 'Failed to create transaction')
103
- const hydratedTransaction: HydratedTransaction = [await PayloadBuilder.addStorageMeta(signedTransaction),
103
+ const hydratedTransaction: SignedHydratedTransactionWithStorageMeta = [await PayloadBuilder.addStorageMeta(signedTransaction),
104
104
  await PayloadBuilder.addStorageMeta(elevatedPayloads)]
105
105
 
106
106
  // if storage configured, add the external payloads to it
@@ -1,4 +1,4 @@
1
- import { type Hex, toAddress } from '@xylabs/hex'
1
+ import { toAddress } from '@xylabs/hex'
2
2
  import { Account } from '@xyo-network/account'
3
3
  import type { XyoConnectionProvider } from '@xyo-network/xl1-protocol'
4
4
  import {
@@ -10,7 +10,7 @@ import { MemoryXyoSigner } from '../../signer/index.ts'
10
10
  import { XyoConnection } from '../XyoConnection.ts'
11
11
 
12
12
  describe('RpcEngine - XyoProvider', () => {
13
- const chain: Hex = toAddress('2AAE728aFd1777b79c34D79c4523797F9D9965b0')
13
+ const chain = toAddress('2AAE728aFd1777b79c34D79c4523797F9D9965b0')
14
14
  let sut: XyoConnectionProvider
15
15
  beforeAll(async () => {
16
16
  const account = await Account.random()
@@ -10,7 +10,7 @@ import { HttpRpcXyoConnection } from '../../connection/index.ts'
10
10
  import { MemoryXyoSigner } from '../../signer/index.ts'
11
11
  import { MemoryXyoGateway } from '../MemoryXyoGateway.ts'
12
12
 
13
- describe('MemoryXyoGateway', () => {
13
+ describe.skip('MemoryXyoGateway', () => {
14
14
  const endpoint = 'http://localhost:8080/rpc'
15
15
  // const dataLakeEndpoint = 'http://localhost:8080/chain/archivist'
16
16
  let account: AccountInstance
@@ -40,7 +40,7 @@ describe('MemoryXyoGateway', () => {
40
40
  expect(sut.signer()).toBeDefined()
41
41
  })
42
42
  })
43
- describe.skip('submitTransaction', () => {
43
+ describe('submitTransaction', () => {
44
44
  it('should submit the transaction', async () => {
45
45
  const elevatedPayloads: AllowedBlockPayload[] = []
46
46
  const additionalPayloads: Payload[] = []
@@ -1,5 +1,5 @@
1
1
  import { type Hash } from '@xylabs/hex'
2
- import type { HydratedTransaction, XyoRunner } from '@xyo-network/xl1-protocol'
2
+ import type { SignedHydratedTransaction, XyoRunner } from '@xyo-network/xl1-protocol'
3
3
 
4
4
  import type { RpcTransport } from '../../transport/index.ts'
5
5
  import type { XyoRunnerRpcSchemas } from '../../types/index.ts'
@@ -10,7 +10,7 @@ export class JsonRpcXyoRunner implements XyoRunner {
10
10
  this.transport = transport
11
11
  }
12
12
 
13
- async broadcastTransaction(transaction: HydratedTransaction): Promise<Hash> {
13
+ async broadcastTransaction(transaction: SignedHydratedTransaction): Promise<Hash> {
14
14
  return await this.transport.sendRequest('xyoRunner_broadcastTransaction', [transaction])
15
15
  }
16
16
  }
@@ -1,13 +1,13 @@
1
1
  import type { Hash } from '@xylabs/hex'
2
2
  import { MemoryArchivist } from '@xyo-network/archivist-memory'
3
3
  import { PayloadBuilder } from '@xyo-network/payload-builder'
4
- import type { HydratedTransaction, XyoRunner } from '@xyo-network/xl1-protocol'
4
+ import type { SignedHydratedTransactionWithStorageMeta, XyoRunner } from '@xyo-network/xl1-protocol'
5
5
  import { flattenHydratedTransaction } from '@xyo-network/xl1-protocol-sdk'
6
6
 
7
7
  export class MemoryXyoRunner implements XyoRunner {
8
8
  protected _archivist: MemoryArchivist | undefined
9
9
 
10
- async broadcastTransaction(transaction: HydratedTransaction): Promise<Hash> {
10
+ async broadcastTransaction(transaction: SignedHydratedTransactionWithStorageMeta): Promise<Hash> {
11
11
  const archivist = await this.getArchivist()
12
12
  await archivist.insert(flattenHydratedTransaction(transaction))
13
13
  return await PayloadBuilder.hash(transaction[0])
@@ -8,7 +8,7 @@ import { PayloadBuilder } from '@xyo-network/payload-builder'
8
8
  import type { PayloadBundle } from '@xyo-network/payload-model'
9
9
  import { PayloadBundleSchema } from '@xyo-network/payload-model'
10
10
  import type {
11
- HydratedTransaction,
11
+ SignedHydratedTransaction,
12
12
  XyoRunner,
13
13
  } from '@xyo-network/xl1-protocol'
14
14
  import { flattenHydratedTransaction } from '@xyo-network/xl1-protocol-sdk'
@@ -24,7 +24,7 @@ export class NodeXyoRunner implements XyoRunner {
24
24
  this.node = node
25
25
  }
26
26
 
27
- async broadcastTransaction(transaction: HydratedTransaction): Promise<Hash> {
27
+ async broadcastTransaction(transaction: SignedHydratedTransaction): Promise<Hash> {
28
28
  const flattened = flattenHydratedTransaction(transaction)
29
29
 
30
30
  const pendingArchivist = await this.getPendingArchivist()
@@ -1,10 +1,13 @@
1
- import { type Address } from '@xylabs/hex'
2
- import type { Signed, UnsignedBoundWitness } from '@xyo-network/boundwitness-model'
1
+ import type { Address } from '@xylabs/hex'
2
+ import type { Signed } from '@xyo-network/boundwitness-model'
3
3
  import type { Payload } from '@xyo-network/payload-model'
4
4
  import type {
5
5
  AllowedBlockPayload,
6
+ Chain,
7
+ SignedHydratedTransaction,
6
8
  TransactionBoundWitness,
7
9
  TransactionFeesBigInt,
10
+ UnsignedHydratedTransaction,
8
11
  XyoSigner,
9
12
  } from '@xyo-network/xl1-protocol'
10
13
 
@@ -23,7 +26,7 @@ export class RpcXyoSigner implements XyoSigner {
23
26
  }
24
27
 
25
28
  async createSignedTransaction(
26
- chain: Address,
29
+ chain: Chain,
27
30
  elevatedPayloads: AllowedBlockPayload[],
28
31
  additionalPayloads: Payload[],
29
32
  nbf: number,
@@ -31,7 +34,7 @@ export class RpcXyoSigner implements XyoSigner {
31
34
  fees: TransactionFeesBigInt,
32
35
  from?: Address,
33
36
  ): Promise<Signed<TransactionBoundWitness>> {
34
- return await this.transport.sendRequest('xyoSigner_createSignedTransaction', [
37
+ const ret = await this.transport.sendRequest('xyoSigner_createSignedTransaction', [
35
38
  chain,
36
39
  elevatedPayloads,
37
40
  additionalPayloads,
@@ -40,12 +43,12 @@ export class RpcXyoSigner implements XyoSigner {
40
43
  fees,
41
44
  from,
42
45
  ])
46
+ return ret
43
47
  }
44
48
 
45
- async signTransaction(tx: [UnsignedBoundWitness<TransactionBoundWitness>, Payload[]]): Promise<[Signed<TransactionBoundWitness>, Payload[]]> {
46
- return await this.transport.sendRequest('xyoSigner_signTransaction', [
47
- tx,
48
- ])
49
+ async signTransaction(tx: UnsignedHydratedTransaction): Promise<SignedHydratedTransaction> {
50
+ const ret = await this.transport.sendRequest('xyoSigner_signTransaction', [tx])
51
+ return ret
49
52
  }
50
53
  }
51
54
 
@@ -3,7 +3,7 @@ import type { AccountInstance } from '@xyo-network/account-model'
3
3
  import type { Signed, UnsignedBoundWitness } from '@xyo-network/boundwitness-model'
4
4
  import { type Payload } from '@xyo-network/payload-model'
5
5
  import type {
6
- AllowedBlockPayload, TransactionBoundWitness, TransactionFeesBigInt, XyoSigner,
6
+ AllowedBlockPayload, Chain, TransactionBoundWitness, TransactionFeesBigInt, XyoSigner,
7
7
  } from '@xyo-network/xl1-protocol'
8
8
  import { buildTransaction, signTransaction } from '@xyo-network/xl1-protocol-sdk'
9
9
 
@@ -19,7 +19,7 @@ export class MemoryXyoSigner implements XyoSigner {
19
19
  }
20
20
 
21
21
  async createSignedTransaction(
22
- chain: Address,
22
+ chain: Chain,
23
23
  elevatedPayloads: AllowedBlockPayload[],
24
24
  additionalPayloads: Payload[],
25
25
  nbf: number,
@@ -1,13 +1,14 @@
1
- import type { Hex } from '@xylabs/hex'
2
1
  import { asAddress, toAddress } from '@xylabs/hex'
3
2
  import { Account } from '@xyo-network/account'
4
- import { defaultTransactionFees, type XyoSigner } from '@xyo-network/xl1-protocol'
3
+ import type { Chain, XyoSigner } from '@xyo-network/xl1-protocol'
4
+ import { defaultTransactionFees } from '@xyo-network/xl1-protocol'
5
5
  import {
6
6
  beforeAll, describe, expect, it,
7
7
  } from 'vitest'
8
8
 
9
9
  // eslint-disable-next-line import-x/no-internal-modules
10
10
  import { rpcEngineFromProvider } from '../../../engine/index-node.ts'
11
+ import { XyoSignerRpcSchemas } from '../../../index-node.ts'
11
12
  import { MemoryRpcTransport } from '../../../transport/index.ts'
12
13
  import { XyoConnection } from '../../connection/index.ts'
13
14
  import { RpcXyoSigner } from '../JsonRpcXyoSigner.ts'
@@ -15,13 +16,13 @@ import { MemoryXyoSigner } from '../MemoryXyoSigner.ts'
15
16
 
16
17
  describe('RpcEngine - XyoSigner', () => {
17
18
  let sut: XyoSigner
18
- const chain: Hex = toAddress('2AAE728aFd1777b79c34D79c4523797F9D9965b0')
19
+ const chain = toAddress('2AAE728aFd1777b79c34D79c4523797F9D9965b0') as Chain
19
20
  beforeAll(async () => {
20
21
  const account = await Account.random()
21
22
  const signer = new MemoryXyoSigner(account)
22
23
  const provider = new XyoConnection({ signer })
23
24
  const engine = rpcEngineFromProvider(provider)
24
- const transport = new MemoryRpcTransport(engine)
25
+ const transport = new MemoryRpcTransport(engine, XyoSignerRpcSchemas)
25
26
  sut = new RpcXyoSigner(transport)
26
27
  })
27
28
  describe('address', () => {
@@ -1,7 +1,6 @@
1
1
  import { type Address, type Hash } from '@xylabs/hex'
2
2
  import type {
3
- HydratedBlock, HydratedTransaction,
4
- TransactionBoundWitness,
3
+ HydratedBlock, SignedHydratedTransaction,
5
4
  Transfer,
6
5
  XyoViewer,
7
6
  } from '@xyo-network/xl1-protocol'
@@ -19,20 +18,20 @@ export class JsonRpcXyoViewer implements XyoViewer {
19
18
  return await this.transport.sendRequest('xyoViewer_accountBalance', [address])
20
19
  }
21
20
 
22
- async accountHistory(address: Address): Promise<[TransactionBoundWitness[], Transfer[]]> {
23
- return await this.transport.sendRequest('xyoViewer_accountBalance', [address])
21
+ async accountHistory(address: Address): Promise<[Hash, Hash, Transfer][]> {
22
+ return (await this.transport.sendRequest('xyoViewer_accountHistory', [address])) as [Hash, Hash, Transfer][]
24
23
  }
25
24
 
26
25
  async blockByHash(hash: Hash): Promise<HydratedBlock | null> {
27
- return await this.transport.sendRequest('xyoViewer_blockByHash', [hash])
26
+ return (await this.transport.sendRequest('xyoViewer_blockByHash', [hash])) as HydratedBlock | null
28
27
  }
29
28
 
30
29
  async blockByNumber(blockNumber: number): Promise<HydratedBlock | null> {
31
- return await this.transport.sendRequest('xyoViewer_blockByNumber', [blockNumber])
30
+ return (await this.transport.sendRequest('xyoViewer_blockByNumber', [blockNumber])) as HydratedBlock | null
32
31
  }
33
32
 
34
33
  async blocksByHash(hash: Hash, limit?: number): Promise<HydratedBlock[]> {
35
- return await this.transport.sendRequest('xyoViewer_blocksByHash', [hash, limit])
34
+ return (await this.transport.sendRequest('xyoViewer_blocksByHash', [hash, limit])) as HydratedBlock[]
36
35
  }
37
36
 
38
37
  async chainId(): Promise<Address> {
@@ -40,26 +39,26 @@ export class JsonRpcXyoViewer implements XyoViewer {
40
39
  }
41
40
 
42
41
  async currentBlock(): Promise<HydratedBlock> {
43
- return await this.transport.sendRequest('xyoViewer_currentBlock')
42
+ return (await this.transport.sendRequest('xyoViewer_currentBlock')) as HydratedBlock
44
43
  }
45
44
 
46
45
  async currentBlockHash(): Promise<Hash> {
47
- return await this.transport.sendRequest('xyoViewer_currentBlockHash')
46
+ return (await this.transport.sendRequest('xyoViewer_currentBlockHash')) as Hash
48
47
  }
49
48
 
50
49
  async currentBlockNumber(): Promise<number> {
51
- return await this.transport.sendRequest('xyoViewer_currentBlockNumber')
50
+ return (await this.transport.sendRequest('xyoViewer_currentBlockNumber')) as number
52
51
  }
53
52
 
54
- async transactionByBlockHashAndIndex(blockHash: Hash, transactionIndex: number): Promise<HydratedTransaction | null> {
55
- return await this.transport.sendRequest('xyoViewer_transactionByBlockHashAndIndex', [blockHash, transactionIndex])
53
+ async transactionByBlockHashAndIndex(blockHash: Hash, transactionIndex: number): Promise<SignedHydratedTransaction | null> {
54
+ return (await this.transport.sendRequest('xyoViewer_transactionByBlockHashAndIndex', [blockHash, transactionIndex])) as SignedHydratedTransaction | null
56
55
  }
57
56
 
58
- async transactionByBlockNumberAndIndex(blockNumber: number, transactionIndex: number): Promise<HydratedTransaction | null> {
59
- return await this.transport.sendRequest('xyoViewer_transactionByBlockNumberAndIndex', [blockNumber, transactionIndex])
57
+ async transactionByBlockNumberAndIndex(blockNumber: number, transactionIndex: number): Promise<SignedHydratedTransaction | null> {
58
+ return (await this.transport.sendRequest('xyoViewer_transactionByBlockNumberAndIndex', [blockNumber, transactionIndex])) as SignedHydratedTransaction | null
60
59
  }
61
60
 
62
- async transactionByHash(transactionHash: Hash): Promise<HydratedTransaction | null> {
63
- return await this.transport.sendRequest('xyoViewer_transactionByHash', [transactionHash])
61
+ async transactionByHash(transactionHash: Hash): Promise<SignedHydratedTransaction | null> {
62
+ return (await this.transport.sendRequest('xyoViewer_transactionByHash', [transactionHash])) as SignedHydratedTransaction | null
64
63
  }
65
64
  }
@@ -2,9 +2,10 @@ import '@xylabs/vitest-extended'
2
2
 
3
3
  import { assertEx } from '@xylabs/assert'
4
4
  import type { Address, Hash } from '@xylabs/hex'
5
- import { asAddress, asHash } from '@xylabs/hex'
5
+ import {
6
+ AddressRegEx, asAddress, asHash,
7
+ } from '@xylabs/hex'
6
8
  import { PayloadBuilder } from '@xyo-network/payload-builder'
7
- import { AddressRegEx } from '@xyo-network/payload-wrapper'
8
9
  import type { HydratedBlock } from '@xyo-network/xl1-protocol'
9
10
  import {
10
11
  beforeAll,
@@ -21,11 +21,11 @@ export class HttpRpcTransport<T extends RpcSchemaMap = RpcSchemaMap> implements
21
21
  }
22
22
 
23
23
  async sendRequest<
24
- TMethod extends keyof T & string,
24
+ TMethod extends keyof T,
25
25
  >(
26
26
  method: TMethod,
27
- params?: z.infer<T[TMethod]['params']['to']>,
28
- ): Promise<z.infer<T[TMethod]['result']['from']>> {
27
+ params?: z.input<T[TMethod]['params']['to']>,
28
+ ): Promise<z.output<T[TMethod]['result']['from']>> {
29
29
  return await this.callRpc(this._rpcUrl, this._schemas, method, params)
30
30
  }
31
31
 
@@ -36,8 +36,8 @@ export class HttpRpcTransport<T extends RpcSchemaMap = RpcSchemaMap> implements
36
36
  url: string,
37
37
  schemas: TSchemas,
38
38
  method: TMethod,
39
- params?: z.infer<TSchemas[TMethod]['params']['to']>,
40
- ): Promise<z.infer<TSchemas[TMethod]['result']['from']>> {
39
+ params?: z.input<TSchemas[TMethod]['params']['to']>,
40
+ ): Promise<z.output<TSchemas[TMethod]['result']['from']>> {
41
41
  try {
42
42
  const id = v4()
43
43
  const body: JsonRpcRequest = {
@@ -47,7 +47,7 @@ export class HttpRpcTransport<T extends RpcSchemaMap = RpcSchemaMap> implements
47
47
  }
48
48
 
49
49
  if (params) {
50
- body.params = schemas[method].params.to.parse(params)
50
+ body.params = schemas[method].params.to.parse(params) as JsonRpcRequest
51
51
  }
52
52
 
53
53
  const res = await new AxiosJson().post(url, body)
@@ -57,7 +57,7 @@ export class HttpRpcTransport<T extends RpcSchemaMap = RpcSchemaMap> implements
57
57
  throw new Error((json as JsonRpcFailure).error.message)
58
58
  }
59
59
 
60
- return schemas[method].result.from.parse((json as JsonRpcSuccess).result)
60
+ return schemas[method].result.from.parse((json as JsonRpcSuccess).result) as z.output<TSchemas[TMethod]['result']['from']>
61
61
  } catch (ex) {
62
62
  let message = isError(ex) ? ex.message : String(ex)
63
63
  if (isAxiosError(ex)) {
@@ -1,43 +1,45 @@
1
1
  import type { JsonRpcEngine } from '@metamask/json-rpc-engine'
2
- import type { JsonRpcRequest } from '@metamask/utils'
3
- import { isObject } from '@xylabs/typeof'
2
+ import type { JsonRpcParams, JsonRpcRequest } from '@metamask/utils'
3
+ import { assertEx } from '@xylabs/assert'
4
+ import { isObject, isString } from '@xylabs/typeof'
4
5
  import { v4 } from 'uuid'
5
- import type { z } from 'zod'
6
+ import type { z, ZodRawShape } from 'zod'
6
7
 
7
8
  import type { RpcSchemaMap } from '../types/index.ts'
8
9
  import {
9
- AllRpcSchemas, createRequestSchema, createResponseSchema, jsonrpc,
10
+ createRequestSchema, createResponseSchema, jsonrpc,
10
11
  } from '../types/index.ts'
11
12
  import type { RpcTransport } from './RpcTransport.ts'
12
13
 
13
- export class MemoryRpcTransport<T extends RpcSchemaMap = typeof AllRpcSchemas> implements RpcTransport<T> {
14
+ export class MemoryRpcTransport<T extends RpcSchemaMap> implements RpcTransport<T> {
14
15
  protected readonly _rpcEngine: JsonRpcEngine
15
16
  protected readonly _schemas: T
16
- protected readonly requestSchemas: Record<string, z.AnyZodObject> = {}
17
- protected readonly responseSchemas: Record<string, z.AnyZodObject> = {}
17
+ protected readonly requestSchemas = {} as Record<keyof T, z.ZodObject<ZodRawShape>>
18
+ protected readonly responseSchemas = {} as Record<keyof T, z.ZodObject<ZodRawShape>>
18
19
 
19
- constructor(rpcEngine: JsonRpcEngine, schemas: T = AllRpcSchemas as T) {
20
+ constructor(rpcEngine: JsonRpcEngine, schemas: T) {
20
21
  this._rpcEngine = rpcEngine
21
22
  this._schemas = schemas
22
23
  }
23
24
 
24
25
  async sendRequest<
25
- TMethod extends keyof T & string,
26
+ TMethod extends keyof T,
26
27
  >(
27
28
  method: TMethod,
28
- params?: z.infer<T[TMethod]['params']['to']>,
29
- ): Promise<z.infer<T[TMethod]['result']['from']>> {
29
+ params?: z.input<T[TMethod]['params']['to']>,
30
+ ): Promise<z.output<T[TMethod]['result']['from']>> {
30
31
  // Get schema for method
31
32
  // Get handler for method
32
33
  const schema = this._schemas[method]
33
34
  let requestSchema = this.requestSchemas[method]
34
35
  if (!isObject(requestSchema)) {
35
- requestSchema = createRequestSchema(method, schema.params.to)
36
+ const stringMethod = assertEx(isString(method) ? method : null, () => 'Method must be a string')
37
+ requestSchema = createRequestSchema(stringMethod, schema.params.to)
36
38
  this.requestSchemas[method] = requestSchema
37
39
  }
38
- const req: JsonRpcRequest = {
39
- jsonrpc, id: v4(), method: method as string, params,
40
- }
40
+ const req = {
41
+ jsonrpc, id: v4(), method: method as string, params: params as JsonRpcParams,
42
+ } satisfies JsonRpcRequest
41
43
  const request = requestSchema.parse(req) as JsonRpcRequest
42
44
  const response = await this._rpcEngine.handle(request)
43
45
  let responseSchema = this.responseSchemas[method]
@@ -45,6 +47,6 @@ export class MemoryRpcTransport<T extends RpcSchemaMap = typeof AllRpcSchemas> i
45
47
  responseSchema = createResponseSchema(schema.result.from)
46
48
  this.responseSchemas[method] = responseSchema
47
49
  }
48
- return responseSchema.parse(response)?.result
50
+ return responseSchema.parse(response)?.result as z.infer<T[TMethod]['result']['from']>
49
51
  }
50
52
  }
@@ -4,9 +4,9 @@ import type { RpcSchemaMap } from '../types/index.ts'
4
4
 
5
5
  export interface RpcTransport<TSchemas extends RpcSchemaMap> {
6
6
  sendRequest<
7
- TMethod extends keyof TSchemas & string,
7
+ TMethod extends keyof TSchemas,
8
8
  >(
9
9
  method: TMethod,
10
- params?: z.infer<TSchemas[TMethod]['params']['to']>
11
- ): Promise<z.infer<TSchemas[TMethod]['result']['from']>>
10
+ params?: z.input<TSchemas[TMethod]['params']['to']>
11
+ ): Promise<z.output<TSchemas[TMethod]['result']['from']>>
12
12
  }