@opendatalabs/vana-sdk 2.2.3 → 3.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 (622) hide show
  1. package/README.md +76 -92
  2. package/dist/auth/errors.cjs +54 -0
  3. package/dist/auth/errors.cjs.map +1 -0
  4. package/dist/auth/errors.d.ts +26 -0
  5. package/dist/auth/errors.js +28 -0
  6. package/dist/auth/errors.js.map +1 -0
  7. package/dist/auth/pkce.cjs +100 -0
  8. package/dist/auth/pkce.cjs.map +1 -0
  9. package/dist/auth/pkce.d.ts +55 -0
  10. package/dist/auth/pkce.js +71 -0
  11. package/dist/auth/pkce.js.map +1 -0
  12. package/dist/auth/token-store.cjs +59 -0
  13. package/dist/auth/token-store.cjs.map +1 -0
  14. package/dist/auth/token-store.d.ts +61 -0
  15. package/dist/auth/token-store.js +35 -0
  16. package/dist/auth/token-store.js.map +1 -0
  17. package/dist/auth/web3-signed-builder.cjs +70 -0
  18. package/dist/auth/web3-signed-builder.cjs.map +1 -0
  19. package/dist/auth/web3-signed-builder.d.ts +47 -0
  20. package/dist/auth/web3-signed-builder.js +45 -0
  21. package/dist/auth/web3-signed-builder.js.map +1 -0
  22. package/dist/auth/web3-signed.cjs +125 -0
  23. package/dist/auth/web3-signed.cjs.map +1 -0
  24. package/dist/auth/web3-signed.d.ts +59 -0
  25. package/dist/auth/web3-signed.js +104 -0
  26. package/dist/auth/web3-signed.js.map +1 -0
  27. package/dist/chains/definitions.cjs +2 -6
  28. package/dist/chains/definitions.cjs.map +1 -1
  29. package/dist/chains/definitions.d.ts +1 -7
  30. package/dist/chains/definitions.js +2 -6
  31. package/dist/chains/definitions.js.map +1 -1
  32. package/dist/config/chains.d.ts +18 -0
  33. package/dist/config/contracts.config.cjs +7 -95
  34. package/dist/config/contracts.config.cjs.map +1 -1
  35. package/dist/config/contracts.config.d.ts +0 -54
  36. package/dist/config/contracts.config.js +6 -93
  37. package/dist/config/contracts.config.js.map +1 -1
  38. package/dist/config/default-services.cjs +0 -10
  39. package/dist/config/default-services.cjs.map +1 -1
  40. package/dist/config/default-services.d.ts +1 -20
  41. package/dist/config/default-services.js +0 -9
  42. package/dist/config/default-services.js.map +1 -1
  43. package/dist/crypto/ecies/interface.cjs +2 -0
  44. package/dist/crypto/ecies/interface.cjs.map +1 -1
  45. package/dist/crypto/ecies/interface.js +2 -0
  46. package/dist/crypto/ecies/interface.js.map +1 -1
  47. package/dist/crypto/envelope/openpgp.cjs +59 -0
  48. package/dist/crypto/envelope/openpgp.cjs.map +1 -0
  49. package/dist/crypto/envelope/openpgp.d.ts +28 -0
  50. package/dist/crypto/envelope/openpgp.js +24 -0
  51. package/dist/crypto/envelope/openpgp.js.map +1 -0
  52. package/dist/crypto/keys/derive.cjs +65 -0
  53. package/dist/crypto/keys/derive.cjs.map +1 -0
  54. package/dist/crypto/keys/derive.d.ts +45 -0
  55. package/dist/crypto/keys/derive.js +38 -0
  56. package/dist/crypto/keys/derive.js.map +1 -0
  57. package/dist/errors.cjs +10 -0
  58. package/dist/errors.cjs.map +1 -1
  59. package/dist/errors.js +10 -0
  60. package/dist/errors.js.map +1 -1
  61. package/dist/generated/abi/VanaPoolEntityImplementation.cjs +65 -0
  62. package/dist/generated/abi/VanaPoolEntityImplementation.cjs.map +1 -1
  63. package/dist/generated/abi/VanaPoolEntityImplementation.d.ts +51 -0
  64. package/dist/generated/abi/VanaPoolEntityImplementation.js +65 -0
  65. package/dist/generated/abi/VanaPoolEntityImplementation.js.map +1 -1
  66. package/dist/generated/abi/VanaPoolStakingImplementation.cjs +187 -19
  67. package/dist/generated/abi/VanaPoolStakingImplementation.cjs.map +1 -1
  68. package/dist/generated/abi/VanaPoolStakingImplementation.d.ts +144 -14
  69. package/dist/generated/abi/VanaPoolStakingImplementation.js +187 -19
  70. package/dist/generated/abi/VanaPoolStakingImplementation.js.map +1 -1
  71. package/dist/generated/abi/index.cjs +2 -37
  72. package/dist/generated/abi/index.cjs.map +1 -1
  73. package/dist/generated/abi/index.d.ts +2687 -9119
  74. package/dist/generated/abi/index.js +2 -29
  75. package/dist/generated/abi/index.js.map +1 -1
  76. package/dist/generated/addresses.cjs +5 -107
  77. package/dist/generated/addresses.cjs.map +1 -1
  78. package/dist/generated/addresses.d.ts +5 -99
  79. package/dist/generated/addresses.js +5 -105
  80. package/dist/generated/addresses.js.map +1 -1
  81. package/dist/index.browser.d.ts +23 -138
  82. package/dist/index.browser.js +32090 -112
  83. package/dist/index.browser.js.map +7 -1
  84. package/dist/index.node.cjs +32809 -157
  85. package/dist/index.node.cjs.map +7 -1
  86. package/dist/index.node.d.ts +22 -208
  87. package/dist/index.node.js +32716 -131
  88. package/dist/index.node.js.map +7 -1
  89. package/dist/protocol/data-file.cjs +56 -0
  90. package/dist/protocol/data-file.cjs.map +1 -0
  91. package/dist/protocol/data-file.d.ts +20 -0
  92. package/dist/protocol/data-file.js +30 -0
  93. package/dist/protocol/data-file.js.map +1 -0
  94. package/dist/protocol/eip712.cjs +123 -0
  95. package/dist/protocol/eip712.cjs.map +1 -0
  96. package/dist/protocol/eip712.d.ts +117 -0
  97. package/dist/protocol/eip712.js +90 -0
  98. package/dist/protocol/eip712.js.map +1 -0
  99. package/dist/protocol/gateway.cjs +226 -0
  100. package/dist/protocol/gateway.cjs.map +1 -0
  101. package/dist/protocol/gateway.d.ts +120 -0
  102. package/dist/protocol/gateway.js +202 -0
  103. package/dist/protocol/gateway.js.map +1 -0
  104. package/dist/protocol/scopes.cjs +78 -0
  105. package/dist/protocol/scopes.cjs.map +1 -0
  106. package/dist/protocol/scopes.d.ts +13 -0
  107. package/dist/protocol/scopes.js +50 -0
  108. package/dist/protocol/scopes.js.map +1 -0
  109. package/dist/{types/atomicStore.cjs → storage/default.cjs} +9 -8
  110. package/dist/storage/default.cjs.map +1 -0
  111. package/dist/storage/default.d.ts +4 -0
  112. package/dist/storage/default.js +8 -0
  113. package/dist/storage/default.js.map +1 -0
  114. package/dist/storage/index.cjs +11 -2
  115. package/dist/storage/index.cjs.map +1 -1
  116. package/dist/storage/index.d.ts +9 -0
  117. package/dist/storage/index.js +7 -1
  118. package/dist/storage/index.js.map +1 -1
  119. package/dist/storage/providers/callback-storage.cjs +1 -0
  120. package/dist/storage/providers/callback-storage.cjs.map +1 -1
  121. package/dist/storage/providers/callback-storage.js +1 -0
  122. package/dist/storage/providers/callback-storage.js.map +1 -1
  123. package/dist/storage/providers/dropbox.cjs +1 -0
  124. package/dist/storage/providers/dropbox.cjs.map +1 -1
  125. package/dist/storage/providers/dropbox.js +1 -0
  126. package/dist/storage/providers/dropbox.js.map +1 -1
  127. package/dist/storage/providers/google-drive.cjs +1 -0
  128. package/dist/storage/providers/google-drive.cjs.map +1 -1
  129. package/dist/storage/providers/google-drive.js +1 -0
  130. package/dist/storage/providers/google-drive.js.map +1 -1
  131. package/dist/storage/providers/ipfs.cjs +1 -0
  132. package/dist/storage/providers/ipfs.cjs.map +1 -1
  133. package/dist/storage/providers/ipfs.js +1 -0
  134. package/dist/storage/providers/ipfs.js.map +1 -1
  135. package/dist/storage/providers/pinata.cjs +1 -0
  136. package/dist/storage/providers/pinata.cjs.map +1 -1
  137. package/dist/storage/providers/pinata.js +1 -0
  138. package/dist/storage/providers/pinata.js.map +1 -1
  139. package/dist/storage/providers/r2.cjs +376 -0
  140. package/dist/storage/providers/r2.cjs.map +1 -0
  141. package/dist/storage/providers/r2.d.ts +91 -0
  142. package/dist/storage/providers/r2.js +354 -0
  143. package/dist/storage/providers/r2.js.map +1 -0
  144. package/dist/storage/providers/vana-storage.cjs +251 -0
  145. package/dist/storage/providers/vana-storage.cjs.map +1 -0
  146. package/dist/storage/providers/vana-storage.d.ts +100 -0
  147. package/dist/storage/providers/vana-storage.js +231 -0
  148. package/dist/storage/providers/vana-storage.js.map +1 -0
  149. package/dist/types/config.cjs +0 -34
  150. package/dist/types/config.cjs.map +1 -1
  151. package/dist/types/config.d.ts +1 -607
  152. package/dist/types/config.js +0 -22
  153. package/dist/types/config.js.map +1 -1
  154. package/dist/types/contracts.cjs.map +1 -1
  155. package/dist/types/contracts.d.ts +1 -1
  156. package/dist/types/index.cjs +2 -33
  157. package/dist/types/index.cjs.map +1 -1
  158. package/dist/types/index.d.ts +2 -33
  159. package/dist/types/index.js +1 -35
  160. package/dist/types/index.js.map +1 -1
  161. package/dist/types/ps-errors.cjs +66 -0
  162. package/dist/types/ps-errors.cjs.map +1 -0
  163. package/dist/types/ps-errors.d.ts +25 -0
  164. package/dist/types/ps-errors.js +41 -0
  165. package/dist/types/ps-errors.js.map +1 -0
  166. package/dist/types.cjs.map +1 -1
  167. package/dist/types.d.ts +0 -29
  168. package/dist/types.js.map +1 -1
  169. package/package.json +7 -25
  170. package/dist/client/enhancedResponse.cjs +0 -164
  171. package/dist/client/enhancedResponse.cjs.map +0 -1
  172. package/dist/client/enhancedResponse.d.ts +0 -120
  173. package/dist/client/enhancedResponse.js +0 -138
  174. package/dist/client/enhancedResponse.js.map +0 -1
  175. package/dist/controllers/__tests__/data-consistency-integration.test.d.ts +0 -7
  176. package/dist/controllers/base.cjs +0 -116
  177. package/dist/controllers/base.cjs.map +0 -1
  178. package/dist/controllers/base.d.ts +0 -94
  179. package/dist/controllers/base.js +0 -92
  180. package/dist/controllers/base.js.map +0 -1
  181. package/dist/controllers/data.cjs +0 -2633
  182. package/dist/controllers/data.cjs.map +0 -1
  183. package/dist/controllers/data.d.ts +0 -1067
  184. package/dist/controllers/data.js +0 -2626
  185. package/dist/controllers/data.js.map +0 -1
  186. package/dist/controllers/operations.cjs +0 -430
  187. package/dist/controllers/operations.cjs.map +0 -1
  188. package/dist/controllers/operations.d.ts +0 -229
  189. package/dist/controllers/operations.js +0 -406
  190. package/dist/controllers/operations.js.map +0 -1
  191. package/dist/controllers/permissions.cjs +0 -4368
  192. package/dist/controllers/permissions.cjs.map +0 -1
  193. package/dist/controllers/permissions.d.ts +0 -1411
  194. package/dist/controllers/permissions.js +0 -4344
  195. package/dist/controllers/permissions.js.map +0 -1
  196. package/dist/controllers/protocol.cjs +0 -183
  197. package/dist/controllers/protocol.cjs.map +0 -1
  198. package/dist/controllers/protocol.d.ts +0 -138
  199. package/dist/controllers/protocol.js +0 -163
  200. package/dist/controllers/protocol.js.map +0 -1
  201. package/dist/controllers/schemas.cjs +0 -678
  202. package/dist/controllers/schemas.cjs.map +0 -1
  203. package/dist/controllers/schemas.d.ts +0 -293
  204. package/dist/controllers/schemas.js +0 -654
  205. package/dist/controllers/schemas.js.map +0 -1
  206. package/dist/controllers/server.cjs +0 -643
  207. package/dist/controllers/server.cjs.map +0 -1
  208. package/dist/controllers/server.d.ts +0 -322
  209. package/dist/controllers/server.js +0 -624
  210. package/dist/controllers/server.js.map +0 -1
  211. package/dist/core/__tests__/pollingManager.test.d.ts +0 -4
  212. package/dist/core/apiClient.cjs +0 -378
  213. package/dist/core/apiClient.cjs.map +0 -1
  214. package/dist/core/apiClient.d.ts +0 -286
  215. package/dist/core/apiClient.js +0 -359
  216. package/dist/core/apiClient.js.map +0 -1
  217. package/dist/core/generics.cjs +0 -417
  218. package/dist/core/generics.cjs.map +0 -1
  219. package/dist/core/generics.d.ts +0 -205
  220. package/dist/core/generics.js +0 -386
  221. package/dist/core/generics.js.map +0 -1
  222. package/dist/core/health.cjs +0 -289
  223. package/dist/core/health.cjs.map +0 -1
  224. package/dist/core/health.d.ts +0 -143
  225. package/dist/core/health.js +0 -265
  226. package/dist/core/health.js.map +0 -1
  227. package/dist/core/inMemoryNonceManager.cjs +0 -138
  228. package/dist/core/inMemoryNonceManager.cjs.map +0 -1
  229. package/dist/core/inMemoryNonceManager.d.ts +0 -69
  230. package/dist/core/inMemoryNonceManager.js +0 -114
  231. package/dist/core/inMemoryNonceManager.js.map +0 -1
  232. package/dist/core/nonceManager.cjs +0 -304
  233. package/dist/core/nonceManager.cjs.map +0 -1
  234. package/dist/core/nonceManager.d.ts +0 -116
  235. package/dist/core/nonceManager.js +0 -280
  236. package/dist/core/nonceManager.js.map +0 -1
  237. package/dist/core/pollingManager.cjs +0 -292
  238. package/dist/core/pollingManager.cjs.map +0 -1
  239. package/dist/core/pollingManager.d.ts +0 -120
  240. package/dist/core/pollingManager.js +0 -268
  241. package/dist/core/pollingManager.js.map +0 -1
  242. package/dist/core.cjs +0 -777
  243. package/dist/core.cjs.map +0 -1
  244. package/dist/core.d.ts +0 -493
  245. package/dist/core.js +0 -752
  246. package/dist/core.js.map +0 -1
  247. package/dist/diagnostics.cjs +0 -37
  248. package/dist/diagnostics.cjs.map +0 -1
  249. package/dist/diagnostics.d.ts +0 -24
  250. package/dist/diagnostics.js +0 -13
  251. package/dist/diagnostics.js.map +0 -1
  252. package/dist/diagnostics.test.d.ts +0 -1
  253. package/dist/generated/abi/DLPPerformanceImplementation.cjs +0 -1202
  254. package/dist/generated/abi/DLPPerformanceImplementation.cjs.map +0 -1
  255. package/dist/generated/abi/DLPPerformanceImplementation.d.ts +0 -914
  256. package/dist/generated/abi/DLPPerformanceImplementation.js +0 -1178
  257. package/dist/generated/abi/DLPPerformanceImplementation.js.map +0 -1
  258. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs +0 -1112
  259. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs.map +0 -1
  260. package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +0 -840
  261. package/dist/generated/abi/DLPRewardDeployerImplementation.js +0 -1088
  262. package/dist/generated/abi/DLPRewardDeployerImplementation.js.map +0 -1
  263. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs +0 -612
  264. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs.map +0 -1
  265. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.ts +0 -451
  266. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js +0 -588
  267. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js.map +0 -1
  268. package/dist/generated/abi/DLPRewardSwapImplementation.cjs +0 -939
  269. package/dist/generated/abi/DLPRewardSwapImplementation.cjs.map +0 -1
  270. package/dist/generated/abi/DLPRewardSwapImplementation.d.ts +0 -705
  271. package/dist/generated/abi/DLPRewardSwapImplementation.js +0 -915
  272. package/dist/generated/abi/DLPRewardSwapImplementation.js.map +0 -1
  273. package/dist/generated/abi/DLPRootImplementation.cjs +0 -1644
  274. package/dist/generated/abi/DLPRootImplementation.cjs.map +0 -1
  275. package/dist/generated/abi/DLPRootImplementation.d.ts +0 -1246
  276. package/dist/generated/abi/DLPRootImplementation.js +0 -1620
  277. package/dist/generated/abi/DLPRootImplementation.js.map +0 -1
  278. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs +0 -985
  279. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs.map +0 -1
  280. package/dist/generated/abi/DataLiquidityPoolImplementation.d.ts +0 -735
  281. package/dist/generated/abi/DataLiquidityPoolImplementation.js +0 -961
  282. package/dist/generated/abi/DataLiquidityPoolImplementation.js.map +0 -1
  283. package/dist/generated/abi/SwapHelperImplementation.cjs +0 -976
  284. package/dist/generated/abi/SwapHelperImplementation.cjs.map +0 -1
  285. package/dist/generated/abi/SwapHelperImplementation.d.ts +0 -728
  286. package/dist/generated/abi/SwapHelperImplementation.js +0 -952
  287. package/dist/generated/abi/SwapHelperImplementation.js.map +0 -1
  288. package/dist/generated/abi/TeePoolImplementation.cjs +0 -1313
  289. package/dist/generated/abi/TeePoolImplementation.cjs.map +0 -1
  290. package/dist/generated/abi/TeePoolImplementation.d.ts +0 -992
  291. package/dist/generated/abi/TeePoolImplementation.js +0 -1289
  292. package/dist/generated/abi/TeePoolImplementation.js.map +0 -1
  293. package/dist/generated/event-types.cjs +0 -17
  294. package/dist/generated/event-types.cjs.map +0 -1
  295. package/dist/generated/event-types.d.ts +0 -809
  296. package/dist/generated/event-types.js +0 -1
  297. package/dist/generated/event-types.js.map +0 -1
  298. package/dist/generated/eventRegistry.cjs +0 -4470
  299. package/dist/generated/eventRegistry.cjs.map +0 -1
  300. package/dist/generated/eventRegistry.d.ts +0 -14
  301. package/dist/generated/eventRegistry.js +0 -4445
  302. package/dist/generated/eventRegistry.js.map +0 -1
  303. package/dist/generated/server/server-exports.cjs +0 -45
  304. package/dist/generated/server/server-exports.cjs.map +0 -1
  305. package/dist/generated/server/server-exports.d.ts +0 -36
  306. package/dist/generated/server/server-exports.js +0 -19
  307. package/dist/generated/server/server-exports.js.map +0 -1
  308. package/dist/generated/server/server.cjs +0 -17
  309. package/dist/generated/server/server.cjs.map +0 -1
  310. package/dist/generated/server/server.d.ts +0 -907
  311. package/dist/generated/server/server.js +0 -1
  312. package/dist/generated/server/server.js.map +0 -1
  313. package/dist/generated/subgraph.cjs +0 -1440
  314. package/dist/generated/subgraph.cjs.map +0 -1
  315. package/dist/generated/subgraph.d.ts +0 -6113
  316. package/dist/generated/subgraph.js +0 -1404
  317. package/dist/generated/subgraph.js.map +0 -1
  318. package/dist/lib/__tests__/redisAtomicStore.test.d.ts +0 -1
  319. package/dist/lib/redisAtomicStore.cjs +0 -201
  320. package/dist/lib/redisAtomicStore.cjs.map +0 -1
  321. package/dist/lib/redisAtomicStore.d.ts +0 -120
  322. package/dist/lib/redisAtomicStore.js +0 -177
  323. package/dist/lib/redisAtomicStore.js.map +0 -1
  324. package/dist/server/relayerHandler.cjs +0 -452
  325. package/dist/server/relayerHandler.cjs.map +0 -1
  326. package/dist/server/relayerHandler.d.ts +0 -69
  327. package/dist/server/relayerHandler.js +0 -428
  328. package/dist/server/relayerHandler.js.map +0 -1
  329. package/dist/tests/abi.test.d.ts +0 -1
  330. package/dist/tests/chains-definitions.test.d.ts +0 -1
  331. package/dist/tests/core-encryption.test.d.ts +0 -1
  332. package/dist/tests/core-extended.test.d.ts +0 -1
  333. package/dist/tests/core-generics-coverage.test.d.ts +0 -1
  334. package/dist/tests/coverage-boost.test.d.ts +0 -1
  335. package/dist/tests/crypto-cross-platform-compatibility.test.d.ts +0 -1
  336. package/dist/tests/data-addfile-permissions-schema.test.d.ts +0 -1
  337. package/dist/tests/data-additional-methods.test.d.ts +0 -1
  338. package/dist/tests/data-controller-edge-cases.test.d.ts +0 -1
  339. package/dist/tests/data-ipfs-gateways.test.d.ts +0 -1
  340. package/dist/tests/data-relayer.test.d.ts +0 -1
  341. package/dist/tests/data-schema-validation.test.d.ts +0 -1
  342. package/dist/tests/data-simple-methods.test.d.ts +0 -1
  343. package/dist/tests/data-upload-owner-validation.test.d.ts +0 -1
  344. package/dist/tests/data.test.d.ts +0 -1
  345. package/dist/tests/demo-integration.test.d.ts +0 -1
  346. package/dist/tests/demo-trusted-server-integration.test.d.ts +0 -1
  347. package/dist/tests/download-relayer.test.d.ts +0 -1
  348. package/dist/tests/dual-mode-permissions.test.d.ts +0 -1
  349. package/dist/tests/dual-mode-trusted-servers.test.d.ts +0 -1
  350. package/dist/tests/encryption-correct-implementation.test.d.ts +0 -1
  351. package/dist/tests/encryption-coverage.test.d.ts +0 -1
  352. package/dist/tests/encryption-edge-cases.test.d.ts +0 -1
  353. package/dist/tests/encryption-utils-updated.test.d.ts +0 -1
  354. package/dist/tests/errors-coverage.test.d.ts +0 -1
  355. package/dist/tests/factories/mockFactory.d.ts +0 -316
  356. package/dist/tests/fakes/FakeStorageManager.d.ts +0 -200
  357. package/dist/tests/fakes/FakeStorageManager.test.d.ts +0 -1
  358. package/dist/tests/fakes/FakeWaitForTransactionEvents.d.ts +0 -170
  359. package/dist/tests/fakes/FakeWaitForTransactionEvents.test.d.ts +0 -1
  360. package/dist/tests/fakes/fake-pgp-port.d.ts +0 -13
  361. package/dist/tests/grantValidation-edge-cases.test.d.ts +0 -1
  362. package/dist/tests/grantValidation-unreachable-branch.test.d.ts +0 -1
  363. package/dist/tests/helper-methods.test.d.ts +0 -1
  364. package/dist/tests/helpers/typedMocks.d.ts +0 -64
  365. package/dist/tests/index-browser.test.d.ts +0 -1
  366. package/dist/tests/index-node.test.d.ts +0 -1
  367. package/dist/tests/index.test.d.ts +0 -1
  368. package/dist/tests/mocks/platformAdapter.d.ts +0 -12
  369. package/dist/tests/new-permissions-methods.test.d.ts +0 -1
  370. package/dist/tests/no-buffer-browser.test.d.ts +0 -1
  371. package/dist/tests/permissions-grantee.test.d.ts +0 -1
  372. package/dist/tests/permissions-revoke-relayer.test.d.ts +0 -1
  373. package/dist/tests/permissions-schema-validation.test.d.ts +0 -1
  374. package/dist/tests/permissions-server-files.test.d.ts +0 -1
  375. package/dist/tests/permissions-transaction-options.test.d.ts +0 -1
  376. package/dist/tests/permissions-trust-servers.test.d.ts +0 -1
  377. package/dist/tests/permissions.test.d.ts +0 -1
  378. package/dist/tests/personal.test.d.ts +0 -1
  379. package/dist/tests/platform-browser.test.d.ts +0 -1
  380. package/dist/tests/platform-crypto-expanded.test.d.ts +0 -1
  381. package/dist/tests/platform-crypto.test.d.ts +0 -1
  382. package/dist/tests/platform-index.test.d.ts +0 -1
  383. package/dist/tests/platform-node.test.d.ts +0 -1
  384. package/dist/tests/platform-shared-utils.test.d.ts +0 -1
  385. package/dist/tests/platform-updated.test.d.ts +0 -1
  386. package/dist/tests/protocol-additional-methods.test.d.ts +0 -1
  387. package/dist/tests/protocol.test.d.ts +0 -1
  388. package/dist/tests/read-only-mode.test.d.ts +0 -1
  389. package/dist/tests/relayer-integration.test.d.ts +0 -1
  390. package/dist/tests/relayer-unified.test.d.ts +0 -1
  391. package/dist/tests/schemas.test.d.ts +0 -1
  392. package/dist/tests/server-relayer-handler.test.d.ts +0 -1
  393. package/dist/tests/signatureFormatter.test.d.ts +0 -1
  394. package/dist/tests/trusted-server-queries.test.d.ts +0 -1
  395. package/dist/tests/typedDataConverter.test.d.ts +0 -1
  396. package/dist/tests/types-contracts.test.d.ts +0 -1
  397. package/dist/tests/types-data.test.d.ts +0 -1
  398. package/dist/tests/types-external-apis.test.d.ts +0 -1
  399. package/dist/tests/types-generics.test.d.ts +0 -1
  400. package/dist/tests/types-permissions.test.d.ts +0 -1
  401. package/dist/tests/types-upload-params.test.d.ts +0 -1
  402. package/dist/tests/types.test.d.ts +0 -1
  403. package/dist/tests/utils-formatters.test.d.ts +0 -1
  404. package/dist/tests/utils-grantFiles-edge-cases.test.d.ts +0 -1
  405. package/dist/tests/utils-grantFiles-validation.test.d.ts +0 -1
  406. package/dist/tests/utils-grantFiles.test.d.ts +0 -1
  407. package/dist/tests/utils-grantValidation-consolidated.test.d.ts +0 -1
  408. package/dist/tests/utils-grants.test.d.ts +0 -1
  409. package/dist/tests/utils-ipfs-additional.test.d.ts +0 -1
  410. package/dist/tests/utils-ipfs.test.d.ts +0 -4
  411. package/dist/tests/utils-schemaValidation.test.d.ts +0 -1
  412. package/dist/tests/vana.test.d.ts +0 -1
  413. package/dist/tests/wallet-crypto-compatibility.test.d.ts +0 -1
  414. package/dist/types/atomicStore.cjs.map +0 -1
  415. package/dist/types/atomicStore.d.ts +0 -236
  416. package/dist/types/atomicStore.js +0 -7
  417. package/dist/types/atomicStore.js.map +0 -1
  418. package/dist/types/blockchain.cjs +0 -17
  419. package/dist/types/blockchain.cjs.map +0 -1
  420. package/dist/types/blockchain.d.ts +0 -85
  421. package/dist/types/blockchain.js +0 -1
  422. package/dist/types/blockchain.js.map +0 -1
  423. package/dist/types/controller-context.cjs +0 -17
  424. package/dist/types/controller-context.cjs.map +0 -1
  425. package/dist/types/controller-context.d.ts +0 -68
  426. package/dist/types/controller-context.js +0 -1
  427. package/dist/types/controller-context.js.map +0 -1
  428. package/dist/types/data.cjs +0 -17
  429. package/dist/types/data.cjs.map +0 -1
  430. package/dist/types/data.d.ts +0 -763
  431. package/dist/types/data.js +0 -1
  432. package/dist/types/data.js.map +0 -1
  433. package/dist/types/external-apis.cjs +0 -61
  434. package/dist/types/external-apis.cjs.map +0 -1
  435. package/dist/types/external-apis.d.ts +0 -184
  436. package/dist/types/external-apis.js +0 -34
  437. package/dist/types/external-apis.js.map +0 -1
  438. package/dist/types/generics.cjs +0 -17
  439. package/dist/types/generics.cjs.map +0 -1
  440. package/dist/types/generics.d.ts +0 -518
  441. package/dist/types/generics.js +0 -1
  442. package/dist/types/generics.js.map +0 -1
  443. package/dist/types/operationStore.cjs +0 -17
  444. package/dist/types/operationStore.cjs.map +0 -1
  445. package/dist/types/operationStore.d.ts +0 -171
  446. package/dist/types/operationStore.js +0 -1
  447. package/dist/types/operationStore.js.map +0 -1
  448. package/dist/types/operations.cjs +0 -53
  449. package/dist/types/operations.cjs.map +0 -1
  450. package/dist/types/operations.d.ts +0 -204
  451. package/dist/types/operations.js +0 -26
  452. package/dist/types/operations.js.map +0 -1
  453. package/dist/types/options.cjs +0 -17
  454. package/dist/types/options.cjs.map +0 -1
  455. package/dist/types/options.d.ts +0 -308
  456. package/dist/types/options.js +0 -1
  457. package/dist/types/options.js.map +0 -1
  458. package/dist/types/permissions.cjs +0 -17
  459. package/dist/types/permissions.cjs.map +0 -1
  460. package/dist/types/permissions.d.ts +0 -955
  461. package/dist/types/permissions.js +0 -1
  462. package/dist/types/permissions.js.map +0 -1
  463. package/dist/types/personal.cjs +0 -17
  464. package/dist/types/personal.cjs.map +0 -1
  465. package/dist/types/personal.d.ts +0 -174
  466. package/dist/types/personal.js +0 -1
  467. package/dist/types/personal.js.map +0 -1
  468. package/dist/types/relayer.cjs +0 -17
  469. package/dist/types/relayer.cjs.map +0 -1
  470. package/dist/types/relayer.d.ts +0 -552
  471. package/dist/types/relayer.js +0 -1
  472. package/dist/types/relayer.js.map +0 -1
  473. package/dist/types/transactionResults.cjs +0 -17
  474. package/dist/types/transactionResults.cjs.map +0 -1
  475. package/dist/types/transactionResults.d.ts +0 -193
  476. package/dist/types/transactionResults.js +0 -1
  477. package/dist/types/transactionResults.js.map +0 -1
  478. package/dist/types/utils.cjs +0 -17
  479. package/dist/types/utils.cjs.map +0 -1
  480. package/dist/types/utils.d.ts +0 -771
  481. package/dist/types/utils.js +0 -1
  482. package/dist/types/utils.js.map +0 -1
  483. package/dist/utils/__tests__/chainQuery.test.d.ts +0 -1
  484. package/dist/utils/__tests__/parseTransaction.test.d.ts +0 -1
  485. package/dist/utils/__tests__/pojo-serialization.test.d.ts +0 -1
  486. package/dist/utils/__tests__/signatureCache.test.d.ts +0 -1
  487. package/dist/utils/__tests__/subgraphConsistency.test.d.ts +0 -4
  488. package/dist/utils/__tests__/subgraphPagination.test.d.ts +0 -4
  489. package/dist/utils/__tests__/transaction-edge-cases.test.d.ts +0 -1
  490. package/dist/utils/__tests__/transactionHelpers.test.d.ts +0 -1
  491. package/dist/utils/__tests__/urlResolver.test.d.ts +0 -4
  492. package/dist/utils/blockchain/registry.cjs +0 -81
  493. package/dist/utils/blockchain/registry.cjs.map +0 -1
  494. package/dist/utils/blockchain/registry.d.ts +0 -32
  495. package/dist/utils/blockchain/registry.js +0 -56
  496. package/dist/utils/blockchain/registry.js.map +0 -1
  497. package/dist/utils/blockchain/registry.test.d.ts +0 -1
  498. package/dist/utils/chainQuery.cjs +0 -107
  499. package/dist/utils/chainQuery.cjs.map +0 -1
  500. package/dist/utils/chainQuery.d.ts +0 -31
  501. package/dist/utils/chainQuery.js +0 -82
  502. package/dist/utils/chainQuery.js.map +0 -1
  503. package/dist/utils/download.cjs +0 -69
  504. package/dist/utils/download.cjs.map +0 -1
  505. package/dist/utils/download.d.ts +0 -40
  506. package/dist/utils/download.js +0 -45
  507. package/dist/utils/download.js.map +0 -1
  508. package/dist/utils/encryption.cjs +0 -176
  509. package/dist/utils/encryption.cjs.map +0 -1
  510. package/dist/utils/encryption.d.ts +0 -271
  511. package/dist/utils/encryption.js +0 -142
  512. package/dist/utils/encryption.js.map +0 -1
  513. package/dist/utils/formatters.cjs +0 -55
  514. package/dist/utils/formatters.cjs.map +0 -1
  515. package/dist/utils/formatters.d.ts +0 -118
  516. package/dist/utils/formatters.js +0 -28
  517. package/dist/utils/formatters.js.map +0 -1
  518. package/dist/utils/grantFiles.cjs +0 -181
  519. package/dist/utils/grantFiles.cjs.map +0 -1
  520. package/dist/utils/grantFiles.d.ts +0 -172
  521. package/dist/utils/grantFiles.js +0 -143
  522. package/dist/utils/grantFiles.js.map +0 -1
  523. package/dist/utils/grantValidation.cjs +0 -243
  524. package/dist/utils/grantValidation.cjs.map +0 -1
  525. package/dist/utils/grantValidation.d.ts +0 -226
  526. package/dist/utils/grantValidation.js +0 -201
  527. package/dist/utils/grantValidation.js.map +0 -1
  528. package/dist/utils/grants.cjs +0 -108
  529. package/dist/utils/grants.cjs.map +0 -1
  530. package/dist/utils/grants.d.ts +0 -148
  531. package/dist/utils/grants.js +0 -82
  532. package/dist/utils/grants.js.map +0 -1
  533. package/dist/utils/ipfs.cjs +0 -128
  534. package/dist/utils/ipfs.cjs.map +0 -1
  535. package/dist/utils/ipfs.d.ts +0 -88
  536. package/dist/utils/ipfs.js +0 -97
  537. package/dist/utils/ipfs.js.map +0 -1
  538. package/dist/utils/multicall.cjs +0 -233
  539. package/dist/utils/multicall.cjs.map +0 -1
  540. package/dist/utils/multicall.d.ts +0 -126
  541. package/dist/utils/multicall.js +0 -208
  542. package/dist/utils/multicall.js.map +0 -1
  543. package/dist/utils/parseTransactionPojo.cjs +0 -87
  544. package/dist/utils/parseTransactionPojo.cjs.map +0 -1
  545. package/dist/utils/parseTransactionPojo.d.ts +0 -31
  546. package/dist/utils/parseTransactionPojo.js +0 -63
  547. package/dist/utils/parseTransactionPojo.js.map +0 -1
  548. package/dist/utils/schemaValidation.cjs +0 -258
  549. package/dist/utils/schemaValidation.cjs.map +0 -1
  550. package/dist/utils/schemaValidation.d.ts +0 -168
  551. package/dist/utils/schemaValidation.js +0 -219
  552. package/dist/utils/schemaValidation.js.map +0 -1
  553. package/dist/utils/signatureCache.cjs +0 -192
  554. package/dist/utils/signatureCache.cjs.map +0 -1
  555. package/dist/utils/signatureCache.d.ts +0 -172
  556. package/dist/utils/signatureCache.js +0 -167
  557. package/dist/utils/signatureCache.js.map +0 -1
  558. package/dist/utils/signatureFormatter.cjs +0 -42
  559. package/dist/utils/signatureFormatter.cjs.map +0 -1
  560. package/dist/utils/signatureFormatter.d.ts +0 -36
  561. package/dist/utils/signatureFormatter.js +0 -18
  562. package/dist/utils/signatureFormatter.js.map +0 -1
  563. package/dist/utils/subgraphConsistency.cjs +0 -184
  564. package/dist/utils/subgraphConsistency.cjs.map +0 -1
  565. package/dist/utils/subgraphConsistency.d.ts +0 -65
  566. package/dist/utils/subgraphConsistency.js +0 -155
  567. package/dist/utils/subgraphConsistency.js.map +0 -1
  568. package/dist/utils/subgraphMetaCache.cjs +0 -101
  569. package/dist/utils/subgraphMetaCache.cjs.map +0 -1
  570. package/dist/utils/subgraphMetaCache.d.ts +0 -56
  571. package/dist/utils/subgraphMetaCache.js +0 -76
  572. package/dist/utils/subgraphMetaCache.js.map +0 -1
  573. package/dist/utils/subgraphPagination.cjs +0 -104
  574. package/dist/utils/subgraphPagination.cjs.map +0 -1
  575. package/dist/utils/subgraphPagination.d.ts +0 -78
  576. package/dist/utils/subgraphPagination.js +0 -78
  577. package/dist/utils/subgraphPagination.js.map +0 -1
  578. package/dist/utils/tests/multicall.test.d.ts +0 -1
  579. package/dist/utils/transactionHelpers.cjs +0 -54
  580. package/dist/utils/transactionHelpers.cjs.map +0 -1
  581. package/dist/utils/transactionHelpers.d.ts +0 -80
  582. package/dist/utils/transactionHelpers.js +0 -29
  583. package/dist/utils/transactionHelpers.js.map +0 -1
  584. package/dist/utils/typeGuards.cjs +0 -109
  585. package/dist/utils/typeGuards.cjs.map +0 -1
  586. package/dist/utils/typeGuards.d.ts +0 -138
  587. package/dist/utils/typeGuards.js +0 -74
  588. package/dist/utils/typeGuards.js.map +0 -1
  589. package/dist/utils/typedDataConverter.cjs +0 -43
  590. package/dist/utils/typedDataConverter.cjs.map +0 -1
  591. package/dist/utils/typedDataConverter.d.ts +0 -46
  592. package/dist/utils/typedDataConverter.js +0 -19
  593. package/dist/utils/typedDataConverter.js.map +0 -1
  594. package/dist/utils/urlResolver.cjs +0 -62
  595. package/dist/utils/urlResolver.cjs.map +0 -1
  596. package/dist/utils/urlResolver.d.ts +0 -56
  597. package/dist/utils/urlResolver.js +0 -37
  598. package/dist/utils/urlResolver.js.map +0 -1
  599. package/dist/utils/wallet.cjs +0 -63
  600. package/dist/utils/wallet.cjs.map +0 -1
  601. package/dist/utils/wallet.d.ts +0 -94
  602. package/dist/utils/wallet.js +0 -37
  603. package/dist/utils/wallet.js.map +0 -1
  604. package/dist/utils/withEvents.cjs +0 -44
  605. package/dist/utils/withEvents.cjs.map +0 -1
  606. package/dist/utils/withEvents.d.ts +0 -56
  607. package/dist/utils/withEvents.js +0 -18
  608. package/dist/utils/withEvents.js.map +0 -1
  609. /package/dist/{__tests__/waitForTransactionEvents.test.d.ts → auth/pkce.test.d.ts} +0 -0
  610. /package/dist/{client/__tests__/enhancedResponse.test.d.ts → auth/token-store.test.d.ts} +0 -0
  611. /package/dist/{controllers/__tests__/operations.processQueue.test.d.ts → auth/web3-signed.test.d.ts} +0 -0
  612. /package/dist/{controllers/__tests__/schemas-edge-cases.test.d.ts → crypto/envelope/openpgp.test.d.ts} +0 -0
  613. /package/dist/{controllers/data-error-handling.test.d.ts → crypto/keys/derive.test.d.ts} +0 -0
  614. /package/dist/{tests/errors.test.d.ts → errors.test.d.ts} +0 -0
  615. /package/dist/{controllers/server-additional.test.d.ts → protocol/data-file.test.d.ts} +0 -0
  616. /package/dist/{core/__tests__/health.test.d.ts → protocol/eip712.test.d.ts} +0 -0
  617. /package/dist/{core/__tests__/inMemoryNonceManager.test.d.ts → protocol/gateway.test.d.ts} +0 -0
  618. /package/dist/{core/__tests__/nonceManager.test.d.ts → protocol/scopes.test.d.ts} +0 -0
  619. /package/dist/{core/core.test.d.ts → storage/tests/defaultStorage.test.d.ts} +0 -0
  620. /package/dist/{core/tests/apiClient.test.d.ts → storage/tests/r2Storage.test.d.ts} +0 -0
  621. /package/dist/{core/tests/client.test.d.ts → storage/tests/vanaStorage.test.d.ts} +0 -0
  622. /package/dist/{core/tests/generics.test.d.ts → types/ps-errors.test.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/types/config.ts"],"sourcesContent":["import type { WalletClient, PublicClient, Account, Address, Chain } from \"viem\";\nimport type { VanaChainId, VanaChain } from \"./chains\";\nimport type {\n StorageProvider,\n StorageUploadResult,\n StorageListOptions,\n} from \"./storage\";\n\nimport type { RelayerConfig } from \"./relayer\";\nimport type { IOperationStore, IRelayerStateStore } from \"./operationStore\";\n\n/**\n * Marker interface to indicate that a Vana instance has storage configured.\n * Used for compile-time type safety to ensure storage-dependent methods\n * are only called on properly configured instances.\n *\n * @category Configuration\n */\nexport interface StorageRequiredMarker {\n readonly __storageRequired: true;\n}\n\n/**\n * Configures storage providers for SDK file operations.\n *\n * @remarks\n * Supports multiple backends with automatic fallback.\n * IPFS for decentralization, Pinata for reliability,\n * Google Drive for development, custom for flexibility.\n *\n * **Provider Selection:**\n * - IPFS: Decentralized, permanent storage ideal for production\n * - Pinata: Managed IPFS with guaranteed availability\n * - Google Drive: Centralized, suitable for development/testing\n * - Custom providers: Implement StorageProvider interface\n *\n * @category Configuration\n * @example\n * ```typescript\n * const storage: StorageConfig = {\n * providers: {\n * ipfs: new IPFSStorage({ gateway: 'https://gateway.pinata.cloud' }),\n * pinata: new PinataStorage({ apiKey: 'key', secretKey: 'secret' })\n * },\n * defaultProvider: 'ipfs'\n * };\n * ```\n */\nexport interface StorageConfig {\n /**\n * Map of provider name to storage provider instance.\n * Common provider names: \"ipfs\", \"pinata\", \"googledrive\", \"s3\".\n * Custom names allowed for custom provider implementations.\n */\n providers: Record<string, StorageProvider>;\n /**\n * Default provider name to use when none specified.\n * Must match a key in the providers map. Falls back to first provider if not specified.\n */\n defaultProvider?: string;\n}\n\n/**\n * Download relayer callbacks for proxying CORS-restricted downloads.\n *\n * Provides a callback to proxy download requests through your application server\n * when direct browser access fails due to CORS restrictions (e.g., Google Drive).\n *\n * IMPORTANT SECURITY REQUIREMENTS for your proxy endpoint:\n * 1. MUST block requests to private/internal IPs (SSRF protection)\n * 2. SHOULD NOT restrict domains (files can be hosted anywhere)\n *\n * @category Configuration\n * @example Client-side implementation:\n * ```typescript\n * const downloadRelayer: DownloadRelayerCallbacks = {\n * async proxyDownload(url) {\n * const response = await fetch('/api/proxy', {\n * method: 'POST',\n * headers: { 'Content-Type': 'application/json' },\n * body: JSON.stringify({ url })\n * });\n * return response.blob();\n * }\n * };\n * ```\n *\n * @example Server-side proxy endpoint (Next.js):\n * ```typescript\n * // /api/proxy/route.ts\n * import { promises as dns } from 'dns';\n * import { isIPv4 } from 'net';\n *\n * async function handleProxy(url: string) {\n * const { hostname } = new URL(url);\n *\n * // Resolve hostname to IP (handle localhost specially)\n * const ip = hostname === 'localhost' ? '127.0.0.1' :\n * isIPv4(hostname) ? hostname :\n * await dns.lookup(hostname).then(r => r.address);\n *\n * // SSRF Protection: Block private/internal IPs\n * if (isIPv4(ip)) {\n * const [a, b] = ip.split('.').map(Number);\n * if (a === 10 || a === 127 || a === 0 ||\n * (a === 172 && b >= 16 && b <= 31) ||\n * (a === 192 && b === 168) ||\n * (a === 169 && b === 254) ||\n * a >= 224) { // Also block multicast/reserved\n * return new Response('Private/internal addresses not allowed', { status: 403 });\n * }\n * }\n *\n * // Proxy the request\n * const response = await fetch(url, { redirect: 'manual' });\n *\n * // Handle redirects (with recursion limit)\n * if (response.status >= 301 && response.status <= 308) {\n * const location = response.headers.get('location');\n * if (location) return handleProxy(new URL(location, url).href);\n * }\n *\n * const data = await response.arrayBuffer();\n * return new Response(data, {\n * headers: {\n * 'Content-Type': response.headers.get('content-type') || 'application/octet-stream',\n * 'Access-Control-Allow-Origin': '*'\n * }\n * });\n * }\n * ```\n */\nexport interface DownloadRelayerCallbacks {\n /**\n * Proxy a download request through your application server\n *\n * @param url - The URL to download from\n * @returns Promise resolving to the downloaded content as a Blob\n */\n proxyDownload: (url: string) => Promise<Blob>;\n}\n\n/**\n * Storage callback functions for flexible storage operations.\n *\n * Instead of hardcoding storage behavior (HTTP endpoints, etc.), users can provide\n * custom callback functions to handle storage operations in any way they choose.\n * This pattern matches the relayer callbacks approach, providing maximum flexibility.\n *\n * @category Configuration\n * @example\n * ```typescript\n * const storageCallbacks: StorageCallbacks = {\n * async upload(blob, filename, metadata) {\n * // Custom implementation - could be HTTP, S3, local filesystem, etc.\n * const formData = new FormData();\n * formData.append('file', blob, filename);\n * const response = await fetch('/api/storage/upload', {\n * method: 'POST',\n * body: formData\n * });\n * const data = await response.json();\n * return {\n * url: data.url,\n * size: blob.size,\n * contentType: blob.type,\n * metadata: data.metadata\n * };\n * },\n *\n * async download(identifier) {\n * const response = await fetch(`/api/storage/download/${identifier}`);\n * return response.blob();\n * }\n * };\n * ```\n */\nexport interface StorageCallbacks {\n /**\n * Upload a blob to storage\n *\n * @param blob - The data to upload\n * @param filename - Optional filename hint\n * @param metadata - Optional metadata for the upload\n * @returns Upload result with identifier and metadata\n */\n upload: (\n blob: Blob,\n filename?: string,\n metadata?: Record<string, unknown>,\n ) => Promise<StorageUploadResult>;\n\n /**\n * Download data from storage\n *\n * @param identifier - The storage identifier (could be URL, hash, path, or any unique ID)\n * @param options - Optional download options\n * @returns The downloaded data as a Blob\n */\n download: (\n identifier: string,\n options?: StorageDownloadOptions,\n ) => Promise<Blob>;\n\n /**\n * List stored items (optional)\n *\n * @param prefix - Optional prefix to filter results\n * @param options - Optional listing options\n * @returns Array of storage items with metadata\n */\n list?: (\n prefix?: string,\n options?: StorageListOptions,\n ) => Promise<StorageListResult>;\n\n /**\n * Delete a stored item (optional)\n *\n * @param identifier - The storage identifier to delete\n * @returns Promise that resolves to true if deletion succeeded\n */\n delete?: (identifier: string) => Promise<boolean>;\n\n /**\n * Extract identifier from a URL or return as-is (optional)\n * Used for backward compatibility with URL-based systems\n *\n * @param url - The URL to extract from\n * @returns The extracted identifier\n */\n extractIdentifier?: (url: string) => string;\n}\n\n/**\n * Options for storage download operations\n *\n * @category Configuration\n */\nexport interface StorageDownloadOptions {\n /** Optional HTTP headers */\n headers?: Record<string, string>;\n /** Optional abort signal for cancellation */\n signal?: AbortSignal;\n /** Optional byte range for partial downloads */\n range?: { start?: number; end?: number };\n}\n\n/**\n * Result from storage list operations\n *\n * @category Configuration\n */\nexport interface StorageListResult {\n /** Array of storage items */\n items: Array<{\n /** Item identifier */\n identifier: string;\n /** Item size in bytes */\n size?: number;\n /** Last modified timestamp */\n lastModified?: Date;\n /** Item metadata */\n metadata?: Record<string, unknown>;\n }>;\n /** Continuation token for pagination */\n continuationToken?: string;\n /** Whether more results are available */\n hasMore?: boolean;\n}\n\n/**\n * Base configuration interface without storage requirements\n *\n * @category Configuration\n */\nexport interface BaseConfig {\n /**\n * Optional relayer configuration for handling gasless transactions.\n * Can be a URL string for convenience, or a callback for full control.\n *\n * @example\n * ```typescript\n * // Simple URL (SDK handles transport)\n * relayer: '/api/relay'\n *\n * // Full control with callback\n * relayer: async (request) => {\n * const response = await fetch('/api/relay', {\n * method: 'POST',\n * body: JSON.stringify(request)\n * });\n * return response.json();\n * }\n * ```\n */\n relayer?: RelayerConfig;\n\n /**\n * Optional download relayer for proxying CORS-restricted downloads.\n * Provides a proxy mechanism for files stored on servers with CORS restrictions.\n */\n downloadRelayer?: DownloadRelayerCallbacks;\n\n /**\n * Optional storage providers configuration for file upload/download.\n * Required for: upload(), grant() without pre-stored URLs, schema operations.\n * See StorageConfig for provider selection guidance.\n */\n storage?: StorageConfig;\n\n /**\n * Optional subgraph URL for querying user files and permissions.\n * If not provided, defaults to the built-in subgraph URL for the current chain.\n * Can be overridden per method call if needed.\n * Obtain chain-specific URLs from Vana documentation or deployment info.\n */\n subgraphUrl?: string;\n /**\n * Optional default IPFS gateways to use for fetching files.\n * These gateways will be used by default in fetchFromIPFS unless overridden per-call.\n * If not provided, the SDK will use public gateways.\n * Order matters: first successful gateway is used.\n *\n * @example ['https://gateway.pinata.cloud', 'https://ipfs.io']\n */\n ipfsGateways?: string[];\n /**\n * Default personal server base URL for server operations.\n * Required for ServerController methods like getIdentity(), createOperation(), etc.\n *\n * @example 'https://my-personal-server.example.com'\n */\n defaultPersonalServerUrl?: string;\n\n /**\n * Optional operation store for tracking async relayed transactions.\n * When provided with a relayer, enables resilient transaction management\n * with polling support for pending operations.\n *\n * @example\n * ```typescript\n * const vana = createVana({\n * walletClient,\n * relayer: '/api/relay',\n * operationStore: myOperationStore\n * });\n * ```\n */\n operationStore?: IOperationStore | IRelayerStateStore;\n}\n\n/**\n * Base configuration interface that requires storage for storage-dependent operations\n *\n * @category Configuration\n */\nexport interface BaseConfigWithStorage {\n /**\n * Optional relayer configuration for handling gasless transactions.\n * Can be a URL string for convenience, or a callback for full control.\n *\n * @example\n * ```typescript\n * // Simple URL (SDK handles transport)\n * relayer: '/api/relay'\n *\n * // Full control with callback\n * relayer: async (request) => {\n * const response = await fetch('/api/relay', {\n * method: 'POST',\n * body: JSON.stringify(request)\n * });\n * return response.json();\n * }\n * ```\n */\n relayer?: RelayerConfig;\n\n /**\n * Optional download relayer for proxying CORS-restricted downloads.\n * Provides a proxy mechanism for files stored on servers with CORS restrictions.\n */\n downloadRelayer?: DownloadRelayerCallbacks;\n\n /** Required storage providers configuration for file upload/download */\n storage: StorageConfig;\n /**\n * Optional subgraph URL for querying user files and permissions.\n * If not provided, defaults to the built-in subgraph URL for the current chain.\n * Can be overridden per method call if needed.\n */\n subgraphUrl?: string;\n /**\n * Optional default IPFS gateways to use for fetching files.\n * These gateways will be used by default in fetchFromIPFS unless overridden per-call.\n * If not provided, the SDK will use public gateways.\n *\n * @example ['https://gateway.pinata.cloud', 'https://ipfs.io']\n */\n ipfsGateways?: string[];\n /**\n * Default personal server base URL for server operations.\n * Required for ServerController methods like getIdentity(), createOperation(), etc.\n *\n * @example 'https://my-personal-server.example.com'\n */\n defaultPersonalServerUrl?: string;\n\n /**\n * Optional operation store for tracking async relayed transactions.\n * When provided with a relayer, enables resilient transaction management\n * with polling support for pending operations.\n */\n operationStore?: IOperationStore | IRelayerStateStore;\n}\n\n/**\n * Configuration with wallet client\n *\n * @category Configuration\n */\nexport interface WalletConfig extends BaseConfig {\n /** The viem WalletClient instance used for signing transactions */\n walletClient: WalletClient & {\n chain: VanaChain;\n };\n}\n\n/**\n * Configuration with wallet client that requires storage\n *\n * @category Configuration\n */\nexport interface WalletConfigWithStorage extends BaseConfigWithStorage {\n /** The viem WalletClient instance used for signing transactions */\n walletClient: WalletClient & {\n chain: VanaChain;\n };\n}\n\n/**\n * Configuration with chain and account details\n *\n * @category Configuration\n */\nexport interface ChainConfig extends BaseConfig {\n /**\n * The chain ID for Vana network.\n * Supported: 14800 (Vana Mainnet), 14801 (Moksha Testnet), 31337 (Local Development).\n * Use chain constants from '@vana/sdk' for type safety.\n */\n chainId: VanaChainId;\n /**\n * RPC URL for the chain (optional, will use default for the chain if not provided).\n * Default URLs: mainnet (https://rpc.vana.org), testnet (https://rpc.moksha.vana.org).\n * Override for custom nodes or local development.\n */\n rpcUrl?: string;\n /**\n * Optional account for signing transactions.\n * Can be: privateKeyToAccount(), mnemonicToAccount(), or custom Account implementation.\n * Required for write operations; read-only operations work without account.\n */\n account?: Account;\n}\n\n/**\n * Configuration with chain and account details that requires storage\n *\n * @category Configuration\n */\nexport interface ChainConfigWithStorage extends BaseConfigWithStorage {\n /** The chain ID for Vana network */\n chainId: VanaChainId;\n /** RPC URL for the chain (optional, will use default for the chain if not provided) */\n rpcUrl?: string;\n /** Optional account for signing transactions */\n account?: Account;\n}\n\n/**\n * Configuration with wallet client and optional public client\n *\n * @category Configuration\n */\nexport interface VanaConfigWithWallet extends BaseConfig {\n /** The viem WalletClient instance used for signing transactions */\n walletClient: WalletClient;\n /** Optional PublicClient for read operations (derived from wallet if not provided) */\n publicClient?: PublicClient;\n}\n\n/**\n * Configuration for read-only operations with public client and address\n *\n * @category Configuration\n */\nexport interface VanaConfigReadOnly extends BaseConfig {\n /** The viem PublicClient instance for read operations */\n publicClient: PublicClient;\n /** The user's address for read operations */\n address: Address;\n}\n\n/**\n * Configuration for minimal read-only operations with just an address\n *\n * @category Configuration\n */\nexport interface VanaConfigAddressOnly extends BaseConfig {\n /** The user's address for read operations */\n address: Address;\n /** Optional chain configuration (will use default if not provided) */\n chain?: Chain;\n}\n\n/**\n * Configuration with wallet client and optional public client that requires storage\n *\n * @category Configuration\n */\nexport interface VanaConfigWithWalletWithStorage extends BaseConfigWithStorage {\n /** The viem WalletClient instance used for signing transactions */\n walletClient: WalletClient;\n /** Optional PublicClient for read operations (derived from wallet if not provided) */\n publicClient?: PublicClient;\n}\n\n/**\n * Configuration for read-only operations with public client and address that requires storage\n *\n * @category Configuration\n */\nexport interface VanaConfigReadOnlyWithStorage extends BaseConfigWithStorage {\n /** The viem PublicClient instance for read operations */\n publicClient: PublicClient;\n /** The user's address for read operations */\n address: Address;\n}\n\n/**\n * Configuration for minimal read-only operations with just an address that requires storage\n *\n * @category Configuration\n */\nexport interface VanaConfigAddressOnlyWithStorage\n extends BaseConfigWithStorage {\n /** The user's address for read operations */\n address: Address;\n /** Optional chain configuration (will use default if not provided) */\n chain?: Chain;\n}\n\n/**\n * Main configuration interface for initializing the Vana SDK.\n *\n * The SDK supports three initialization modes:\n * 1. Full mode with wallet client for signing transactions\n * 2. Read-only mode with public client and address for read operations\n * 3. Minimal mode with just an address and optional chain\n *\n * @category Configuration\n * @example\n * ```typescript\n * // Mode 1: Full configuration with wallet client\n * const configWithWallet: VanaConfig = {\n * walletClient: createWalletClient({\n * account: privateKeyToAccount('0x...'),\n * chain: moksha,\n * transport: http()\n * }),\n * publicClient: createPublicClient({\n * chain: moksha,\n * transport: http()\n * })\n * };\n *\n * // Mode 2: Read-only with public client and address\n * const configReadOnly: VanaConfig = {\n * publicClient: createPublicClient({\n * chain: moksha,\n * transport: http()\n * }),\n * address: '0x1234...'\n * };\n *\n * // Mode 3: Minimal with just address\n * const configMinimal: VanaConfig = {\n * address: '0x1234...',\n * chain: moksha // optional\n * };\n * ```\n */\nexport type VanaConfig =\n | VanaConfigWithWallet\n | VanaConfigReadOnly\n | VanaConfigAddressOnly\n | WalletConfig\n | ChainConfig;\n\n/**\n * Configuration interface for Vana SDK that requires storage providers.\n *\n * Use this type when you need to ensure storage is configured for operations\n * like file uploads, permission grants without pre-stored URLs, or schema creation.\n * Supports all three initialization modes with required storage.\n *\n * @category Configuration\n * @example\n * ```typescript\n * // Full configuration with wallet client and storage\n * const configWithWallet: VanaConfigWithStorage = {\n * walletClient: createWalletClient({\n * account: privateKeyToAccount('0x...'),\n * chain: moksha,\n * transport: http()\n * }),\n * storage: {\n * providers: {\n * ipfs: new IPFSStorage({ gateway: 'https://gateway.pinata.cloud' })\n * },\n * defaultProvider: 'ipfs'\n * }\n * };\n *\n * // Read-only configuration with storage\n * const configReadOnly: VanaConfigWithStorage = {\n * publicClient: createPublicClient({\n * chain: moksha,\n * transport: http()\n * }),\n * address: '0x1234...',\n * storage: {\n * providers: {\n * ipfs: new IPFSStorage({ gateway: 'https://gateway.pinata.cloud' })\n * },\n * defaultProvider: 'ipfs'\n * }\n * };\n * ```\n */\nexport type VanaConfigWithStorage =\n | VanaConfigWithWalletWithStorage\n | VanaConfigReadOnlyWithStorage\n | VanaConfigAddressOnlyWithStorage\n | WalletConfigWithStorage\n | ChainConfigWithStorage;\n\n/**\n * Runtime configuration information\n *\n * @category Configuration\n */\nexport interface RuntimeConfig {\n /** Current chain ID */\n chainId: VanaChainId;\n /** Current chain name */\n chainName: string;\n /** Available storage providers */\n storageProviders: string[];\n /** Default storage provider */\n defaultStorageProvider?: string;\n /** Current relayer configuration */\n relayerConfig?: RelayerConfig;\n}\n\n/**\n * Validates whether a configuration object has a wallet client (any wallet-based config).\n *\n * @param config - The configuration object to check\n * @returns True if the config contains a walletClient\n * @example\n * ```typescript\n * if (isWalletConfig(config)) {\n * console.log('Using wallet client:', config.walletClient.account?.address);\n * } else {\n * console.log('Read-only or chain config');\n * }\n * ```\n */\nexport function isWalletConfig(\n config: VanaConfig,\n): config is VanaConfigWithWallet | WalletConfig {\n return \"walletClient\" in config;\n}\n\n/**\n * Validates whether a configuration object is a read-only config with public client.\n *\n * @param config - The configuration object to check\n * @returns True if the config has publicClient and address but no walletClient\n * @example\n * ```typescript\n * if (isReadOnlyConfig(config)) {\n * console.log('Read-only mode with address:', config.address);\n * }\n * ```\n */\nexport function isReadOnlyConfig(\n config: VanaConfig,\n): config is VanaConfigReadOnly {\n return (\n \"publicClient\" in config &&\n \"address\" in config &&\n !(\"walletClient\" in config)\n );\n}\n\n/**\n * Validates whether a configuration object is an address-only config.\n *\n * @param config - The configuration object to check\n * @returns True if the config has only address (and optionally chain) but no clients\n * @example\n * ```typescript\n * if (isAddressOnlyConfig(config)) {\n * console.log('Address-only mode:', config.address);\n * }\n * ```\n */\nexport function isAddressOnlyConfig(\n config: VanaConfig,\n): config is VanaConfigAddressOnly {\n return (\n \"address\" in config &&\n !(\"publicClient\" in config) &&\n !(\"walletClient\" in config) &&\n !(\"chainId\" in config)\n );\n}\n\n/**\n * Validates whether a configuration object is a ChainConfig.\n *\n * @param config - The configuration object to check\n * @returns True if the config is a ChainConfig (contains chainId but not walletClient)\n * @example\n * ```typescript\n * if (isChainConfig(config)) {\n * console.log('Chain ID:', config.chainId);\n * console.log('RPC URL:', config.rpcUrl);\n * } else {\n * console.log('Using pre-configured wallet client');\n * }\n * ```\n */\nexport function isChainConfig(config: VanaConfig): config is ChainConfig {\n return \"chainId\" in config && !(\"walletClient\" in config);\n}\n\n/**\n * Validates whether a configuration has required storage providers.\n *\n * @param config - The configuration object to check\n * @returns True if the config has storage providers configured\n * @example\n * ```typescript\n * if (hasStorageConfig(config)) {\n * // Safe to use storage-dependent operations\n * await vana.data.uploadFile(file);\n * } else {\n * console.log('Storage not configured - some operations may fail');\n * }\n * ```\n */\nexport function hasStorageConfig(\n config: VanaConfig,\n): config is VanaConfigWithStorage {\n return (\n config.storage?.providers !== undefined &&\n Object.keys(config.storage.providers).length > 0\n );\n}\n\n/**\n * Configuration validation options\n *\n * @category Configuration\n */\nexport interface ConfigValidationOptions {\n /** Whether to validate storage providers */\n validateStorage?: boolean;\n /** Whether to validate relayer URL */\n validateRelayer?: boolean;\n /** Whether to validate chain configuration */\n validateChain?: boolean;\n}\n\n/**\n * Configuration validation result\n *\n * @category Configuration\n */\nexport interface ConfigValidationResult {\n /** Whether the configuration is valid */\n valid: boolean;\n /** List of validation errors */\n errors: string[];\n /** List of validation warnings */\n warnings: string[];\n}\n\n/**\n * Marker interface to enforce the presence of operationStore at compile time.\n * This interface is used to ensure that certain operations requiring a relayer\n * can only be called when the SDK has been properly configured with an operation store.\n *\n * @category Configuration\n */\nexport interface RelayerRequiredMarker {\n readonly __relayerConfigured: true;\n}\n"],"mappings":"AAyqBO,SAAS,eACd,QAC+C;AAC/C,SAAO,kBAAkB;AAC3B;AAcO,SAAS,iBACd,QAC8B;AAC9B,SACE,kBAAkB,UAClB,aAAa,UACb,EAAE,kBAAkB;AAExB;AAcO,SAAS,oBACd,QACiC;AACjC,SACE,aAAa,UACb,EAAE,kBAAkB,WACpB,EAAE,kBAAkB,WACpB,EAAE,aAAa;AAEnB;AAiBO,SAAS,cAAc,QAA2C;AACvE,SAAO,aAAa,UAAU,EAAE,kBAAkB;AACpD;AAiBO,SAAS,iBACd,QACiC;AACjC,SACE,OAAO,SAAS,cAAc,UAC9B,OAAO,KAAK,OAAO,QAAQ,SAAS,EAAE,SAAS;AAEnD;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/types/contracts.ts"],"sourcesContent":["/**\n * Defines types for smart contract interactions.\n *\n * @remarks\n * This module provides comprehensive type definitions for Vana protocol\n * smart contracts including contract names, deployment information, and\n * advanced TypeScript utility types for type-safe contract interactions.\n *\n * @category Types\n * @module types/contracts\n */\n\nimport type { Abi, Address, Hash, GetContractReturnType } from \"viem\";\n\n/**\n * Enumerates all supported Vana protocol contract names.\n *\n * @remarks\n * Use these names with `getContractController()` to get typed contract\n * instances. Each name corresponds to a specific protocol contract with\n * its own ABI and functionality.\n *\n * @category Contracts\n */\nexport type VanaContractName =\n | \"DataPortabilityPermissions\"\n | \"DataPortabilityServers\"\n | \"DataPortabilityGrantees\"\n | \"DataRegistry\"\n | \"TeePool\"\n | \"ComputeEngine\"\n | \"TeePoolPhala\"\n | \"DataRefinerRegistry\"\n | \"QueryEngine\"\n | \"ComputeInstructionRegistry\"\n | \"TeePoolEphemeralStandard\"\n | \"TeePoolPersistentStandard\"\n | \"TeePoolPersistentGpu\"\n | \"TeePoolDedicatedStandard\"\n | \"TeePoolDedicatedGpu\"\n | \"VanaEpoch\"\n | \"DLPRegistry\"\n | \"DLPRegistryTreasury\"\n | \"DLPPerformance\"\n | \"DLPRewardDeployer\"\n | \"DLPRewardDeployerTreasury\"\n | \"DLPRewardSwap\"\n | \"SwapHelper\"\n | \"VanaPoolStaking\"\n | \"VanaPoolEntity\"\n | \"VanaPoolTreasury\"\n | \"DAT\"\n | \"DATFactory\"\n | \"DATPausable\"\n | \"DATVotes\"\n | \"DataLiquidityPool\"\n | \"DLPRoot\";\n\n/**\n * Provides contract deployment information with typed ABI.\n *\n * @remarks\n * Contains the minimum information needed to interact with a\n * deployed contract: its address and ABI.\n *\n * @typeParam TAbi - The contract's ABI type for full type safety\n *\n * @category Contracts\n */\nexport interface ContractInfo<TAbi extends Abi = Abi> {\n /** The contract's deployed address */\n address: Address;\n /** The contract's ABI */\n abi: TAbi;\n}\n\n/**\n * Tracks contract deployment metadata.\n *\n * @remarks\n * Records when and how a contract was deployed to the blockchain,\n * useful for verification and debugging.\n *\n * @category Contracts\n */\nexport interface ContractDeployment {\n /** The contract's deployed address */\n address: Address;\n /** Block number where contract was deployed */\n blockNumber: bigint;\n /** Transaction hash of deployment */\n transactionHash: Hash;\n}\n\n/**\n * Represents a fully typed contract instance.\n *\n * @remarks\n * Alias for viem's GetContractReturnType, providing a contract\n * instance with all methods fully typed based on the ABI.\n *\n * @typeParam TAbi - The contract's ABI type\n *\n * @category Contracts\n */\nexport type VanaContractInstance<TAbi extends Abi = Abi> =\n GetContractReturnType<TAbi>;\n\n/**\n * Maps contract addresses by chain ID and contract name.\n *\n * @remarks\n * Hierarchical mapping structure for multi-chain contract deployments.\n * Used internally for address resolution across different networks.\n *\n * @category Contracts\n */\nexport type ContractAddresses = {\n [chainId: number]: {\n [contractName in VanaContractName]?: Address;\n };\n};\n\n/**\n * Extracts typed parameters for a contract method from its ABI.\n *\n * @remarks\n * Advanced utility type that provides type-safe parameter extraction\n * from contract ABIs. Maps Solidity types to TypeScript types automatically.\n *\n * @typeParam TAbi - The contract's ABI type\n * @typeParam TFunctionName - The name of the function to extract parameters for\n *\n * @internal\n */\nexport type ContractMethodParams<\n TAbi extends Abi,\n TFunctionName extends string,\n> = TAbi extends readonly unknown[]\n ? TAbi[number] extends {\n name: TFunctionName;\n type: \"function\";\n inputs: infer TInputs;\n }\n ? TInputs extends readonly unknown[]\n ? {\n [K in keyof TInputs]: TInputs[K] extends {\n name: infer TName;\n type: infer TType;\n }\n ? TName extends string\n ? TType extends \"address\"\n ? Address\n : TType extends \"uint256\"\n ? bigint\n : TType extends \"string\"\n ? string\n : TType extends \"bool\"\n ? boolean\n : TType extends \"bytes32\"\n ? Hash\n : unknown\n : never\n : never;\n }\n : never\n : never\n : never;\n\n/**\n * Extracts typed return values for a contract method from its ABI.\n *\n * @remarks\n * Advanced utility type that provides type-safe return type extraction\n * from contract ABIs. Handles single values and tuples appropriately.\n *\n * @typeParam TAbi - The contract's ABI type\n * @typeParam TFunctionName - The name of the function to extract return type for\n *\n * @internal\n */\nexport type ContractMethodReturnType<\n TAbi extends Abi,\n TFunctionName extends string,\n> = TAbi extends readonly unknown[]\n ? TAbi[number] extends {\n name: TFunctionName;\n type: \"function\";\n outputs: infer TOutputs;\n }\n ? TOutputs extends readonly unknown[]\n ? TOutputs[\"length\"] extends 1\n ? TOutputs[0] extends { type: infer TType }\n ? TType extends \"address\"\n ? Address\n : TType extends \"uint256\"\n ? bigint\n : TType extends \"string\"\n ? string\n : TType extends \"bool\"\n ? boolean\n : TType extends \"bytes32\"\n ? Hash\n : unknown\n : unknown\n : {\n [K in keyof TOutputs]: TOutputs[K] extends {\n name: infer TName;\n type: infer TType;\n }\n ? TName extends string\n ? TType extends \"address\"\n ? Address\n : TType extends \"uint256\"\n ? bigint\n : TType extends \"string\"\n ? string\n : TType extends \"bool\"\n ? boolean\n : TType extends \"bytes32\"\n ? Hash\n : unknown\n : never\n : never;\n }\n : never\n : never\n : never;\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../src/types/contracts.ts"],"sourcesContent":["/**\n * Defines types for smart contract interactions.\n *\n * @remarks\n * This module provides comprehensive type definitions for Vana protocol\n * smart contracts including contract names, deployment information, and\n * advanced TypeScript utility types for type-safe contract interactions.\n *\n * @category Types\n * @module types/contracts\n */\n\nimport type { Abi, Address, Hash, GetContractReturnType } from \"viem\";\n\n/**\n * Enumerates all supported Vana protocol contract names.\n *\n * @remarks\n * Use these names with `getContractController()` to get typed contract\n * instances. Each name corresponds to a specific protocol contract with\n * its own ABI and functionality.\n *\n * @category Contracts\n */\nexport type VanaContractName =\n | \"DataPortabilityPermissions\"\n | \"DataPortabilityServers\"\n | \"DataPortabilityGrantees\"\n | \"DataRegistry\"\n | \"ComputeEngine\"\n | \"TeePoolPhala\"\n | \"DataRefinerRegistry\"\n | \"QueryEngine\"\n | \"ComputeInstructionRegistry\"\n | \"TeePoolEphemeralStandard\"\n | \"TeePoolPersistentStandard\"\n | \"TeePoolPersistentGpu\"\n | \"TeePoolDedicatedStandard\"\n | \"TeePoolDedicatedGpu\"\n | \"VanaEpoch\"\n | \"DLPRegistry\"\n | \"DLPRegistryTreasury\"\n | \"VanaPoolStaking\"\n | \"VanaPoolEntity\"\n | \"VanaPoolTreasury\"\n | \"DAT\"\n | \"DATFactory\"\n | \"DATPausable\"\n | \"DATVotes\";\n\n/**\n * Provides contract deployment information with typed ABI.\n *\n * @remarks\n * Contains the minimum information needed to interact with a\n * deployed contract: its address and ABI.\n *\n * @typeParam TAbi - The contract's ABI type for full type safety\n *\n * @category Contracts\n */\nexport interface ContractInfo<TAbi extends Abi = Abi> {\n /** The contract's deployed address */\n address: Address;\n /** The contract's ABI */\n abi: TAbi;\n}\n\n/**\n * Tracks contract deployment metadata.\n *\n * @remarks\n * Records when and how a contract was deployed to the blockchain,\n * useful for verification and debugging.\n *\n * @category Contracts\n */\nexport interface ContractDeployment {\n /** The contract's deployed address */\n address: Address;\n /** Block number where contract was deployed */\n blockNumber: bigint;\n /** Transaction hash of deployment */\n transactionHash: Hash;\n}\n\n/**\n * Represents a fully typed contract instance.\n *\n * @remarks\n * Alias for viem's GetContractReturnType, providing a contract\n * instance with all methods fully typed based on the ABI.\n *\n * @typeParam TAbi - The contract's ABI type\n *\n * @category Contracts\n */\nexport type VanaContractInstance<TAbi extends Abi = Abi> =\n GetContractReturnType<TAbi>;\n\n/**\n * Maps contract addresses by chain ID and contract name.\n *\n * @remarks\n * Hierarchical mapping structure for multi-chain contract deployments.\n * Used internally for address resolution across different networks.\n *\n * @category Contracts\n */\nexport type ContractAddresses = {\n [chainId: number]: {\n [contractName in VanaContractName]?: Address;\n };\n};\n\n/**\n * Extracts typed parameters for a contract method from its ABI.\n *\n * @remarks\n * Advanced utility type that provides type-safe parameter extraction\n * from contract ABIs. Maps Solidity types to TypeScript types automatically.\n *\n * @typeParam TAbi - The contract's ABI type\n * @typeParam TFunctionName - The name of the function to extract parameters for\n *\n * @internal\n */\nexport type ContractMethodParams<\n TAbi extends Abi,\n TFunctionName extends string,\n> = TAbi extends readonly unknown[]\n ? TAbi[number] extends {\n name: TFunctionName;\n type: \"function\";\n inputs: infer TInputs;\n }\n ? TInputs extends readonly unknown[]\n ? {\n [K in keyof TInputs]: TInputs[K] extends {\n name: infer TName;\n type: infer TType;\n }\n ? TName extends string\n ? TType extends \"address\"\n ? Address\n : TType extends \"uint256\"\n ? bigint\n : TType extends \"string\"\n ? string\n : TType extends \"bool\"\n ? boolean\n : TType extends \"bytes32\"\n ? Hash\n : unknown\n : never\n : never;\n }\n : never\n : never\n : never;\n\n/**\n * Extracts typed return values for a contract method from its ABI.\n *\n * @remarks\n * Advanced utility type that provides type-safe return type extraction\n * from contract ABIs. Handles single values and tuples appropriately.\n *\n * @typeParam TAbi - The contract's ABI type\n * @typeParam TFunctionName - The name of the function to extract return type for\n *\n * @internal\n */\nexport type ContractMethodReturnType<\n TAbi extends Abi,\n TFunctionName extends string,\n> = TAbi extends readonly unknown[]\n ? TAbi[number] extends {\n name: TFunctionName;\n type: \"function\";\n outputs: infer TOutputs;\n }\n ? TOutputs extends readonly unknown[]\n ? TOutputs[\"length\"] extends 1\n ? TOutputs[0] extends { type: infer TType }\n ? TType extends \"address\"\n ? Address\n : TType extends \"uint256\"\n ? bigint\n : TType extends \"string\"\n ? string\n : TType extends \"bool\"\n ? boolean\n : TType extends \"bytes32\"\n ? Hash\n : unknown\n : unknown\n : {\n [K in keyof TOutputs]: TOutputs[K] extends {\n name: infer TName;\n type: infer TType;\n }\n ? TName extends string\n ? TType extends \"address\"\n ? Address\n : TType extends \"uint256\"\n ? bigint\n : TType extends \"string\"\n ? string\n : TType extends \"bool\"\n ? boolean\n : TType extends \"bytes32\"\n ? Hash\n : unknown\n : never\n : never;\n }\n : never\n : never\n : never;\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -20,7 +20,7 @@ import type { Abi, Address, Hash, GetContractReturnType } from "viem";
20
20
  *
21
21
  * @category Contracts
22
22
  */
23
- export type VanaContractName = "DataPortabilityPermissions" | "DataPortabilityServers" | "DataPortabilityGrantees" | "DataRegistry" | "TeePool" | "ComputeEngine" | "TeePoolPhala" | "DataRefinerRegistry" | "QueryEngine" | "ComputeInstructionRegistry" | "TeePoolEphemeralStandard" | "TeePoolPersistentStandard" | "TeePoolPersistentGpu" | "TeePoolDedicatedStandard" | "TeePoolDedicatedGpu" | "VanaEpoch" | "DLPRegistry" | "DLPRegistryTreasury" | "DLPPerformance" | "DLPRewardDeployer" | "DLPRewardDeployerTreasury" | "DLPRewardSwap" | "SwapHelper" | "VanaPoolStaking" | "VanaPoolEntity" | "VanaPoolTreasury" | "DAT" | "DATFactory" | "DATPausable" | "DATVotes" | "DataLiquidityPool" | "DLPRoot";
23
+ export type VanaContractName = "DataPortabilityPermissions" | "DataPortabilityServers" | "DataPortabilityGrantees" | "DataRegistry" | "ComputeEngine" | "TeePoolPhala" | "DataRefinerRegistry" | "QueryEngine" | "ComputeInstructionRegistry" | "TeePoolEphemeralStandard" | "TeePoolPersistentStandard" | "TeePoolPersistentGpu" | "TeePoolDedicatedStandard" | "TeePoolDedicatedGpu" | "VanaEpoch" | "DLPRegistry" | "DLPRegistryTreasury" | "VanaPoolStaking" | "VanaPoolEntity" | "VanaPoolTreasury" | "DAT" | "DATFactory" | "DATPausable" | "DATVotes";
24
24
  /**
25
25
  * Provides contract deployment information with typed ABI.
26
26
  *
@@ -18,48 +18,17 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var types_exports = {};
20
20
  __export(types_exports, {
21
- SchemaValidationError: () => import_schemaValidation.SchemaValidationError,
22
- SchemaValidator: () => import_schemaValidation.SchemaValidator,
23
21
  StorageError: () => import_storage.StorageError,
24
- fetchAndValidateSchema: () => import_schemaValidation.fetchAndValidateSchema,
25
- hasStorageConfig: () => import_config.hasStorageConfig,
26
- isAPIResponse: () => import_external_apis.isAPIResponse,
27
- isAddressOnlyConfig: () => import_config.isAddressOnlyConfig,
28
- isChainConfig: () => import_config.isChainConfig,
29
- isReadOnlyConfig: () => import_config.isReadOnlyConfig,
30
- isReplicateAPIResponse: () => import_external_apis.isReplicateAPIResponse,
31
22
  isVanaChain: () => import_chains.isVanaChain,
32
- isVanaChainId: () => import_chains.isVanaChainId,
33
- isWalletConfig: () => import_config.isWalletConfig,
34
- parseReplicateOutput: () => import_external_apis.parseReplicateOutput,
35
- safeParseJSON: () => import_external_apis.safeParseJSON,
36
- validateDataAgainstSchema: () => import_schemaValidation.validateDataAgainstSchema,
37
- validateDataSchemaAgainstMetaSchema: () => import_schemaValidation.validateDataSchemaAgainstMetaSchema
23
+ isVanaChainId: () => import_chains.isVanaChainId
38
24
  });
39
25
  module.exports = __toCommonJS(types_exports);
40
- var import_config = require("./config");
41
26
  var import_chains = require("./chains");
42
27
  var import_storage = require("./storage");
43
- var import_schemaValidation = require("../utils/schemaValidation");
44
- var import_external_apis = require("./external-apis");
45
28
  // Annotate the CommonJS export names for ESM import in node:
46
29
  0 && (module.exports = {
47
- SchemaValidationError,
48
- SchemaValidator,
49
30
  StorageError,
50
- fetchAndValidateSchema,
51
- hasStorageConfig,
52
- isAPIResponse,
53
- isAddressOnlyConfig,
54
- isChainConfig,
55
- isReadOnlyConfig,
56
- isReplicateAPIResponse,
57
31
  isVanaChain,
58
- isVanaChainId,
59
- isWalletConfig,
60
- parseReplicateOutput,
61
- safeParseJSON,
62
- validateDataAgainstSchema,
63
- validateDataSchemaAgainstMetaSchema
32
+ isVanaChainId
64
33
  });
65
34
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/types/index.ts"],"sourcesContent":["/**\n * Centralized type exports for the Vana SDK.\n *\n * @remarks\n * This module re-exports all public types from their respective modules,\n * providing a single import point for SDK consumers. Types are organized\n * by category for easy discovery and usage.\n *\n * **Import Strategy:**\n * - Import types from this module for application code\n * - Import from specific modules only for advanced use cases\n * - Avoid importing from internal paths\n *\n * @example\n * ```typescript\n * // Recommended: Import from types module\n * import type { VanaConfig, UserFile, GrantPermissionParams } from '@opendatalabs/vana-sdk';\n *\n * // Alternative: Import from specific category\n * import type { StorageProvider } from '@opendatalabs/vana-sdk';\n * ```\n *\n * @category Types\n * @module types\n */\n\n// Configuration types\nexport type {\n BaseConfig,\n BaseConfigWithStorage,\n WalletConfig,\n WalletConfigWithStorage,\n ChainConfig,\n ChainConfigWithStorage,\n VanaConfig,\n VanaConfigWithStorage,\n VanaConfigWithWallet,\n VanaConfigReadOnly,\n VanaConfigAddressOnly,\n VanaConfigWithWalletWithStorage,\n VanaConfigReadOnlyWithStorage,\n VanaConfigAddressOnlyWithStorage,\n RuntimeConfig,\n StorageConfig,\n ConfigValidationOptions,\n ConfigValidationResult,\n DownloadRelayerCallbacks,\n StorageRequiredMarker,\n RelayerRequiredMarker,\n} from \"./config\";\n\nexport {\n isWalletConfig,\n isChainConfig,\n isReadOnlyConfig,\n isAddressOnlyConfig,\n hasStorageConfig,\n} from \"./config\";\n\n// Chain types\nexport type { VanaChainId, VanaChain } from \"./chains\";\n\nexport { isVanaChainId, isVanaChain } from \"./chains\";\n\n// Contract types\nexport type {\n VanaContractName,\n ContractInfo,\n ContractDeployment,\n VanaContractInstance,\n ContractAddresses,\n ContractMethodParams,\n ContractMethodReturnType,\n} from \"./contracts\";\n\n// Note: VanaContract and ContractAbis are exported directly from src/index.ts\n// to avoid circular dependencies. Do not re-export them here.\n\n// Storage types\nexport type {\n StorageProvider,\n StorageUploadResult,\n StorageFile,\n StorageListOptions,\n StorageProviderConfig,\n} from \"./storage\";\n\nexport { StorageError } from \"./storage\";\n\n// Data types\nexport type {\n UserFile,\n FileMetadata,\n UploadParams,\n FilePermissionParams,\n LegacyPermissionParams,\n EncryptedUploadParams,\n UnencryptedUploadParams,\n UploadResult,\n UploadFileParams,\n UploadFileResult,\n UploadEncryptedFileResult,\n EncryptionInfo,\n GetUserFilesParams,\n GetFileParams,\n EncryptFileOptions,\n EncryptFileResult,\n DecryptFileOptions,\n UploadFileWithPermissionsParams,\n AddFilePermissionParams,\n DecryptFileWithPermissionOptions,\n DownloadFileParams,\n DownloadFileResult,\n DeleteFileParams,\n DeleteFileResult,\n FileAccessPermissions,\n FileSharingConfig,\n BatchUploadParams,\n BatchUploadResult,\n SchemaMetadata,\n CompleteSchema,\n Schema,\n Refiner,\n AddSchemaParams,\n AddSchemaResult,\n AddRefinerParams,\n AddRefinerResult,\n UpdateSchemaIdParams,\n UpdateSchemaIdResult,\n TrustedServer,\n GetUserTrustedServersParams,\n} from \"./data\";\n\n// Schema types\nexport type {\n CreateSchemaParams,\n CreateSchemaResult,\n} from \"../controllers/schemas\";\n\n// Schema validation types\nexport type { DataSchema } from \"../utils/schemaValidation\";\nexport {\n SchemaValidationError,\n SchemaValidator,\n validateDataSchemaAgainstMetaSchema,\n validateDataAgainstSchema,\n fetchAndValidateSchema,\n} from \"../utils/schemaValidation\";\n\n// Permission types\nexport type {\n OnChainPermissionGrant,\n GetUserPermissionsOptions,\n GrantPermissionParams,\n RevokePermissionParams,\n CheckPermissionParams,\n PermissionCheckResult,\n PermissionGrantDomain,\n PermissionGrantMessage,\n PermissionInputMessage,\n SimplifiedPermissionMessage,\n GrantFile,\n PermissionGrantTypedData,\n RevokePermissionTypedData,\n GenericTypedData,\n TypedDataPrimaryType,\n SpecificTypedData,\n PermissionOperation,\n PermissionStatus,\n QueryPermissionsParams,\n PermissionQueryResult,\n PermissionAnalytics,\n PermissionEvent,\n GrantedPermission,\n Server,\n AddAndTrustServerParams,\n TrustServerParams,\n UntrustServerParams,\n AddAndTrustServerInput,\n TrustServerInput,\n UntrustServerInput,\n AddAndTrustServerTypedData,\n TrustServerTypedData,\n UntrustServerTypedData,\n PermissionInfo,\n RevokePermissionInput,\n TrustedServerInfo,\n PaginatedTrustedServers,\n TrustedServerQueryOptions,\n BatchServerInfoResult,\n ServerTrustStatus,\n ServerInfo,\n Grantee,\n GranteeInfo,\n RegisterGranteeParams,\n RegisterGranteeInput,\n RegisterGranteeTypedData,\n GranteeQueryOptions,\n PaginatedGrantees,\n ServerFilesAndPermissionParams,\n ServerFilesAndPermissionTypedData,\n Permission,\n} from \"./permissions\";\n\n// Personal server types\nexport type {\n PostRequestParams,\n CreateOperationParams,\n DownloadArtifactParams,\n InitPersonalServerParams,\n PersonalServerIdentity,\n} from \"./personal\";\n\n// Operations types\nexport type {\n Operation,\n Artifact,\n PollingOptions,\n TransactionResult,\n TransactionReceipt as OperationTransactionReceipt,\n TransactionWaitOptions,\n} from \"./operations\";\n\n// Server API types (auto-generated via fetch-server-types.ts)\nexport type * from \"../generated/server/server-exports\";\n\n// External API types\nexport type {\n ReplicateAPIResponse,\n ReplicateStatus,\n PinataUploadResponse,\n PinataPin,\n PinataListResponse,\n APIResponse,\n} from \"./external-apis\";\n\nexport {\n isReplicateAPIResponse,\n isAPIResponse,\n safeParseJSON,\n parseReplicateOutput,\n} from \"./external-apis\";\n\n// Relayer types\nexport type {\n RelayerStorageResponse,\n RelayerTransactionResponse,\n RelayerStoreParams,\n RelayerSubmitParams,\n RelayerStatus,\n RelayerConfig,\n UnifiedRelayerRequest,\n UnifiedRelayerResponse,\n SignedRelayerRequest,\n DirectRelayerRequest,\n RelayerRequestOptions,\n RelayerErrorResponse,\n RelayerQueueInfo,\n RelayerTransactionStatus,\n RelayerMetrics,\n RelayerWebhookConfig,\n RelayerWebhookPayload,\n} from \"./relayer\";\n\n// Utility types\nexport type {\n PartialExcept,\n RequiredExcept,\n Awaited,\n MaybePromise,\n MaybeArray,\n PaginationParams,\n PaginationResult,\n BlockRange,\n ApiResponse,\n CacheConfig,\n ValidationResult,\n StatusInfo,\n RateLimitInfo,\n UploadProgress,\n NetworkInfo,\n GasEstimate,\n TimeRange,\n} from \"./utils\";\n\n// Operation store types\nexport type {\n IOperationStore,\n StoredOperation,\n IRelayerStateStore,\n OperationState,\n} from \"./operationStore\";\n\n// Options types\nexport type {\n ConsistencyOptions,\n DataSource,\n PaginationOptions,\n ListOptions,\n WriteOptions,\n LegacyTransactionOptions,\n} from \"./options\";\n\n// Generic types for extensibility\nexport type {\n GenericRequest,\n GenericResponse,\n AsyncResult,\n ContractCall,\n EventFilter,\n EventLog,\n ControllerContext,\n Controller,\n Cache,\n RetryConfig,\n RateLimiterConfig,\n Middleware,\n Plugin,\n Factory,\n Repository,\n Validator,\n Transformer,\n Service,\n Observer,\n Observable,\n StateMachine,\n ConditionalOptional,\n PromiseResult,\n AllKeys,\n DeepPartial,\n DeepReadonly,\n RequireKeys,\n OptionalKeys,\n NonNullable,\n PickByType,\n OmitByType,\n Brand,\n Nominal,\n} from \"./generics\";\n\n// Re-export viem types that are commonly used\nexport type {\n Address,\n Hash,\n Abi,\n Chain,\n WalletClient,\n PublicClient,\n Account,\n GetContractReturnType,\n} from \"viem\";\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmDA,oBAMO;AAKP,oBAA2C;AAyB3C,qBAA6B;AAsD7B,8BAMO;AAyFP,2BAKO;","names":[]}
1
+ {"version":3,"sources":["../../src/types/index.ts"],"sourcesContent":["/**\n * Centralized type exports for the Vana SDK.\n *\n * @remarks\n * This module re-exports all public types from their respective modules,\n * providing a single import point for SDK consumers.\n *\n * @category Types\n * @module types\n */\n\n// Chain types\nexport type { VanaChainId, VanaChain } from \"./chains\";\nexport { isVanaChainId, isVanaChain } from \"./chains\";\n\n// Contract types\nexport type {\n VanaContractName,\n ContractInfo,\n ContractDeployment,\n VanaContractInstance,\n ContractAddresses,\n ContractMethodParams,\n ContractMethodReturnType,\n} from \"./contracts\";\n\n// Storage types\nexport type {\n StorageProvider,\n StorageUploadResult,\n StorageFile,\n StorageListOptions,\n StorageProviderConfig,\n} from \"./storage\";\n\nexport { StorageError } from \"./storage\";\n\n// Storage callback types\nexport type {\n StorageCallbacks,\n StorageDownloadOptions,\n StorageListResult,\n} from \"./config\";\n\n// Re-export viem types that are commonly used\nexport type {\n Address,\n Hash,\n Abi,\n Chain,\n WalletClient,\n PublicClient,\n Account,\n GetContractReturnType,\n} from \"viem\";\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA,oBAA2C;AAsB3C,qBAA6B;","names":[]}
@@ -3,46 +3,15 @@
3
3
  *
4
4
  * @remarks
5
5
  * This module re-exports all public types from their respective modules,
6
- * providing a single import point for SDK consumers. Types are organized
7
- * by category for easy discovery and usage.
8
- *
9
- * **Import Strategy:**
10
- * - Import types from this module for application code
11
- * - Import from specific modules only for advanced use cases
12
- * - Avoid importing from internal paths
13
- *
14
- * @example
15
- * ```typescript
16
- * // Recommended: Import from types module
17
- * import type { VanaConfig, UserFile, GrantPermissionParams } from '@opendatalabs/vana-sdk';
18
- *
19
- * // Alternative: Import from specific category
20
- * import type { StorageProvider } from '@opendatalabs/vana-sdk';
21
- * ```
6
+ * providing a single import point for SDK consumers.
22
7
  *
23
8
  * @category Types
24
9
  * @module types
25
10
  */
26
- export type { BaseConfig, BaseConfigWithStorage, WalletConfig, WalletConfigWithStorage, ChainConfig, ChainConfigWithStorage, VanaConfig, VanaConfigWithStorage, VanaConfigWithWallet, VanaConfigReadOnly, VanaConfigAddressOnly, VanaConfigWithWalletWithStorage, VanaConfigReadOnlyWithStorage, VanaConfigAddressOnlyWithStorage, RuntimeConfig, StorageConfig, ConfigValidationOptions, ConfigValidationResult, DownloadRelayerCallbacks, StorageRequiredMarker, RelayerRequiredMarker, } from "./config";
27
- export { isWalletConfig, isChainConfig, isReadOnlyConfig, isAddressOnlyConfig, hasStorageConfig, } from "./config";
28
11
  export type { VanaChainId, VanaChain } from "./chains";
29
12
  export { isVanaChainId, isVanaChain } from "./chains";
30
13
  export type { VanaContractName, ContractInfo, ContractDeployment, VanaContractInstance, ContractAddresses, ContractMethodParams, ContractMethodReturnType, } from "./contracts";
31
14
  export type { StorageProvider, StorageUploadResult, StorageFile, StorageListOptions, StorageProviderConfig, } from "./storage";
32
15
  export { StorageError } from "./storage";
33
- export type { UserFile, FileMetadata, UploadParams, FilePermissionParams, LegacyPermissionParams, EncryptedUploadParams, UnencryptedUploadParams, UploadResult, UploadFileParams, UploadFileResult, UploadEncryptedFileResult, EncryptionInfo, GetUserFilesParams, GetFileParams, EncryptFileOptions, EncryptFileResult, DecryptFileOptions, UploadFileWithPermissionsParams, AddFilePermissionParams, DecryptFileWithPermissionOptions, DownloadFileParams, DownloadFileResult, DeleteFileParams, DeleteFileResult, FileAccessPermissions, FileSharingConfig, BatchUploadParams, BatchUploadResult, SchemaMetadata, CompleteSchema, Schema, Refiner, AddSchemaParams, AddSchemaResult, AddRefinerParams, AddRefinerResult, UpdateSchemaIdParams, UpdateSchemaIdResult, TrustedServer, GetUserTrustedServersParams, } from "./data";
34
- export type { CreateSchemaParams, CreateSchemaResult, } from "../controllers/schemas";
35
- export type { DataSchema } from "../utils/schemaValidation";
36
- export { SchemaValidationError, SchemaValidator, validateDataSchemaAgainstMetaSchema, validateDataAgainstSchema, fetchAndValidateSchema, } from "../utils/schemaValidation";
37
- export type { OnChainPermissionGrant, GetUserPermissionsOptions, GrantPermissionParams, RevokePermissionParams, CheckPermissionParams, PermissionCheckResult, PermissionGrantDomain, PermissionGrantMessage, PermissionInputMessage, SimplifiedPermissionMessage, GrantFile, PermissionGrantTypedData, RevokePermissionTypedData, GenericTypedData, TypedDataPrimaryType, SpecificTypedData, PermissionOperation, PermissionStatus, QueryPermissionsParams, PermissionQueryResult, PermissionAnalytics, PermissionEvent, GrantedPermission, Server, AddAndTrustServerParams, TrustServerParams, UntrustServerParams, AddAndTrustServerInput, TrustServerInput, UntrustServerInput, AddAndTrustServerTypedData, TrustServerTypedData, UntrustServerTypedData, PermissionInfo, RevokePermissionInput, TrustedServerInfo, PaginatedTrustedServers, TrustedServerQueryOptions, BatchServerInfoResult, ServerTrustStatus, ServerInfo, Grantee, GranteeInfo, RegisterGranteeParams, RegisterGranteeInput, RegisterGranteeTypedData, GranteeQueryOptions, PaginatedGrantees, ServerFilesAndPermissionParams, ServerFilesAndPermissionTypedData, Permission, } from "./permissions";
38
- export type { PostRequestParams, CreateOperationParams, DownloadArtifactParams, InitPersonalServerParams, PersonalServerIdentity, } from "./personal";
39
- export type { Operation, Artifact, PollingOptions, TransactionResult, TransactionReceipt as OperationTransactionReceipt, TransactionWaitOptions, } from "./operations";
40
- export type * from "../generated/server/server-exports";
41
- export type { ReplicateAPIResponse, ReplicateStatus, PinataUploadResponse, PinataPin, PinataListResponse, APIResponse, } from "./external-apis";
42
- export { isReplicateAPIResponse, isAPIResponse, safeParseJSON, parseReplicateOutput, } from "./external-apis";
43
- export type { RelayerStorageResponse, RelayerTransactionResponse, RelayerStoreParams, RelayerSubmitParams, RelayerStatus, RelayerConfig, UnifiedRelayerRequest, UnifiedRelayerResponse, SignedRelayerRequest, DirectRelayerRequest, RelayerRequestOptions, RelayerErrorResponse, RelayerQueueInfo, RelayerTransactionStatus, RelayerMetrics, RelayerWebhookConfig, RelayerWebhookPayload, } from "./relayer";
44
- export type { PartialExcept, RequiredExcept, Awaited, MaybePromise, MaybeArray, PaginationParams, PaginationResult, BlockRange, ApiResponse, CacheConfig, ValidationResult, StatusInfo, RateLimitInfo, UploadProgress, NetworkInfo, GasEstimate, TimeRange, } from "./utils";
45
- export type { IOperationStore, StoredOperation, IRelayerStateStore, OperationState, } from "./operationStore";
46
- export type { ConsistencyOptions, DataSource, PaginationOptions, ListOptions, WriteOptions, LegacyTransactionOptions, } from "./options";
47
- export type { GenericRequest, GenericResponse, AsyncResult, ContractCall, EventFilter, EventLog, ControllerContext, Controller, Cache, RetryConfig, RateLimiterConfig, Middleware, Plugin, Factory, Repository, Validator, Transformer, Service, Observer, Observable, StateMachine, ConditionalOptional, PromiseResult, AllKeys, DeepPartial, DeepReadonly, RequireKeys, OptionalKeys, NonNullable, PickByType, OmitByType, Brand, Nominal, } from "./generics";
16
+ export type { StorageCallbacks, StorageDownloadOptions, StorageListResult, } from "./config";
48
17
  export type { Address, Hash, Abi, Chain, WalletClient, PublicClient, Account, GetContractReturnType, } from "viem";
@@ -1,42 +1,8 @@
1
- import {
2
- isWalletConfig,
3
- isChainConfig,
4
- isReadOnlyConfig,
5
- isAddressOnlyConfig,
6
- hasStorageConfig
7
- } from "./config";
8
1
  import { isVanaChainId, isVanaChain } from "./chains";
9
2
  import { StorageError } from "./storage";
10
- import {
11
- SchemaValidationError,
12
- SchemaValidator,
13
- validateDataSchemaAgainstMetaSchema,
14
- validateDataAgainstSchema,
15
- fetchAndValidateSchema
16
- } from "../utils/schemaValidation";
17
- import {
18
- isReplicateAPIResponse,
19
- isAPIResponse,
20
- safeParseJSON,
21
- parseReplicateOutput
22
- } from "./external-apis";
23
3
  export {
24
- SchemaValidationError,
25
- SchemaValidator,
26
4
  StorageError,
27
- fetchAndValidateSchema,
28
- hasStorageConfig,
29
- isAPIResponse,
30
- isAddressOnlyConfig,
31
- isChainConfig,
32
- isReadOnlyConfig,
33
- isReplicateAPIResponse,
34
5
  isVanaChain,
35
- isVanaChainId,
36
- isWalletConfig,
37
- parseReplicateOutput,
38
- safeParseJSON,
39
- validateDataAgainstSchema,
40
- validateDataSchemaAgainstMetaSchema
6
+ isVanaChainId
41
7
  };
42
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/types/index.ts"],"sourcesContent":["/**\n * Centralized type exports for the Vana SDK.\n *\n * @remarks\n * This module re-exports all public types from their respective modules,\n * providing a single import point for SDK consumers. Types are organized\n * by category for easy discovery and usage.\n *\n * **Import Strategy:**\n * - Import types from this module for application code\n * - Import from specific modules only for advanced use cases\n * - Avoid importing from internal paths\n *\n * @example\n * ```typescript\n * // Recommended: Import from types module\n * import type { VanaConfig, UserFile, GrantPermissionParams } from '@opendatalabs/vana-sdk';\n *\n * // Alternative: Import from specific category\n * import type { StorageProvider } from '@opendatalabs/vana-sdk';\n * ```\n *\n * @category Types\n * @module types\n */\n\n// Configuration types\nexport type {\n BaseConfig,\n BaseConfigWithStorage,\n WalletConfig,\n WalletConfigWithStorage,\n ChainConfig,\n ChainConfigWithStorage,\n VanaConfig,\n VanaConfigWithStorage,\n VanaConfigWithWallet,\n VanaConfigReadOnly,\n VanaConfigAddressOnly,\n VanaConfigWithWalletWithStorage,\n VanaConfigReadOnlyWithStorage,\n VanaConfigAddressOnlyWithStorage,\n RuntimeConfig,\n StorageConfig,\n ConfigValidationOptions,\n ConfigValidationResult,\n DownloadRelayerCallbacks,\n StorageRequiredMarker,\n RelayerRequiredMarker,\n} from \"./config\";\n\nexport {\n isWalletConfig,\n isChainConfig,\n isReadOnlyConfig,\n isAddressOnlyConfig,\n hasStorageConfig,\n} from \"./config\";\n\n// Chain types\nexport type { VanaChainId, VanaChain } from \"./chains\";\n\nexport { isVanaChainId, isVanaChain } from \"./chains\";\n\n// Contract types\nexport type {\n VanaContractName,\n ContractInfo,\n ContractDeployment,\n VanaContractInstance,\n ContractAddresses,\n ContractMethodParams,\n ContractMethodReturnType,\n} from \"./contracts\";\n\n// Note: VanaContract and ContractAbis are exported directly from src/index.ts\n// to avoid circular dependencies. Do not re-export them here.\n\n// Storage types\nexport type {\n StorageProvider,\n StorageUploadResult,\n StorageFile,\n StorageListOptions,\n StorageProviderConfig,\n} from \"./storage\";\n\nexport { StorageError } from \"./storage\";\n\n// Data types\nexport type {\n UserFile,\n FileMetadata,\n UploadParams,\n FilePermissionParams,\n LegacyPermissionParams,\n EncryptedUploadParams,\n UnencryptedUploadParams,\n UploadResult,\n UploadFileParams,\n UploadFileResult,\n UploadEncryptedFileResult,\n EncryptionInfo,\n GetUserFilesParams,\n GetFileParams,\n EncryptFileOptions,\n EncryptFileResult,\n DecryptFileOptions,\n UploadFileWithPermissionsParams,\n AddFilePermissionParams,\n DecryptFileWithPermissionOptions,\n DownloadFileParams,\n DownloadFileResult,\n DeleteFileParams,\n DeleteFileResult,\n FileAccessPermissions,\n FileSharingConfig,\n BatchUploadParams,\n BatchUploadResult,\n SchemaMetadata,\n CompleteSchema,\n Schema,\n Refiner,\n AddSchemaParams,\n AddSchemaResult,\n AddRefinerParams,\n AddRefinerResult,\n UpdateSchemaIdParams,\n UpdateSchemaIdResult,\n TrustedServer,\n GetUserTrustedServersParams,\n} from \"./data\";\n\n// Schema types\nexport type {\n CreateSchemaParams,\n CreateSchemaResult,\n} from \"../controllers/schemas\";\n\n// Schema validation types\nexport type { DataSchema } from \"../utils/schemaValidation\";\nexport {\n SchemaValidationError,\n SchemaValidator,\n validateDataSchemaAgainstMetaSchema,\n validateDataAgainstSchema,\n fetchAndValidateSchema,\n} from \"../utils/schemaValidation\";\n\n// Permission types\nexport type {\n OnChainPermissionGrant,\n GetUserPermissionsOptions,\n GrantPermissionParams,\n RevokePermissionParams,\n CheckPermissionParams,\n PermissionCheckResult,\n PermissionGrantDomain,\n PermissionGrantMessage,\n PermissionInputMessage,\n SimplifiedPermissionMessage,\n GrantFile,\n PermissionGrantTypedData,\n RevokePermissionTypedData,\n GenericTypedData,\n TypedDataPrimaryType,\n SpecificTypedData,\n PermissionOperation,\n PermissionStatus,\n QueryPermissionsParams,\n PermissionQueryResult,\n PermissionAnalytics,\n PermissionEvent,\n GrantedPermission,\n Server,\n AddAndTrustServerParams,\n TrustServerParams,\n UntrustServerParams,\n AddAndTrustServerInput,\n TrustServerInput,\n UntrustServerInput,\n AddAndTrustServerTypedData,\n TrustServerTypedData,\n UntrustServerTypedData,\n PermissionInfo,\n RevokePermissionInput,\n TrustedServerInfo,\n PaginatedTrustedServers,\n TrustedServerQueryOptions,\n BatchServerInfoResult,\n ServerTrustStatus,\n ServerInfo,\n Grantee,\n GranteeInfo,\n RegisterGranteeParams,\n RegisterGranteeInput,\n RegisterGranteeTypedData,\n GranteeQueryOptions,\n PaginatedGrantees,\n ServerFilesAndPermissionParams,\n ServerFilesAndPermissionTypedData,\n Permission,\n} from \"./permissions\";\n\n// Personal server types\nexport type {\n PostRequestParams,\n CreateOperationParams,\n DownloadArtifactParams,\n InitPersonalServerParams,\n PersonalServerIdentity,\n} from \"./personal\";\n\n// Operations types\nexport type {\n Operation,\n Artifact,\n PollingOptions,\n TransactionResult,\n TransactionReceipt as OperationTransactionReceipt,\n TransactionWaitOptions,\n} from \"./operations\";\n\n// Server API types (auto-generated via fetch-server-types.ts)\nexport type * from \"../generated/server/server-exports\";\n\n// External API types\nexport type {\n ReplicateAPIResponse,\n ReplicateStatus,\n PinataUploadResponse,\n PinataPin,\n PinataListResponse,\n APIResponse,\n} from \"./external-apis\";\n\nexport {\n isReplicateAPIResponse,\n isAPIResponse,\n safeParseJSON,\n parseReplicateOutput,\n} from \"./external-apis\";\n\n// Relayer types\nexport type {\n RelayerStorageResponse,\n RelayerTransactionResponse,\n RelayerStoreParams,\n RelayerSubmitParams,\n RelayerStatus,\n RelayerConfig,\n UnifiedRelayerRequest,\n UnifiedRelayerResponse,\n SignedRelayerRequest,\n DirectRelayerRequest,\n RelayerRequestOptions,\n RelayerErrorResponse,\n RelayerQueueInfo,\n RelayerTransactionStatus,\n RelayerMetrics,\n RelayerWebhookConfig,\n RelayerWebhookPayload,\n} from \"./relayer\";\n\n// Utility types\nexport type {\n PartialExcept,\n RequiredExcept,\n Awaited,\n MaybePromise,\n MaybeArray,\n PaginationParams,\n PaginationResult,\n BlockRange,\n ApiResponse,\n CacheConfig,\n ValidationResult,\n StatusInfo,\n RateLimitInfo,\n UploadProgress,\n NetworkInfo,\n GasEstimate,\n TimeRange,\n} from \"./utils\";\n\n// Operation store types\nexport type {\n IOperationStore,\n StoredOperation,\n IRelayerStateStore,\n OperationState,\n} from \"./operationStore\";\n\n// Options types\nexport type {\n ConsistencyOptions,\n DataSource,\n PaginationOptions,\n ListOptions,\n WriteOptions,\n LegacyTransactionOptions,\n} from \"./options\";\n\n// Generic types for extensibility\nexport type {\n GenericRequest,\n GenericResponse,\n AsyncResult,\n ContractCall,\n EventFilter,\n EventLog,\n ControllerContext,\n Controller,\n Cache,\n RetryConfig,\n RateLimiterConfig,\n Middleware,\n Plugin,\n Factory,\n Repository,\n Validator,\n Transformer,\n Service,\n Observer,\n Observable,\n StateMachine,\n ConditionalOptional,\n PromiseResult,\n AllKeys,\n DeepPartial,\n DeepReadonly,\n RequireKeys,\n OptionalKeys,\n NonNullable,\n PickByType,\n OmitByType,\n Brand,\n Nominal,\n} from \"./generics\";\n\n// Re-export viem types that are commonly used\nexport type {\n Address,\n Hash,\n Abi,\n Chain,\n WalletClient,\n PublicClient,\n Account,\n GetContractReturnType,\n} from \"viem\";\n"],"mappings":"AAmDA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAKP,SAAS,eAAe,mBAAmB;AAyB3C,SAAS,oBAAoB;AAsD7B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAyFP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;","names":[]}
1
+ {"version":3,"sources":["../../src/types/index.ts"],"sourcesContent":["/**\n * Centralized type exports for the Vana SDK.\n *\n * @remarks\n * This module re-exports all public types from their respective modules,\n * providing a single import point for SDK consumers.\n *\n * @category Types\n * @module types\n */\n\n// Chain types\nexport type { VanaChainId, VanaChain } from \"./chains\";\nexport { isVanaChainId, isVanaChain } from \"./chains\";\n\n// Contract types\nexport type {\n VanaContractName,\n ContractInfo,\n ContractDeployment,\n VanaContractInstance,\n ContractAddresses,\n ContractMethodParams,\n ContractMethodReturnType,\n} from \"./contracts\";\n\n// Storage types\nexport type {\n StorageProvider,\n StorageUploadResult,\n StorageFile,\n StorageListOptions,\n StorageProviderConfig,\n} from \"./storage\";\n\nexport { StorageError } from \"./storage\";\n\n// Storage callback types\nexport type {\n StorageCallbacks,\n StorageDownloadOptions,\n StorageListResult,\n} from \"./config\";\n\n// Re-export viem types that are commonly used\nexport type {\n Address,\n Hash,\n Abi,\n Chain,\n WalletClient,\n PublicClient,\n Account,\n GetContractReturnType,\n} from \"viem\";\n"],"mappings":"AAaA,SAAS,eAAe,mBAAmB;AAsB3C,SAAS,oBAAoB;","names":[]}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var ps_errors_exports = {};
20
+ __export(ps_errors_exports, {
21
+ PSError: () => PSError,
22
+ parsePSError: () => parsePSError
23
+ });
24
+ module.exports = __toCommonJS(ps_errors_exports);
25
+ class PSError extends Error {
26
+ constructor(code, message) {
27
+ super(message);
28
+ this.code = code;
29
+ this.name = "PSError";
30
+ }
31
+ code;
32
+ }
33
+ const KNOWN_CODES = /* @__PURE__ */ new Set([
34
+ "grant_invalid",
35
+ "grant_revoked",
36
+ "fee_required",
37
+ "ps_unavailable"
38
+ ]);
39
+ async function parsePSError(response) {
40
+ if (response.ok) {
41
+ return null;
42
+ }
43
+ let body;
44
+ try {
45
+ body = await response.json();
46
+ } catch {
47
+ return null;
48
+ }
49
+ if (typeof body !== "object" || body === null) {
50
+ return null;
51
+ }
52
+ const { code, message } = body;
53
+ if (typeof code !== "string" || typeof message !== "string") {
54
+ return null;
55
+ }
56
+ if (!KNOWN_CODES.has(code)) {
57
+ return null;
58
+ }
59
+ return new PSError(code, message);
60
+ }
61
+ // Annotate the CommonJS export names for ESM import in node:
62
+ 0 && (module.exports = {
63
+ PSError,
64
+ parsePSError
65
+ });
66
+ //# sourceMappingURL=ps-errors.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/types/ps-errors.ts"],"sourcesContent":["/**\n * Typed errors returned by Personal Server endpoints.\n *\n * @remarks\n * Ported from the e2e POC sequence diagram — vana-connect (and other PS\n * clients) need to branch on a small, stable set of error codes. The PS\n * itself returns `{ code, message }` JSON on non-2xx responses.\n *\n * @category Auth\n */\n\n/** Stable error codes returned by Personal Server. */\nexport type PSErrorCode =\n | \"grant_invalid\"\n | \"grant_revoked\"\n | \"fee_required\"\n | \"ps_unavailable\";\n\n/** Typed error wrapping a non-2xx Personal Server response. */\nexport class PSError extends Error {\n constructor(\n public readonly code: PSErrorCode,\n message: string,\n ) {\n super(message);\n this.name = \"PSError\";\n }\n}\n\nconst KNOWN_CODES: ReadonlySet<PSErrorCode> = new Set<PSErrorCode>([\n \"grant_invalid\",\n \"grant_revoked\",\n \"fee_required\",\n \"ps_unavailable\",\n]);\n\n/**\n * Read a `{code, message}` JSON body from a non-2xx {@link Response} and\n * return the typed {@link PSError}.\n *\n * @returns A {@link PSError} for non-2xx responses with a recognised code,\n * or `null` for 2xx responses, malformed JSON, or unrecognised codes.\n */\nexport async function parsePSError(\n response: Response,\n): Promise<PSError | null> {\n if (response.ok) {\n return null;\n }\n\n let body: unknown;\n try {\n body = await response.json();\n } catch {\n return null;\n }\n\n if (typeof body !== \"object\" || body === null) {\n return null;\n }\n\n const { code, message } = body as { code?: unknown; message?: unknown };\n if (typeof code !== \"string\" || typeof message !== \"string\") {\n return null;\n }\n\n if (!KNOWN_CODES.has(code as PSErrorCode)) {\n return null;\n }\n\n return new PSError(code as PSErrorCode, message);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmBO,MAAM,gBAAgB,MAAM;AAAA,EACjC,YACkB,MAChB,SACA;AACA,UAAM,OAAO;AAHG;AAIhB,SAAK,OAAO;AAAA,EACd;AAAA,EALkB;AAMpB;AAEA,MAAM,cAAwC,oBAAI,IAAiB;AAAA,EACjE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AASD,eAAsB,aACpB,UACyB;AACzB,MAAI,SAAS,IAAI;AACf,WAAO;AAAA,EACT;AAEA,MAAI;AACJ,MAAI;AACF,WAAO,MAAM,SAAS,KAAK;AAAA,EAC7B,QAAQ;AACN,WAAO;AAAA,EACT;AAEA,MAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,MAAM,QAAQ,IAAI;AAC1B,MAAI,OAAO,SAAS,YAAY,OAAO,YAAY,UAAU;AAC3D,WAAO;AAAA,EACT;AAEA,MAAI,CAAC,YAAY,IAAI,IAAmB,GAAG;AACzC,WAAO;AAAA,EACT;AAEA,SAAO,IAAI,QAAQ,MAAqB,OAAO;AACjD;","names":[]}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Typed errors returned by Personal Server endpoints.
3
+ *
4
+ * @remarks
5
+ * Ported from the e2e POC sequence diagram — vana-connect (and other PS
6
+ * clients) need to branch on a small, stable set of error codes. The PS
7
+ * itself returns `{ code, message }` JSON on non-2xx responses.
8
+ *
9
+ * @category Auth
10
+ */
11
+ /** Stable error codes returned by Personal Server. */
12
+ export type PSErrorCode = "grant_invalid" | "grant_revoked" | "fee_required" | "ps_unavailable";
13
+ /** Typed error wrapping a non-2xx Personal Server response. */
14
+ export declare class PSError extends Error {
15
+ readonly code: PSErrorCode;
16
+ constructor(code: PSErrorCode, message: string);
17
+ }
18
+ /**
19
+ * Read a `{code, message}` JSON body from a non-2xx {@link Response} and
20
+ * return the typed {@link PSError}.
21
+ *
22
+ * @returns A {@link PSError} for non-2xx responses with a recognised code,
23
+ * or `null` for 2xx responses, malformed JSON, or unrecognised codes.
24
+ */
25
+ export declare function parsePSError(response: Response): Promise<PSError | null>;
@@ -0,0 +1,41 @@
1
+ class PSError extends Error {
2
+ constructor(code, message) {
3
+ super(message);
4
+ this.code = code;
5
+ this.name = "PSError";
6
+ }
7
+ code;
8
+ }
9
+ const KNOWN_CODES = /* @__PURE__ */ new Set([
10
+ "grant_invalid",
11
+ "grant_revoked",
12
+ "fee_required",
13
+ "ps_unavailable"
14
+ ]);
15
+ async function parsePSError(response) {
16
+ if (response.ok) {
17
+ return null;
18
+ }
19
+ let body;
20
+ try {
21
+ body = await response.json();
22
+ } catch {
23
+ return null;
24
+ }
25
+ if (typeof body !== "object" || body === null) {
26
+ return null;
27
+ }
28
+ const { code, message } = body;
29
+ if (typeof code !== "string" || typeof message !== "string") {
30
+ return null;
31
+ }
32
+ if (!KNOWN_CODES.has(code)) {
33
+ return null;
34
+ }
35
+ return new PSError(code, message);
36
+ }
37
+ export {
38
+ PSError,
39
+ parsePSError
40
+ };
41
+ //# sourceMappingURL=ps-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/types/ps-errors.ts"],"sourcesContent":["/**\n * Typed errors returned by Personal Server endpoints.\n *\n * @remarks\n * Ported from the e2e POC sequence diagram — vana-connect (and other PS\n * clients) need to branch on a small, stable set of error codes. The PS\n * itself returns `{ code, message }` JSON on non-2xx responses.\n *\n * @category Auth\n */\n\n/** Stable error codes returned by Personal Server. */\nexport type PSErrorCode =\n | \"grant_invalid\"\n | \"grant_revoked\"\n | \"fee_required\"\n | \"ps_unavailable\";\n\n/** Typed error wrapping a non-2xx Personal Server response. */\nexport class PSError extends Error {\n constructor(\n public readonly code: PSErrorCode,\n message: string,\n ) {\n super(message);\n this.name = \"PSError\";\n }\n}\n\nconst KNOWN_CODES: ReadonlySet<PSErrorCode> = new Set<PSErrorCode>([\n \"grant_invalid\",\n \"grant_revoked\",\n \"fee_required\",\n \"ps_unavailable\",\n]);\n\n/**\n * Read a `{code, message}` JSON body from a non-2xx {@link Response} and\n * return the typed {@link PSError}.\n *\n * @returns A {@link PSError} for non-2xx responses with a recognised code,\n * or `null` for 2xx responses, malformed JSON, or unrecognised codes.\n */\nexport async function parsePSError(\n response: Response,\n): Promise<PSError | null> {\n if (response.ok) {\n return null;\n }\n\n let body: unknown;\n try {\n body = await response.json();\n } catch {\n return null;\n }\n\n if (typeof body !== \"object\" || body === null) {\n return null;\n }\n\n const { code, message } = body as { code?: unknown; message?: unknown };\n if (typeof code !== \"string\" || typeof message !== \"string\") {\n return null;\n }\n\n if (!KNOWN_CODES.has(code as PSErrorCode)) {\n return null;\n }\n\n return new PSError(code as PSErrorCode, message);\n}\n"],"mappings":"AAmBO,MAAM,gBAAgB,MAAM;AAAA,EACjC,YACkB,MAChB,SACA;AACA,UAAM,OAAO;AAHG;AAIhB,SAAK,OAAO;AAAA,EACd;AAAA,EALkB;AAMpB;AAEA,MAAM,cAAwC,oBAAI,IAAiB;AAAA,EACjE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AASD,eAAsB,aACpB,UACyB;AACzB,MAAI,SAAS,IAAI;AACf,WAAO;AAAA,EACT;AAEA,MAAI;AACJ,MAAI;AACF,WAAO,MAAM,SAAS,KAAK;AAAA,EAC7B,QAAQ;AACN,WAAO;AAAA,EACT;AAEA,MAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,MAAM,QAAQ,IAAI;AAC1B,MAAI,OAAO,SAAS,YAAY,OAAO,YAAY,UAAU;AAC3D,WAAO;AAAA,EACT;AAEA,MAAI,CAAC,YAAY,IAAI,IAAmB,GAAG;AACzC,WAAO;AAAA,EACT;AAEA,SAAO,IAAI,QAAQ,MAAqB,OAAO;AACjD;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/types.ts"],"sourcesContent":["// Re-export all types from the new modular structure\nexport * from \"./types/index\";\n\n// Also re-export legacy types for backward compatibility\n// These were previously defined in this file and are now in the types module\nimport type { Address } from \"viem\";\n\n/**\n * Represents a user's registered data file.\n */\nexport interface UserFile {\n /** Unique identifier for the file */\n id: number;\n /** URL where the file is stored */\n url: string;\n /** EVM address of the file owner */\n ownerAddress: Address;\n /** Block number when the file was added to the registry */\n addedAtBlock: bigint;\n}\n\n/**\n * Parameters for the `vana.permissions.grant` method.\n */\nexport interface GrantPermissionParams {\n /** The on-chain identity of the application */\n grantee: Address;\n /** The class of computation, e.g., \"llm_inference\" */\n operation: string;\n /** Array of file IDs to grant permission for */\n files: number[];\n /** The full, off-chain parameters (e.g., LLM prompt) */\n parameters: Record<string, unknown>;\n /** Optional pre-stored grant URL to avoid duplicate IPFS storage */\n grantUrl?: string;\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AACA,0BAAc,0BADd;","names":[]}
1
+ {"version":3,"sources":["../src/types.ts"],"sourcesContent":["// Re-export all types from the modular structure\nexport * from \"./types/index\";\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AACA,0BAAc,0BADd;","names":[]}
package/dist/types.d.ts CHANGED
@@ -1,30 +1 @@
1
1
  export * from "./types/index";
2
- import type { Address } from "viem";
3
- /**
4
- * Represents a user's registered data file.
5
- */
6
- export interface UserFile {
7
- /** Unique identifier for the file */
8
- id: number;
9
- /** URL where the file is stored */
10
- url: string;
11
- /** EVM address of the file owner */
12
- ownerAddress: Address;
13
- /** Block number when the file was added to the registry */
14
- addedAtBlock: bigint;
15
- }
16
- /**
17
- * Parameters for the `vana.permissions.grant` method.
18
- */
19
- export interface GrantPermissionParams {
20
- /** The on-chain identity of the application */
21
- grantee: Address;
22
- /** The class of computation, e.g., "llm_inference" */
23
- operation: string;
24
- /** Array of file IDs to grant permission for */
25
- files: number[];
26
- /** The full, off-chain parameters (e.g., LLM prompt) */
27
- parameters: Record<string, unknown>;
28
- /** Optional pre-stored grant URL to avoid duplicate IPFS storage */
29
- grantUrl?: string;
30
- }
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/types.ts"],"sourcesContent":["// Re-export all types from the new modular structure\nexport * from \"./types/index\";\n\n// Also re-export legacy types for backward compatibility\n// These were previously defined in this file and are now in the types module\nimport type { Address } from \"viem\";\n\n/**\n * Represents a user's registered data file.\n */\nexport interface UserFile {\n /** Unique identifier for the file */\n id: number;\n /** URL where the file is stored */\n url: string;\n /** EVM address of the file owner */\n ownerAddress: Address;\n /** Block number when the file was added to the registry */\n addedAtBlock: bigint;\n}\n\n/**\n * Parameters for the `vana.permissions.grant` method.\n */\nexport interface GrantPermissionParams {\n /** The on-chain identity of the application */\n grantee: Address;\n /** The class of computation, e.g., \"llm_inference\" */\n operation: string;\n /** Array of file IDs to grant permission for */\n files: number[];\n /** The full, off-chain parameters (e.g., LLM prompt) */\n parameters: Record<string, unknown>;\n /** Optional pre-stored grant URL to avoid duplicate IPFS storage */\n grantUrl?: string;\n}\n"],"mappings":"AACA,cAAc;","names":[]}
1
+ {"version":3,"sources":["../src/types.ts"],"sourcesContent":["// Re-export all types from the modular structure\nexport * from \"./types/index\";\n"],"mappings":"AACA,cAAc;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opendatalabs/vana-sdk",
3
- "version": "2.2.3",
3
+ "version": "3.0.0",
4
4
  "description": "A TypeScript library for interacting with Vana Network smart contracts.",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -82,11 +82,12 @@
82
82
  "clean": "rimraf dist .tsbuildinfo",
83
83
  "validate:platform": "tsx scripts/validate-platform-separation.ts",
84
84
  "validate:entries": "tsx scripts/validate-entry-points.ts",
85
- "prebuild": "npm run generate:types:check && npm run validate:platform && npm run validate:entries && npm run validate:types",
85
+ "prebuild": "npm run validate:platform && npm run validate:entries && npm run validate:types",
86
86
  "build:types": "tsc -p tsconfig.build.json --listEmittedFiles",
87
87
  "build:node": "tsup --config tsup.config.ts",
88
88
  "build:browser": "tsup --config tsup-browser.config.ts",
89
- "build": "npm run clean && npm run build:types && npm run build:node && npm run build:browser",
89
+ "build:entries": "tsx scripts/bundle-entry-points.ts",
90
+ "build": "npm run clean && npm run build:types && npm run build:node && npm run build:browser && npm run build:entries",
90
91
  "dev": "npm run build -- --watch",
91
92
  "lint": "eslint .",
92
93
  "lint:fix": "eslint . --fix",
@@ -98,13 +99,7 @@
98
99
  "test:coverage:verbose": "vitest run --coverage --reporter=verbose --coverage.reporter=text",
99
100
  "discover-addresses": "tsx scripts/discover-addresses.ts",
100
101
  "fetch-abis": "tsx scripts/fetch-abis.ts",
101
- "generate:types": "tsx scripts/generate-types.ts",
102
- "generate:types:check": "tsx scripts/generate-types.ts --check",
103
- "generate": "npm run discover-addresses && npm run fetch-abis && npm run generate:types",
104
- "fetch-server-types": "tsx scripts/fetch-server-types.ts",
105
- "codegen:subgraph": "graphql-codegen --config codegen.ts",
106
- "codegen:subgraph:moksha": "VANA_CODEGEN_NETWORK=moksha graphql-codegen --config codegen.ts",
107
- "codegen:subgraph:mainnet": "VANA_CODEGEN_NETWORK=mainnet graphql-codegen --config codegen.ts"
102
+ "generate": "npm run discover-addresses && npm run fetch-abis"
108
103
  },
109
104
  "keywords": [
110
105
  "vana",
@@ -118,38 +113,25 @@
118
113
  "@noble/hashes": "^1.8.0",
119
114
  "@noble/secp256k1": "^2.3.0",
120
115
  "abitype": "^1.0.9",
121
- "ajv": "^8.17.1",
122
- "ajv-formats": "^3.0.1",
123
- "graphql": "^16.11.0",
124
116
  "openpgp": "^6.1.1",
125
- "uuid": "^13.0.0",
126
- "viem": "^2.35.1"
117
+ "viem": "^2.35.1",
118
+ "zod": "^4.1.12"
127
119
  },
128
120
  "devDependencies": {
129
- "@graphql-codegen/cli": "^5.0.7",
130
- "@graphql-codegen/typed-document-node": "^5.1.2",
131
- "@graphql-codegen/typescript": "^4.1.6",
132
- "@graphql-codegen/typescript-operations": "^4.6.1",
133
121
  "@types/node": "^24.3.0",
134
122
  "@types/secp256k1": "^4.0.6",
135
- "@types/uuid": "^10.0.0",
136
123
  "@typescript-eslint/eslint-plugin": "^8.41.0",
137
124
  "@typescript-eslint/parser": "^8.41.0",
138
125
  "@vitest/coverage-v8": "^3.2.4",
139
- "bundle-require": "^5.1.0",
140
- "consola": "^3.4.0",
141
126
  "eslint": "^9.34.0",
142
127
  "eslint-config-prettier": "^10.1.5",
143
128
  "eslint-plugin-import": "^2.32.0",
144
129
  "eslint-plugin-prettier": "^5.4.0",
145
130
  "eslint-plugin-tsdoc": "^0.4.0",
146
131
  "eslint-plugin-unused-imports": "^4.2.0",
147
- "fix-dts-default-cjs-exports": "^1.0.1",
148
132
  "globals": "^16.3.0",
149
- "openapi-typescript": "^7.8.0",
150
133
  "prettier": "^3.5.3",
151
134
  "rimraf": "^6.0.1",
152
- "tree-kill": "^1.2.2",
153
135
  "tsup": "^8.5.0",
154
136
  "tsx": "^4.20.5",
155
137
  "typescript": "^5.8.3",