@opendatalabs/vana-sdk 0.1.0-alpha.ffe4659 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (907) 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/client/__tests__/enhancedResponse.test.d.ts +1 -0
  32. package/dist/client/enhancedResponse.cjs +164 -0
  33. package/dist/client/enhancedResponse.cjs.map +1 -0
  34. package/dist/client/enhancedResponse.d.ts +120 -0
  35. package/dist/client/enhancedResponse.js +138 -0
  36. package/dist/client/enhancedResponse.js.map +1 -0
  37. package/dist/config/addresses.cjs +325 -0
  38. package/dist/config/addresses.cjs.map +1 -0
  39. package/dist/config/addresses.d.ts +364 -0
  40. package/dist/config/addresses.js +295 -0
  41. package/dist/config/addresses.js.map +1 -0
  42. package/dist/config/chains.cjs +93 -0
  43. package/dist/config/chains.cjs.map +1 -0
  44. package/dist/config/chains.d.ts +180 -0
  45. package/dist/config/chains.js +67 -0
  46. package/dist/config/chains.js.map +1 -0
  47. package/dist/config/default-services.cjs +60 -0
  48. package/dist/config/default-services.cjs.map +1 -0
  49. package/dist/config/default-services.d.ts +46 -0
  50. package/dist/config/default-services.js +33 -0
  51. package/dist/config/default-services.js.map +1 -0
  52. package/dist/config/default-services.test.d.ts +1 -0
  53. package/dist/config/features.cjs +52 -0
  54. package/dist/config/features.cjs.map +1 -0
  55. package/dist/config/features.d.ts +62 -0
  56. package/dist/config/features.js +28 -0
  57. package/dist/config/features.js.map +1 -0
  58. package/dist/config/tests/addresses.test.d.ts +1 -0
  59. package/dist/contracts/contractController.cjs +126 -0
  60. package/dist/contracts/contractController.cjs.map +1 -0
  61. package/dist/contracts/contractController.d.ts +135 -0
  62. package/dist/contracts/contractController.js +100 -0
  63. package/dist/contracts/contractController.js.map +1 -0
  64. package/dist/contracts/tests/contractController.test.d.ts +1 -0
  65. package/dist/controllers/__tests__/data-consistency-integration.test.d.ts +7 -0
  66. package/dist/controllers/__tests__/operations.processQueue.test.d.ts +1 -0
  67. package/dist/controllers/__tests__/schemas-edge-cases.test.d.ts +1 -0
  68. package/dist/controllers/base.cjs +116 -0
  69. package/dist/controllers/base.cjs.map +1 -0
  70. package/dist/controllers/base.d.ts +94 -0
  71. package/dist/controllers/base.js +92 -0
  72. package/dist/controllers/base.js.map +1 -0
  73. package/dist/controllers/data-error-handling.test.d.ts +1 -0
  74. package/dist/controllers/data.cjs +2633 -0
  75. package/dist/controllers/data.cjs.map +1 -0
  76. package/dist/controllers/data.d.ts +1067 -0
  77. package/dist/controllers/data.js +2626 -0
  78. package/dist/controllers/data.js.map +1 -0
  79. package/dist/controllers/operations.cjs +430 -0
  80. package/dist/controllers/operations.cjs.map +1 -0
  81. package/dist/controllers/operations.d.ts +229 -0
  82. package/dist/controllers/operations.js +406 -0
  83. package/dist/controllers/operations.js.map +1 -0
  84. package/dist/controllers/permissions.cjs +4363 -0
  85. package/dist/controllers/permissions.cjs.map +1 -0
  86. package/dist/controllers/permissions.d.ts +1411 -0
  87. package/dist/controllers/permissions.js +4339 -0
  88. package/dist/controllers/permissions.js.map +1 -0
  89. package/dist/controllers/protocol.cjs +183 -0
  90. package/dist/controllers/protocol.cjs.map +1 -0
  91. package/dist/controllers/protocol.d.ts +138 -0
  92. package/dist/controllers/protocol.js +163 -0
  93. package/dist/controllers/protocol.js.map +1 -0
  94. package/dist/controllers/schemas.cjs +678 -0
  95. package/dist/controllers/schemas.cjs.map +1 -0
  96. package/dist/controllers/schemas.d.ts +293 -0
  97. package/dist/controllers/schemas.js +654 -0
  98. package/dist/controllers/schemas.js.map +1 -0
  99. package/dist/controllers/server-additional.test.d.ts +1 -0
  100. package/dist/controllers/server.cjs +643 -0
  101. package/dist/controllers/server.cjs.map +1 -0
  102. package/dist/controllers/server.d.ts +322 -0
  103. package/dist/controllers/server.js +624 -0
  104. package/dist/controllers/server.js.map +1 -0
  105. package/dist/core/__tests__/health.test.d.ts +1 -0
  106. package/dist/core/__tests__/inMemoryNonceManager.test.d.ts +1 -0
  107. package/dist/core/__tests__/nonceManager.test.d.ts +1 -0
  108. package/dist/core/__tests__/pollingManager.test.d.ts +4 -0
  109. package/dist/core/apiClient.cjs +378 -0
  110. package/dist/core/apiClient.cjs.map +1 -0
  111. package/dist/core/apiClient.d.ts +286 -0
  112. package/dist/core/apiClient.js +359 -0
  113. package/dist/core/apiClient.js.map +1 -0
  114. package/dist/core/client.cjs +70 -0
  115. package/dist/core/client.cjs.map +1 -0
  116. package/dist/core/client.d.ts +89 -0
  117. package/dist/core/client.js +47 -0
  118. package/dist/core/client.js.map +1 -0
  119. package/dist/core/core.test.d.ts +1 -0
  120. package/dist/core/generics.cjs +417 -0
  121. package/dist/core/generics.cjs.map +1 -0
  122. package/dist/core/generics.d.ts +205 -0
  123. package/dist/core/generics.js +386 -0
  124. package/dist/core/generics.js.map +1 -0
  125. package/dist/core/health.cjs +289 -0
  126. package/dist/core/health.cjs.map +1 -0
  127. package/dist/core/health.d.ts +143 -0
  128. package/dist/core/health.js +265 -0
  129. package/dist/core/health.js.map +1 -0
  130. package/dist/core/inMemoryNonceManager.cjs +138 -0
  131. package/dist/core/inMemoryNonceManager.cjs.map +1 -0
  132. package/dist/core/inMemoryNonceManager.d.ts +69 -0
  133. package/dist/core/inMemoryNonceManager.js +114 -0
  134. package/dist/core/inMemoryNonceManager.js.map +1 -0
  135. package/dist/core/nonceManager.cjs +304 -0
  136. package/dist/core/nonceManager.cjs.map +1 -0
  137. package/dist/core/nonceManager.d.ts +116 -0
  138. package/dist/core/nonceManager.js +280 -0
  139. package/dist/core/nonceManager.js.map +1 -0
  140. package/dist/core/pollingManager.cjs +292 -0
  141. package/dist/core/pollingManager.cjs.map +1 -0
  142. package/dist/core/pollingManager.d.ts +120 -0
  143. package/dist/core/pollingManager.js +268 -0
  144. package/dist/core/pollingManager.js.map +1 -0
  145. package/dist/core/tests/apiClient.test.d.ts +1 -0
  146. package/dist/core/tests/client.test.d.ts +1 -0
  147. package/dist/core/tests/generics.test.d.ts +1 -0
  148. package/dist/core.cjs +777 -0
  149. package/dist/core.cjs.map +1 -0
  150. package/dist/core.d.ts +493 -0
  151. package/dist/core.js +752 -0
  152. package/dist/core.js.map +1 -0
  153. package/dist/crypto/ecies/__tests__/base.test.d.ts +4 -0
  154. package/dist/crypto/ecies/__tests__/compatibility.test.d.ts +8 -0
  155. package/dist/crypto/ecies/__tests__/constants.test.d.ts +4 -0
  156. package/dist/crypto/ecies/__tests__/native-parity.test.d.ts +7 -0
  157. package/dist/crypto/ecies/__tests__/normalization.test.d.ts +1 -0
  158. package/dist/crypto/ecies/__tests__/test-vectors.cjs +102 -0
  159. package/dist/crypto/ecies/__tests__/test-vectors.cjs.map +1 -0
  160. package/dist/crypto/ecies/__tests__/test-vectors.d.ts +38 -0
  161. package/dist/crypto/ecies/__tests__/test-vectors.js +77 -0
  162. package/dist/crypto/ecies/__tests__/test-vectors.js.map +1 -0
  163. package/dist/crypto/ecies/base.cjs +245 -0
  164. package/dist/crypto/ecies/base.cjs.map +1 -0
  165. package/dist/crypto/ecies/base.d.ts +140 -0
  166. package/dist/crypto/ecies/base.js +221 -0
  167. package/dist/crypto/ecies/base.js.map +1 -0
  168. package/dist/crypto/ecies/browser.cjs +165 -0
  169. package/dist/crypto/ecies/browser.cjs.map +1 -0
  170. package/dist/crypto/ecies/browser.d.ts +43 -0
  171. package/dist/crypto/ecies/browser.js +131 -0
  172. package/dist/crypto/ecies/browser.js.map +1 -0
  173. package/dist/crypto/ecies/constants.cjs +131 -0
  174. package/dist/crypto/ecies/constants.cjs.map +1 -0
  175. package/dist/crypto/ecies/constants.d.ts +120 -0
  176. package/dist/crypto/ecies/constants.js +101 -0
  177. package/dist/crypto/ecies/constants.js.map +1 -0
  178. package/dist/crypto/ecies/index.cjs +35 -0
  179. package/dist/crypto/ecies/index.cjs.map +1 -0
  180. package/dist/crypto/ecies/index.d.ts +8 -0
  181. package/dist/crypto/ecies/index.js +13 -0
  182. package/dist/crypto/ecies/index.js.map +1 -0
  183. package/dist/crypto/ecies/interface.cjs +87 -0
  184. package/dist/crypto/ecies/interface.cjs.map +1 -0
  185. package/dist/crypto/ecies/interface.d.ts +174 -0
  186. package/dist/crypto/ecies/interface.js +60 -0
  187. package/dist/crypto/ecies/interface.js.map +1 -0
  188. package/dist/crypto/ecies/node.cjs +167 -0
  189. package/dist/crypto/ecies/node.cjs.map +1 -0
  190. package/dist/crypto/ecies/node.d.ts +45 -0
  191. package/dist/crypto/ecies/node.js +139 -0
  192. package/dist/crypto/ecies/node.js.map +1 -0
  193. package/dist/crypto/ecies/test-vectors/eccrypto-vectors.json +72 -0
  194. package/dist/crypto/ecies/utils.cjs +52 -0
  195. package/dist/crypto/ecies/utils.cjs.map +1 -0
  196. package/dist/crypto/ecies/utils.d.ts +30 -0
  197. package/dist/crypto/ecies/utils.js +26 -0
  198. package/dist/crypto/ecies/utils.js.map +1 -0
  199. package/dist/crypto/services/WalletKeyEncryptionService.cjs +128 -0
  200. package/dist/crypto/services/WalletKeyEncryptionService.cjs.map +1 -0
  201. package/dist/crypto/services/WalletKeyEncryptionService.d.ts +88 -0
  202. package/dist/crypto/services/WalletKeyEncryptionService.js +108 -0
  203. package/dist/crypto/services/WalletKeyEncryptionService.js.map +1 -0
  204. package/dist/crypto/services/WalletKeyEncryptionService.test.d.ts +1 -0
  205. package/dist/diagnostics.cjs +37 -0
  206. package/dist/diagnostics.cjs.map +1 -0
  207. package/dist/diagnostics.d.ts +24 -0
  208. package/dist/diagnostics.js +13 -0
  209. package/dist/diagnostics.js.map +1 -0
  210. package/dist/diagnostics.test.d.ts +1 -0
  211. package/dist/errors.cjs +186 -0
  212. package/dist/errors.cjs.map +1 -0
  213. package/dist/errors.d.ts +452 -0
  214. package/dist/errors.js +148 -0
  215. package/dist/errors.js.map +1 -0
  216. package/dist/generated/abi/ComputeEngineImplementation.cjs +1313 -0
  217. package/dist/generated/abi/ComputeEngineImplementation.cjs.map +1 -0
  218. package/dist/generated/abi/ComputeEngineImplementation.d.ts +995 -0
  219. package/dist/generated/abi/ComputeEngineImplementation.js +1289 -0
  220. package/dist/generated/abi/ComputeEngineImplementation.js.map +1 -0
  221. package/dist/generated/abi/ComputeInstructionRegistryImplementation.cjs +734 -0
  222. package/dist/generated/abi/ComputeInstructionRegistryImplementation.cjs.map +1 -0
  223. package/dist/generated/abi/ComputeInstructionRegistryImplementation.d.ts +544 -0
  224. package/dist/generated/abi/ComputeInstructionRegistryImplementation.js +710 -0
  225. package/dist/generated/abi/ComputeInstructionRegistryImplementation.js.map +1 -0
  226. package/dist/generated/abi/DATFactoryImplementation.cjs +882 -0
  227. package/dist/generated/abi/DATFactoryImplementation.cjs.map +1 -0
  228. package/dist/generated/abi/DATFactoryImplementation.d.ts +660 -0
  229. package/dist/generated/abi/DATFactoryImplementation.js +858 -0
  230. package/dist/generated/abi/DATFactoryImplementation.js.map +1 -0
  231. package/dist/generated/abi/DATImplementation.cjs +934 -0
  232. package/dist/generated/abi/DATImplementation.cjs.map +1 -0
  233. package/dist/generated/abi/DATImplementation.d.ts +692 -0
  234. package/dist/generated/abi/DATImplementation.js +910 -0
  235. package/dist/generated/abi/DATImplementation.js.map +1 -0
  236. package/dist/generated/abi/DATPausableImplementation.cjs +1523 -0
  237. package/dist/generated/abi/DATPausableImplementation.cjs.map +1 -0
  238. package/dist/generated/abi/DATPausableImplementation.d.ts +1144 -0
  239. package/dist/generated/abi/DATPausableImplementation.js +1499 -0
  240. package/dist/generated/abi/DATPausableImplementation.js.map +1 -0
  241. package/dist/generated/abi/DATVotesImplementation.cjs +1460 -0
  242. package/dist/generated/abi/DATVotesImplementation.cjs.map +1 -0
  243. package/dist/generated/abi/DATVotesImplementation.d.ts +1094 -0
  244. package/dist/generated/abi/DATVotesImplementation.js +1436 -0
  245. package/dist/generated/abi/DATVotesImplementation.js.map +1 -0
  246. package/dist/generated/abi/DLPPerformanceImplementation.cjs +1202 -0
  247. package/dist/generated/abi/DLPPerformanceImplementation.cjs.map +1 -0
  248. package/dist/generated/abi/DLPPerformanceImplementation.d.ts +914 -0
  249. package/dist/generated/abi/DLPPerformanceImplementation.js +1178 -0
  250. package/dist/generated/abi/DLPPerformanceImplementation.js.map +1 -0
  251. package/dist/generated/abi/DLPRegistryImplementation.cjs +1469 -0
  252. package/dist/generated/abi/DLPRegistryImplementation.cjs.map +1 -0
  253. package/dist/generated/abi/DLPRegistryImplementation.d.ts +1122 -0
  254. package/dist/generated/abi/DLPRegistryImplementation.js +1445 -0
  255. package/dist/generated/abi/DLPRegistryImplementation.js.map +1 -0
  256. package/dist/generated/abi/DLPRegistryTreasuryImplementation.cjs +612 -0
  257. package/dist/generated/abi/DLPRegistryTreasuryImplementation.cjs.map +1 -0
  258. package/dist/generated/abi/DLPRegistryTreasuryImplementation.d.ts +451 -0
  259. package/dist/generated/abi/DLPRegistryTreasuryImplementation.js +588 -0
  260. package/dist/generated/abi/DLPRegistryTreasuryImplementation.js.map +1 -0
  261. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs +1112 -0
  262. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs.map +1 -0
  263. package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +840 -0
  264. package/dist/generated/abi/DLPRewardDeployerImplementation.js +1088 -0
  265. package/dist/generated/abi/DLPRewardDeployerImplementation.js.map +1 -0
  266. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs +612 -0
  267. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs.map +1 -0
  268. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.ts +451 -0
  269. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js +588 -0
  270. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js.map +1 -0
  271. package/dist/generated/abi/DLPRewardSwapImplementation.cjs +939 -0
  272. package/dist/generated/abi/DLPRewardSwapImplementation.cjs.map +1 -0
  273. package/dist/generated/abi/DLPRewardSwapImplementation.d.ts +705 -0
  274. package/dist/generated/abi/DLPRewardSwapImplementation.js +915 -0
  275. package/dist/generated/abi/DLPRewardSwapImplementation.js.map +1 -0
  276. package/dist/generated/abi/DLPRootImplementation.cjs +1644 -0
  277. package/dist/generated/abi/DLPRootImplementation.cjs.map +1 -0
  278. package/dist/generated/abi/DLPRootImplementation.d.ts +1246 -0
  279. package/dist/generated/abi/DLPRootImplementation.js +1620 -0
  280. package/dist/generated/abi/DLPRootImplementation.js.map +1 -0
  281. package/dist/generated/abi/DLPTreasuryImplementation.cjs +612 -0
  282. package/dist/generated/abi/DLPTreasuryImplementation.cjs.map +1 -0
  283. package/dist/generated/abi/DLPTreasuryImplementation.d.ts +451 -0
  284. package/dist/generated/abi/DLPTreasuryImplementation.js +588 -0
  285. package/dist/generated/abi/DLPTreasuryImplementation.js.map +1 -0
  286. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs +985 -0
  287. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs.map +1 -0
  288. package/dist/generated/abi/DataLiquidityPoolImplementation.d.ts +735 -0
  289. package/dist/generated/abi/DataLiquidityPoolImplementation.js +961 -0
  290. package/dist/generated/abi/DataLiquidityPoolImplementation.js.map +1 -0
  291. package/dist/generated/abi/DataPortabilityGranteesImplementation.cjs +1036 -0
  292. package/dist/generated/abi/DataPortabilityGranteesImplementation.cjs.map +1 -0
  293. package/dist/generated/abi/DataPortabilityGranteesImplementation.d.ts +773 -0
  294. package/dist/generated/abi/DataPortabilityGranteesImplementation.js +1012 -0
  295. package/dist/generated/abi/DataPortabilityGranteesImplementation.js.map +1 -0
  296. package/dist/generated/abi/DataPortabilityPermissionsImplementation.cjs +1298 -0
  297. package/dist/generated/abi/DataPortabilityPermissionsImplementation.cjs.map +1 -0
  298. package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.ts +974 -0
  299. package/dist/generated/abi/DataPortabilityPermissionsImplementation.js +1274 -0
  300. package/dist/generated/abi/DataPortabilityPermissionsImplementation.js.map +1 -0
  301. package/dist/generated/abi/DataPortabilityServersImplementation.cjs +1419 -0
  302. package/dist/generated/abi/DataPortabilityServersImplementation.cjs.map +1 -0
  303. package/dist/generated/abi/DataPortabilityServersImplementation.d.ts +1071 -0
  304. package/dist/generated/abi/DataPortabilityServersImplementation.js +1395 -0
  305. package/dist/generated/abi/DataPortabilityServersImplementation.js.map +1 -0
  306. package/dist/generated/abi/DataRefinerRegistryImplementation.cjs +984 -0
  307. package/dist/generated/abi/DataRefinerRegistryImplementation.cjs.map +1 -0
  308. package/dist/generated/abi/DataRefinerRegistryImplementation.d.ts +736 -0
  309. package/dist/generated/abi/DataRefinerRegistryImplementation.js +960 -0
  310. package/dist/generated/abi/DataRefinerRegistryImplementation.js.map +1 -0
  311. package/dist/generated/abi/DataRegistryImplementation.cjs +1328 -0
  312. package/dist/generated/abi/DataRegistryImplementation.cjs.map +1 -0
  313. package/dist/generated/abi/DataRegistryImplementation.d.ts +1003 -0
  314. package/dist/generated/abi/DataRegistryImplementation.js +1304 -0
  315. package/dist/generated/abi/DataRegistryImplementation.js.map +1 -0
  316. package/dist/generated/abi/QueryEngineImplementation.cjs +1319 -0
  317. package/dist/generated/abi/QueryEngineImplementation.cjs.map +1 -0
  318. package/dist/generated/abi/QueryEngineImplementation.d.ts +1000 -0
  319. package/dist/generated/abi/QueryEngineImplementation.js +1295 -0
  320. package/dist/generated/abi/QueryEngineImplementation.js.map +1 -0
  321. package/dist/generated/abi/SwapHelperImplementation.cjs +976 -0
  322. package/dist/generated/abi/SwapHelperImplementation.cjs.map +1 -0
  323. package/dist/generated/abi/SwapHelperImplementation.d.ts +728 -0
  324. package/dist/generated/abi/SwapHelperImplementation.js +952 -0
  325. package/dist/generated/abi/SwapHelperImplementation.js.map +1 -0
  326. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.cjs +936 -0
  327. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.cjs.map +1 -0
  328. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.d.ts +700 -0
  329. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.js +912 -0
  330. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.js.map +1 -0
  331. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.cjs +936 -0
  332. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.cjs.map +1 -0
  333. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.d.ts +700 -0
  334. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.js +912 -0
  335. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.js.map +1 -0
  336. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.cjs +936 -0
  337. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.cjs.map +1 -0
  338. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.d.ts +700 -0
  339. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.js +912 -0
  340. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.js.map +1 -0
  341. package/dist/generated/abi/TeePoolImplementation.cjs +1313 -0
  342. package/dist/generated/abi/TeePoolImplementation.cjs.map +1 -0
  343. package/dist/generated/abi/TeePoolImplementation.d.ts +992 -0
  344. package/dist/generated/abi/TeePoolImplementation.js +1289 -0
  345. package/dist/generated/abi/TeePoolImplementation.js.map +1 -0
  346. package/dist/generated/abi/TeePoolPersistentGpuImplementation.cjs +936 -0
  347. package/dist/generated/abi/TeePoolPersistentGpuImplementation.cjs.map +1 -0
  348. package/dist/generated/abi/TeePoolPersistentGpuImplementation.d.ts +700 -0
  349. package/dist/generated/abi/TeePoolPersistentGpuImplementation.js +912 -0
  350. package/dist/generated/abi/TeePoolPersistentGpuImplementation.js.map +1 -0
  351. package/dist/generated/abi/TeePoolPersistentStandardImplementation.cjs +936 -0
  352. package/dist/generated/abi/TeePoolPersistentStandardImplementation.cjs.map +1 -0
  353. package/dist/generated/abi/TeePoolPersistentStandardImplementation.d.ts +700 -0
  354. package/dist/generated/abi/TeePoolPersistentStandardImplementation.js +912 -0
  355. package/dist/generated/abi/TeePoolPersistentStandardImplementation.js.map +1 -0
  356. package/dist/generated/abi/TeePoolPhalaImplementation.cjs +1313 -0
  357. package/dist/generated/abi/TeePoolPhalaImplementation.cjs.map +1 -0
  358. package/dist/generated/abi/TeePoolPhalaImplementation.d.ts +992 -0
  359. package/dist/generated/abi/TeePoolPhalaImplementation.js +1289 -0
  360. package/dist/generated/abi/TeePoolPhalaImplementation.js.map +1 -0
  361. package/dist/generated/abi/VanaEpochImplementation.cjs +1383 -0
  362. package/dist/generated/abi/VanaEpochImplementation.cjs.map +1 -0
  363. package/dist/generated/abi/VanaEpochImplementation.d.ts +1050 -0
  364. package/dist/generated/abi/VanaEpochImplementation.js +1359 -0
  365. package/dist/generated/abi/VanaEpochImplementation.js.map +1 -0
  366. package/dist/generated/abi/VanaPoolEntityImplementation.cjs +1191 -0
  367. package/dist/generated/abi/VanaPoolEntityImplementation.cjs.map +1 -0
  368. package/dist/generated/abi/VanaPoolEntityImplementation.d.ts +899 -0
  369. package/dist/generated/abi/VanaPoolEntityImplementation.js +1167 -0
  370. package/dist/generated/abi/VanaPoolEntityImplementation.js.map +1 -0
  371. package/dist/generated/abi/VanaPoolStakingImplementation.cjs +1033 -0
  372. package/dist/generated/abi/VanaPoolStakingImplementation.cjs.map +1 -0
  373. package/dist/generated/abi/VanaPoolStakingImplementation.d.ts +776 -0
  374. package/dist/generated/abi/VanaPoolStakingImplementation.js +1009 -0
  375. package/dist/generated/abi/VanaPoolStakingImplementation.js.map +1 -0
  376. package/dist/generated/abi/VanaPoolTreasuryImplementation.cjs +538 -0
  377. package/dist/generated/abi/VanaPoolTreasuryImplementation.cjs.map +1 -0
  378. package/dist/generated/abi/VanaPoolTreasuryImplementation.d.ts +393 -0
  379. package/dist/generated/abi/VanaPoolTreasuryImplementation.js +514 -0
  380. package/dist/generated/abi/VanaPoolTreasuryImplementation.js.map +1 -0
  381. package/dist/generated/abi/index.cjs +177 -0
  382. package/dist/generated/abi/index.cjs.map +1 -0
  383. package/dist/{index.node.d.cts → generated/abi/index.d.ts} +26941 -37486
  384. package/dist/generated/abi/index.js +120 -0
  385. package/dist/generated/abi/index.js.map +1 -0
  386. package/dist/generated/event-types.cjs +17 -0
  387. package/dist/generated/event-types.cjs.map +1 -0
  388. package/dist/generated/event-types.d.ts +860 -0
  389. package/dist/generated/event-types.js +1 -0
  390. package/dist/generated/event-types.js.map +1 -0
  391. package/dist/generated/eventRegistry.cjs +3375 -0
  392. package/dist/generated/eventRegistry.cjs.map +1 -0
  393. package/dist/generated/eventRegistry.d.ts +14 -0
  394. package/dist/generated/eventRegistry.js +3350 -0
  395. package/dist/generated/eventRegistry.js.map +1 -0
  396. package/dist/generated/server/server-exports.cjs +45 -0
  397. package/dist/generated/server/server-exports.cjs.map +1 -0
  398. package/dist/generated/server/server-exports.d.ts +36 -0
  399. package/dist/generated/server/server-exports.js +19 -0
  400. package/dist/generated/server/server-exports.js.map +1 -0
  401. package/dist/generated/server/server.cjs +17 -0
  402. package/dist/generated/server/server.cjs.map +1 -0
  403. package/dist/generated/server/server.d.ts +907 -0
  404. package/dist/generated/server/server.js +1 -0
  405. package/dist/generated/server/server.js.map +1 -0
  406. package/dist/generated/subgraph.cjs +1440 -0
  407. package/dist/generated/subgraph.cjs.map +1 -0
  408. package/dist/generated/subgraph.d.ts +6113 -0
  409. package/dist/generated/subgraph.js +1404 -0
  410. package/dist/generated/subgraph.js.map +1 -0
  411. package/dist/index.browser.d.ts +48 -37223
  412. package/dist/index.browser.js +86 -46352
  413. package/dist/index.browser.js.map +1 -1
  414. package/dist/index.cjs +5 -0
  415. package/dist/index.cjs.map +1 -0
  416. package/dist/index.d.ts +0 -0
  417. package/dist/index.js +4 -0
  418. package/dist/index.js.map +1 -0
  419. package/dist/index.node.cjs +123 -46839
  420. package/dist/index.node.cjs.map +1 -1
  421. package/dist/index.node.d.ts +92 -37358
  422. package/dist/index.node.js +103 -46726
  423. package/dist/index.node.js.map +1 -1
  424. package/dist/lib/__tests__/redisAtomicStore.test.d.ts +1 -0
  425. package/dist/lib/redisAtomicStore.cjs +201 -0
  426. package/dist/lib/redisAtomicStore.cjs.map +1 -0
  427. package/dist/lib/redisAtomicStore.d.ts +120 -0
  428. package/dist/lib/redisAtomicStore.js +177 -0
  429. package/dist/lib/redisAtomicStore.js.map +1 -0
  430. package/dist/node.cjs +2 -321
  431. package/dist/node.cjs.map +1 -1
  432. package/dist/node.d.ts +42 -1
  433. package/dist/node.js +1 -307
  434. package/dist/node.js.map +1 -1
  435. package/dist/platform/browser-only.cjs +37 -0
  436. package/dist/platform/browser-only.cjs.map +1 -0
  437. package/dist/platform/browser-only.d.ts +22 -0
  438. package/dist/platform/browser-only.js +12 -0
  439. package/dist/platform/browser-only.js.map +1 -0
  440. package/dist/platform/browser-only.test.d.ts +1 -0
  441. package/dist/platform/browser-safe.cjs +57 -0
  442. package/dist/platform/browser-safe.cjs.map +1 -0
  443. package/dist/platform/browser-safe.d.ts +29 -0
  444. package/dist/platform/browser-safe.js +31 -0
  445. package/dist/platform/browser-safe.js.map +1 -0
  446. package/dist/platform/browser-safe.test.d.ts +1 -0
  447. package/dist/platform/browser.cjs +488 -0
  448. package/dist/platform/browser.cjs.map +1 -0
  449. package/dist/platform/browser.d.ts +291 -0
  450. package/dist/platform/browser.js +454 -0
  451. package/dist/platform/browser.js.map +1 -0
  452. package/dist/platform/browser.test.d.ts +1 -0
  453. package/dist/platform/index.cjs +50 -0
  454. package/dist/platform/index.cjs.map +1 -0
  455. package/dist/platform/index.d.ts +11 -0
  456. package/dist/platform/index.js +27 -0
  457. package/dist/platform/index.js.map +1 -0
  458. package/dist/platform/interface.cjs +17 -0
  459. package/dist/platform/interface.cjs.map +1 -0
  460. package/dist/platform/interface.d.ts +409 -0
  461. package/dist/platform/interface.js +1 -0
  462. package/dist/platform/interface.js.map +1 -0
  463. package/dist/platform/node.cjs +512 -0
  464. package/dist/platform/node.cjs.map +1 -0
  465. package/dist/platform/node.d.ts +86 -0
  466. package/dist/platform/node.js +481 -0
  467. package/dist/platform/node.js.map +1 -0
  468. package/dist/platform/ports/openpgp-port.cjs +74 -0
  469. package/dist/platform/ports/openpgp-port.cjs.map +1 -0
  470. package/dist/platform/ports/openpgp-port.d.ts +13 -0
  471. package/dist/platform/ports/openpgp-port.js +59 -0
  472. package/dist/platform/ports/openpgp-port.js.map +1 -0
  473. package/dist/platform/ports/pgp-port.cjs +17 -0
  474. package/dist/platform/ports/pgp-port.cjs.map +1 -0
  475. package/dist/platform/ports/pgp-port.d.ts +35 -0
  476. package/dist/platform/ports/pgp-port.js +1 -0
  477. package/dist/platform/ports/pgp-port.js.map +1 -0
  478. package/dist/platform/shared/error-utils.cjs +43 -0
  479. package/dist/platform/shared/error-utils.cjs.map +1 -0
  480. package/dist/platform/shared/error-utils.d.ts +23 -0
  481. package/dist/platform/shared/error-utils.js +18 -0
  482. package/dist/platform/shared/error-utils.js.map +1 -0
  483. package/dist/platform/shared/pgp-utils.cjs +55 -0
  484. package/dist/platform/shared/pgp-utils.cjs.map +1 -0
  485. package/dist/platform/shared/pgp-utils.d.ts +59 -0
  486. package/dist/platform/shared/pgp-utils.js +29 -0
  487. package/dist/platform/shared/pgp-utils.js.map +1 -0
  488. package/dist/platform/shared/stream-utils.cjs +49 -0
  489. package/dist/platform/shared/stream-utils.cjs.map +1 -0
  490. package/dist/platform/shared/stream-utils.d.ts +14 -0
  491. package/dist/platform/shared/stream-utils.js +25 -0
  492. package/dist/platform/shared/stream-utils.js.map +1 -0
  493. package/dist/platform/utils.cjs +114 -0
  494. package/dist/platform/utils.cjs.map +1 -0
  495. package/dist/platform/utils.d.ts +49 -0
  496. package/dist/platform/utils.js +76 -0
  497. package/dist/platform/utils.js.map +1 -0
  498. package/dist/platform/utils.test.d.ts +1 -0
  499. package/dist/platform.browser.d.ts +6 -57
  500. package/dist/platform.browser.js +10 -379
  501. package/dist/platform.browser.js.map +1 -1
  502. package/dist/platform.cjs +14 -708
  503. package/dist/platform.cjs.map +1 -1
  504. package/dist/platform.d.ts +11 -2
  505. package/dist/platform.js +14 -694
  506. package/dist/platform.js.map +1 -1
  507. package/dist/platform.node.cjs +14 -708
  508. package/dist/platform.node.cjs.map +1 -1
  509. package/dist/platform.node.d.ts +7 -102
  510. package/dist/platform.node.js +14 -694
  511. package/dist/platform.node.js.map +1 -1
  512. package/dist/schemas/dataSchema.schema.json +53 -0
  513. package/dist/schemas/grantFile.schema.json +43 -0
  514. package/dist/server/relayerHandler.cjs +452 -0
  515. package/dist/server/relayerHandler.cjs.map +1 -0
  516. package/dist/server/relayerHandler.d.ts +69 -0
  517. package/dist/server/relayerHandler.js +428 -0
  518. package/dist/server/relayerHandler.js.map +1 -0
  519. package/dist/storage/index.cjs +47 -0
  520. package/dist/storage/index.cjs.map +1 -0
  521. package/dist/storage/index.d.ts +57 -0
  522. package/dist/storage/index.js +17 -0
  523. package/dist/storage/index.js.map +1 -0
  524. package/dist/storage/manager.cjs +272 -0
  525. package/dist/storage/manager.cjs.map +1 -0
  526. package/dist/storage/manager.d.ts +241 -0
  527. package/dist/storage/manager.js +248 -0
  528. package/dist/storage/manager.js.map +1 -0
  529. package/dist/storage/providers/callback-storage.cjs +248 -0
  530. package/dist/storage/providers/callback-storage.cjs.map +1 -0
  531. package/dist/storage/providers/callback-storage.d.ts +183 -0
  532. package/dist/storage/providers/callback-storage.js +226 -0
  533. package/dist/storage/providers/callback-storage.js.map +1 -0
  534. package/dist/storage/providers/dropbox.cjs +237 -0
  535. package/dist/storage/providers/dropbox.cjs.map +1 -0
  536. package/dist/storage/providers/dropbox.d.ts +39 -0
  537. package/dist/storage/providers/dropbox.js +215 -0
  538. package/dist/storage/providers/dropbox.js.map +1 -0
  539. package/dist/storage/providers/dropbox.test.d.ts +1 -0
  540. package/dist/storage/providers/google-drive.cjs +516 -0
  541. package/dist/storage/providers/google-drive.cjs.map +1 -0
  542. package/dist/storage/providers/google-drive.d.ts +152 -0
  543. package/dist/storage/providers/google-drive.js +494 -0
  544. package/dist/storage/providers/google-drive.js.map +1 -0
  545. package/dist/storage/providers/google-drive.test.d.ts +1 -0
  546. package/dist/storage/providers/ipfs.cjs +283 -0
  547. package/dist/storage/providers/ipfs.cjs.map +1 -0
  548. package/dist/storage/providers/ipfs.d.ts +160 -0
  549. package/dist/storage/providers/ipfs.js +261 -0
  550. package/dist/storage/providers/ipfs.js.map +1 -0
  551. package/dist/storage/providers/pinata.cjs +339 -0
  552. package/dist/storage/providers/pinata.cjs.map +1 -0
  553. package/dist/storage/providers/pinata.d.ts +168 -0
  554. package/dist/storage/providers/pinata.js +317 -0
  555. package/dist/storage/providers/pinata.js.map +1 -0
  556. package/dist/storage/tests/callbackStorage.test.d.ts +1 -0
  557. package/dist/storage/tests/googleDriveStorage.test.d.ts +1 -0
  558. package/dist/storage/tests/ipfsStorage.test.d.ts +1 -0
  559. package/dist/storage/tests/pinataStorage.test.d.ts +1 -0
  560. package/dist/storage/tests/storageManager.test.d.ts +1 -0
  561. package/dist/tests/abi.test.d.ts +1 -0
  562. package/dist/tests/chains-definitions.test.d.ts +1 -0
  563. package/dist/tests/core-encryption.test.d.ts +1 -0
  564. package/dist/tests/core-extended.test.d.ts +1 -0
  565. package/dist/tests/core-generics-coverage.test.d.ts +1 -0
  566. package/dist/tests/coverage-boost.test.d.ts +1 -0
  567. package/dist/tests/crypto-cross-platform-compatibility.test.d.ts +1 -0
  568. package/dist/tests/data-addfile-permissions-schema.test.d.ts +1 -0
  569. package/dist/tests/data-additional-methods.test.d.ts +1 -0
  570. package/dist/tests/data-controller-edge-cases.test.d.ts +1 -0
  571. package/dist/tests/data-ipfs-gateways.test.d.ts +1 -0
  572. package/dist/tests/data-relayer.test.d.ts +1 -0
  573. package/dist/tests/data-schema-validation.test.d.ts +1 -0
  574. package/dist/tests/data-simple-methods.test.d.ts +1 -0
  575. package/dist/tests/data-upload-owner-validation.test.d.ts +1 -0
  576. package/dist/tests/data.test.d.ts +1 -0
  577. package/dist/tests/demo-integration.test.d.ts +1 -0
  578. package/dist/tests/demo-trusted-server-integration.test.d.ts +1 -0
  579. package/dist/tests/download-relayer.test.d.ts +1 -0
  580. package/dist/tests/dual-mode-permissions.test.d.ts +1 -0
  581. package/dist/tests/dual-mode-trusted-servers.test.d.ts +1 -0
  582. package/dist/tests/encryption-correct-implementation.test.d.ts +1 -0
  583. package/dist/tests/encryption-coverage.test.d.ts +1 -0
  584. package/dist/tests/encryption-edge-cases.test.d.ts +1 -0
  585. package/dist/tests/encryption-utils-updated.test.d.ts +1 -0
  586. package/dist/tests/errors-coverage.test.d.ts +1 -0
  587. package/dist/tests/errors.test.d.ts +1 -0
  588. package/dist/tests/factories/mockFactory.d.ts +316 -0
  589. package/dist/tests/fakes/FakeStorageManager.d.ts +200 -0
  590. package/dist/tests/fakes/FakeStorageManager.test.d.ts +1 -0
  591. package/dist/tests/fakes/FakeWaitForTransactionEvents.d.ts +170 -0
  592. package/dist/tests/fakes/FakeWaitForTransactionEvents.test.d.ts +1 -0
  593. package/dist/tests/fakes/fake-pgp-port.d.ts +13 -0
  594. package/dist/tests/grantValidation-edge-cases.test.d.ts +1 -0
  595. package/dist/tests/grantValidation-unreachable-branch.test.d.ts +1 -0
  596. package/dist/tests/helper-methods.test.d.ts +1 -0
  597. package/dist/tests/helpers/platformTestHelpers.d.ts +106 -0
  598. package/dist/tests/helpers/typedMocks.d.ts +64 -0
  599. package/dist/tests/index-browser.test.d.ts +1 -0
  600. package/dist/tests/index-node.test.d.ts +1 -0
  601. package/dist/tests/index.test.d.ts +1 -0
  602. package/dist/tests/mocks/platformAdapter.d.ts +12 -0
  603. package/dist/tests/new-permissions-methods.test.d.ts +1 -0
  604. package/dist/tests/no-buffer-browser.test.d.ts +1 -0
  605. package/dist/tests/permissions-grantee.test.d.ts +1 -0
  606. package/dist/tests/permissions-revoke-relayer.test.d.ts +1 -0
  607. package/dist/tests/permissions-schema-validation.test.d.ts +1 -0
  608. package/dist/tests/permissions-server-files.test.d.ts +1 -0
  609. package/dist/tests/permissions-transaction-options.test.d.ts +1 -0
  610. package/dist/tests/permissions-trust-servers.test.d.ts +1 -0
  611. package/dist/tests/permissions.test.d.ts +1 -0
  612. package/dist/tests/personal.test.d.ts +1 -0
  613. package/dist/tests/platform-browser.test.d.ts +1 -0
  614. package/dist/tests/platform-crypto-expanded.test.d.ts +1 -0
  615. package/dist/tests/platform-crypto.test.d.ts +1 -0
  616. package/dist/tests/platform-index.test.d.ts +1 -0
  617. package/dist/tests/platform-node.test.d.ts +1 -0
  618. package/dist/tests/platform-shared-utils.test.d.ts +1 -0
  619. package/dist/tests/platform-updated.test.d.ts +1 -0
  620. package/dist/tests/protocol-additional-methods.test.d.ts +1 -0
  621. package/dist/tests/protocol.test.d.ts +1 -0
  622. package/dist/tests/read-only-mode.test.d.ts +1 -0
  623. package/dist/tests/relayer-integration.test.d.ts +1 -0
  624. package/dist/tests/relayer-unified.test.d.ts +1 -0
  625. package/dist/tests/schemas.test.d.ts +1 -0
  626. package/dist/tests/server-relayer-handler.test.d.ts +1 -0
  627. package/dist/tests/setup.d.ts +7 -0
  628. package/dist/tests/signatureFormatter.test.d.ts +1 -0
  629. package/dist/tests/trusted-server-queries.test.d.ts +1 -0
  630. package/dist/tests/typedDataConverter.test.d.ts +1 -0
  631. package/dist/tests/types-contracts.test.d.ts +1 -0
  632. package/dist/tests/types-data.test.d.ts +1 -0
  633. package/dist/tests/types-external-apis.test.d.ts +1 -0
  634. package/dist/tests/types-generics.test.d.ts +1 -0
  635. package/dist/tests/types-permissions.test.d.ts +1 -0
  636. package/dist/tests/types-upload-params.test.d.ts +1 -0
  637. package/dist/tests/types.test.d.ts +1 -0
  638. package/dist/tests/utils-formatters.test.d.ts +1 -0
  639. package/dist/tests/utils-grantFiles-edge-cases.test.d.ts +1 -0
  640. package/dist/tests/utils-grantFiles-validation.test.d.ts +1 -0
  641. package/dist/tests/utils-grantFiles.test.d.ts +1 -0
  642. package/dist/tests/utils-grantValidation-consolidated.test.d.ts +1 -0
  643. package/dist/tests/utils-grants.test.d.ts +1 -0
  644. package/dist/tests/utils-ipfs-additional.test.d.ts +1 -0
  645. package/dist/tests/utils-ipfs.test.d.ts +4 -0
  646. package/dist/tests/utils-schemaValidation.test.d.ts +1 -0
  647. package/dist/tests/vana.test.d.ts +1 -0
  648. package/dist/tests/wallet-crypto-compatibility.test.d.ts +1 -0
  649. package/dist/types/atomicStore.cjs +31 -0
  650. package/dist/types/atomicStore.cjs.map +1 -0
  651. package/dist/types/atomicStore.d.ts +236 -0
  652. package/dist/types/atomicStore.js +7 -0
  653. package/dist/types/atomicStore.js.map +1 -0
  654. package/dist/types/blockchain.cjs +17 -0
  655. package/dist/types/blockchain.cjs.map +1 -0
  656. package/dist/types/blockchain.d.ts +85 -0
  657. package/dist/types/blockchain.js +1 -0
  658. package/dist/types/blockchain.js.map +1 -0
  659. package/dist/types/chains-additional.test.d.ts +1 -0
  660. package/dist/types/chains.cjs +36 -0
  661. package/dist/types/chains.cjs.map +1 -0
  662. package/dist/types/chains.d.ts +98 -0
  663. package/dist/types/chains.js +11 -0
  664. package/dist/types/chains.js.map +1 -0
  665. package/dist/types/config.cjs +51 -0
  666. package/dist/types/config.cjs.map +1 -0
  667. package/dist/types/config.d.ts +720 -0
  668. package/dist/types/config.js +23 -0
  669. package/dist/types/config.js.map +1 -0
  670. package/dist/types/contracts.cjs +17 -0
  671. package/dist/types/contracts.cjs.map +1 -0
  672. package/dist/types/contracts.d.ts +129 -0
  673. package/dist/types/contracts.js +1 -0
  674. package/dist/types/contracts.js.map +1 -0
  675. package/dist/types/controller-context.cjs +17 -0
  676. package/dist/types/controller-context.cjs.map +1 -0
  677. package/dist/types/controller-context.d.ts +68 -0
  678. package/dist/types/controller-context.js +1 -0
  679. package/dist/types/controller-context.js.map +1 -0
  680. package/dist/types/data.cjs +17 -0
  681. package/dist/types/data.cjs.map +1 -0
  682. package/dist/types/data.d.ts +763 -0
  683. package/dist/types/data.js +1 -0
  684. package/dist/types/data.js.map +1 -0
  685. package/dist/types/eccrypto-js.d.cjs +2 -0
  686. package/dist/types/eccrypto-js.d.cjs.map +1 -0
  687. package/dist/types/eccrypto-js.d.js +1 -0
  688. package/dist/types/eccrypto-js.d.js.map +1 -0
  689. package/dist/types/external-apis.cjs +61 -0
  690. package/dist/types/external-apis.cjs.map +1 -0
  691. package/dist/types/external-apis.d.ts +184 -0
  692. package/dist/types/external-apis.js +34 -0
  693. package/dist/types/external-apis.js.map +1 -0
  694. package/dist/types/generics.cjs +17 -0
  695. package/dist/types/generics.cjs.map +1 -0
  696. package/dist/types/generics.d.ts +518 -0
  697. package/dist/types/generics.js +1 -0
  698. package/dist/types/generics.js.map +1 -0
  699. package/dist/types/index.cjs +65 -0
  700. package/dist/types/index.cjs.map +1 -0
  701. package/dist/types/index.d.ts +48 -0
  702. package/dist/types/index.js +42 -0
  703. package/dist/types/index.js.map +1 -0
  704. package/dist/types/operationStore.cjs +17 -0
  705. package/dist/types/operationStore.cjs.map +1 -0
  706. package/dist/types/operationStore.d.ts +171 -0
  707. package/dist/types/operationStore.js +1 -0
  708. package/dist/types/operationStore.js.map +1 -0
  709. package/dist/types/operations.cjs +53 -0
  710. package/dist/types/operations.cjs.map +1 -0
  711. package/dist/types/operations.d.ts +204 -0
  712. package/dist/types/operations.js +26 -0
  713. package/dist/types/operations.js.map +1 -0
  714. package/dist/types/options.cjs +17 -0
  715. package/dist/types/options.cjs.map +1 -0
  716. package/dist/types/options.d.ts +308 -0
  717. package/dist/types/options.js +1 -0
  718. package/dist/types/options.js.map +1 -0
  719. package/dist/types/permissions.cjs +17 -0
  720. package/dist/types/permissions.cjs.map +1 -0
  721. package/dist/types/permissions.d.ts +953 -0
  722. package/dist/types/permissions.js +1 -0
  723. package/dist/types/permissions.js.map +1 -0
  724. package/dist/types/personal.cjs +17 -0
  725. package/dist/types/personal.cjs.map +1 -0
  726. package/dist/types/personal.d.ts +174 -0
  727. package/dist/types/personal.js +1 -0
  728. package/dist/types/personal.js.map +1 -0
  729. package/dist/types/relayer.cjs +17 -0
  730. package/dist/types/relayer.cjs.map +1 -0
  731. package/dist/types/relayer.d.ts +552 -0
  732. package/dist/types/relayer.js +1 -0
  733. package/dist/types/relayer.js.map +1 -0
  734. package/dist/types/storage.cjs +39 -0
  735. package/dist/types/storage.cjs.map +1 -0
  736. package/dist/types/storage.d.ts +117 -0
  737. package/dist/types/storage.js +15 -0
  738. package/dist/types/storage.js.map +1 -0
  739. package/dist/types/transactionResults.cjs +17 -0
  740. package/dist/types/transactionResults.cjs.map +1 -0
  741. package/dist/types/transactionResults.d.ts +193 -0
  742. package/dist/types/transactionResults.js +1 -0
  743. package/dist/types/transactionResults.js.map +1 -0
  744. package/dist/types/utils.cjs +17 -0
  745. package/dist/types/utils.cjs.map +1 -0
  746. package/dist/types/utils.d.ts +771 -0
  747. package/dist/types/utils.js +1 -0
  748. package/dist/types/utils.js.map +1 -0
  749. package/dist/types.cjs +23 -0
  750. package/dist/types.cjs.map +1 -0
  751. package/dist/types.d.ts +30 -0
  752. package/dist/types.js +2 -0
  753. package/dist/types.js.map +1 -0
  754. package/dist/utils/__tests__/chainQuery.test.d.ts +1 -0
  755. package/dist/utils/__tests__/parseTransaction.test.d.ts +1 -0
  756. package/dist/utils/__tests__/pojo-serialization.test.d.ts +1 -0
  757. package/dist/utils/__tests__/signatureCache.test.d.ts +1 -0
  758. package/dist/utils/__tests__/subgraphConsistency.test.d.ts +4 -0
  759. package/dist/utils/__tests__/subgraphPagination.test.d.ts +4 -0
  760. package/dist/utils/__tests__/transaction-edge-cases.test.d.ts +1 -0
  761. package/dist/utils/__tests__/transactionHelpers.test.d.ts +1 -0
  762. package/dist/utils/__tests__/urlResolver.test.d.ts +4 -0
  763. package/dist/utils/blockchain/registry.cjs +81 -0
  764. package/dist/utils/blockchain/registry.cjs.map +1 -0
  765. package/dist/utils/blockchain/registry.d.ts +32 -0
  766. package/dist/utils/blockchain/registry.js +56 -0
  767. package/dist/utils/blockchain/registry.js.map +1 -0
  768. package/dist/utils/blockchain/registry.test.d.ts +1 -0
  769. package/dist/utils/chainQuery.cjs +107 -0
  770. package/dist/utils/chainQuery.cjs.map +1 -0
  771. package/dist/utils/chainQuery.d.ts +31 -0
  772. package/dist/utils/chainQuery.js +82 -0
  773. package/dist/utils/chainQuery.js.map +1 -0
  774. package/dist/utils/crypto-utils.cjs +108 -0
  775. package/dist/utils/crypto-utils.cjs.map +1 -0
  776. package/dist/utils/crypto-utils.d.ts +100 -0
  777. package/dist/utils/crypto-utils.js +76 -0
  778. package/dist/utils/crypto-utils.js.map +1 -0
  779. package/dist/utils/crypto-utils.test.d.ts +1 -0
  780. package/dist/utils/download.cjs +69 -0
  781. package/dist/utils/download.cjs.map +1 -0
  782. package/dist/utils/download.d.ts +40 -0
  783. package/dist/utils/download.js +45 -0
  784. package/dist/utils/download.js.map +1 -0
  785. package/dist/utils/encoding.cjs +66 -0
  786. package/dist/utils/encoding.cjs.map +1 -0
  787. package/dist/utils/encoding.d.ts +52 -0
  788. package/dist/utils/encoding.js +39 -0
  789. package/dist/utils/encoding.js.map +1 -0
  790. package/dist/utils/encoding.test.d.ts +1 -0
  791. package/dist/utils/encryption.cjs +176 -0
  792. package/dist/utils/encryption.cjs.map +1 -0
  793. package/dist/utils/encryption.d.ts +271 -0
  794. package/dist/utils/encryption.js +142 -0
  795. package/dist/utils/encryption.js.map +1 -0
  796. package/dist/utils/formatters.cjs +55 -0
  797. package/dist/utils/formatters.cjs.map +1 -0
  798. package/dist/utils/formatters.d.ts +118 -0
  799. package/dist/utils/formatters.js +28 -0
  800. package/dist/utils/formatters.js.map +1 -0
  801. package/dist/utils/grantFiles.cjs +181 -0
  802. package/dist/utils/grantFiles.cjs.map +1 -0
  803. package/dist/utils/grantFiles.d.ts +172 -0
  804. package/dist/utils/grantFiles.js +143 -0
  805. package/dist/utils/grantFiles.js.map +1 -0
  806. package/dist/utils/grantValidation.cjs +243 -0
  807. package/dist/utils/grantValidation.cjs.map +1 -0
  808. package/dist/utils/grantValidation.d.ts +226 -0
  809. package/dist/utils/grantValidation.js +201 -0
  810. package/dist/utils/grantValidation.js.map +1 -0
  811. package/dist/utils/grants.cjs +108 -0
  812. package/dist/utils/grants.cjs.map +1 -0
  813. package/dist/utils/grants.d.ts +148 -0
  814. package/dist/utils/grants.js +82 -0
  815. package/dist/utils/grants.js.map +1 -0
  816. package/dist/utils/ipfs.cjs +128 -0
  817. package/dist/utils/ipfs.cjs.map +1 -0
  818. package/dist/utils/ipfs.d.ts +88 -0
  819. package/dist/utils/ipfs.js +97 -0
  820. package/dist/utils/ipfs.js.map +1 -0
  821. package/dist/utils/lazy-import.cjs +38 -0
  822. package/dist/utils/lazy-import.cjs.map +1 -0
  823. package/dist/utils/lazy-import.d.ts +43 -0
  824. package/dist/utils/lazy-import.js +14 -0
  825. package/dist/utils/lazy-import.js.map +1 -0
  826. package/dist/utils/multicall.cjs +233 -0
  827. package/dist/utils/multicall.cjs.map +1 -0
  828. package/dist/utils/multicall.d.ts +126 -0
  829. package/dist/utils/multicall.js +208 -0
  830. package/dist/utils/multicall.js.map +1 -0
  831. package/dist/utils/parseTransactionPojo.cjs +87 -0
  832. package/dist/utils/parseTransactionPojo.cjs.map +1 -0
  833. package/dist/utils/parseTransactionPojo.d.ts +31 -0
  834. package/dist/utils/parseTransactionPojo.js +63 -0
  835. package/dist/utils/parseTransactionPojo.js.map +1 -0
  836. package/dist/utils/schemaValidation.cjs +258 -0
  837. package/dist/utils/schemaValidation.cjs.map +1 -0
  838. package/dist/utils/schemaValidation.d.ts +168 -0
  839. package/dist/utils/schemaValidation.js +219 -0
  840. package/dist/utils/schemaValidation.js.map +1 -0
  841. package/dist/utils/signatureCache.cjs +192 -0
  842. package/dist/utils/signatureCache.cjs.map +1 -0
  843. package/dist/utils/signatureCache.d.ts +172 -0
  844. package/dist/utils/signatureCache.js +167 -0
  845. package/dist/utils/signatureCache.js.map +1 -0
  846. package/dist/utils/signatureFormatter.cjs +42 -0
  847. package/dist/utils/signatureFormatter.cjs.map +1 -0
  848. package/dist/utils/signatureFormatter.d.ts +36 -0
  849. package/dist/utils/signatureFormatter.js +18 -0
  850. package/dist/utils/signatureFormatter.js.map +1 -0
  851. package/dist/utils/subgraphConsistency.cjs +184 -0
  852. package/dist/utils/subgraphConsistency.cjs.map +1 -0
  853. package/dist/utils/subgraphConsistency.d.ts +65 -0
  854. package/dist/utils/subgraphConsistency.js +155 -0
  855. package/dist/utils/subgraphConsistency.js.map +1 -0
  856. package/dist/utils/subgraphMetaCache.cjs +101 -0
  857. package/dist/utils/subgraphMetaCache.cjs.map +1 -0
  858. package/dist/utils/subgraphMetaCache.d.ts +56 -0
  859. package/dist/utils/subgraphMetaCache.js +76 -0
  860. package/dist/utils/subgraphMetaCache.js.map +1 -0
  861. package/dist/utils/subgraphPagination.cjs +104 -0
  862. package/dist/utils/subgraphPagination.cjs.map +1 -0
  863. package/dist/utils/subgraphPagination.d.ts +78 -0
  864. package/dist/utils/subgraphPagination.js +78 -0
  865. package/dist/utils/subgraphPagination.js.map +1 -0
  866. package/dist/utils/tests/multicall.test.d.ts +1 -0
  867. package/dist/utils/transactionHelpers.cjs +54 -0
  868. package/dist/utils/transactionHelpers.cjs.map +1 -0
  869. package/dist/utils/transactionHelpers.d.ts +80 -0
  870. package/dist/utils/transactionHelpers.js +29 -0
  871. package/dist/utils/transactionHelpers.js.map +1 -0
  872. package/dist/utils/typeGuards.cjs +109 -0
  873. package/dist/utils/typeGuards.cjs.map +1 -0
  874. package/dist/utils/typeGuards.d.ts +138 -0
  875. package/dist/utils/typeGuards.js +74 -0
  876. package/dist/utils/typeGuards.js.map +1 -0
  877. package/dist/utils/typedDataConverter.cjs +43 -0
  878. package/dist/utils/typedDataConverter.cjs.map +1 -0
  879. package/dist/utils/typedDataConverter.d.ts +46 -0
  880. package/dist/utils/typedDataConverter.js +19 -0
  881. package/dist/utils/typedDataConverter.js.map +1 -0
  882. package/dist/utils/urlResolver.cjs +62 -0
  883. package/dist/utils/urlResolver.cjs.map +1 -0
  884. package/dist/utils/urlResolver.d.ts +56 -0
  885. package/dist/utils/urlResolver.js +37 -0
  886. package/dist/utils/urlResolver.js.map +1 -0
  887. package/dist/utils/wallet.cjs +63 -0
  888. package/dist/utils/wallet.cjs.map +1 -0
  889. package/dist/utils/wallet.d.ts +94 -0
  890. package/dist/utils/wallet.js +37 -0
  891. package/dist/utils/wallet.js.map +1 -0
  892. package/dist/utils/withEvents.cjs +44 -0
  893. package/dist/utils/withEvents.cjs.map +1 -0
  894. package/dist/utils/withEvents.d.ts +56 -0
  895. package/dist/utils/withEvents.js +18 -0
  896. package/dist/utils/withEvents.js.map +1 -0
  897. package/package.json +63 -29
  898. package/dist/browser-DY8XDblx.d.ts +0 -241
  899. package/dist/chains.browser.cjs.map +0 -1
  900. package/dist/chains.d.cts +0 -2
  901. package/dist/chains.node.d.cts +0 -2
  902. package/dist/index.d.cts +0 -2
  903. package/dist/node-D9-F9uEP.d.cts +0 -238
  904. package/dist/node-D9-F9uEP.d.ts +0 -238
  905. package/dist/node.d.cts +0 -1
  906. package/dist/platform.d.cts +0 -2
  907. package/dist/platform.node.d.cts +0 -105
