@opendatalabs/vana-sdk 0.1.0-alpha.7ee7635 → 0.1.0-alpha.8117ac2

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 (700) hide show
  1. package/dist/__tests__/waitForTransactionEvents.test.d.ts +1 -0
  2. package/dist/browser.cjs.map +1 -1
  3. package/dist/browser.d.ts +36 -2
  4. package/dist/browser.js.map +1 -1
  5. package/dist/chains/definitions.cjs +9 -6
  6. package/dist/chains/definitions.cjs.map +1 -1
  7. package/dist/chains/definitions.d.ts +9 -11
  8. package/dist/chains/definitions.js +9 -6
  9. package/dist/chains/definitions.js.map +1 -1
  10. package/dist/chains/index.cjs.map +1 -1
  11. package/dist/chains/index.d.ts +34 -2
  12. package/dist/chains/index.js.map +1 -1
  13. package/dist/chains.browser.d.ts +8 -2
  14. package/dist/chains.d.ts +8 -2
  15. package/dist/chains.node.d.ts +8 -2
  16. package/dist/config/addresses.d.ts +8 -45
  17. package/dist/config/chains.cjs.map +1 -1
  18. package/dist/config/chains.d.ts +108 -13
  19. package/dist/config/chains.js.map +1 -1
  20. package/dist/config/default-services.cjs +60 -0
  21. package/dist/config/default-services.cjs.map +1 -0
  22. package/dist/config/default-services.d.ts +46 -0
  23. package/dist/config/default-services.js +33 -0
  24. package/dist/config/default-services.js.map +1 -0
  25. package/dist/config/default-services.test.d.ts +1 -0
  26. package/dist/config/features.d.ts +1 -3
  27. package/dist/config/tests/addresses.test.d.ts +1 -0
  28. package/dist/contracts/contractController.cjs +3 -3
  29. package/dist/contracts/contractController.cjs.map +1 -1
  30. package/dist/contracts/contractController.d.ts +77 -59
  31. package/dist/contracts/contractController.js +4 -7
  32. package/dist/contracts/contractController.js.map +1 -1
  33. package/dist/contracts/tests/contractController.test.d.ts +1 -0
  34. package/dist/controllers/__tests__/data-consistency-integration.test.d.ts +7 -0
  35. package/dist/controllers/__tests__/schemas-edge-cases.test.d.ts +1 -0
  36. package/dist/controllers/base.cjs +116 -0
  37. package/dist/controllers/base.cjs.map +1 -0
  38. package/dist/controllers/base.d.ts +94 -0
  39. package/dist/controllers/base.js +92 -0
  40. package/dist/controllers/base.js.map +1 -0
  41. package/dist/controllers/data-error-handling.test.d.ts +1 -0
  42. package/dist/controllers/data.cjs +699 -373
  43. package/dist/controllers/data.cjs.map +1 -1
  44. package/dist/controllers/data.d.ts +368 -228
  45. package/dist/controllers/data.js +712 -376
  46. package/dist/controllers/data.js.map +1 -1
  47. package/dist/controllers/permissions.cjs +688 -489
  48. package/dist/controllers/permissions.cjs.map +1 -1
  49. package/dist/controllers/permissions.d.ts +98 -165
  50. package/dist/controllers/permissions.js +688 -489
  51. package/dist/controllers/permissions.js.map +1 -1
  52. package/dist/controllers/protocol.cjs +15 -11
  53. package/dist/controllers/protocol.cjs.map +1 -1
  54. package/dist/controllers/protocol.d.ts +34 -84
  55. package/dist/controllers/protocol.js +15 -14
  56. package/dist/controllers/protocol.js.map +1 -1
  57. package/dist/controllers/schemas.cjs +57 -52
  58. package/dist/controllers/schemas.cjs.map +1 -1
  59. package/dist/controllers/schemas.d.ts +55 -61
  60. package/dist/controllers/schemas.js +57 -52
  61. package/dist/controllers/schemas.js.map +1 -1
  62. package/dist/controllers/server-additional.test.d.ts +1 -0
  63. package/dist/controllers/server.cjs +32 -25
  64. package/dist/controllers/server.cjs.map +1 -1
  65. package/dist/controllers/server.d.ts +53 -58
  66. package/dist/controllers/server.js +32 -25
  67. package/dist/controllers/server.js.map +1 -1
  68. package/dist/core/apiClient.cjs +68 -15
  69. package/dist/core/apiClient.cjs.map +1 -1
  70. package/dist/core/apiClient.d.ts +137 -16
  71. package/dist/core/apiClient.js +72 -22
  72. package/dist/core/apiClient.js.map +1 -1
  73. package/dist/core/client.cjs +7 -7
  74. package/dist/core/client.cjs.map +1 -1
  75. package/dist/core/client.d.ts +6 -9
  76. package/dist/core/client.js +7 -7
  77. package/dist/core/client.js.map +1 -1
  78. package/dist/core/core.test.d.ts +1 -0
  79. package/dist/core/generics.cjs +41 -12
  80. package/dist/core/generics.cjs.map +1 -1
  81. package/dist/core/generics.d.ts +104 -19
  82. package/dist/core/generics.js +52 -32
  83. package/dist/core/generics.js.map +1 -1
  84. package/dist/core/tests/apiClient.test.d.ts +1 -0
  85. package/dist/core/tests/client.test.d.ts +1 -0
  86. package/dist/core/tests/generics.test.d.ts +1 -0
  87. package/dist/core.cjs +115 -47
  88. package/dist/core.cjs.map +1 -1
  89. package/dist/core.d.ts +24 -74
  90. package/dist/core.js +137 -72
  91. package/dist/core.js.map +1 -1
  92. package/dist/crypto/ecies/__tests__/base.test.d.ts +4 -0
  93. package/dist/crypto/ecies/__tests__/compatibility.test.d.ts +8 -0
  94. package/dist/crypto/ecies/__tests__/constants.test.d.ts +4 -0
  95. package/dist/crypto/ecies/__tests__/native-parity.test.d.ts +7 -0
  96. package/dist/crypto/ecies/__tests__/normalization.test.d.ts +1 -0
  97. package/dist/crypto/ecies/__tests__/test-vectors.d.ts +2 -4
  98. package/dist/crypto/ecies/base.cjs +4 -3
  99. package/dist/crypto/ecies/base.cjs.map +1 -1
  100. package/dist/crypto/ecies/base.d.ts +2 -5
  101. package/dist/crypto/ecies/base.js +12 -15
  102. package/dist/crypto/ecies/base.js.map +1 -1
  103. package/dist/crypto/ecies/browser.cjs +2 -1
  104. package/dist/crypto/ecies/browser.cjs.map +1 -1
  105. package/dist/crypto/ecies/browser.d.ts +2 -7
  106. package/dist/crypto/ecies/browser.js +2 -1
  107. package/dist/crypto/ecies/browser.js.map +1 -1
  108. package/dist/crypto/ecies/constants.d.ts +7 -9
  109. package/dist/crypto/ecies/index.d.ts +8 -1
  110. package/dist/crypto/ecies/interface.cjs +4 -5
  111. package/dist/crypto/ecies/interface.cjs.map +1 -1
  112. package/dist/crypto/ecies/interface.d.ts +9 -11
  113. package/dist/crypto/ecies/interface.js +4 -5
  114. package/dist/crypto/ecies/interface.js.map +1 -1
  115. package/dist/crypto/ecies/node.cjs +3 -2
  116. package/dist/crypto/ecies/node.cjs.map +1 -1
  117. package/dist/crypto/ecies/node.d.ts +2 -7
  118. package/dist/crypto/ecies/node.js +11 -16
  119. package/dist/crypto/ecies/node.js.map +1 -1
  120. package/dist/crypto/ecies/utils.cjs +2 -41
  121. package/dist/crypto/ecies/utils.cjs.map +1 -1
  122. package/dist/crypto/ecies/utils.d.ts +3 -40
  123. package/dist/crypto/ecies/utils.js +1 -35
  124. package/dist/crypto/ecies/utils.js.map +1 -1
  125. package/dist/crypto/services/WalletKeyEncryptionService.cjs +2 -2
  126. package/dist/crypto/services/WalletKeyEncryptionService.cjs.map +1 -1
  127. package/dist/crypto/services/WalletKeyEncryptionService.d.ts +3 -7
  128. package/dist/crypto/services/WalletKeyEncryptionService.js +5 -9
  129. package/dist/crypto/services/WalletKeyEncryptionService.js.map +1 -1
  130. package/dist/crypto/services/WalletKeyEncryptionService.test.d.ts +1 -0
  131. package/dist/diagnostics.d.ts +1 -3
  132. package/dist/diagnostics.test.d.ts +1 -0
  133. package/dist/errors.cjs +16 -0
  134. package/dist/errors.cjs.map +1 -1
  135. package/dist/errors.d.ts +53 -15
  136. package/dist/errors.js +18 -6
  137. package/dist/errors.js.map +1 -1
  138. package/dist/generated/abi/ComputeEngineImplementation.d.ts +2 -3
  139. package/dist/generated/abi/ComputeInstructionRegistryImplementation.cjs.map +1 -1
  140. package/dist/generated/abi/ComputeInstructionRegistryImplementation.d.ts +2 -3
  141. package/dist/generated/abi/ComputeInstructionRegistryImplementation.js.map +1 -1
  142. package/dist/generated/abi/DATFactoryImplementation.d.ts +2 -3
  143. package/dist/generated/abi/DATImplementation.d.ts +2 -3
  144. package/dist/generated/abi/DATPausableImplementation.d.ts +2 -3
  145. package/dist/generated/abi/DATVotesImplementation.d.ts +2 -3
  146. package/dist/generated/abi/DLPPerformanceImplementation.d.ts +2 -3
  147. package/dist/generated/abi/DLPRegistryImplementation.d.ts +2 -3
  148. package/dist/generated/abi/DLPRegistryTreasuryImplementation.d.ts +2 -3
  149. package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +2 -3
  150. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.ts +2 -3
  151. package/dist/generated/abi/DLPRewardSwapImplementation.d.ts +2 -3
  152. package/dist/generated/abi/DLPRootImplementation.d.ts +1 -3
  153. package/dist/generated/abi/DLPTreasuryImplementation.d.ts +2 -3
  154. package/dist/generated/abi/DataLiquidityPoolImplementation.d.ts +1 -3
  155. package/dist/generated/abi/DataPortabilityGranteesImplementation.d.ts +2 -3
  156. package/dist/generated/abi/DataPortabilityPermissionsImplementation.cjs.map +1 -1
  157. package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.ts +2 -3
  158. package/dist/generated/abi/DataPortabilityPermissionsImplementation.js.map +1 -1
  159. package/dist/generated/abi/DataPortabilityServersImplementation.cjs.map +1 -1
  160. package/dist/generated/abi/DataPortabilityServersImplementation.d.ts +2 -3
  161. package/dist/generated/abi/DataPortabilityServersImplementation.js.map +1 -1
  162. package/dist/generated/abi/DataRefinerRegistryImplementation.d.ts +2 -3
  163. package/dist/generated/abi/DataRegistryImplementation.d.ts +2 -3
  164. package/dist/generated/abi/QueryEngineImplementation.d.ts +2 -3
  165. package/dist/generated/abi/SwapHelperImplementation.d.ts +2 -3
  166. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.d.ts +2 -3
  167. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.d.ts +2 -3
  168. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.d.ts +2 -3
  169. package/dist/generated/abi/TeePoolImplementation.d.ts +2 -3
  170. package/dist/generated/abi/TeePoolPersistentGpuImplementation.d.ts +2 -3
  171. package/dist/generated/abi/TeePoolPersistentStandardImplementation.d.ts +2 -3
  172. package/dist/generated/abi/TeePoolPhalaImplementation.d.ts +2 -3
  173. package/dist/generated/abi/VanaEpochImplementation.d.ts +2 -3
  174. package/dist/generated/abi/VanaPoolEntityImplementation.d.ts +2 -3
  175. package/dist/generated/abi/VanaPoolStakingImplementation.d.ts +2 -3
  176. package/dist/generated/abi/VanaPoolTreasuryImplementation.d.ts +2 -3
  177. package/dist/generated/abi/index.d.ts +37 -39
  178. package/dist/generated/event-types.d.ts +9 -10
  179. package/dist/generated/eventRegistry.d.ts +3 -7
  180. package/dist/generated/server/server-exports.d.ts +19 -21
  181. package/dist/generated/server/server.cjs.map +1 -1
  182. package/dist/generated/server/server.d.ts +113 -87
  183. package/dist/generated/subgraph.cjs +797 -32
  184. package/dist/generated/subgraph.cjs.map +1 -1
  185. package/dist/generated/subgraph.d.ts +464 -332
  186. package/dist/generated/subgraph.js +792 -32
  187. package/dist/generated/subgraph.js.map +1 -1
  188. package/dist/index.browser.d.ts +47 -96
  189. package/dist/index.browser.js +12 -0
  190. package/dist/index.browser.js.map +1 -1
  191. package/dist/index.cjs +3 -1
  192. package/dist/index.cjs.map +1 -1
  193. package/dist/index.d.ts +0 -2
  194. package/dist/index.js +3 -1
  195. package/dist/index.js.map +1 -1
  196. package/dist/index.node.cjs +14 -3
  197. package/dist/index.node.cjs.map +1 -1
  198. package/dist/index.node.d.ts +203 -87
  199. package/dist/index.node.js +14 -2
  200. package/dist/index.node.js.map +1 -1
  201. package/dist/node.cjs.map +1 -1
  202. package/dist/node.d.ts +42 -2
  203. package/dist/node.js.map +1 -1
  204. package/dist/platform/browser-only.d.ts +5 -8
  205. package/dist/platform/browser-only.test.d.ts +1 -0
  206. package/dist/platform/browser-safe.d.ts +6 -9
  207. package/dist/platform/browser-safe.test.d.ts +1 -0
  208. package/dist/platform/browser.cjs +167 -8
  209. package/dist/platform/browser.cjs.map +1 -1
  210. package/dist/platform/browser.d.ts +235 -18
  211. package/dist/platform/browser.js +179 -29
  212. package/dist/platform/browser.js.map +1 -1
  213. package/dist/platform/browser.test.d.ts +1 -0
  214. package/dist/platform/index.d.ts +11 -5
  215. package/dist/platform/interface.cjs.map +1 -1
  216. package/dist/platform/interface.d.ts +289 -98
  217. package/dist/platform/node.cjs +163 -2
  218. package/dist/platform/node.cjs.map +1 -1
  219. package/dist/platform/node.d.ts +72 -13
  220. package/dist/platform/node.js +175 -21
  221. package/dist/platform/node.js.map +1 -1
  222. package/dist/platform/ports/openpgp-port.cjs +74 -0
  223. package/dist/platform/ports/openpgp-port.cjs.map +1 -0
  224. package/dist/platform/ports/openpgp-port.d.ts +13 -0
  225. package/dist/platform/ports/openpgp-port.js +59 -0
  226. package/dist/platform/ports/openpgp-port.js.map +1 -0
  227. package/dist/platform/ports/pgp-port.cjs +17 -0
  228. package/dist/platform/ports/pgp-port.cjs.map +1 -0
  229. package/dist/platform/ports/pgp-port.d.ts +35 -0
  230. package/dist/platform/ports/pgp-port.js +1 -0
  231. package/dist/platform/ports/pgp-port.js.map +1 -0
  232. package/dist/platform/shared/error-utils.d.ts +2 -4
  233. package/dist/platform/shared/pgp-utils.cjs +2 -2
  234. package/dist/platform/shared/pgp-utils.cjs.map +1 -1
  235. package/dist/platform/shared/pgp-utils.d.ts +3 -5
  236. package/dist/platform/shared/pgp-utils.js +2 -2
  237. package/dist/platform/shared/pgp-utils.js.map +1 -1
  238. package/dist/platform/shared/stream-utils.d.ts +1 -3
  239. package/dist/platform/utils.d.ts +6 -10
  240. package/dist/platform/utils.test.d.ts +1 -0
  241. package/dist/platform.browser.d.ts +9 -4
  242. package/dist/platform.d.ts +11 -5
  243. package/dist/platform.node.d.ts +10 -5
  244. package/dist/server/relayerHandler.cjs +337 -0
  245. package/dist/server/relayerHandler.cjs.map +1 -0
  246. package/dist/server/relayerHandler.d.ts +38 -0
  247. package/dist/server/relayerHandler.js +313 -0
  248. package/dist/server/relayerHandler.js.map +1 -0
  249. package/dist/storage/index.d.ts +56 -10
  250. package/dist/storage/manager.cjs +110 -27
  251. package/dist/storage/manager.cjs.map +1 -1
  252. package/dist/storage/manager.d.ts +121 -30
  253. package/dist/storage/manager.js +113 -37
  254. package/dist/storage/manager.js.map +1 -1
  255. package/dist/storage/providers/callback-storage.cjs +89 -18
  256. package/dist/storage/providers/callback-storage.cjs.map +1 -1
  257. package/dist/storage/providers/callback-storage.d.ts +111 -28
  258. package/dist/storage/providers/callback-storage.js +89 -18
  259. package/dist/storage/providers/callback-storage.js.map +1 -1
  260. package/dist/storage/providers/google-drive.cjs +2 -2
  261. package/dist/storage/providers/google-drive.cjs.map +1 -1
  262. package/dist/storage/providers/google-drive.d.ts +3 -7
  263. package/dist/storage/providers/google-drive.js +4 -7
  264. package/dist/storage/providers/google-drive.js.map +1 -1
  265. package/dist/storage/providers/google-drive.test.d.ts +1 -0
  266. package/dist/storage/providers/ipfs.cjs +5 -5
  267. package/dist/storage/providers/ipfs.cjs.map +1 -1
  268. package/dist/storage/providers/ipfs.d.ts +3 -6
  269. package/dist/storage/providers/ipfs.js +7 -10
  270. package/dist/storage/providers/ipfs.js.map +1 -1
  271. package/dist/storage/providers/pinata.cjs +6 -6
  272. package/dist/storage/providers/pinata.cjs.map +1 -1
  273. package/dist/storage/providers/pinata.d.ts +17 -22
  274. package/dist/storage/providers/pinata.js +8 -11
  275. package/dist/storage/providers/pinata.js.map +1 -1
  276. package/dist/storage/tests/callbackStorage.test.d.ts +1 -0
  277. package/dist/storage/tests/googleDriveStorage.test.d.ts +1 -0
  278. package/dist/storage/tests/ipfsStorage.test.d.ts +1 -0
  279. package/dist/storage/tests/pinataStorage.test.d.ts +1 -0
  280. package/dist/storage/tests/storageManager.test.d.ts +1 -0
  281. package/dist/tests/abi.test.d.ts +1 -0
  282. package/dist/tests/chains-definitions.test.d.ts +1 -0
  283. package/dist/tests/core-encryption.test.d.ts +1 -0
  284. package/dist/tests/core-extended.test.d.ts +1 -0
  285. package/dist/tests/core-generics-coverage.test.d.ts +1 -0
  286. package/dist/tests/coverage-boost.test.d.ts +1 -0
  287. package/dist/tests/crypto-cross-platform-compatibility.test.d.ts +1 -0
  288. package/dist/tests/data-addfile-permissions-schema.test.d.ts +1 -0
  289. package/dist/tests/data-additional-methods.test.d.ts +1 -0
  290. package/dist/tests/data-controller-edge-cases.test.d.ts +1 -0
  291. package/dist/tests/data-ipfs-gateways.test.d.ts +1 -0
  292. package/dist/tests/data-relayer.test.d.ts +1 -0
  293. package/dist/tests/data-schema-validation.test.d.ts +1 -0
  294. package/dist/tests/data-simple-methods.test.d.ts +1 -0
  295. package/dist/tests/data.test.d.ts +1 -0
  296. package/dist/tests/demo-integration.test.d.ts +1 -0
  297. package/dist/tests/demo-trusted-server-integration.test.d.ts +1 -0
  298. package/dist/tests/download-relayer.test.d.ts +1 -0
  299. package/dist/tests/dual-mode-permissions.test.d.ts +1 -0
  300. package/dist/tests/dual-mode-trusted-servers.test.d.ts +1 -0
  301. package/dist/tests/encryption-correct-implementation.test.d.ts +1 -0
  302. package/dist/tests/encryption-coverage.test.d.ts +1 -0
  303. package/dist/tests/encryption-edge-cases.test.d.ts +1 -0
  304. package/dist/tests/encryption-utils-updated.test.d.ts +1 -0
  305. package/dist/tests/errors-coverage.test.d.ts +1 -0
  306. package/dist/tests/errors.test.d.ts +1 -0
  307. package/dist/tests/factories/mockFactory.d.ts +316 -0
  308. package/dist/tests/fakes/FakeStorageManager.d.ts +200 -0
  309. package/dist/tests/fakes/FakeStorageManager.test.d.ts +1 -0
  310. package/dist/tests/fakes/FakeWaitForTransactionEvents.d.ts +170 -0
  311. package/dist/tests/fakes/FakeWaitForTransactionEvents.test.d.ts +1 -0
  312. package/dist/tests/fakes/fake-pgp-port.d.ts +13 -0
  313. package/dist/tests/grantValidation-edge-cases.test.d.ts +1 -0
  314. package/dist/tests/grantValidation-unreachable-branch.test.d.ts +1 -0
  315. package/dist/tests/helper-methods.test.d.ts +1 -0
  316. package/dist/tests/helpers/platformTestHelpers.d.ts +106 -0
  317. package/dist/tests/helpers/typedMocks.d.ts +64 -0
  318. package/dist/tests/index-browser.test.d.ts +1 -0
  319. package/dist/tests/index-node.test.d.ts +1 -0
  320. package/dist/tests/index.test.d.ts +1 -0
  321. package/dist/tests/mocks/platformAdapter.d.ts +12 -0
  322. package/dist/tests/new-permissions-methods.test.d.ts +1 -0
  323. package/dist/tests/no-buffer-browser.test.d.ts +1 -0
  324. package/dist/tests/permissions-grantee.test.d.ts +1 -0
  325. package/dist/tests/permissions-revoke-relayer.test.d.ts +1 -0
  326. package/dist/tests/permissions-schema-validation.test.d.ts +1 -0
  327. package/dist/tests/permissions-server-files.test.d.ts +1 -0
  328. package/dist/tests/permissions-transaction-options.test.d.ts +1 -0
  329. package/dist/tests/permissions-trust-servers.test.d.ts +1 -0
  330. package/dist/tests/permissions.test.d.ts +1 -0
  331. package/dist/tests/personal.test.d.ts +1 -0
  332. package/dist/tests/platform-browser.test.d.ts +1 -0
  333. package/dist/tests/platform-crypto-expanded.test.d.ts +1 -0
  334. package/dist/tests/platform-crypto.test.d.ts +1 -0
  335. package/dist/tests/platform-index.test.d.ts +1 -0
  336. package/dist/tests/platform-node.test.d.ts +1 -0
  337. package/dist/tests/platform-shared-utils.test.d.ts +1 -0
  338. package/dist/tests/platform-updated.test.d.ts +1 -0
  339. package/dist/tests/protocol-additional-methods.test.d.ts +1 -0
  340. package/dist/tests/protocol.test.d.ts +1 -0
  341. package/dist/tests/read-only-mode.test.d.ts +1 -0
  342. package/dist/tests/relayer-integration.test.d.ts +1 -0
  343. package/dist/tests/relayer-unified.test.d.ts +1 -0
  344. package/dist/tests/schemas.test.d.ts +1 -0
  345. package/dist/tests/server-relayer-handler.test.d.ts +1 -0
  346. package/dist/tests/setup.d.ts +7 -0
  347. package/dist/tests/signatureFormatter.test.d.ts +1 -0
  348. package/dist/tests/trusted-server-queries.test.d.ts +1 -0
  349. package/dist/tests/typedDataConverter.test.d.ts +1 -0
  350. package/dist/tests/types-contracts.test.d.ts +1 -0
  351. package/dist/tests/types-data.test.d.ts +1 -0
  352. package/dist/tests/types-external-apis.test.d.ts +1 -0
  353. package/dist/tests/types-generics.test.d.ts +1 -0
  354. package/dist/tests/types-permissions.test.d.ts +1 -0
  355. package/dist/tests/types-upload-params.test.d.ts +1 -0
  356. package/dist/tests/types.test.d.ts +1 -0
  357. package/dist/tests/utils-formatters.test.d.ts +1 -0
  358. package/dist/tests/utils-grantFiles-edge-cases.test.d.ts +1 -0
  359. package/dist/tests/utils-grantFiles-validation.test.d.ts +1 -0
  360. package/dist/tests/utils-grantFiles.test.d.ts +1 -0
  361. package/dist/tests/utils-grantValidation-consolidated.test.d.ts +1 -0
  362. package/dist/tests/utils-grants.test.d.ts +1 -0
  363. package/dist/tests/utils-ipfs-additional.test.d.ts +1 -0
  364. package/dist/tests/utils-ipfs.test.d.ts +4 -0
  365. package/dist/tests/utils-schemaValidation.test.d.ts +1 -0
  366. package/dist/tests/vana.test.d.ts +1 -0
  367. package/dist/tests/wallet-crypto-compatibility.test.d.ts +1 -0
  368. package/dist/types/blockchain.cjs.map +1 -1
  369. package/dist/types/blockchain.d.ts +46 -13
  370. package/dist/types/chains-additional.test.d.ts +1 -0
  371. package/dist/types/chains.cjs.map +1 -1
  372. package/dist/types/chains.d.ts +80 -16
  373. package/dist/types/chains.js.map +1 -1
  374. package/dist/types/config.cjs +10 -0
  375. package/dist/types/config.cjs.map +1 -1
  376. package/dist/types/config.d.ts +236 -242
  377. package/dist/types/config.js +8 -0
  378. package/dist/types/config.js.map +1 -1
  379. package/dist/types/contracts.cjs.map +1 -1
  380. package/dist/types/contracts.d.ts +79 -18
  381. package/dist/types/controller-context.cjs.map +1 -1
  382. package/dist/types/controller-context.d.ts +17 -21
  383. package/dist/types/data.cjs.map +1 -1
  384. package/dist/types/data.d.ts +111 -49
  385. package/dist/types/external-apis.d.ts +10 -12
  386. package/dist/types/generics.cjs.map +1 -1
  387. package/dist/types/generics.d.ts +116 -48
  388. package/dist/types/index.cjs +5 -4
  389. package/dist/types/index.cjs.map +1 -1
  390. package/dist/types/index.d.ts +47 -22
  391. package/dist/types/index.js +9 -2
  392. package/dist/types/index.js.map +1 -1
  393. package/dist/types/operations.cjs +2 -2
  394. package/dist/types/operations.cjs.map +1 -1
  395. package/dist/types/operations.d.ts +178 -32
  396. package/dist/types/operations.js +2 -2
  397. package/dist/types/operations.js.map +1 -1
  398. package/dist/types/options.cjs +17 -0
  399. package/dist/types/options.cjs.map +1 -0
  400. package/dist/types/options.d.ts +213 -0
  401. package/dist/types/options.js +1 -0
  402. package/dist/types/options.js.map +1 -0
  403. package/dist/types/permissions.cjs.map +1 -1
  404. package/dist/types/permissions.d.ts +72 -78
  405. package/dist/types/personal.cjs.map +1 -1
  406. package/dist/types/personal.d.ts +137 -22
  407. package/dist/types/relayer.cjs.map +1 -1
  408. package/dist/types/relayer.d.ts +293 -50
  409. package/dist/types/storage.cjs.map +1 -1
  410. package/dist/types/storage.d.ts +15 -29
  411. package/dist/types/storage.js +2 -5
  412. package/dist/types/storage.js.map +1 -1
  413. package/dist/types/transactionResults.d.ts +16 -18
  414. package/dist/types/utils.cjs.map +1 -1
  415. package/dist/types/utils.d.ts +20 -68
  416. package/dist/types.d.ts +4 -28
  417. package/dist/utils/__tests__/parseTransaction.test.d.ts +1 -0
  418. package/dist/utils/__tests__/pojo-serialization.test.d.ts +1 -0
  419. package/dist/utils/__tests__/signatureCache.test.d.ts +1 -0
  420. package/dist/utils/__tests__/subgraphConsistency.test.d.ts +4 -0
  421. package/dist/utils/__tests__/subgraphPagination.test.d.ts +4 -0
  422. package/dist/utils/__tests__/transaction-edge-cases.test.d.ts +1 -0
  423. package/dist/utils/__tests__/transactionHelpers.test.d.ts +1 -0
  424. package/dist/utils/__tests__/urlResolver.test.d.ts +4 -0
  425. package/dist/utils/blockchain/registry.cjs +2 -2
  426. package/dist/utils/blockchain/registry.cjs.map +1 -1
  427. package/dist/utils/blockchain/registry.d.ts +6 -8
  428. package/dist/utils/blockchain/registry.js +2 -2
  429. package/dist/utils/blockchain/registry.js.map +1 -1
  430. package/dist/utils/blockchain/registry.test.d.ts +1 -0
  431. package/dist/utils/chainQuery.cjs +107 -0
  432. package/dist/utils/chainQuery.cjs.map +1 -0
  433. package/dist/utils/chainQuery.d.ts +31 -0
  434. package/dist/utils/chainQuery.js +82 -0
  435. package/dist/utils/chainQuery.js.map +1 -0
  436. package/dist/utils/crypto-utils.cjs +0 -12
  437. package/dist/utils/crypto-utils.cjs.map +1 -1
  438. package/dist/utils/crypto-utils.d.ts +9 -27
  439. package/dist/utils/crypto-utils.js +0 -11
  440. package/dist/utils/crypto-utils.js.map +1 -1
  441. package/dist/utils/crypto-utils.test.d.ts +1 -0
  442. package/dist/utils/download.cjs +3 -3
  443. package/dist/utils/download.cjs.map +1 -1
  444. package/dist/utils/download.d.ts +13 -14
  445. package/dist/utils/download.js +2 -2
  446. package/dist/utils/download.js.map +1 -1
  447. package/dist/utils/encoding.cjs +1 -1
  448. package/dist/utils/encoding.cjs.map +1 -1
  449. package/dist/utils/encoding.d.ts +4 -6
  450. package/dist/utils/encoding.js +1 -1
  451. package/dist/utils/encoding.js.map +1 -1
  452. package/dist/utils/encoding.test.d.ts +1 -0
  453. package/dist/utils/encryption.cjs +16 -10
  454. package/dist/utils/encryption.cjs.map +1 -1
  455. package/dist/utils/encryption.d.ts +13 -17
  456. package/dist/utils/encryption.js +16 -10
  457. package/dist/utils/encryption.js.map +1 -1
  458. package/dist/utils/formatters.cjs +4 -2
  459. package/dist/utils/formatters.cjs.map +1 -1
  460. package/dist/utils/formatters.d.ts +4 -6
  461. package/dist/utils/formatters.js +4 -2
  462. package/dist/utils/formatters.js.map +1 -1
  463. package/dist/utils/grantFiles.cjs +7 -4
  464. package/dist/utils/grantFiles.cjs.map +1 -1
  465. package/dist/utils/grantFiles.d.ts +16 -30
  466. package/dist/utils/grantFiles.js +7 -4
  467. package/dist/utils/grantFiles.js.map +1 -1
  468. package/dist/utils/grantValidation.cjs +1 -1
  469. package/dist/utils/grantValidation.cjs.map +1 -1
  470. package/dist/utils/grantValidation.d.ts +109 -33
  471. package/dist/utils/grantValidation.js +1 -1
  472. package/dist/utils/grantValidation.js.map +1 -1
  473. package/dist/utils/grants.cjs +1 -1
  474. package/dist/utils/grants.cjs.map +1 -1
  475. package/dist/utils/grants.d.ts +101 -23
  476. package/dist/utils/grants.js +1 -1
  477. package/dist/utils/grants.js.map +1 -1
  478. package/dist/utils/ipfs.cjs +2 -4
  479. package/dist/utils/ipfs.cjs.map +1 -1
  480. package/dist/utils/ipfs.d.ts +8 -10
  481. package/dist/utils/ipfs.js +2 -4
  482. package/dist/utils/ipfs.js.map +1 -1
  483. package/dist/utils/lazy-import.cjs +4 -6
  484. package/dist/utils/lazy-import.cjs.map +1 -1
  485. package/dist/utils/lazy-import.d.ts +33 -10
  486. package/dist/utils/lazy-import.js +4 -6
  487. package/dist/utils/lazy-import.js.map +1 -1
  488. package/dist/utils/multicall.cjs +4 -2
  489. package/dist/utils/multicall.cjs.map +1 -1
  490. package/dist/utils/multicall.d.ts +5 -8
  491. package/dist/utils/multicall.js +4 -2
  492. package/dist/utils/multicall.js.map +1 -1
  493. package/dist/utils/parseTransactionPojo.cjs.map +1 -1
  494. package/dist/utils/parseTransactionPojo.d.ts +4 -10
  495. package/dist/utils/parseTransactionPojo.js.map +1 -1
  496. package/dist/utils/schemaValidation.cjs +5 -5
  497. package/dist/utils/schemaValidation.cjs.map +1 -1
  498. package/dist/utils/schemaValidation.d.ts +8 -12
  499. package/dist/utils/schemaValidation.js +7 -10
  500. package/dist/utils/schemaValidation.js.map +1 -1
  501. package/dist/utils/signatureCache.cjs +9 -4
  502. package/dist/utils/signatureCache.cjs.map +1 -1
  503. package/dist/utils/signatureCache.d.ts +53 -15
  504. package/dist/utils/signatureCache.js +12 -10
  505. package/dist/utils/signatureCache.js.map +1 -1
  506. package/dist/utils/signatureFormatter.cjs +6 -9
  507. package/dist/utils/signatureFormatter.cjs.map +1 -1
  508. package/dist/utils/signatureFormatter.d.ts +2 -5
  509. package/dist/utils/signatureFormatter.js +6 -9
  510. package/dist/utils/signatureFormatter.js.map +1 -1
  511. package/dist/utils/subgraphConsistency.cjs +184 -0
  512. package/dist/utils/subgraphConsistency.cjs.map +1 -0
  513. package/dist/utils/subgraphConsistency.d.ts +65 -0
  514. package/dist/utils/subgraphConsistency.js +155 -0
  515. package/dist/utils/subgraphConsistency.js.map +1 -0
  516. package/dist/utils/subgraphMetaCache.cjs +101 -0
  517. package/dist/utils/subgraphMetaCache.cjs.map +1 -0
  518. package/dist/utils/subgraphMetaCache.d.ts +56 -0
  519. package/dist/utils/subgraphMetaCache.js +76 -0
  520. package/dist/utils/subgraphMetaCache.js.map +1 -0
  521. package/dist/utils/subgraphPagination.cjs +104 -0
  522. package/dist/utils/subgraphPagination.cjs.map +1 -0
  523. package/dist/utils/subgraphPagination.d.ts +78 -0
  524. package/dist/utils/subgraphPagination.js +78 -0
  525. package/dist/utils/subgraphPagination.js.map +1 -0
  526. package/dist/utils/tests/multicall.test.d.ts +1 -0
  527. package/dist/utils/transactionHelpers.cjs.map +1 -1
  528. package/dist/utils/transactionHelpers.d.ts +17 -23
  529. package/dist/utils/transactionHelpers.js.map +1 -1
  530. package/dist/utils/typeGuards.cjs +109 -0
  531. package/dist/utils/typeGuards.cjs.map +1 -0
  532. package/dist/utils/typeGuards.d.ts +138 -0
  533. package/dist/utils/typeGuards.js +74 -0
  534. package/dist/utils/typeGuards.js.map +1 -0
  535. package/dist/utils/typedDataConverter.cjs.map +1 -1
  536. package/dist/utils/typedDataConverter.d.ts +42 -9
  537. package/dist/utils/typedDataConverter.js.map +1 -1
  538. package/dist/utils/urlResolver.cjs +8 -1
  539. package/dist/utils/urlResolver.cjs.map +1 -1
  540. package/dist/utils/urlResolver.d.ts +24 -8
  541. package/dist/utils/urlResolver.js +9 -2
  542. package/dist/utils/urlResolver.js.map +1 -1
  543. package/dist/utils/wallet.cjs +63 -0
  544. package/dist/utils/wallet.cjs.map +1 -0
  545. package/dist/utils/wallet.d.ts +94 -0
  546. package/dist/utils/wallet.js +37 -0
  547. package/dist/utils/wallet.js.map +1 -0
  548. package/dist/utils/withEvents.cjs.map +1 -1
  549. package/dist/utils/withEvents.d.ts +5 -12
  550. package/dist/utils/withEvents.js.map +1 -1
  551. package/package.json +24 -16
  552. package/dist/browser.d.cts +0 -2
  553. package/dist/chains/definitions.d.cts +0 -53
  554. package/dist/chains/index.d.cts +0 -2
  555. package/dist/chains.browser.cjs +0 -37
  556. package/dist/chains.browser.cjs.map +0 -1
  557. package/dist/chains.browser.d.cts +0 -2
  558. package/dist/chains.d.cts +0 -2
  559. package/dist/chains.node.d.cts +0 -2
  560. package/dist/config/addresses.d.cts +0 -401
  561. package/dist/config/chains.d.cts +0 -85
  562. package/dist/config/features.d.cts +0 -64
  563. package/dist/contracts/contractController.d.cts +0 -117
  564. package/dist/controllers/data.d.cts +0 -915
  565. package/dist/controllers/permissions.d.cts +0 -1383
  566. package/dist/controllers/protocol.d.cts +0 -188
  567. package/dist/controllers/schemas.d.cts +0 -260
  568. package/dist/controllers/server.d.cts +0 -230
  569. package/dist/core/apiClient.d.cts +0 -165
  570. package/dist/core/client.d.cts +0 -92
  571. package/dist/core/generics.d.cts +0 -120
  572. package/dist/core.d.cts +0 -493
  573. package/dist/crypto/ecies/__tests__/test-vectors.d.cts +0 -40
  574. package/dist/crypto/ecies/base.d.cts +0 -143
  575. package/dist/crypto/ecies/browser.d.cts +0 -48
  576. package/dist/crypto/ecies/constants.d.cts +0 -122
  577. package/dist/crypto/ecies/index.d.cts +0 -1
  578. package/dist/crypto/ecies/interface.d.cts +0 -176
  579. package/dist/crypto/ecies/node.d.cts +0 -50
  580. package/dist/crypto/ecies/test-vectors/eccrypto-vectors.d.cts +0 -76
  581. package/dist/crypto/ecies/test-vectors/eccrypto-vectors.d.ts +0 -76
  582. package/dist/crypto/ecies/utils.d.cts +0 -67
  583. package/dist/crypto/services/WalletKeyEncryptionService.d.cts +0 -92
  584. package/dist/diagnostics.d.cts +0 -26
  585. package/dist/errors.d.cts +0 -350
  586. package/dist/generated/abi/ComputeEngineImplementation.d.cts +0 -996
  587. package/dist/generated/abi/ComputeInstructionRegistryImplementation.d.cts +0 -545
  588. package/dist/generated/abi/DATFactoryImplementation.d.cts +0 -661
  589. package/dist/generated/abi/DATImplementation.d.cts +0 -693
  590. package/dist/generated/abi/DATPausableImplementation.d.cts +0 -1145
  591. package/dist/generated/abi/DATVotesImplementation.d.cts +0 -1095
  592. package/dist/generated/abi/DLPPerformanceImplementation.d.cts +0 -883
  593. package/dist/generated/abi/DLPRegistryImplementation.d.cts +0 -1123
  594. package/dist/generated/abi/DLPRegistryTreasuryImplementation.d.cts +0 -452
  595. package/dist/generated/abi/DLPRewardDeployerImplementation.d.cts +0 -714
  596. package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.cts +0 -452
  597. package/dist/generated/abi/DLPRewardSwapImplementation.d.cts +0 -706
  598. package/dist/generated/abi/DLPRootImplementation.d.cts +0 -1248
  599. package/dist/generated/abi/DLPTreasuryImplementation.d.cts +0 -452
  600. package/dist/generated/abi/DataLiquidityPoolImplementation.d.cts +0 -737
  601. package/dist/generated/abi/DataPortabilityGranteesImplementation.d.cts +0 -661
  602. package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.cts +0 -989
  603. package/dist/generated/abi/DataPortabilityServersImplementation.d.cts +0 -1086
  604. package/dist/generated/abi/DataRefinerRegistryImplementation.d.cts +0 -737
  605. package/dist/generated/abi/DataRegistryImplementation.d.cts +0 -1014
  606. package/dist/generated/abi/QueryEngineImplementation.d.cts +0 -1001
  607. package/dist/generated/abi/SwapHelperImplementation.d.cts +0 -764
  608. package/dist/generated/abi/TeePoolDedicatedGpuImplementation.d.cts +0 -701
  609. package/dist/generated/abi/TeePoolDedicatedStandardImplementation.d.cts +0 -701
  610. package/dist/generated/abi/TeePoolEphemeralStandardImplementation.d.cts +0 -701
  611. package/dist/generated/abi/TeePoolImplementation.d.cts +0 -993
  612. package/dist/generated/abi/TeePoolPersistentGpuImplementation.d.cts +0 -701
  613. package/dist/generated/abi/TeePoolPersistentStandardImplementation.d.cts +0 -701
  614. package/dist/generated/abi/TeePoolPhalaImplementation.d.cts +0 -993
  615. package/dist/generated/abi/VanaEpochImplementation.d.cts +0 -900
  616. package/dist/generated/abi/VanaPoolEntityImplementation.d.cts +0 -934
  617. package/dist/generated/abi/VanaPoolStakingImplementation.d.cts +0 -693
  618. package/dist/generated/abi/VanaPoolTreasuryImplementation.d.cts +0 -394
  619. package/dist/generated/abi/index.d.cts +0 -26547
  620. package/dist/generated/event-types.d.cts +0 -855
  621. package/dist/generated/eventRegistry.d.cts +0 -18
  622. package/dist/generated/server/server-exports.d.cts +0 -21
  623. package/dist/generated/server/server.d.cts +0 -512
  624. package/dist/generated/subgraph.d.cts +0 -5981
  625. package/dist/index.browser.cjs +0 -151
  626. package/dist/index.browser.cjs.map +0 -1
  627. package/dist/index.browser.d.cts +0 -201
  628. package/dist/index.d.cts +0 -2
  629. package/dist/index.node.d.cts +0 -87
  630. package/dist/node.d.cts +0 -2
  631. package/dist/platform/browser-only.d.cts +0 -25
  632. package/dist/platform/browser-safe.d.cts +0 -32
  633. package/dist/platform/browser.d.cts +0 -74
  634. package/dist/platform/index.d.cts +0 -5
  635. package/dist/platform/interface.d.cts +0 -218
  636. package/dist/platform/node.d.cts +0 -27
  637. package/dist/platform/shared/error-utils.d.cts +0 -25
  638. package/dist/platform/shared/pgp-utils.d.cts +0 -61
  639. package/dist/platform/shared/stream-utils.d.cts +0 -16
  640. package/dist/platform/utils.d.cts +0 -53
  641. package/dist/platform.browser.cjs +0 -41
  642. package/dist/platform.browser.cjs.map +0 -1
  643. package/dist/platform.browser.d.cts +0 -4
  644. package/dist/platform.d.cts +0 -5
  645. package/dist/platform.node.d.cts +0 -5
  646. package/dist/schemas/dataSchema.schema.d.cts +0 -88
  647. package/dist/schemas/dataSchema.schema.d.ts +0 -88
  648. package/dist/schemas/grantFile.schema.d.cts +0 -57
  649. package/dist/schemas/grantFile.schema.d.ts +0 -57
  650. package/dist/server/handler.cjs +0 -101
  651. package/dist/server/handler.cjs.map +0 -1
  652. package/dist/server/handler.d.cts +0 -306
  653. package/dist/server/handler.d.ts +0 -306
  654. package/dist/server/handler.js +0 -77
  655. package/dist/server/handler.js.map +0 -1
  656. package/dist/storage/index.d.cts +0 -10
  657. package/dist/storage/manager.d.cts +0 -150
  658. package/dist/storage/providers/callback-storage.d.cts +0 -100
  659. package/dist/storage/providers/google-drive.d.cts +0 -156
  660. package/dist/storage/providers/ipfs.d.cts +0 -163
  661. package/dist/storage/providers/pinata.d.cts +0 -173
  662. package/dist/types/blockchain.d.cts +0 -52
  663. package/dist/types/chains.d.cts +0 -34
  664. package/dist/types/config.d.cts +0 -726
  665. package/dist/types/contracts.d.cts +0 -68
  666. package/dist/types/controller-context.d.cts +0 -71
  667. package/dist/types/data.d.cts +0 -694
  668. package/dist/types/eccrypto-js.d.d.cts +0 -13
  669. package/dist/types/eccrypto-js.d.d.ts +0 -13
  670. package/dist/types/external-apis.d.cts +0 -186
  671. package/dist/types/generics.d.cts +0 -450
  672. package/dist/types/index.d.cts +0 -22
  673. package/dist/types/operations.d.cts +0 -116
  674. package/dist/types/permissions.d.cts +0 -957
  675. package/dist/types/personal.d.cts +0 -40
  676. package/dist/types/relayer.d.cts +0 -284
  677. package/dist/types/storage.d.cts +0 -131
  678. package/dist/types/transactionResults.d.cts +0 -195
  679. package/dist/types/utils.d.cts +0 -819
  680. package/dist/types.d.cts +0 -54
  681. package/dist/utils/blockchain/registry.d.cts +0 -34
  682. package/dist/utils/crypto-utils.d.cts +0 -118
  683. package/dist/utils/download.d.cts +0 -41
  684. package/dist/utils/encoding.d.cts +0 -54
  685. package/dist/utils/encryption.d.cts +0 -275
  686. package/dist/utils/formatters.d.cts +0 -120
  687. package/dist/utils/grantFiles.d.cts +0 -186
  688. package/dist/utils/grantValidation.d.cts +0 -150
  689. package/dist/utils/grants.d.cts +0 -70
  690. package/dist/utils/ipfs.d.cts +0 -90
  691. package/dist/utils/lazy-import.d.cts +0 -20
  692. package/dist/utils/multicall.d.cts +0 -129
  693. package/dist/utils/parseTransactionPojo.d.cts +0 -37
  694. package/dist/utils/schemaValidation.d.cts +0 -172
  695. package/dist/utils/signatureCache.d.cts +0 -134
  696. package/dist/utils/signatureFormatter.d.cts +0 -39
  697. package/dist/utils/transactionHelpers.d.cts +0 -86
  698. package/dist/utils/typedDataConverter.d.cts +0 -13
  699. package/dist/utils/urlResolver.d.cts +0 -40
  700. package/dist/utils/withEvents.d.cts +0 -63
