@opendatalabs/vana-sdk 2.3.0 → 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 (618) 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/index.cjs +2 -37
  62. package/dist/generated/abi/index.cjs.map +1 -1
  63. package/dist/generated/abi/index.d.ts +2683 -9296
  64. package/dist/generated/abi/index.js +2 -29
  65. package/dist/generated/abi/index.js.map +1 -1
  66. package/dist/generated/addresses.cjs +5 -107
  67. package/dist/generated/addresses.cjs.map +1 -1
  68. package/dist/generated/addresses.d.ts +5 -99
  69. package/dist/generated/addresses.js +5 -105
  70. package/dist/generated/addresses.js.map +1 -1
  71. package/dist/index.browser.d.ts +23 -140
  72. package/dist/index.browser.js +32090 -114
  73. package/dist/index.browser.js.map +7 -1
  74. package/dist/index.node.cjs +32809 -160
  75. package/dist/index.node.cjs.map +7 -1
  76. package/dist/index.node.d.ts +22 -210
  77. package/dist/index.node.js +32716 -133
  78. package/dist/index.node.js.map +7 -1
  79. package/dist/protocol/data-file.cjs +56 -0
  80. package/dist/protocol/data-file.cjs.map +1 -0
  81. package/dist/protocol/data-file.d.ts +20 -0
  82. package/dist/protocol/data-file.js +30 -0
  83. package/dist/protocol/data-file.js.map +1 -0
  84. package/dist/protocol/eip712.cjs +123 -0
  85. package/dist/protocol/eip712.cjs.map +1 -0
  86. package/dist/protocol/eip712.d.ts +117 -0
  87. package/dist/protocol/eip712.js +90 -0
  88. package/dist/protocol/eip712.js.map +1 -0
  89. package/dist/protocol/gateway.cjs +226 -0
  90. package/dist/protocol/gateway.cjs.map +1 -0
  91. package/dist/protocol/gateway.d.ts +120 -0
  92. package/dist/protocol/gateway.js +202 -0
  93. package/dist/protocol/gateway.js.map +1 -0
  94. package/dist/protocol/scopes.cjs +78 -0
  95. package/dist/protocol/scopes.cjs.map +1 -0
  96. package/dist/protocol/scopes.d.ts +13 -0
  97. package/dist/protocol/scopes.js +50 -0
  98. package/dist/protocol/scopes.js.map +1 -0
  99. package/dist/{types/atomicStore.cjs → storage/default.cjs} +9 -8
  100. package/dist/storage/default.cjs.map +1 -0
  101. package/dist/storage/default.d.ts +4 -0
  102. package/dist/storage/default.js +8 -0
  103. package/dist/storage/default.js.map +1 -0
  104. package/dist/storage/index.cjs +11 -2
  105. package/dist/storage/index.cjs.map +1 -1
  106. package/dist/storage/index.d.ts +9 -0
  107. package/dist/storage/index.js +7 -1
  108. package/dist/storage/index.js.map +1 -1
  109. package/dist/storage/providers/callback-storage.cjs +1 -0
  110. package/dist/storage/providers/callback-storage.cjs.map +1 -1
  111. package/dist/storage/providers/callback-storage.js +1 -0
  112. package/dist/storage/providers/callback-storage.js.map +1 -1
  113. package/dist/storage/providers/dropbox.cjs +1 -0
  114. package/dist/storage/providers/dropbox.cjs.map +1 -1
  115. package/dist/storage/providers/dropbox.js +1 -0
  116. package/dist/storage/providers/dropbox.js.map +1 -1
  117. package/dist/storage/providers/google-drive.cjs +1 -0
  118. package/dist/storage/providers/google-drive.cjs.map +1 -1
  119. package/dist/storage/providers/google-drive.js +1 -0
  120. package/dist/storage/providers/google-drive.js.map +1 -1
  121. package/dist/storage/providers/ipfs.cjs +1 -0
  122. package/dist/storage/providers/ipfs.cjs.map +1 -1
  123. package/dist/storage/providers/ipfs.js +1 -0
  124. package/dist/storage/providers/ipfs.js.map +1 -1
  125. package/dist/storage/providers/pinata.cjs +1 -0
  126. package/dist/storage/providers/pinata.cjs.map +1 -1
  127. package/dist/storage/providers/pinata.js +1 -0
  128. package/dist/storage/providers/pinata.js.map +1 -1
  129. package/dist/storage/providers/r2.cjs +376 -0
  130. package/dist/storage/providers/r2.cjs.map +1 -0
  131. package/dist/storage/providers/r2.d.ts +91 -0
  132. package/dist/storage/providers/r2.js +354 -0
  133. package/dist/storage/providers/r2.js.map +1 -0
  134. package/dist/storage/providers/vana-storage.cjs +251 -0
  135. package/dist/storage/providers/vana-storage.cjs.map +1 -0
  136. package/dist/storage/providers/vana-storage.d.ts +100 -0
  137. package/dist/storage/providers/vana-storage.js +231 -0
  138. package/dist/storage/providers/vana-storage.js.map +1 -0
  139. package/dist/types/config.cjs +0 -34
  140. package/dist/types/config.cjs.map +1 -1
  141. package/dist/types/config.d.ts +1 -607
  142. package/dist/types/config.js +0 -22
  143. package/dist/types/config.js.map +1 -1
  144. package/dist/types/contracts.cjs.map +1 -1
  145. package/dist/types/contracts.d.ts +1 -1
  146. package/dist/types/index.cjs +2 -33
  147. package/dist/types/index.cjs.map +1 -1
  148. package/dist/types/index.d.ts +2 -33
  149. package/dist/types/index.js +1 -35
  150. package/dist/types/index.js.map +1 -1
  151. package/dist/types/ps-errors.cjs +66 -0
  152. package/dist/types/ps-errors.cjs.map +1 -0
  153. package/dist/types/ps-errors.d.ts +25 -0
  154. package/dist/types/ps-errors.js +41 -0
  155. package/dist/types/ps-errors.js.map +1 -0
  156. package/dist/types.cjs.map +1 -1
  157. package/dist/types.d.ts +0 -29
  158. package/dist/types.js.map +1 -1
  159. package/package.json +7 -25
  160. package/dist/client/enhancedResponse.cjs +0 -164
  161. package/dist/client/enhancedResponse.cjs.map +0 -1
  162. package/dist/client/enhancedResponse.d.ts +0 -120
  163. package/dist/client/enhancedResponse.js +0 -138
  164. package/dist/client/enhancedResponse.js.map +0 -1
  165. package/dist/controllers/__tests__/data-consistency-integration.test.d.ts +0 -7
  166. package/dist/controllers/base.cjs +0 -116
  167. package/dist/controllers/base.cjs.map +0 -1
  168. package/dist/controllers/base.d.ts +0 -94
  169. package/dist/controllers/base.js +0 -92
  170. package/dist/controllers/base.js.map +0 -1
  171. package/dist/controllers/data.cjs +0 -2633
  172. package/dist/controllers/data.cjs.map +0 -1
  173. package/dist/controllers/data.d.ts +0 -1067
  174. package/dist/controllers/data.js +0 -2626
  175. package/dist/controllers/data.js.map +0 -1
  176. package/dist/controllers/operations.cjs +0 -430
  177. package/dist/controllers/operations.cjs.map +0 -1
  178. package/dist/controllers/operations.d.ts +0 -229
  179. package/dist/controllers/operations.js +0 -406
  180. package/dist/controllers/operations.js.map +0 -1
  181. package/dist/controllers/permissions.cjs +0 -4368
  182. package/dist/controllers/permissions.cjs.map +0 -1
  183. package/dist/controllers/permissions.d.ts +0 -1411
  184. package/dist/controllers/permissions.js +0 -4344
  185. package/dist/controllers/permissions.js.map +0 -1
  186. package/dist/controllers/protocol.cjs +0 -183
  187. package/dist/controllers/protocol.cjs.map +0 -1
  188. package/dist/controllers/protocol.d.ts +0 -138
  189. package/dist/controllers/protocol.js +0 -163
  190. package/dist/controllers/protocol.js.map +0 -1
  191. package/dist/controllers/schemas.cjs +0 -678
  192. package/dist/controllers/schemas.cjs.map +0 -1
  193. package/dist/controllers/schemas.d.ts +0 -293
  194. package/dist/controllers/schemas.js +0 -654
  195. package/dist/controllers/schemas.js.map +0 -1
  196. package/dist/controllers/server.cjs +0 -643
  197. package/dist/controllers/server.cjs.map +0 -1
  198. package/dist/controllers/server.d.ts +0 -322
  199. package/dist/controllers/server.js +0 -624
  200. package/dist/controllers/server.js.map +0 -1
  201. package/dist/controllers/staking.cjs +0 -626
  202. package/dist/controllers/staking.cjs.map +0 -1
  203. package/dist/controllers/staking.d.ts +0 -457
  204. package/dist/controllers/staking.js +0 -602
  205. package/dist/controllers/staking.js.map +0 -1
  206. package/dist/core/__tests__/pollingManager.test.d.ts +0 -4
  207. package/dist/core/apiClient.cjs +0 -378
  208. package/dist/core/apiClient.cjs.map +0 -1
  209. package/dist/core/apiClient.d.ts +0 -286
  210. package/dist/core/apiClient.js +0 -359
  211. package/dist/core/apiClient.js.map +0 -1
  212. package/dist/core/generics.cjs +0 -417
  213. package/dist/core/generics.cjs.map +0 -1
  214. package/dist/core/generics.d.ts +0 -205
  215. package/dist/core/generics.js +0 -386
  216. package/dist/core/generics.js.map +0 -1
  217. package/dist/core/health.cjs +0 -289
  218. package/dist/core/health.cjs.map +0 -1
  219. package/dist/core/health.d.ts +0 -143
  220. package/dist/core/health.js +0 -265
  221. package/dist/core/health.js.map +0 -1
  222. package/dist/core/inMemoryNonceManager.cjs +0 -138
  223. package/dist/core/inMemoryNonceManager.cjs.map +0 -1
  224. package/dist/core/inMemoryNonceManager.d.ts +0 -69
  225. package/dist/core/inMemoryNonceManager.js +0 -114
  226. package/dist/core/inMemoryNonceManager.js.map +0 -1
  227. package/dist/core/nonceManager.cjs +0 -304
  228. package/dist/core/nonceManager.cjs.map +0 -1
  229. package/dist/core/nonceManager.d.ts +0 -116
  230. package/dist/core/nonceManager.js +0 -280
  231. package/dist/core/nonceManager.js.map +0 -1
  232. package/dist/core/pollingManager.cjs +0 -292
  233. package/dist/core/pollingManager.cjs.map +0 -1
  234. package/dist/core/pollingManager.d.ts +0 -120
  235. package/dist/core/pollingManager.js +0 -268
  236. package/dist/core/pollingManager.js.map +0 -1
  237. package/dist/core.cjs +0 -781
  238. package/dist/core.cjs.map +0 -1
  239. package/dist/core.d.ts +0 -496
  240. package/dist/core.js +0 -756
  241. package/dist/core.js.map +0 -1
  242. package/dist/diagnostics.cjs +0 -37
  243. package/dist/diagnostics.cjs.map +0 -1
  244. package/dist/diagnostics.d.ts +0 -24
  245. package/dist/diagnostics.js +0 -13
  246. package/dist/diagnostics.js.map +0 -1
  247. package/dist/diagnostics.test.d.ts +0 -1
  248. package/dist/generated/abi/DLPPerformanceImplementation.cjs +0 -1202
  249. package/dist/generated/abi/DLPPerformanceImplementation.cjs.map +0 -1
  250. package/dist/generated/abi/DLPPerformanceImplementation.d.ts +0 -914
  251. package/dist/generated/abi/DLPPerformanceImplementation.js +0 -1178
  252. package/dist/generated/abi/DLPPerformanceImplementation.js.map +0 -1
  253. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs +0 -1112
  254. package/dist/generated/abi/DLPRewardDeployerImplementation.cjs.map +0 -1
  255. package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +0 -840
  256. package/dist/generated/abi/DLPRewardDeployerImplementation.js +0 -1088
  257. package/dist/generated/abi/DLPRewardDeployerImplementation.js.map +0 -1
  258. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs +0 -612
  259. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.cjs.map +0 -1
  260. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.ts +0 -451
  261. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js +0 -588
  262. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.js.map +0 -1
  263. package/dist/generated/abi/DLPRewardSwapImplementation.cjs +0 -939
  264. package/dist/generated/abi/DLPRewardSwapImplementation.cjs.map +0 -1
  265. package/dist/generated/abi/DLPRewardSwapImplementation.d.ts +0 -705
  266. package/dist/generated/abi/DLPRewardSwapImplementation.js +0 -915
  267. package/dist/generated/abi/DLPRewardSwapImplementation.js.map +0 -1
  268. package/dist/generated/abi/DLPRootImplementation.cjs +0 -1644
  269. package/dist/generated/abi/DLPRootImplementation.cjs.map +0 -1
  270. package/dist/generated/abi/DLPRootImplementation.d.ts +0 -1246
  271. package/dist/generated/abi/DLPRootImplementation.js +0 -1620
  272. package/dist/generated/abi/DLPRootImplementation.js.map +0 -1
  273. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs +0 -985
  274. package/dist/generated/abi/DataLiquidityPoolImplementation.cjs.map +0 -1
  275. package/dist/generated/abi/DataLiquidityPoolImplementation.d.ts +0 -735
  276. package/dist/generated/abi/DataLiquidityPoolImplementation.js +0 -961
  277. package/dist/generated/abi/DataLiquidityPoolImplementation.js.map +0 -1
  278. package/dist/generated/abi/SwapHelperImplementation.cjs +0 -976
  279. package/dist/generated/abi/SwapHelperImplementation.cjs.map +0 -1
  280. package/dist/generated/abi/SwapHelperImplementation.d.ts +0 -728
  281. package/dist/generated/abi/SwapHelperImplementation.js +0 -952
  282. package/dist/generated/abi/SwapHelperImplementation.js.map +0 -1
  283. package/dist/generated/abi/TeePoolImplementation.cjs +0 -1313
  284. package/dist/generated/abi/TeePoolImplementation.cjs.map +0 -1
  285. package/dist/generated/abi/TeePoolImplementation.d.ts +0 -992
  286. package/dist/generated/abi/TeePoolImplementation.js +0 -1289
  287. package/dist/generated/abi/TeePoolImplementation.js.map +0 -1
  288. package/dist/generated/event-types.cjs +0 -17
  289. package/dist/generated/event-types.cjs.map +0 -1
  290. package/dist/generated/event-types.d.ts +0 -816
  291. package/dist/generated/event-types.js +0 -1
  292. package/dist/generated/event-types.js.map +0 -1
  293. package/dist/generated/eventRegistry.cjs +0 -4512
  294. package/dist/generated/eventRegistry.cjs.map +0 -1
  295. package/dist/generated/eventRegistry.d.ts +0 -14
  296. package/dist/generated/eventRegistry.js +0 -4487
  297. package/dist/generated/eventRegistry.js.map +0 -1
  298. package/dist/generated/server/server-exports.cjs +0 -45
  299. package/dist/generated/server/server-exports.cjs.map +0 -1
  300. package/dist/generated/server/server-exports.d.ts +0 -36
  301. package/dist/generated/server/server-exports.js +0 -19
  302. package/dist/generated/server/server-exports.js.map +0 -1
  303. package/dist/generated/server/server.cjs +0 -17
  304. package/dist/generated/server/server.cjs.map +0 -1
  305. package/dist/generated/server/server.d.ts +0 -907
  306. package/dist/generated/server/server.js +0 -1
  307. package/dist/generated/server/server.js.map +0 -1
  308. package/dist/generated/subgraph.cjs +0 -1440
  309. package/dist/generated/subgraph.cjs.map +0 -1
  310. package/dist/generated/subgraph.d.ts +0 -6113
  311. package/dist/generated/subgraph.js +0 -1404
  312. package/dist/generated/subgraph.js.map +0 -1
  313. package/dist/lib/__tests__/redisAtomicStore.test.d.ts +0 -1
  314. package/dist/lib/redisAtomicStore.cjs +0 -201
  315. package/dist/lib/redisAtomicStore.cjs.map +0 -1
  316. package/dist/lib/redisAtomicStore.d.ts +0 -120
  317. package/dist/lib/redisAtomicStore.js +0 -177
  318. package/dist/lib/redisAtomicStore.js.map +0 -1
  319. package/dist/server/relayerHandler.cjs +0 -452
  320. package/dist/server/relayerHandler.cjs.map +0 -1
  321. package/dist/server/relayerHandler.d.ts +0 -69
  322. package/dist/server/relayerHandler.js +0 -428
  323. package/dist/server/relayerHandler.js.map +0 -1
  324. package/dist/tests/abi.test.d.ts +0 -1
  325. package/dist/tests/chains-definitions.test.d.ts +0 -1
  326. package/dist/tests/core-encryption.test.d.ts +0 -1
  327. package/dist/tests/core-extended.test.d.ts +0 -1
  328. package/dist/tests/core-generics-coverage.test.d.ts +0 -1
  329. package/dist/tests/coverage-boost.test.d.ts +0 -1
  330. package/dist/tests/crypto-cross-platform-compatibility.test.d.ts +0 -1
  331. package/dist/tests/data-addfile-permissions-schema.test.d.ts +0 -1
  332. package/dist/tests/data-additional-methods.test.d.ts +0 -1
  333. package/dist/tests/data-controller-edge-cases.test.d.ts +0 -1
  334. package/dist/tests/data-ipfs-gateways.test.d.ts +0 -1
  335. package/dist/tests/data-relayer.test.d.ts +0 -1
  336. package/dist/tests/data-schema-validation.test.d.ts +0 -1
  337. package/dist/tests/data-simple-methods.test.d.ts +0 -1
  338. package/dist/tests/data-upload-owner-validation.test.d.ts +0 -1
  339. package/dist/tests/data.test.d.ts +0 -1
  340. package/dist/tests/demo-integration.test.d.ts +0 -1
  341. package/dist/tests/demo-trusted-server-integration.test.d.ts +0 -1
  342. package/dist/tests/download-relayer.test.d.ts +0 -1
  343. package/dist/tests/dual-mode-permissions.test.d.ts +0 -1
  344. package/dist/tests/dual-mode-trusted-servers.test.d.ts +0 -1
  345. package/dist/tests/encryption-correct-implementation.test.d.ts +0 -1
  346. package/dist/tests/encryption-coverage.test.d.ts +0 -1
  347. package/dist/tests/encryption-edge-cases.test.d.ts +0 -1
  348. package/dist/tests/encryption-utils-updated.test.d.ts +0 -1
  349. package/dist/tests/errors-coverage.test.d.ts +0 -1
  350. package/dist/tests/factories/mockFactory.d.ts +0 -316
  351. package/dist/tests/fakes/FakeStorageManager.d.ts +0 -200
  352. package/dist/tests/fakes/FakeStorageManager.test.d.ts +0 -1
  353. package/dist/tests/fakes/FakeWaitForTransactionEvents.d.ts +0 -170
  354. package/dist/tests/fakes/FakeWaitForTransactionEvents.test.d.ts +0 -1
  355. package/dist/tests/fakes/fake-pgp-port.d.ts +0 -13
  356. package/dist/tests/grantValidation-edge-cases.test.d.ts +0 -1
  357. package/dist/tests/grantValidation-unreachable-branch.test.d.ts +0 -1
  358. package/dist/tests/helper-methods.test.d.ts +0 -1
  359. package/dist/tests/helpers/typedMocks.d.ts +0 -64
  360. package/dist/tests/index-browser.test.d.ts +0 -1
  361. package/dist/tests/index-node.test.d.ts +0 -1
  362. package/dist/tests/index.test.d.ts +0 -1
  363. package/dist/tests/mocks/platformAdapter.d.ts +0 -12
  364. package/dist/tests/new-permissions-methods.test.d.ts +0 -1
  365. package/dist/tests/no-buffer-browser.test.d.ts +0 -1
  366. package/dist/tests/permissions-grantee.test.d.ts +0 -1
  367. package/dist/tests/permissions-revoke-relayer.test.d.ts +0 -1
  368. package/dist/tests/permissions-schema-validation.test.d.ts +0 -1
  369. package/dist/tests/permissions-server-files.test.d.ts +0 -1
  370. package/dist/tests/permissions-transaction-options.test.d.ts +0 -1
  371. package/dist/tests/permissions-trust-servers.test.d.ts +0 -1
  372. package/dist/tests/permissions.test.d.ts +0 -1
  373. package/dist/tests/personal.test.d.ts +0 -1
  374. package/dist/tests/platform-browser.test.d.ts +0 -1
  375. package/dist/tests/platform-crypto-expanded.test.d.ts +0 -1
  376. package/dist/tests/platform-crypto.test.d.ts +0 -1
  377. package/dist/tests/platform-index.test.d.ts +0 -1
  378. package/dist/tests/platform-node.test.d.ts +0 -1
  379. package/dist/tests/platform-shared-utils.test.d.ts +0 -1
  380. package/dist/tests/platform-updated.test.d.ts +0 -1
  381. package/dist/tests/protocol-additional-methods.test.d.ts +0 -1
  382. package/dist/tests/protocol.test.d.ts +0 -1
  383. package/dist/tests/read-only-mode.test.d.ts +0 -1
  384. package/dist/tests/relayer-integration.test.d.ts +0 -1
  385. package/dist/tests/relayer-unified.test.d.ts +0 -1
  386. package/dist/tests/schemas.test.d.ts +0 -1
  387. package/dist/tests/server-relayer-handler.test.d.ts +0 -1
  388. package/dist/tests/signatureFormatter.test.d.ts +0 -1
  389. package/dist/tests/staking.test.d.ts +0 -1
  390. package/dist/tests/trusted-server-queries.test.d.ts +0 -1
  391. package/dist/tests/typedDataConverter.test.d.ts +0 -1
  392. package/dist/tests/types-contracts.test.d.ts +0 -1
  393. package/dist/tests/types-data.test.d.ts +0 -1
  394. package/dist/tests/types-external-apis.test.d.ts +0 -1
  395. package/dist/tests/types-generics.test.d.ts +0 -1
  396. package/dist/tests/types-permissions.test.d.ts +0 -1
  397. package/dist/tests/types-upload-params.test.d.ts +0 -1
  398. package/dist/tests/types.test.d.ts +0 -1
  399. package/dist/tests/utils-formatters.test.d.ts +0 -1
  400. package/dist/tests/utils-grantFiles-edge-cases.test.d.ts +0 -1
  401. package/dist/tests/utils-grantFiles-validation.test.d.ts +0 -1
  402. package/dist/tests/utils-grantFiles.test.d.ts +0 -1
  403. package/dist/tests/utils-grantValidation-consolidated.test.d.ts +0 -1
  404. package/dist/tests/utils-grants.test.d.ts +0 -1
  405. package/dist/tests/utils-ipfs-additional.test.d.ts +0 -1
  406. package/dist/tests/utils-ipfs.test.d.ts +0 -4
  407. package/dist/tests/utils-schemaValidation.test.d.ts +0 -1
  408. package/dist/tests/vana.test.d.ts +0 -1
  409. package/dist/tests/wallet-crypto-compatibility.test.d.ts +0 -1
  410. package/dist/types/atomicStore.cjs.map +0 -1
  411. package/dist/types/atomicStore.d.ts +0 -236
  412. package/dist/types/atomicStore.js +0 -7
  413. package/dist/types/atomicStore.js.map +0 -1
  414. package/dist/types/blockchain.cjs +0 -17
  415. package/dist/types/blockchain.cjs.map +0 -1
  416. package/dist/types/blockchain.d.ts +0 -85
  417. package/dist/types/blockchain.js +0 -1
  418. package/dist/types/blockchain.js.map +0 -1
  419. package/dist/types/controller-context.cjs +0 -17
  420. package/dist/types/controller-context.cjs.map +0 -1
  421. package/dist/types/controller-context.d.ts +0 -68
  422. package/dist/types/controller-context.js +0 -1
  423. package/dist/types/controller-context.js.map +0 -1
  424. package/dist/types/data.cjs +0 -17
  425. package/dist/types/data.cjs.map +0 -1
  426. package/dist/types/data.d.ts +0 -763
  427. package/dist/types/data.js +0 -1
  428. package/dist/types/data.js.map +0 -1
  429. package/dist/types/external-apis.cjs +0 -61
  430. package/dist/types/external-apis.cjs.map +0 -1
  431. package/dist/types/external-apis.d.ts +0 -184
  432. package/dist/types/external-apis.js +0 -34
  433. package/dist/types/external-apis.js.map +0 -1
  434. package/dist/types/generics.cjs +0 -17
  435. package/dist/types/generics.cjs.map +0 -1
  436. package/dist/types/generics.d.ts +0 -518
  437. package/dist/types/generics.js +0 -1
  438. package/dist/types/generics.js.map +0 -1
  439. package/dist/types/operationStore.cjs +0 -17
  440. package/dist/types/operationStore.cjs.map +0 -1
  441. package/dist/types/operationStore.d.ts +0 -171
  442. package/dist/types/operationStore.js +0 -1
  443. package/dist/types/operationStore.js.map +0 -1
  444. package/dist/types/operations.cjs +0 -53
  445. package/dist/types/operations.cjs.map +0 -1
  446. package/dist/types/operations.d.ts +0 -204
  447. package/dist/types/operations.js +0 -26
  448. package/dist/types/operations.js.map +0 -1
  449. package/dist/types/options.cjs +0 -17
  450. package/dist/types/options.cjs.map +0 -1
  451. package/dist/types/options.d.ts +0 -308
  452. package/dist/types/options.js +0 -1
  453. package/dist/types/options.js.map +0 -1
  454. package/dist/types/permissions.cjs +0 -17
  455. package/dist/types/permissions.cjs.map +0 -1
  456. package/dist/types/permissions.d.ts +0 -955
  457. package/dist/types/permissions.js +0 -1
  458. package/dist/types/permissions.js.map +0 -1
  459. package/dist/types/personal.cjs +0 -17
  460. package/dist/types/personal.cjs.map +0 -1
  461. package/dist/types/personal.d.ts +0 -174
  462. package/dist/types/personal.js +0 -1
  463. package/dist/types/personal.js.map +0 -1
  464. package/dist/types/relayer.cjs +0 -17
  465. package/dist/types/relayer.cjs.map +0 -1
  466. package/dist/types/relayer.d.ts +0 -552
  467. package/dist/types/relayer.js +0 -1
  468. package/dist/types/relayer.js.map +0 -1
  469. package/dist/types/transactionResults.cjs +0 -17
  470. package/dist/types/transactionResults.cjs.map +0 -1
  471. package/dist/types/transactionResults.d.ts +0 -193
  472. package/dist/types/transactionResults.js +0 -1
  473. package/dist/types/transactionResults.js.map +0 -1
  474. package/dist/types/utils.cjs +0 -17
  475. package/dist/types/utils.cjs.map +0 -1
  476. package/dist/types/utils.d.ts +0 -771
  477. package/dist/types/utils.js +0 -1
  478. package/dist/types/utils.js.map +0 -1
  479. package/dist/utils/__tests__/chainQuery.test.d.ts +0 -1
  480. package/dist/utils/__tests__/parseTransaction.test.d.ts +0 -1
  481. package/dist/utils/__tests__/pojo-serialization.test.d.ts +0 -1
  482. package/dist/utils/__tests__/signatureCache.test.d.ts +0 -1
  483. package/dist/utils/__tests__/subgraphConsistency.test.d.ts +0 -4
  484. package/dist/utils/__tests__/subgraphPagination.test.d.ts +0 -4
  485. package/dist/utils/__tests__/transaction-edge-cases.test.d.ts +0 -1
  486. package/dist/utils/__tests__/transactionHelpers.test.d.ts +0 -1
  487. package/dist/utils/__tests__/urlResolver.test.d.ts +0 -4
  488. package/dist/utils/blockchain/registry.cjs +0 -81
  489. package/dist/utils/blockchain/registry.cjs.map +0 -1
  490. package/dist/utils/blockchain/registry.d.ts +0 -32
  491. package/dist/utils/blockchain/registry.js +0 -56
  492. package/dist/utils/blockchain/registry.js.map +0 -1
  493. package/dist/utils/blockchain/registry.test.d.ts +0 -1
  494. package/dist/utils/chainQuery.cjs +0 -107
  495. package/dist/utils/chainQuery.cjs.map +0 -1
  496. package/dist/utils/chainQuery.d.ts +0 -31
  497. package/dist/utils/chainQuery.js +0 -82
  498. package/dist/utils/chainQuery.js.map +0 -1
  499. package/dist/utils/download.cjs +0 -69
  500. package/dist/utils/download.cjs.map +0 -1
  501. package/dist/utils/download.d.ts +0 -40
  502. package/dist/utils/download.js +0 -45
  503. package/dist/utils/download.js.map +0 -1
  504. package/dist/utils/encryption.cjs +0 -176
  505. package/dist/utils/encryption.cjs.map +0 -1
  506. package/dist/utils/encryption.d.ts +0 -271
  507. package/dist/utils/encryption.js +0 -142
  508. package/dist/utils/encryption.js.map +0 -1
  509. package/dist/utils/formatters.cjs +0 -55
  510. package/dist/utils/formatters.cjs.map +0 -1
  511. package/dist/utils/formatters.d.ts +0 -118
  512. package/dist/utils/formatters.js +0 -28
  513. package/dist/utils/formatters.js.map +0 -1
  514. package/dist/utils/grantFiles.cjs +0 -181
  515. package/dist/utils/grantFiles.cjs.map +0 -1
  516. package/dist/utils/grantFiles.d.ts +0 -172
  517. package/dist/utils/grantFiles.js +0 -143
  518. package/dist/utils/grantFiles.js.map +0 -1
  519. package/dist/utils/grantValidation.cjs +0 -243
  520. package/dist/utils/grantValidation.cjs.map +0 -1
  521. package/dist/utils/grantValidation.d.ts +0 -226
  522. package/dist/utils/grantValidation.js +0 -201
  523. package/dist/utils/grantValidation.js.map +0 -1
  524. package/dist/utils/grants.cjs +0 -108
  525. package/dist/utils/grants.cjs.map +0 -1
  526. package/dist/utils/grants.d.ts +0 -148
  527. package/dist/utils/grants.js +0 -82
  528. package/dist/utils/grants.js.map +0 -1
  529. package/dist/utils/ipfs.cjs +0 -128
  530. package/dist/utils/ipfs.cjs.map +0 -1
  531. package/dist/utils/ipfs.d.ts +0 -88
  532. package/dist/utils/ipfs.js +0 -97
  533. package/dist/utils/ipfs.js.map +0 -1
  534. package/dist/utils/multicall.cjs +0 -233
  535. package/dist/utils/multicall.cjs.map +0 -1
  536. package/dist/utils/multicall.d.ts +0 -126
  537. package/dist/utils/multicall.js +0 -208
  538. package/dist/utils/multicall.js.map +0 -1
  539. package/dist/utils/parseTransactionPojo.cjs +0 -87
  540. package/dist/utils/parseTransactionPojo.cjs.map +0 -1
  541. package/dist/utils/parseTransactionPojo.d.ts +0 -31
  542. package/dist/utils/parseTransactionPojo.js +0 -63
  543. package/dist/utils/parseTransactionPojo.js.map +0 -1
  544. package/dist/utils/schemaValidation.cjs +0 -258
  545. package/dist/utils/schemaValidation.cjs.map +0 -1
  546. package/dist/utils/schemaValidation.d.ts +0 -168
  547. package/dist/utils/schemaValidation.js +0 -219
  548. package/dist/utils/schemaValidation.js.map +0 -1
  549. package/dist/utils/signatureCache.cjs +0 -192
  550. package/dist/utils/signatureCache.cjs.map +0 -1
  551. package/dist/utils/signatureCache.d.ts +0 -172
  552. package/dist/utils/signatureCache.js +0 -167
  553. package/dist/utils/signatureCache.js.map +0 -1
  554. package/dist/utils/signatureFormatter.cjs +0 -42
  555. package/dist/utils/signatureFormatter.cjs.map +0 -1
  556. package/dist/utils/signatureFormatter.d.ts +0 -36
  557. package/dist/utils/signatureFormatter.js +0 -18
  558. package/dist/utils/signatureFormatter.js.map +0 -1
  559. package/dist/utils/subgraphConsistency.cjs +0 -184
  560. package/dist/utils/subgraphConsistency.cjs.map +0 -1
  561. package/dist/utils/subgraphConsistency.d.ts +0 -65
  562. package/dist/utils/subgraphConsistency.js +0 -155
  563. package/dist/utils/subgraphConsistency.js.map +0 -1
  564. package/dist/utils/subgraphMetaCache.cjs +0 -101
  565. package/dist/utils/subgraphMetaCache.cjs.map +0 -1
  566. package/dist/utils/subgraphMetaCache.d.ts +0 -56
  567. package/dist/utils/subgraphMetaCache.js +0 -76
  568. package/dist/utils/subgraphMetaCache.js.map +0 -1
  569. package/dist/utils/subgraphPagination.cjs +0 -104
  570. package/dist/utils/subgraphPagination.cjs.map +0 -1
  571. package/dist/utils/subgraphPagination.d.ts +0 -78
  572. package/dist/utils/subgraphPagination.js +0 -78
  573. package/dist/utils/subgraphPagination.js.map +0 -1
  574. package/dist/utils/tests/multicall.test.d.ts +0 -1
  575. package/dist/utils/transactionHelpers.cjs +0 -54
  576. package/dist/utils/transactionHelpers.cjs.map +0 -1
  577. package/dist/utils/transactionHelpers.d.ts +0 -80
  578. package/dist/utils/transactionHelpers.js +0 -29
  579. package/dist/utils/transactionHelpers.js.map +0 -1
  580. package/dist/utils/typeGuards.cjs +0 -109
  581. package/dist/utils/typeGuards.cjs.map +0 -1
  582. package/dist/utils/typeGuards.d.ts +0 -138
  583. package/dist/utils/typeGuards.js +0 -74
  584. package/dist/utils/typeGuards.js.map +0 -1
  585. package/dist/utils/typedDataConverter.cjs +0 -43
  586. package/dist/utils/typedDataConverter.cjs.map +0 -1
  587. package/dist/utils/typedDataConverter.d.ts +0 -46
  588. package/dist/utils/typedDataConverter.js +0 -19
  589. package/dist/utils/typedDataConverter.js.map +0 -1
  590. package/dist/utils/urlResolver.cjs +0 -62
  591. package/dist/utils/urlResolver.cjs.map +0 -1
  592. package/dist/utils/urlResolver.d.ts +0 -56
  593. package/dist/utils/urlResolver.js +0 -37
  594. package/dist/utils/urlResolver.js.map +0 -1
  595. package/dist/utils/wallet.cjs +0 -63
  596. package/dist/utils/wallet.cjs.map +0 -1
  597. package/dist/utils/wallet.d.ts +0 -94
  598. package/dist/utils/wallet.js +0 -37
  599. package/dist/utils/wallet.js.map +0 -1
  600. package/dist/utils/withEvents.cjs +0 -44
  601. package/dist/utils/withEvents.cjs.map +0 -1
  602. package/dist/utils/withEvents.d.ts +0 -56
  603. package/dist/utils/withEvents.js +0 -18
  604. package/dist/utils/withEvents.js.map +0 -1
  605. /package/dist/{__tests__/waitForTransactionEvents.test.d.ts → auth/pkce.test.d.ts} +0 -0
  606. /package/dist/{client/__tests__/enhancedResponse.test.d.ts → auth/token-store.test.d.ts} +0 -0
  607. /package/dist/{controllers/__tests__/operations.processQueue.test.d.ts → auth/web3-signed.test.d.ts} +0 -0
  608. /package/dist/{controllers/__tests__/schemas-edge-cases.test.d.ts → crypto/envelope/openpgp.test.d.ts} +0 -0
  609. /package/dist/{controllers/data-error-handling.test.d.ts → crypto/keys/derive.test.d.ts} +0 -0
  610. /package/dist/{tests/errors.test.d.ts → errors.test.d.ts} +0 -0
  611. /package/dist/{controllers/server-additional.test.d.ts → protocol/data-file.test.d.ts} +0 -0
  612. /package/dist/{core/__tests__/health.test.d.ts → protocol/eip712.test.d.ts} +0 -0
  613. /package/dist/{core/__tests__/inMemoryNonceManager.test.d.ts → protocol/gateway.test.d.ts} +0 -0
  614. /package/dist/{core/__tests__/nonceManager.test.d.ts → protocol/scopes.test.d.ts} +0 -0
  615. /package/dist/{core/core.test.d.ts → storage/tests/defaultStorage.test.d.ts} +0 -0
  616. /package/dist/{core/tests/apiClient.test.d.ts → storage/tests/r2Storage.test.d.ts} +0 -0
  617. /package/dist/{core/tests/client.test.d.ts → storage/tests/vanaStorage.test.d.ts} +0 -0
  618. /package/dist/{core/tests/generics.test.d.ts → types/ps-errors.test.d.ts} +0 -0
