@arkiv-network/sdk 0.0.25

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 (431) hide show
  1. package/README.md +67 -0
  2. package/dist/_cjs/accounts/index.d.ts +2 -0
  3. package/dist/_cjs/accounts/index.d.ts.map +1 -0
  4. package/dist/_cjs/accounts/index.js +18 -0
  5. package/dist/_cjs/accounts/index.js.map +1 -0
  6. package/dist/_cjs/actions/public/buildQuery.d.ts +4 -0
  7. package/dist/_cjs/actions/public/buildQuery.d.ts.map +1 -0
  8. package/dist/_cjs/actions/public/buildQuery.js +8 -0
  9. package/dist/_cjs/actions/public/buildQuery.js.map +1 -0
  10. package/dist/_cjs/actions/public/getBlockTiming.d.ts +12 -0
  11. package/dist/_cjs/actions/public/getBlockTiming.d.ts.map +1 -0
  12. package/dist/_cjs/actions/public/getBlockTiming.js +16 -0
  13. package/dist/_cjs/actions/public/getBlockTiming.js.map +1 -0
  14. package/dist/_cjs/actions/public/getEntity.d.ts +4 -0
  15. package/dist/_cjs/actions/public/getEntity.d.ts.map +1 -0
  16. package/dist/_cjs/actions/public/getEntity.js +13 -0
  17. package/dist/_cjs/actions/public/getEntity.js.map +1 -0
  18. package/dist/_cjs/actions/public/query.d.ts +3 -0
  19. package/dist/_cjs/actions/public/query.d.ts.map +1 -0
  20. package/dist/_cjs/actions/public/query.js +13 -0
  21. package/dist/_cjs/actions/public/query.js.map +1 -0
  22. package/dist/_cjs/actions/public/subscribeEntityEvents.d.ts +96 -0
  23. package/dist/_cjs/actions/public/subscribeEntityEvents.d.ts.map +1 -0
  24. package/dist/_cjs/actions/public/subscribeEntityEvents.js +79 -0
  25. package/dist/_cjs/actions/public/subscribeEntityEvents.js.map +1 -0
  26. package/dist/_cjs/actions/wallet/createEntity.d.ts +25 -0
  27. package/dist/_cjs/actions/wallet/createEntity.d.ts.map +1 -0
  28. package/dist/_cjs/actions/wallet/createEntity.js +15 -0
  29. package/dist/_cjs/actions/wallet/createEntity.js.map +1 -0
  30. package/dist/_cjs/actions/wallet/deleteEntity.d.ts +21 -0
  31. package/dist/_cjs/actions/wallet/deleteEntity.d.ts.map +1 -0
  32. package/dist/_cjs/actions/wallet/deleteEntity.js +15 -0
  33. package/dist/_cjs/actions/wallet/deleteEntity.js.map +1 -0
  34. package/dist/_cjs/actions/wallet/extendEntity.d.ts +23 -0
  35. package/dist/_cjs/actions/wallet/extendEntity.d.ts.map +1 -0
  36. package/dist/_cjs/actions/wallet/extendEntity.js +15 -0
  37. package/dist/_cjs/actions/wallet/extendEntity.js.map +1 -0
  38. package/dist/_cjs/actions/wallet/mutateEntities.d.ts +37 -0
  39. package/dist/_cjs/actions/wallet/mutateEntities.d.ts.map +1 -0
  40. package/dist/_cjs/actions/wallet/mutateEntities.js +56 -0
  41. package/dist/_cjs/actions/wallet/mutateEntities.js.map +1 -0
  42. package/dist/_cjs/actions/wallet/updateEntity.d.ts +27 -0
  43. package/dist/_cjs/actions/wallet/updateEntity.d.ts.map +1 -0
  44. package/dist/_cjs/actions/wallet/updateEntity.js +15 -0
  45. package/dist/_cjs/actions/wallet/updateEntity.js.map +1 -0
  46. package/dist/_cjs/chains/index.d.ts +4 -0
  47. package/dist/_cjs/chains/index.d.ts.map +1 -0
  48. package/dist/_cjs/chains/index.js +10 -0
  49. package/dist/_cjs/chains/index.js.map +1 -0
  50. package/dist/_cjs/chains/kaolin.d.ts +42 -0
  51. package/dist/_cjs/chains/kaolin.d.ts.map +1 -0
  52. package/dist/_cjs/chains/kaolin.js +29 -0
  53. package/dist/_cjs/chains/kaolin.js.map +1 -0
  54. package/dist/_cjs/chains/localhost.d.ts +45 -0
  55. package/dist/_cjs/chains/localhost.d.ts.map +1 -0
  56. package/dist/_cjs/chains/localhost.js +17 -0
  57. package/dist/_cjs/chains/localhost.js.map +1 -0
  58. package/dist/_cjs/chains/marketplace.d.ts +42 -0
  59. package/dist/_cjs/chains/marketplace.d.ts.map +1 -0
  60. package/dist/_cjs/chains/marketplace.js +29 -0
  61. package/dist/_cjs/chains/marketplace.js.map +1 -0
  62. package/dist/_cjs/clients/baseClient.d.ts +4 -0
  63. package/dist/_cjs/clients/baseClient.d.ts.map +1 -0
  64. package/dist/_cjs/clients/baseClient.js +3 -0
  65. package/dist/_cjs/clients/baseClient.js.map +1 -0
  66. package/dist/_cjs/clients/createPublicClient.d.ts +25 -0
  67. package/dist/_cjs/clients/createPublicClient.d.ts.map +1 -0
  68. package/dist/_cjs/clients/createPublicClient.js +34 -0
  69. package/dist/_cjs/clients/createPublicClient.js.map +1 -0
  70. package/dist/_cjs/clients/createWalletClient.d.ts +25 -0
  71. package/dist/_cjs/clients/createWalletClient.d.ts.map +1 -0
  72. package/dist/_cjs/clients/createWalletClient.js +39 -0
  73. package/dist/_cjs/clients/createWalletClient.js.map +1 -0
  74. package/dist/_cjs/clients/decorators/arkivPublic.d.ts +100 -0
  75. package/dist/_cjs/clients/decorators/arkivPublic.d.ts.map +1 -0
  76. package/dist/_cjs/clients/decorators/arkivPublic.js +25 -0
  77. package/dist/_cjs/clients/decorators/arkivPublic.js.map +1 -0
  78. package/dist/_cjs/clients/decorators/arkivWallet.d.ts +167 -0
  79. package/dist/_cjs/clients/decorators/arkivWallet.d.ts.map +1 -0
  80. package/dist/_cjs/clients/decorators/arkivWallet.js +18 -0
  81. package/dist/_cjs/clients/decorators/arkivWallet.js.map +1 -0
  82. package/dist/_cjs/consts.d.ts +3 -0
  83. package/dist/_cjs/consts.d.ts.map +1 -0
  84. package/dist/_cjs/consts.js +6 -0
  85. package/dist/_cjs/consts.js.map +1 -0
  86. package/dist/_cjs/index.d.ts +11 -0
  87. package/dist/_cjs/index.d.ts.map +1 -0
  88. package/dist/_cjs/index.js +16 -0
  89. package/dist/_cjs/index.js.map +1 -0
  90. package/dist/_cjs/query/engine.d.ts +16 -0
  91. package/dist/_cjs/query/engine.d.ts.map +1 -0
  92. package/dist/_cjs/query/engine.js +64 -0
  93. package/dist/_cjs/query/engine.js.map +1 -0
  94. package/dist/_cjs/query/errors.d.ts +10 -0
  95. package/dist/_cjs/query/errors.d.ts.map +1 -0
  96. package/dist/_cjs/query/errors.js +22 -0
  97. package/dist/_cjs/query/errors.js.map +1 -0
  98. package/dist/_cjs/query/index.d.ts +5 -0
  99. package/dist/_cjs/query/index.d.ts.map +1 -0
  100. package/dist/_cjs/query/index.js +21 -0
  101. package/dist/_cjs/query/index.js.map +1 -0
  102. package/dist/_cjs/query/predicate.d.ts +111 -0
  103. package/dist/_cjs/query/predicate.d.ts.map +1 -0
  104. package/dist/_cjs/query/predicate.js +130 -0
  105. package/dist/_cjs/query/predicate.js.map +1 -0
  106. package/dist/_cjs/query/queryBuilder.d.ts +110 -0
  107. package/dist/_cjs/query/queryBuilder.d.ts.map +1 -0
  108. package/dist/_cjs/query/queryBuilder.js +162 -0
  109. package/dist/_cjs/query/queryBuilder.js.map +1 -0
  110. package/dist/_cjs/query/queryResult.d.ts +12 -0
  111. package/dist/_cjs/query/queryResult.d.ts.map +1 -0
  112. package/dist/_cjs/query/queryResult.js +40 -0
  113. package/dist/_cjs/query/queryResult.js.map +1 -0
  114. package/dist/_cjs/types/annotation.d.ts +5 -0
  115. package/dist/_cjs/types/annotation.d.ts.map +1 -0
  116. package/dist/_cjs/types/annotation.js +3 -0
  117. package/dist/_cjs/types/annotation.js.map +1 -0
  118. package/dist/_cjs/types/entity.d.ts +13 -0
  119. package/dist/_cjs/types/entity.d.ts.map +1 -0
  120. package/dist/_cjs/types/entity.js +32 -0
  121. package/dist/_cjs/types/entity.js.map +1 -0
  122. package/dist/_cjs/types/events.d.ts +30 -0
  123. package/dist/_cjs/types/events.d.ts.map +1 -0
  124. package/dist/_cjs/types/events.js +3 -0
  125. package/dist/_cjs/types/events.js.map +1 -0
  126. package/dist/_cjs/types/index.d.ts +4 -0
  127. package/dist/_cjs/types/index.d.ts.map +1 -0
  128. package/dist/_cjs/types/index.js +3 -0
  129. package/dist/_cjs/types/index.js.map +1 -0
  130. package/dist/_cjs/types/rpcSchema.d.ts +43 -0
  131. package/dist/_cjs/types/rpcSchema.d.ts.map +1 -0
  132. package/dist/_cjs/types/rpcSchema.js +3 -0
  133. package/dist/_cjs/types/rpcSchema.js.map +1 -0
  134. package/dist/_cjs/types/txParams.d.ts +14 -0
  135. package/dist/_cjs/types/txParams.d.ts.map +1 -0
  136. package/dist/_cjs/types/txParams.js +3 -0
  137. package/dist/_cjs/types/txParams.js.map +1 -0
  138. package/dist/_cjs/utils/arkivTransactions.d.ts +15 -0
  139. package/dist/_cjs/utils/arkivTransactions.d.ts.map +1 -0
  140. package/dist/_cjs/utils/arkivTransactions.js +67 -0
  141. package/dist/_cjs/utils/arkivTransactions.js.map +1 -0
  142. package/dist/_cjs/utils/entities.d.ts +5 -0
  143. package/dist/_cjs/utils/entities.d.ts.map +1 -0
  144. package/dist/_cjs/utils/entities.js +22 -0
  145. package/dist/_cjs/utils/entities.js.map +1 -0
  146. package/dist/_cjs/utils/expirationTime.d.ts +12 -0
  147. package/dist/_cjs/utils/expirationTime.d.ts.map +1 -0
  148. package/dist/_cjs/utils/expirationTime.js +16 -0
  149. package/dist/_cjs/utils/expirationTime.js.map +1 -0
  150. package/dist/_cjs/utils/index.d.ts +4 -0
  151. package/dist/_cjs/utils/index.d.ts.map +1 -0
  152. package/dist/_cjs/utils/index.js +20 -0
  153. package/dist/_cjs/utils/index.js.map +1 -0
  154. package/dist/_cjs/utils/payload.d.ts +3 -0
  155. package/dist/_cjs/utils/payload.d.ts.map +1 -0
  156. package/dist/_cjs/utils/payload.js +12 -0
  157. package/dist/_cjs/utils/payload.js.map +1 -0
  158. package/dist/_esm/accounts/index.d.ts +2 -0
  159. package/dist/_esm/accounts/index.d.ts.map +1 -0
  160. package/dist/_esm/accounts/index.js +2 -0
  161. package/dist/_esm/accounts/index.js.map +1 -0
  162. package/dist/_esm/actions/public/buildQuery.d.ts +4 -0
  163. package/dist/_esm/actions/public/buildQuery.d.ts.map +1 -0
  164. package/dist/_esm/actions/public/buildQuery.js +5 -0
  165. package/dist/_esm/actions/public/buildQuery.js.map +1 -0
  166. package/dist/_esm/actions/public/getBlockTiming.d.ts +12 -0
  167. package/dist/_esm/actions/public/getBlockTiming.d.ts.map +1 -0
  168. package/dist/_esm/actions/public/getBlockTiming.js +13 -0
  169. package/dist/_esm/actions/public/getBlockTiming.js.map +1 -0
  170. package/dist/_esm/actions/public/getEntity.d.ts +4 -0
  171. package/dist/_esm/actions/public/getEntity.d.ts.map +1 -0
  172. package/dist/_esm/actions/public/getEntity.js +10 -0
  173. package/dist/_esm/actions/public/getEntity.js.map +1 -0
  174. package/dist/_esm/actions/public/query.d.ts +3 -0
  175. package/dist/_esm/actions/public/query.d.ts.map +1 -0
  176. package/dist/_esm/actions/public/query.js +10 -0
  177. package/dist/_esm/actions/public/query.js.map +1 -0
  178. package/dist/_esm/actions/public/subscribeEntityEvents.d.ts +96 -0
  179. package/dist/_esm/actions/public/subscribeEntityEvents.d.ts.map +1 -0
  180. package/dist/_esm/actions/public/subscribeEntityEvents.js +75 -0
  181. package/dist/_esm/actions/public/subscribeEntityEvents.js.map +1 -0
  182. package/dist/_esm/actions/wallet/createEntity.d.ts +25 -0
  183. package/dist/_esm/actions/wallet/createEntity.d.ts.map +1 -0
  184. package/dist/_esm/actions/wallet/createEntity.js +12 -0
  185. package/dist/_esm/actions/wallet/createEntity.js.map +1 -0
  186. package/dist/_esm/actions/wallet/deleteEntity.d.ts +21 -0
  187. package/dist/_esm/actions/wallet/deleteEntity.d.ts.map +1 -0
  188. package/dist/_esm/actions/wallet/deleteEntity.js +12 -0
  189. package/dist/_esm/actions/wallet/deleteEntity.js.map +1 -0
  190. package/dist/_esm/actions/wallet/extendEntity.d.ts +23 -0
  191. package/dist/_esm/actions/wallet/extendEntity.d.ts.map +1 -0
  192. package/dist/_esm/actions/wallet/extendEntity.js +12 -0
  193. package/dist/_esm/actions/wallet/extendEntity.js.map +1 -0
  194. package/dist/_esm/actions/wallet/mutateEntities.d.ts +37 -0
  195. package/dist/_esm/actions/wallet/mutateEntities.d.ts.map +1 -0
  196. package/dist/_esm/actions/wallet/mutateEntities.js +53 -0
  197. package/dist/_esm/actions/wallet/mutateEntities.js.map +1 -0
  198. package/dist/_esm/actions/wallet/updateEntity.d.ts +27 -0
  199. package/dist/_esm/actions/wallet/updateEntity.d.ts.map +1 -0
  200. package/dist/_esm/actions/wallet/updateEntity.js +12 -0
  201. package/dist/_esm/actions/wallet/updateEntity.js.map +1 -0
  202. package/dist/_esm/chains/index.d.ts +4 -0
  203. package/dist/_esm/chains/index.d.ts.map +1 -0
  204. package/dist/_esm/chains/index.js +4 -0
  205. package/dist/_esm/chains/index.js.map +1 -0
  206. package/dist/_esm/chains/kaolin.d.ts +42 -0
  207. package/dist/_esm/chains/kaolin.d.ts.map +1 -0
  208. package/dist/_esm/chains/kaolin.js +26 -0
  209. package/dist/_esm/chains/kaolin.js.map +1 -0
  210. package/dist/_esm/chains/localhost.d.ts +45 -0
  211. package/dist/_esm/chains/localhost.d.ts.map +1 -0
  212. package/dist/_esm/chains/localhost.js +14 -0
  213. package/dist/_esm/chains/localhost.js.map +1 -0
  214. package/dist/_esm/chains/marketplace.d.ts +42 -0
  215. package/dist/_esm/chains/marketplace.d.ts.map +1 -0
  216. package/dist/_esm/chains/marketplace.js +26 -0
  217. package/dist/_esm/chains/marketplace.js.map +1 -0
  218. package/dist/_esm/clients/baseClient.d.ts +4 -0
  219. package/dist/_esm/clients/baseClient.d.ts.map +1 -0
  220. package/dist/_esm/clients/baseClient.js +2 -0
  221. package/dist/_esm/clients/baseClient.js.map +1 -0
  222. package/dist/_esm/clients/createPublicClient.d.ts +25 -0
  223. package/dist/_esm/clients/createPublicClient.d.ts.map +1 -0
  224. package/dist/_esm/clients/createPublicClient.js +31 -0
  225. package/dist/_esm/clients/createPublicClient.js.map +1 -0
  226. package/dist/_esm/clients/createWalletClient.d.ts +25 -0
  227. package/dist/_esm/clients/createWalletClient.d.ts.map +1 -0
  228. package/dist/_esm/clients/createWalletClient.js +36 -0
  229. package/dist/_esm/clients/createWalletClient.js.map +1 -0
  230. package/dist/_esm/clients/decorators/arkivPublic.d.ts +100 -0
  231. package/dist/_esm/clients/decorators/arkivPublic.d.ts.map +1 -0
  232. package/dist/_esm/clients/decorators/arkivPublic.js +22 -0
  233. package/dist/_esm/clients/decorators/arkivPublic.js.map +1 -0
  234. package/dist/_esm/clients/decorators/arkivWallet.d.ts +167 -0
  235. package/dist/_esm/clients/decorators/arkivWallet.d.ts.map +1 -0
  236. package/dist/_esm/clients/decorators/arkivWallet.js +15 -0
  237. package/dist/_esm/clients/decorators/arkivWallet.js.map +1 -0
  238. package/dist/_esm/consts.d.ts +3 -0
  239. package/dist/_esm/consts.d.ts.map +1 -0
  240. package/dist/_esm/consts.js +3 -0
  241. package/dist/_esm/consts.js.map +1 -0
  242. package/dist/_esm/index.d.ts +11 -0
  243. package/dist/_esm/index.d.ts.map +1 -0
  244. package/dist/_esm/index.js +6 -0
  245. package/dist/_esm/index.js.map +1 -0
  246. package/dist/_esm/query/engine.d.ts +16 -0
  247. package/dist/_esm/query/engine.d.ts.map +1 -0
  248. package/dist/_esm/query/engine.js +61 -0
  249. package/dist/_esm/query/engine.js.map +1 -0
  250. package/dist/_esm/query/errors.d.ts +10 -0
  251. package/dist/_esm/query/errors.d.ts.map +1 -0
  252. package/dist/_esm/query/errors.js +16 -0
  253. package/dist/_esm/query/errors.js.map +1 -0
  254. package/dist/_esm/query/index.d.ts +5 -0
  255. package/dist/_esm/query/index.d.ts.map +1 -0
  256. package/dist/_esm/query/index.js +5 -0
  257. package/dist/_esm/query/index.js.map +1 -0
  258. package/dist/_esm/query/predicate.d.ts +111 -0
  259. package/dist/_esm/query/predicate.d.ts.map +1 -0
  260. package/dist/_esm/query/predicate.js +119 -0
  261. package/dist/_esm/query/predicate.js.map +1 -0
  262. package/dist/_esm/query/queryBuilder.d.ts +110 -0
  263. package/dist/_esm/query/queryBuilder.d.ts.map +1 -0
  264. package/dist/_esm/query/queryBuilder.js +158 -0
  265. package/dist/_esm/query/queryBuilder.js.map +1 -0
  266. package/dist/_esm/query/queryResult.d.ts +12 -0
  267. package/dist/_esm/query/queryResult.d.ts.map +1 -0
  268. package/dist/_esm/query/queryResult.js +36 -0
  269. package/dist/_esm/query/queryResult.js.map +1 -0
  270. package/dist/_esm/types/annotation.d.ts +5 -0
  271. package/dist/_esm/types/annotation.d.ts.map +1 -0
  272. package/dist/_esm/types/annotation.js +2 -0
  273. package/dist/_esm/types/annotation.js.map +1 -0
  274. package/dist/_esm/types/entity.d.ts +13 -0
  275. package/dist/_esm/types/entity.d.ts.map +1 -0
  276. package/dist/_esm/types/entity.js +28 -0
  277. package/dist/_esm/types/entity.js.map +1 -0
  278. package/dist/_esm/types/events.d.ts +30 -0
  279. package/dist/_esm/types/events.d.ts.map +1 -0
  280. package/dist/_esm/types/events.js +2 -0
  281. package/dist/_esm/types/events.js.map +1 -0
  282. package/dist/_esm/types/index.d.ts +4 -0
  283. package/dist/_esm/types/index.d.ts.map +1 -0
  284. package/dist/_esm/types/index.js +2 -0
  285. package/dist/_esm/types/index.js.map +1 -0
  286. package/dist/_esm/types/rpcSchema.d.ts +43 -0
  287. package/dist/_esm/types/rpcSchema.d.ts.map +1 -0
  288. package/dist/_esm/types/rpcSchema.js +2 -0
  289. package/dist/_esm/types/rpcSchema.js.map +1 -0
  290. package/dist/_esm/types/txParams.d.ts +14 -0
  291. package/dist/_esm/types/txParams.d.ts.map +1 -0
  292. package/dist/_esm/types/txParams.js +2 -0
  293. package/dist/_esm/types/txParams.js.map +1 -0
  294. package/dist/_esm/utils/arkivTransactions.d.ts +15 -0
  295. package/dist/_esm/utils/arkivTransactions.d.ts.map +1 -0
  296. package/dist/_esm/utils/arkivTransactions.js +63 -0
  297. package/dist/_esm/utils/arkivTransactions.js.map +1 -0
  298. package/dist/_esm/utils/entities.d.ts +5 -0
  299. package/dist/_esm/utils/entities.d.ts.map +1 -0
  300. package/dist/_esm/utils/entities.js +19 -0
  301. package/dist/_esm/utils/entities.js.map +1 -0
  302. package/dist/_esm/utils/expirationTime.d.ts +12 -0
  303. package/dist/_esm/utils/expirationTime.d.ts.map +1 -0
  304. package/dist/_esm/utils/expirationTime.js +13 -0
  305. package/dist/_esm/utils/expirationTime.js.map +1 -0
  306. package/dist/_esm/utils/index.d.ts +4 -0
  307. package/dist/_esm/utils/index.d.ts.map +1 -0
  308. package/dist/_esm/utils/index.js +4 -0
  309. package/dist/_esm/utils/index.js.map +1 -0
  310. package/dist/_esm/utils/payload.d.ts +3 -0
  311. package/dist/_esm/utils/payload.d.ts.map +1 -0
  312. package/dist/_esm/utils/payload.js +8 -0
  313. package/dist/_esm/utils/payload.js.map +1 -0
  314. package/dist/_types/accounts/index.d.ts +2 -0
  315. package/dist/_types/accounts/index.d.ts.map +1 -0
  316. package/dist/_types/actions/public/buildQuery.d.ts +4 -0
  317. package/dist/_types/actions/public/buildQuery.d.ts.map +1 -0
  318. package/dist/_types/actions/public/getBlockTiming.d.ts +12 -0
  319. package/dist/_types/actions/public/getBlockTiming.d.ts.map +1 -0
  320. package/dist/_types/actions/public/getEntity.d.ts +4 -0
  321. package/dist/_types/actions/public/getEntity.d.ts.map +1 -0
  322. package/dist/_types/actions/public/query.d.ts +3 -0
  323. package/dist/_types/actions/public/query.d.ts.map +1 -0
  324. package/dist/_types/actions/public/subscribeEntityEvents.d.ts +96 -0
  325. package/dist/_types/actions/public/subscribeEntityEvents.d.ts.map +1 -0
  326. package/dist/_types/actions/wallet/createEntity.d.ts +25 -0
  327. package/dist/_types/actions/wallet/createEntity.d.ts.map +1 -0
  328. package/dist/_types/actions/wallet/deleteEntity.d.ts +21 -0
  329. package/dist/_types/actions/wallet/deleteEntity.d.ts.map +1 -0
  330. package/dist/_types/actions/wallet/extendEntity.d.ts +23 -0
  331. package/dist/_types/actions/wallet/extendEntity.d.ts.map +1 -0
  332. package/dist/_types/actions/wallet/mutateEntities.d.ts +37 -0
  333. package/dist/_types/actions/wallet/mutateEntities.d.ts.map +1 -0
  334. package/dist/_types/actions/wallet/updateEntity.d.ts +27 -0
  335. package/dist/_types/actions/wallet/updateEntity.d.ts.map +1 -0
  336. package/dist/_types/chains/index.d.ts +4 -0
  337. package/dist/_types/chains/index.d.ts.map +1 -0
  338. package/dist/_types/chains/kaolin.d.ts +42 -0
  339. package/dist/_types/chains/kaolin.d.ts.map +1 -0
  340. package/dist/_types/chains/localhost.d.ts +45 -0
  341. package/dist/_types/chains/localhost.d.ts.map +1 -0
  342. package/dist/_types/chains/marketplace.d.ts +42 -0
  343. package/dist/_types/chains/marketplace.d.ts.map +1 -0
  344. package/dist/_types/clients/baseClient.d.ts +4 -0
  345. package/dist/_types/clients/baseClient.d.ts.map +1 -0
  346. package/dist/_types/clients/createPublicClient.d.ts +25 -0
  347. package/dist/_types/clients/createPublicClient.d.ts.map +1 -0
  348. package/dist/_types/clients/createWalletClient.d.ts +25 -0
  349. package/dist/_types/clients/createWalletClient.d.ts.map +1 -0
  350. package/dist/_types/clients/decorators/arkivPublic.d.ts +100 -0
  351. package/dist/_types/clients/decorators/arkivPublic.d.ts.map +1 -0
  352. package/dist/_types/clients/decorators/arkivWallet.d.ts +167 -0
  353. package/dist/_types/clients/decorators/arkivWallet.d.ts.map +1 -0
  354. package/dist/_types/consts.d.ts +3 -0
  355. package/dist/_types/consts.d.ts.map +1 -0
  356. package/dist/_types/index.d.ts +11 -0
  357. package/dist/_types/index.d.ts.map +1 -0
  358. package/dist/_types/query/engine.d.ts +16 -0
  359. package/dist/_types/query/engine.d.ts.map +1 -0
  360. package/dist/_types/query/errors.d.ts +10 -0
  361. package/dist/_types/query/errors.d.ts.map +1 -0
  362. package/dist/_types/query/index.d.ts +5 -0
  363. package/dist/_types/query/index.d.ts.map +1 -0
  364. package/dist/_types/query/predicate.d.ts +111 -0
  365. package/dist/_types/query/predicate.d.ts.map +1 -0
  366. package/dist/_types/query/queryBuilder.d.ts +110 -0
  367. package/dist/_types/query/queryBuilder.d.ts.map +1 -0
  368. package/dist/_types/query/queryResult.d.ts +12 -0
  369. package/dist/_types/query/queryResult.d.ts.map +1 -0
  370. package/dist/_types/types/annotation.d.ts +5 -0
  371. package/dist/_types/types/annotation.d.ts.map +1 -0
  372. package/dist/_types/types/entity.d.ts +13 -0
  373. package/dist/_types/types/entity.d.ts.map +1 -0
  374. package/dist/_types/types/events.d.ts +30 -0
  375. package/dist/_types/types/events.d.ts.map +1 -0
  376. package/dist/_types/types/index.d.ts +4 -0
  377. package/dist/_types/types/index.d.ts.map +1 -0
  378. package/dist/_types/types/rpcSchema.d.ts +43 -0
  379. package/dist/_types/types/rpcSchema.d.ts.map +1 -0
  380. package/dist/_types/types/txParams.d.ts +14 -0
  381. package/dist/_types/types/txParams.d.ts.map +1 -0
  382. package/dist/_types/utils/arkivTransactions.d.ts +15 -0
  383. package/dist/_types/utils/arkivTransactions.d.ts.map +1 -0
  384. package/dist/_types/utils/entities.d.ts +5 -0
  385. package/dist/_types/utils/entities.d.ts.map +1 -0
  386. package/dist/_types/utils/expirationTime.d.ts +12 -0
  387. package/dist/_types/utils/expirationTime.d.ts.map +1 -0
  388. package/dist/_types/utils/index.d.ts +4 -0
  389. package/dist/_types/utils/index.d.ts.map +1 -0
  390. package/dist/_types/utils/payload.d.ts +3 -0
  391. package/dist/_types/utils/payload.d.ts.map +1 -0
  392. package/package.json +115 -0
  393. package/src/accounts/index.ts +1 -0
  394. package/src/actions/public/buildQuery.ts +6 -0
  395. package/src/actions/public/getBlockTiming.ts +20 -0
  396. package/src/actions/public/getEntity.ts +13 -0
  397. package/src/actions/public/query.ts +15 -0
  398. package/src/actions/public/subscribeEntityEvents.ts +105 -0
  399. package/src/actions/wallet/createEntity.ts +43 -0
  400. package/src/actions/wallet/deleteEntity.ts +39 -0
  401. package/src/actions/wallet/extendEntity.ts +41 -0
  402. package/src/actions/wallet/mutateEntities.ts +100 -0
  403. package/src/actions/wallet/updateEntity.ts +45 -0
  404. package/src/chains/index.ts +3 -0
  405. package/src/chains/kaolin.ts +26 -0
  406. package/src/chains/localhost.ts +14 -0
  407. package/src/chains/marketplace.ts +26 -0
  408. package/src/clients/baseClient.ts +9 -0
  409. package/src/clients/createPublicClient.ts +65 -0
  410. package/src/clients/createWalletClient.ts +70 -0
  411. package/src/clients/decorators/arkivPublic.ts +167 -0
  412. package/src/clients/decorators/arkivWallet.ts +232 -0
  413. package/src/consts.ts +2 -0
  414. package/src/index.ts +21 -0
  415. package/src/query/engine.ts +86 -0
  416. package/src/query/errors.ts +17 -0
  417. package/src/query/index.ts +4 -0
  418. package/src/query/predicate.ts +140 -0
  419. package/src/query/queryBuilder.ts +174 -0
  420. package/src/query/queryResult.ts +46 -0
  421. package/src/types/annotation.ts +4 -0
  422. package/src/types/entity.ts +38 -0
  423. package/src/types/events.ts +34 -0
  424. package/src/types/index.ts +3 -0
  425. package/src/types/rpcSchema.ts +35 -0
  426. package/src/types/txParams.ts +15 -0
  427. package/src/utils/arkivTransactions.ts +91 -0
  428. package/src/utils/entities.ts +22 -0
  429. package/src/utils/expirationTime.ts +13 -0
  430. package/src/utils/index.ts +3 -0
  431. package/src/utils/payload.ts +9 -0