@@ -0,0 +1,512 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var node_exports = {};
30
+ __export(node_exports, {
31
+ NodePlatformAdapter: () => NodePlatformAdapter,
32
+ nodePlatformAdapter: () => nodePlatformAdapter
33
+ });
34
+ module.exports = __toCommonJS(node_exports);
35
+ var import_pgp_utils = require("./shared/pgp-utils");
36
+ var import_error_utils = require("./shared/error-utils");
37
+ var import_stream_utils = require("./shared/stream-utils");
38
+ var import_lazy_import = require("../utils/lazy-import");
39
+ var import_features = require("../config/features");
40
+ var import_WalletKeyEncryptionService = require("../crypto/services/WalletKeyEncryptionService");
41
+ var import_crypto_utils = require("../utils/crypto-utils");
42
+ var import_node = require("../crypto/ecies/node");
43
+ var import_interface = require("../crypto/ecies/interface");
44
+ var import_crypto = require("crypto");
45
+ var import_secp256k1 = __toESM(require("secp256k1"), 1);
46
+ const getOpenPGP = (0, import_lazy_import.lazyImport)(() => import("openpgp"));
47
+ const getEccryptoJS = (0, import_lazy_import.lazyImport)(() => import("eccrypto-js"));
48
+ class NodeCryptoAdapter {
49
+ // Initialize both providers - only one will be used based on feature flag
50
+ customEciesProvider = new import_node.NodeECIESUint8Provider();
51
+ customWalletService = new import_WalletKeyEncryptionService.WalletKeyEncryptionService({
52
+ eciesProvider: this.customEciesProvider
53
+ });
54
+ /**
55
+ * Encrypts data using ECIES with a public key.
56
+ *
57
+ * @param data - The plaintext string to encrypt.
58
+ * Typically user data or sensitive information.
59
+ * @param publicKeyHex - The recipient's public key in hex format.
60
+ * Obtain from key generation or user profile.
61
+ * @returns Encrypted data as a hex string containing IV, ephemeral key, ciphertext, and MAC
62
+ *
63
+ * @throws {Error} If encryption fails or public key is invalid
64
+ */
65
+ async encryptWithPublicKey(data, publicKeyHex) {
66
+ try {
67
+ if (import_features.features.useCustomECIES) {
68
+ const publicKey = Buffer.from(publicKeyHex, "hex");
69
+ const message = Buffer.from(data, "utf8");
70
+ const encrypted = await this.customEciesProvider.encrypt(
71
+ publicKey,
72
+ message
73
+ );
74
+ const result = Buffer.concat([
75
+ encrypted.iv,
76
+ encrypted.ephemPublicKey,
77
+ encrypted.ciphertext,
78
+ encrypted.mac
79
+ ]);
80
+ return result.toString("hex");
81
+ } else {
82
+ const eccryptojs = await getEccryptoJS();
83
+ const publicKeyBytes = Buffer.from(publicKeyHex, "hex");
84
+ const uncompressed = this.customEciesProvider.normalizeToUncompressed(
85
+ new Uint8Array(publicKeyBytes)
86
+ );
87
+ const publicKey = Buffer.from(uncompressed);
88
+ const message = Buffer.from(data, "utf8");
89
+ const encrypted = await eccryptojs.encrypt(publicKey, message);
90
+ const result = Buffer.concat([
91
+ encrypted.iv,
92
+ encrypted.ephemPublicKey,
93
+ encrypted.ciphertext,
94
+ encrypted.mac
95
+ ]);
96
+ return result.toString("hex");
97
+ }
98
+ } catch (error) {
99
+ if (import_features.features.useCustomECIES && error instanceof import_interface.ECIESError) {
100
+ throw error;
101
+ }
102
+ throw new Error(
103
+ `Encryption failed: ${error instanceof Error ? error.message : String(error)}`
104
+ );
105
+ }
106
+ }
107
+ /**
108
+ * Decrypts ECIES-encrypted data using a private key.
109
+ *
110
+ * @param encryptedData - Hex string containing encrypted data.
111
+ * Must include IV, ephemeral public key, ciphertext, and MAC.
112
+ * @param privateKeyHex - The private key in hex format.
113
+ * Must correspond to the public key used for encryption.
114
+ * @returns The decrypted plaintext string
115
+ *
116
+ * @throws {Error} If decryption fails or MAC verification fails
117
+ * @throws {ECIESError} If using custom ECIES and specific error occurs
118
+ */
119
+ async decryptWithPrivateKey(encryptedData, privateKeyHex) {
120
+ try {
121
+ if (import_features.features.useCustomECIES) {
122
+ const privateKeyBuffer = (0, import_crypto_utils.processWalletPrivateKey)(privateKeyHex);
123
+ const encryptedBuffer = Buffer.from(encryptedData, "hex");
124
+ const { iv, ephemPublicKey, ciphertext, mac } = (0, import_crypto_utils.parseEncryptedDataBuffer)(encryptedBuffer);
125
+ const encryptedObj = {
126
+ iv,
127
+ ephemPublicKey,
128
+ ciphertext,
129
+ mac
130
+ };
131
+ const decrypted = await this.customEciesProvider.decrypt(
132
+ privateKeyBuffer,
133
+ encryptedObj
134
+ );
135
+ return new TextDecoder().decode(decrypted);
136
+ } else {
137
+ const eccryptojs = await getEccryptoJS();
138
+ const privateKey = Buffer.from(privateKeyHex, "hex");
139
+ const encryptedBuffer = Buffer.from(encryptedData, "hex");
140
+ const { iv, ephemPublicKey, ciphertext, mac } = (0, import_crypto_utils.parseEncryptedDataBuffer)(encryptedBuffer);
141
+ const decrypted = await eccryptojs.decrypt(privateKey, {
142
+ iv: Buffer.from(iv),
143
+ ephemPublicKey: Buffer.from(ephemPublicKey),
144
+ ciphertext: Buffer.from(ciphertext),
145
+ mac: Buffer.from(mac)
146
+ });
147
+ return decrypted.toString("utf8");
148
+ }
149
+ } catch (error) {
150
+ if (import_features.features.useCustomECIES && error instanceof import_interface.ECIESError) {
151
+ throw error;
152
+ }
153
+ throw new Error(
154
+ `Decryption failed: ${error instanceof Error ? error.message : String(error)}`
155
+ );
156
+ }
157
+ }
158
+ /**
159
+ * Generates a new secp256k1 key pair for ECIES operations.
160
+ *
161
+ * @returns Object containing hex-encoded public and private keys
162
+ * @returns returns.publicKey - Compressed public key in hex format
163
+ * @returns returns.privateKey - Private key in hex format
164
+ *
165
+ * @throws {Error} If key generation fails
166
+ */
167
+ async generateKeyPair() {
168
+ try {
169
+ if (import_features.features.useCustomECIES) {
170
+ const secp256k1 = import_secp256k1.default;
171
+ let privateKey;
172
+ do {
173
+ privateKey = (0, import_crypto.randomBytes)(32);
174
+ } while (!secp256k1.privateKeyVerify(privateKey));
175
+ const publicKey = Buffer.from(
176
+ secp256k1.publicKeyCreate(privateKey, true)
177
+ );
178
+ return {
179
+ privateKey: privateKey.toString("hex"),
180
+ publicKey: publicKey.toString("hex")
181
+ };
182
+ } else {
183
+ const eccryptojs = await getEccryptoJS();
184
+ const privateKey = eccryptojs.generatePrivate();
185
+ const publicKey = eccryptojs.getPublic(privateKey);
186
+ return {
187
+ privateKey: privateKey.toString("hex"),
188
+ publicKey: publicKey.toString("hex")
189
+ };
190
+ }
191
+ } catch (error) {
192
+ throw (0, import_error_utils.wrapCryptoError)("key generation", error);
193
+ }
194
+ }
195
+ /**
196
+ * Encrypts data using a wallet's public key.
197
+ *
198
+ * @param data - The plaintext string to encrypt.
199
+ * Typically permission data or DLP metadata.
200
+ * @param publicKey - The wallet's public key (with or without 0x prefix).
201
+ * Obtain from wallet connection or user profile.
202
+ * @returns Encrypted data as a hex string
203
+ *
204
+ * @throws {Error} If encryption fails or key processing fails
205
+ */
206
+ async encryptWithWalletPublicKey(data, publicKey) {
207
+ try {
208
+ if (import_features.features.useCustomECIES) {
209
+ return await this.customWalletService.encryptWithWalletPublicKey(
210
+ data,
211
+ publicKey
212
+ );
213
+ } else {
214
+ const eccryptojs = await getEccryptoJS();
215
+ const publicKeyBytes = (0, import_crypto_utils.processWalletPublicKey)(publicKey);
216
+ const uncompressed = this.customEciesProvider.normalizeToUncompressed(publicKeyBytes);
217
+ const publicKeyBuffer = Buffer.from(uncompressed);
218
+ const message = Buffer.from(data, "utf8");
219
+ const encrypted = await eccryptojs.encrypt(publicKeyBuffer, message);
220
+ const result = Buffer.concat([
221
+ encrypted.iv,
222
+ encrypted.ephemPublicKey,
223
+ encrypted.ciphertext,
224
+ encrypted.mac
225
+ ]);
226
+ return result.toString("hex");
227
+ }
228
+ } catch (error) {
229
+ throw (0, import_error_utils.wrapCryptoError)("encrypt with wallet public key", error);
230
+ }
231
+ }
232
+ /**
233
+ * Decrypts data using a wallet's private key.
234
+ *
235
+ * @param encryptedData - Hex string containing encrypted data.
236
+ * Must be encrypted with corresponding wallet public key.
237
+ * @param privateKey - The wallet's private key.
238
+ * Obtain from wallet connection (handle with care).
239
+ * @returns The decrypted plaintext string
240
+ *
241
+ * @throws {Error} If decryption fails or key is invalid
242
+ */
243
+ async decryptWithWalletPrivateKey(encryptedData, privateKey) {
244
+ try {
245
+ if (import_features.features.useCustomECIES) {
246
+ return await this.customWalletService.decryptWithWalletPrivateKey(
247
+ encryptedData,
248
+ privateKey
249
+ );
250
+ } else {
251
+ const eccryptojs = await getEccryptoJS();
252
+ const privateKeyBuffer = Buffer.from(
253
+ (0, import_crypto_utils.processWalletPrivateKey)(privateKey)
254
+ );
255
+ const encryptedBuffer = Buffer.from(encryptedData, "hex");
256
+ const { iv, ephemPublicKey, ciphertext, mac } = (0, import_crypto_utils.parseEncryptedDataBuffer)(encryptedBuffer);
257
+ const decrypted = await eccryptojs.decrypt(privateKeyBuffer, {
258
+ iv: Buffer.from(iv),
259
+ ephemPublicKey: Buffer.from(ephemPublicKey),
260
+ ciphertext: Buffer.from(ciphertext),
261
+ mac: Buffer.from(mac)
262
+ });
263
+ return decrypted.toString("utf8");
264
+ }
265
+ } catch (error) {
266
+ throw (0, import_error_utils.wrapCryptoError)("decrypt with wallet private key", error);
267
+ }
268
+ }
269
+ /**
270
+ * Encrypts binary data using password-based encryption.
271
+ *
272
+ * @param data - Binary data to encrypt.
273
+ * Typically file contents or serialized objects.
274
+ * @param password - Password for encryption.
275
+ * Often derived from wallet signatures.
276
+ * @returns Encrypted data as Uint8Array
277
+ *
278
+ * @remarks
279
+ * Uses OpenPGP for password-based encryption. Note that this is not
280
+ * deterministic due to OpenPGP's random salt generation.
281
+ *
282
+ * @throws {Error} If encryption fails
283
+ */
284
+ async encryptWithPassword(data, password) {
285
+ try {
286
+ const openpgp = await getOpenPGP();
287
+ const message = await openpgp.createMessage({
288
+ binary: data
289
+ });
290
+ const encrypted = await openpgp.encrypt({
291
+ message,
292
+ passwords: [password],
293
+ format: "binary"
294
+ });
295
+ if (encrypted instanceof Uint8Array) {
296
+ return encrypted;
297
+ }
298
+ if (encrypted && typeof encrypted === "object" && "getReader" in encrypted) {
299
+ return await (0, import_stream_utils.streamToUint8Array)(
300
+ encrypted
301
+ );
302
+ }
303
+ throw new Error("Unexpected encrypted data format");
304
+ } catch (error) {
305
+ throw (0, import_error_utils.wrapCryptoError)("encrypt with password", error);
306
+ }
307
+ }
308
+ /**
309
+ * Decrypts password-encrypted binary data.
310
+ *
311
+ * @param encryptedData - Password-encrypted data as Uint8Array.
312
+ * Must be encrypted with the same password.
313
+ * @param password - Password for decryption.
314
+ * Must match the encryption password.
315
+ * @returns Decrypted data as Uint8Array
316
+ *
317
+ * @throws {Error} If decryption fails or password is incorrect
318
+ */
319
+ async decryptWithPassword(encryptedData, password) {
320
+ try {
321
+ const openpgp = await getOpenPGP();
322
+ const message = await openpgp.readMessage({
323
+ binaryMessage: encryptedData
324
+ });
325
+ const { data: decrypted } = await openpgp.decrypt({
326
+ message,
327
+ passwords: [password],
328
+ format: "binary"
329
+ });
330
+ return new Uint8Array(decrypted);
331
+ } catch (error) {
332
+ throw (0, import_error_utils.wrapCryptoError)("decrypt with password", error);
333
+ }
334
+ }
335
+ }
336
+ class NodePGPAdapter {
337
+ /**
338
+ * Encrypts data using PGP public key encryption.
339
+ *
340
+ * @param data - The plaintext string to encrypt.
341
+ * Typically messages or structured data.
342
+ * @param publicKeyArmored - ASCII-armored PGP public key.
343
+ * Obtain from PGP key generation or key servers.
344
+ * @returns ASCII-armored encrypted message
345
+ *
346
+ * @throws {Error} If encryption fails or public key is invalid
347
+ */
348
+ async encrypt(data, publicKeyArmored) {
349
+ try {
350
+ const openpgp = await getOpenPGP();
351
+ const publicKey = await openpgp.readKey({ armoredKey: publicKeyArmored });
352
+ const encrypted = await openpgp.encrypt({
353
+ message: await openpgp.createMessage({ text: data }),
354
+ encryptionKeys: publicKey,
355
+ config: {
356
+ preferredCompressionAlgorithm: openpgp.enums.compression.zlib
357
+ }
358
+ });
359
+ return encrypted;
360
+ } catch (error) {
361
+ throw (0, import_error_utils.wrapCryptoError)("PGP encryption", error);
362
+ }
363
+ }
364
+ /**
365
+ * Decrypts PGP-encrypted data using a private key.
366
+ *
367
+ * @param encryptedData - ASCII-armored encrypted message.
368
+ * Must be encrypted with corresponding public key.
369
+ * @param privateKeyArmored - ASCII-armored PGP private key.
370
+ * Must correspond to the public key used for encryption.
371
+ * @returns The decrypted plaintext string
372
+ *
373
+ * @throws {Error} If decryption fails or private key is invalid
374
+ */
375
+ async decrypt(encryptedData, privateKeyArmored) {
376
+ try {
377
+ const openpgp = await getOpenPGP();
378
+ const privateKey = await openpgp.readPrivateKey({
379
+ armoredKey: privateKeyArmored
380
+ });
381
+ const message = await openpgp.readMessage({
382
+ armoredMessage: encryptedData
383
+ });
384
+ const { data: decrypted } = await openpgp.decrypt({
385
+ message,
386
+ decryptionKeys: privateKey
387
+ });
388
+ return decrypted;
389
+ } catch (error) {
390
+ throw (0, import_error_utils.wrapCryptoError)("PGP decryption", error);
391
+ }
392
+ }
393
+ /**
394
+ * Generates a new PGP key pair.
395
+ *
396
+ * @param options - Key generation options
397
+ * @param options.name - Name for the key identity.
398
+ * Defaults to 'Vana User'.
399
+ * @param options.email - Email for the key identity.
400
+ * Defaults to 'user@vana.com'.
401
+ * @param options.passphrase - Passphrase to protect the private key.
402
+ * If not provided, key is unprotected.
403
+ * @returns ASCII-armored public and private keys
404
+ *
405
+ * @throws {Error} If key generation fails
406
+ */
407
+ async generateKeyPair(options) {
408
+ try {
409
+ const openpgp = await getOpenPGP();
410
+ const keyGenParams = (0, import_pgp_utils.getPGPKeyGenParams)(options);
411
+ const { privateKey, publicKey } = await openpgp.generateKey(keyGenParams);
412
+ return { publicKey, privateKey };
413
+ } catch (error) {
414
+ throw (0, import_error_utils.wrapCryptoError)("PGP key generation", error);
415
+ }
416
+ }
417
+ }
418
+ class NodeHttpAdapter {
419
+ /**
420
+ * Performs an HTTP request using fetch.
421
+ *
422
+ * @param url - The URL to fetch.
423
+ * Must be a valid HTTP/HTTPS URL.
424
+ * @param options - Standard fetch options.
425
+ * See MDN fetch documentation for details.
426
+ * @returns Standard fetch Response object
427
+ *
428
+ * @throws {Error} If fetch is not available in the environment
429
+ */
430
+ async fetch(url, options) {
431
+ if (typeof globalThis.fetch !== "undefined") {
432
+ return globalThis.fetch(url, options);
433
+ }
434
+ throw new Error("No fetch implementation available in Node.js environment");
435
+ }
436
+ }
437
+ class NodeCacheAdapter {
438
+ cache = /* @__PURE__ */ new Map();
439
+ defaultTtl = 2 * 60 * 60 * 1e3;
440
+ // 2 hours in milliseconds
441
+ /**
442
+ * Retrieves a cached value by key.
443
+ *
444
+ * @param key - The cache key to look up.
445
+ * Typically derived from operation parameters.
446
+ * @returns The cached value or null if not found/expired
447
+ */
448
+ get(key) {
449
+ const entry = this.cache.get(key);
450
+ if (!entry) {
451
+ return null;
452
+ }
453
+ if (Date.now() > entry.expires) {
454
+ this.cache.delete(key);
455
+ return null;
456
+ }
457
+ return entry.value;
458
+ }
459
+ /**
460
+ * Stores a value in the cache with TTL.
461
+ *
462
+ * @param key - The cache key.
463
+ * Should be unique per operation.
464
+ * @param value - The value to cache.
465
+ * Typically serialized data or signatures.
466
+ */
467
+ set(key, value) {
468
+ this.cache.set(key, {
469
+ value,
470
+ expires: Date.now() + this.defaultTtl
471
+ });
472
+ }
473
+ /**
474
+ * Removes a specific key from the cache.
475
+ *
476
+ * @param key - The cache key to remove.
477
+ * Use when cached data becomes invalid.
478
+ */
479
+ delete(key) {
480
+ this.cache.delete(key);
481
+ }
482
+ /**
483
+ * Clears all cached values.
484
+ *
485
+ * @remarks
486
+ * Use with caution as this removes all cached signatures
487
+ * and other performance optimizations.
488
+ */
489
+ clear() {
490
+ this.cache.clear();
491
+ }
492
+ }
493
+ class NodePlatformAdapter {
494
+ crypto;
495
+ pgp;
496
+ http;
497
+ cache;
498
+ platform = "node";
499
+ constructor() {
500
+ this.crypto = new NodeCryptoAdapter();
501
+ this.pgp = new NodePGPAdapter();
502
+ this.http = new NodeHttpAdapter();
503
+ this.cache = new NodeCacheAdapter();
504
+ }
505
+ }
506
+ const nodePlatformAdapter = new NodePlatformAdapter();
507
+ // Annotate the CommonJS export names for ESM import in node:
508
+ 0 && (module.exports = {
509
+ NodePlatformAdapter,
510
+ nodePlatformAdapter
511
+ });
512
+ //# sourceMappingURL=node.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/platform/node.ts"],"sourcesContent":["/**\n * Provides Node.js-specific implementations of platform abstraction interfaces.\n *\n * @remarks\n * This module implements all platform-specific operations for Node.js environments,\n * including cryptography, PGP operations, HTTP requests, and caching. It dynamically\n * imports dependencies to avoid Turbopack TDZ issues and supports both standard\n * eccrypto and custom ECIES implementations based on feature flags.\n *\n * WARNING: Dependencies that access globals during init MUST be dynamically imported\n * to support Turbopack. See: https://github.com/vercel/next.js/issues/82632\n *\n * @example\n * ```typescript\n * // Use the Node.js platform adapter\n * import { nodePlatformAdapter } from '@vana-sdk/platform/node';\n *\n * // Encrypt data with public key\n * const encrypted = await nodePlatformAdapter.crypto.encryptWithPublicKey(\n * 'sensitive data',\n * '0x04...' // Public key hex\n * );\n *\n * // Generate PGP key pair\n * const { publicKey, privateKey } = await nodePlatformAdapter.pgp.generateKeyPair({\n * name: 'Data Owner',\n * email: 'owner@example.com'\n * });\n * ```\n *\n * @category Platform\n * @module platform/node\n */\n\nimport type {\n VanaPlatformAdapter,\n VanaCryptoAdapter,\n VanaPGPAdapter,\n VanaHttpAdapter,\n VanaCacheAdapter,\n} from \"./interface\";\nimport { getPGPKeyGenParams } from \"./shared/pgp-utils\";\nimport { wrapCryptoError } from \"./shared/error-utils\";\nimport { streamToUint8Array } from \"./shared/stream-utils\";\nimport { lazyImport } from \"../utils/lazy-import\";\nimport { features } from \"../config/features\";\nimport { WalletKeyEncryptionService } from \"../crypto/services/WalletKeyEncryptionService\";\nimport {\n processWalletPrivateKey,\n parseEncryptedDataBuffer,\n processWalletPublicKey,\n} from \"../utils/crypto-utils\";\n\n// Lazy-loaded dependencies to avoid Turbopack TDZ issues\nconst getOpenPGP = lazyImport(() => import(\"openpgp\"));\nconst getEccryptoJS = lazyImport(() => import(\"eccrypto-js\"));\n\n// Import both ECIES implementations statically\nimport { NodeECIESUint8Provider } from \"../crypto/ecies/node\";\nimport { ECIESError } from \"../crypto/ecies/interface\";\nimport type { ECIESEncrypted } from \"../crypto/ecies\";\nimport { randomBytes } from \"crypto\";\nimport secp256k1Import from \"secp256k1\";\n\n// Type definition for secp256k1 module\ninterface Secp256k1Module {\n privateKeyVerify(privateKey: Buffer): boolean;\n publicKeyCreate(privateKey: Buffer, compressed: boolean): Buffer;\n publicKeyVerify(publicKey: Buffer): boolean;\n publicKeyConvert(publicKey: Buffer, compressed: boolean): Buffer;\n ecdh(\n publicKey: Buffer,\n privateKey: Buffer,\n options: {\n hashfn: (x: Uint8Array, y: Uint8Array, output?: Uint8Array) => Uint8Array;\n },\n output: Buffer,\n ): Buffer;\n}\n\n/**\n * Implements cryptographic operations for Node.js environments.\n *\n * @remarks\n * Provides ECIES encryption/decryption, key generation, and password-based\n * encryption using either eccrypto-js or a custom ECIES implementation.\n * The implementation choice is controlled by the `useCustomECIES` feature flag.\n *\n * @internal\n */\nclass NodeCryptoAdapter implements VanaCryptoAdapter {\n // Initialize both providers - only one will be used based on feature flag\n private customEciesProvider = new NodeECIESUint8Provider();\n private customWalletService = new WalletKeyEncryptionService({\n eciesProvider: this.customEciesProvider,\n });\n\n /**\n * Encrypts data using ECIES with a public key.\n *\n * @param data - The plaintext string to encrypt.\n * Typically user data or sensitive information.\n * @param publicKeyHex - The recipient's public key in hex format.\n * Obtain from key generation or user profile.\n * @returns Encrypted data as a hex string containing IV, ephemeral key, ciphertext, and MAC\n *\n * @throws {Error} If encryption fails or public key is invalid\n */\n async encryptWithPublicKey(\n data: string,\n publicKeyHex: string,\n ): Promise<string> {\n try {\n if (features.useCustomECIES) {\n // Use custom ECIES implementation\n const publicKey = Buffer.from(publicKeyHex, \"hex\");\n const message = Buffer.from(data, \"utf8\");\n\n const encrypted = await this.customEciesProvider.encrypt(\n publicKey,\n message,\n );\n\n // Concatenate all components and return as hex string for API consistency\n const result = Buffer.concat([\n encrypted.iv,\n encrypted.ephemPublicKey,\n encrypted.ciphertext,\n encrypted.mac,\n ]);\n\n return result.toString(\"hex\");\n } else {\n // Use eccrypto-js (default)\n const eccryptojs = await getEccryptoJS();\n const publicKeyBytes = Buffer.from(publicKeyHex, \"hex\");\n\n // Normalize to uncompressed format using the ECIES provider\n // This handles both compressed (33 bytes) and uncompressed (65 bytes) keys\n const uncompressed = this.customEciesProvider.normalizeToUncompressed(\n new Uint8Array(publicKeyBytes),\n );\n const publicKey = Buffer.from(uncompressed);\n\n const message = Buffer.from(data, \"utf8\");\n\n const encrypted = await eccryptojs.encrypt(publicKey, message);\n\n // Concatenate all components and return as hex string for API consistency\n const result = Buffer.concat([\n encrypted.iv,\n encrypted.ephemPublicKey,\n encrypted.ciphertext,\n encrypted.mac,\n ]);\n\n return result.toString(\"hex\");\n }\n } catch (error) {\n if (features.useCustomECIES && error instanceof ECIESError) {\n throw error;\n }\n throw new Error(\n `Encryption failed: ${error instanceof Error ? error.message : String(error)}`,\n );\n }\n }\n\n /**\n * Decrypts ECIES-encrypted data using a private key.\n *\n * @param encryptedData - Hex string containing encrypted data.\n * Must include IV, ephemeral public key, ciphertext, and MAC.\n * @param privateKeyHex - The private key in hex format.\n * Must correspond to the public key used for encryption.\n * @returns The decrypted plaintext string\n *\n * @throws {Error} If decryption fails or MAC verification fails\n * @throws {ECIESError} If using custom ECIES and specific error occurs\n */\n async decryptWithPrivateKey(\n encryptedData: string,\n privateKeyHex: string,\n ): Promise<string> {\n try {\n if (features.useCustomECIES) {\n // Use custom ECIES implementation\n const privateKeyBuffer = processWalletPrivateKey(privateKeyHex);\n const encryptedBuffer = Buffer.from(encryptedData, \"hex\");\n const { iv, ephemPublicKey, ciphertext, mac } =\n parseEncryptedDataBuffer(encryptedBuffer);\n\n // Reconstruct the encrypted data structure\n const encryptedObj: ECIESEncrypted = {\n iv,\n ephemPublicKey,\n ciphertext,\n mac,\n };\n\n const decrypted = await this.customEciesProvider.decrypt(\n privateKeyBuffer,\n encryptedObj,\n );\n return new TextDecoder().decode(decrypted);\n } else {\n // Use eccrypto-js (default)\n const eccryptojs = await getEccryptoJS();\n const privateKey = Buffer.from(privateKeyHex, \"hex\");\n const encryptedBuffer = Buffer.from(encryptedData, \"hex\");\n\n // Parse the encrypted data\n const { iv, ephemPublicKey, ciphertext, mac } =\n parseEncryptedDataBuffer(encryptedBuffer);\n\n const decrypted = await eccryptojs.decrypt(privateKey, {\n iv: Buffer.from(iv),\n ephemPublicKey: Buffer.from(ephemPublicKey),\n ciphertext: Buffer.from(ciphertext),\n mac: Buffer.from(mac),\n });\n\n return decrypted.toString(\"utf8\");\n }\n } catch (error) {\n if (features.useCustomECIES && error instanceof ECIESError) {\n throw error;\n }\n throw new Error(\n `Decryption failed: ${error instanceof Error ? error.message : String(error)}`,\n );\n }\n }\n\n /**\n * Generates a new secp256k1 key pair for ECIES operations.\n *\n * @returns Object containing hex-encoded public and private keys\n * @returns returns.publicKey - Compressed public key in hex format\n * @returns returns.privateKey - Private key in hex format\n *\n * @throws {Error} If key generation fails\n */\n async generateKeyPair(): Promise<{ publicKey: string; privateKey: string }> {\n try {\n if (features.useCustomECIES) {\n // Use custom implementation with secp256k1\n const secp256k1 = secp256k1Import as unknown as Secp256k1Module;\n\n // Generate private key\n let privateKey: Buffer;\n do {\n privateKey = randomBytes(32);\n } while (!secp256k1.privateKeyVerify(privateKey));\n\n // Get compressed public key\n const publicKey = Buffer.from(\n secp256k1.publicKeyCreate(privateKey, true),\n );\n\n return {\n privateKey: privateKey.toString(\"hex\"),\n publicKey: publicKey.toString(\"hex\"),\n };\n } else {\n // Use eccrypto-js (default)\n const eccryptojs = await getEccryptoJS();\n const privateKey = eccryptojs.generatePrivate();\n const publicKey = eccryptojs.getPublic(privateKey);\n\n return {\n privateKey: privateKey.toString(\"hex\"),\n publicKey: publicKey.toString(\"hex\"),\n };\n }\n } catch (error) {\n throw wrapCryptoError(\"key generation\", error);\n }\n }\n\n /**\n * Encrypts data using a wallet's public key.\n *\n * @param data - The plaintext string to encrypt.\n * Typically permission data or DLP metadata.\n * @param publicKey - The wallet's public key (with or without 0x prefix).\n * Obtain from wallet connection or user profile.\n * @returns Encrypted data as a hex string\n *\n * @throws {Error} If encryption fails or key processing fails\n */\n async encryptWithWalletPublicKey(\n data: string,\n publicKey: string,\n ): Promise<string> {\n try {\n if (features.useCustomECIES) {\n // Use custom ECIES implementation via WalletKeyEncryptionService\n return await this.customWalletService.encryptWithWalletPublicKey(\n data,\n publicKey,\n );\n } else {\n // Use eccrypto-js directly for wallet encryption\n const eccryptojs = await getEccryptoJS();\n const publicKeyBytes = processWalletPublicKey(publicKey);\n\n // Normalize to uncompressed format using the ECIES provider\n // This handles both compressed (33 bytes) and uncompressed (65 bytes) keys\n const uncompressed =\n this.customEciesProvider.normalizeToUncompressed(publicKeyBytes);\n const publicKeyBuffer = Buffer.from(uncompressed);\n\n const message = Buffer.from(data, \"utf8\");\n\n const encrypted = await eccryptojs.encrypt(publicKeyBuffer, message);\n\n // Concatenate all components and return as hex string\n const result = Buffer.concat([\n encrypted.iv,\n encrypted.ephemPublicKey,\n encrypted.ciphertext,\n encrypted.mac,\n ]);\n\n return result.toString(\"hex\");\n }\n } catch (error) {\n throw wrapCryptoError(\"encrypt with wallet public key\", error);\n }\n }\n\n /**\n * Decrypts data using a wallet's private key.\n *\n * @param encryptedData - Hex string containing encrypted data.\n * Must be encrypted with corresponding wallet public key.\n * @param privateKey - The wallet's private key.\n * Obtain from wallet connection (handle with care).\n * @returns The decrypted plaintext string\n *\n * @throws {Error} If decryption fails or key is invalid\n */\n async decryptWithWalletPrivateKey(\n encryptedData: string,\n privateKey: string,\n ): Promise<string> {\n try {\n if (features.useCustomECIES) {\n // Use custom ECIES implementation via WalletKeyEncryptionService\n return await this.customWalletService.decryptWithWalletPrivateKey(\n encryptedData,\n privateKey,\n );\n } else {\n // Use eccrypto-js directly for wallet decryption\n const eccryptojs = await getEccryptoJS();\n const privateKeyBuffer = Buffer.from(\n processWalletPrivateKey(privateKey),\n );\n const encryptedBuffer = Buffer.from(encryptedData, \"hex\");\n\n // Parse the encrypted data\n const { iv, ephemPublicKey, ciphertext, mac } =\n parseEncryptedDataBuffer(encryptedBuffer);\n\n const decrypted = await eccryptojs.decrypt(privateKeyBuffer, {\n iv: Buffer.from(iv),\n ephemPublicKey: Buffer.from(ephemPublicKey),\n ciphertext: Buffer.from(ciphertext),\n mac: Buffer.from(mac),\n });\n\n return decrypted.toString(\"utf8\");\n }\n } catch (error) {\n throw wrapCryptoError(\"decrypt with wallet private key\", error);\n }\n }\n\n /**\n * Encrypts binary data using password-based encryption.\n *\n * @param data - Binary data to encrypt.\n * Typically file contents or serialized objects.\n * @param password - Password for encryption.\n * Often derived from wallet signatures.\n * @returns Encrypted data as Uint8Array\n *\n * @remarks\n * Uses OpenPGP for password-based encryption. Note that this is not\n * deterministic due to OpenPGP's random salt generation.\n *\n * @throws {Error} If encryption fails\n */\n async encryptWithPassword(\n data: Uint8Array,\n password: string,\n ): Promise<Uint8Array> {\n try {\n const openpgp = await getOpenPGP();\n const message = await openpgp.createMessage({\n binary: data,\n });\n\n // Use password-based encryption with wallet signature as password\n // Note: For deterministic encryption, we would need to control the salt\n // This implementation is secure but not deterministic due to OpenPGP's design\n const encrypted = await openpgp.encrypt({\n message,\n passwords: [password],\n format: \"binary\",\n });\n\n // In Node.js, the encrypted result is already a Uint8Array\n if (encrypted instanceof Uint8Array) {\n return encrypted;\n }\n\n // If it's a stream (should not happen with format: \"binary\"), read it\n if (\n encrypted &&\n typeof encrypted === \"object\" &&\n \"getReader\" in encrypted\n ) {\n return await streamToUint8Array(\n encrypted as ReadableStream<Uint8Array>,\n );\n }\n\n throw new Error(\"Unexpected encrypted data format\");\n } catch (error) {\n throw wrapCryptoError(\"encrypt with password\", error);\n }\n }\n\n /**\n * Decrypts password-encrypted binary data.\n *\n * @param encryptedData - Password-encrypted data as Uint8Array.\n * Must be encrypted with the same password.\n * @param password - Password for decryption.\n * Must match the encryption password.\n * @returns Decrypted data as Uint8Array\n *\n * @throws {Error} If decryption fails or password is incorrect\n */\n async decryptWithPassword(\n encryptedData: Uint8Array,\n password: string,\n ): Promise<Uint8Array> {\n try {\n const openpgp = await getOpenPGP();\n const message = await openpgp.readMessage({\n binaryMessage: encryptedData,\n });\n\n // Use password-based decryption with wallet signature as password\n const { data: decrypted } = await openpgp.decrypt({\n message,\n passwords: [password],\n format: \"binary\",\n });\n\n // Convert decrypted data back to Uint8Array\n return new Uint8Array(decrypted as ArrayBuffer);\n } catch (error) {\n throw wrapCryptoError(\"decrypt with password\", error);\n }\n }\n}\n\n/**\n * Implements PGP operations for Node.js environments.\n *\n * @remarks\n * Provides PGP encryption, decryption, and key generation using the OpenPGP.js\n * library with Node.js-specific optimizations like zlib compression.\n *\n * @internal\n */\nclass NodePGPAdapter implements VanaPGPAdapter {\n /**\n * Encrypts data using PGP public key encryption.\n *\n * @param data - The plaintext string to encrypt.\n * Typically messages or structured data.\n * @param publicKeyArmored - ASCII-armored PGP public key.\n * Obtain from PGP key generation or key servers.\n * @returns ASCII-armored encrypted message\n *\n * @throws {Error} If encryption fails or public key is invalid\n */\n async encrypt(data: string, publicKeyArmored: string): Promise<string> {\n try {\n const openpgp = await getOpenPGP();\n const publicKey = await openpgp.readKey({ armoredKey: publicKeyArmored });\n\n const encrypted = await openpgp.encrypt({\n message: await openpgp.createMessage({ text: data }),\n encryptionKeys: publicKey,\n config: {\n preferredCompressionAlgorithm: openpgp.enums.compression.zlib,\n },\n });\n\n return encrypted as string;\n } catch (error) {\n throw wrapCryptoError(\"PGP encryption\", error);\n }\n }\n\n /**\n * Decrypts PGP-encrypted data using a private key.\n *\n * @param encryptedData - ASCII-armored encrypted message.\n * Must be encrypted with corresponding public key.\n * @param privateKeyArmored - ASCII-armored PGP private key.\n * Must correspond to the public key used for encryption.\n * @returns The decrypted plaintext string\n *\n * @throws {Error} If decryption fails or private key is invalid\n */\n async decrypt(\n encryptedData: string,\n privateKeyArmored: string,\n ): Promise<string> {\n try {\n const openpgp = await getOpenPGP();\n const privateKey = await openpgp.readPrivateKey({\n armoredKey: privateKeyArmored,\n });\n const message = await openpgp.readMessage({\n armoredMessage: encryptedData,\n });\n\n const { data: decrypted } = await openpgp.decrypt({\n message,\n decryptionKeys: privateKey,\n });\n\n return decrypted as string;\n } catch (error) {\n throw wrapCryptoError(\"PGP decryption\", error);\n }\n }\n\n /**\n * Generates a new PGP key pair.\n *\n * @param options - Key generation options\n * @param options.name - Name for the key identity.\n * Defaults to 'Vana User'.\n * @param options.email - Email for the key identity.\n * Defaults to 'user@vana.com'.\n * @param options.passphrase - Passphrase to protect the private key.\n * If not provided, key is unprotected.\n * @returns ASCII-armored public and private keys\n *\n * @throws {Error} If key generation fails\n */\n async generateKeyPair(options?: {\n name?: string;\n email?: string;\n passphrase?: string;\n }): Promise<{ publicKey: string; privateKey: string }> {\n try {\n const openpgp = await getOpenPGP();\n // Use shared utility to get standardized parameters\n const keyGenParams = getPGPKeyGenParams(options);\n\n const { privateKey, publicKey } = await openpgp.generateKey(keyGenParams);\n\n return { publicKey, privateKey };\n } catch (error) {\n throw wrapCryptoError(\"PGP key generation\", error);\n }\n }\n}\n\n/**\n * Implements HTTP operations for Node.js environments.\n *\n * @remarks\n * Provides fetch functionality using the global fetch if available,\n * suitable for Node.js 18+ or environments with fetch polyfills.\n *\n * @internal\n */\nclass NodeHttpAdapter implements VanaHttpAdapter {\n /**\n * Performs an HTTP request using fetch.\n *\n * @param url - The URL to fetch.\n * Must be a valid HTTP/HTTPS URL.\n * @param options - Standard fetch options.\n * See MDN fetch documentation for details.\n * @returns Standard fetch Response object\n *\n * @throws {Error} If fetch is not available in the environment\n */\n async fetch(url: string, options?: RequestInit): Promise<Response> {\n if (typeof globalThis.fetch !== \"undefined\") {\n return globalThis.fetch(url, options);\n }\n\n throw new Error(\"No fetch implementation available in Node.js environment\");\n }\n}\n\n/**\n * Implements in-memory caching for Node.js environments.\n *\n * @remarks\n * Provides a simple TTL-based cache using a Map. Cached values expire\n * after 2 hours by default. This cache is not persistent and will be\n * cleared when the process exits.\n *\n * @internal\n */\nclass NodeCacheAdapter implements VanaCacheAdapter {\n private cache = new Map<string, { value: string; expires: number }>();\n private readonly defaultTtl = 2 * 60 * 60 * 1000; // 2 hours in milliseconds\n\n /**\n * Retrieves a cached value by key.\n *\n * @param key - The cache key to look up.\n * Typically derived from operation parameters.\n * @returns The cached value or null if not found/expired\n */\n get(key: string): string | null {\n const entry = this.cache.get(key);\n if (!entry) {\n return null;\n }\n\n // Check if expired\n if (Date.now() > entry.expires) {\n this.cache.delete(key);\n return null;\n }\n\n return entry.value;\n }\n\n /**\n * Stores a value in the cache with TTL.\n *\n * @param key - The cache key.\n * Should be unique per operation.\n * @param value - The value to cache.\n * Typically serialized data or signatures.\n */\n set(key: string, value: string): void {\n this.cache.set(key, {\n value,\n expires: Date.now() + this.defaultTtl,\n });\n }\n\n /**\n * Removes a specific key from the cache.\n *\n * @param key - The cache key to remove.\n * Use when cached data becomes invalid.\n */\n delete(key: string): void {\n this.cache.delete(key);\n }\n\n /**\n * Clears all cached values.\n *\n * @remarks\n * Use with caution as this removes all cached signatures\n * and other performance optimizations.\n */\n clear(): void {\n this.cache.clear();\n }\n}\n\n/**\n * Provides complete platform abstraction for Node.js environments.\n *\n * @remarks\n * This adapter aggregates all Node.js-specific implementations of platform\n * operations. It automatically selects appropriate cryptographic implementations\n * based on feature flags and provides consistent APIs across all operations.\n *\n * @example\n * ```typescript\n * // Create a custom Node.js adapter instance\n * const adapter = new NodePlatformAdapter();\n *\n * // Use for encryption\n * const encrypted = await adapter.crypto.encryptWithPublicKey(\n * 'secret data',\n * publicKeyHex\n * );\n *\n * // Use for caching\n * adapter.cache.set('signature_key', signatureValue);\n * ```\n *\n * @category Platform\n */\nexport class NodePlatformAdapter implements VanaPlatformAdapter {\n crypto: VanaCryptoAdapter;\n pgp: VanaPGPAdapter;\n http: VanaHttpAdapter;\n cache: VanaCacheAdapter;\n platform: \"node\" = \"node\" as const;\n\n constructor() {\n this.crypto = new NodeCryptoAdapter();\n this.pgp = new NodePGPAdapter();\n this.http = new NodeHttpAdapter();\n this.cache = new NodeCacheAdapter();\n }\n}\n\n/**\n * Pre-configured Node.js platform adapter instance.\n *\n * @remarks\n * This singleton instance is the default adapter used by the SDK when\n * running in Node.js environments. It's automatically selected based on\n * platform detection.\n *\n * @example\n * ```typescript\n * import { nodePlatformAdapter } from '@vana-sdk/platform/node';\n *\n * // Use directly for platform operations\n * const keys = await nodePlatformAdapter.crypto.generateKeyPair();\n * ```\n *\n * @category Platform\n */\nexport const nodePlatformAdapter: VanaPlatformAdapter =\n new NodePlatformAdapter();\n"],"mappings":"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","names":["secp256k1Import"]}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Provides Node.js-specific implementations of platform abstraction interfaces.
3
+ *
4
+ * @remarks
5
+ * This module implements all platform-specific operations for Node.js environments,
6
+ * including cryptography, PGP operations, HTTP requests, and caching. It dynamically
7
+ * imports dependencies to avoid Turbopack TDZ issues and supports both standard
8
+ * eccrypto and custom ECIES implementations based on feature flags.
9
+ *
10
+ * WARNING: Dependencies that access globals during init MUST be dynamically imported
11
+ * to support Turbopack. See: https://github.com/vercel/next.js/issues/82632
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * // Use the Node.js platform adapter
16
+ * import { nodePlatformAdapter } from '@vana-sdk/platform/node';
17
+ *
18
+ * // Encrypt data with public key
19
+ * const encrypted = await nodePlatformAdapter.crypto.encryptWithPublicKey(
20
+ * 'sensitive data',
21
+ * '0x04...' // Public key hex
22
+ * );
23
+ *
24
+ * // Generate PGP key pair
25
+ * const { publicKey, privateKey } = await nodePlatformAdapter.pgp.generateKeyPair({
26
+ * name: 'Data Owner',
27
+ * email: 'owner@example.com'
28
+ * });
29
+ * ```
30
+ *
31
+ * @category Platform
32
+ * @module platform/node
33
+ */
34
+ import type { VanaPlatformAdapter, VanaCryptoAdapter, VanaPGPAdapter, VanaHttpAdapter, VanaCacheAdapter } from "./interface";
35
+ /**
36
+ * Provides complete platform abstraction for Node.js environments.
37
+ *
38
+ * @remarks
39
+ * This adapter aggregates all Node.js-specific implementations of platform
40
+ * operations. It automatically selects appropriate cryptographic implementations
41
+ * based on feature flags and provides consistent APIs across all operations.
42
+ *
43
+ * @example
44
+ * ```typescript
45
+ * // Create a custom Node.js adapter instance
46
+ * const adapter = new NodePlatformAdapter();
47
+ *
48
+ * // Use for encryption
49
+ * const encrypted = await adapter.crypto.encryptWithPublicKey(
50
+ * 'secret data',
51
+ * publicKeyHex
52
+ * );
53
+ *
54
+ * // Use for caching
55
+ * adapter.cache.set('signature_key', signatureValue);
56
+ * ```
57
+ *
58
+ * @category Platform
59
+ */
60
+ export declare class NodePlatformAdapter implements VanaPlatformAdapter {
61
+ crypto: VanaCryptoAdapter;
62
+ pgp: VanaPGPAdapter;
63
+ http: VanaHttpAdapter;
64
+ cache: VanaCacheAdapter;
65
+ platform: "node";
66
+ constructor();
67
+ }
68
+ /**
69
+ * Pre-configured Node.js platform adapter instance.
70
+ *
71
+ * @remarks
72
+ * This singleton instance is the default adapter used by the SDK when
73
+ * running in Node.js environments. It's automatically selected based on
74
+ * platform detection.
75
+ *
76
+ * @example
77
+ * ```typescript
78
+ * import { nodePlatformAdapter } from '@vana-sdk/platform/node';
79
+ *
80
+ * // Use directly for platform operations
81
+ * const keys = await nodePlatformAdapter.crypto.generateKeyPair();
82
+ * ```
83
+ *
84
+ * @category Platform
85
+ */
86
+ export declare const nodePlatformAdapter: VanaPlatformAdapter;