@opendatalabs/vana-sdk 0.1.0-alpha.d7fc764 → 0.1.0-alpha.dba79a3
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.
- package/dist/__tests__/waitForTransactionEvents.test.d.ts +1 -0
- package/dist/browser.cjs.map +1 -1
- package/dist/browser.d.ts +36 -2
- package/dist/browser.js.map +1 -1
- package/dist/chains/definitions.cjs +9 -6
- package/dist/chains/definitions.cjs.map +1 -1
- package/dist/chains/definitions.d.ts +9 -11
- package/dist/chains/definitions.js +9 -6
- package/dist/chains/definitions.js.map +1 -1
- package/dist/chains/index.cjs.map +1 -1
- package/dist/chains/index.d.ts +34 -2
- package/dist/chains/index.js.map +1 -1
- package/dist/chains.browser.d.ts +8 -2
- package/dist/chains.d.ts +8 -2
- package/dist/chains.node.d.ts +8 -2
- package/dist/config/addresses.d.ts +8 -24
- package/dist/config/chains.cjs.map +1 -1
- package/dist/config/chains.d.ts +108 -13
- package/dist/config/chains.js.map +1 -1
- package/dist/config/default-services.cjs +60 -0
- package/dist/config/default-services.cjs.map +1 -0
- package/dist/config/default-services.d.ts +46 -0
- package/dist/config/default-services.js +33 -0
- package/dist/config/default-services.js.map +1 -0
- package/dist/config/default-services.test.d.ts +1 -0
- package/dist/config/features.d.ts +1 -3
- package/dist/config/tests/addresses.test.d.ts +1 -0
- package/dist/contracts/contractController.cjs +3 -3
- package/dist/contracts/contractController.cjs.map +1 -1
- package/dist/contracts/contractController.d.ts +77 -38
- package/dist/contracts/contractController.js +4 -7
- package/dist/contracts/contractController.js.map +1 -1
- package/dist/contracts/tests/contractController.test.d.ts +1 -0
- package/dist/controllers/__tests__/data-consistency-integration.test.d.ts +7 -0
- package/dist/controllers/__tests__/operations.processQueue.test.d.ts +1 -0
- package/dist/controllers/__tests__/schemas-edge-cases.test.d.ts +1 -0
- package/dist/controllers/base.cjs +116 -0
- package/dist/controllers/base.cjs.map +1 -0
- package/dist/controllers/base.d.ts +94 -0
- package/dist/controllers/base.js +92 -0
- package/dist/controllers/base.js.map +1 -0
- package/dist/controllers/data-error-handling.test.d.ts +1 -0
- package/dist/controllers/data.cjs +827 -439
- package/dist/controllers/data.cjs.map +1 -1
- package/dist/controllers/data.d.ts +373 -254
- package/dist/controllers/data.js +840 -442
- package/dist/controllers/data.js.map +1 -1
- package/dist/controllers/operations.cjs +430 -0
- package/dist/controllers/operations.cjs.map +1 -0
- package/dist/controllers/operations.d.ts +229 -0
- package/dist/controllers/operations.js +406 -0
- package/dist/controllers/operations.js.map +1 -0
- package/dist/controllers/permissions.cjs +929 -483
- package/dist/controllers/permissions.cjs.map +1 -1
- package/dist/controllers/permissions.d.ts +1318 -25
- package/dist/controllers/permissions.js +929 -483
- package/dist/controllers/permissions.js.map +1 -1
- package/dist/controllers/protocol.cjs +15 -11
- package/dist/controllers/protocol.cjs.map +1 -1
- package/dist/controllers/protocol.d.ts +34 -63
- package/dist/controllers/protocol.js +15 -14
- package/dist/controllers/protocol.js.map +1 -1
- package/dist/controllers/schemas.cjs +100 -75
- package/dist/controllers/schemas.cjs.map +1 -1
- package/dist/controllers/schemas.d.ts +56 -74
- package/dist/controllers/schemas.js +100 -75
- package/dist/controllers/schemas.js.map +1 -1
- package/dist/controllers/server-additional.test.d.ts +1 -0
- package/dist/controllers/server.cjs +32 -25
- package/dist/controllers/server.cjs.map +1 -1
- package/dist/controllers/server.d.ts +53 -71
- package/dist/controllers/server.js +32 -25
- package/dist/controllers/server.js.map +1 -1
- package/dist/core/__tests__/health.test.d.ts +1 -0
- package/dist/core/__tests__/inMemoryNonceManager.test.d.ts +1 -0
- package/dist/core/__tests__/nonceManager.test.d.ts +1 -0
- package/dist/core/__tests__/pollingManager.test.d.ts +4 -0
- package/dist/core/apiClient.cjs +68 -15
- package/dist/core/apiClient.cjs.map +1 -1
- package/dist/core/apiClient.d.ts +137 -16
- package/dist/core/apiClient.js +72 -22
- package/dist/core/apiClient.js.map +1 -1
- package/dist/core/client.cjs +7 -7
- package/dist/core/client.cjs.map +1 -1
- package/dist/core/client.d.ts +6 -9
- package/dist/core/client.js +7 -7
- package/dist/core/client.js.map +1 -1
- package/dist/core/core.test.d.ts +1 -0
- package/dist/core/generics.cjs +41 -12
- package/dist/core/generics.cjs.map +1 -1
- package/dist/core/generics.d.ts +104 -19
- package/dist/core/generics.js +52 -32
- package/dist/core/generics.js.map +1 -1
- package/dist/core/health.cjs +289 -0
- package/dist/core/health.cjs.map +1 -0
- package/dist/core/health.d.ts +143 -0
- package/dist/core/health.js +265 -0
- package/dist/core/health.js.map +1 -0
- package/dist/core/inMemoryNonceManager.cjs +138 -0
- package/dist/core/inMemoryNonceManager.cjs.map +1 -0
- package/dist/core/inMemoryNonceManager.d.ts +69 -0
- package/dist/core/inMemoryNonceManager.js +114 -0
- package/dist/core/inMemoryNonceManager.js.map +1 -0
- package/dist/core/nonceManager.cjs +304 -0
- package/dist/core/nonceManager.cjs.map +1 -0
- package/dist/core/nonceManager.d.ts +116 -0
- package/dist/core/nonceManager.js +280 -0
- package/dist/core/nonceManager.js.map +1 -0
- package/dist/core/pollingManager.cjs +292 -0
- package/dist/core/pollingManager.cjs.map +1 -0
- package/dist/core/pollingManager.d.ts +120 -0
- package/dist/core/pollingManager.js +268 -0
- package/dist/core/pollingManager.js.map +1 -0
- package/dist/core/tests/apiClient.test.d.ts +1 -0
- package/dist/core/tests/client.test.d.ts +1 -0
- package/dist/core/tests/generics.test.d.ts +1 -0
- package/dist/core.cjs +152 -61
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +50 -67
- package/dist/core.js +164 -86
- package/dist/core.js.map +1 -1
- package/dist/crypto/ecies/__tests__/base.test.d.ts +4 -0
- package/dist/crypto/ecies/__tests__/compatibility.test.d.ts +8 -0
- package/dist/crypto/ecies/__tests__/constants.test.d.ts +4 -0
- package/dist/crypto/ecies/__tests__/native-parity.test.d.ts +7 -0
- package/dist/crypto/ecies/__tests__/normalization.test.d.ts +1 -0
- package/dist/crypto/ecies/__tests__/test-vectors.d.ts +2 -4
- package/dist/crypto/ecies/base.cjs +20 -6
- package/dist/crypto/ecies/base.cjs.map +1 -1
- package/dist/crypto/ecies/base.d.ts +2 -5
- package/dist/crypto/ecies/base.js +28 -18
- package/dist/crypto/ecies/base.js.map +1 -1
- package/dist/crypto/ecies/browser.cjs +2 -1
- package/dist/crypto/ecies/browser.cjs.map +1 -1
- package/dist/crypto/ecies/browser.d.ts +2 -7
- package/dist/crypto/ecies/browser.js +2 -1
- package/dist/crypto/ecies/browser.js.map +1 -1
- package/dist/crypto/ecies/constants.d.ts +7 -9
- package/dist/crypto/ecies/index.d.ts +8 -1
- package/dist/crypto/ecies/interface.cjs +4 -5
- package/dist/crypto/ecies/interface.cjs.map +1 -1
- package/dist/crypto/ecies/interface.d.ts +9 -11
- package/dist/crypto/ecies/interface.js +4 -5
- package/dist/crypto/ecies/interface.js.map +1 -1
- package/dist/crypto/ecies/node.cjs +3 -2
- package/dist/crypto/ecies/node.cjs.map +1 -1
- package/dist/crypto/ecies/node.d.ts +2 -7
- package/dist/crypto/ecies/node.js +11 -16
- package/dist/crypto/ecies/node.js.map +1 -1
- package/dist/crypto/ecies/test-vectors/eccrypto-vectors.json +72 -0
- package/dist/crypto/ecies/utils.cjs +2 -41
- package/dist/crypto/ecies/utils.cjs.map +1 -1
- package/dist/crypto/ecies/utils.d.ts +3 -40
- package/dist/crypto/ecies/utils.js +1 -35
- package/dist/crypto/ecies/utils.js.map +1 -1
- package/dist/crypto/services/WalletKeyEncryptionService.cjs +2 -2
- package/dist/crypto/services/WalletKeyEncryptionService.cjs.map +1 -1
- package/dist/crypto/services/WalletKeyEncryptionService.d.ts +3 -7
- package/dist/crypto/services/WalletKeyEncryptionService.js +5 -9
- package/dist/crypto/services/WalletKeyEncryptionService.js.map +1 -1
- package/dist/crypto/services/WalletKeyEncryptionService.test.d.ts +1 -0
- package/dist/diagnostics.d.ts +1 -3
- package/dist/diagnostics.test.d.ts +1 -0
- package/dist/errors.cjs +45 -0
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.ts +117 -15
- package/dist/errors.js +46 -6
- package/dist/errors.js.map +1 -1
- package/dist/generated/abi/ComputeEngineImplementation.d.ts +2 -3
- package/dist/generated/abi/ComputeInstructionRegistryImplementation.d.ts +2 -3
- package/dist/generated/abi/DATFactoryImplementation.d.ts +2 -3
- package/dist/generated/abi/DATImplementation.d.ts +2 -3
- package/dist/generated/abi/DATPausableImplementation.d.ts +2 -3
- package/dist/generated/abi/DATVotesImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPPerformanceImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRegistryImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRegistryTreasuryImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRewardDeployerImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRewardSwapImplementation.d.ts +2 -3
- package/dist/generated/abi/DLPRootImplementation.d.ts +1 -3
- package/dist/generated/abi/DLPTreasuryImplementation.d.ts +2 -3
- package/dist/generated/abi/DataLiquidityPoolImplementation.d.ts +1 -3
- package/dist/generated/abi/DataPortabilityGranteesImplementation.d.ts +2 -3
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.ts +2 -3
- package/dist/generated/abi/DataPortabilityServersImplementation.d.ts +2 -3
- package/dist/generated/abi/DataRefinerRegistryImplementation.d.ts +2 -3
- package/dist/generated/abi/DataRegistryImplementation.cjs +13 -0
- package/dist/generated/abi/DataRegistryImplementation.cjs.map +1 -1
- package/dist/generated/abi/DataRegistryImplementation.d.ts +12 -3
- package/dist/generated/abi/DataRegistryImplementation.js +13 -0
- package/dist/generated/abi/DataRegistryImplementation.js.map +1 -1
- package/dist/generated/abi/QueryEngineImplementation.d.ts +2 -3
- package/dist/generated/abi/SwapHelperImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolDedicatedGpuImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolDedicatedStandardImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolEphemeralStandardImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolPersistentGpuImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolPersistentStandardImplementation.d.ts +2 -3
- package/dist/generated/abi/TeePoolPhalaImplementation.d.ts +2 -3
- package/dist/generated/abi/VanaEpochImplementation.d.ts +2 -3
- package/dist/generated/abi/VanaPoolEntityImplementation.d.ts +2 -3
- package/dist/generated/abi/VanaPoolStakingImplementation.d.ts +2 -3
- package/dist/generated/abi/VanaPoolTreasuryImplementation.d.ts +2 -3
- package/dist/generated/abi/index.cjs +42 -0
- package/dist/generated/abi/index.cjs.map +1 -1
- package/dist/generated/abi/index.d.ts +47 -18
- package/dist/generated/abi/index.js +21 -0
- package/dist/generated/abi/index.js.map +1 -1
- package/dist/generated/event-types.cjs +17 -0
- package/dist/generated/event-types.cjs.map +1 -0
- package/dist/generated/event-types.d.ts +854 -0
- package/dist/generated/event-types.js +1 -0
- package/dist/generated/event-types.js.map +1 -0
- package/dist/generated/eventRegistry.cjs +3351 -0
- package/dist/generated/eventRegistry.cjs.map +1 -0
- package/dist/generated/eventRegistry.d.ts +14 -0
- package/dist/generated/eventRegistry.js +3326 -0
- package/dist/generated/eventRegistry.js.map +1 -0
- package/dist/generated/server/server-exports.d.ts +19 -21
- package/dist/generated/server/server.cjs.map +1 -1
- package/dist/generated/server/server.d.ts +113 -87
- package/dist/generated/subgraph.cjs +797 -32
- package/dist/generated/subgraph.cjs.map +1 -1
- package/dist/generated/subgraph.d.ts +464 -332
- package/dist/generated/subgraph.js +792 -32
- package/dist/generated/subgraph.js.map +1 -1
- package/dist/index.browser.d.ts +49 -73
- package/dist/index.browser.js +14 -0
- package/dist/index.browser.js.map +1 -1
- package/dist/index.cjs +3 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/index.node.cjs +31 -3
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.d.ts +223 -64
- package/dist/index.node.js +28 -2
- package/dist/index.node.js.map +1 -1
- package/dist/lib/__tests__/redisAtomicStore.test.d.ts +1 -0
- package/dist/lib/redisAtomicStore.cjs +201 -0
- package/dist/lib/redisAtomicStore.cjs.map +1 -0
- package/dist/lib/redisAtomicStore.d.ts +120 -0
- package/dist/lib/redisAtomicStore.js +177 -0
- package/dist/lib/redisAtomicStore.js.map +1 -0
- package/dist/node.cjs.map +1 -1
- package/dist/node.d.ts +42 -2
- package/dist/node.js.map +1 -1
- package/dist/platform/browser-only.d.ts +5 -8
- package/dist/platform/browser-only.test.d.ts +1 -0
- package/dist/platform/browser-safe.d.ts +6 -9
- package/dist/platform/browser-safe.test.d.ts +1 -0
- package/dist/platform/browser.cjs +167 -8
- package/dist/platform/browser.cjs.map +1 -1
- package/dist/platform/browser.d.ts +235 -18
- package/dist/platform/browser.js +179 -29
- package/dist/platform/browser.js.map +1 -1
- package/dist/platform/browser.test.d.ts +1 -0
- package/dist/platform/index.d.ts +11 -5
- package/dist/platform/interface.cjs.map +1 -1
- package/dist/platform/interface.d.ts +289 -98
- package/dist/platform/node.cjs +163 -2
- package/dist/platform/node.cjs.map +1 -1
- package/dist/platform/node.d.ts +72 -13
- package/dist/platform/node.js +175 -21
- package/dist/platform/node.js.map +1 -1
- package/dist/platform/ports/openpgp-port.cjs +74 -0
- package/dist/platform/ports/openpgp-port.cjs.map +1 -0
- package/dist/platform/ports/openpgp-port.d.ts +13 -0
- package/dist/platform/ports/openpgp-port.js +59 -0
- package/dist/platform/ports/openpgp-port.js.map +1 -0
- package/dist/platform/ports/pgp-port.cjs +17 -0
- package/dist/platform/ports/pgp-port.cjs.map +1 -0
- package/dist/platform/ports/pgp-port.d.ts +35 -0
- package/dist/platform/ports/pgp-port.js +1 -0
- package/dist/platform/ports/pgp-port.js.map +1 -0
- package/dist/platform/shared/error-utils.d.ts +2 -4
- package/dist/platform/shared/pgp-utils.cjs +2 -2
- package/dist/platform/shared/pgp-utils.cjs.map +1 -1
- package/dist/platform/shared/pgp-utils.d.ts +3 -5
- package/dist/platform/shared/pgp-utils.js +2 -2
- package/dist/platform/shared/pgp-utils.js.map +1 -1
- package/dist/platform/shared/stream-utils.d.ts +1 -3
- package/dist/platform/utils.d.ts +6 -10
- package/dist/platform/utils.test.d.ts +1 -0
- package/dist/platform.browser.d.ts +9 -4
- package/dist/platform.d.ts +11 -5
- package/dist/platform.node.d.ts +10 -5
- package/dist/schemas/dataSchema.schema.json +53 -0
- package/dist/schemas/grantFile.schema.json +43 -0
- package/dist/server/relayerHandler.cjs +420 -0
- package/dist/server/relayerHandler.cjs.map +1 -0
- package/dist/server/relayerHandler.d.ts +69 -0
- package/dist/server/relayerHandler.js +396 -0
- package/dist/server/relayerHandler.js.map +1 -0
- package/dist/storage/index.d.ts +56 -10
- package/dist/storage/manager.cjs +114 -31
- package/dist/storage/manager.cjs.map +1 -1
- package/dist/storage/manager.d.ts +121 -30
- package/dist/storage/manager.js +113 -37
- package/dist/storage/manager.js.map +1 -1
- package/dist/storage/providers/callback-storage.cjs +89 -18
- package/dist/storage/providers/callback-storage.cjs.map +1 -1
- package/dist/storage/providers/callback-storage.d.ts +111 -28
- package/dist/storage/providers/callback-storage.js +89 -18
- package/dist/storage/providers/callback-storage.js.map +1 -1
- package/dist/storage/providers/google-drive.cjs +2 -2
- package/dist/storage/providers/google-drive.cjs.map +1 -1
- package/dist/storage/providers/google-drive.d.ts +3 -7
- package/dist/storage/providers/google-drive.js +4 -7
- package/dist/storage/providers/google-drive.js.map +1 -1
- package/dist/storage/providers/google-drive.test.d.ts +1 -0
- package/dist/storage/providers/ipfs.cjs +5 -5
- package/dist/storage/providers/ipfs.cjs.map +1 -1
- package/dist/storage/providers/ipfs.d.ts +3 -6
- package/dist/storage/providers/ipfs.js +7 -10
- package/dist/storage/providers/ipfs.js.map +1 -1
- package/dist/storage/providers/pinata.cjs +6 -6
- package/dist/storage/providers/pinata.cjs.map +1 -1
- package/dist/storage/providers/pinata.d.ts +17 -22
- package/dist/storage/providers/pinata.js +8 -11
- package/dist/storage/providers/pinata.js.map +1 -1
- package/dist/storage/tests/callbackStorage.test.d.ts +1 -0
- package/dist/storage/tests/googleDriveStorage.test.d.ts +1 -0
- package/dist/storage/tests/ipfsStorage.test.d.ts +1 -0
- package/dist/storage/tests/pinataStorage.test.d.ts +1 -0
- package/dist/storage/tests/storageManager.test.d.ts +1 -0
- package/dist/tests/abi.test.d.ts +1 -0
- package/dist/tests/chains-definitions.test.d.ts +1 -0
- package/dist/tests/core-encryption.test.d.ts +1 -0
- package/dist/tests/core-extended.test.d.ts +1 -0
- package/dist/tests/core-generics-coverage.test.d.ts +1 -0
- package/dist/tests/coverage-boost.test.d.ts +1 -0
- package/dist/tests/crypto-cross-platform-compatibility.test.d.ts +1 -0
- package/dist/tests/data-addfile-permissions-schema.test.d.ts +1 -0
- package/dist/tests/data-additional-methods.test.d.ts +1 -0
- package/dist/tests/data-controller-edge-cases.test.d.ts +1 -0
- package/dist/tests/data-ipfs-gateways.test.d.ts +1 -0
- package/dist/tests/data-relayer.test.d.ts +1 -0
- package/dist/tests/data-schema-validation.test.d.ts +1 -0
- package/dist/tests/data-simple-methods.test.d.ts +1 -0
- package/dist/tests/data.test.d.ts +1 -0
- package/dist/tests/demo-integration.test.d.ts +1 -0
- package/dist/tests/demo-trusted-server-integration.test.d.ts +1 -0
- package/dist/tests/download-relayer.test.d.ts +1 -0
- package/dist/tests/dual-mode-permissions.test.d.ts +1 -0
- package/dist/tests/dual-mode-trusted-servers.test.d.ts +1 -0
- package/dist/tests/encryption-correct-implementation.test.d.ts +1 -0
- package/dist/tests/encryption-coverage.test.d.ts +1 -0
- package/dist/tests/encryption-edge-cases.test.d.ts +1 -0
- package/dist/tests/encryption-utils-updated.test.d.ts +1 -0
- package/dist/tests/errors-coverage.test.d.ts +1 -0
- package/dist/tests/errors.test.d.ts +1 -0
- package/dist/tests/factories/mockFactory.d.ts +316 -0
- package/dist/tests/fakes/FakeStorageManager.d.ts +200 -0
- package/dist/tests/fakes/FakeStorageManager.test.d.ts +1 -0
- package/dist/tests/fakes/FakeWaitForTransactionEvents.d.ts +170 -0
- package/dist/tests/fakes/FakeWaitForTransactionEvents.test.d.ts +1 -0
- package/dist/tests/fakes/fake-pgp-port.d.ts +13 -0
- package/dist/tests/grantValidation-edge-cases.test.d.ts +1 -0
- package/dist/tests/grantValidation-unreachable-branch.test.d.ts +1 -0
- package/dist/tests/helper-methods.test.d.ts +1 -0
- package/dist/tests/helpers/platformTestHelpers.d.ts +106 -0
- package/dist/tests/helpers/typedMocks.d.ts +64 -0
- package/dist/tests/index-browser.test.d.ts +1 -0
- package/dist/tests/index-node.test.d.ts +1 -0
- package/dist/tests/index.test.d.ts +1 -0
- package/dist/tests/mocks/platformAdapter.d.ts +12 -0
- package/dist/tests/new-permissions-methods.test.d.ts +1 -0
- package/dist/tests/no-buffer-browser.test.d.ts +1 -0
- package/dist/tests/permissions-grantee.test.d.ts +1 -0
- package/dist/tests/permissions-revoke-relayer.test.d.ts +1 -0
- package/dist/tests/permissions-schema-validation.test.d.ts +1 -0
- package/dist/tests/permissions-server-files.test.d.ts +1 -0
- package/dist/tests/permissions-transaction-options.test.d.ts +1 -0
- package/dist/tests/permissions-trust-servers.test.d.ts +1 -0
- package/dist/tests/permissions.test.d.ts +1 -0
- package/dist/tests/personal.test.d.ts +1 -0
- package/dist/tests/platform-browser.test.d.ts +1 -0
- package/dist/tests/platform-crypto-expanded.test.d.ts +1 -0
- package/dist/tests/platform-crypto.test.d.ts +1 -0
- package/dist/tests/platform-index.test.d.ts +1 -0
- package/dist/tests/platform-node.test.d.ts +1 -0
- package/dist/tests/platform-shared-utils.test.d.ts +1 -0
- package/dist/tests/platform-updated.test.d.ts +1 -0
- package/dist/tests/protocol-additional-methods.test.d.ts +1 -0
- package/dist/tests/protocol.test.d.ts +1 -0
- package/dist/tests/read-only-mode.test.d.ts +1 -0
- package/dist/tests/relayer-integration.test.d.ts +1 -0
- package/dist/tests/relayer-unified.test.d.ts +1 -0
- package/dist/tests/schemas.test.d.ts +1 -0
- package/dist/tests/server-relayer-handler.test.d.ts +1 -0
- package/dist/tests/setup.d.ts +7 -0
- package/dist/tests/signatureFormatter.test.d.ts +1 -0
- package/dist/tests/trusted-server-queries.test.d.ts +1 -0
- package/dist/tests/typedDataConverter.test.d.ts +1 -0
- package/dist/tests/types-contracts.test.d.ts +1 -0
- package/dist/tests/types-data.test.d.ts +1 -0
- package/dist/tests/types-external-apis.test.d.ts +1 -0
- package/dist/tests/types-generics.test.d.ts +1 -0
- package/dist/tests/types-permissions.test.d.ts +1 -0
- package/dist/tests/types-upload-params.test.d.ts +1 -0
- package/dist/tests/types.test.d.ts +1 -0
- package/dist/tests/utils-formatters.test.d.ts +1 -0
- package/dist/tests/utils-grantFiles-edge-cases.test.d.ts +1 -0
- package/dist/tests/utils-grantFiles-validation.test.d.ts +1 -0
- package/dist/tests/utils-grantFiles.test.d.ts +1 -0
- package/dist/tests/utils-grantValidation-consolidated.test.d.ts +1 -0
- package/dist/tests/utils-grants.test.d.ts +1 -0
- package/dist/tests/utils-ipfs-additional.test.d.ts +1 -0
- package/dist/tests/utils-ipfs.test.d.ts +4 -0
- package/dist/tests/utils-schemaValidation.test.d.ts +1 -0
- package/dist/tests/vana.test.d.ts +1 -0
- package/dist/tests/wallet-crypto-compatibility.test.d.ts +1 -0
- package/dist/{chains.browser.cjs → types/atomicStore.cjs} +9 -15
- package/dist/types/atomicStore.cjs.map +1 -0
- package/dist/types/atomicStore.d.ts +236 -0
- package/dist/types/atomicStore.js +7 -0
- package/dist/types/atomicStore.js.map +1 -0
- package/dist/types/blockchain.cjs +17 -0
- package/dist/types/blockchain.cjs.map +1 -0
- package/dist/types/blockchain.d.ts +85 -0
- package/dist/types/blockchain.js +1 -0
- package/dist/types/blockchain.js.map +1 -0
- package/dist/types/chains-additional.test.d.ts +1 -0
- package/dist/types/chains.cjs.map +1 -1
- package/dist/types/chains.d.ts +80 -16
- package/dist/types/chains.js.map +1 -1
- package/dist/types/config.cjs +10 -0
- package/dist/types/config.cjs.map +1 -1
- package/dist/types/config.d.ts +236 -242
- package/dist/types/config.js +8 -0
- package/dist/types/config.js.map +1 -1
- package/dist/types/contracts.cjs.map +1 -1
- package/dist/types/contracts.d.ts +79 -18
- package/dist/types/controller-context.cjs +17 -0
- package/dist/types/controller-context.cjs.map +1 -0
- package/dist/types/controller-context.d.ts +68 -0
- package/dist/types/controller-context.js +1 -0
- package/dist/types/controller-context.js.map +1 -0
- package/dist/types/data.cjs.map +1 -1
- package/dist/types/data.d.ts +118 -49
- package/dist/types/external-apis.d.ts +10 -12
- package/dist/types/generics.cjs.map +1 -1
- package/dist/types/generics.d.ts +116 -48
- package/dist/types/index.cjs +5 -4
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.ts +48 -34
- package/dist/types/index.js +9 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/operationStore.cjs +17 -0
- package/dist/types/operationStore.cjs.map +1 -0
- package/dist/types/operationStore.d.ts +171 -0
- package/dist/types/operationStore.js +1 -0
- package/dist/types/operationStore.js.map +1 -0
- package/dist/types/operations.cjs +2 -2
- package/dist/types/operations.cjs.map +1 -1
- package/dist/types/operations.d.ts +164 -42
- package/dist/types/operations.js +2 -2
- package/dist/types/operations.js.map +1 -1
- package/dist/types/options.cjs +17 -0
- package/dist/types/options.cjs.map +1 -0
- package/dist/types/options.d.ts +308 -0
- package/dist/types/options.js +1 -0
- package/dist/types/options.js.map +1 -0
- package/dist/types/permissions.cjs.map +1 -1
- package/dist/types/permissions.d.ts +72 -78
- package/dist/types/personal.cjs.map +1 -1
- package/dist/types/personal.d.ts +137 -22
- package/dist/types/relayer.cjs.map +1 -1
- package/dist/types/relayer.d.ts +293 -50
- package/dist/types/storage.cjs.map +1 -1
- package/dist/types/storage.d.ts +15 -29
- package/dist/types/storage.js +2 -5
- package/dist/types/storage.js.map +1 -1
- package/dist/types/transactionResults.cjs.map +1 -1
- package/dist/types/transactionResults.d.ts +193 -25
- package/dist/types/utils.cjs.map +1 -1
- package/dist/types/utils.d.ts +20 -68
- package/dist/types.d.ts +4 -40
- package/dist/utils/__tests__/parseTransaction.test.d.ts +1 -0
- package/dist/utils/__tests__/pojo-serialization.test.d.ts +1 -0
- package/dist/utils/__tests__/signatureCache.test.d.ts +1 -0
- package/dist/utils/__tests__/subgraphConsistency.test.d.ts +4 -0
- package/dist/utils/__tests__/subgraphPagination.test.d.ts +4 -0
- package/dist/utils/__tests__/transaction-edge-cases.test.d.ts +1 -0
- package/dist/utils/__tests__/transactionHelpers.test.d.ts +1 -0
- package/dist/utils/__tests__/urlResolver.test.d.ts +4 -0
- package/dist/utils/blockchain/registry.cjs +2 -2
- package/dist/utils/blockchain/registry.cjs.map +1 -1
- package/dist/utils/blockchain/registry.d.ts +6 -8
- package/dist/utils/blockchain/registry.js +2 -2
- package/dist/utils/blockchain/registry.js.map +1 -1
- package/dist/utils/blockchain/registry.test.d.ts +1 -0
- package/dist/utils/chainQuery.cjs +107 -0
- package/dist/utils/chainQuery.cjs.map +1 -0
- package/dist/utils/chainQuery.d.ts +31 -0
- package/dist/utils/chainQuery.js +82 -0
- package/dist/utils/chainQuery.js.map +1 -0
- package/dist/utils/crypto-utils.cjs +0 -12
- package/dist/utils/crypto-utils.cjs.map +1 -1
- package/dist/utils/crypto-utils.d.ts +9 -27
- package/dist/utils/crypto-utils.js +0 -11
- package/dist/utils/crypto-utils.js.map +1 -1
- package/dist/utils/crypto-utils.test.d.ts +1 -0
- package/dist/utils/download.cjs +3 -3
- package/dist/utils/download.cjs.map +1 -1
- package/dist/utils/download.d.ts +13 -14
- package/dist/utils/download.js +2 -2
- package/dist/utils/download.js.map +1 -1
- package/dist/utils/encoding.cjs +1 -1
- package/dist/utils/encoding.cjs.map +1 -1
- package/dist/utils/encoding.d.ts +4 -6
- package/dist/utils/encoding.js +1 -1
- package/dist/utils/encoding.js.map +1 -1
- package/dist/utils/encoding.test.d.ts +1 -0
- package/dist/utils/encryption.cjs +16 -10
- package/dist/utils/encryption.cjs.map +1 -1
- package/dist/utils/encryption.d.ts +13 -17
- package/dist/utils/encryption.js +16 -10
- package/dist/utils/encryption.js.map +1 -1
- package/dist/utils/formatters.cjs +4 -2
- package/dist/utils/formatters.cjs.map +1 -1
- package/dist/utils/formatters.d.ts +4 -6
- package/dist/utils/formatters.js +4 -2
- package/dist/utils/formatters.js.map +1 -1
- package/dist/utils/grantFiles.cjs +7 -4
- package/dist/utils/grantFiles.cjs.map +1 -1
- package/dist/utils/grantFiles.d.ts +16 -30
- package/dist/utils/grantFiles.js +7 -4
- package/dist/utils/grantFiles.js.map +1 -1
- package/dist/utils/grantValidation.cjs +1 -1
- package/dist/utils/grantValidation.cjs.map +1 -1
- package/dist/utils/grantValidation.d.ts +109 -33
- package/dist/utils/grantValidation.js +1 -1
- package/dist/utils/grantValidation.js.map +1 -1
- package/dist/utils/grants.cjs +1 -1
- package/dist/utils/grants.cjs.map +1 -1
- package/dist/utils/grants.d.ts +101 -23
- package/dist/utils/grants.js +1 -1
- package/dist/utils/grants.js.map +1 -1
- package/dist/utils/ipfs.cjs +2 -4
- package/dist/utils/ipfs.cjs.map +1 -1
- package/dist/utils/ipfs.d.ts +8 -10
- package/dist/utils/ipfs.js +2 -4
- package/dist/utils/ipfs.js.map +1 -1
- package/dist/utils/lazy-import.cjs +4 -6
- package/dist/utils/lazy-import.cjs.map +1 -1
- package/dist/utils/lazy-import.d.ts +33 -10
- package/dist/utils/lazy-import.js +4 -6
- package/dist/utils/lazy-import.js.map +1 -1
- package/dist/utils/multicall.cjs +4 -2
- package/dist/utils/multicall.cjs.map +1 -1
- package/dist/utils/multicall.d.ts +5 -8
- package/dist/utils/multicall.js +4 -2
- package/dist/utils/multicall.js.map +1 -1
- package/dist/utils/parseTransactionPojo.cjs +87 -0
- package/dist/utils/parseTransactionPojo.cjs.map +1 -0
- package/dist/utils/parseTransactionPojo.d.ts +31 -0
- package/dist/utils/parseTransactionPojo.js +63 -0
- package/dist/utils/parseTransactionPojo.js.map +1 -0
- package/dist/utils/schemaValidation.cjs +5 -5
- package/dist/utils/schemaValidation.cjs.map +1 -1
- package/dist/utils/schemaValidation.d.ts +8 -12
- package/dist/utils/schemaValidation.js +7 -10
- package/dist/utils/schemaValidation.js.map +1 -1
- package/dist/utils/signatureCache.cjs +9 -4
- package/dist/utils/signatureCache.cjs.map +1 -1
- package/dist/utils/signatureCache.d.ts +53 -15
- package/dist/utils/signatureCache.js +12 -10
- package/dist/utils/signatureCache.js.map +1 -1
- package/dist/utils/signatureFormatter.cjs +6 -9
- package/dist/utils/signatureFormatter.cjs.map +1 -1
- package/dist/utils/signatureFormatter.d.ts +2 -5
- package/dist/utils/signatureFormatter.js +6 -9
- package/dist/utils/signatureFormatter.js.map +1 -1
- package/dist/utils/subgraphConsistency.cjs +184 -0
- package/dist/utils/subgraphConsistency.cjs.map +1 -0
- package/dist/utils/subgraphConsistency.d.ts +65 -0
- package/dist/utils/subgraphConsistency.js +155 -0
- package/dist/utils/subgraphConsistency.js.map +1 -0
- package/dist/utils/subgraphMetaCache.cjs +101 -0
- package/dist/utils/subgraphMetaCache.cjs.map +1 -0
- package/dist/utils/subgraphMetaCache.d.ts +56 -0
- package/dist/utils/subgraphMetaCache.js +76 -0
- package/dist/utils/subgraphMetaCache.js.map +1 -0
- package/dist/utils/subgraphPagination.cjs +104 -0
- package/dist/utils/subgraphPagination.cjs.map +1 -0
- package/dist/utils/subgraphPagination.d.ts +78 -0
- package/dist/utils/subgraphPagination.js +78 -0
- package/dist/utils/subgraphPagination.js.map +1 -0
- package/dist/utils/tests/multicall.test.d.ts +1 -0
- package/dist/utils/transactionHelpers.cjs +54 -0
- package/dist/utils/transactionHelpers.cjs.map +1 -0
- package/dist/utils/transactionHelpers.d.ts +80 -0
- package/dist/utils/transactionHelpers.js +29 -0
- package/dist/utils/transactionHelpers.js.map +1 -0
- package/dist/utils/typeGuards.cjs +109 -0
- package/dist/utils/typeGuards.cjs.map +1 -0
- package/dist/utils/typeGuards.d.ts +138 -0
- package/dist/utils/typeGuards.js +74 -0
- package/dist/utils/typeGuards.js.map +1 -0
- package/dist/utils/typedDataConverter.cjs.map +1 -1
- package/dist/utils/typedDataConverter.d.ts +42 -9
- package/dist/utils/typedDataConverter.js.map +1 -1
- package/dist/utils/urlResolver.cjs +8 -1
- package/dist/utils/urlResolver.cjs.map +1 -1
- package/dist/utils/urlResolver.d.ts +24 -8
- package/dist/utils/urlResolver.js +9 -2
- package/dist/utils/urlResolver.js.map +1 -1
- package/dist/utils/wallet.cjs +63 -0
- package/dist/utils/wallet.cjs.map +1 -0
- package/dist/utils/wallet.d.ts +94 -0
- package/dist/utils/wallet.js +37 -0
- package/dist/utils/wallet.js.map +1 -0
- package/dist/utils/withEvents.cjs +44 -0
- package/dist/utils/withEvents.cjs.map +1 -0
- package/dist/utils/withEvents.d.ts +56 -0
- package/dist/utils/withEvents.js +18 -0
- package/dist/utils/withEvents.js.map +1 -0
- package/package.json +25 -13
- package/dist/browser.d.cts +0 -2
- package/dist/chains/definitions.d.cts +0 -53
- package/dist/chains/index.d.cts +0 -2
- package/dist/chains.browser.cjs.map +0 -1
- package/dist/chains.browser.d.cts +0 -2
- package/dist/chains.d.cts +0 -2
- package/dist/chains.node.d.cts +0 -2
- package/dist/config/addresses.d.cts +0 -380
- package/dist/config/chains.d.cts +0 -85
- package/dist/config/eventMappings.cjs +0 -114
- package/dist/config/eventMappings.cjs.map +0 -1
- package/dist/config/eventMappings.d.cts +0 -108
- package/dist/config/eventMappings.d.ts +0 -108
- package/dist/config/eventMappings.js +0 -90
- package/dist/config/eventMappings.js.map +0 -1
- package/dist/config/features.d.cts +0 -64
- package/dist/contracts/contractController.d.cts +0 -96
- package/dist/controllers/data.d.cts +0 -941
- package/dist/controllers/permissions.d.cts +0 -25
- package/dist/controllers/protocol.d.cts +0 -167
- package/dist/controllers/schemas.d.cts +0 -272
- package/dist/controllers/server.d.cts +0 -243
- package/dist/core/apiClient.d.cts +0 -165
- package/dist/core/client.d.cts +0 -92
- package/dist/core/generics.d.cts +0 -120
- package/dist/core.d.cts +0 -466
- package/dist/crypto/ecies/__tests__/test-vectors.d.cts +0 -40
- package/dist/crypto/ecies/base.d.cts +0 -143
- package/dist/crypto/ecies/browser.d.cts +0 -48
- package/dist/crypto/ecies/constants.d.cts +0 -122
- package/dist/crypto/ecies/index.d.cts +0 -1
- package/dist/crypto/ecies/interface.d.cts +0 -176
- package/dist/crypto/ecies/node.d.cts +0 -50
- package/dist/crypto/ecies/utils.d.cts +0 -67
- package/dist/crypto/services/WalletKeyEncryptionService.d.cts +0 -92
- package/dist/diagnostics.d.cts +0 -26
- package/dist/errors.d.cts +0 -350
- package/dist/generated/abi/ComputeEngineImplementation.d.cts +0 -996
- package/dist/generated/abi/ComputeInstructionRegistryImplementation.d.cts +0 -545
- package/dist/generated/abi/DATFactoryImplementation.d.cts +0 -661
- package/dist/generated/abi/DATImplementation.d.cts +0 -693
- package/dist/generated/abi/DATPausableImplementation.d.cts +0 -1145
- package/dist/generated/abi/DATVotesImplementation.d.cts +0 -1095
- package/dist/generated/abi/DLPPerformanceImplementation.d.cts +0 -883
- package/dist/generated/abi/DLPRegistryImplementation.d.cts +0 -1123
- package/dist/generated/abi/DLPRegistryTreasuryImplementation.d.cts +0 -452
- package/dist/generated/abi/DLPRewardDeployerImplementation.d.cts +0 -714
- package/dist/generated/abi/DLPRewardDeployerTreasuryImplementation.d.cts +0 -452
- package/dist/generated/abi/DLPRewardSwapImplementation.d.cts +0 -706
- package/dist/generated/abi/DLPRootImplementation.d.cts +0 -1248
- package/dist/generated/abi/DLPTreasuryImplementation.d.cts +0 -452
- package/dist/generated/abi/DataLiquidityPoolImplementation.d.cts +0 -737
- package/dist/generated/abi/DataPortabilityGranteesImplementation.d.cts +0 -661
- package/dist/generated/abi/DataPortabilityPermissionsImplementation.d.cts +0 -989
- package/dist/generated/abi/DataPortabilityServersImplementation.d.cts +0 -1086
- package/dist/generated/abi/DataRefinerRegistryImplementation.d.cts +0 -737
- package/dist/generated/abi/DataRegistryImplementation.d.cts +0 -1004
- package/dist/generated/abi/QueryEngineImplementation.d.cts +0 -1001
- package/dist/generated/abi/SwapHelperImplementation.d.cts +0 -764
- package/dist/generated/abi/TeePoolDedicatedGpuImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolDedicatedStandardImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolEphemeralStandardImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolImplementation.d.cts +0 -993
- package/dist/generated/abi/TeePoolPersistentGpuImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolPersistentStandardImplementation.d.cts +0 -701
- package/dist/generated/abi/TeePoolPhalaImplementation.d.cts +0 -993
- package/dist/generated/abi/VanaEpochImplementation.d.cts +0 -900
- package/dist/generated/abi/VanaPoolEntityImplementation.d.cts +0 -934
- package/dist/generated/abi/VanaPoolStakingImplementation.d.cts +0 -693
- package/dist/generated/abi/VanaPoolTreasuryImplementation.d.cts +0 -394
- package/dist/generated/abi/index.d.cts +0 -26516
- package/dist/generated/server/server-exports.d.cts +0 -21
- package/dist/generated/server/server.d.cts +0 -512
- package/dist/generated/subgraph.d.cts +0 -5981
- package/dist/index.browser.cjs +0 -151
- package/dist/index.browser.cjs.map +0 -1
- package/dist/index.browser.d.cts +0 -177
- package/dist/index.d.cts +0 -2
- package/dist/index.node.d.cts +0 -64
- package/dist/node.d.cts +0 -2
- package/dist/permissions-DNKPu_G0.d.cts +0 -1666
- package/dist/permissions-eo8YeLGf.d.ts +0 -1666
- package/dist/platform/browser-only.d.cts +0 -25
- package/dist/platform/browser-safe.d.cts +0 -32
- package/dist/platform/browser.d.cts +0 -74
- package/dist/platform/index.d.cts +0 -5
- package/dist/platform/interface.d.cts +0 -218
- package/dist/platform/node.d.cts +0 -27
- package/dist/platform/shared/error-utils.d.cts +0 -25
- package/dist/platform/shared/pgp-utils.d.cts +0 -61
- package/dist/platform/shared/stream-utils.d.cts +0 -16
- package/dist/platform/utils.d.cts +0 -53
- package/dist/platform.browser.cjs +0 -41
- package/dist/platform.browser.cjs.map +0 -1
- package/dist/platform.browser.d.cts +0 -4
- package/dist/platform.d.cts +0 -5
- package/dist/platform.node.d.cts +0 -5
- package/dist/server/handler.cjs +0 -101
- package/dist/server/handler.cjs.map +0 -1
- package/dist/server/handler.d.cts +0 -282
- package/dist/server/handler.d.ts +0 -282
- package/dist/server/handler.js +0 -77
- package/dist/server/handler.js.map +0 -1
- package/dist/storage/index.d.cts +0 -10
- package/dist/storage/manager.d.cts +0 -150
- package/dist/storage/providers/callback-storage.d.cts +0 -100
- package/dist/storage/providers/google-drive.d.cts +0 -156
- package/dist/storage/providers/ipfs.d.cts +0 -163
- package/dist/storage/providers/pinata.d.cts +0 -173
- package/dist/types/chains.d.cts +0 -34
- package/dist/types/config.d.cts +0 -726
- package/dist/types/contracts.d.cts +0 -68
- package/dist/types/data.d.cts +0 -694
- package/dist/types/eccrypto-js.d.d.cts +0 -13
- package/dist/types/eccrypto-js.d.d.ts +0 -13
- package/dist/types/external-apis.d.cts +0 -186
- package/dist/types/generics.d.cts +0 -450
- package/dist/types/index.d.cts +0 -34
- package/dist/types/operations.d.cts +0 -108
- package/dist/types/permissions.d.cts +0 -957
- package/dist/types/personal.d.cts +0 -40
- package/dist/types/relayer.d.cts +0 -284
- package/dist/types/storage.d.cts +0 -131
- package/dist/types/transactionResults.d.cts +0 -25
- package/dist/types/utils.d.cts +0 -819
- package/dist/types.d.cts +0 -66
- package/dist/utils/blockchain/registry.d.cts +0 -34
- package/dist/utils/crypto-utils.d.cts +0 -118
- package/dist/utils/download.d.cts +0 -41
- package/dist/utils/encoding.d.cts +0 -54
- package/dist/utils/encryption.d.cts +0 -275
- package/dist/utils/eventParsing.cjs +0 -111
- package/dist/utils/eventParsing.cjs.map +0 -1
- package/dist/utils/eventParsing.d.cts +0 -60
- package/dist/utils/eventParsing.d.ts +0 -60
- package/dist/utils/eventParsing.js +0 -86
- package/dist/utils/eventParsing.js.map +0 -1
- package/dist/utils/formatters.d.cts +0 -120
- package/dist/utils/grantFiles.d.cts +0 -186
- package/dist/utils/grantValidation.d.cts +0 -150
- package/dist/utils/grants.d.cts +0 -70
- package/dist/utils/ipfs.d.cts +0 -90
- package/dist/utils/lazy-import.d.cts +0 -20
- package/dist/utils/multicall.d.cts +0 -129
- package/dist/utils/schemaValidation.d.cts +0 -172
- package/dist/utils/signatureCache.d.cts +0 -134
- package/dist/utils/signatureFormatter.d.cts +0 -39
- package/dist/utils/transactionParsing.cjs +0 -84
- package/dist/utils/transactionParsing.cjs.map +0 -1
- package/dist/utils/transactionParsing.d.cts +0 -25
- package/dist/utils/transactionParsing.d.ts +0 -25
- package/dist/utils/transactionParsing.js +0 -62
- package/dist/utils/transactionParsing.js.map +0 -1
- package/dist/utils/typedDataConverter.d.cts +0 -13
- package/dist/utils/urlResolver.d.cts +0 -40
|
@@ -1,119 +1,112 @@
|
|
|
1
|
-
import { Address } from
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import '../types/permissions.js';
|
|
10
|
-
import '../config/eventMappings.js';
|
|
11
|
-
import '../generated/abi/index.js';
|
|
12
|
-
import '../generated/abi/DataPortabilityPermissionsImplementation.js';
|
|
13
|
-
import '../generated/abi/DataPortabilityServersImplementation.js';
|
|
14
|
-
import '../generated/abi/DataPortabilityGranteesImplementation.js';
|
|
15
|
-
import '../generated/abi/VanaEpochImplementation.js';
|
|
16
|
-
import '../generated/abi/DLPRegistryImplementation.js';
|
|
17
|
-
import '../generated/abi/DLPTreasuryImplementation.js';
|
|
18
|
-
import '../generated/abi/DLPRewardDeployerTreasuryImplementation.js';
|
|
19
|
-
import '../generated/abi/DLPPerformanceImplementation.js';
|
|
20
|
-
import '../generated/abi/DLPRewardDeployerImplementation.js';
|
|
21
|
-
import '../generated/abi/DLPRootImplementation.js';
|
|
22
|
-
import '../generated/abi/DataLiquidityPoolImplementation.js';
|
|
23
|
-
import '../generated/abi/DLPRegistryTreasuryImplementation.js';
|
|
24
|
-
import '../storage/manager.js';
|
|
25
|
-
import '../platform/interface.js';
|
|
26
|
-
import '../generated/server/server-exports.js';
|
|
27
|
-
import '../generated/server/server.js';
|
|
28
|
-
|
|
1
|
+
import type { Address } from "viem";
|
|
2
|
+
import type { TransactionOptions, TransactionResult } from "../types/operations";
|
|
3
|
+
import type { StorageUploadResult } from "../types/storage";
|
|
4
|
+
import type { UserFile, UploadParams, UploadResult, UploadEncryptedFileResult, Refiner, AddRefinerParams, AddRefinerResult, UpdateSchemaIdParams, UpdateSchemaIdResult, TrustedServer, GetUserTrustedServersParams, EncryptedUploadParams, UnencryptedUploadParams, EncryptFileOptions, EncryptFileResult, DecryptFileOptions, UploadFileWithPermissionsParams, AddFilePermissionParams, DecryptFileWithPermissionOptions } from "../types/index";
|
|
5
|
+
import type { ControllerContext } from "./permissions";
|
|
6
|
+
import { BaseController } from "./base";
|
|
7
|
+
import type { ConsistencyOptions, PaginationOptions } from "../types/options";
|
|
8
|
+
import { type DataSchema } from "../utils/schemaValidation";
|
|
29
9
|
/**
|
|
30
|
-
* Manages encrypted user data files and
|
|
10
|
+
* Manages encrypted user data files and blockchain registration on the Vana network.
|
|
31
11
|
*
|
|
32
12
|
* @remarks
|
|
33
|
-
*
|
|
34
|
-
* blockchain registration
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* encryption before any data leaves the user's device.
|
|
13
|
+
* The DataController provides comprehensive file lifecycle management from encrypted upload
|
|
14
|
+
* through blockchain registration to decryption. Client-side encryption ensures data privacy
|
|
15
|
+
* before transmission. The controller integrates with multiple storage providers (IPFS, Pinata,
|
|
16
|
+
* Google Drive) and supports both gasless transactions via relayers and direct blockchain interaction.
|
|
38
17
|
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
18
|
+
* **Architecture:**
|
|
19
|
+
* Files use dual storage: encrypted content on decentralized storage (IPFS/Pinata/Google Drive),
|
|
20
|
+
* metadata and permissions on blockchain. This design minimizes on-chain data while maintaining
|
|
21
|
+
* decentralization and access control.
|
|
43
22
|
*
|
|
44
23
|
* **Method Selection:**
|
|
45
|
-
* - `upload()`
|
|
46
|
-
* - `getUserFiles()`
|
|
47
|
-
* - `decryptFile()`
|
|
48
|
-
* - `getFileById()`
|
|
24
|
+
* - `upload()` - Complete workflow: encryption, storage, blockchain registration
|
|
25
|
+
* - `getUserFiles()` - Query file metadata from blockchain/subgraph
|
|
26
|
+
* - `decryptFile()` - Decrypt files you have permission to access
|
|
27
|
+
* - `getFileById()` - Retrieve specific file metadata by ID
|
|
49
28
|
*
|
|
50
29
|
* **Storage Requirements:**
|
|
51
|
-
* Methods requiring storage
|
|
52
|
-
* Methods working without storage: `getUserFiles()`, `decryptFile()`, `getFileById()`
|
|
30
|
+
* - Methods requiring storage: `upload()`, `encryptFile()`
|
|
31
|
+
* - Methods working without storage: `getUserFiles()`, `decryptFile()`, `getFileById()`
|
|
32
|
+
*
|
|
33
|
+
* **Permission Model:**
|
|
34
|
+
* - File permissions (decryption access) are handled during upload
|
|
35
|
+
* - Operation permissions (what can be done with data) use `vana.permissions.grant()`
|
|
36
|
+
*
|
|
53
37
|
* @example
|
|
54
38
|
* ```typescript
|
|
55
|
-
* // Upload
|
|
39
|
+
* // Upload encrypted file with schema validation
|
|
56
40
|
* const result = await vana.data.upload({
|
|
57
|
-
* content:
|
|
58
|
-
* filename: "
|
|
41
|
+
* content: { name: "Alice", age: 30 },
|
|
42
|
+
* filename: "profile.json",
|
|
43
|
+
* schemaId: 1
|
|
59
44
|
* });
|
|
45
|
+
* console.log(`File uploaded: ID ${result.fileId}, URL ${result.url}`);
|
|
60
46
|
*
|
|
61
|
-
* // Query files
|
|
47
|
+
* // Query user's files
|
|
62
48
|
* const files = await vana.data.getUserFiles({
|
|
63
|
-
* owner: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36"
|
|
49
|
+
* owner: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36"
|
|
64
50
|
* });
|
|
51
|
+
* files.forEach(file => console.log(`File ${file.id}: ${file.url}`));
|
|
65
52
|
*
|
|
66
|
-
* // Decrypt accessible file
|
|
53
|
+
* // Decrypt accessible file
|
|
67
54
|
* const decryptedData = await vana.data.decryptFile(files[0]);
|
|
55
|
+
* console.log("Decrypted content:", decryptedData);
|
|
68
56
|
* ```
|
|
57
|
+
*
|
|
69
58
|
* @category Data Management
|
|
70
|
-
* @see {@link https://docs.vana.
|
|
59
|
+
* @see For conceptual overview, visit {@link https://docs.vana.org/docs/data-registry}
|
|
71
60
|
*/
|
|
72
|
-
declare class DataController {
|
|
73
|
-
private readonly context;
|
|
61
|
+
export declare class DataController extends BaseController {
|
|
74
62
|
constructor(context: ControllerContext);
|
|
75
63
|
/**
|
|
76
|
-
* Uploads
|
|
64
|
+
* Uploads data with automatic encryption and blockchain registration.
|
|
77
65
|
*
|
|
78
66
|
* @remarks
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
* - Normalizes
|
|
85
|
-
* - Validates
|
|
86
|
-
* - Generates encryption keys
|
|
87
|
-
* - Uploads to
|
|
88
|
-
* - Grants
|
|
89
|
-
* - Registers
|
|
67
|
+
* Primary method for uploading data to Vana. Handles complete workflow:
|
|
68
|
+
* content normalization, schema validation, encryption, storage upload,
|
|
69
|
+
* permission granting, and blockchain registration.
|
|
70
|
+
*
|
|
71
|
+
* **Automatic Processing:**
|
|
72
|
+
* - Normalizes content to Blob format
|
|
73
|
+
* - Validates against schema if provided
|
|
74
|
+
* - Generates encryption keys
|
|
75
|
+
* - Uploads to configured storage
|
|
76
|
+
* - Grants decryption permissions
|
|
77
|
+
* - Registers on blockchain
|
|
90
78
|
*
|
|
91
79
|
* **TypeScript Overloads:**
|
|
92
|
-
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
*
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
* @param params -
|
|
104
|
-
*
|
|
105
|
-
* @param params.
|
|
106
|
-
* Obtain via `vana.
|
|
107
|
-
* @param params.
|
|
108
|
-
*
|
|
109
|
-
* @
|
|
110
|
-
* @
|
|
111
|
-
*
|
|
112
|
-
* @
|
|
113
|
-
*
|
|
114
|
-
* @throws {Error}
|
|
115
|
-
*
|
|
116
|
-
* @throws {Error}
|
|
80
|
+
* - `EncryptedUploadParams`: When `encrypt: true` (default), permissions require `publicKey`
|
|
81
|
+
* - `UnencryptedUploadParams`: When `encrypt: false`, permissions optional
|
|
82
|
+
* - `UploadParams`: General signature for runtime determination
|
|
83
|
+
*
|
|
84
|
+
* **Permission Separation:**
|
|
85
|
+
* - File permissions (here): Decryption access only
|
|
86
|
+
* - Operation permissions: Use `vana.permissions.grant()` separately
|
|
87
|
+
*
|
|
88
|
+
* @param params - Upload configuration object
|
|
89
|
+
* @param params.content - Data to upload (string, object, or Blob)
|
|
90
|
+
* @param params.filename - Name for the uploaded file
|
|
91
|
+
* @param params.permissions - Decryption access grants.
|
|
92
|
+
* Each requires `account` and `publicKey` for encryption.
|
|
93
|
+
* @param params.schemaId - Schema for validation.
|
|
94
|
+
* Obtain via `vana.schemas.list()`.
|
|
95
|
+
* @param params.owner - Owner address for delegation scenarios.
|
|
96
|
+
* Defaults to connected wallet address.
|
|
97
|
+
* @param params.encrypt - Enable encryption (default: `true`)
|
|
98
|
+
* @param params.providerName - Storage provider override
|
|
99
|
+
*
|
|
100
|
+
* @returns Upload result with file ID, URL, and transaction hash
|
|
101
|
+
*
|
|
102
|
+
* @throws {Error} Storage not configured.
|
|
103
|
+
* Configure storage providers in `VanaConfig`.
|
|
104
|
+
* @throws {Error} No wallet addresses available.
|
|
105
|
+
* Ensure wallet is connected.
|
|
106
|
+
* @throws {SchemaValidationError} Data doesn't match schema.
|
|
107
|
+
* Verify data structure matches schema from `vana.schemas.get(schemaId)`.
|
|
108
|
+
* @throws {Error} Upload failed with specific error message.
|
|
109
|
+
*
|
|
117
110
|
* @example
|
|
118
111
|
* ```typescript
|
|
119
112
|
* // Basic file upload
|
|
@@ -171,35 +164,78 @@ declare class DataController {
|
|
|
171
164
|
upload(params: UnencryptedUploadParams): Promise<UploadResult>;
|
|
172
165
|
upload(params: UploadParams): Promise<UploadResult>;
|
|
173
166
|
/**
|
|
174
|
-
*
|
|
167
|
+
* Encrypts data using wallet-derived encryption.
|
|
175
168
|
*
|
|
176
169
|
* @remarks
|
|
177
|
-
* This
|
|
178
|
-
*
|
|
179
|
-
*
|
|
180
|
-
* decryption.
|
|
170
|
+
* This method provides secure, wallet-based encryption for data before uploading
|
|
171
|
+
* to the Vana network. It's the counterpart to decryptFile for preparing data
|
|
172
|
+
* for secure storage.
|
|
181
173
|
*
|
|
182
174
|
* The method automatically:
|
|
183
|
-
* - Generates
|
|
184
|
-
* -
|
|
185
|
-
* -
|
|
186
|
-
* -
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
*
|
|
191
|
-
*
|
|
192
|
-
* @param
|
|
193
|
-
* @
|
|
194
|
-
* @
|
|
195
|
-
* @
|
|
196
|
-
*
|
|
197
|
-
*
|
|
198
|
-
*
|
|
199
|
-
*
|
|
200
|
-
*
|
|
201
|
-
*
|
|
202
|
-
*
|
|
175
|
+
* - Generates an encryption key from the user's wallet signature
|
|
176
|
+
* - Converts the input data to a Blob if necessary
|
|
177
|
+
* - Encrypts the data using the generated key
|
|
178
|
+
* - Returns both the encrypted data and the encryption key
|
|
179
|
+
*
|
|
180
|
+
* The encryption key returned can be stored and later used for decryption,
|
|
181
|
+
* or shared with others to grant them decryption access.
|
|
182
|
+
*
|
|
183
|
+
* @param data - The data to encrypt (Blob, string, or object)
|
|
184
|
+
* @param options - Optional encryption configuration
|
|
185
|
+
* @returns Promise resolving to encrypted data and the encryption key used
|
|
186
|
+
* @throws {Error} When wallet is not connected or encryption fails
|
|
187
|
+
* @example
|
|
188
|
+
* ```typescript
|
|
189
|
+
* // Encrypt a string
|
|
190
|
+
* const { encryptedData, encryptionKey } = await vana.data.encryptFile(
|
|
191
|
+
* "My secret data"
|
|
192
|
+
* );
|
|
193
|
+
*
|
|
194
|
+
* // Encrypt JSON with custom MIME type
|
|
195
|
+
* const { encryptedData, encryptionKey } = await vana.data.encryptFile(
|
|
196
|
+
* { name: "Alice", age: 30 },
|
|
197
|
+
* { mimeType: "application/json" }
|
|
198
|
+
* );
|
|
199
|
+
*
|
|
200
|
+
* // With custom encryption seed
|
|
201
|
+
* const { encryptedData, encryptionKey } = await vana.data.encryptFile(
|
|
202
|
+
* "Secret message",
|
|
203
|
+
* { seed: "My custom encryption seed" }
|
|
204
|
+
* );
|
|
205
|
+
*
|
|
206
|
+
* // Upload the encrypted data
|
|
207
|
+
* const result = await vana.data.uploadToStorage(encryptedData);
|
|
208
|
+
* ```
|
|
209
|
+
*/
|
|
210
|
+
encryptFile(data: Blob | string | object, options?: EncryptFileOptions): Promise<EncryptFileResult>;
|
|
211
|
+
/**
|
|
212
|
+
* Decrypts a file using wallet-derived decryption key.
|
|
213
|
+
*
|
|
214
|
+
* @remarks
|
|
215
|
+
* Counterpart to `upload()` for decrypting user files. Automatically
|
|
216
|
+
* generates decryption key from wallet, fetches encrypted content,
|
|
217
|
+
* and decrypts. Supports IPFS (with gateway fallback) and HTTP URLs.
|
|
218
|
+
*
|
|
219
|
+
* @param file - UserFile object from `getUserFiles()`
|
|
220
|
+
* @param options - Decryption options
|
|
221
|
+
* @param options.seed - Custom encryption seed.
|
|
222
|
+
* Defaults to standard Vana seed.
|
|
223
|
+
*
|
|
224
|
+
* @returns Decrypted content as Blob
|
|
225
|
+
*
|
|
226
|
+
* @throws {Error} No wallet connected.
|
|
227
|
+
* Connect wallet before decrypting.
|
|
228
|
+
* @throws {Error} Network error accessing file.
|
|
229
|
+
* Check CORS settings or server availability.
|
|
230
|
+
* @throws {Error} File not found (404).
|
|
231
|
+
* File no longer available at stored URL.
|
|
232
|
+
* @throws {Error} Access denied (403).
|
|
233
|
+
* No permission to access file.
|
|
234
|
+
* @throws {Error} Invalid file format.
|
|
235
|
+
* File not encrypted with Vana protocol.
|
|
236
|
+
* @throws {Error} Wrong encryption key.
|
|
237
|
+
* Verify seed matches upload or use default.
|
|
238
|
+
*
|
|
203
239
|
* @example
|
|
204
240
|
* ```typescript
|
|
205
241
|
* // Basic file decryption
|
|
@@ -225,44 +261,47 @@ declare class DataController {
|
|
|
225
261
|
* fs.writeFileSync('decrypted-file.txt', Buffer.from(buffer));
|
|
226
262
|
* ```
|
|
227
263
|
*/
|
|
228
|
-
decryptFile(file: UserFile,
|
|
264
|
+
decryptFile(file: UserFile, options?: DecryptFileOptions): Promise<Blob>;
|
|
229
265
|
/**
|
|
230
|
-
* Retrieves all
|
|
266
|
+
* Retrieves all files owned by a specific user address.
|
|
231
267
|
*
|
|
232
268
|
* @remarks
|
|
233
|
-
*
|
|
234
|
-
*
|
|
235
|
-
*
|
|
236
|
-
*
|
|
237
|
-
*
|
|
238
|
-
*
|
|
239
|
-
*
|
|
240
|
-
*
|
|
241
|
-
*
|
|
242
|
-
*
|
|
243
|
-
* @
|
|
244
|
-
*
|
|
245
|
-
* @
|
|
246
|
-
*
|
|
247
|
-
* @throws {Error}
|
|
248
|
-
*
|
|
249
|
-
* @throws {Error}
|
|
269
|
+
* Queries the Vana subgraph for files owned by the specified address.
|
|
270
|
+
* Automatically deduplicates by file ID, keeping the latest version
|
|
271
|
+
* when duplicates exist from re-indexing or chain reorganizations.
|
|
272
|
+
* Enriches results with DLP proof data when available.
|
|
273
|
+
*
|
|
274
|
+
* @param params - Query configuration
|
|
275
|
+
* @param params.owner - Wallet address of the file owner
|
|
276
|
+
* @param params.subgraphUrl - Subgraph endpoint override.
|
|
277
|
+
* Defaults to context configuration.
|
|
278
|
+
*
|
|
279
|
+
* @returns Array of UserFile objects sorted by timestamp (newest first)
|
|
280
|
+
*
|
|
281
|
+
* @throws {Error} Subgraph URL not configured.
|
|
282
|
+
* Provide `subgraphUrl` parameter or configure in Vana constructor.
|
|
283
|
+
* @throws {Error} Subgraph request failed.
|
|
284
|
+
* Check network connectivity and subgraph availability.
|
|
285
|
+
* @throws {Error} Subgraph returned errors.
|
|
286
|
+
* Review query parameters and subgraph logs.
|
|
287
|
+
*
|
|
250
288
|
* @example
|
|
251
289
|
* ```typescript
|
|
252
|
-
* // Query files for a specific user
|
|
253
290
|
* const files = await vana.data.getUserFiles({
|
|
254
|
-
* owner: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36"
|
|
291
|
+
* owner: "0x742d35Cc6558Fd4D9e9E0E888F0462ef6919Bd36"
|
|
255
292
|
* });
|
|
256
293
|
*
|
|
257
294
|
* files.forEach(file => {
|
|
258
|
-
* console.log(`File ${file.id}: ${file.url}
|
|
295
|
+
* console.log(`File ${file.id}: ${file.url}`);
|
|
296
|
+
* console.log(` Schema: ${file.schemaId}`);
|
|
297
|
+
* console.log(` DLPs: ${file.dlpIds?.join(", ") || "none"}`);
|
|
259
298
|
* });
|
|
260
299
|
* ```
|
|
261
300
|
*/
|
|
262
301
|
getUserFiles(params: {
|
|
263
302
|
owner: Address;
|
|
264
303
|
subgraphUrl?: string;
|
|
265
|
-
}): Promise<UserFile[]>;
|
|
304
|
+
}, options?: ConsistencyOptions & PaginationOptions): Promise<UserFile[]>;
|
|
266
305
|
/**
|
|
267
306
|
* Fetches proof data for multiple files from the subgraph.
|
|
268
307
|
*
|
|
@@ -303,6 +342,8 @@ declare class DataController {
|
|
|
303
342
|
*/
|
|
304
343
|
getDLP(dlpId: number, options?: {
|
|
305
344
|
subgraphUrl?: string;
|
|
345
|
+
minBlock?: number;
|
|
346
|
+
waitForSync?: number;
|
|
306
347
|
}): Promise<{
|
|
307
348
|
id: number;
|
|
308
349
|
name: string;
|
|
@@ -363,7 +404,7 @@ declare class DataController {
|
|
|
363
404
|
getUserPermissions(params: {
|
|
364
405
|
user: Address;
|
|
365
406
|
subgraphUrl?: string;
|
|
366
|
-
}): Promise<Array<{
|
|
407
|
+
}, options?: ConsistencyOptions & PaginationOptions): Promise<Array<{
|
|
367
408
|
id: string;
|
|
368
409
|
grant: string;
|
|
369
410
|
nonce: bigint;
|
|
@@ -426,7 +467,7 @@ declare class DataController {
|
|
|
426
467
|
* });
|
|
427
468
|
* ```
|
|
428
469
|
*/
|
|
429
|
-
getUserTrustedServers(params: GetUserTrustedServersParams): Promise<TrustedServer[]>;
|
|
470
|
+
getUserTrustedServers(params: GetUserTrustedServersParams, options?: ConsistencyOptions & PaginationOptions): Promise<TrustedServer[]>;
|
|
430
471
|
/**
|
|
431
472
|
* Internal method: Query trusted servers via subgraph
|
|
432
473
|
*
|
|
@@ -447,48 +488,56 @@ declare class DataController {
|
|
|
447
488
|
*/
|
|
448
489
|
private _getUserTrustedServersViaRpc;
|
|
449
490
|
/**
|
|
450
|
-
*
|
|
491
|
+
* Retrieves total file count from Data Registry.
|
|
492
|
+
*
|
|
493
|
+
* @remarks
|
|
494
|
+
* Queries blockchain for complete file count across all users.
|
|
495
|
+
* Useful for pagination and network statistics.
|
|
496
|
+
*
|
|
497
|
+
* @returns Total number of registered files
|
|
498
|
+
*
|
|
499
|
+
* @throws {Error} Chain ID not available.
|
|
500
|
+
* Ensure network connection.
|
|
501
|
+
* @throws {Error} Contract read failed.
|
|
502
|
+
* Check RPC availability.
|
|
451
503
|
*
|
|
452
|
-
* @returns Promise resolving to the total file count
|
|
453
504
|
* @example
|
|
454
505
|
* ```typescript
|
|
455
|
-
* const
|
|
456
|
-
* console.log(`Total files
|
|
506
|
+
* const total = await vana.data.getTotalFilesCount();
|
|
507
|
+
* console.log(`Total files: ${total}`);
|
|
457
508
|
*
|
|
458
|
-
* //
|
|
459
|
-
* const
|
|
460
|
-
* const totalPages = Math.ceil(totalFiles / filesPerPage);
|
|
461
|
-
* console.log(`Total pages: ${totalPages}`);
|
|
509
|
+
* // Calculate pagination
|
|
510
|
+
* const pages = Math.ceil(total / 20);
|
|
462
511
|
* ```
|
|
463
512
|
*/
|
|
464
513
|
getTotalFilesCount(): Promise<number>;
|
|
465
514
|
/**
|
|
466
|
-
* Retrieves
|
|
515
|
+
* Retrieves file metadata by ID from the blockchain.
|
|
516
|
+
*
|
|
517
|
+
* @remarks
|
|
518
|
+
* Queries DataRegistry contract directly for file details.
|
|
519
|
+
* Works for any file ID regardless of ownership, enabling
|
|
520
|
+
* cross-user file discovery and verification.
|
|
521
|
+
*
|
|
522
|
+
* @param fileId - Numeric file ID to retrieve
|
|
523
|
+
*
|
|
524
|
+
* @returns UserFile object with metadata
|
|
525
|
+
*
|
|
526
|
+
* @throws {Error} Chain ID not available.
|
|
527
|
+
* Ensure proper network connection.
|
|
528
|
+
* @throws {Error} File not found.
|
|
529
|
+
* Verify file ID exists on-chain.
|
|
530
|
+
* @throws {Error} Contract call failed.
|
|
531
|
+
* Check network and RPC availability.
|
|
467
532
|
*
|
|
468
|
-
* @param fileId - The file ID to look up
|
|
469
|
-
* @returns Promise resolving to UserFile object
|
|
470
|
-
* @throws {Error} "Chain ID not available" - When wallet chain is not configured
|
|
471
|
-
* @throws {Error} "File not found" - When file ID doesn't exist or returns empty data
|
|
472
|
-
* @throws {Error} "Failed to fetch file {fileId}: {error}" - General contract read failures
|
|
473
533
|
* @example
|
|
474
534
|
* ```typescript
|
|
475
|
-
*
|
|
476
|
-
*
|
|
477
|
-
*
|
|
478
|
-
*
|
|
479
|
-
*
|
|
480
|
-
* owner: file.ownerAddress,
|
|
481
|
-
* addedAt: file.addedAtBlock
|
|
482
|
-
* });
|
|
483
|
-
* } catch (error) {
|
|
484
|
-
* console.error('File not found or error retrieving file:', error);
|
|
485
|
-
* }
|
|
535
|
+
* const file = await vana.data.getFileById(123);
|
|
536
|
+
* console.log(`File ${file.id}:`);
|
|
537
|
+
* console.log(` URL: ${file.url}`);
|
|
538
|
+
* console.log(` Owner: ${file.ownerAddress}`);
|
|
539
|
+
* console.log(` Block: ${file.addedAtBlock}`);
|
|
486
540
|
* ```
|
|
487
|
-
*
|
|
488
|
-
* This method queries the DataRegistry contract directly
|
|
489
|
-
* to get file details for any file ID, regardless of user ownership.
|
|
490
|
-
* This is useful for file lookup functionality where users can search
|
|
491
|
-
* for specific files by ID.
|
|
492
541
|
*/
|
|
493
542
|
getFileById(fileId: number): Promise<UserFile>;
|
|
494
543
|
/**
|
|
@@ -514,17 +563,13 @@ declare class DataController {
|
|
|
514
563
|
* console.log(`File ${fileId} registered with schema in tx ${transactionHash}`);
|
|
515
564
|
* ```
|
|
516
565
|
*/
|
|
517
|
-
registerFileWithSchema(url: string, schemaId: number): Promise<
|
|
518
|
-
fileId: number;
|
|
519
|
-
transactionHash: Address;
|
|
520
|
-
}>;
|
|
566
|
+
registerFileWithSchema(url: string, schemaId: number, options?: TransactionOptions): Promise<TransactionResult<"DataRegistry", "addFileWithSchema">>;
|
|
521
567
|
/**
|
|
522
568
|
* Gets the user's address from the wallet client.
|
|
523
569
|
*
|
|
524
570
|
* @returns Promise resolving to the user's wallet address
|
|
525
571
|
* @throws {Error} When no addresses are available in wallet client
|
|
526
572
|
*/
|
|
527
|
-
private getUserAddress;
|
|
528
573
|
/**
|
|
529
574
|
* Adds a file with permissions to the DataRegistry contract.
|
|
530
575
|
*
|
|
@@ -544,100 +589,174 @@ declare class DataController {
|
|
|
544
589
|
addFileWithPermissions(url: string, ownerAddress: Address, permissions?: Array<{
|
|
545
590
|
account: Address;
|
|
546
591
|
key: string;
|
|
547
|
-
}
|
|
548
|
-
fileId: number;
|
|
549
|
-
transactionHash: string;
|
|
550
|
-
}>;
|
|
592
|
+
}>, options?: TransactionOptions): Promise<TransactionResult<"DataRegistry", "addFileWithPermissions">>;
|
|
551
593
|
/**
|
|
552
594
|
* Adds a file to the registry with permissions and schema.
|
|
553
595
|
* This combines the functionality of addFileWithPermissions and schema validation.
|
|
554
596
|
*
|
|
597
|
+
* @remarks
|
|
598
|
+
* This method automatically encrypts permissions when a publicKey is provided.
|
|
599
|
+
* It generates the user's encryption key and encrypts it with each recipient's
|
|
600
|
+
* public key before registering on the blockchain.
|
|
601
|
+
*
|
|
555
602
|
* @param url - The URL of the file to register
|
|
556
603
|
* @param ownerAddress - The address of the file owner
|
|
557
|
-
* @param permissions - Array of permissions to grant
|
|
604
|
+
* @param permissions - Array of permissions to grant, each with account and publicKey properties
|
|
558
605
|
* @param schemaId - The schema ID to associate with the file (0 for no schema)
|
|
559
|
-
* @returns Promise resolving to
|
|
560
|
-
* @throws {Error} When chain
|
|
561
|
-
* @throws {
|
|
562
|
-
* @throws {Error} When
|
|
563
|
-
* @throws {Error}
|
|
606
|
+
* @returns Promise resolving to TransactionResult with fileId and transactionHash
|
|
607
|
+
* @throws {Error} "Chain ID not available" - When wallet chain is not configured
|
|
608
|
+
* @throws {Error} "Failed to generate encryption key" - When encryption key generation fails
|
|
609
|
+
* @throws {Error} "Permission for {account} must include 'publicKey'" - When publicKey is missing
|
|
610
|
+
* @throws {Error} "Failed to add file with permissions and schema: {error}" - When transaction fails
|
|
611
|
+
* @example
|
|
612
|
+
* ```typescript
|
|
613
|
+
* // Get server's public key
|
|
614
|
+
* const serverIdentity = await vana.server.getIdentity({
|
|
615
|
+
* userAddress: "0x..."
|
|
616
|
+
* });
|
|
617
|
+
*
|
|
618
|
+
* // Add file with permissions and schema
|
|
619
|
+
* const result = await vana.data.addFileWithPermissionsAndSchema(
|
|
620
|
+
* "ipfs://QmXxx...",
|
|
621
|
+
* ownerAddress,
|
|
622
|
+
* [{
|
|
623
|
+
* account: serverIdentity.address,
|
|
624
|
+
* publicKey: serverIdentity.publicKey
|
|
625
|
+
* }],
|
|
626
|
+
* schemaId
|
|
627
|
+
* );
|
|
628
|
+
*
|
|
629
|
+
* console.log(`File ${result.fileId} registered in tx ${result.hash}`);
|
|
630
|
+
* ```
|
|
564
631
|
*/
|
|
565
632
|
addFileWithPermissionsAndSchema(url: string, ownerAddress: Address, permissions?: Array<{
|
|
633
|
+
account: Address;
|
|
634
|
+
publicKey: string;
|
|
635
|
+
}>, schemaId?: number, options?: TransactionOptions): Promise<TransactionResult<"DataRegistry", "addFileWithPermissionsAndSchema">>;
|
|
636
|
+
/**
|
|
637
|
+
* Adds a file with pre-encrypted permissions and schema to the DataRegistry.
|
|
638
|
+
*
|
|
639
|
+
* @remarks
|
|
640
|
+
* This method is designed for relay services and advanced use cases where permissions
|
|
641
|
+
* have already been encrypted client-side. Unlike `addFileWithPermissionsAndSchema()`,
|
|
642
|
+
* this method expects permissions in the encrypted format with a 'key' field instead
|
|
643
|
+
* of 'publicKey'.
|
|
644
|
+
*
|
|
645
|
+
* This is typically used by relay endpoints that receive pre-encrypted data from
|
|
646
|
+
* the client SDK's `upload()` method, avoiding double encryption.
|
|
647
|
+
*
|
|
648
|
+
* @param url - The storage URL of the file (e.g., IPFS URL)
|
|
649
|
+
* @param ownerAddress - The address that will own this file
|
|
650
|
+
* @param permissions - Array of pre-encrypted permissions with 'account' and 'key' fields
|
|
651
|
+
* @param schemaId - Optional schema ID for data validation (defaults to 0)
|
|
652
|
+
* @returns Promise resolving to transaction result with hash and contract details
|
|
653
|
+
* @throws {Error} When chain ID is not available
|
|
654
|
+
* @throws {Error} When wallet is not connected
|
|
655
|
+
* @throws {Error} When transaction fails
|
|
656
|
+
* @example
|
|
657
|
+
* ```typescript
|
|
658
|
+
* // In a relay endpoint that receives pre-encrypted permissions
|
|
659
|
+
* const result = await vana.data.addFileWithEncryptedPermissionsAndSchema(
|
|
660
|
+
* "ipfs://QmXxx...",
|
|
661
|
+
* ownerAddress,
|
|
662
|
+
* [
|
|
663
|
+
* {
|
|
664
|
+
* account: "0xServerAddress...",
|
|
665
|
+
* key: "encrypted_key_string" // Already encrypted by client
|
|
666
|
+
* }
|
|
667
|
+
* ],
|
|
668
|
+
* schemaId
|
|
669
|
+
* );
|
|
670
|
+
*
|
|
671
|
+
* console.log(`File registered in tx ${result.hash}`);
|
|
672
|
+
* ```
|
|
673
|
+
*/
|
|
674
|
+
addFileWithEncryptedPermissionsAndSchema(url: string, ownerAddress: Address, permissions?: Array<{
|
|
566
675
|
account: Address;
|
|
567
676
|
key: string;
|
|
568
|
-
}>, schemaId?: number): Promise<
|
|
569
|
-
fileId: number;
|
|
570
|
-
transactionHash: string;
|
|
571
|
-
}>;
|
|
677
|
+
}>, schemaId?: number, options?: TransactionOptions): Promise<TransactionResult<"DataRegistry", "addFileWithPermissionsAndSchema">>;
|
|
572
678
|
/**
|
|
573
|
-
*
|
|
679
|
+
* Registers a data refiner for processing templates.
|
|
574
680
|
*
|
|
575
681
|
* @remarks
|
|
576
|
-
* Refiners
|
|
577
|
-
*
|
|
578
|
-
*
|
|
579
|
-
*
|
|
580
|
-
*
|
|
581
|
-
* @param params - Refiner
|
|
582
|
-
* @param params.
|
|
583
|
-
*
|
|
584
|
-
* @param params.
|
|
585
|
-
*
|
|
586
|
-
* @returns
|
|
587
|
-
*
|
|
588
|
-
* @throws {Error}
|
|
682
|
+
* Refiners define data transformation rules for DLPs.
|
|
683
|
+
* Associates schema, instructions, and processing logic.
|
|
684
|
+
*
|
|
685
|
+
* @param params - Refiner configuration
|
|
686
|
+
* @param params.dlpId - Data Liquidity Pool ID
|
|
687
|
+
* @param params.name - Refiner display name
|
|
688
|
+
* @param params.schemaId - Output schema ID.
|
|
689
|
+
* Obtain via `vana.schemas.list()`.
|
|
690
|
+
* @param params.refinementInstructionUrl - Processing instructions URL
|
|
691
|
+
*
|
|
692
|
+
* @returns Refiner ID and transaction hash
|
|
693
|
+
*
|
|
694
|
+
* @throws {Error} Chain ID not available.
|
|
695
|
+
* Ensure network connection.
|
|
696
|
+
* @throws {Error} Transaction failed.
|
|
697
|
+
* Check wallet balance and network status.
|
|
698
|
+
*
|
|
589
699
|
* @example
|
|
590
700
|
* ```typescript
|
|
591
701
|
* const result = await vana.data.addRefiner({
|
|
592
702
|
* dlpId: 1,
|
|
593
|
-
* name: "
|
|
703
|
+
* name: "Sentiment Analyzer",
|
|
594
704
|
* schemaId: 42,
|
|
595
705
|
* refinementInstructionUrl: "ipfs://QmXxx..."
|
|
596
706
|
* });
|
|
597
|
-
* console.log(`
|
|
707
|
+
* console.log(`Refiner ${result.refinerId} created`);
|
|
598
708
|
* ```
|
|
599
709
|
*/
|
|
600
|
-
addRefiner(params: AddRefinerParams): Promise<AddRefinerResult>;
|
|
710
|
+
addRefiner(params: AddRefinerParams, options?: TransactionOptions): Promise<AddRefinerResult>;
|
|
601
711
|
/**
|
|
602
|
-
* Retrieves
|
|
712
|
+
* Retrieves refiner configuration by ID.
|
|
603
713
|
*
|
|
604
714
|
* @remarks
|
|
605
|
-
* Queries
|
|
606
|
-
*
|
|
715
|
+
* Queries DataRefinerRegistry for refiner details.
|
|
716
|
+
* Returns DLP association, schema, and processing instructions.
|
|
717
|
+
*
|
|
718
|
+
* @param refinerId - Numeric refiner ID
|
|
719
|
+
*
|
|
720
|
+
* @returns Refiner configuration object
|
|
721
|
+
*
|
|
722
|
+
* @throws {Error} Chain ID not available.
|
|
723
|
+
* Ensure network connection.
|
|
724
|
+
* @throws {Error} Refiner not found.
|
|
725
|
+
* Verify refiner ID exists.
|
|
726
|
+
* @throws {Error} Contract read failed.
|
|
727
|
+
* Check network and RPC status.
|
|
607
728
|
*
|
|
608
|
-
* @param refinerId - The numeric refiner ID to retrieve
|
|
609
|
-
* @returns Promise resolving to the refiner information object
|
|
610
|
-
* @throws {Error} When chain ID is not available - "Chain ID not available"
|
|
611
|
-
* @throws {Error} When refiner doesn't exist - "Refiner with ID {refinerId} does not exist"
|
|
612
|
-
* @throws {Error} When contract read fails - "Failed to fetch refiner: {error}"
|
|
613
729
|
* @example
|
|
614
730
|
* ```typescript
|
|
615
731
|
* const refiner = await vana.data.getRefiner(1);
|
|
616
|
-
* console.log({
|
|
617
|
-
*
|
|
618
|
-
*
|
|
619
|
-
* schema: refiner.schemaId,
|
|
620
|
-
* instructions: refiner.refinementInstructionUrl
|
|
621
|
-
* });
|
|
732
|
+
* console.log(`Refiner: ${refiner.name}`);
|
|
733
|
+
* console.log(`DLP: ${refiner.dlpId}`);
|
|
734
|
+
* console.log(`Schema: ${refiner.schemaId}`);
|
|
622
735
|
* ```
|
|
623
736
|
*/
|
|
624
737
|
getRefiner(refinerId: number): Promise<Refiner>;
|
|
625
738
|
/**
|
|
626
|
-
* Validates
|
|
739
|
+
* Validates schema ID existence.
|
|
627
740
|
*
|
|
628
741
|
* @remarks
|
|
629
|
-
*
|
|
630
|
-
*
|
|
742
|
+
* Verifies schema registration in DataRegistry.
|
|
743
|
+
* Check before using schemas for uploads.
|
|
744
|
+
*
|
|
745
|
+
* @param schemaId - Numeric schema ID to validate
|
|
746
|
+
*
|
|
747
|
+
* @returns True if schema exists, false otherwise
|
|
748
|
+
*
|
|
749
|
+
* @throws {Error} Chain ID not available.
|
|
750
|
+
* Ensure network connection.
|
|
751
|
+
* @throws {Error} Contract read failed.
|
|
752
|
+
* Check RPC availability.
|
|
631
753
|
*
|
|
632
|
-
* @param schemaId - The numeric schema ID to validate
|
|
633
|
-
* @returns Promise resolving to true if schema exists, false otherwise
|
|
634
754
|
* @example
|
|
635
755
|
* ```typescript
|
|
636
|
-
* const
|
|
637
|
-
* if (
|
|
638
|
-
*
|
|
639
|
-
*
|
|
640
|
-
* console.log('Schema 42 does not exist');
|
|
756
|
+
* const valid = await vana.data.isValidSchemaId(42);
|
|
757
|
+
* if (valid) {
|
|
758
|
+
* // Safe to use schema 42
|
|
759
|
+
* await vana.data.upload({ schemaId: 42, ... });
|
|
641
760
|
* }
|
|
642
761
|
* ```
|
|
643
762
|
*/
|
|
@@ -679,7 +798,7 @@ declare class DataController {
|
|
|
679
798
|
* console.log(`Schema updated in tx ${result.transactionHash}`);
|
|
680
799
|
* ```
|
|
681
800
|
*/
|
|
682
|
-
updateSchemaId(params: UpdateSchemaIdParams): Promise<UpdateSchemaIdResult>;
|
|
801
|
+
updateSchemaId(params: UpdateSchemaIdParams, options?: TransactionOptions): Promise<UpdateSchemaIdResult>;
|
|
683
802
|
/**
|
|
684
803
|
* Uploads an encrypted file and grants permission to a party with a public key.
|
|
685
804
|
*
|
|
@@ -689,16 +808,10 @@ declare class DataController {
|
|
|
689
808
|
* 3. Encrypts the user's encryption key with the provided public key
|
|
690
809
|
* 4. Registers the file with permissions
|
|
691
810
|
*
|
|
692
|
-
* @param
|
|
693
|
-
* @param permissions - Array of permissions to grant, each with account address and public key
|
|
694
|
-
* @param filename - Optional filename for the upload
|
|
695
|
-
* @param providerName - Optional storage provider to use
|
|
811
|
+
* @param params - Upload parameters including data, permissions, and options
|
|
696
812
|
* @returns Promise resolving to upload result with file ID and storage URL
|
|
697
813
|
*/
|
|
698
|
-
uploadFileWithPermissions(
|
|
699
|
-
account: Address;
|
|
700
|
-
publicKey: string;
|
|
701
|
-
}>, filename?: string, providerName?: string): Promise<UploadEncryptedFileResult>;
|
|
814
|
+
uploadFileWithPermissions(params: UploadFileWithPermissionsParams): Promise<UploadEncryptedFileResult>;
|
|
702
815
|
/**
|
|
703
816
|
* Uploads content to storage without registering it on the blockchain.
|
|
704
817
|
* This method only handles the storage upload and returns the file URL.
|
|
@@ -722,23 +835,27 @@ declare class DataController {
|
|
|
722
835
|
* For advanced users who need more control over transaction timing,
|
|
723
836
|
* use `submitFilePermission()` instead.
|
|
724
837
|
*
|
|
725
|
-
* @param
|
|
726
|
-
* @param
|
|
727
|
-
* @param
|
|
838
|
+
* @param params - Parameters for adding file permission
|
|
839
|
+
* @param params.fileId - The ID of the file to grant permission for
|
|
840
|
+
* @param params.account - The recipient's wallet address that will access the file
|
|
841
|
+
* @param params.publicKey - The recipient's public key for encryption.
|
|
842
|
+
* Obtain via `vana.server.getIdentity(account).publicKey`
|
|
728
843
|
* @returns Promise resolving to permission data from PermissionGranted event
|
|
729
844
|
* @throws {Error} "No addresses available in wallet client" - When wallet is not connected
|
|
730
845
|
* @throws {Error} "Chain ID not available" - When wallet chain is not configured
|
|
731
846
|
* @throws {Error} "Failed to add permission to file: {error}" - When transaction fails or user doesn't own file
|
|
732
847
|
* @example
|
|
733
848
|
* ```typescript
|
|
734
|
-
* const result = await vana.data.addPermissionToFile(
|
|
849
|
+
* const result = await vana.data.addPermissionToFile({
|
|
850
|
+
* fileId: 123,
|
|
851
|
+
* account: "0xRecipientAddress...",
|
|
852
|
+
* publicKey: "0xRecipientPublicKey..."
|
|
853
|
+
* });
|
|
735
854
|
* console.log(`Permission granted to ${result.account} for file ${result.fileId}`);
|
|
736
855
|
* console.log(`Transaction: ${result.transactionHash}`);
|
|
737
856
|
* ```
|
|
738
857
|
*/
|
|
739
|
-
addPermissionToFile(
|
|
740
|
-
eventData?: FilePermissionResult;
|
|
741
|
-
}>;
|
|
858
|
+
addPermissionToFile(params: AddFilePermissionParams, options?: TransactionOptions): Promise<TransactionResult<"DataRegistry", "addFilePermission">>;
|
|
742
859
|
/**
|
|
743
860
|
* Submits a file permission transaction to the blockchain.
|
|
744
861
|
*
|
|
@@ -750,7 +867,7 @@ declare class DataController {
|
|
|
750
867
|
* @param fileId - The ID of the file to grant permission for
|
|
751
868
|
* @param account - The recipient's wallet address that will access the file
|
|
752
869
|
* @param publicKey - The recipient's public key for encryption.
|
|
753
|
-
* Obtain via `vana.server.getIdentity(account).
|
|
870
|
+
* Obtain via `vana.server.getIdentity(account).publicKey`
|
|
754
871
|
* @returns Promise resolving to TransactionResult for tracking the transaction
|
|
755
872
|
* @throws {Error} When chain ID is not available
|
|
756
873
|
* @throws {Error} When encryption key generation fails
|
|
@@ -767,9 +884,7 @@ declare class DataController {
|
|
|
767
884
|
* console.log(`Permission granted with ID: ${result.permissionId}`);
|
|
768
885
|
* ```
|
|
769
886
|
*/
|
|
770
|
-
submitFilePermission(fileId: number, account: Address, publicKey: string): Promise<TransactionResult
|
|
771
|
-
eventData?: FilePermissionResult;
|
|
772
|
-
}>;
|
|
887
|
+
submitFilePermission(fileId: number, account: Address, publicKey: string, options?: TransactionOptions): Promise<TransactionResult<"DataRegistry", "addFilePermission">>;
|
|
773
888
|
/**
|
|
774
889
|
* Gets the encrypted key for a specific account's permission to access a file.
|
|
775
890
|
*
|
|
@@ -788,10 +903,11 @@ declare class DataController {
|
|
|
788
903
|
*
|
|
789
904
|
* @param file - The file to decrypt
|
|
790
905
|
* @param privateKey - The private key to decrypt the user's encryption key
|
|
791
|
-
* @param
|
|
906
|
+
* @param options - Optional decryption configuration
|
|
907
|
+
* @param options.account - The account address that has permission (defaults to current wallet account)
|
|
792
908
|
* @returns Promise resolving to the decrypted file data
|
|
793
909
|
*/
|
|
794
|
-
decryptFileWithPermission(file: UserFile, privateKey: string,
|
|
910
|
+
decryptFileWithPermission(file: UserFile, privateKey: string, options?: DecryptFileWithPermissionOptions): Promise<Blob>;
|
|
795
911
|
/**
|
|
796
912
|
* Simple network-agnostic fetch utility for retrieving file content.
|
|
797
913
|
*
|
|
@@ -936,6 +1052,9 @@ declare class DataController {
|
|
|
936
1052
|
* ```
|
|
937
1053
|
*/
|
|
938
1054
|
fetchAndValidateSchema(url: string): Promise<DataSchema>;
|
|
1055
|
+
/**
|
|
1056
|
+
* Polls for confirmation of a relayer operation.
|
|
1057
|
+
* @internal
|
|
1058
|
+
*/
|
|
1059
|
+
private pollRelayerForConfirmation;
|
|
939
1060
|
}
|
|
940
|
-
|
|
941
|
-
export { DataController };
|