@@ -1,8 +1,8 @@
1
- import { Hash, Address, WalletClient, Account } from 'viem';
2
- import { VanaChain, VanaChainId } from './chains.js';
3
- import { StorageProvider, StorageUploadResult, StorageListOptions } from './storage.js';
4
- import { PermissionGrantTypedData, GenericTypedData, TrustServerTypedData, UntrustServerTypedData, AddAndTrustServerTypedData, ServerFilesAndPermissionTypedData, GrantFile } from './permissions.js';
5
-
1
+ import type { WalletClient, PublicClient, Account, Address, Chain } from "viem";
2
+ import type { VanaChainId, VanaChain } from "./chains";
3
+ import type { StorageProvider, StorageUploadResult, StorageListOptions } from "./storage";
4
+ import type { RelayerConfig } from "./relayer";
5
+ import type { IOperationStore } from "./operations";
6
6
  /**
7
7
  * Marker interface to indicate that a Vana instance has storage configured.
8
8
  * Used for compile-time type safety to ensure storage-dependent methods
@@ -10,14 +10,16 @@ import { PermissionGrantTypedData, GenericTypedData, TrustServerTypedData, Untru
10
10
  *
11
11
  * @category Configuration
12
12
  */
13
- interface StorageRequiredMarker {
13
+ export interface StorageRequiredMarker {
14
14
  readonly __storageRequired: true;
15
15
  }
16
16
  /**
17
- * Configuration for storage providers used by the SDK.
17
+ * Configures storage providers for SDK file operations.
18
18
  *
19
- * Allows you to configure multiple storage backends (IPFS, Pinata, Google Drive, etc.)
20
- * and specify which one to use by default for file operations.
19
+ * @remarks
20
+ * Supports multiple backends with automatic fallback.
21
+ * IPFS for decentralization, Pinata for reliability,
22
+ * Google Drive for development, custom for flexibility.
21
23
  *
22
24
  * **Provider Selection:**
23
25
  * - IPFS: Decentralized, permanent storage ideal for production
@@ -31,13 +33,13 @@ interface StorageRequiredMarker {
31
33
  * const storage: StorageConfig = {
32
34
  * providers: {
33
35
  * ipfs: new IPFSStorage({ gateway: 'https://gateway.pinata.cloud' }),
34
- * pinata: new PinataStorage({ apiKey: 'your-key', secretKey: 'your-secret' })
36
+ * pinata: new PinataStorage({ apiKey: 'key', secretKey: 'secret' })
35
37
  * },
36
38
  * defaultProvider: 'ipfs'
37
39
  * };
38
40
  * ```
39
41
  */
40
- interface StorageConfig {
42
+ export interface StorageConfig {
41
43
  /**
42
44
  * Map of provider name to storage provider instance.
43
45
  * Common provider names: "ipfs", "pinata", "googledrive", "s3".
@@ -120,7 +122,7 @@ interface StorageConfig {
120
122
  * }
121
123
  * ```
122
124
  */
123
- interface DownloadRelayerCallbacks {
125
+ export interface DownloadRelayerCallbacks {
124
126
  /**
125
127
  * Proxy a download request through your application server
126
128
  *
@@ -129,183 +131,6 @@ interface DownloadRelayerCallbacks {
129
131
  */
130
132
  proxyDownload: (url: string) => Promise<Blob>;
131
133
  }
132
- /**
133
- * Relayer callback functions for handling gasless transactions.
134
- *
135
- * Instead of hardcoding HTTP/REST API calls, users can provide custom callback
136
- * functions to handle transaction relay in any way they choose (HTTP, WebSocket,
137
- * direct blockchain submission, etc.).
138
- *
139
- * @category Configuration
140
- * @example
141
- * ```typescript
142
- * const relayerCallbacks: RelayerCallbacks = {
143
- * async submitPermissionGrant(typedData, signature) {
144
- * // Custom implementation - could be HTTP, WebSocket, etc.
145
- * const response = await fetch('https://my-relayer.com/api/grant', {
146
- * method: 'POST',
147
- * headers: { 'Content-Type': 'application/json' },
148
- * body: JSON.stringify({ typedData, signature })
149
- * });
150
- * const result = await response.json();
151
- * return result.transactionHash;
152
- * },
153
- *
154
- * async submitFileAddition(url, userAddress) {
155
- * // Custom relay implementation
156
- * return await myCustomRelayer.addFile(url, userAddress);
157
- * }
158
- * };
159
- * ```
160
- */
161
- interface RelayerCallbacks {
162
- /**
163
- * Submit a signed permission grant transaction for relay
164
- *
165
- * @param typedData - The EIP-712 typed data that was signed
166
- * @param signature - The user's signature
167
- * @returns Promise resolving to the transaction hash
168
- */
169
- submitPermissionGrant?: (typedData: PermissionGrantTypedData, signature: Hash) => Promise<Hash>;
170
- /**
171
- * Submit a signed permission revocation transaction for relay
172
- *
173
- * @param typedData - The EIP-712 typed data that was signed
174
- * @param signature - The user's signature
175
- * @returns Promise resolving to the transaction hash
176
- */
177
- submitPermissionRevoke?: (typedData: GenericTypedData, signature: Hash) => Promise<Hash>;
178
- /**
179
- * Submit a signed trust server transaction for relay
180
- *
181
- * @param typedData - The EIP-712 typed data that was signed
182
- * @param signature - The user's signature
183
- * @returns Promise resolving to the transaction hash
184
- */
185
- submitTrustServer?: (typedData: TrustServerTypedData, signature: Hash) => Promise<Hash>;
186
- /**
187
- * Submit a signed untrust server transaction for relay
188
- *
189
- * @param typedData - The EIP-712 typed data that was signed
190
- * @param signature - The user's signature
191
- * @returns Promise resolving to the transaction hash
192
- */
193
- submitUntrustServer?: (typedData: UntrustServerTypedData, signature: Hash) => Promise<Hash>;
194
- /**
195
- * Submit a signed add and trust server transaction for relay
196
- *
197
- * @param typedData - The EIP-712 typed data that was signed
198
- * @param signature - The user's signature
199
- * @returns Promise resolving to the transaction hash
200
- */
201
- submitAddAndTrustServer?: (typedData: AddAndTrustServerTypedData, signature: Hash) => Promise<Hash>;
202
- /**
203
- * Submit a signed permission addition transaction for relay
204
- *
205
- * @param typedData - The EIP-712 typed data that was signed
206
- * @param signature - The user's signature
207
- * @returns Promise resolving to the transaction hash
208
- */
209
- submitAddPermission?: (typedData: GenericTypedData, signature: Hash) => Promise<Hash>;
210
- /**
211
- * Submit a signed server files and permissions transaction for relay
212
- *
213
- * @param typedData - The EIP-712 typed data that was signed
214
- * @param signature - The user's signature
215
- * @returns Promise resolving to the transaction hash
216
- */
217
- submitAddServerFilesAndPermissions?: (typedData: ServerFilesAndPermissionTypedData, signature: Hash) => Promise<Hash>;
218
- /**
219
- * Submit a file addition for relay
220
- *
221
- * @deprecated Since v2.0.0 - Use submitFileAdditionComplete() instead for full support.
222
- * Will be removed in v3.0.0.
223
- *
224
- * Migration guide:
225
- * ```typescript
226
- * // Old:
227
- * await submitFileAddition(url, userAddress);
228
- *
229
- * // New:
230
- * await submitFileAdditionComplete({
231
- * url,
232
- * userAddress,
233
- * permissions: [] // Optional
234
- * });
235
- * ```
236
- * @param url - The file URL to register
237
- * @param userAddress - The user's address
238
- * @returns Promise resolving to object with fileId and transactionHash
239
- */
240
- submitFileAddition?: (url: string, userAddress: string) => Promise<{
241
- fileId: number;
242
- transactionHash: Hash;
243
- }>;
244
- /**
245
- * Submit a file addition with permissions for relay
246
- *
247
- * @deprecated Since v2.0.0 - Use submitFileAdditionComplete() instead for full support.
248
- * Will be removed in v3.0.0.
249
- *
250
- * Migration guide:
251
- * ```typescript
252
- * // Old:
253
- * await submitFileAdditionWithPermissions(url, userAddress, permissions);
254
- *
255
- * // New:
256
- * await submitFileAdditionComplete({
257
- * url,
258
- * userAddress,
259
- * permissions
260
- * });
261
- * ```
262
- * @param url - The file URL to register
263
- * @param userAddress - The user's address
264
- * @param permissions - Array of encrypted permissions
265
- * @returns Promise resolving to object with fileId and transactionHash
266
- */
267
- submitFileAdditionWithPermissions?: (url: string, userAddress: string, permissions: Array<{
268
- account: string;
269
- key: string;
270
- }>) => Promise<{
271
- fileId: number;
272
- transactionHash: Hash;
273
- }>;
274
- /**
275
- * Submit a comprehensive file addition with optional schema and permissions for relay
276
- *
277
- * This is the preferred callback that supports all file addition scenarios.
278
- * It can handle files with schemas, permissions, or both.
279
- *
280
- * @param params - Complete parameters for file addition
281
- * @param params.url - The file URL to register
282
- * @param params.userAddress - The user's address (defaults to connected wallet if not specified)
283
- * @param params.permissions - Array of encrypted permissions (empty array if none)
284
- * @param params.schemaId - Schema ID for validation (0 if none)
285
- * @param params.ownerAddress - Optional owner address (defaults to userAddress if not specified)
286
- * @returns Promise resolving to object with fileId and transactionHash
287
- */
288
- submitFileAdditionComplete?: (params: {
289
- url: string;
290
- userAddress: Address;
291
- permissions: Array<{
292
- account: Address;
293
- key: string;
294
- }>;
295
- schemaId: number;
296
- ownerAddress?: Address;
297
- }) => Promise<{
298
- fileId: number;
299
- transactionHash: Hash;
300
- }>;
301
- /**
302
- * Store a grant file for relay (e.g., upload to IPFS)
303
- *
304
- * @param grantData - The grant file data
305
- * @returns Promise resolving to the storage URL
306
- */
307
- storeGrantFile?: (grantData: GrantFile) => Promise<string>;
308
- }
309
134
  /**
310
135
  * Storage callback functions for flexible storage operations.
311
136
  *
@@ -341,7 +166,7 @@ interface RelayerCallbacks {
341
166
  * };
342
167
  * ```
343
168
  */
344
- interface StorageCallbacks {
169
+ export interface StorageCallbacks {
345
170
  /**
346
171
  * Upload a blob to storage
347
172
  *
@@ -388,7 +213,7 @@ interface StorageCallbacks {
388
213
  *
389
214
  * @category Configuration
390
215
  */
391
- interface StorageDownloadOptions {
216
+ export interface StorageDownloadOptions {
392
217
  /** Optional HTTP headers */
393
218
  headers?: Record<string, string>;
394
219
  /** Optional abort signal for cancellation */
@@ -404,7 +229,7 @@ interface StorageDownloadOptions {
404
229
  *
405
230
  * @category Configuration
406
231
  */
407
- interface StorageListResult {
232
+ export interface StorageListResult {
408
233
  /** Array of storage items */
409
234
  items: Array<{
410
235
  /** Item identifier */
@@ -426,12 +251,27 @@ interface StorageListResult {
426
251
  *
427
252
  * @category Configuration
428
253
  */
429
- interface BaseConfig {
254
+ export interface BaseConfig {
430
255
  /**
431
- * Optional relayer callback functions for handling gasless transactions.
432
- * Provides flexible relay mechanism - can use HTTP, WebSocket, or any custom implementation.
256
+ * Optional relayer configuration for handling gasless transactions.
257
+ * Can be a URL string for convenience, or a callback for full control.
258
+ *
259
+ * @example
260
+ * ```typescript
261
+ * // Simple URL (SDK handles transport)
262
+ * relayer: '/api/relay'
263
+ *
264
+ * // Full control with callback
265
+ * relayer: async (request) => {
266
+ * const response = await fetch('/api/relay', {
267
+ * method: 'POST',
268
+ * body: JSON.stringify(request)
269
+ * });
270
+ * return response.json();
271
+ * }
272
+ * ```
433
273
  */
434
- relayerCallbacks?: RelayerCallbacks;
274
+ relayer?: RelayerConfig;
435
275
  /**
436
276
  * Optional download relayer for proxying CORS-restricted downloads.
437
277
  * Provides a proxy mechanism for files stored on servers with CORS restrictions.
@@ -466,18 +306,48 @@ interface BaseConfig {
466
306
  * @example 'https://my-personal-server.example.com'
467
307
  */
468
308
  defaultPersonalServerUrl?: string;
309
+ /**
310
+ * Optional operation store for tracking async relayed transactions.
311
+ * When provided with a relayer, enables resilient transaction management
312
+ * with polling support for pending operations.
313
+ *
314
+ * @example
315
+ * ```typescript
316
+ * const vana = createVana({
317
+ * walletClient,
318
+ * relayer: '/api/relay',
319
+ * operationStore: myOperationStore
320
+ * });
321
+ * ```
322
+ */
323
+ operationStore?: IOperationStore;
469
324
  }
470
325
  /**
471
326
  * Base configuration interface that requires storage for storage-dependent operations
472
327
  *
473
328
  * @category Configuration
474
329
  */
475
- interface BaseConfigWithStorage {
330
+ export interface BaseConfigWithStorage {
476
331
  /**
477
- * Optional relayer callback functions for handling gasless transactions.
478
- * Provides flexible relay mechanism - can use HTTP, WebSocket, or any custom implementation.
332
+ * Optional relayer configuration for handling gasless transactions.
333
+ * Can be a URL string for convenience, or a callback for full control.
334
+ *
335
+ * @example
336
+ * ```typescript
337
+ * // Simple URL (SDK handles transport)
338
+ * relayer: '/api/relay'
339
+ *
340
+ * // Full control with callback
341
+ * relayer: async (request) => {
342
+ * const response = await fetch('/api/relay', {
343
+ * method: 'POST',
344
+ * body: JSON.stringify(request)
345
+ * });
346
+ * return response.json();
347
+ * }
348
+ * ```
479
349
  */
480
- relayerCallbacks?: RelayerCallbacks;
350
+ relayer?: RelayerConfig;
481
351
  /**
482
352
  * Optional download relayer for proxying CORS-restricted downloads.
483
353
  * Provides a proxy mechanism for files stored on servers with CORS restrictions.
@@ -506,13 +376,19 @@ interface BaseConfigWithStorage {
506
376
  * @example 'https://my-personal-server.example.com'
507
377
  */
508
378
  defaultPersonalServerUrl?: string;
379
+ /**
380
+ * Optional operation store for tracking async relayed transactions.
381
+ * When provided with a relayer, enables resilient transaction management
382
+ * with polling support for pending operations.
383
+ */
384
+ operationStore?: IOperationStore;
509
385
  }
510
386
  /**
511
387
  * Configuration with wallet client
512
388
  *
513
389
  * @category Configuration
514
390
  */
515
- interface WalletConfig extends BaseConfig {
391
+ export interface WalletConfig extends BaseConfig {
516
392
  /** The viem WalletClient instance used for signing transactions */
517
393
  walletClient: WalletClient & {
518
394
  chain: VanaChain;
@@ -523,7 +399,7 @@ interface WalletConfig extends BaseConfig {
523
399
  *
524
400
  * @category Configuration
525
401
  */
526
- interface WalletConfigWithStorage extends BaseConfigWithStorage {
402
+ export interface WalletConfigWithStorage extends BaseConfigWithStorage {
527
403
  /** The viem WalletClient instance used for signing transactions */
528
404
  walletClient: WalletClient & {
529
405
  chain: VanaChain;
@@ -534,7 +410,7 @@ interface WalletConfigWithStorage extends BaseConfigWithStorage {
534
410
  *
535
411
  * @category Configuration
536
412
  */
537
- interface ChainConfig extends BaseConfig {
413
+ export interface ChainConfig extends BaseConfig {
538
414
  /**
539
415
  * The chain ID for Vana network.
540
416
  * Supported: 14800 (Vana Mainnet), 14801 (Moksha Testnet), 31337 (Local Development).
@@ -559,7 +435,7 @@ interface ChainConfig extends BaseConfig {
559
435
  *
560
436
  * @category Configuration
561
437
  */
562
- interface ChainConfigWithStorage extends BaseConfigWithStorage {
438
+ export interface ChainConfigWithStorage extends BaseConfigWithStorage {
563
439
  /** The chain ID for Vana network */
564
440
  chainId: VanaChainId;
565
441
  /** RPC URL for the chain (optional, will use default for the chain if not provided) */
@@ -567,56 +443,125 @@ interface ChainConfigWithStorage extends BaseConfigWithStorage {
567
443
  /** Optional account for signing transactions */
568
444
  account?: Account;
569
445
  }
446
+ /**
447
+ * Configuration with wallet client and optional public client
448
+ *
449
+ * @category Configuration
450
+ */
451
+ export interface VanaConfigWithWallet extends BaseConfig {
452
+ /** The viem WalletClient instance used for signing transactions */
453
+ walletClient: WalletClient;
454
+ /** Optional PublicClient for read operations (derived from wallet if not provided) */
455
+ publicClient?: PublicClient;
456
+ }
457
+ /**
458
+ * Configuration for read-only operations with public client and address
459
+ *
460
+ * @category Configuration
461
+ */
462
+ export interface VanaConfigReadOnly extends BaseConfig {
463
+ /** The viem PublicClient instance for read operations */
464
+ publicClient: PublicClient;
465
+ /** The user's address for read operations */
466
+ address: Address;
467
+ }
468
+ /**
469
+ * Configuration for minimal read-only operations with just an address
470
+ *
471
+ * @category Configuration
472
+ */
473
+ export interface VanaConfigAddressOnly extends BaseConfig {
474
+ /** The user's address for read operations */
475
+ address: Address;
476
+ /** Optional chain configuration (will use default if not provided) */
477
+ chain?: Chain;
478
+ }
479
+ /**
480
+ * Configuration with wallet client and optional public client that requires storage
481
+ *
482
+ * @category Configuration
483
+ */
484
+ export interface VanaConfigWithWalletWithStorage extends BaseConfigWithStorage {
485
+ /** The viem WalletClient instance used for signing transactions */
486
+ walletClient: WalletClient;
487
+ /** Optional PublicClient for read operations (derived from wallet if not provided) */
488
+ publicClient?: PublicClient;
489
+ }
490
+ /**
491
+ * Configuration for read-only operations with public client and address that requires storage
492
+ *
493
+ * @category Configuration
494
+ */
495
+ export interface VanaConfigReadOnlyWithStorage extends BaseConfigWithStorage {
496
+ /** The viem PublicClient instance for read operations */
497
+ publicClient: PublicClient;
498
+ /** The user's address for read operations */
499
+ address: Address;
500
+ }
501
+ /**
502
+ * Configuration for minimal read-only operations with just an address that requires storage
503
+ *
504
+ * @category Configuration
505
+ */
506
+ export interface VanaConfigAddressOnlyWithStorage extends BaseConfigWithStorage {
507
+ /** The user's address for read operations */
508
+ address: Address;
509
+ /** Optional chain configuration (will use default if not provided) */
510
+ chain?: Chain;
511
+ }
570
512
  /**
571
513
  * Main configuration interface for initializing the Vana SDK.
572
514
  *
573
- * You can configure the SDK using either a pre-configured wallet client
574
- * (WalletConfig) or by providing chain and account details (ChainConfig).
575
- * Both approaches support optional storage providers and relayer configuration.
515
+ * The SDK supports three initialization modes:
516
+ * 1. Full mode with wallet client for signing transactions
517
+ * 2. Read-only mode with public client and address for read operations
518
+ * 3. Minimal mode with just an address and optional chain
576
519
  *
577
520
  * @category Configuration
578
521
  * @example
579
522
  * ```typescript
580
- * // Using WalletConfig with pre-configured client
581
- * const config: VanaConfig = {
523
+ * // Mode 1: Full configuration with wallet client
524
+ * const configWithWallet: VanaConfig = {
582
525
  * walletClient: createWalletClient({
583
526
  * account: privateKeyToAccount('0x...'),
584
527
  * chain: moksha,
585
528
  * transport: http()
586
529
  * }),
587
- * relayerCallbacks: {
588
- * submitPermissionGrant: async (typedData, signature) => {
589
- * // Custom relay implementation
590
- * return await myRelayer.submit(typedData, signature);
591
- * }
592
- * }
530
+ * publicClient: createPublicClient({
531
+ * chain: moksha,
532
+ * transport: http()
533
+ * })
593
534
  * };
594
535
  *
595
- * // Using ChainConfig with chain ID and account
596
- * const config: VanaConfig = {
597
- * chainId: 14800,
598
- * account: privateKeyToAccount('0x...'),
599
- * relayerCallbacks: {
600
- * submitPermissionGrant: async (typedData, signature) => {
601
- * // Custom relay implementation
602
- * return await myRelayer.submit(typedData, signature);
603
- * }
604
- * }
536
+ * // Mode 2: Read-only with public client and address
537
+ * const configReadOnly: VanaConfig = {
538
+ * publicClient: createPublicClient({
539
+ * chain: moksha,
540
+ * transport: http()
541
+ * }),
542
+ * address: '0x1234...'
543
+ * };
544
+ *
545
+ * // Mode 3: Minimal with just address
546
+ * const configMinimal: VanaConfig = {
547
+ * address: '0x1234...',
548
+ * chain: moksha // optional
605
549
  * };
606
550
  * ```
607
551
  */
608
- type VanaConfig = WalletConfig | ChainConfig;
552
+ export type VanaConfig = VanaConfigWithWallet | VanaConfigReadOnly | VanaConfigAddressOnly | WalletConfig | ChainConfig;
609
553
  /**
610
554
  * Configuration interface for Vana SDK that requires storage providers.
611
555
  *
612
556
  * Use this type when you need to ensure storage is configured for operations
613
557
  * like file uploads, permission grants without pre-stored URLs, or schema creation.
558
+ * Supports all three initialization modes with required storage.
614
559
  *
615
560
  * @category Configuration
616
561
  * @example
617
562
  * ```typescript
618
- * // Configuration that guarantees storage availability
619
- * const config: VanaConfigWithStorage = {
563
+ * // Full configuration with wallet client and storage
564
+ * const configWithWallet: VanaConfigWithStorage = {
620
565
  * walletClient: createWalletClient({
621
566
  * account: privateKeyToAccount('0x...'),
622
567
  * chain: moksha,
@@ -629,15 +574,30 @@ type VanaConfig = WalletConfig | ChainConfig;
629
574
  * defaultProvider: 'ipfs'
630
575
  * }
631
576
  * };
577
+ *
578
+ * // Read-only configuration with storage
579
+ * const configReadOnly: VanaConfigWithStorage = {
580
+ * publicClient: createPublicClient({
581
+ * chain: moksha,
582
+ * transport: http()
583
+ * }),
584
+ * address: '0x1234...',
585
+ * storage: {
586
+ * providers: {
587
+ * ipfs: new IPFSStorage({ gateway: 'https://gateway.pinata.cloud' })
588
+ * },
589
+ * defaultProvider: 'ipfs'
590
+ * }
591
+ * };
632
592
  * ```
633
593
  */
634
- type VanaConfigWithStorage = WalletConfigWithStorage | ChainConfigWithStorage;
594
+ export type VanaConfigWithStorage = VanaConfigWithWalletWithStorage | VanaConfigReadOnlyWithStorage | VanaConfigAddressOnlyWithStorage | WalletConfigWithStorage | ChainConfigWithStorage;
635
595
  /**
636
596
  * Runtime configuration information
637
597
  *
638
598
  * @category Configuration
639
599
  */
640
- interface RuntimeConfig {
600
+ export interface RuntimeConfig {
641
601
  /** Current chain ID */
642
602
  chainId: VanaChainId;
643
603
  /** Current chain name */
@@ -646,24 +606,50 @@ interface RuntimeConfig {
646
606
  storageProviders: string[];
647
607
  /** Default storage provider */
648
608
  defaultStorageProvider?: string;
649
- /** Current relayer callbacks configuration */
650
- relayerCallbacks?: RelayerCallbacks;
609
+ /** Current relayer configuration */
610
+ relayerConfig?: RelayerConfig;
651
611
  }
652
612
  /**
653
- * Validates whether a configuration object is a WalletConfig.
613
+ * Validates whether a configuration object has a wallet client (any wallet-based config).
654
614
  *
655
615
  * @param config - The configuration object to check
656
- * @returns True if the config is a WalletConfig (contains walletClient)
616
+ * @returns True if the config contains a walletClient
657
617
  * @example
658
618
  * ```typescript
659
619
  * if (isWalletConfig(config)) {
660
620
  * console.log('Using wallet client:', config.walletClient.account?.address);
661
621
  * } else {
662
- * console.log('Using chain config with chain ID:', config.chainId);
622
+ * console.log('Read-only or chain config');
623
+ * }
624
+ * ```
625
+ */
626
+ export declare function isWalletConfig(config: VanaConfig): config is VanaConfigWithWallet | WalletConfig;
627
+ /**
628
+ * Validates whether a configuration object is a read-only config with public client.
629
+ *
630
+ * @param config - The configuration object to check
631
+ * @returns True if the config has publicClient and address but no walletClient
632
+ * @example
633
+ * ```typescript
634
+ * if (isReadOnlyConfig(config)) {
635
+ * console.log('Read-only mode with address:', config.address);
663
636
  * }
664
637
  * ```
665
638
  */
666
- declare function isWalletConfig(config: VanaConfig): config is WalletConfig;
639
+ export declare function isReadOnlyConfig(config: VanaConfig): config is VanaConfigReadOnly;
640
+ /**
641
+ * Validates whether a configuration object is an address-only config.
642
+ *
643
+ * @param config - The configuration object to check
644
+ * @returns True if the config has only address (and optionally chain) but no clients
645
+ * @example
646
+ * ```typescript
647
+ * if (isAddressOnlyConfig(config)) {
648
+ * console.log('Address-only mode:', config.address);
649
+ * }
650
+ * ```
651
+ */
652
+ export declare function isAddressOnlyConfig(config: VanaConfig): config is VanaConfigAddressOnly;
667
653
  /**
668
654
  * Validates whether a configuration object is a ChainConfig.
669
655
  *
@@ -679,7 +665,7 @@ declare function isWalletConfig(config: VanaConfig): config is WalletConfig;
679
665
  * }
680
666
  * ```
681
667
  */
682
- declare function isChainConfig(config: VanaConfig): config is ChainConfig;
668
+ export declare function isChainConfig(config: VanaConfig): config is ChainConfig;
683
669
  /**
684
670
  * Validates whether a configuration has required storage providers.
685
671
  *
@@ -695,13 +681,13 @@ declare function isChainConfig(config: VanaConfig): config is ChainConfig;
695
681
  * }
696
682
  * ```
697
683
  */
698
- declare function hasStorageConfig(config: VanaConfig): config is VanaConfigWithStorage;
684
+ export declare function hasStorageConfig(config: VanaConfig): config is VanaConfigWithStorage;
699
685
  /**
700
686
  * Configuration validation options
701
687
  *
702
688
  * @category Configuration
703
689
  */
704
- interface ConfigValidationOptions {
690
+ export interface ConfigValidationOptions {
705
691
  /** Whether to validate storage providers */
706
692
  validateStorage?: boolean;
707
693
  /** Whether to validate relayer URL */
@@ -714,7 +700,7 @@ interface ConfigValidationOptions {
714
700
  *
715
701
  * @category Configuration
716
702
  */
717
- interface ConfigValidationResult {
703
+ export interface ConfigValidationResult {
718
704
  /** Whether the configuration is valid */
719
705
  valid: boolean;
720
706
  /** List of validation errors */
@@ -722,5 +708,13 @@ interface ConfigValidationResult {
722
708
  /** List of validation warnings */
723
709
  warnings: string[];
724
710
  }
725
-
726
- export { type BaseConfig, type BaseConfigWithStorage, type ChainConfig, type ChainConfigWithStorage, type ConfigValidationOptions, type ConfigValidationResult, type DownloadRelayerCallbacks, type RelayerCallbacks, type RuntimeConfig, type StorageCallbacks, type StorageConfig, type StorageDownloadOptions, type StorageListResult, type StorageRequiredMarker, type VanaConfig, type VanaConfigWithStorage, type WalletConfig, type WalletConfigWithStorage, hasStorageConfig, isChainConfig, isWalletConfig };
711
+ /**
712
+ * Marker interface to enforce the presence of operationStore at compile time.
713
+ * This interface is used to ensure that certain operations requiring a relayer
714
+ * can only be called when the SDK has been properly configured with an operation store.
715
+ *
716
+ * @category Configuration
717
+ */
718
+ export interface RelayerRequiredMarker {
719
+ readonly __relayerConfigured: true;
720
+ }