@@ -0,0 +1,15 @@
1
+ import type { ArkivClient } from "../../clients/baseClient"
2
+ import { entityFromRpcResult } from "../../utils/entities"
3
+
4
+ export async function query(client: ArkivClient, query: string) {
5
+ const result = await client.request({
6
+ method: "golembase_queryEntities",
7
+ params: [query],
8
+ })
9
+
10
+ const entities = await Promise.all(
11
+ result.map((entity) => entityFromRpcResult(client, entity.key, entity.value)),
12
+ )
13
+
14
+ return entities
15
+ }
@@ -0,0 +1,105 @@
1
+ import { decodeEventLog, parseAbi, toHex } from "viem"
2
+ import type { ArkivClient } from "../../clients/baseClient"
3
+ import type { PublicArkivClient } from "../../clients/createPublicClient"
4
+ import type {
5
+ OnEntityCreatedEvent,
6
+ OnEntityDeletedEvent,
7
+ OnEntityExpiredEvent,
8
+ OnEntityExpiresInExtendedEvent,
9
+ OnEntityUpdatedEvent,
10
+ } from "../../types/events"
11
+
12
+ export const arkivABI = parseAbi([
13
+ "event ArkivEntityCreated(uint256 indexed entityKey, address indexed ownerAddress, uint256 expirationBlock, uint256 cost)",
14
+ "event ArkivEntityUpdated(uint256 indexed entityKey, address indexed ownerAddress, uint256 oldExpirationBlock, uint256 newExpirationBlock, uint256 cost)",
15
+ "event ArkivEntityExpired(uint256 indexed entityKey, address indexed ownerAddress)",
16
+ "event ArkivEntityDeleted(uint256 indexed entityKey, address indexed ownerAddress)",
17
+ "event ArkivEntityBTLExtended(uint256 indexed entityKey, address indexed ownerAddress, uint256 oldExpirationBlock, uint256 newExpirationBlock, uint256 cost)",
18
+ ])
19
+
20
+ export async function subscribeEntityEvents(
21
+ client: ArkivClient,
22
+ {
23
+ onError,
24
+ onEntityCreated,
25
+ onEntityUpdated,
26
+ onEntityDeleted,
27
+ onEntityExpired,
28
+ onEntityExpiresInExtended,
29
+ }: {
30
+ onError: ((error: Error) => void) | undefined
31
+ onEntityCreated?: ((event: OnEntityCreatedEvent) => void) | undefined
32
+ onEntityUpdated?: ((event: OnEntityUpdatedEvent) => void) | undefined
33
+ onEntityDeleted?: ((event: OnEntityDeletedEvent) => void) | undefined
34
+ onEntityExpired?: ((event: OnEntityExpiredEvent) => void) | undefined
35
+ onEntityExpiresInExtended?: ((event: OnEntityExpiresInExtendedEvent) => void) | undefined
36
+ },
37
+ pollingInterval?: number,
38
+ fromBlock?: bigint,
39
+ ): Promise<() => void> {
40
+ const unsubscribe = (client as PublicArkivClient).watchEvent({
41
+ pollingInterval: pollingInterval ?? 1000,
42
+ fromBlock: fromBlock ?? 0n,
43
+ events: arkivABI,
44
+ onLogs: (logs) => {
45
+ console.debug("logs from subscribeEntityEvents", logs)
46
+ for (const log of logs) {
47
+ const event = decodeEventLog({
48
+ abi: arkivABI,
49
+ topics: log.topics,
50
+ data: log.data,
51
+ })
52
+ console.debug("event from subscribeEntityEvents", event)
53
+ switch (event.eventName) {
54
+ case "ArkivEntityCreated":
55
+ onEntityCreated?.({
56
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
57
+ owner: event.args.ownerAddress,
58
+ expirationBlock: Number(event.args.expirationBlock),
59
+ cost: event.args.cost,
60
+ })
61
+ break
62
+ case "ArkivEntityUpdated":
63
+ onEntityUpdated?.({
64
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
65
+ owner: event.args.ownerAddress,
66
+ oldExpirationBlock: Number(event.args.oldExpirationBlock),
67
+ newExpirationBlock: Number(event.args.newExpirationBlock),
68
+ cost: event.args.cost,
69
+ })
70
+ break
71
+ case "ArkivEntityDeleted":
72
+ onEntityDeleted?.({
73
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
74
+ owner: event.args.ownerAddress,
75
+ })
76
+ break
77
+ case "ArkivEntityBTLExtended":
78
+ onEntityExpiresInExtended?.({
79
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
80
+ owner: event.args.ownerAddress,
81
+ oldExpirationBlock: Number(event.args.oldExpirationBlock),
82
+ newExpirationBlock: Number(event.args.newExpirationBlock),
83
+ cost: event.args.cost,
84
+ })
85
+ break
86
+ case "ArkivEntityExpired":
87
+ onEntityExpired?.({
88
+ entityKey: toHex(event.args.entityKey, { size: 32 }),
89
+ owner: event.args.ownerAddress,
90
+ })
91
+ break
92
+ default:
93
+ console.warn("unknown event from subscribeEntityEvents", event)
94
+ break
95
+ }
96
+ }
97
+ },
98
+ onError: (error) => {
99
+ console.error("error from subscribeEntityEvents", error)
100
+ onError?.(error)
101
+ },
102
+ })
103
+
104
+ return unsubscribe
105
+ }
@@ -0,0 +1,43 @@
1
+ import type { Hex } from "viem"
2
+ import type { ArkivClient } from "../../clients/baseClient"
3
+ import type { Annotation, TxParams } from "../../types"
4
+ import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions"
5
+
6
+ /**
7
+ * Parameters for the createEntity function.
8
+ * - payload: The payload of the entity.
9
+ * - annotations: The annotations of the entity.
10
+ * - expiresIn: The expires in of the entity in seconds.
11
+ */
12
+ export type CreateEntityParameters = {
13
+ payload: Uint8Array
14
+ annotations: Annotation[]
15
+ expiresIn: number
16
+ }
17
+
18
+ /**
19
+ * Return type for the createEntity function.
20
+ * - entityKey: The key of the entity.
21
+ * - txHash: The transaction hash.
22
+ */
23
+ export type CreateEntityReturnType = {
24
+ entityKey: Hex
25
+ txHash: string
26
+ }
27
+
28
+ export async function createEntity(
29
+ client: ArkivClient,
30
+ data: CreateEntityParameters,
31
+ txParams?: TxParams,
32
+ ): Promise<CreateEntityReturnType> {
33
+ console.debug("createEntity", data)
34
+ const txData = opsToTxData({ creates: [data] })
35
+ const receipt = await sendArkivTransaction(client, txData, txParams)
36
+
37
+ console.debug("Receipt from createEntity", receipt)
38
+
39
+ return {
40
+ txHash: receipt.transactionHash,
41
+ entityKey: receipt.logs[0].topics[1] as Hex,
42
+ }
43
+ }
@@ -0,0 +1,39 @@
1
+ import type { Hex } from "viem"
2
+ import type { ArkivClient } from "../../clients/baseClient"
3
+ import type { TxParams } from "../../types"
4
+ import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions"
5
+
6
+ /**
7
+ * Parameters for the deleteEntity function.
8
+ * - entityKey: The key of the entity to delete.
9
+ */
10
+ export type DeleteEntityParameters = {
11
+ entityKey: Hex
12
+ }
13
+
14
+ /**
15
+ * Return type for the deleteEntity function.
16
+ * - entityKey: The key of the entity.
17
+ * - txHash: The transaction hash.
18
+ */
19
+ export type DeleteEntityReturnType = {
20
+ entityKey: Hex
21
+ txHash: string
22
+ }
23
+
24
+ export async function deleteEntity(
25
+ client: ArkivClient,
26
+ data: DeleteEntityParameters,
27
+ txParams?: TxParams,
28
+ ): Promise<DeleteEntityReturnType> {
29
+ console.debug("deleteEntity", data)
30
+ const txData = opsToTxData({ deletes: [data] })
31
+ const receipt = await sendArkivTransaction(client, txData, txParams)
32
+
33
+ console.debug("Receipt from deleteEntity", receipt)
34
+
35
+ return {
36
+ txHash: receipt.transactionHash,
37
+ entityKey: data.entityKey,
38
+ }
39
+ }
@@ -0,0 +1,41 @@
1
+ import type { Hex } from "viem"
2
+ import type { ArkivClient } from "../../clients/baseClient"
3
+ import type { TxParams } from "../../types"
4
+ import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions"
5
+
6
+ /**
7
+ * Parameters for the extendEntity function.
8
+ * - entityKey: The key of the entity to extend.
9
+ * - expiresIn: The expires in of the entity in seconds.
10
+ */
11
+ export type ExtendEntityParameters = {
12
+ entityKey: Hex
13
+ expiresIn: number
14
+ }
15
+
16
+ /**
17
+ * Return type for the extendEntity function.
18
+ * - entityKey: The key of the entity.
19
+ * - txHash: The transaction hash.
20
+ */
21
+ export type ExtendEntityReturnType = {
22
+ entityKey: Hex
23
+ txHash: string
24
+ }
25
+
26
+ export async function extendEntity(
27
+ client: ArkivClient,
28
+ data: ExtendEntityParameters,
29
+ txParams?: TxParams,
30
+ ): Promise<ExtendEntityReturnType> {
31
+ console.debug("extendEntity", data)
32
+ const txData = opsToTxData({ extensions: [data] })
33
+ const receipt = await sendArkivTransaction(client, txData, txParams)
34
+
35
+ console.debug("Receipt from extendEntity", receipt)
36
+
37
+ return {
38
+ txHash: receipt.transactionHash,
39
+ entityKey: receipt.logs[0].topics[1] as Hex,
40
+ }
41
+ }
@@ -0,0 +1,100 @@
1
+ import type { Hex, TransactionReceipt } from "viem"
2
+ import type { ArkivClient } from "../../clients/baseClient"
3
+ import type { TxParams } from "../../types"
4
+ import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions"
5
+ import type { CreateEntityParameters } from "./createEntity"
6
+ import type { DeleteEntityParameters } from "./deleteEntity"
7
+ import type { ExtendEntityParameters } from "./extendEntity"
8
+ import type { UpdateEntityParameters } from "./updateEntity"
9
+
10
+ /**
11
+ * Parameters for the mutateEntities function.
12
+ * - creates: The creates to perform.
13
+ * - updates: The updates to perform.
14
+ * - deletes: The deletes to perform.
15
+ * - extensions: The extensions to perform.
16
+ */
17
+ export type MutateEntitiesParameters = {
18
+ creates?: CreateEntityParameters[]
19
+ updates?: UpdateEntityParameters[]
20
+ deletes?: DeleteEntityParameters[]
21
+ extensions?: ExtendEntityParameters[]
22
+ }
23
+
24
+ function parseReceipt(receipt: TransactionReceipt, params: MutateEntitiesParameters) {
25
+ const createdEntities: Hex[] = []
26
+ const updatedEntities: Hex[] = []
27
+ const deletedEntities: Hex[] = []
28
+ const extendedEntities: Hex[] = []
29
+ const totalCreates = params.creates?.length ?? 0
30
+ const totalUpdates = params.updates?.length ?? 0
31
+ const totalDeletes = params.deletes?.length ?? 0
32
+
33
+ // iterate over all logs and parse the event
34
+ // each odd log is the interested ones, logs goes in order like: creates, deleted, updates, extends
35
+ for (let i = 0; i < receipt.logs.length; i++) {
36
+ const log = receipt.logs[i]
37
+ if (i % 2 === 1) continue
38
+
39
+ const index = i / 2
40
+ if (index < totalCreates) {
41
+ createdEntities.push(log.topics[1] as Hex)
42
+ } else if (index < totalCreates + totalDeletes) {
43
+ deletedEntities.push(log.topics[1] as Hex)
44
+ } else if (index < totalCreates + totalUpdates + totalDeletes) {
45
+ updatedEntities.push(log.topics[1] as Hex)
46
+ } else {
47
+ extendedEntities.push(log.topics[1] as Hex)
48
+ }
49
+ }
50
+
51
+ return { createdEntities, updatedEntities, deletedEntities, extendedEntities }
52
+ }
53
+
54
+ /**
55
+ * Return type for the mutateEntities function.
56
+ * - txHash: The transaction hash.
57
+ * - createdEntities: The keys of the created entities.
58
+ * - updatedEntities: The keys of the updated entities.
59
+ * - deletedEntities: The keys of the deleted entities.
60
+ * - extendedEntities: The keys of the extended entities.
61
+ */
62
+ export type MutateEntitiesReturnType = {
63
+ txHash: string
64
+ createdEntities: Hex[]
65
+ updatedEntities: Hex[]
66
+ deletedEntities: Hex[]
67
+ extendedEntities: Hex[]
68
+ }
69
+ export async function mutateEntities(
70
+ client: ArkivClient,
71
+ data: MutateEntitiesParameters,
72
+ txParams?: TxParams,
73
+ ): Promise<MutateEntitiesReturnType> {
74
+ if (!data.creates && !data.updates && !data.deletes && !data.extensions) {
75
+ throw new Error("No operations to perform")
76
+ }
77
+
78
+ const txData = opsToTxData({
79
+ creates: data.creates ?? [],
80
+ updates: data.updates ?? [],
81
+ deletes: data.deletes ?? [],
82
+ extensions: data.extensions ?? [],
83
+ })
84
+
85
+ const receipt = await sendArkivTransaction(client, txData, txParams)
86
+
87
+ console.debug("Receipt from mutateEntities", receipt)
88
+
89
+ const { createdEntities, updatedEntities, deletedEntities, extendedEntities } = parseReceipt(
90
+ receipt,
91
+ data,
92
+ )
93
+ return {
94
+ txHash: receipt.transactionHash,
95
+ createdEntities,
96
+ updatedEntities,
97
+ deletedEntities,
98
+ extendedEntities,
99
+ }
100
+ }
@@ -0,0 +1,45 @@
1
+ import type { Hex } from "viem"
2
+ import type { ArkivClient } from "../../clients/baseClient"
3
+ import type { Annotation, TxParams } from "../../types"
4
+ import { opsToTxData, sendArkivTransaction } from "../../utils/arkivTransactions"
5
+
6
+ /**
7
+ * Parameters for the updateEntity function.
8
+ * - entityKey: The key of the entity to update.
9
+ * - payload: The payload of the entity.
10
+ * - annotations: The annotations of the entity.
11
+ * - expiresIn: The expires in of the entity in seconds.
12
+ */
13
+ export type UpdateEntityParameters = {
14
+ entityKey: Hex
15
+ payload: Uint8Array | string
16
+ annotations: Annotation[]
17
+ expiresIn: number
18
+ }
19
+
20
+ /**
21
+ * Return type for the updateEntity function.
22
+ * - entityKey: The key of the entity.
23
+ * - txHash: The transaction hash.
24
+ */
25
+ export type UpdateEntityReturnType = {
26
+ entityKey: Hex
27
+ txHash: string
28
+ }
29
+
30
+ export async function updateEntity(
31
+ client: ArkivClient,
32
+ data: UpdateEntityParameters,
33
+ txParams?: TxParams,
34
+ ): Promise<UpdateEntityReturnType> {
35
+ console.debug("updateEntity", data)
36
+ const txData = opsToTxData({ updates: [data] })
37
+ const receipt = await sendArkivTransaction(client, txData, txParams)
38
+
39
+ console.debug("Receipt from updateEntity", receipt)
40
+
41
+ return {
42
+ txHash: receipt.transactionHash,
43
+ entityKey: receipt.logs[0].topics[1] as Hex,
44
+ }
45
+ }
@@ -0,0 +1,3 @@
1
+ export { kaolin } from "./kaolin"
2
+ export { localhost } from "./localhost"
3
+ export { marketplace } from "./marketplace"
@@ -0,0 +1,26 @@
1
+ import { defineChain } from "viem"
2
+
3
+ export const kaolin = defineChain({
4
+ id: 60138453025,
5
+ name: "Kaolin",
6
+ network: "kaolin",
7
+ nativeCurrency: {
8
+ name: "Ethereum",
9
+ symbol: "ETH",
10
+ decimals: 18,
11
+ },
12
+ rpcUrls: {
13
+ default: {
14
+ http: ["https://kaolin.hoodi.arkiv.network/rpc"],
15
+ webSocket: ["wss://kaolin.hoodi.arkiv.network/rpc/ws"],
16
+ },
17
+ },
18
+ blockExplorers: {
19
+ default: {
20
+ name: "Kaolin Arkiv Explorer",
21
+ url: "https://explorer.kaolin.hoodi.arkiv.network",
22
+ apiUrl: "https://explorer.kaolin.hoodi.arkiv.network/api",
23
+ },
24
+ },
25
+ testnet: true,
26
+ })
@@ -0,0 +1,14 @@
1
+ import { defineChain } from "viem"
2
+
3
+ export const localhost = defineChain({
4
+ id: 1337,
5
+ name: "Localhost",
6
+ nativeCurrency: {
7
+ decimals: 18,
8
+ name: "Ether",
9
+ symbol: "ETH",
10
+ },
11
+ rpcUrls: {
12
+ default: { http: ["http://127.0.0.1:8545"] },
13
+ },
14
+ })
@@ -0,0 +1,26 @@
1
+ import { defineChain } from "viem"
2
+
3
+ export const marketplace = defineChain({
4
+ id: 60138453027,
5
+ name: "Marketplace",
6
+ network: "marketplace",
7
+ nativeCurrency: {
8
+ name: "Ethereum",
9
+ symbol: "ETH",
10
+ decimals: 18,
11
+ },
12
+ rpcUrls: {
13
+ default: {
14
+ http: ["https://marketplace.hoodi.arkiv.network/rpc"],
15
+ webSocket: ["wss://marketplace.hoodi.arkiv.network/rpc/ws"],
16
+ },
17
+ },
18
+ blockExplorers: {
19
+ default: {
20
+ name: "Marketplace Arkiv Explorer",
21
+ url: "https://explorer.marketplace.hoodi.arkiv.network",
22
+ apiUrl: "https://explorer.marketplace.hoodi.arkiv.network/api",
23
+ },
24
+ },
25
+ testnet: true,
26
+ })
@@ -0,0 +1,9 @@
1
+ import type { Account, Chain, Client, RpcSchema, Transport } from "viem"
2
+ import type { ArkivRpcSchema } from "../types/rpcSchema"
3
+
4
+ export type ArkivClient<
5
+ transport extends Transport = Transport,
6
+ chain extends Chain | undefined = Chain | undefined,
7
+ accountOrAddress extends Account | undefined = Account | undefined,
8
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
9
+ > = Client<transport, chain, accountOrAddress, rpcSchema>
@@ -0,0 +1,65 @@
1
+ import type {
2
+ Account,
3
+ Address,
4
+ Chain,
5
+ Client,
6
+ ParseAccount,
7
+ Prettify,
8
+ PublicClientConfig,
9
+ RpcSchema,
10
+ Transport,
11
+ } from "viem"
12
+ import { createClient, publicActions } from "viem"
13
+ import type { ArkivRpcSchema } from "../types/rpcSchema"
14
+ import { type PublicArkivActions, publicArkivActions } from "./decorators/arkivPublic"
15
+
16
+ export type PublicArkivClient<
17
+ transport extends Transport = Transport,
18
+ chain extends Chain | undefined = Chain | undefined,
19
+ accountOrAddress extends Account | undefined = undefined,
20
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
21
+ > = Prettify<
22
+ Client<transport, chain, accountOrAddress, rpcSchema, PublicArkivActions<transport, chain>>
23
+ >
24
+
25
+ /**
26
+ * Creates a Public Client with a given [Transport](https://viem.sh/docs/clients/intro) configured for a [Chain](https://viem.sh/docs/clients/chains).
27
+ *
28
+ * - Docs: https://docs.golemdb.io/ts-sdk/clients/public
29
+ *
30
+ * A Public Client is an interface to "public" [Ethereum JSON-RPC API](https://ethereum.org/en/developers/docs/apis/json-rpc/), [Arkiv JSON-RPC API](https://docs.golemdb.io/json-rpc/), and [Kaolin JSON-RPC API](https://kaolin.holesky.golemdb.io/rpc) methods such as retrieving block numbers, transactions, reading from smart contracts, etc through [Public Actions](/docs/actions/public/introduction).
31
+ *
32
+ * @param config - {@link PublicClientConfig}
33
+ * @returns A Arkiv Public Client. {@link PublicArkivClient}
34
+ *
35
+ * @example
36
+ * import { createPublicClient, http } from 'arkiv'
37
+ * import { kaolin } from 'arkiv/chains'
38
+ *
39
+ * const client = createPublicClient({
40
+ * chain: kaolin,
41
+ * transport: http(),
42
+ * })
43
+ */
44
+ export function createPublicClient<
45
+ transport extends Transport,
46
+ chain extends Chain | undefined = undefined,
47
+ accountOrAddress extends Account | Address | undefined = undefined,
48
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
49
+ >(
50
+ parameters: PublicClientConfig<transport, chain, accountOrAddress, rpcSchema>,
51
+ ): PublicArkivClient<transport, chain, ParseAccount<accountOrAddress>, rpcSchema> {
52
+ const { key = "public", name = "Public Client" } = parameters
53
+ const client = createClient({
54
+ ...parameters,
55
+ key,
56
+ name,
57
+ })
58
+
59
+ return client.extend(publicArkivActions).extend(publicActions) as unknown as PublicArkivClient<
60
+ transport,
61
+ chain,
62
+ ParseAccount<accountOrAddress>,
63
+ rpcSchema
64
+ >
65
+ }
@@ -0,0 +1,70 @@
1
+ import type {
2
+ Account,
3
+ Address,
4
+ Chain,
5
+ Client,
6
+ ParseAccount,
7
+ Prettify,
8
+ RpcSchema,
9
+ Transport,
10
+ WalletClientConfig,
11
+ } from "viem"
12
+ import { createClient, publicActions, walletActions } from "viem"
13
+ import type { ArkivRpcSchema } from "../types/rpcSchema"
14
+ import { publicArkivActions } from "./decorators/arkivPublic"
15
+ import { type WalletArkivActions, walletArkivActions } from "./decorators/arkivWallet"
16
+
17
+ export type WalletArkivClient<
18
+ transport extends Transport = Transport,
19
+ chain extends Chain | undefined = Chain | undefined,
20
+ account extends Account | undefined = Account | undefined,
21
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
22
+ > = Prettify<
23
+ Client<transport, chain, account, rpcSchema, WalletArkivActions<transport, chain, account>>
24
+ >
25
+
26
+ /**
27
+ * Creates a Public Client with a given [Transport](https://viem.sh/docs/clients/intro) configured for a [Chain](https://viem.sh/docs/clients/chains).
28
+ *
29
+ * - Docs: https://docs.golemdb.io/ts-sdk/clients/public
30
+ *
31
+ * A Public Client is an interface to "public" [Ethereum JSON-RPC API](https://ethereum.org/en/developers/docs/apis/json-rpc/), [Arkiv JSON-RPC API](https://docs.golemdb.io/json-rpc/), and [Kaolin JSON-RPC API](https://kaolin.holesky.golemdb.io/rpc) methods such as retrieving block numbers, transactions, reading from smart contracts, etc through [Public Actions](/docs/actions/public/introduction).
32
+ *
33
+ * @param config - {@link PublicClientConfig}
34
+ * @returns A Arkiv Public Client. {@link PublicArkivClient}
35
+ *
36
+ * @example
37
+ * import { createPublicClient, http } from 'arkiv'
38
+ * import { kaolin } from 'arkiv/chains'
39
+ *
40
+ * const client = createPublicClient({
41
+ * chain: kaolin,
42
+ * transport: http(),
43
+ * })
44
+ */
45
+ export function createWalletClient<
46
+ transport extends Transport,
47
+ chain extends Chain | undefined = undefined,
48
+ accountOrAddress extends Account | Address | undefined = undefined,
49
+ rpcSchema extends RpcSchema | undefined = ArkivRpcSchema,
50
+ >(
51
+ parameters: WalletClientConfig<transport, chain, accountOrAddress, rpcSchema>,
52
+ ): WalletArkivClient<transport, chain, ParseAccount<accountOrAddress>, rpcSchema> {
53
+ const { key = "wallet", name = "Wallet Client" } = parameters
54
+ const client = createClient({
55
+ ...parameters,
56
+ key,
57
+ name,
58
+ })
59
+
60
+ return client
61
+ .extend(walletActions)
62
+ .extend(publicActions)
63
+ .extend(walletArkivActions)
64
+ .extend(publicArkivActions) as unknown as WalletArkivClient<
65
+ transport,
66
+ chain,
67
+ ParseAccount<accountOrAddress>,
68
+ rpcSchema
69
+ >
70
+ }