@@ -1,626 +0,0 @@
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 staking_exports = {};
20
- __export(staking_exports, {
21
- StakingController: () => StakingController
22
- });
23
- module.exports = __toCommonJS(staking_exports);
24
- var import_base = require("./base");
25
- var import_viem = require("viem");
26
- var import_addresses = require("../generated/addresses");
27
- var import_abi = require("../generated/abi");
28
- var import_errors = require("../errors");
29
- class StakingController extends import_base.BaseController {
30
- constructor(context) {
31
- super(context);
32
- }
33
- /**
34
- * Gets the chain ID from context.
35
- */
36
- getChainId() {
37
- const chainId = this.context.walletClient?.chain?.id ?? this.context.publicClient.chain?.id;
38
- if (!chainId) {
39
- throw new Error("Chain ID not available");
40
- }
41
- return chainId;
42
- }
43
- /**
44
- * Gets the VanaPoolEntity contract instance.
45
- */
46
- getEntityContract() {
47
- const chainId = this.getChainId();
48
- return (0, import_viem.getContract)({
49
- address: (0, import_addresses.getContractAddress)(chainId, "VanaPoolEntity"),
50
- abi: (0, import_abi.getAbi)("VanaPoolEntity"),
51
- client: this.context.publicClient
52
- });
53
- }
54
- /**
55
- * Gets the VanaPoolStaking contract instance.
56
- */
57
- getStakingContract() {
58
- const chainId = this.getChainId();
59
- return (0, import_viem.getContract)({
60
- address: (0, import_addresses.getContractAddress)(chainId, "VanaPoolStaking"),
61
- abi: (0, import_abi.getAbi)("VanaPoolStaking"),
62
- client: this.context.publicClient
63
- });
64
- }
65
- /**
66
- * Gets the total amount of VANA staked in the VanaPool protocol or a specific entity.
67
- *
68
- * @remarks
69
- * When called without an entityId, this retrieves the sum of activeRewardPool
70
- * across all active entities in the VanaPool protocol.
71
- * When called with an entityId, this returns the activeRewardPool for that specific entity.
72
- * The value is returned in wei (10^18 = 1 VANA).
73
- *
74
- * @param entityId - Optional entity ID to get staked amount for a specific entity
75
- * @returns The total amount of VANA staked in wei
76
- *
77
- * @example
78
- * ```typescript
79
- * // Get total staked across all entities
80
- * const totalStaked = await vana.staking.getTotalVanaStaked();
81
- * console.log(`Total staked: ${Number(totalStaked) / 1e18} VANA`);
82
- *
83
- * // Get staked amount for a specific entity
84
- * const entityStaked = await vana.staking.getTotalVanaStaked(1n);
85
- * console.log(`Entity 1 staked: ${Number(entityStaked) / 1e18} VANA`);
86
- * ```
87
- */
88
- async getTotalVanaStaked(entityId) {
89
- const entityContract = this.getEntityContract();
90
- if (entityId !== void 0) {
91
- const entity = await entityContract.read.entities([entityId]);
92
- return entity.activeRewardPool;
93
- }
94
- const activeEntityIds = await entityContract.read.activeEntitiesValues();
95
- let totalStaked = 0n;
96
- for (const id of activeEntityIds) {
97
- const entity = await entityContract.read.entities([id]);
98
- totalStaked += entity.activeRewardPool;
99
- }
100
- return totalStaked;
101
- }
102
- /**
103
- * Gets information about a specific staking entity.
104
- *
105
- * @param entityId - The ID of the entity to query
106
- * @returns The entity information including name, APY, shares, and reward pools
107
- *
108
- * @example
109
- * ```typescript
110
- * const entity = await vana.staking.getEntity(1n);
111
- * console.log(`Entity: ${entity.name}`);
112
- * console.log(`Total shares: ${entity.totalShares}`);
113
- * console.log(`Max APY: ${Number(entity.maxAPY) / 100}%`);
114
- * ```
115
- */
116
- async getEntity(entityId) {
117
- const entityContract = this.getEntityContract();
118
- const result = await entityContract.read.entities([entityId]);
119
- return {
120
- entityId: result.entityId,
121
- ownerAddress: result.ownerAddress,
122
- status: result.status,
123
- name: result.name,
124
- maxAPY: result.maxAPY,
125
- lockedRewardPool: result.lockedRewardPool,
126
- activeRewardPool: result.activeRewardPool,
127
- totalShares: result.totalShares,
128
- lastUpdateTimestamp: result.lastUpdateTimestamp,
129
- totalDistributedRewards: result.totalDistributedRewards
130
- };
131
- }
132
- /**
133
- * Gets the total number of staking entities in the protocol.
134
- *
135
- * @returns The count of entities
136
- *
137
- * @example
138
- * ```typescript
139
- * const count = await vana.staking.getEntitiesCount();
140
- * console.log(`Total entities: ${count}`);
141
- * ```
142
- */
143
- async getEntitiesCount() {
144
- const entityContract = this.getEntityContract();
145
- return entityContract.read.entitiesCount();
146
- }
147
- /**
148
- * Gets the IDs of all active staking entities.
149
- *
150
- * @returns Array of active entity IDs
151
- *
152
- * @example
153
- * ```typescript
154
- * const activeIds = await vana.staking.getActiveEntities();
155
- * console.log(`Active entities: ${activeIds.join(', ')}`);
156
- * ```
157
- */
158
- async getActiveEntities() {
159
- const entityContract = this.getEntityContract();
160
- return entityContract.read.activeEntitiesValues();
161
- }
162
- /**
163
- * Gets a staker's position in a specific entity.
164
- *
165
- * @param staker - The address of the staker
166
- * @param entityId - The ID of the entity
167
- * @returns The staker's position information
168
- *
169
- * @example
170
- * ```typescript
171
- * const position = await vana.staking.getStakerPosition(
172
- * '0x742d35...',
173
- * 1n
174
- * );
175
- * console.log(`Shares: ${position.shares}`);
176
- * console.log(`Rewards: ${position.realizedRewards}`);
177
- * ```
178
- */
179
- async getStakerPosition(staker, entityId) {
180
- const stakingContract = this.getStakingContract();
181
- const result = await stakingContract.read.stakerEntities([
182
- staker,
183
- entityId
184
- ]);
185
- return {
186
- shares: result.shares,
187
- costBasis: result.costBasis,
188
- rewardEligibilityTimestamp: result.rewardEligibilityTimestamp,
189
- realizedRewards: result.realizedRewards,
190
- vestedRewards: result.vestedRewards
191
- };
192
- }
193
- /**
194
- * Gets the earned rewards for a staker in an entity.
195
- *
196
- * @param staker - The address of the staker
197
- * @param entityId - The ID of the entity
198
- * @returns The earned rewards amount in wei
199
- *
200
- * @example
201
- * ```typescript
202
- * const rewards = await vana.staking.getEarnedRewards(
203
- * '0x742d35...',
204
- * 1n
205
- * );
206
- * console.log(`Earned: ${Number(rewards) / 1e18} VANA`);
207
- * ```
208
- */
209
- async getEarnedRewards(staker, entityId) {
210
- const stakingContract = this.getStakingContract();
211
- return stakingContract.read.getEarnedRewards([staker, entityId]);
212
- }
213
- /**
214
- * Gets the minimum stake amount required to stake.
215
- *
216
- * @returns The minimum stake amount in wei
217
- *
218
- * @example
219
- * ```typescript
220
- * const minStake = await vana.staking.getMinStakeAmount();
221
- * console.log(`Minimum stake: ${Number(minStake) / 1e18} VANA`);
222
- * ```
223
- */
224
- async getMinStakeAmount() {
225
- const stakingContract = this.getStakingContract();
226
- return stakingContract.read.minStakeAmount();
227
- }
228
- /**
229
- * Gets the count of active stakers in the protocol.
230
- *
231
- * @returns The number of active stakers
232
- *
233
- * @example
234
- * ```typescript
235
- * const count = await vana.staking.getActiveStakersCount();
236
- * console.log(`Active stakers: ${count}`);
237
- * ```
238
- */
239
- async getActiveStakersCount() {
240
- const stakingContract = this.getStakingContract();
241
- return stakingContract.read.activeStakersListCount();
242
- }
243
- /**
244
- * Gets the bonding period for staking.
245
- *
246
- * @returns The bonding period in seconds
247
- *
248
- * @example
249
- * ```typescript
250
- * const bondingPeriod = await vana.staking.getBondingPeriod();
251
- * console.log(`Bonding period: ${bondingPeriod / 86400n} days`);
252
- * ```
253
- */
254
- async getBondingPeriod() {
255
- const stakingContract = this.getStakingContract();
256
- return stakingContract.read.bondingPeriod();
257
- }
258
- /**
259
- * Gets the total distributed rewards for a specific entity from the contract.
260
- *
261
- * @remarks
262
- * This reads the `totalDistributedRewards` field from the entity's on-chain state.
263
- * This value represents the sum of all rewards that have been processed
264
- * (moved from lockedRewardPool to activeRewardPool) minus any forfeited
265
- * rewards that were returned.
266
- *
267
- * @param entityId - The ID of the entity to query
268
- * @returns The total distributed rewards in wei
269
- *
270
- * @example
271
- * ```typescript
272
- * const totalRewards = await vana.staking.getTotalDistributedRewards(1n);
273
- * const totalRewardsVana = Number(totalRewards) / 1e18;
274
- * console.log(`Total distributed rewards: ${totalRewardsVana.toLocaleString()} VANA`);
275
- * ```
276
- */
277
- async getTotalDistributedRewards(entityId) {
278
- const entityContract = this.getEntityContract();
279
- const result = await entityContract.read.entities([entityId]);
280
- return result.totalDistributedRewards;
281
- }
282
- /**
283
- * Gets a comprehensive staking summary for a staker in an entity.
284
- *
285
- * @remarks
286
- * This method aggregates all relevant staking information for a staker in a single call,
287
- * including staked amount, current value, bonding status, and all reward types.
288
- *
289
- * Reward breakdown:
290
- * - `earnedRewards` = pendingInterest + vestedRewards + realizedRewards
291
- * - `pendingInterest` = currentValue - costBasis (unvested appreciation)
292
- * - `vestedRewards` = rewards that have vested but not yet withdrawn
293
- * - `realizedRewards` = rewards already withdrawn during unstakes
294
- *
295
- * @param staker - The address of the staker
296
- * @param entityId - The ID of the entity
297
- * @returns A comprehensive summary of the staker's position
298
- *
299
- * @example
300
- * ```typescript
301
- * const summary = await vana.staking.getStakerSummary('0x742d35...', 1n);
302
- * console.log(`Total staked: ${Number(summary.totalStaked) / 1e18} VANA`);
303
- * console.log(`Current value: ${Number(summary.currentValue) / 1e18} VANA`);
304
- * console.log(`In bonding period: ${summary.isInBondingPeriod}`);
305
- * console.log(`Remaining bonding time: ${Number(summary.remainingBondingTime) / 86400} days`);
306
- * console.log(`Vested rewards: ${Number(summary.vestedRewards) / 1e18} VANA`);
307
- * console.log(`Unvested rewards: ${Number(summary.unvestedRewards) / 1e18} VANA`);
308
- * console.log(`Realized rewards: ${Number(summary.realizedRewards) / 1e18} VANA`);
309
- * console.log(`Total earned: ${Number(summary.earnedRewards) / 1e18} VANA`);
310
- * ```
311
- */
312
- async getStakerSummary(staker, entityId) {
313
- const chainId = this.getChainId();
314
- const stakingAddress = (0, import_addresses.getContractAddress)(chainId, "VanaPoolStaking");
315
- const entityAddress = (0, import_addresses.getContractAddress)(chainId, "VanaPoolEntity");
316
- const stakingAbi = (0, import_abi.getAbi)("VanaPoolStaking");
317
- const entityAbi = (0, import_abi.getAbi)("VanaPoolEntity");
318
- const block = await this.context.publicClient.getBlock();
319
- const blockNumber = block.number;
320
- const multicallResults = await this.context.publicClient.multicall({
321
- contracts: [
322
- {
323
- address: stakingAddress,
324
- abi: stakingAbi,
325
- functionName: "stakerEntities",
326
- args: [staker, entityId]
327
- },
328
- {
329
- address: stakingAddress,
330
- abi: stakingAbi,
331
- functionName: "getEarnedRewards",
332
- args: [staker, entityId]
333
- },
334
- {
335
- address: entityAddress,
336
- abi: entityAbi,
337
- functionName: "entityShareToVana",
338
- args: [entityId]
339
- }
340
- ],
341
- blockNumber
342
- });
343
- const [positionResult, earnedRewardsResult, shareToVanaResult] = multicallResults;
344
- if (positionResult.status === "failure" || earnedRewardsResult.status === "failure" || shareToVanaResult.status === "failure") {
345
- throw new import_errors.BlockchainError(
346
- "Failed to fetch staker summary: one or more contract calls failed"
347
- );
348
- }
349
- const position = positionResult.result;
350
- const earnedRewards = earnedRewardsResult.result;
351
- const shareToVana = shareToVanaResult.result;
352
- const currentTimestamp = block.timestamp;
353
- const eligibilityTimestamp = position.rewardEligibilityTimestamp;
354
- const remainingBondingTime = eligibilityTimestamp > currentTimestamp ? eligibilityTimestamp - currentTimestamp : 0n;
355
- const isInBondingPeriod = remainingBondingTime > 0n;
356
- const currentValue = position.shares * shareToVana / 10n ** 18n;
357
- const unvestedRewards = currentValue > position.costBasis ? currentValue - position.costBasis : 0n;
358
- return {
359
- shares: position.shares,
360
- costBasis: position.costBasis,
361
- currentValue,
362
- rewardEligibilityTimestamp: eligibilityTimestamp,
363
- remainingBondingTime,
364
- isInBondingPeriod,
365
- vestedRewards: position.vestedRewards,
366
- unvestedRewards,
367
- realizedRewards: position.realizedRewards,
368
- earnedRewards
369
- };
370
- }
371
- /**
372
- * Stakes VANA to an entity in the VanaPool protocol.
373
- *
374
- * @remarks
375
- * This method stakes native VANA tokens to a specified entity. The staker will receive
376
- * shares in proportion to their stake amount. A bonding period applies during which
377
- * rewards cannot be fully claimed without penalty.
378
- *
379
- * Requires a wallet client to be configured in the Vana constructor.
380
- *
381
- * @param params - The staking parameters
382
- * @param params.entityId - The ID of the entity to stake to
383
- * @param params.amount - The amount of VANA to stake (in wei, or as a string like "1.5" for 1.5 VANA)
384
- * @param params.recipient - Optional recipient address for the shares (defaults to the sender)
385
- * @param params.minShares - Optional minimum shares to receive (slippage protection, defaults to 0)
386
- * @returns The transaction hash
387
- * @throws {BlockchainError} When wallet client is not configured
388
- *
389
- * @example
390
- * ```typescript
391
- * // Stake 100 VANA to entity 1
392
- * const txHash = await vana.staking.stake({
393
- * entityId: 1n,
394
- * amount: "100", // 100 VANA
395
- * });
396
- * console.log(`Staked! Transaction: ${txHash}`);
397
- *
398
- * // Stake with slippage protection
399
- * const txHash2 = await vana.staking.stake({
400
- * entityId: 1n,
401
- * amount: parseEther("50"), // 50 VANA in wei
402
- * minShares: parseEther("49"), // Expect at least 49 shares
403
- * });
404
- * ```
405
- */
406
- async stake(params, options) {
407
- this.assertWallet();
408
- const chainId = this.getChainId();
409
- const stakingAddress = (0, import_addresses.getContractAddress)(chainId, "VanaPoolStaking");
410
- const stakingAbi = (0, import_abi.getAbi)("VanaPoolStaking");
411
- const amountWei = typeof params.amount === "string" ? (0, import_viem.parseEther)(params.amount) : params.amount;
412
- const account = this.context.walletClient.account ?? this.context.userAddress;
413
- const accountAddress = typeof account === "string" ? account : account.address;
414
- const recipient = params.recipient ?? accountAddress;
415
- const minShares = params.minShares ?? 0n;
416
- const txHash = await this.context.walletClient.writeContract({
417
- address: stakingAddress,
418
- abi: stakingAbi,
419
- functionName: "stake",
420
- args: [params.entityId, recipient, minShares],
421
- value: amountWei,
422
- account,
423
- chain: this.context.walletClient.chain,
424
- ...this.spreadTransactionOptions(options)
425
- });
426
- return txHash;
427
- }
428
- /**
429
- * Gets the maximum amount of VANA that can be unstaked in a single transaction.
430
- *
431
- * @remarks
432
- * This calls the contract's getMaxUnstakeAmount which returns the minimum of:
433
- * 1. The withdrawable VANA (costBasis if in bonding period, shareValue if eligible)
434
- * 2. The entity's activeRewardPool (what the entity has available)
435
- * 3. The treasury balance (what can be paid out)
436
- *
437
- * The limiting factor indicates what's constraining the unstake:
438
- * - 0 = user shares/costBasis
439
- * - 1 = activeRewardPool
440
- * - 2 = treasury
441
- *
442
- * @param staker - The address of the staker
443
- * @param entityId - The ID of the entity
444
- * @returns Object containing maxVana, maxShares, limitingFactor, and isInBondingPeriod
445
- *
446
- * @example
447
- * ```typescript
448
- * const result = await vana.staking.getMaxUnstakeAmount('0x742d35...', 1n);
449
- * console.log(`Max unstake: ${Number(result.maxVana) / 1e18} VANA`);
450
- * console.log(`Max shares: ${result.maxShares}`);
451
- * console.log(`In bonding period: ${result.isInBondingPeriod}`);
452
- * ```
453
- */
454
- async getMaxUnstakeAmount(staker, entityId) {
455
- const stakingContract = this.getStakingContract();
456
- const result = await stakingContract.read.getMaxUnstakeAmount([
457
- staker,
458
- entityId
459
- ]);
460
- return {
461
- maxVana: result[0],
462
- maxShares: result[1],
463
- limitingFactor: Number(result[2]),
464
- isInBondingPeriod: result[3]
465
- };
466
- }
467
- /**
468
- * Computes the new bonding period end timestamp after adding stake.
469
- *
470
- * @remarks
471
- * When a staker adds more stake to an existing position, the reward eligibility timestamp
472
- * is recalculated as a weighted average of the existing and new positions. This function
473
- * allows you to preview what the new eligibility timestamp would be without executing
474
- * the stake transaction.
475
- *
476
- * The formula used (matching the contract):
477
- * ```
478
- * newEligibility = (existingShares * existingEligibility + newShares * newEligibility) / totalShares
479
- * ```
480
- *
481
- * Where `newEligibility` for the incoming stake is `currentTimestamp + bondingPeriod`.
482
- *
483
- * @param params - The parameters for computing the new bonding period
484
- * @param params.staker - The address of the staker
485
- * @param params.entityId - The ID of the entity
486
- * @param params.stakeAmount - The amount of VANA to stake (in wei)
487
- * @returns Object containing the new eligibility timestamp and related info
488
- *
489
- * @example
490
- * ```typescript
491
- * // Preview bonding period after staking 100 VANA
492
- * const preview = await vana.staking.computeNewBondingPeriod({
493
- * staker: '0x742d35...',
494
- * entityId: 1n,
495
- * stakeAmount: parseEther("100"),
496
- * });
497
- * console.log(`New eligibility: ${new Date(Number(preview.newEligibilityTimestamp) * 1000)}`);
498
- * console.log(`Remaining bonding time: ${Number(preview.newRemainingBondingTime) / 86400} days`);
499
- * ```
500
- */
501
- async computeNewBondingPeriod(params) {
502
- const chainId = this.getChainId();
503
- const stakingAddress = (0, import_addresses.getContractAddress)(chainId, "VanaPoolStaking");
504
- const entityAddress = (0, import_addresses.getContractAddress)(chainId, "VanaPoolEntity");
505
- const stakingAbi = (0, import_abi.getAbi)("VanaPoolStaking");
506
- const entityAbi = (0, import_abi.getAbi)("VanaPoolEntity");
507
- const block = await this.context.publicClient.getBlock();
508
- const blockNumber = block.number;
509
- const currentTimestamp = block.timestamp;
510
- const multicallResults = await this.context.publicClient.multicall({
511
- contracts: [
512
- {
513
- address: stakingAddress,
514
- abi: stakingAbi,
515
- functionName: "stakerEntities",
516
- args: [params.staker, params.entityId]
517
- },
518
- {
519
- address: stakingAddress,
520
- abi: stakingAbi,
521
- functionName: "bondingPeriod",
522
- args: []
523
- },
524
- {
525
- address: entityAddress,
526
- abi: entityAbi,
527
- functionName: "vanaToEntityShare",
528
- args: [params.entityId]
529
- }
530
- ],
531
- blockNumber
532
- });
533
- const [positionResult, bondingPeriodResult, vanaToShareResult] = multicallResults;
534
- if (positionResult.status === "failure" || bondingPeriodResult.status === "failure" || vanaToShareResult.status === "failure") {
535
- throw new import_errors.BlockchainError(
536
- "Failed to compute new bonding period: one or more contract calls failed"
537
- );
538
- }
539
- const position = positionResult.result;
540
- const bondingPeriodDuration = bondingPeriodResult.result;
541
- const vanaToShare = vanaToShareResult.result;
542
- const currentShares = position.shares;
543
- const currentEligibilityTimestamp = position.rewardEligibilityTimestamp;
544
- const currentRemainingBondingTime = currentEligibilityTimestamp > currentTimestamp ? currentEligibilityTimestamp - currentTimestamp : 0n;
545
- const estimatedNewShares = params.stakeAmount * vanaToShare / 10n ** 18n;
546
- const totalSharesAfter = currentShares + estimatedNewShares;
547
- const newStakeEligibility = currentTimestamp + bondingPeriodDuration;
548
- let newEligibilityTimestamp;
549
- if (currentShares === 0n) {
550
- newEligibilityTimestamp = newStakeEligibility;
551
- } else {
552
- newEligibilityTimestamp = (currentShares * currentEligibilityTimestamp + estimatedNewShares * newStakeEligibility) / totalSharesAfter;
553
- }
554
- const newRemainingBondingTime = newEligibilityTimestamp > currentTimestamp ? newEligibilityTimestamp - currentTimestamp : 0n;
555
- return {
556
- newEligibilityTimestamp,
557
- newRemainingBondingTime,
558
- currentEligibilityTimestamp,
559
- currentRemainingBondingTime,
560
- currentShares,
561
- estimatedNewShares,
562
- totalSharesAfter,
563
- bondingPeriodDuration,
564
- currentTimestamp
565
- };
566
- }
567
- /**
568
- * Unstakes VANA from an entity in the VanaPool protocol.
569
- *
570
- * @remarks
571
- * This method unstakes native VANA tokens from a specified entity. The amount
572
- * that can be unstaked depends on whether the staker is in the bonding period:
573
- *
574
- * - **During bonding period**: Only cost basis can be withdrawn; rewards are forfeited
575
- * - **After bonding period**: Full current value (cost basis + rewards) can be withdrawn
576
- *
577
- * Use `getMaxUnstakeAmount` to determine the maximum amount that can be unstaked.
578
- *
579
- * Requires a wallet client to be configured in the Vana constructor.
580
- *
581
- * @param params - The unstaking parameters
582
- * @param params.entityId - The ID of the entity to unstake from
583
- * @param params.amount - The amount of VANA to unstake (in wei, or as a string like "1.5" for 1.5 VANA)
584
- * @param params.maxShares - Maximum shares to burn for slippage protection (defaults to 0, no protection)
585
- * @returns The transaction hash
586
- * @throws {BlockchainError} When wallet client is not configured
587
- *
588
- * @example
589
- * ```typescript
590
- * // Get max unstake amount first
591
- * const maxUnstake = await vana.staking.getMaxUnstakeAmount(address, 1n);
592
- *
593
- * // Unstake the maximum amount with slippage protection
594
- * const txHash = await vana.staking.unstake({
595
- * entityId: 1n,
596
- * amount: maxUnstake.maxVana,
597
- * maxShares: maxUnstake.maxShares,
598
- * });
599
- * console.log(`Unstaked! Transaction: ${txHash}`);
600
- * ```
601
- */
602
- async unstake(params, options) {
603
- this.assertWallet();
604
- const chainId = this.getChainId();
605
- const stakingAddress = (0, import_addresses.getContractAddress)(chainId, "VanaPoolStaking");
606
- const stakingAbi = (0, import_abi.getAbi)("VanaPoolStaking");
607
- const amountWei = typeof params.amount === "string" ? (0, import_viem.parseEther)(params.amount) : params.amount;
608
- const maxShares = params.maxShares ?? 0n;
609
- const account = this.context.walletClient.account ?? this.context.userAddress;
610
- const txHash = await this.context.walletClient.writeContract({
611
- address: stakingAddress,
612
- abi: stakingAbi,
613
- functionName: "unstakeVana",
614
- args: [params.entityId, amountWei, maxShares],
615
- account,
616
- chain: this.context.walletClient.chain,
617
- ...this.spreadTransactionOptions(options)
618
- });
619
- return txHash;
620
- }
621
- }
622
- // Annotate the CommonJS export names for ESM import in node:
623
- 0 && (module.exports = {
624
- StakingController
625
- });
626
- //# sourceMappingURL=staking.cjs.map