@opendatalabs/vana-sdk 0.1.0-alpha.f54fafd → 0.1.0-alpha.f732fa2

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 (819) hide show
  1. package/README.md +13 -4
  2. package/dist/__tests__/waitForTransactionEvents.test.d.ts +1 -0
  3. package/dist/browser.cjs +29 -0
  4. package/dist/browser.cjs.map +1 -0
  5. package/dist/browser.d.ts +36 -1
  6. package/dist/browser.js +1 -305
  7. package/dist/browser.js.map +1 -1
  8. package/dist/{chains.browser.cjs → chains/definitions.cjs} +16 -17
  9. package/dist/chains/definitions.cjs.map +1 -0
  10. package/dist/{chains.browser.d.cts → chains/definitions.d.ts} +9 -11
  11. package/dist/chains/definitions.js +67 -0
  12. package/dist/chains/definitions.js.map +1 -0
  13. package/dist/chains/index.cjs +37 -0
  14. package/dist/chains/index.cjs.map +1 -0
  15. package/dist/chains/index.d.ts +34 -0
  16. package/dist/chains/index.js +15 -0
  17. package/dist/chains/index.js.map +1 -0
  18. package/dist/chains.browser.d.ts +5 -50
  19. package/dist/chains.browser.js +7 -57
  20. package/dist/chains.browser.js.map +1 -1
  21. package/dist/chains.cjs +6 -65
  22. package/dist/chains.cjs.map +1 -1
  23. package/dist/chains.d.ts +8 -2
  24. package/dist/chains.js +7 -57
  25. package/dist/chains.js.map +1 -1
  26. package/dist/chains.node.cjs +6 -65
  27. package/dist/chains.node.cjs.map +1 -1
  28. package/dist/chains.node.d.ts +8 -2
  29. package/dist/chains.node.js +7 -57
  30. package/dist/chains.node.js.map +1 -1
  31. package/dist/config/addresses.cjs +325 -0
  32. package/dist/config/addresses.cjs.map +1 -0
  33. package/dist/config/addresses.d.ts +364 -0
  34. package/dist/config/addresses.js +295 -0
  35. package/dist/config/addresses.js.map +1 -0
  36. package/dist/config/chains.cjs +93 -0
  37. package/dist/config/chains.cjs.map +1 -0
  38. package/dist/config/chains.d.ts +180 -0
  39. package/dist/config/chains.js +67 -0
  40. package/dist/config/chains.js.map +1 -0
  41. package/dist/config/default-services.cjs +60 -0
  42. package/dist/config/default-services.cjs.map +1 -0
  43. package/dist/config/default-services.d.ts +46 -0
  44. package/dist/config/default-services.js +33 -0
  45. package/dist/config/default-services.js.map +1 -0
  46. package/dist/config/default-services.test.d.ts +1 -0
  47. package/dist/config/features.cjs +52 -0
  48. package/dist/config/features.cjs.map +1 -0
  49. package/dist/config/features.d.ts +62 -0
  50. package/dist/config/features.js +28 -0
  51. package/dist/config/features.js.map +1 -0
  52. package/dist/config/tests/addresses.test.d.ts +1 -0
  53. package/dist/contracts/contractController.cjs +126 -0
  54. package/dist/contracts/contractController.cjs.map +1 -0
  55. package/dist/contracts/contractController.d.ts +135 -0
  56. package/dist/contracts/contractController.js +100 -0
  57. package/dist/contracts/contractController.js.map +1 -0
  58. package/dist/contracts/tests/contractController.test.d.ts +1 -0
  59. package/dist/controllers/__tests__/schemas-edge-cases.test.d.ts +1 -0
  60. package/dist/controllers/base.cjs +83 -0
  61. package/dist/controllers/base.cjs.map +1 -0
  62. package/dist/controllers/base.d.ts +84 -0
  63. package/dist/controllers/base.js +59 -0
  64. package/dist/controllers/base.js.map +1 -0
  65. package/dist/controllers/data-error-handling.test.d.ts +1 -0
  66. package/dist/controllers/data.cjs +2514 -0
  67. package/dist/controllers/data.cjs.map +1 -0
  68. package/dist/controllers/data.d.ts +1052 -0
  69. package/dist/controllers/data.js +2497 -0
  70. package/dist/controllers/data.js.map +1 -0
  71. package/dist/controllers/permissions.cjs +4024 -0
  72. package/dist/controllers/permissions.cjs.map +1 -0
  73. package/dist/controllers/permissions.d.ts +1307 -0
  74. package/dist/controllers/permissions.js +4000 -0
  75. package/dist/controllers/permissions.js.map +1 -0
  76. package/dist/controllers/protocol.cjs +183 -0
  77. package/dist/controllers/protocol.cjs.map +1 -0
  78. package/dist/controllers/protocol.d.ts +138 -0
  79. package/dist/controllers/protocol.js +163 -0
  80. package/dist/controllers/protocol.js.map +1 -0
  81. package/dist/controllers/schemas.cjs +601 -0
  82. package/dist/controllers/schemas.cjs.map +1 -0
  83. package/dist/controllers/schemas.d.ts +252 -0
  84. package/dist/controllers/schemas.js +577 -0
  85. package/dist/controllers/schemas.js.map +1 -0
  86. package/dist/controllers/server-additional.test.d.ts +1 -0
  87. package/dist/controllers/server.cjs +434 -0
  88. package/dist/controllers/server.cjs.map +1 -0
  89. package/dist/controllers/server.d.ts +225 -0
  90. package/dist/controllers/server.js +415 -0
  91. package/dist/controllers/server.js.map +1 -0
  92. package/dist/core/apiClient.cjs +378 -0
  93. package/dist/core/apiClient.cjs.map +1 -0
  94. package/dist/core/apiClient.d.ts +286 -0
  95. package/dist/core/apiClient.js +359 -0
  96. package/dist/core/apiClient.js.map +1 -0
  97. package/dist/core/client.cjs +70 -0
  98. package/dist/core/client.cjs.map +1 -0
  99. package/dist/core/client.d.ts +89 -0
  100. package/dist/core/client.js +47 -0
  101. package/dist/core/client.js.map +1 -0
  102. package/dist/core/core.test.d.ts +1 -0
  103. package/dist/core/generics.cjs +417 -0
  104. package/dist/core/generics.cjs.map +1 -0
  105. package/dist/core/generics.d.ts +205 -0
  106. package/dist/core/generics.js +386 -0
  107. package/dist/core/generics.js.map +1 -0
  108. package/dist/core/tests/apiClient.test.d.ts +1 -0
  109. package/dist/core/tests/client.test.d.ts +1 -0
  110. package/dist/core/tests/generics.test.d.ts +1 -0
  111. package/dist/core.cjs +723 -0
  112. package/dist/core.cjs.map +1 -0
  113. package/dist/core.d.ts +442 -0
  114. package/dist/core.js +698 -0
  115. package/dist/core.js.map +1 -0
  116. package/dist/crypto/ecies/__tests__/base.test.d.ts +4 -0
  117. package/dist/crypto/ecies/__tests__/compatibility.test.d.ts +8 -0
  118. package/dist/crypto/ecies/__tests__/constants.test.d.ts +4 -0
  119. package/dist/crypto/ecies/__tests__/native-parity.test.d.ts +7 -0
  120. package/dist/crypto/ecies/__tests__/normalization.test.d.ts +1 -0
  121. package/dist/crypto/ecies/__tests__/test-vectors.cjs +102 -0
  122. package/dist/crypto/ecies/__tests__/test-vectors.cjs.map +1 -0
  123. package/dist/crypto/ecies/__tests__/test-vectors.d.ts +38 -0
  124. package/dist/crypto/ecies/__tests__/test-vectors.js +77 -0
  125. package/dist/crypto/ecies/__tests__/test-vectors.js.map +1 -0
  126. package/dist/crypto/ecies/base.cjs +232 -0
  127. package/dist/crypto/ecies/base.cjs.map +1 -0
  128. package/dist/crypto/ecies/base.d.ts +140 -0
  129. package/dist/crypto/ecies/base.js +208 -0
  130. package/dist/crypto/ecies/base.js.map +1 -0
  131. package/dist/crypto/ecies/browser.cjs +165 -0
  132. package/dist/crypto/ecies/browser.cjs.map +1 -0
  133. package/dist/crypto/ecies/browser.d.ts +43 -0
  134. package/dist/crypto/ecies/browser.js +131 -0
  135. package/dist/crypto/ecies/browser.js.map +1 -0
  136. package/dist/crypto/ecies/constants.cjs +131 -0
  137. package/dist/crypto/ecies/constants.cjs.map +1 -0
  138. package/dist/crypto/ecies/constants.d.ts +120 -0
  139. package/dist/crypto/ecies/constants.js +101 -0
  140. package/dist/crypto/ecies/constants.js.map +1 -0
  141. package/dist/crypto/ecies/index.cjs +35 -0
  142. package/dist/crypto/ecies/index.cjs.map +1 -0
  143. package/dist/crypto/ecies/index.d.ts +8 -0
  144. package/dist/crypto/ecies/index.js +13 -0
  145. package/dist/crypto/ecies/index.js.map +1 -0
  146. package/dist/crypto/ecies/interface.cjs +87 -0
  147. package/dist/crypto/ecies/interface.cjs.map +1 -0
  148. package/dist/crypto/ecies/interface.d.ts +174 -0
  149. package/dist/crypto/ecies/interface.js +60 -0
  150. package/dist/crypto/ecies/interface.js.map +1 -0
  151. package/dist/crypto/ecies/node.cjs +167 -0
  152. package/dist/crypto/ecies/node.cjs.map +1 -0
  153. package/dist/crypto/ecies/node.d.ts +45 -0
  154. package/dist/crypto/ecies/node.js +139 -0
  155. package/dist/crypto/ecies/node.js.map +1 -0
  156. package/dist/crypto/ecies/test-vectors/eccrypto-vectors.json +72 -0
  157. package/dist/crypto/ecies/utils.cjs +52 -0
  158. package/dist/crypto/ecies/utils.cjs.map +1 -0
  159. package/dist/crypto/ecies/utils.d.ts +30 -0
  160. package/dist/crypto/ecies/utils.js +26 -0
  161. package/dist/crypto/ecies/utils.js.map +1 -0
  162. package/dist/crypto/services/WalletKeyEncryptionService.cjs +128 -0
  163. package/dist/crypto/services/WalletKeyEncryptionService.cjs.map +1 -0
  164. package/dist/crypto/services/WalletKeyEncryptionService.d.ts +88 -0
  165. package/dist/crypto/services/WalletKeyEncryptionService.js +108 -0
  166. package/dist/crypto/services/WalletKeyEncryptionService.js.map +1 -0
  167. package/dist/crypto/services/WalletKeyEncryptionService.test.d.ts +1 -0
  168. package/dist/diagnostics.cjs +37 -0
  169. package/dist/diagnostics.cjs.map +1 -0
  170. package/dist/diagnostics.d.ts +24 -0
  171. package/dist/diagnostics.js +13 -0
  172. package/dist/diagnostics.js.map +1 -0
  173. package/dist/diagnostics.test.d.ts +1 -0
  174. package/dist/errors.cjs +157 -0
  175. package/dist/errors.cjs.map +1 -0
  176. package/dist/errors.d.ts +388 -0
  177. package/dist/errors.js +120 -0
  178. package/dist/errors.js.map +1 -0
  179. package/dist/generated/abi/ComputeEngineImplementation.cjs +1313 -0
  180. package/dist/generated/abi/ComputeEngineImplementation.cjs.map +1 -0
  181. package/dist/generated/abi/ComputeEngineImplementation.d.ts +995 -0
  182. package/dist/generated/abi/ComputeEngineImplementation.js +1289 -0
  183. package/dist/generated/abi/ComputeEngineImplementation.js.map +1 -0
  184. package/dist/generated/abi/ComputeInstructionRegistryImplementation.cjs +734 -0
  185. package/dist/generated/abi/ComputeInstructionRegistryImplementation.cjs.map +1 -0
  186. package/dist/generated/abi/ComputeInstructionRegistryImplementation.d.ts +544 -0
  187. package/dist/generated/abi/ComputeInstructionRegistryImplementation.js +710 -0
  188. package/dist/generated/abi/ComputeInstructionRegistryImplementation.js.map +1 -0
  189. package/dist/generated/abi/DATFactoryImplementation.cjs +882 -0
  190. package/dist/generated/abi/DATFactoryImplementation.cjs.map +1 -0
  191. package/dist/generated/abi/DATFactoryImplementation.d.ts +660 -0
  192. package/dist/generated/abi/DATFactoryImplementation.js +858 -0
  193. package/dist/generated/abi/DATFactoryImplementation.js.map +1 -0
  194. package/dist/generated/abi/DATImplementation.cjs +934 -0
  195. package/dist/generated/abi/DATImplementation.cjs.map +1 -0
  196. package/dist/generated/abi/DATImplementation.d.ts +692 -0
  197. package/dist/generated/abi/DATImplementation.js +910 -0
  198. package/dist/generated/abi/DATImplementation.js.map +1 -0
  199. package/dist/generated/abi/DATPausableImplementation.cjs +1523 -0
  200. package/dist/generated/abi/DATPausableImplementation.cjs.map +1 -0
  201. package/dist/generated/abi/DATPausableImplementation.d.ts +1144 -0
  202. package/dist/generated/abi/DATPausableImplementation.js +1499 -0
  203. package/dist/generated/abi/DATPausableImplementation.js.map +1 -0
  204. package/dist/generated/abi/DATVotesImplementation.cjs +1460 -0
  205. package/dist/generated/abi/DATVotesImplementation.cjs.map +1 -0
  206. package/dist/generated/abi/DATVotesImplementation.d.ts +1094 -0
  207. package/dist/generated/abi/DATVotesImplementation.js +1436 -0
  208. package/dist/generated/abi/DATVotesImplementation.js.map +1 -0
  209. package/dist/generated/abi/DLPPerformanceImplementation.cjs +1160 -0
  210. package/dist/generated/abi/DLPPerformanceImplementation.cjs.map +1 -0
  211. package/dist/generated/abi/DLPPerformanceImplementation.d.ts +882 -0
  212. package/dist/generated/abi/DLPPerformanceImplementation.js +1136 -0
  213. package/dist/generated/abi/DLPPerformanceImplementation.js.map +1 -0
  214. package/dist/generated/abi/DLPRegistryImplementation.cjs +1469 -0
  215. package/dist/generated/abi/DLPRegistryImplementation.cjs.map +1 -0
  216. package/dist/generated/abi/DLPRegistryImplementation.d.ts +1122 -0
  217. package/dist/generated/abi/DLPRegistryImplementation.js +1445 -0
  218. package/dist/generated/abi/DLPRegistryImplementation.js.map +1 -0
  219. package/dist/generated/abi/DLPRegistryTreasuryImplementation.cjs +612 -0
  220. package/dist/generated/abi/DLPRegistryTreasuryImplementation.cjs.map +1 -0
  221. package/dist/generated/abi/DLPRegistryTreasuryImplementation.d.ts +451 -0
  222. package/dist/generated/abi/DLPRegistryTreasuryImplementation.js +588 -0
  223. package/dist/generated/abi/DLPRegistryTreasuryImplementation.js.map +1 -0
  224. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs +948 -0
  225. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs.map +1 -0
  226. package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +713 -0
  227. package/dist/generated/abi/DLPRewardDeployerImplementation.js +924 -0
  228. package/dist/generated/abi/DLPRewardDeployerImplementation.js.map +1 -0
  229. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs +612 -0
  230. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs.map +1 -0
  231. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.ts +451 -0
  232. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js +588 -0
  233. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js.map +1 -0
  234. package/dist/generated/abi/DLPRewardSwapImplementation.cjs +939 -0
  235. package/dist/generated/abi/DLPRewardSwapImplementation.cjs.map +1 -0
  236. package/dist/generated/abi/DLPRewardSwapImplementation.d.ts +705 -0
  237. package/dist/generated/abi/DLPRewardSwapImplementation.js +915 -0
  238. package/dist/generated/abi/DLPRewardSwapImplementation.js.map +1 -0
  239. package/dist/generated/abi/DLPRootImplementation.cjs +1644 -0
  240. package/dist/generated/abi/DLPRootImplementation.cjs.map +1 -0
  241. package/dist/generated/abi/DLPRootImplementation.d.ts +1246 -0
  242. package/dist/generated/abi/DLPRootImplementation.js +1620 -0
  243. package/dist/generated/abi/DLPRootImplementation.js.map +1 -0
  244. package/dist/generated/abi/DLPTreasuryImplementation.cjs +612 -0
  245. package/dist/generated/abi/DLPTreasuryImplementation.cjs.map +1 -0
  246. package/dist/generated/abi/DLPTreasuryImplementation.d.ts +451 -0
  247. package/dist/generated/abi/DLPTreasuryImplementation.js +588 -0
  248. package/dist/generated/abi/DLPTreasuryImplementation.js.map +1 -0
  249. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs +985 -0
  250. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs.map +1 -0
  251. package/dist/generated/abi/DataLiquidityPoolImplementation.d.ts +735 -0
  252. package/dist/generated/abi/DataLiquidityPoolImplementation.js +961 -0
  253. package/dist/generated/abi/DataLiquidityPoolImplementation.js.map +1 -0
  254. package/dist/generated/abi/DataPortabilityGranteesImplementation.cjs +888 -0
  255. package/dist/generated/abi/DataPortabilityGranteesImplementation.cjs.map +1 -0
  256. package/dist/generated/abi/DataPortabilityGranteesImplementation.d.ts +660 -0
  257. package/dist/generated/abi/DataPortabilityGranteesImplementation.js +864 -0
  258. package/dist/generated/abi/DataPortabilityGranteesImplementation.js.map +1 -0
  259. package/dist/generated/abi/DataPortabilityPermissionsImplementation.cjs +1317 -0
  260. package/dist/generated/abi/DataPortabilityPermissionsImplementation.cjs.map +1 -0
  261. package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.ts +988 -0
  262. package/dist/generated/abi/DataPortabilityPermissionsImplementation.js +1293 -0
  263. package/dist/generated/abi/DataPortabilityPermissionsImplementation.js.map +1 -0
  264. package/dist/generated/abi/DataPortabilityServersImplementation.cjs +1438 -0
  265. package/dist/generated/abi/DataPortabilityServersImplementation.cjs.map +1 -0
  266. package/dist/generated/abi/DataPortabilityServersImplementation.d.ts +1085 -0
  267. package/dist/generated/abi/DataPortabilityServersImplementation.js +1414 -0
  268. package/dist/generated/abi/DataPortabilityServersImplementation.js.map +1 -0
  269. package/dist/generated/abi/DataRefinerRegistryImplementation.cjs +984 -0
  270. package/dist/generated/abi/DataRefinerRegistryImplementation.cjs.map +1 -0
  271. package/dist/generated/abi/DataRefinerRegistryImplementation.d.ts +736 -0
  272. package/dist/generated/abi/DataRefinerRegistryImplementation.js +960 -0
  273. package/dist/generated/abi/DataRefinerRegistryImplementation.js.map +1 -0
  274. package/dist/generated/abi/DataRegistryImplementation.cjs +1341 -0
  275. package/dist/generated/abi/DataRegistryImplementation.cjs.map +1 -0
  276. package/dist/generated/abi/DataRegistryImplementation.d.ts +1013 -0
  277. package/dist/generated/abi/DataRegistryImplementation.js +1317 -0
  278. package/dist/generated/abi/DataRegistryImplementation.js.map +1 -0
  279. package/dist/generated/abi/QueryEngineImplementation.cjs +1319 -0
  280. package/dist/generated/abi/QueryEngineImplementation.cjs.map +1 -0
  281. package/dist/generated/abi/QueryEngineImplementation.d.ts +1000 -0
  282. package/dist/generated/abi/QueryEngineImplementation.js +1295 -0
  283. package/dist/generated/abi/QueryEngineImplementation.js.map +1 -0
  284. package/dist/generated/abi/SwapHelperImplementation.cjs +1019 -0
  285. package/dist/generated/abi/SwapHelperImplementation.cjs.map +1 -0
  286. package/dist/generated/abi/SwapHelperImplementation.d.ts +763 -0
  287. package/dist/generated/abi/SwapHelperImplementation.js +995 -0
  288. package/dist/generated/abi/SwapHelperImplementation.js.map +1 -0
  289. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.cjs +936 -0
  290. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.cjs.map +1 -0
  291. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.d.ts +700 -0
  292. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.js +912 -0
  293. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.js.map +1 -0
  294. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.cjs +936 -0
  295. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.cjs.map +1 -0
  296. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.d.ts +700 -0
  297. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.js +912 -0
  298. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.js.map +1 -0
  299. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.cjs +936 -0
  300. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.cjs.map +1 -0
  301. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.d.ts +700 -0
  302. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.js +912 -0
  303. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.js.map +1 -0
  304. package/dist/generated/abi/TeePoolImplementation.cjs +1313 -0
  305. package/dist/generated/abi/TeePoolImplementation.cjs.map +1 -0
  306. package/dist/generated/abi/TeePoolImplementation.d.ts +992 -0
  307. package/dist/generated/abi/TeePoolImplementation.js +1289 -0
  308. package/dist/generated/abi/TeePoolImplementation.js.map +1 -0
  309. package/dist/generated/abi/TeePoolPersistentGpuImplementation.cjs +936 -0
  310. package/dist/generated/abi/TeePoolPersistentGpuImplementation.cjs.map +1 -0
  311. package/dist/generated/abi/TeePoolPersistentGpuImplementation.d.ts +700 -0
  312. package/dist/generated/abi/TeePoolPersistentGpuImplementation.js +912 -0
  313. package/dist/generated/abi/TeePoolPersistentGpuImplementation.js.map +1 -0
  314. package/dist/generated/abi/TeePoolPersistentStandardImplementation.cjs +936 -0
  315. package/dist/generated/abi/TeePoolPersistentStandardImplementation.cjs.map +1 -0
  316. package/dist/generated/abi/TeePoolPersistentStandardImplementation.d.ts +700 -0
  317. package/dist/generated/abi/TeePoolPersistentStandardImplementation.js +912 -0
  318. package/dist/generated/abi/TeePoolPersistentStandardImplementation.js.map +1 -0
  319. package/dist/generated/abi/TeePoolPhalaImplementation.cjs +1313 -0
  320. package/dist/generated/abi/TeePoolPhalaImplementation.cjs.map +1 -0
  321. package/dist/generated/abi/TeePoolPhalaImplementation.d.ts +992 -0
  322. package/dist/generated/abi/TeePoolPhalaImplementation.js +1289 -0
  323. package/dist/generated/abi/TeePoolPhalaImplementation.js.map +1 -0
  324. package/dist/generated/abi/VanaEpochImplementation.cjs +1188 -0
  325. package/dist/generated/abi/VanaEpochImplementation.cjs.map +1 -0
  326. package/dist/generated/abi/VanaEpochImplementation.d.ts +899 -0
  327. package/dist/generated/abi/VanaEpochImplementation.js +1164 -0
  328. package/dist/generated/abi/VanaEpochImplementation.js.map +1 -0
  329. package/dist/generated/abi/VanaPoolEntityImplementation.cjs +1234 -0
  330. package/dist/generated/abi/VanaPoolEntityImplementation.cjs.map +1 -0
  331. package/dist/generated/abi/VanaPoolEntityImplementation.d.ts +933 -0
  332. package/dist/generated/abi/VanaPoolEntityImplementation.js +1210 -0
  333. package/dist/generated/abi/VanaPoolEntityImplementation.js.map +1 -0
  334. package/dist/generated/abi/VanaPoolStakingImplementation.cjs +921 -0
  335. package/dist/generated/abi/VanaPoolStakingImplementation.cjs.map +1 -0
  336. package/dist/generated/abi/VanaPoolStakingImplementation.d.ts +692 -0
  337. package/dist/generated/abi/VanaPoolStakingImplementation.js +897 -0
  338. package/dist/generated/abi/VanaPoolStakingImplementation.js.map +1 -0
  339. package/dist/generated/abi/VanaPoolTreasuryImplementation.cjs +538 -0
  340. package/dist/generated/abi/VanaPoolTreasuryImplementation.cjs.map +1 -0
  341. package/dist/generated/abi/VanaPoolTreasuryImplementation.d.ts +393 -0
  342. package/dist/generated/abi/VanaPoolTreasuryImplementation.js +514 -0
  343. package/dist/generated/abi/VanaPoolTreasuryImplementation.js.map +1 -0
  344. package/dist/generated/abi/index.cjs +177 -0
  345. package/dist/generated/abi/index.cjs.map +1 -0
  346. package/dist/{index.node.d.cts → generated/abi/index.d.ts} +26541 -37853
  347. package/dist/generated/abi/index.js +120 -0
  348. package/dist/generated/abi/index.js.map +1 -0
  349. package/dist/generated/event-types.cjs +17 -0
  350. package/dist/generated/event-types.cjs.map +1 -0
  351. package/dist/generated/event-types.d.ts +854 -0
  352. package/dist/generated/event-types.js +1 -0
  353. package/dist/generated/event-types.js.map +1 -0
  354. package/dist/generated/eventRegistry.cjs +3351 -0
  355. package/dist/generated/eventRegistry.cjs.map +1 -0
  356. package/dist/generated/eventRegistry.d.ts +14 -0
  357. package/dist/generated/eventRegistry.js +3326 -0
  358. package/dist/generated/eventRegistry.js.map +1 -0
  359. package/dist/generated/server/server-exports.cjs +23 -0
  360. package/dist/generated/server/server-exports.cjs.map +1 -0
  361. package/dist/generated/server/server-exports.d.ts +19 -0
  362. package/dist/generated/server/server-exports.js +2 -0
  363. package/dist/generated/server/server-exports.js.map +1 -0
  364. package/dist/generated/server/server.cjs +17 -0
  365. package/dist/generated/server/server.cjs.map +1 -0
  366. package/dist/generated/server/server.d.ts +538 -0
  367. package/dist/generated/server/server.js +1 -0
  368. package/dist/generated/server/server.js.map +1 -0
  369. package/dist/generated/subgraph.cjs +675 -0
  370. package/dist/generated/subgraph.cjs.map +1 -0
  371. package/dist/generated/subgraph.d.ts +5978 -0
  372. package/dist/generated/subgraph.js +644 -0
  373. package/dist/generated/subgraph.js.map +1 -0
  374. package/dist/index.browser.d.ts +46 -37588
  375. package/dist/index.browser.js +76 -47362
  376. package/dist/index.browser.js.map +1 -1
  377. package/dist/index.cjs +5 -0
  378. package/dist/index.cjs.map +1 -0
  379. package/dist/index.d.ts +0 -0
  380. package/dist/index.js +4 -0
  381. package/dist/index.js.map +1 -0
  382. package/dist/index.node.cjs +97 -47853
  383. package/dist/index.node.cjs.map +1 -1
  384. package/dist/index.node.d.ts +54 -37731
  385. package/dist/index.node.js +79 -47738
  386. package/dist/index.node.js.map +1 -1
  387. package/dist/node.cjs +2 -321
  388. package/dist/node.cjs.map +1 -1
  389. package/dist/node.d.ts +42 -1
  390. package/dist/node.js +1 -307
  391. package/dist/node.js.map +1 -1
  392. package/dist/platform/browser-only.cjs +37 -0
  393. package/dist/platform/browser-only.cjs.map +1 -0
  394. package/dist/platform/browser-only.d.ts +22 -0
  395. package/dist/platform/browser-only.js +12 -0
  396. package/dist/platform/browser-only.js.map +1 -0
  397. package/dist/platform/browser-only.test.d.ts +1 -0
  398. package/dist/platform/browser-safe.cjs +57 -0
  399. package/dist/platform/browser-safe.cjs.map +1 -0
  400. package/dist/platform/browser-safe.d.ts +29 -0
  401. package/dist/platform/browser-safe.js +31 -0
  402. package/dist/platform/browser-safe.js.map +1 -0
  403. package/dist/platform/browser-safe.test.d.ts +1 -0
  404. package/dist/platform/browser.cjs +488 -0
  405. package/dist/platform/browser.cjs.map +1 -0
  406. package/dist/platform/browser.d.ts +291 -0
  407. package/dist/platform/browser.js +454 -0
  408. package/dist/platform/browser.js.map +1 -0
  409. package/dist/platform/browser.test.d.ts +1 -0
  410. package/dist/platform/index.cjs +50 -0
  411. package/dist/platform/index.cjs.map +1 -0
  412. package/dist/platform/index.d.ts +11 -0
  413. package/dist/platform/index.js +27 -0
  414. package/dist/platform/index.js.map +1 -0
  415. package/dist/platform/interface.cjs +17 -0
  416. package/dist/platform/interface.cjs.map +1 -0
  417. package/dist/platform/interface.d.ts +409 -0
  418. package/dist/platform/interface.js +1 -0
  419. package/dist/platform/interface.js.map +1 -0
  420. package/dist/platform/node.cjs +512 -0
  421. package/dist/platform/node.cjs.map +1 -0
  422. package/dist/platform/node.d.ts +86 -0
  423. package/dist/platform/node.js +481 -0
  424. package/dist/platform/node.js.map +1 -0
  425. package/dist/platform/ports/openpgp-port.cjs +74 -0
  426. package/dist/platform/ports/openpgp-port.cjs.map +1 -0
  427. package/dist/platform/ports/openpgp-port.d.ts +13 -0
  428. package/dist/platform/ports/openpgp-port.js +59 -0
  429. package/dist/platform/ports/openpgp-port.js.map +1 -0
  430. package/dist/platform/ports/pgp-port.cjs +17 -0
  431. package/dist/platform/ports/pgp-port.cjs.map +1 -0
  432. package/dist/platform/ports/pgp-port.d.ts +35 -0
  433. package/dist/platform/ports/pgp-port.js +1 -0
  434. package/dist/platform/ports/pgp-port.js.map +1 -0
  435. package/dist/platform/shared/error-utils.cjs +43 -0
  436. package/dist/platform/shared/error-utils.cjs.map +1 -0
  437. package/dist/platform/shared/error-utils.d.ts +23 -0
  438. package/dist/platform/shared/error-utils.js +18 -0
  439. package/dist/platform/shared/error-utils.js.map +1 -0
  440. package/dist/platform/shared/pgp-utils.cjs +55 -0
  441. package/dist/platform/shared/pgp-utils.cjs.map +1 -0
  442. package/dist/platform/shared/pgp-utils.d.ts +59 -0
  443. package/dist/platform/shared/pgp-utils.js +29 -0
  444. package/dist/platform/shared/pgp-utils.js.map +1 -0
  445. package/dist/platform/shared/stream-utils.cjs +49 -0
  446. package/dist/platform/shared/stream-utils.cjs.map +1 -0
  447. package/dist/platform/shared/stream-utils.d.ts +14 -0
  448. package/dist/platform/shared/stream-utils.js +25 -0
  449. package/dist/platform/shared/stream-utils.js.map +1 -0
  450. package/dist/platform/utils.cjs +114 -0
  451. package/dist/platform/utils.cjs.map +1 -0
  452. package/dist/platform/utils.d.ts +49 -0
  453. package/dist/platform/utils.js +76 -0
  454. package/dist/platform/utils.js.map +1 -0
  455. package/dist/platform/utils.test.d.ts +1 -0
  456. package/dist/platform.browser.d.ts +6 -57
  457. package/dist/platform.browser.js +10 -379
  458. package/dist/platform.browser.js.map +1 -1
  459. package/dist/platform.cjs +14 -708
  460. package/dist/platform.cjs.map +1 -1
  461. package/dist/platform.d.ts +11 -2
  462. package/dist/platform.js +14 -694
  463. package/dist/platform.js.map +1 -1
  464. package/dist/platform.node.cjs +14 -708
  465. package/dist/platform.node.cjs.map +1 -1
  466. package/dist/platform.node.d.ts +7 -102
  467. package/dist/platform.node.js +14 -694
  468. package/dist/platform.node.js.map +1 -1
  469. package/dist/schemas/dataSchema.schema.json +53 -0
  470. package/dist/schemas/grantFile.schema.json +43 -0
  471. package/dist/server/relayerHandler.cjs +228 -0
  472. package/dist/server/relayerHandler.cjs.map +1 -0
  473. package/dist/server/relayerHandler.d.ts +36 -0
  474. package/dist/server/relayerHandler.js +204 -0
  475. package/dist/server/relayerHandler.js.map +1 -0
  476. package/dist/storage/index.cjs +44 -0
  477. package/dist/storage/index.cjs.map +1 -0
  478. package/dist/storage/index.d.ts +56 -0
  479. package/dist/storage/index.js +15 -0
  480. package/dist/storage/index.js.map +1 -0
  481. package/dist/storage/manager.cjs +272 -0
  482. package/dist/storage/manager.cjs.map +1 -0
  483. package/dist/storage/manager.d.ts +241 -0
  484. package/dist/storage/manager.js +248 -0
  485. package/dist/storage/manager.js.map +1 -0
  486. package/dist/storage/providers/callback-storage.cjs +248 -0
  487. package/dist/storage/providers/callback-storage.cjs.map +1 -0
  488. package/dist/storage/providers/callback-storage.d.ts +183 -0
  489. package/dist/storage/providers/callback-storage.js +226 -0
  490. package/dist/storage/providers/callback-storage.js.map +1 -0
  491. package/dist/storage/providers/google-drive.cjs +516 -0
  492. package/dist/storage/providers/google-drive.cjs.map +1 -0
  493. package/dist/storage/providers/google-drive.d.ts +152 -0
  494. package/dist/storage/providers/google-drive.js +494 -0
  495. package/dist/storage/providers/google-drive.js.map +1 -0
  496. package/dist/storage/providers/google-drive.test.d.ts +1 -0
  497. package/dist/storage/providers/ipfs.cjs +283 -0
  498. package/dist/storage/providers/ipfs.cjs.map +1 -0
  499. package/dist/storage/providers/ipfs.d.ts +160 -0
  500. package/dist/storage/providers/ipfs.js +261 -0
  501. package/dist/storage/providers/ipfs.js.map +1 -0
  502. package/dist/storage/providers/pinata.cjs +339 -0
  503. package/dist/storage/providers/pinata.cjs.map +1 -0
  504. package/dist/storage/providers/pinata.d.ts +168 -0
  505. package/dist/storage/providers/pinata.js +317 -0
  506. package/dist/storage/providers/pinata.js.map +1 -0
  507. package/dist/storage/tests/callbackStorage.test.d.ts +1 -0
  508. package/dist/storage/tests/googleDriveStorage.test.d.ts +1 -0
  509. package/dist/storage/tests/ipfsStorage.test.d.ts +1 -0
  510. package/dist/storage/tests/pinataStorage.test.d.ts +1 -0
  511. package/dist/storage/tests/storageManager.test.d.ts +1 -0
  512. package/dist/tests/abi.test.d.ts +1 -0
  513. package/dist/tests/chains-definitions.test.d.ts +1 -0
  514. package/dist/tests/core-encryption.test.d.ts +1 -0
  515. package/dist/tests/core-extended.test.d.ts +1 -0
  516. package/dist/tests/core-generics-coverage.test.d.ts +1 -0
  517. package/dist/tests/coverage-boost.test.d.ts +1 -0
  518. package/dist/tests/crypto-cross-platform-compatibility.test.d.ts +1 -0
  519. package/dist/tests/data-addfile-permissions-schema.test.d.ts +1 -0
  520. package/dist/tests/data-additional-methods.test.d.ts +1 -0
  521. package/dist/tests/data-controller-edge-cases.test.d.ts +1 -0
  522. package/dist/tests/data-ipfs-gateways.test.d.ts +1 -0
  523. package/dist/tests/data-relayer.test.d.ts +1 -0
  524. package/dist/tests/data-schema-validation.test.d.ts +1 -0
  525. package/dist/tests/data-simple-methods.test.d.ts +1 -0
  526. package/dist/tests/data.test.d.ts +1 -0
  527. package/dist/tests/demo-integration.test.d.ts +1 -0
  528. package/dist/tests/demo-trusted-server-integration.test.d.ts +1 -0
  529. package/dist/tests/download-relayer.test.d.ts +1 -0
  530. package/dist/tests/dual-mode-permissions.test.d.ts +1 -0
  531. package/dist/tests/dual-mode-trusted-servers.test.d.ts +1 -0
  532. package/dist/tests/encryption-correct-implementation.test.d.ts +1 -0
  533. package/dist/tests/encryption-coverage.test.d.ts +1 -0
  534. package/dist/tests/encryption-edge-cases.test.d.ts +1 -0
  535. package/dist/tests/encryption-utils-updated.test.d.ts +1 -0
  536. package/dist/tests/errors-coverage.test.d.ts +1 -0
  537. package/dist/tests/errors.test.d.ts +1 -0
  538. package/dist/tests/factories/mockFactory.d.ts +316 -0
  539. package/dist/tests/fakes/FakeStorageManager.d.ts +200 -0
  540. package/dist/tests/fakes/FakeStorageManager.test.d.ts +1 -0
  541. package/dist/tests/fakes/FakeWaitForTransactionEvents.d.ts +170 -0
  542. package/dist/tests/fakes/FakeWaitForTransactionEvents.test.d.ts +1 -0
  543. package/dist/tests/fakes/fake-pgp-port.d.ts +13 -0
  544. package/dist/tests/grantValidation-edge-cases.test.d.ts +1 -0
  545. package/dist/tests/grantValidation-unreachable-branch.test.d.ts +1 -0
  546. package/dist/tests/helper-methods.test.d.ts +1 -0
  547. package/dist/tests/helpers/platformTestHelpers.d.ts +106 -0
  548. package/dist/tests/helpers/typedMocks.d.ts +64 -0
  549. package/dist/tests/index-browser.test.d.ts +1 -0
  550. package/dist/tests/index-node.test.d.ts +1 -0
  551. package/dist/tests/index.test.d.ts +1 -0
  552. package/dist/tests/mocks/platformAdapter.d.ts +12 -0
  553. package/dist/tests/new-permissions-methods.test.d.ts +1 -0
  554. package/dist/tests/no-buffer-browser.test.d.ts +1 -0
  555. package/dist/tests/permissions-grantee.test.d.ts +1 -0
  556. package/dist/tests/permissions-revoke-relayer.test.d.ts +1 -0
  557. package/dist/tests/permissions-schema-validation.test.d.ts +1 -0
  558. package/dist/tests/permissions-server-files.test.d.ts +1 -0
  559. package/dist/tests/permissions-transaction-options.test.d.ts +1 -0
  560. package/dist/tests/permissions-trust-servers.test.d.ts +1 -0
  561. package/dist/tests/permissions.test.d.ts +1 -0
  562. package/dist/tests/personal.test.d.ts +1 -0
  563. package/dist/tests/platform-browser.test.d.ts +1 -0
  564. package/dist/tests/platform-crypto-expanded.test.d.ts +1 -0
  565. package/dist/tests/platform-crypto.test.d.ts +1 -0
  566. package/dist/tests/platform-index.test.d.ts +1 -0
  567. package/dist/tests/platform-node.test.d.ts +1 -0
  568. package/dist/tests/platform-shared-utils.test.d.ts +1 -0
  569. package/dist/tests/platform-updated.test.d.ts +1 -0
  570. package/dist/tests/protocol-additional-methods.test.d.ts +1 -0
  571. package/dist/tests/protocol.test.d.ts +1 -0
  572. package/dist/tests/read-only-mode.test.d.ts +1 -0
  573. package/dist/tests/relayer-integration.test.d.ts +1 -0
  574. package/dist/tests/relayer-unified.test.d.ts +1 -0
  575. package/dist/tests/schemas.test.d.ts +1 -0
  576. package/dist/tests/server-relayer-handler.test.d.ts +1 -0
  577. package/dist/tests/setup.d.ts +7 -0
  578. package/dist/tests/signatureFormatter.test.d.ts +1 -0
  579. package/dist/tests/trusted-server-queries.test.d.ts +1 -0
  580. package/dist/tests/typedDataConverter.test.d.ts +1 -0
  581. package/dist/tests/types-contracts.test.d.ts +1 -0
  582. package/dist/tests/types-data.test.d.ts +1 -0
  583. package/dist/tests/types-external-apis.test.d.ts +1 -0
  584. package/dist/tests/types-generics.test.d.ts +1 -0
  585. package/dist/tests/types-permissions.test.d.ts +1 -0
  586. package/dist/tests/types-upload-params.test.d.ts +1 -0
  587. package/dist/tests/types.test.d.ts +1 -0
  588. package/dist/tests/utils-formatters.test.d.ts +1 -0
  589. package/dist/tests/utils-grantFiles-edge-cases.test.d.ts +1 -0
  590. package/dist/tests/utils-grantFiles-validation.test.d.ts +1 -0
  591. package/dist/tests/utils-grantFiles.test.d.ts +1 -0
  592. package/dist/tests/utils-grantValidation-consolidated.test.d.ts +1 -0
  593. package/dist/tests/utils-grants.test.d.ts +1 -0
  594. package/dist/tests/utils-ipfs-additional.test.d.ts +1 -0
  595. package/dist/tests/utils-ipfs.test.d.ts +4 -0
  596. package/dist/tests/utils-schemaValidation.test.d.ts +1 -0
  597. package/dist/tests/vana.test.d.ts +1 -0
  598. package/dist/tests/wallet-crypto-compatibility.test.d.ts +1 -0
  599. package/dist/types/blockchain.cjs +17 -0
  600. package/dist/types/blockchain.cjs.map +1 -0
  601. package/dist/types/blockchain.d.ts +85 -0
  602. package/dist/types/blockchain.js +1 -0
  603. package/dist/types/blockchain.js.map +1 -0
  604. package/dist/types/chains-additional.test.d.ts +1 -0
  605. package/dist/types/chains.cjs +36 -0
  606. package/dist/types/chains.cjs.map +1 -0
  607. package/dist/types/chains.d.ts +98 -0
  608. package/dist/types/chains.js +11 -0
  609. package/dist/types/chains.js.map +1 -0
  610. package/dist/types/config.cjs +51 -0
  611. package/dist/types/config.cjs.map +1 -0
  612. package/dist/types/config.d.ts +688 -0
  613. package/dist/types/config.js +23 -0
  614. package/dist/types/config.js.map +1 -0
  615. package/dist/types/contracts.cjs +17 -0
  616. package/dist/types/contracts.cjs.map +1 -0
  617. package/dist/types/contracts.d.ts +129 -0
  618. package/dist/types/contracts.js +1 -0
  619. package/dist/types/contracts.js.map +1 -0
  620. package/dist/types/controller-context.cjs +17 -0
  621. package/dist/types/controller-context.cjs.map +1 -0
  622. package/dist/types/controller-context.d.ts +65 -0
  623. package/dist/types/controller-context.js +1 -0
  624. package/dist/types/controller-context.js.map +1 -0
  625. package/dist/types/data.cjs +17 -0
  626. package/dist/types/data.cjs.map +1 -0
  627. package/dist/types/data.d.ts +760 -0
  628. package/dist/types/data.js +1 -0
  629. package/dist/types/data.js.map +1 -0
  630. package/dist/types/eccrypto-js.d.cjs +2 -0
  631. package/dist/types/eccrypto-js.d.cjs.map +1 -0
  632. package/dist/types/eccrypto-js.d.js +1 -0
  633. package/dist/types/eccrypto-js.d.js.map +1 -0
  634. package/dist/types/external-apis.cjs +61 -0
  635. package/dist/types/external-apis.cjs.map +1 -0
  636. package/dist/types/external-apis.d.ts +184 -0
  637. package/dist/types/external-apis.js +34 -0
  638. package/dist/types/external-apis.js.map +1 -0
  639. package/dist/types/generics.cjs +17 -0
  640. package/dist/types/generics.cjs.map +1 -0
  641. package/dist/types/generics.d.ts +518 -0
  642. package/dist/types/generics.js +1 -0
  643. package/dist/types/generics.js.map +1 -0
  644. package/dist/types/index.cjs +65 -0
  645. package/dist/types/index.cjs.map +1 -0
  646. package/dist/types/index.d.ts +45 -0
  647. package/dist/types/index.js +42 -0
  648. package/dist/types/index.js.map +1 -0
  649. package/dist/types/operations.cjs +65 -0
  650. package/dist/types/operations.cjs.map +1 -0
  651. package/dist/types/operations.d.ts +229 -0
  652. package/dist/types/operations.js +37 -0
  653. package/dist/types/operations.js.map +1 -0
  654. package/dist/types/permissions.cjs +17 -0
  655. package/dist/types/permissions.cjs.map +1 -0
  656. package/dist/types/permissions.d.ts +949 -0
  657. package/dist/types/permissions.js +1 -0
  658. package/dist/types/permissions.js.map +1 -0
  659. package/dist/types/personal.cjs +17 -0
  660. package/dist/types/personal.cjs.map +1 -0
  661. package/dist/types/personal.d.ts +155 -0
  662. package/dist/types/personal.js +1 -0
  663. package/dist/types/personal.js.map +1 -0
  664. package/dist/types/relayer.cjs +17 -0
  665. package/dist/types/relayer.cjs.map +1 -0
  666. package/dist/types/relayer.d.ts +516 -0
  667. package/dist/types/relayer.js +1 -0
  668. package/dist/types/relayer.js.map +1 -0
  669. package/dist/types/storage.cjs +39 -0
  670. package/dist/types/storage.cjs.map +1 -0
  671. package/dist/types/storage.d.ts +117 -0
  672. package/dist/types/storage.js +15 -0
  673. package/dist/types/storage.js.map +1 -0
  674. package/dist/types/transactionResults.cjs +17 -0
  675. package/dist/types/transactionResults.cjs.map +1 -0
  676. package/dist/types/transactionResults.d.ts +193 -0
  677. package/dist/types/transactionResults.js +1 -0
  678. package/dist/types/transactionResults.js.map +1 -0
  679. package/dist/types/utils.cjs +17 -0
  680. package/dist/types/utils.cjs.map +1 -0
  681. package/dist/types/utils.d.ts +820 -0
  682. package/dist/types/utils.js +1 -0
  683. package/dist/types/utils.js.map +1 -0
  684. package/dist/types.cjs +23 -0
  685. package/dist/types.cjs.map +1 -0
  686. package/dist/types.d.ts +30 -0
  687. package/dist/types.js +2 -0
  688. package/dist/types.js.map +1 -0
  689. package/dist/utils/__tests__/parseTransaction.test.d.ts +1 -0
  690. package/dist/utils/__tests__/pojo-serialization.test.d.ts +1 -0
  691. package/dist/utils/__tests__/signatureCache.test.d.ts +1 -0
  692. package/dist/utils/__tests__/transaction-edge-cases.test.d.ts +1 -0
  693. package/dist/utils/__tests__/transactionHelpers.test.d.ts +1 -0
  694. package/dist/utils/__tests__/urlResolver.test.d.ts +4 -0
  695. package/dist/utils/blockchain/registry.cjs +81 -0
  696. package/dist/utils/blockchain/registry.cjs.map +1 -0
  697. package/dist/utils/blockchain/registry.d.ts +32 -0
  698. package/dist/utils/blockchain/registry.js +56 -0
  699. package/dist/utils/blockchain/registry.js.map +1 -0
  700. package/dist/utils/blockchain/registry.test.d.ts +1 -0
  701. package/dist/utils/crypto-utils.cjs +108 -0
  702. package/dist/utils/crypto-utils.cjs.map +1 -0
  703. package/dist/utils/crypto-utils.d.ts +100 -0
  704. package/dist/utils/crypto-utils.js +76 -0
  705. package/dist/utils/crypto-utils.js.map +1 -0
  706. package/dist/utils/crypto-utils.test.d.ts +1 -0
  707. package/dist/utils/download.cjs +69 -0
  708. package/dist/utils/download.cjs.map +1 -0
  709. package/dist/utils/download.d.ts +40 -0
  710. package/dist/utils/download.js +45 -0
  711. package/dist/utils/download.js.map +1 -0
  712. package/dist/utils/encoding.cjs +66 -0
  713. package/dist/utils/encoding.cjs.map +1 -0
  714. package/dist/utils/encoding.d.ts +52 -0
  715. package/dist/utils/encoding.js +39 -0
  716. package/dist/utils/encoding.js.map +1 -0
  717. package/dist/utils/encoding.test.d.ts +1 -0
  718. package/dist/utils/encryption.cjs +176 -0
  719. package/dist/utils/encryption.cjs.map +1 -0
  720. package/dist/utils/encryption.d.ts +271 -0
  721. package/dist/utils/encryption.js +142 -0
  722. package/dist/utils/encryption.js.map +1 -0
  723. package/dist/utils/formatters.cjs +55 -0
  724. package/dist/utils/formatters.cjs.map +1 -0
  725. package/dist/utils/formatters.d.ts +118 -0
  726. package/dist/utils/formatters.js +28 -0
  727. package/dist/utils/formatters.js.map +1 -0
  728. package/dist/utils/grantFiles.cjs +178 -0
  729. package/dist/utils/grantFiles.cjs.map +1 -0
  730. package/dist/utils/grantFiles.d.ts +172 -0
  731. package/dist/utils/grantFiles.js +140 -0
  732. package/dist/utils/grantFiles.js.map +1 -0
  733. package/dist/utils/grantValidation.cjs +243 -0
  734. package/dist/utils/grantValidation.cjs.map +1 -0
  735. package/dist/utils/grantValidation.d.ts +226 -0
  736. package/dist/utils/grantValidation.js +201 -0
  737. package/dist/utils/grantValidation.js.map +1 -0
  738. package/dist/utils/grants.cjs +108 -0
  739. package/dist/utils/grants.cjs.map +1 -0
  740. package/dist/utils/grants.d.ts +148 -0
  741. package/dist/utils/grants.js +82 -0
  742. package/dist/utils/grants.js.map +1 -0
  743. package/dist/utils/ipfs.cjs +130 -0
  744. package/dist/utils/ipfs.cjs.map +1 -0
  745. package/dist/utils/ipfs.d.ts +88 -0
  746. package/dist/utils/ipfs.js +99 -0
  747. package/dist/utils/ipfs.js.map +1 -0
  748. package/dist/utils/lazy-import.cjs +38 -0
  749. package/dist/utils/lazy-import.cjs.map +1 -0
  750. package/dist/utils/lazy-import.d.ts +43 -0
  751. package/dist/utils/lazy-import.js +14 -0
  752. package/dist/utils/lazy-import.js.map +1 -0
  753. package/dist/utils/multicall.cjs +233 -0
  754. package/dist/utils/multicall.cjs.map +1 -0
  755. package/dist/utils/multicall.d.ts +126 -0
  756. package/dist/utils/multicall.js +208 -0
  757. package/dist/utils/multicall.js.map +1 -0
  758. package/dist/utils/parseTransactionPojo.cjs +87 -0
  759. package/dist/utils/parseTransactionPojo.cjs.map +1 -0
  760. package/dist/utils/parseTransactionPojo.d.ts +31 -0
  761. package/dist/utils/parseTransactionPojo.js +63 -0
  762. package/dist/utils/parseTransactionPojo.js.map +1 -0
  763. package/dist/utils/schemaValidation.cjs +258 -0
  764. package/dist/utils/schemaValidation.cjs.map +1 -0
  765. package/dist/utils/schemaValidation.d.ts +168 -0
  766. package/dist/utils/schemaValidation.js +219 -0
  767. package/dist/utils/schemaValidation.js.map +1 -0
  768. package/dist/utils/signatureCache.cjs +192 -0
  769. package/dist/utils/signatureCache.cjs.map +1 -0
  770. package/dist/utils/signatureCache.d.ts +172 -0
  771. package/dist/utils/signatureCache.js +167 -0
  772. package/dist/utils/signatureCache.js.map +1 -0
  773. package/dist/utils/signatureFormatter.cjs +42 -0
  774. package/dist/utils/signatureFormatter.cjs.map +1 -0
  775. package/dist/utils/signatureFormatter.d.ts +36 -0
  776. package/dist/utils/signatureFormatter.js +18 -0
  777. package/dist/utils/signatureFormatter.js.map +1 -0
  778. package/dist/utils/tests/multicall.test.d.ts +1 -0
  779. package/dist/utils/transactionHelpers.cjs +54 -0
  780. package/dist/utils/transactionHelpers.cjs.map +1 -0
  781. package/dist/utils/transactionHelpers.d.ts +80 -0
  782. package/dist/utils/transactionHelpers.js +29 -0
  783. package/dist/utils/transactionHelpers.js.map +1 -0
  784. package/dist/utils/typeGuards.cjs +109 -0
  785. package/dist/utils/typeGuards.cjs.map +1 -0
  786. package/dist/utils/typeGuards.d.ts +138 -0
  787. package/dist/utils/typeGuards.js +74 -0
  788. package/dist/utils/typeGuards.js.map +1 -0
  789. package/dist/utils/typedDataConverter.cjs +43 -0
  790. package/dist/utils/typedDataConverter.cjs.map +1 -0
  791. package/dist/utils/typedDataConverter.d.ts +46 -0
  792. package/dist/utils/typedDataConverter.js +19 -0
  793. package/dist/utils/typedDataConverter.js.map +1 -0
  794. package/dist/utils/urlResolver.cjs +62 -0
  795. package/dist/utils/urlResolver.cjs.map +1 -0
  796. package/dist/utils/urlResolver.d.ts +56 -0
  797. package/dist/utils/urlResolver.js +37 -0
  798. package/dist/utils/urlResolver.js.map +1 -0
  799. package/dist/utils/wallet.cjs +63 -0
  800. package/dist/utils/wallet.cjs.map +1 -0
  801. package/dist/utils/wallet.d.ts +94 -0
  802. package/dist/utils/wallet.js +37 -0
  803. package/dist/utils/wallet.js.map +1 -0
  804. package/dist/utils/withEvents.cjs +44 -0
  805. package/dist/utils/withEvents.cjs.map +1 -0
  806. package/dist/utils/withEvents.d.ts +56 -0
  807. package/dist/utils/withEvents.js +18 -0
  808. package/dist/utils/withEvents.js.map +1 -0
  809. package/package.json +61 -29
  810. package/dist/browser-DY8XDblx.d.ts +0 -241
  811. package/dist/chains.browser.cjs.map +0 -1
  812. package/dist/chains.d.cts +0 -2
  813. package/dist/chains.node.d.cts +0 -2
  814. package/dist/index.d.cts +0 -2
  815. package/dist/node-D9-F9uEP.d.cts +0 -238
  816. package/dist/node-D9-F9uEP.d.ts +0 -238
  817. package/dist/node.d.cts +0 -1
  818. package/dist/platform.d.cts +0 -2
  819. package/dist/platform.node.d.cts +0 -105
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/dist/types.cjs ADDED
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var types_exports = {};
17
+ module.exports = __toCommonJS(types_exports);
18
+ __reExport(types_exports, require("./types/index"), module.exports);
19
+ // Annotate the CommonJS export names for ESM import in node:
20
+ 0 && (module.exports = {
21
+ ...require("./types/index")
22
+ });
23
+ //# sourceMappingURL=types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types.ts"],"sourcesContent":["// Re-export all types from the new modular structure\nexport * from \"./types/index\";\n\n// Also re-export legacy types for backward compatibility\n// These were previously defined in this file and are now in the types module\nimport type { Address } from \"viem\";\n\n/**\n * Represents a user's registered data file.\n */\nexport interface UserFile {\n /** Unique identifier for the file */\n id: number;\n /** URL where the file is stored */\n url: string;\n /** EVM address of the file owner */\n ownerAddress: Address;\n /** Block number when the file was added to the registry */\n addedAtBlock: bigint;\n}\n\n/**\n * Parameters for the `vana.permissions.grant` method.\n */\nexport interface GrantPermissionParams {\n /** The on-chain identity of the application */\n grantee: Address;\n /** The class of computation, e.g., \"llm_inference\" */\n operation: string;\n /** Array of file IDs to grant permission for */\n files: number[];\n /** The full, off-chain parameters (e.g., LLM prompt) */\n parameters: Record<string, unknown>;\n /** Optional pre-stored grant URL to avoid duplicate IPFS storage */\n grantUrl?: string;\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AACA,0BAAc,0BADd;","names":[]}
@@ -0,0 +1,30 @@
1
+ export * from "./types/index";
2
+ import type { Address } from "viem";
3
+ /**
4
+ * Represents a user's registered data file.
5
+ */
6
+ export interface UserFile {
7
+ /** Unique identifier for the file */
8
+ id: number;
9
+ /** URL where the file is stored */
10
+ url: string;
11
+ /** EVM address of the file owner */
12
+ ownerAddress: Address;
13
+ /** Block number when the file was added to the registry */
14
+ addedAtBlock: bigint;
15
+ }
16
+ /**
17
+ * Parameters for the `vana.permissions.grant` method.
18
+ */
19
+ export interface GrantPermissionParams {
20
+ /** The on-chain identity of the application */
21
+ grantee: Address;
22
+ /** The class of computation, e.g., "llm_inference" */
23
+ operation: string;
24
+ /** Array of file IDs to grant permission for */
25
+ files: number[];
26
+ /** The full, off-chain parameters (e.g., LLM prompt) */
27
+ parameters: Record<string, unknown>;
28
+ /** Optional pre-stored grant URL to avoid duplicate IPFS storage */
29
+ grantUrl?: string;
30
+ }
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./types/index";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types.ts"],"sourcesContent":["// Re-export all types from the new modular structure\nexport * from \"./types/index\";\n\n// Also re-export legacy types for backward compatibility\n// These were previously defined in this file and are now in the types module\nimport type { Address } from \"viem\";\n\n/**\n * Represents a user's registered data file.\n */\nexport interface UserFile {\n /** Unique identifier for the file */\n id: number;\n /** URL where the file is stored */\n url: string;\n /** EVM address of the file owner */\n ownerAddress: Address;\n /** Block number when the file was added to the registry */\n addedAtBlock: bigint;\n}\n\n/**\n * Parameters for the `vana.permissions.grant` method.\n */\nexport interface GrantPermissionParams {\n /** The on-chain identity of the application */\n grantee: Address;\n /** The class of computation, e.g., \"llm_inference\" */\n operation: string;\n /** Array of file IDs to grant permission for */\n files: number[];\n /** The full, off-chain parameters (e.g., LLM prompt) */\n parameters: Record<string, unknown>;\n /** Optional pre-stored grant URL to avoid duplicate IPFS storage */\n grantUrl?: string;\n}\n"],"mappings":"AACA,cAAc;","names":[]}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Tests for URL resolver utilities
3
+ */
4
+ export {};
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var registry_exports = {};
20
+ __export(registry_exports, {
21
+ fetchSchemaCountFromChain: () => fetchSchemaCountFromChain,
22
+ fetchSchemaFromChain: () => fetchSchemaFromChain
23
+ });
24
+ module.exports = __toCommonJS(registry_exports);
25
+ var import_viem = require("viem");
26
+ var import_addresses = require("../../config/addresses");
27
+ var import_abi = require("../../generated/abi");
28
+ async function fetchSchemaFromChain(context, schemaId) {
29
+ const chainId = context.walletClient?.chain?.id ?? context.publicClient.chain?.id;
30
+ if (!chainId) {
31
+ throw new Error("Chain ID not available");
32
+ }
33
+ const dataRefinerRegistryAddress = (0, import_addresses.getContractAddress)(
34
+ chainId,
35
+ "DataRefinerRegistry"
36
+ );
37
+ const dataRefinerRegistryAbi = (0, import_abi.getAbi)("DataRefinerRegistry");
38
+ const dataRefinerRegistry = (0, import_viem.getContract)({
39
+ address: dataRefinerRegistryAddress,
40
+ abi: dataRefinerRegistryAbi,
41
+ client: context.publicClient
42
+ });
43
+ const schemaData = await dataRefinerRegistry.read.schemas([BigInt(schemaId)]);
44
+ if (!schemaData) {
45
+ throw new Error(`Schema with ID ${schemaId} not found`);
46
+ }
47
+ const schemaObj = schemaData;
48
+ if (!schemaObj.name || !schemaObj.dialect || !schemaObj.definitionUrl) {
49
+ throw new Error("Incomplete schema data");
50
+ }
51
+ return {
52
+ id: schemaId,
53
+ name: schemaObj.name,
54
+ dialect: schemaObj.dialect,
55
+ definitionUrl: schemaObj.definitionUrl
56
+ };
57
+ }
58
+ async function fetchSchemaCountFromChain(context) {
59
+ const chainId = context.walletClient?.chain?.id ?? context.publicClient.chain?.id;
60
+ if (!chainId) {
61
+ throw new Error("Chain ID not available");
62
+ }
63
+ const dataRefinerRegistryAddress = (0, import_addresses.getContractAddress)(
64
+ chainId,
65
+ "DataRefinerRegistry"
66
+ );
67
+ const dataRefinerRegistryAbi = (0, import_abi.getAbi)("DataRefinerRegistry");
68
+ const dataRefinerRegistry = (0, import_viem.getContract)({
69
+ address: dataRefinerRegistryAddress,
70
+ abi: dataRefinerRegistryAbi,
71
+ client: context.publicClient
72
+ });
73
+ const count = await dataRefinerRegistry.read.schemasCount();
74
+ return Number(count);
75
+ }
76
+ // Annotate the CommonJS export names for ESM import in node:
77
+ 0 && (module.exports = {
78
+ fetchSchemaCountFromChain,
79
+ fetchSchemaFromChain
80
+ });
81
+ //# sourceMappingURL=registry.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/blockchain/registry.ts"],"sourcesContent":["import { getContract } from \"viem\";\nimport type { PublicClient, WalletClient } from \"viem\";\nimport { getContractAddress } from \"../../config/addresses\";\nimport { getAbi } from \"../../generated/abi\";\nimport type { SchemaMetadata } from \"../../types/index\";\n\n/**\n * Shared context for blockchain operations.\n * Only includes the minimal required fields to avoid coupling.\n */\ninterface BlockchainContext {\n walletClient?: WalletClient;\n publicClient: PublicClient;\n}\n\n/**\n * Contract data structure returned by the blockchain.\n *\n * @internal\n */\ninterface SchemaContractData {\n name: string;\n dialect: string;\n definitionUrl: string;\n}\n\n/**\n * Fetches schema metadata from the blockchain by its ID.\n *\n * @param context - The blockchain context containing wallet and public clients\n * @param schemaId - The ID of the schema to fetch\n * @returns The schema metadata with id, name, dialect, and definitionUrl\n * @throws Error if chain ID is not available, schema not found, or data is incomplete\n *\n * @internal\n */\nexport async function fetchSchemaFromChain(\n context: BlockchainContext,\n schemaId: number,\n): Promise<SchemaMetadata> {\n const chainId =\n context.walletClient?.chain?.id ?? context.publicClient.chain?.id;\n if (!chainId) {\n throw new Error(\"Chain ID not available\");\n }\n\n const dataRefinerRegistryAddress = getContractAddress(\n chainId,\n \"DataRefinerRegistry\",\n );\n const dataRefinerRegistryAbi = getAbi(\"DataRefinerRegistry\");\n\n const dataRefinerRegistry = getContract({\n address: dataRefinerRegistryAddress,\n abi: dataRefinerRegistryAbi,\n client: context.publicClient,\n });\n\n const schemaData = await dataRefinerRegistry.read.schemas([BigInt(schemaId)]);\n\n if (!schemaData) {\n throw new Error(`Schema with ID ${schemaId} not found`);\n }\n\n // TODO(TYPES): Contract read returns unknown type from viem library.\n // Future improvement: Create typed contract interface when viem adds support\n // or implement a contract type generator from ABI definitions.\n const schemaObj = schemaData as unknown as SchemaContractData;\n\n if (!schemaObj.name || !schemaObj.dialect || !schemaObj.definitionUrl) {\n throw new Error(\"Incomplete schema data\");\n }\n\n return {\n id: schemaId,\n name: schemaObj.name,\n dialect: schemaObj.dialect as \"json\" | \"sqlite\",\n definitionUrl: schemaObj.definitionUrl,\n };\n}\n\n/**\n * Fetches the total count of schemas from the blockchain.\n *\n * @param context - The blockchain context containing wallet and public clients\n * @returns The total number of schemas\n * @throws Error if chain ID is not available or operation fails\n *\n * @internal\n */\nexport async function fetchSchemaCountFromChain(\n context: BlockchainContext,\n): Promise<number> {\n const chainId =\n context.walletClient?.chain?.id ?? context.publicClient.chain?.id;\n if (!chainId) {\n throw new Error(\"Chain ID not available\");\n }\n\n const dataRefinerRegistryAddress = getContractAddress(\n chainId,\n \"DataRefinerRegistry\",\n );\n const dataRefinerRegistryAbi = getAbi(\"DataRefinerRegistry\");\n\n const dataRefinerRegistry = getContract({\n address: dataRefinerRegistryAddress,\n abi: dataRefinerRegistryAbi,\n client: context.publicClient,\n });\n\n const count = await dataRefinerRegistry.read.schemasCount();\n return Number(count);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA4B;AAE5B,uBAAmC;AACnC,iBAAuB;AAiCvB,eAAsB,qBACpB,SACA,UACyB;AACzB,QAAM,UACJ,QAAQ,cAAc,OAAO,MAAM,QAAQ,aAAa,OAAO;AACjE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,QAAM,iCAA6B;AAAA,IACjC;AAAA,IACA;AAAA,EACF;AACA,QAAM,6BAAyB,mBAAO,qBAAqB;AAE3D,QAAM,0BAAsB,yBAAY;AAAA,IACtC,SAAS;AAAA,IACT,KAAK;AAAA,IACL,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,QAAM,aAAa,MAAM,oBAAoB,KAAK,QAAQ,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE5E,MAAI,CAAC,YAAY;AACf,UAAM,IAAI,MAAM,kBAAkB,QAAQ,YAAY;AAAA,EACxD;AAKA,QAAM,YAAY;AAElB,MAAI,CAAC,UAAU,QAAQ,CAAC,UAAU,WAAW,CAAC,UAAU,eAAe;AACrE,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM,UAAU;AAAA,IAChB,SAAS,UAAU;AAAA,IACnB,eAAe,UAAU;AAAA,EAC3B;AACF;AAWA,eAAsB,0BACpB,SACiB;AACjB,QAAM,UACJ,QAAQ,cAAc,OAAO,MAAM,QAAQ,aAAa,OAAO;AACjE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,QAAM,iCAA6B;AAAA,IACjC;AAAA,IACA;AAAA,EACF;AACA,QAAM,6BAAyB,mBAAO,qBAAqB;AAE3D,QAAM,0BAAsB,yBAAY;AAAA,IACtC,SAAS;AAAA,IACT,KAAK;AAAA,IACL,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,QAAM,QAAQ,MAAM,oBAAoB,KAAK,aAAa;AAC1D,SAAO,OAAO,KAAK;AACrB;","names":[]}
@@ -0,0 +1,32 @@
1
+ import type { PublicClient, WalletClient } from "viem";
2
+ import type { SchemaMetadata } from "../../types/index";
3
+ /**
4
+ * Shared context for blockchain operations.
5
+ * Only includes the minimal required fields to avoid coupling.
6
+ */
7
+ interface BlockchainContext {
8
+ walletClient?: WalletClient;
9
+ publicClient: PublicClient;
10
+ }
11
+ /**
12
+ * Fetches schema metadata from the blockchain by its ID.
13
+ *
14
+ * @param context - The blockchain context containing wallet and public clients
15
+ * @param schemaId - The ID of the schema to fetch
16
+ * @returns The schema metadata with id, name, dialect, and definitionUrl
17
+ * @throws Error if chain ID is not available, schema not found, or data is incomplete
18
+ *
19
+ * @internal
20
+ */
21
+ export declare function fetchSchemaFromChain(context: BlockchainContext, schemaId: number): Promise<SchemaMetadata>;
22
+ /**
23
+ * Fetches the total count of schemas from the blockchain.
24
+ *
25
+ * @param context - The blockchain context containing wallet and public clients
26
+ * @returns The total number of schemas
27
+ * @throws Error if chain ID is not available or operation fails
28
+ *
29
+ * @internal
30
+ */
31
+ export declare function fetchSchemaCountFromChain(context: BlockchainContext): Promise<number>;
32
+ export {};
@@ -0,0 +1,56 @@
1
+ import { getContract } from "viem";
2
+ import { getContractAddress } from "../../config/addresses";
3
+ import { getAbi } from "../../generated/abi";
4
+ async function fetchSchemaFromChain(context, schemaId) {
5
+ const chainId = context.walletClient?.chain?.id ?? context.publicClient.chain?.id;
6
+ if (!chainId) {
7
+ throw new Error("Chain ID not available");
8
+ }
9
+ const dataRefinerRegistryAddress = getContractAddress(
10
+ chainId,
11
+ "DataRefinerRegistry"
12
+ );
13
+ const dataRefinerRegistryAbi = getAbi("DataRefinerRegistry");
14
+ const dataRefinerRegistry = getContract({
15
+ address: dataRefinerRegistryAddress,
16
+ abi: dataRefinerRegistryAbi,
17
+ client: context.publicClient
18
+ });
19
+ const schemaData = await dataRefinerRegistry.read.schemas([BigInt(schemaId)]);
20
+ if (!schemaData) {
21
+ throw new Error(`Schema with ID ${schemaId} not found`);
22
+ }
23
+ const schemaObj = schemaData;
24
+ if (!schemaObj.name || !schemaObj.dialect || !schemaObj.definitionUrl) {
25
+ throw new Error("Incomplete schema data");
26
+ }
27
+ return {
28
+ id: schemaId,
29
+ name: schemaObj.name,
30
+ dialect: schemaObj.dialect,
31
+ definitionUrl: schemaObj.definitionUrl
32
+ };
33
+ }
34
+ async function fetchSchemaCountFromChain(context) {
35
+ const chainId = context.walletClient?.chain?.id ?? context.publicClient.chain?.id;
36
+ if (!chainId) {
37
+ throw new Error("Chain ID not available");
38
+ }
39
+ const dataRefinerRegistryAddress = getContractAddress(
40
+ chainId,
41
+ "DataRefinerRegistry"
42
+ );
43
+ const dataRefinerRegistryAbi = getAbi("DataRefinerRegistry");
44
+ const dataRefinerRegistry = getContract({
45
+ address: dataRefinerRegistryAddress,
46
+ abi: dataRefinerRegistryAbi,
47
+ client: context.publicClient
48
+ });
49
+ const count = await dataRefinerRegistry.read.schemasCount();
50
+ return Number(count);
51
+ }
52
+ export {
53
+ fetchSchemaCountFromChain,
54
+ fetchSchemaFromChain
55
+ };
56
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/blockchain/registry.ts"],"sourcesContent":["import { getContract } from \"viem\";\nimport type { PublicClient, WalletClient } from \"viem\";\nimport { getContractAddress } from \"../../config/addresses\";\nimport { getAbi } from \"../../generated/abi\";\nimport type { SchemaMetadata } from \"../../types/index\";\n\n/**\n * Shared context for blockchain operations.\n * Only includes the minimal required fields to avoid coupling.\n */\ninterface BlockchainContext {\n walletClient?: WalletClient;\n publicClient: PublicClient;\n}\n\n/**\n * Contract data structure returned by the blockchain.\n *\n * @internal\n */\ninterface SchemaContractData {\n name: string;\n dialect: string;\n definitionUrl: string;\n}\n\n/**\n * Fetches schema metadata from the blockchain by its ID.\n *\n * @param context - The blockchain context containing wallet and public clients\n * @param schemaId - The ID of the schema to fetch\n * @returns The schema metadata with id, name, dialect, and definitionUrl\n * @throws Error if chain ID is not available, schema not found, or data is incomplete\n *\n * @internal\n */\nexport async function fetchSchemaFromChain(\n context: BlockchainContext,\n schemaId: number,\n): Promise<SchemaMetadata> {\n const chainId =\n context.walletClient?.chain?.id ?? context.publicClient.chain?.id;\n if (!chainId) {\n throw new Error(\"Chain ID not available\");\n }\n\n const dataRefinerRegistryAddress = getContractAddress(\n chainId,\n \"DataRefinerRegistry\",\n );\n const dataRefinerRegistryAbi = getAbi(\"DataRefinerRegistry\");\n\n const dataRefinerRegistry = getContract({\n address: dataRefinerRegistryAddress,\n abi: dataRefinerRegistryAbi,\n client: context.publicClient,\n });\n\n const schemaData = await dataRefinerRegistry.read.schemas([BigInt(schemaId)]);\n\n if (!schemaData) {\n throw new Error(`Schema with ID ${schemaId} not found`);\n }\n\n // TODO(TYPES): Contract read returns unknown type from viem library.\n // Future improvement: Create typed contract interface when viem adds support\n // or implement a contract type generator from ABI definitions.\n const schemaObj = schemaData as unknown as SchemaContractData;\n\n if (!schemaObj.name || !schemaObj.dialect || !schemaObj.definitionUrl) {\n throw new Error(\"Incomplete schema data\");\n }\n\n return {\n id: schemaId,\n name: schemaObj.name,\n dialect: schemaObj.dialect as \"json\" | \"sqlite\",\n definitionUrl: schemaObj.definitionUrl,\n };\n}\n\n/**\n * Fetches the total count of schemas from the blockchain.\n *\n * @param context - The blockchain context containing wallet and public clients\n * @returns The total number of schemas\n * @throws Error if chain ID is not available or operation fails\n *\n * @internal\n */\nexport async function fetchSchemaCountFromChain(\n context: BlockchainContext,\n): Promise<number> {\n const chainId =\n context.walletClient?.chain?.id ?? context.publicClient.chain?.id;\n if (!chainId) {\n throw new Error(\"Chain ID not available\");\n }\n\n const dataRefinerRegistryAddress = getContractAddress(\n chainId,\n \"DataRefinerRegistry\",\n );\n const dataRefinerRegistryAbi = getAbi(\"DataRefinerRegistry\");\n\n const dataRefinerRegistry = getContract({\n address: dataRefinerRegistryAddress,\n abi: dataRefinerRegistryAbi,\n client: context.publicClient,\n });\n\n const count = await dataRefinerRegistry.read.schemasCount();\n return Number(count);\n}\n"],"mappings":"AAAA,SAAS,mBAAmB;AAE5B,SAAS,0BAA0B;AACnC,SAAS,cAAc;AAiCvB,eAAsB,qBACpB,SACA,UACyB;AACzB,QAAM,UACJ,QAAQ,cAAc,OAAO,MAAM,QAAQ,aAAa,OAAO;AACjE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,QAAM,6BAA6B;AAAA,IACjC;AAAA,IACA;AAAA,EACF;AACA,QAAM,yBAAyB,OAAO,qBAAqB;AAE3D,QAAM,sBAAsB,YAAY;AAAA,IACtC,SAAS;AAAA,IACT,KAAK;AAAA,IACL,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,QAAM,aAAa,MAAM,oBAAoB,KAAK,QAAQ,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE5E,MAAI,CAAC,YAAY;AACf,UAAM,IAAI,MAAM,kBAAkB,QAAQ,YAAY;AAAA,EACxD;AAKA,QAAM,YAAY;AAElB,MAAI,CAAC,UAAU,QAAQ,CAAC,UAAU,WAAW,CAAC,UAAU,eAAe;AACrE,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,SAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM,UAAU;AAAA,IAChB,SAAS,UAAU;AAAA,IACnB,eAAe,UAAU;AAAA,EAC3B;AACF;AAWA,eAAsB,0BACpB,SACiB;AACjB,QAAM,UACJ,QAAQ,cAAc,OAAO,MAAM,QAAQ,aAAa,OAAO;AACjE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,QAAM,6BAA6B;AAAA,IACjC;AAAA,IACA;AAAA,EACF;AACA,QAAM,yBAAyB,OAAO,qBAAqB;AAE3D,QAAM,sBAAsB,YAAY;AAAA,IACtC,SAAS;AAAA,IACT,KAAK;AAAA,IACL,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,QAAM,QAAQ,MAAM,oBAAoB,KAAK,aAAa;AAC1D,SAAO,OAAO,KAAK;AACrB;","names":[]}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var crypto_utils_exports = {};
20
+ __export(crypto_utils_exports, {
21
+ assertUncompressedPublicKey: () => assertUncompressedPublicKey,
22
+ bytesEqual: () => bytesEqual,
23
+ copyBytes: () => copyBytes,
24
+ generateSeed: () => generateSeed,
25
+ isValidPrivateKeyFormat: () => isValidPrivateKeyFormat,
26
+ isValidPublicKeyFormat: () => isValidPublicKeyFormat,
27
+ parseEncryptedDataBuffer: () => parseEncryptedDataBuffer,
28
+ processWalletPrivateKey: () => processWalletPrivateKey,
29
+ processWalletPublicKey: () => processWalletPublicKey
30
+ });
31
+ module.exports = __toCommonJS(crypto_utils_exports);
32
+ var import_viem = require("viem");
33
+ function processWalletPublicKey(publicKey) {
34
+ return typeof publicKey === "string" ? (0, import_viem.fromHex)(
35
+ publicKey.startsWith("0x") ? publicKey : `0x${publicKey}`,
36
+ "bytes"
37
+ ) : publicKey;
38
+ }
39
+ function processWalletPrivateKey(privateKey) {
40
+ return typeof privateKey === "string" ? (0, import_viem.fromHex)(
41
+ privateKey.startsWith("0x") ? privateKey : `0x${privateKey}`,
42
+ "bytes"
43
+ ) : privateKey;
44
+ }
45
+ function parseEncryptedDataBuffer(encryptedBuffer) {
46
+ return {
47
+ iv: encryptedBuffer.slice(0, 16),
48
+ ephemPublicKey: encryptedBuffer.slice(16, 81),
49
+ // 65 bytes for uncompressed public key
50
+ ciphertext: encryptedBuffer.slice(81, -32),
51
+ mac: encryptedBuffer.slice(-32)
52
+ };
53
+ }
54
+ function generateSeed(message) {
55
+ const encoder = new TextEncoder();
56
+ return encoder.encode(message);
57
+ }
58
+ function bytesEqual(a, b) {
59
+ if (a.length !== b.length) return false;
60
+ for (let i = 0; i < a.length; i++) {
61
+ if (a[i] !== b[i]) return false;
62
+ }
63
+ return true;
64
+ }
65
+ function copyBytes(bytes) {
66
+ return new Uint8Array(bytes);
67
+ }
68
+ function isValidPublicKeyFormat(publicKey) {
69
+ const len = publicKey.length;
70
+ if (len === 33) {
71
+ return publicKey[0] === 2 || publicKey[0] === 3;
72
+ }
73
+ if (len === 65) {
74
+ return publicKey[0] === 4;
75
+ }
76
+ if (len === 64) {
77
+ return true;
78
+ }
79
+ return false;
80
+ }
81
+ function isValidPrivateKeyFormat(privateKey) {
82
+ return privateKey.length === 32;
83
+ }
84
+ function assertUncompressedPublicKey(publicKey) {
85
+ if (publicKey.length !== 65) {
86
+ throw new Error(
87
+ `Public key must be uncompressed (65 bytes), got ${publicKey.length} bytes. Use provider.normalizeToUncompressed() to convert compressed keys.`
88
+ );
89
+ }
90
+ if (publicKey[0] !== 4) {
91
+ throw new Error(
92
+ `Uncompressed public key must start with 0x04 prefix, got 0x${publicKey[0].toString(16).padStart(2, "0")}`
93
+ );
94
+ }
95
+ }
96
+ // Annotate the CommonJS export names for ESM import in node:
97
+ 0 && (module.exports = {
98
+ assertUncompressedPublicKey,
99
+ bytesEqual,
100
+ copyBytes,
101
+ generateSeed,
102
+ isValidPrivateKeyFormat,
103
+ isValidPublicKeyFormat,
104
+ parseEncryptedDataBuffer,
105
+ processWalletPrivateKey,
106
+ processWalletPublicKey
107
+ });
108
+ //# sourceMappingURL=crypto-utils.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/crypto-utils.ts"],"sourcesContent":["/**\n * Provides platform-agnostic cryptographic utility functions.\n *\n * @remarks\n * This module contains utility functions for cryptographic operations that work\n * consistently across Node.js and browser environments. All functions use `Uint8Array`\n * exclusively for binary data to ensure cross-platform compatibility.\n *\n * @category Cryptography\n */\n\nimport { fromHex } from \"viem\";\n\n/**\n * Processes a wallet public key for cryptographic operations.\n *\n * @remarks\n * Converts hex string public keys to Uint8Array format.\n * For normalization to uncompressed format, use the crypto provider's\n * normalizeToUncompressed method.\n *\n * @param publicKey - The wallet public key as hex string or byte array.\n * @returns The public key as a Uint8Array.\n *\n * @example\n * ```typescript\n * const keyBytes = processWalletPublicKey(\"0x04...\");\n * const normalized = provider.normalizeToUncompressed(keyBytes);\n * ```\n */\nexport function processWalletPublicKey(\n publicKey: string | Uint8Array,\n): Uint8Array {\n // Convert to bytes if hex string\n return typeof publicKey === \"string\"\n ? fromHex(\n (publicKey.startsWith(\"0x\")\n ? publicKey\n : `0x${publicKey}`) as `0x${string}`,\n \"bytes\",\n )\n : publicKey;\n}\n\n/**\n * Processes a wallet private key for cryptographic operations.\n *\n * @param privateKey - The wallet private key as hex string or byte array.\n * @returns The private key as a Uint8Array.\n *\n * @example\n * ```typescript\n * const key = processWalletPrivateKey(\"0x...\");\n * console.log(key.length); // 32 (secp256k1 private key)\n * ```\n */\nexport function processWalletPrivateKey(\n privateKey: string | Uint8Array,\n): Uint8Array {\n // Convert to bytes\n return typeof privateKey === \"string\"\n ? fromHex(\n (privateKey.startsWith(\"0x\")\n ? privateKey\n : `0x${privateKey}`) as `0x${string}`,\n \"bytes\",\n )\n : privateKey;\n}\n\n/**\n * Parses legacy eccrypto-format encrypted data buffer.\n * Format: [iv(16)][ephemPublicKey(65)][ciphertext(variable)][mac(32)]\n *\n * @param encryptedBuffer - Buffer containing encrypted data in eccrypto format\n * @returns Parsed encrypted data components\n */\nexport function parseEncryptedDataBuffer(encryptedBuffer: Uint8Array): {\n iv: Uint8Array;\n ephemPublicKey: Uint8Array;\n ciphertext: Uint8Array;\n mac: Uint8Array;\n} {\n return {\n iv: encryptedBuffer.slice(0, 16),\n ephemPublicKey: encryptedBuffer.slice(16, 81), // 65 bytes for uncompressed public key\n ciphertext: encryptedBuffer.slice(81, -32),\n mac: encryptedBuffer.slice(-32),\n };\n}\n\n/**\n * Generates a deterministic seed from a message for key derivation\n *\n * @param message - Message to derive seed from\n * @returns Seed as Uint8Array\n */\nexport function generateSeed(message: string): Uint8Array {\n // Use encoding utils for consistent string-to-bytes conversion\n const encoder = new TextEncoder();\n return encoder.encode(message);\n}\n\n/**\n * Compares two Uint8Arrays for equality\n *\n * @param a - First array\n * @param b - Second array\n * @returns True if arrays are equal\n */\nexport function bytesEqual(a: Uint8Array, b: Uint8Array): boolean {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n}\n\n/**\n * Creates a copy of a Uint8Array\n *\n * @param bytes - Array to copy\n * @returns New array with same contents\n */\nexport function copyBytes(bytes: Uint8Array): Uint8Array {\n return new Uint8Array(bytes);\n}\n\n/**\n * Validates a secp256k1 public key format\n *\n * @param publicKey - Public key to validate\n * @returns True if valid format (33, 65, or 64 bytes)\n */\nexport function isValidPublicKeyFormat(publicKey: Uint8Array): boolean {\n const len = publicKey.length;\n\n // Compressed (33 bytes)\n if (len === 33) {\n return publicKey[0] === 0x02 || publicKey[0] === 0x03;\n }\n\n // Uncompressed (65 bytes)\n if (len === 65) {\n return publicKey[0] === 0x04;\n }\n\n // Raw coordinates (64 bytes - no prefix)\n if (len === 64) {\n return true;\n }\n\n return false;\n}\n\n/**\n * Validates a secp256k1 private key format\n *\n * @param privateKey - Private key to validate\n * @returns True if valid format (32 bytes)\n */\nexport function isValidPrivateKeyFormat(privateKey: Uint8Array): boolean {\n return privateKey.length === 32;\n}\n\n/**\n * Asserts that a public key is in uncompressed format (65 bytes with 0x04 prefix).\n * This validation function only checks format, it does not transform keys.\n * For key normalization (including decompression), use the crypto provider's\n * normalizeToUncompressed method.\n *\n * @param publicKey - Public key to validate\n * @throws {Error} When public key is not in uncompressed format\n */\nexport function assertUncompressedPublicKey(publicKey: Uint8Array): void {\n if (publicKey.length !== 65) {\n throw new Error(\n `Public key must be uncompressed (65 bytes), got ${publicKey.length} bytes. ` +\n `Use provider.normalizeToUncompressed() to convert compressed keys.`,\n );\n }\n\n if (publicKey[0] !== 0x04) {\n throw new Error(\n `Uncompressed public key must start with 0x04 prefix, got 0x${publicKey[0].toString(16).padStart(2, \"0\")}`,\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWA,kBAAwB;AAmBjB,SAAS,uBACd,WACY;AAEZ,SAAO,OAAO,cAAc,eACxB;AAAA,IACG,UAAU,WAAW,IAAI,IACtB,YACA,KAAK,SAAS;AAAA,IAClB;AAAA,EACF,IACA;AACN;AAcO,SAAS,wBACd,YACY;AAEZ,SAAO,OAAO,eAAe,eACzB;AAAA,IACG,WAAW,WAAW,IAAI,IACvB,aACA,KAAK,UAAU;AAAA,IACnB;AAAA,EACF,IACA;AACN;AASO,SAAS,yBAAyB,iBAKvC;AACA,SAAO;AAAA,IACL,IAAI,gBAAgB,MAAM,GAAG,EAAE;AAAA,IAC/B,gBAAgB,gBAAgB,MAAM,IAAI,EAAE;AAAA;AAAA,IAC5C,YAAY,gBAAgB,MAAM,IAAI,GAAG;AAAA,IACzC,KAAK,gBAAgB,MAAM,GAAG;AAAA,EAChC;AACF;AAQO,SAAS,aAAa,SAA6B;AAExD,QAAM,UAAU,IAAI,YAAY;AAChC,SAAO,QAAQ,OAAO,OAAO;AAC/B;AASO,SAAS,WAAW,GAAe,GAAwB;AAChE,MAAI,EAAE,WAAW,EAAE,OAAQ,QAAO;AAClC,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AACjC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,EAAG,QAAO;AAAA,EAC5B;AACA,SAAO;AACT;AAQO,SAAS,UAAU,OAA+B;AACvD,SAAO,IAAI,WAAW,KAAK;AAC7B;AAQO,SAAS,uBAAuB,WAAgC;AACrE,QAAM,MAAM,UAAU;AAGtB,MAAI,QAAQ,IAAI;AACd,WAAO,UAAU,CAAC,MAAM,KAAQ,UAAU,CAAC,MAAM;AAAA,EACnD;AAGA,MAAI,QAAQ,IAAI;AACd,WAAO,UAAU,CAAC,MAAM;AAAA,EAC1B;AAGA,MAAI,QAAQ,IAAI;AACd,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAQO,SAAS,wBAAwB,YAAiC;AACvE,SAAO,WAAW,WAAW;AAC/B;AAWO,SAAS,4BAA4B,WAA6B;AACvE,MAAI,UAAU,WAAW,IAAI;AAC3B,UAAM,IAAI;AAAA,MACR,mDAAmD,UAAU,MAAM;AAAA,IAErE;AAAA,EACF;AAEA,MAAI,UAAU,CAAC,MAAM,GAAM;AACzB,UAAM,IAAI;AAAA,MACR,8DAA8D,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC;AAAA,IAC1G;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Provides platform-agnostic cryptographic utility functions.
3
+ *
4
+ * @remarks
5
+ * This module contains utility functions for cryptographic operations that work
6
+ * consistently across Node.js and browser environments. All functions use `Uint8Array`
7
+ * exclusively for binary data to ensure cross-platform compatibility.
8
+ *
9
+ * @category Cryptography
10
+ */
11
+ /**
12
+ * Processes a wallet public key for cryptographic operations.
13
+ *
14
+ * @remarks
15
+ * Converts hex string public keys to Uint8Array format.
16
+ * For normalization to uncompressed format, use the crypto provider's
17
+ * normalizeToUncompressed method.
18
+ *
19
+ * @param publicKey - The wallet public key as hex string or byte array.
20
+ * @returns The public key as a Uint8Array.
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * const keyBytes = processWalletPublicKey("0x04...");
25
+ * const normalized = provider.normalizeToUncompressed(keyBytes);
26
+ * ```
27
+ */
28
+ export declare function processWalletPublicKey(publicKey: string | Uint8Array): Uint8Array;
29
+ /**
30
+ * Processes a wallet private key for cryptographic operations.
31
+ *
32
+ * @param privateKey - The wallet private key as hex string or byte array.
33
+ * @returns The private key as a Uint8Array.
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * const key = processWalletPrivateKey("0x...");
38
+ * console.log(key.length); // 32 (secp256k1 private key)
39
+ * ```
40
+ */
41
+ export declare function processWalletPrivateKey(privateKey: string | Uint8Array): Uint8Array;
42
+ /**
43
+ * Parses legacy eccrypto-format encrypted data buffer.
44
+ * Format: [iv(16)][ephemPublicKey(65)][ciphertext(variable)][mac(32)]
45
+ *
46
+ * @param encryptedBuffer - Buffer containing encrypted data in eccrypto format
47
+ * @returns Parsed encrypted data components
48
+ */
49
+ export declare function parseEncryptedDataBuffer(encryptedBuffer: Uint8Array): {
50
+ iv: Uint8Array;
51
+ ephemPublicKey: Uint8Array;
52
+ ciphertext: Uint8Array;
53
+ mac: Uint8Array;
54
+ };
55
+ /**
56
+ * Generates a deterministic seed from a message for key derivation
57
+ *
58
+ * @param message - Message to derive seed from
59
+ * @returns Seed as Uint8Array
60
+ */
61
+ export declare function generateSeed(message: string): Uint8Array;
62
+ /**
63
+ * Compares two Uint8Arrays for equality
64
+ *
65
+ * @param a - First array
66
+ * @param b - Second array
67
+ * @returns True if arrays are equal
68
+ */
69
+ export declare function bytesEqual(a: Uint8Array, b: Uint8Array): boolean;
70
+ /**
71
+ * Creates a copy of a Uint8Array
72
+ *
73
+ * @param bytes - Array to copy
74
+ * @returns New array with same contents
75
+ */
76
+ export declare function copyBytes(bytes: Uint8Array): Uint8Array;
77
+ /**
78
+ * Validates a secp256k1 public key format
79
+ *
80
+ * @param publicKey - Public key to validate
81
+ * @returns True if valid format (33, 65, or 64 bytes)
82
+ */
83
+ export declare function isValidPublicKeyFormat(publicKey: Uint8Array): boolean;
84
+ /**
85
+ * Validates a secp256k1 private key format
86
+ *
87
+ * @param privateKey - Private key to validate
88
+ * @returns True if valid format (32 bytes)
89
+ */
90
+ export declare function isValidPrivateKeyFormat(privateKey: Uint8Array): boolean;
91
+ /**
92
+ * Asserts that a public key is in uncompressed format (65 bytes with 0x04 prefix).
93
+ * This validation function only checks format, it does not transform keys.
94
+ * For key normalization (including decompression), use the crypto provider's
95
+ * normalizeToUncompressed method.
96
+ *
97
+ * @param publicKey - Public key to validate
98
+ * @throws {Error} When public key is not in uncompressed format
99
+ */
100
+ export declare function assertUncompressedPublicKey(publicKey: Uint8Array): void;
@@ -0,0 +1,76 @@
1
+ import { fromHex } from "viem";
2
+ function processWalletPublicKey(publicKey) {
3
+ return typeof publicKey === "string" ? fromHex(
4
+ publicKey.startsWith("0x") ? publicKey : `0x${publicKey}`,
5
+ "bytes"
6
+ ) : publicKey;
7
+ }
8
+ function processWalletPrivateKey(privateKey) {
9
+ return typeof privateKey === "string" ? fromHex(
10
+ privateKey.startsWith("0x") ? privateKey : `0x${privateKey}`,
11
+ "bytes"
12
+ ) : privateKey;
13
+ }
14
+ function parseEncryptedDataBuffer(encryptedBuffer) {
15
+ return {
16
+ iv: encryptedBuffer.slice(0, 16),
17
+ ephemPublicKey: encryptedBuffer.slice(16, 81),
18
+ // 65 bytes for uncompressed public key
19
+ ciphertext: encryptedBuffer.slice(81, -32),
20
+ mac: encryptedBuffer.slice(-32)
21
+ };
22
+ }
23
+ function generateSeed(message) {
24
+ const encoder = new TextEncoder();
25
+ return encoder.encode(message);
26
+ }
27
+ function bytesEqual(a, b) {
28
+ if (a.length !== b.length) return false;
29
+ for (let i = 0; i < a.length; i++) {
30
+ if (a[i] !== b[i]) return false;
31
+ }
32
+ return true;
33
+ }
34
+ function copyBytes(bytes) {
35
+ return new Uint8Array(bytes);
36
+ }
37
+ function isValidPublicKeyFormat(publicKey) {
38
+ const len = publicKey.length;
39
+ if (len === 33) {
40
+ return publicKey[0] === 2 || publicKey[0] === 3;
41
+ }
42
+ if (len === 65) {
43
+ return publicKey[0] === 4;
44
+ }
45
+ if (len === 64) {
46
+ return true;
47
+ }
48
+ return false;
49
+ }
50
+ function isValidPrivateKeyFormat(privateKey) {
51
+ return privateKey.length === 32;
52
+ }
53
+ function assertUncompressedPublicKey(publicKey) {
54
+ if (publicKey.length !== 65) {
55
+ throw new Error(
56
+ `Public key must be uncompressed (65 bytes), got ${publicKey.length} bytes. Use provider.normalizeToUncompressed() to convert compressed keys.`
57
+ );
58
+ }
59
+ if (publicKey[0] !== 4) {
60
+ throw new Error(
61
+ `Uncompressed public key must start with 0x04 prefix, got 0x${publicKey[0].toString(16).padStart(2, "0")}`
62
+ );
63
+ }
64
+ }
65
+ export {
66
+ assertUncompressedPublicKey,
67
+ bytesEqual,
68
+ copyBytes,
69
+ generateSeed,
70
+ isValidPrivateKeyFormat,
71
+ isValidPublicKeyFormat,
72
+ parseEncryptedDataBuffer,
73
+ processWalletPrivateKey,
74
+ processWalletPublicKey
75
+ };
76
+ //# sourceMappingURL=crypto-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/crypto-utils.ts"],"sourcesContent":["/**\n * Provides platform-agnostic cryptographic utility functions.\n *\n * @remarks\n * This module contains utility functions for cryptographic operations that work\n * consistently across Node.js and browser environments. All functions use `Uint8Array`\n * exclusively for binary data to ensure cross-platform compatibility.\n *\n * @category Cryptography\n */\n\nimport { fromHex } from \"viem\";\n\n/**\n * Processes a wallet public key for cryptographic operations.\n *\n * @remarks\n * Converts hex string public keys to Uint8Array format.\n * For normalization to uncompressed format, use the crypto provider's\n * normalizeToUncompressed method.\n *\n * @param publicKey - The wallet public key as hex string or byte array.\n * @returns The public key as a Uint8Array.\n *\n * @example\n * ```typescript\n * const keyBytes = processWalletPublicKey(\"0x04...\");\n * const normalized = provider.normalizeToUncompressed(keyBytes);\n * ```\n */\nexport function processWalletPublicKey(\n publicKey: string | Uint8Array,\n): Uint8Array {\n // Convert to bytes if hex string\n return typeof publicKey === \"string\"\n ? fromHex(\n (publicKey.startsWith(\"0x\")\n ? publicKey\n : `0x${publicKey}`) as `0x${string}`,\n \"bytes\",\n )\n : publicKey;\n}\n\n/**\n * Processes a wallet private key for cryptographic operations.\n *\n * @param privateKey - The wallet private key as hex string or byte array.\n * @returns The private key as a Uint8Array.\n *\n * @example\n * ```typescript\n * const key = processWalletPrivateKey(\"0x...\");\n * console.log(key.length); // 32 (secp256k1 private key)\n * ```\n */\nexport function processWalletPrivateKey(\n privateKey: string | Uint8Array,\n): Uint8Array {\n // Convert to bytes\n return typeof privateKey === \"string\"\n ? fromHex(\n (privateKey.startsWith(\"0x\")\n ? privateKey\n : `0x${privateKey}`) as `0x${string}`,\n \"bytes\",\n )\n : privateKey;\n}\n\n/**\n * Parses legacy eccrypto-format encrypted data buffer.\n * Format: [iv(16)][ephemPublicKey(65)][ciphertext(variable)][mac(32)]\n *\n * @param encryptedBuffer - Buffer containing encrypted data in eccrypto format\n * @returns Parsed encrypted data components\n */\nexport function parseEncryptedDataBuffer(encryptedBuffer: Uint8Array): {\n iv: Uint8Array;\n ephemPublicKey: Uint8Array;\n ciphertext: Uint8Array;\n mac: Uint8Array;\n} {\n return {\n iv: encryptedBuffer.slice(0, 16),\n ephemPublicKey: encryptedBuffer.slice(16, 81), // 65 bytes for uncompressed public key\n ciphertext: encryptedBuffer.slice(81, -32),\n mac: encryptedBuffer.slice(-32),\n };\n}\n\n/**\n * Generates a deterministic seed from a message for key derivation\n *\n * @param message - Message to derive seed from\n * @returns Seed as Uint8Array\n */\nexport function generateSeed(message: string): Uint8Array {\n // Use encoding utils for consistent string-to-bytes conversion\n const encoder = new TextEncoder();\n return encoder.encode(message);\n}\n\n/**\n * Compares two Uint8Arrays for equality\n *\n * @param a - First array\n * @param b - Second array\n * @returns True if arrays are equal\n */\nexport function bytesEqual(a: Uint8Array, b: Uint8Array): boolean {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n}\n\n/**\n * Creates a copy of a Uint8Array\n *\n * @param bytes - Array to copy\n * @returns New array with same contents\n */\nexport function copyBytes(bytes: Uint8Array): Uint8Array {\n return new Uint8Array(bytes);\n}\n\n/**\n * Validates a secp256k1 public key format\n *\n * @param publicKey - Public key to validate\n * @returns True if valid format (33, 65, or 64 bytes)\n */\nexport function isValidPublicKeyFormat(publicKey: Uint8Array): boolean {\n const len = publicKey.length;\n\n // Compressed (33 bytes)\n if (len === 33) {\n return publicKey[0] === 0x02 || publicKey[0] === 0x03;\n }\n\n // Uncompressed (65 bytes)\n if (len === 65) {\n return publicKey[0] === 0x04;\n }\n\n // Raw coordinates (64 bytes - no prefix)\n if (len === 64) {\n return true;\n }\n\n return false;\n}\n\n/**\n * Validates a secp256k1 private key format\n *\n * @param privateKey - Private key to validate\n * @returns True if valid format (32 bytes)\n */\nexport function isValidPrivateKeyFormat(privateKey: Uint8Array): boolean {\n return privateKey.length === 32;\n}\n\n/**\n * Asserts that a public key is in uncompressed format (65 bytes with 0x04 prefix).\n * This validation function only checks format, it does not transform keys.\n * For key normalization (including decompression), use the crypto provider's\n * normalizeToUncompressed method.\n *\n * @param publicKey - Public key to validate\n * @throws {Error} When public key is not in uncompressed format\n */\nexport function assertUncompressedPublicKey(publicKey: Uint8Array): void {\n if (publicKey.length !== 65) {\n throw new Error(\n `Public key must be uncompressed (65 bytes), got ${publicKey.length} bytes. ` +\n `Use provider.normalizeToUncompressed() to convert compressed keys.`,\n );\n }\n\n if (publicKey[0] !== 0x04) {\n throw new Error(\n `Uncompressed public key must start with 0x04 prefix, got 0x${publicKey[0].toString(16).padStart(2, \"0\")}`,\n );\n }\n}\n"],"mappings":"AAWA,SAAS,eAAe;AAmBjB,SAAS,uBACd,WACY;AAEZ,SAAO,OAAO,cAAc,WACxB;AAAA,IACG,UAAU,WAAW,IAAI,IACtB,YACA,KAAK,SAAS;AAAA,IAClB;AAAA,EACF,IACA;AACN;AAcO,SAAS,wBACd,YACY;AAEZ,SAAO,OAAO,eAAe,WACzB;AAAA,IACG,WAAW,WAAW,IAAI,IACvB,aACA,KAAK,UAAU;AAAA,IACnB;AAAA,EACF,IACA;AACN;AASO,SAAS,yBAAyB,iBAKvC;AACA,SAAO;AAAA,IACL,IAAI,gBAAgB,MAAM,GAAG,EAAE;AAAA,IAC/B,gBAAgB,gBAAgB,MAAM,IAAI,EAAE;AAAA;AAAA,IAC5C,YAAY,gBAAgB,MAAM,IAAI,GAAG;AAAA,IACzC,KAAK,gBAAgB,MAAM,GAAG;AAAA,EAChC;AACF;AAQO,SAAS,aAAa,SAA6B;AAExD,QAAM,UAAU,IAAI,YAAY;AAChC,SAAO,QAAQ,OAAO,OAAO;AAC/B;AASO,SAAS,WAAW,GAAe,GAAwB;AAChE,MAAI,EAAE,WAAW,EAAE,OAAQ,QAAO;AAClC,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AACjC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,EAAG,QAAO;AAAA,EAC5B;AACA,SAAO;AACT;AAQO,SAAS,UAAU,OAA+B;AACvD,SAAO,IAAI,WAAW,KAAK;AAC7B;AAQO,SAAS,uBAAuB,WAAgC;AACrE,QAAM,MAAM,UAAU;AAGtB,MAAI,QAAQ,IAAI;AACd,WAAO,UAAU,CAAC,MAAM,KAAQ,UAAU,CAAC,MAAM;AAAA,EACnD;AAGA,MAAI,QAAQ,IAAI;AACd,WAAO,UAAU,CAAC,MAAM;AAAA,EAC1B;AAGA,MAAI,QAAQ,IAAI;AACd,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAQO,SAAS,wBAAwB,YAAiC;AACvE,SAAO,WAAW,WAAW;AAC/B;AAWO,SAAS,4BAA4B,WAA6B;AACvE,MAAI,UAAU,WAAW,IAAI;AAC3B,UAAM,IAAI;AAAA,MACR,mDAAmD,UAAU,MAAM;AAAA,IAErE;AAAA,EACF;AAEA,MAAI,UAAU,CAAC,MAAM,GAAM;AACzB,UAAM,IAAI;AAAA,MACR,8DAA8D,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC;AAAA,IAC1G;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1 @@
1
+ export {};