@cmdoss/memwal-sdk 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ARCHITECTURE.md +463 -0
- package/BENCHMARKS.md +238 -0
- package/README.md +142 -0
- package/dist/access/PermissionService.d.ts +179 -0
- package/dist/access/PermissionService.d.ts.map +1 -0
- package/dist/access/PermissionService.js +445 -0
- package/dist/access/PermissionService.js.map +1 -0
- package/dist/access/index.d.ts +8 -0
- package/dist/access/index.d.ts.map +1 -0
- package/dist/access/index.js +7 -0
- package/dist/access/index.js.map +1 -0
- package/dist/aggregation/AggregationService.d.ts +132 -0
- package/dist/aggregation/AggregationService.d.ts.map +1 -0
- package/dist/aggregation/AggregationService.js +225 -0
- package/dist/aggregation/AggregationService.js.map +1 -0
- package/dist/aggregation/index.d.ts +8 -0
- package/dist/aggregation/index.d.ts.map +1 -0
- package/dist/aggregation/index.js +7 -0
- package/dist/aggregation/index.js.map +1 -0
- package/dist/ai-sdk/PDWVectorStore.d.ts +124 -0
- package/dist/ai-sdk/PDWVectorStore.d.ts.map +1 -0
- package/dist/ai-sdk/PDWVectorStore.js +557 -0
- package/dist/ai-sdk/PDWVectorStore.js.map +1 -0
- package/dist/ai-sdk/index.d.ts +45 -0
- package/dist/ai-sdk/index.d.ts.map +1 -0
- package/dist/ai-sdk/index.js +45 -0
- package/dist/ai-sdk/index.js.map +1 -0
- package/dist/ai-sdk/tools.d.ts +153 -0
- package/dist/ai-sdk/tools.d.ts.map +1 -0
- package/dist/ai-sdk/tools.js +312 -0
- package/dist/ai-sdk/tools.js.map +1 -0
- package/dist/ai-sdk/types.d.ts +336 -0
- package/dist/ai-sdk/types.d.ts.map +1 -0
- package/dist/ai-sdk/types.js +36 -0
- package/dist/ai-sdk/types.js.map +1 -0
- package/dist/api/client.d.ts +43 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +136 -0
- package/dist/api/client.js.map +1 -0
- package/dist/batch/BatchManager.d.ts +147 -0
- package/dist/batch/BatchManager.d.ts.map +1 -0
- package/dist/batch/BatchManager.js +427 -0
- package/dist/batch/BatchManager.js.map +1 -0
- package/dist/batch/BatchingService.d.ts +122 -0
- package/dist/batch/BatchingService.d.ts.map +1 -0
- package/dist/batch/BatchingService.js +301 -0
- package/dist/batch/BatchingService.js.map +1 -0
- package/dist/batch/MemoryProcessingCache.d.ts +147 -0
- package/dist/batch/MemoryProcessingCache.d.ts.map +1 -0
- package/dist/batch/MemoryProcessingCache.js +349 -0
- package/dist/batch/MemoryProcessingCache.js.map +1 -0
- package/dist/batch/index.d.ts +13 -0
- package/dist/batch/index.d.ts.map +1 -0
- package/dist/batch/index.js +10 -0
- package/dist/batch/index.js.map +1 -0
- package/dist/browser.d.ts +73 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +66 -0
- package/dist/browser.js.map +1 -0
- package/dist/chat/index.d.ts +13 -0
- package/dist/chat/index.d.ts.map +1 -0
- package/dist/chat/index.js +14 -0
- package/dist/chat/index.js.map +1 -0
- package/dist/client/ClientMemoryManager.d.ts +202 -0
- package/dist/client/ClientMemoryManager.d.ts.map +1 -0
- package/dist/client/ClientMemoryManager.js +764 -0
- package/dist/client/ClientMemoryManager.js.map +1 -0
- package/dist/client/PersonalDataWallet.d.ts +406 -0
- package/dist/client/PersonalDataWallet.d.ts.map +1 -0
- package/dist/client/PersonalDataWallet.js +229 -0
- package/dist/client/PersonalDataWallet.js.map +1 -0
- package/dist/client/SimplePDWClient.d.ts +534 -0
- package/dist/client/SimplePDWClient.d.ts.map +1 -0
- package/dist/client/SimplePDWClient.js +876 -0
- package/dist/client/SimplePDWClient.js.map +1 -0
- package/dist/client/factory.d.ts +99 -0
- package/dist/client/factory.d.ts.map +1 -0
- package/dist/client/factory.js +126 -0
- package/dist/client/factory.js.map +1 -0
- package/dist/client/namespaces/AnalyticsNamespace.d.ts +178 -0
- package/dist/client/namespaces/AnalyticsNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/AnalyticsNamespace.js +261 -0
- package/dist/client/namespaces/AnalyticsNamespace.js.map +1 -0
- package/dist/client/namespaces/BatchNamespace.d.ts +120 -0
- package/dist/client/namespaces/BatchNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/BatchNamespace.js +261 -0
- package/dist/client/namespaces/BatchNamespace.js.map +1 -0
- package/dist/client/namespaces/CacheNamespace.d.ts +80 -0
- package/dist/client/namespaces/CacheNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/CacheNamespace.js +100 -0
- package/dist/client/namespaces/CacheNamespace.js.map +1 -0
- package/dist/client/namespaces/CapabilityNamespace.d.ts +145 -0
- package/dist/client/namespaces/CapabilityNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/CapabilityNamespace.js +181 -0
- package/dist/client/namespaces/CapabilityNamespace.js.map +1 -0
- package/dist/client/namespaces/ChatNamespace.d.ts +110 -0
- package/dist/client/namespaces/ChatNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/ChatNamespace.js +123 -0
- package/dist/client/namespaces/ChatNamespace.js.map +1 -0
- package/dist/client/namespaces/ClassifyNamespace.d.ts +96 -0
- package/dist/client/namespaces/ClassifyNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/ClassifyNamespace.js +149 -0
- package/dist/client/namespaces/ClassifyNamespace.js.map +1 -0
- package/dist/client/namespaces/ContextNamespace.d.ts +150 -0
- package/dist/client/namespaces/ContextNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/ContextNamespace.js +250 -0
- package/dist/client/namespaces/ContextNamespace.js.map +1 -0
- package/dist/client/namespaces/EmbeddingsNamespace.d.ts +64 -0
- package/dist/client/namespaces/EmbeddingsNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/EmbeddingsNamespace.js +86 -0
- package/dist/client/namespaces/EmbeddingsNamespace.js.map +1 -0
- package/dist/client/namespaces/EncryptionNamespace.d.ts +128 -0
- package/dist/client/namespaces/EncryptionNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/EncryptionNamespace.js +161 -0
- package/dist/client/namespaces/EncryptionNamespace.js.map +1 -0
- package/dist/client/namespaces/GraphNamespace.d.ts +168 -0
- package/dist/client/namespaces/GraphNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/GraphNamespace.js +314 -0
- package/dist/client/namespaces/GraphNamespace.js.map +1 -0
- package/dist/client/namespaces/IndexNamespace.d.ts +141 -0
- package/dist/client/namespaces/IndexNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/IndexNamespace.js +238 -0
- package/dist/client/namespaces/IndexNamespace.js.map +1 -0
- package/dist/client/namespaces/MemoryNamespace.d.ts +277 -0
- package/dist/client/namespaces/MemoryNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/MemoryNamespace.js +907 -0
- package/dist/client/namespaces/MemoryNamespace.js.map +1 -0
- package/dist/client/namespaces/PermissionsNamespace.d.ts +114 -0
- package/dist/client/namespaces/PermissionsNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/PermissionsNamespace.js +179 -0
- package/dist/client/namespaces/PermissionsNamespace.js.map +1 -0
- package/dist/client/namespaces/PipelineNamespace.d.ts +125 -0
- package/dist/client/namespaces/PipelineNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/PipelineNamespace.js +171 -0
- package/dist/client/namespaces/PipelineNamespace.js.map +1 -0
- package/dist/client/namespaces/SearchNamespace.d.ts +382 -0
- package/dist/client/namespaces/SearchNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/SearchNamespace.js +821 -0
- package/dist/client/namespaces/SearchNamespace.js.map +1 -0
- package/dist/client/namespaces/StorageNamespace.d.ts +180 -0
- package/dist/client/namespaces/StorageNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/StorageNamespace.js +354 -0
- package/dist/client/namespaces/StorageNamespace.js.map +1 -0
- package/dist/client/namespaces/TxNamespace.d.ts +143 -0
- package/dist/client/namespaces/TxNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/TxNamespace.js +208 -0
- package/dist/client/namespaces/TxNamespace.js.map +1 -0
- package/dist/client/namespaces/WalletNamespace.d.ts +124 -0
- package/dist/client/namespaces/WalletNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/WalletNamespace.js +197 -0
- package/dist/client/namespaces/WalletNamespace.js.map +1 -0
- package/dist/client/namespaces/consolidated/AINamespace.d.ts +265 -0
- package/dist/client/namespaces/consolidated/AINamespace.d.ts.map +1 -0
- package/dist/client/namespaces/consolidated/AINamespace.js +390 -0
- package/dist/client/namespaces/consolidated/AINamespace.js.map +1 -0
- package/dist/client/namespaces/consolidated/BlockchainNamespace.d.ts +265 -0
- package/dist/client/namespaces/consolidated/BlockchainNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/consolidated/BlockchainNamespace.js +412 -0
- package/dist/client/namespaces/consolidated/BlockchainNamespace.js.map +1 -0
- package/dist/client/namespaces/consolidated/SecurityNamespace.d.ts +354 -0
- package/dist/client/namespaces/consolidated/SecurityNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/consolidated/SecurityNamespace.js +522 -0
- package/dist/client/namespaces/consolidated/SecurityNamespace.js.map +1 -0
- package/dist/client/namespaces/consolidated/StorageNamespace.d.ts +235 -0
- package/dist/client/namespaces/consolidated/StorageNamespace.d.ts.map +1 -0
- package/dist/client/namespaces/consolidated/StorageNamespace.js +351 -0
- package/dist/client/namespaces/consolidated/StorageNamespace.js.map +1 -0
- package/dist/client/namespaces/consolidated/index.d.ts +17 -0
- package/dist/client/namespaces/consolidated/index.d.ts.map +1 -0
- package/dist/client/namespaces/consolidated/index.js +13 -0
- package/dist/client/namespaces/consolidated/index.js.map +1 -0
- package/dist/client/signers/KeypairSigner.d.ts +55 -0
- package/dist/client/signers/KeypairSigner.d.ts.map +1 -0
- package/dist/client/signers/KeypairSigner.js +84 -0
- package/dist/client/signers/KeypairSigner.js.map +1 -0
- package/dist/client/signers/UnifiedSigner.d.ts +88 -0
- package/dist/client/signers/UnifiedSigner.d.ts.map +1 -0
- package/dist/client/signers/UnifiedSigner.js +13 -0
- package/dist/client/signers/UnifiedSigner.js.map +1 -0
- package/dist/client/signers/WalletAdapterSigner.d.ts +94 -0
- package/dist/client/signers/WalletAdapterSigner.d.ts.map +1 -0
- package/dist/client/signers/WalletAdapterSigner.js +91 -0
- package/dist/client/signers/WalletAdapterSigner.js.map +1 -0
- package/dist/client/signers/index.d.ts +14 -0
- package/dist/client/signers/index.d.ts.map +1 -0
- package/dist/client/signers/index.js +12 -0
- package/dist/client/signers/index.js.map +1 -0
- package/dist/config/ConfigurationHelper.d.ts +167 -0
- package/dist/config/ConfigurationHelper.d.ts.map +1 -0
- package/dist/config/ConfigurationHelper.js +283 -0
- package/dist/config/ConfigurationHelper.js.map +1 -0
- package/dist/config/defaults.d.ts +9 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +49 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/index.d.ts +9 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +8 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/validation.d.ts +12 -0
- package/dist/config/validation.d.ts.map +1 -0
- package/dist/config/validation.js +61 -0
- package/dist/config/validation.js.map +1 -0
- package/dist/core/index.d.ts +11 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +13 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/interfaces/IService.d.ts +162 -0
- package/dist/core/interfaces/IService.d.ts.map +1 -0
- package/dist/core/interfaces/IService.js +159 -0
- package/dist/core/interfaces/IService.js.map +1 -0
- package/dist/core/interfaces/index.d.ts +7 -0
- package/dist/core/interfaces/index.d.ts.map +1 -0
- package/dist/core/interfaces/index.js +7 -0
- package/dist/core/interfaces/index.js.map +1 -0
- package/dist/core/types/capability.d.ts +268 -0
- package/dist/core/types/capability.d.ts.map +1 -0
- package/dist/core/types/capability.js +16 -0
- package/dist/core/types/capability.js.map +1 -0
- package/dist/core/types/index.d.ts +750 -0
- package/dist/core/types/index.d.ts.map +1 -0
- package/dist/core/types/index.js +6 -0
- package/dist/core/types/index.js.map +1 -0
- package/dist/core/types/wallet.d.ts +254 -0
- package/dist/core/types/wallet.d.ts.map +1 -0
- package/dist/core/types/wallet.js +27 -0
- package/dist/core/types/wallet.js.map +1 -0
- package/dist/core/types.d.ts +8 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +8 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/wallet.d.ts +209 -0
- package/dist/core/wallet.d.ts.map +1 -0
- package/dist/core/wallet.js +27 -0
- package/dist/core/wallet.js.map +1 -0
- package/dist/embedding/index.d.ts +9 -0
- package/dist/embedding/index.d.ts.map +1 -0
- package/dist/embedding/index.js +8 -0
- package/dist/embedding/index.js.map +1 -0
- package/dist/embedding/types.d.ts +302 -0
- package/dist/embedding/types.d.ts.map +1 -0
- package/dist/embedding/types.js +9 -0
- package/dist/embedding/types.js.map +1 -0
- package/dist/encryption/index.d.ts +14 -0
- package/dist/encryption/index.d.ts.map +1 -0
- package/dist/encryption/index.js +14 -0
- package/dist/encryption/index.js.map +1 -0
- package/dist/errors/index.d.ts +149 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +301 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/recovery.d.ts +128 -0
- package/dist/errors/recovery.d.ts.map +1 -0
- package/dist/errors/recovery.js +320 -0
- package/dist/errors/recovery.js.map +1 -0
- package/dist/errors/validation.d.ts +106 -0
- package/dist/errors/validation.d.ts.map +1 -0
- package/dist/errors/validation.js +354 -0
- package/dist/errors/validation.js.map +1 -0
- package/dist/generated/pdw/capability.d.ts +223 -0
- package/dist/generated/pdw/capability.d.ts.map +1 -0
- package/dist/generated/pdw/capability.js +238 -0
- package/dist/generated/pdw/capability.js.map +1 -0
- package/dist/generated/pdw/deps/sui/object.d.ts +9 -0
- package/dist/generated/pdw/deps/sui/object.d.ts.map +1 -0
- package/dist/generated/pdw/deps/sui/object.js +11 -0
- package/dist/generated/pdw/deps/sui/object.js.map +1 -0
- package/dist/generated/pdw/deps/sui/vec_map.d.ts +37 -0
- package/dist/generated/pdw/deps/sui/vec_map.d.ts.map +1 -0
- package/dist/generated/pdw/deps/sui/vec_map.js +28 -0
- package/dist/generated/pdw/deps/sui/vec_map.js.map +1 -0
- package/dist/generated/pdw/memory.d.ts +676 -0
- package/dist/generated/pdw/memory.d.ts.map +1 -0
- package/dist/generated/pdw/memory.js +681 -0
- package/dist/generated/pdw/memory.js.map +1 -0
- package/dist/generated/pdw/wallet.d.ts +78 -0
- package/dist/generated/pdw/wallet.d.ts.map +1 -0
- package/dist/generated/pdw/wallet.js +89 -0
- package/dist/generated/pdw/wallet.js.map +1 -0
- package/dist/generated/utils/index.d.ts +12 -0
- package/dist/generated/utils/index.d.ts.map +1 -0
- package/dist/generated/utils/index.js +132 -0
- package/dist/generated/utils/index.js.map +1 -0
- package/dist/graph/BrowserKnowledgeGraphManager.d.ts +101 -0
- package/dist/graph/BrowserKnowledgeGraphManager.d.ts.map +1 -0
- package/dist/graph/BrowserKnowledgeGraphManager.js +411 -0
- package/dist/graph/BrowserKnowledgeGraphManager.js.map +1 -0
- package/dist/graph/GraphService.d.ts +194 -0
- package/dist/graph/GraphService.d.ts.map +1 -0
- package/dist/graph/GraphService.js +662 -0
- package/dist/graph/GraphService.js.map +1 -0
- package/dist/graph/KnowledgeGraphManager.d.ts +161 -0
- package/dist/graph/KnowledgeGraphManager.d.ts.map +1 -0
- package/dist/graph/KnowledgeGraphManager.js +495 -0
- package/dist/graph/KnowledgeGraphManager.js.map +1 -0
- package/dist/graph/index.d.ts +11 -0
- package/dist/graph/index.d.ts.map +1 -0
- package/dist/graph/index.js +9 -0
- package/dist/graph/index.js.map +1 -0
- package/dist/hooks.wip/index.d.ts +55 -0
- package/dist/hooks.wip/index.d.ts.map +1 -0
- package/dist/hooks.wip/index.js +58 -0
- package/dist/hooks.wip/index.js.map +1 -0
- package/dist/hooks.wip/useCreateMemory.d.ts +111 -0
- package/dist/hooks.wip/useCreateMemory.d.ts.map +1 -0
- package/dist/hooks.wip/useCreateMemory.js +149 -0
- package/dist/hooks.wip/useCreateMemory.js.map +1 -0
- package/dist/hooks.wip/useCreateMemoryBatch.d.ts +122 -0
- package/dist/hooks.wip/useCreateMemoryBatch.d.ts.map +1 -0
- package/dist/hooks.wip/useCreateMemoryBatch.js +221 -0
- package/dist/hooks.wip/useCreateMemoryBatch.js.map +1 -0
- package/dist/hooks.wip/useKnowledgeGraph.d.ts +66 -0
- package/dist/hooks.wip/useKnowledgeGraph.d.ts.map +1 -0
- package/dist/hooks.wip/useKnowledgeGraph.js +229 -0
- package/dist/hooks.wip/useKnowledgeGraph.js.map +1 -0
- package/dist/hooks.wip/useMemoryChat.d.ts +106 -0
- package/dist/hooks.wip/useMemoryChat.d.ts.map +1 -0
- package/dist/hooks.wip/useMemoryChat.js +284 -0
- package/dist/hooks.wip/useMemoryChat.js.map +1 -0
- package/dist/hooks.wip/useMemoryIndex.d.ts +90 -0
- package/dist/hooks.wip/useMemoryIndex.d.ts.map +1 -0
- package/dist/hooks.wip/useMemoryIndex.js +218 -0
- package/dist/hooks.wip/useMemoryIndex.js.map +1 -0
- package/dist/hooks.wip/useMemoryManager.d.ts +35 -0
- package/dist/hooks.wip/useMemoryManager.d.ts.map +1 -0
- package/dist/hooks.wip/useMemoryManager.js +86 -0
- package/dist/hooks.wip/useMemoryManager.js.map +1 -0
- package/dist/hooks.wip/useMemorySearch.d.ts +100 -0
- package/dist/hooks.wip/useMemorySearch.d.ts.map +1 -0
- package/dist/hooks.wip/useMemorySearch.js +278 -0
- package/dist/hooks.wip/useMemorySearch.js.map +1 -0
- package/dist/hooks.wip/useMemoryServices.d.ts +80 -0
- package/dist/hooks.wip/useMemoryServices.d.ts.map +1 -0
- package/dist/hooks.wip/useMemoryServices.js +264 -0
- package/dist/hooks.wip/useMemoryServices.js.map +1 -0
- package/dist/hooks.wip/usePDWRAG.d.ts +112 -0
- package/dist/hooks.wip/usePDWRAG.d.ts.map +1 -0
- package/dist/hooks.wip/usePDWRAG.js +121 -0
- package/dist/hooks.wip/usePDWRAG.js.map +1 -0
- package/dist/hooks.wip/usePDWVectorStore.d.ts +68 -0
- package/dist/hooks.wip/usePDWVectorStore.d.ts.map +1 -0
- package/dist/hooks.wip/usePDWVectorStore.js +102 -0
- package/dist/hooks.wip/usePDWVectorStore.js.map +1 -0
- package/dist/hooks.wip/useRetrieveEmbedding.d.ts +138 -0
- package/dist/hooks.wip/useRetrieveEmbedding.d.ts.map +1 -0
- package/dist/hooks.wip/useRetrieveEmbedding.js +121 -0
- package/dist/hooks.wip/useRetrieveEmbedding.js.map +1 -0
- package/dist/hooks.wip/useSearchMemories.d.ts +103 -0
- package/dist/hooks.wip/useSearchMemories.d.ts.map +1 -0
- package/dist/hooks.wip/useSearchMemories.js +146 -0
- package/dist/hooks.wip/useSearchMemories.js.map +1 -0
- package/dist/hooks.wip/useStoreEmbedding.d.ts +174 -0
- package/dist/hooks.wip/useStoreEmbedding.d.ts.map +1 -0
- package/dist/hooks.wip/useStoreEmbedding.js +167 -0
- package/dist/hooks.wip/useStoreEmbedding.js.map +1 -0
- package/dist/hooks.wip/useWalletMemories.d.ts +119 -0
- package/dist/hooks.wip/useWalletMemories.d.ts.map +1 -0
- package/dist/hooks.wip/useWalletMemories.js +166 -0
- package/dist/hooks.wip/useWalletMemories.js.map +1 -0
- package/dist/hooks.wip/utils/cache.d.ts +25 -0
- package/dist/hooks.wip/utils/cache.d.ts.map +1 -0
- package/dist/hooks.wip/utils/cache.js +38 -0
- package/dist/hooks.wip/utils/cache.js.map +1 -0
- package/dist/hooks.wip/utils/types.d.ts +138 -0
- package/dist/hooks.wip/utils/types.d.ts.map +1 -0
- package/dist/hooks.wip/utils/types.js +5 -0
- package/dist/hooks.wip/utils/types.js.map +1 -0
- package/dist/index.d.ts +190 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +298 -0
- package/dist/index.js.map +1 -0
- package/dist/infrastructure/ai/EmbeddingService.d.ts +101 -0
- package/dist/infrastructure/ai/EmbeddingService.d.ts.map +1 -0
- package/dist/infrastructure/ai/EmbeddingService.js +242 -0
- package/dist/infrastructure/ai/EmbeddingService.js.map +1 -0
- package/dist/infrastructure/ai/GeminiAIService.d.ts +84 -0
- package/dist/infrastructure/ai/GeminiAIService.d.ts.map +1 -0
- package/dist/infrastructure/ai/GeminiAIService.js +300 -0
- package/dist/infrastructure/ai/GeminiAIService.js.map +1 -0
- package/dist/infrastructure/ai/index.d.ts +8 -0
- package/dist/infrastructure/ai/index.d.ts.map +1 -0
- package/dist/infrastructure/ai/index.js +8 -0
- package/dist/infrastructure/ai/index.js.map +1 -0
- package/dist/infrastructure/index.d.ts +16 -0
- package/dist/infrastructure/index.d.ts.map +1 -0
- package/dist/infrastructure/index.js +19 -0
- package/dist/infrastructure/index.js.map +1 -0
- package/dist/infrastructure/seal/EncryptionService.d.ts +162 -0
- package/dist/infrastructure/seal/EncryptionService.d.ts.map +1 -0
- package/dist/infrastructure/seal/EncryptionService.js +466 -0
- package/dist/infrastructure/seal/EncryptionService.js.map +1 -0
- package/dist/infrastructure/seal/SealService.d.ts +132 -0
- package/dist/infrastructure/seal/SealService.d.ts.map +1 -0
- package/dist/infrastructure/seal/SealService.js +473 -0
- package/dist/infrastructure/seal/SealService.js.map +1 -0
- package/dist/infrastructure/seal/index.d.ts +8 -0
- package/dist/infrastructure/seal/index.d.ts.map +1 -0
- package/dist/infrastructure/seal/index.js +8 -0
- package/dist/infrastructure/seal/index.js.map +1 -0
- package/dist/infrastructure/sui/BlockchainManager.d.ts +161 -0
- package/dist/infrastructure/sui/BlockchainManager.d.ts.map +1 -0
- package/dist/infrastructure/sui/BlockchainManager.js +421 -0
- package/dist/infrastructure/sui/BlockchainManager.js.map +1 -0
- package/dist/infrastructure/sui/SuiService.d.ts +179 -0
- package/dist/infrastructure/sui/SuiService.d.ts.map +1 -0
- package/dist/infrastructure/sui/SuiService.js +658 -0
- package/dist/infrastructure/sui/SuiService.js.map +1 -0
- package/dist/infrastructure/sui/index.d.ts +8 -0
- package/dist/infrastructure/sui/index.d.ts.map +1 -0
- package/dist/infrastructure/sui/index.js +8 -0
- package/dist/infrastructure/sui/index.js.map +1 -0
- package/dist/infrastructure/walrus/StorageManager.d.ts +207 -0
- package/dist/infrastructure/walrus/StorageManager.d.ts.map +1 -0
- package/dist/infrastructure/walrus/StorageManager.js +413 -0
- package/dist/infrastructure/walrus/StorageManager.js.map +1 -0
- package/dist/infrastructure/walrus/WalrusStorageService.d.ts +177 -0
- package/dist/infrastructure/walrus/WalrusStorageService.d.ts.map +1 -0
- package/dist/infrastructure/walrus/WalrusStorageService.js +403 -0
- package/dist/infrastructure/walrus/WalrusStorageService.js.map +1 -0
- package/dist/infrastructure/walrus/index.d.ts +8 -0
- package/dist/infrastructure/walrus/index.d.ts.map +1 -0
- package/dist/infrastructure/walrus/index.js +8 -0
- package/dist/infrastructure/walrus/index.js.map +1 -0
- package/dist/langchain/PDWEmbeddings.d.ts +77 -0
- package/dist/langchain/PDWEmbeddings.d.ts.map +1 -0
- package/dist/langchain/PDWEmbeddings.js +96 -0
- package/dist/langchain/PDWEmbeddings.js.map +1 -0
- package/dist/langchain/PDWVectorStore.d.ts +173 -0
- package/dist/langchain/PDWVectorStore.d.ts.map +1 -0
- package/dist/langchain/PDWVectorStore.js +304 -0
- package/dist/langchain/PDWVectorStore.js.map +1 -0
- package/dist/langchain/createPDWRAG.d.ts +115 -0
- package/dist/langchain/createPDWRAG.d.ts.map +1 -0
- package/dist/langchain/createPDWRAG.js +181 -0
- package/dist/langchain/createPDWRAG.js.map +1 -0
- package/dist/langchain/index.d.ts +35 -0
- package/dist/langchain/index.d.ts.map +1 -0
- package/dist/langchain/index.js +35 -0
- package/dist/langchain/index.js.map +1 -0
- package/dist/memory/index.d.ts +13 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +14 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/permissions/ConsentRepository.d.ts +71 -0
- package/dist/permissions/ConsentRepository.d.ts.map +1 -0
- package/dist/permissions/ConsentRepository.js +297 -0
- package/dist/permissions/ConsentRepository.js.map +1 -0
- package/dist/permissions/index.d.ts +9 -0
- package/dist/permissions/index.d.ts.map +1 -0
- package/dist/permissions/index.js +8 -0
- package/dist/permissions/index.js.map +1 -0
- package/dist/pipeline/MemoryPipeline.d.ts +191 -0
- package/dist/pipeline/MemoryPipeline.d.ts.map +1 -0
- package/dist/pipeline/MemoryPipeline.js +588 -0
- package/dist/pipeline/MemoryPipeline.js.map +1 -0
- package/dist/pipeline/PipelineManager.d.ts +178 -0
- package/dist/pipeline/PipelineManager.d.ts.map +1 -0
- package/dist/pipeline/PipelineManager.js +485 -0
- package/dist/pipeline/PipelineManager.js.map +1 -0
- package/dist/pipeline/index.d.ts +13 -0
- package/dist/pipeline/index.d.ts.map +1 -0
- package/dist/pipeline/index.js +11 -0
- package/dist/pipeline/index.js.map +1 -0
- package/dist/retrieval/AdvancedSearchService.d.ts +231 -0
- package/dist/retrieval/AdvancedSearchService.d.ts.map +1 -0
- package/dist/retrieval/AdvancedSearchService.js +384 -0
- package/dist/retrieval/AdvancedSearchService.js.map +1 -0
- package/dist/retrieval/MemoryAnalyticsService.d.ts +227 -0
- package/dist/retrieval/MemoryAnalyticsService.d.ts.map +1 -0
- package/dist/retrieval/MemoryAnalyticsService.js +417 -0
- package/dist/retrieval/MemoryAnalyticsService.js.map +1 -0
- package/dist/retrieval/MemoryDecryptionPipeline.d.ts +191 -0
- package/dist/retrieval/MemoryDecryptionPipeline.d.ts.map +1 -0
- package/dist/retrieval/MemoryDecryptionPipeline.js +623 -0
- package/dist/retrieval/MemoryDecryptionPipeline.js.map +1 -0
- package/dist/retrieval/MemoryRetrievalService.d.ts +248 -0
- package/dist/retrieval/MemoryRetrievalService.d.ts.map +1 -0
- package/dist/retrieval/MemoryRetrievalService.js +519 -0
- package/dist/retrieval/MemoryRetrievalService.js.map +1 -0
- package/dist/retrieval/index.d.ts +14 -0
- package/dist/retrieval/index.d.ts.map +1 -0
- package/dist/retrieval/index.js +10 -0
- package/dist/retrieval/index.js.map +1 -0
- package/dist/services/BatchService.d.ts +109 -0
- package/dist/services/BatchService.d.ts.map +1 -0
- package/dist/services/BatchService.js +259 -0
- package/dist/services/BatchService.js.map +1 -0
- package/dist/services/CapabilityService.d.ts +141 -0
- package/dist/services/CapabilityService.d.ts.map +1 -0
- package/dist/services/CapabilityService.js +361 -0
- package/dist/services/CapabilityService.js.map +1 -0
- package/dist/services/ChatService.d.ts +89 -0
- package/dist/services/ChatService.d.ts.map +1 -0
- package/dist/services/ChatService.js +319 -0
- package/dist/services/ChatService.js.map +1 -0
- package/dist/services/ClassifierService.d.ts +104 -0
- package/dist/services/ClassifierService.d.ts.map +1 -0
- package/dist/services/ClassifierService.js +374 -0
- package/dist/services/ClassifierService.js.map +1 -0
- package/dist/services/CrossContextPermissionService.d.ts +149 -0
- package/dist/services/CrossContextPermissionService.d.ts.map +1 -0
- package/dist/services/CrossContextPermissionService.js +337 -0
- package/dist/services/CrossContextPermissionService.js.map +1 -0
- package/dist/services/EmbeddingService.d.ts +206 -0
- package/dist/services/EmbeddingService.d.ts.map +1 -0
- package/dist/services/EmbeddingService.js +504 -0
- package/dist/services/EmbeddingService.js.map +1 -0
- package/dist/services/EncryptionService.d.ts +201 -0
- package/dist/services/EncryptionService.d.ts.map +1 -0
- package/dist/services/EncryptionService.js +558 -0
- package/dist/services/EncryptionService.js.map +1 -0
- package/dist/services/GeminiAIService.d.ts +112 -0
- package/dist/services/GeminiAIService.d.ts.map +1 -0
- package/dist/services/GeminiAIService.js +389 -0
- package/dist/services/GeminiAIService.js.map +1 -0
- package/dist/services/IndexManager.d.ts +238 -0
- package/dist/services/IndexManager.d.ts.map +1 -0
- package/dist/services/IndexManager.js +691 -0
- package/dist/services/IndexManager.js.map +1 -0
- package/dist/services/MemoryIndexService.d.ts +222 -0
- package/dist/services/MemoryIndexService.d.ts.map +1 -0
- package/dist/services/MemoryIndexService.js +695 -0
- package/dist/services/MemoryIndexService.js.map +1 -0
- package/dist/services/MemoryService.d.ts +156 -0
- package/dist/services/MemoryService.d.ts.map +1 -0
- package/dist/services/MemoryService.js +273 -0
- package/dist/services/MemoryService.js.map +1 -0
- package/dist/services/QueryService.d.ts +182 -0
- package/dist/services/QueryService.d.ts.map +1 -0
- package/dist/services/QueryService.js +631 -0
- package/dist/services/QueryService.js.map +1 -0
- package/dist/services/StorageService.d.ts +523 -0
- package/dist/services/StorageService.d.ts.map +1 -0
- package/dist/services/StorageService.js +627 -0
- package/dist/services/StorageService.js.map +1 -0
- package/dist/services/TransactionService.d.ts +179 -0
- package/dist/services/TransactionService.d.ts.map +1 -0
- package/dist/services/TransactionService.js +639 -0
- package/dist/services/TransactionService.js.map +1 -0
- package/dist/services/VectorService.d.ts +122 -0
- package/dist/services/VectorService.d.ts.map +1 -0
- package/dist/services/VectorService.js +371 -0
- package/dist/services/VectorService.js.map +1 -0
- package/dist/services/ViewService.d.ts +126 -0
- package/dist/services/ViewService.d.ts.map +1 -0
- package/dist/services/ViewService.js +356 -0
- package/dist/services/ViewService.js.map +1 -0
- package/dist/services/index.d.ts +12 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +11 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/storage/BlobAttributesManager.d.ts +60 -0
- package/dist/services/storage/BlobAttributesManager.d.ts.map +1 -0
- package/dist/services/storage/BlobAttributesManager.js +265 -0
- package/dist/services/storage/BlobAttributesManager.js.map +1 -0
- package/dist/services/storage/KnowledgeGraphManager.d.ts +162 -0
- package/dist/services/storage/KnowledgeGraphManager.d.ts.map +1 -0
- package/dist/services/storage/KnowledgeGraphManager.js +303 -0
- package/dist/services/storage/KnowledgeGraphManager.js.map +1 -0
- package/dist/services/storage/MemorySearchManager.d.ts +154 -0
- package/dist/services/storage/MemorySearchManager.d.ts.map +1 -0
- package/dist/services/storage/MemorySearchManager.js +260 -0
- package/dist/services/storage/MemorySearchManager.js.map +1 -0
- package/dist/services/storage/QuiltBatchManager.d.ts +185 -0
- package/dist/services/storage/QuiltBatchManager.d.ts.map +1 -0
- package/dist/services/storage/QuiltBatchManager.js +385 -0
- package/dist/services/storage/QuiltBatchManager.js.map +1 -0
- package/dist/services/storage/WalrusMetadataManager.d.ts +89 -0
- package/dist/services/storage/WalrusMetadataManager.d.ts.map +1 -0
- package/dist/services/storage/WalrusMetadataManager.js +177 -0
- package/dist/services/storage/WalrusMetadataManager.js.map +1 -0
- package/dist/services/storage/WalrusStorageManager.d.ts +113 -0
- package/dist/services/storage/WalrusStorageManager.d.ts.map +1 -0
- package/dist/services/storage/WalrusStorageManager.js +211 -0
- package/dist/services/storage/WalrusStorageManager.js.map +1 -0
- package/dist/services/storage/index.d.ts +24 -0
- package/dist/services/storage/index.d.ts.map +1 -0
- package/dist/services/storage/index.js +18 -0
- package/dist/services/storage/index.js.map +1 -0
- package/dist/transactions/index.d.ts +13 -0
- package/dist/transactions/index.d.ts.map +1 -0
- package/dist/transactions/index.js +14 -0
- package/dist/transactions/index.js.map +1 -0
- package/dist/types/index.d.ts +12 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +13 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/wallet.d.ts +12 -0
- package/dist/types/wallet.d.ts.map +1 -0
- package/dist/types/wallet.js +13 -0
- package/dist/types/wallet.js.map +1 -0
- package/dist/utils/index.d.ts +21 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +30 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/rebuildIndex.d.ts +79 -0
- package/dist/utils/rebuildIndex.d.ts.map +1 -0
- package/dist/utils/rebuildIndex.js +211 -0
- package/dist/utils/rebuildIndex.js.map +1 -0
- package/dist/utils/rebuildIndexNode.d.ts +70 -0
- package/dist/utils/rebuildIndexNode.d.ts.map +1 -0
- package/dist/utils/rebuildIndexNode.js +236 -0
- package/dist/utils/rebuildIndexNode.js.map +1 -0
- package/dist/vector/BrowserHnswIndexService.d.ts +93 -0
- package/dist/vector/BrowserHnswIndexService.d.ts.map +1 -0
- package/dist/vector/BrowserHnswIndexService.js +581 -0
- package/dist/vector/BrowserHnswIndexService.js.map +1 -0
- package/dist/vector/HnswWasmService.d.ts +97 -0
- package/dist/vector/HnswWasmService.d.ts.map +1 -0
- package/dist/vector/HnswWasmService.js +518 -0
- package/dist/vector/HnswWasmService.js.map +1 -0
- package/dist/vector/IHnswService.d.ts +179 -0
- package/dist/vector/IHnswService.d.ts.map +1 -0
- package/dist/vector/IHnswService.js +25 -0
- package/dist/vector/IHnswService.js.map +1 -0
- package/dist/vector/NodeHnswService.d.ts +80 -0
- package/dist/vector/NodeHnswService.d.ts.map +1 -0
- package/dist/vector/NodeHnswService.js +589 -0
- package/dist/vector/NodeHnswService.js.map +1 -0
- package/dist/vector/VectorManager.d.ts +142 -0
- package/dist/vector/VectorManager.d.ts.map +1 -0
- package/dist/vector/VectorManager.js +339 -0
- package/dist/vector/VectorManager.js.map +1 -0
- package/dist/vector/createHnswService.d.ts +51 -0
- package/dist/vector/createHnswService.d.ts.map +1 -0
- package/dist/vector/createHnswService.js +120 -0
- package/dist/vector/createHnswService.js.map +1 -0
- package/dist/vector/index.d.ts +24 -0
- package/dist/vector/index.d.ts.map +1 -0
- package/dist/vector/index.js +24 -0
- package/dist/vector/index.js.map +1 -0
- package/dist/view/ViewService.d.ts +136 -0
- package/dist/view/ViewService.d.ts.map +1 -0
- package/dist/view/ViewService.js +325 -0
- package/dist/view/ViewService.js.map +1 -0
- package/dist/view/index.d.ts +7 -0
- package/dist/view/index.d.ts.map +1 -0
- package/dist/view/index.js +7 -0
- package/dist/view/index.js.map +1 -0
- package/dist/wallet/ContextWalletService.d.ts +172 -0
- package/dist/wallet/ContextWalletService.d.ts.map +1 -0
- package/dist/wallet/ContextWalletService.js +510 -0
- package/dist/wallet/ContextWalletService.js.map +1 -0
- package/dist/wallet/MainWalletService.d.ts +114 -0
- package/dist/wallet/MainWalletService.d.ts.map +1 -0
- package/dist/wallet/MainWalletService.js +259 -0
- package/dist/wallet/MainWalletService.js.map +1 -0
- package/dist/wallet/index.d.ts +16 -0
- package/dist/wallet/index.d.ts.map +1 -0
- package/dist/wallet/index.js +14 -0
- package/dist/wallet/index.js.map +1 -0
- package/package.json +150 -0
- package/src/access/PermissionService.ts +636 -0
- package/src/access/index.ts +8 -0
- package/src/aggregation/AggregationService.ts +390 -0
- package/src/aggregation/index.ts +8 -0
- package/src/ai-sdk/PDWVectorStore.ts +712 -0
- package/src/ai-sdk/index.ts +65 -0
- package/src/ai-sdk/tools.ts +460 -0
- package/src/ai-sdk/types.ts +404 -0
- package/src/batch/BatchManager.ts +598 -0
- package/src/batch/BatchingService.ts +430 -0
- package/src/batch/MemoryProcessingCache.ts +493 -0
- package/src/batch/index.ts +31 -0
- package/src/browser.ts +196 -0
- package/src/client/ClientMemoryManager.ts +982 -0
- package/src/client/PersonalDataWallet.ts +346 -0
- package/src/client/SimplePDWClient.ts +1180 -0
- package/src/client/factory.ts +155 -0
- package/src/client/namespaces/AnalyticsNamespace.ts +377 -0
- package/src/client/namespaces/BatchNamespace.ts +356 -0
- package/src/client/namespaces/CacheNamespace.ts +123 -0
- package/src/client/namespaces/CapabilityNamespace.ts +217 -0
- package/src/client/namespaces/ClassifyNamespace.ts +169 -0
- package/src/client/namespaces/ContextNamespace.ts +297 -0
- package/src/client/namespaces/EmbeddingsNamespace.ts +99 -0
- package/src/client/namespaces/EncryptionNamespace.ts +221 -0
- package/src/client/namespaces/GraphNamespace.ts +468 -0
- package/src/client/namespaces/IndexNamespace.ts +283 -0
- package/src/client/namespaces/MemoryNamespace.ts +1135 -0
- package/src/client/namespaces/PermissionsNamespace.ts +254 -0
- package/src/client/namespaces/PipelineNamespace.ts +220 -0
- package/src/client/namespaces/SearchNamespace.ts +1036 -0
- package/src/client/namespaces/StorageNamespace.ts +458 -0
- package/src/client/namespaces/TxNamespace.ts +260 -0
- package/src/client/namespaces/WalletNamespace.ts +243 -0
- package/src/client/namespaces/consolidated/AINamespace.ts +449 -0
- package/src/client/namespaces/consolidated/BlockchainNamespace.ts +492 -0
- package/src/client/namespaces/consolidated/SecurityNamespace.ts +648 -0
- package/src/client/namespaces/consolidated/StorageNamespace.ts +440 -0
- package/src/client/namespaces/consolidated/index.ts +39 -0
- package/src/client/signers/KeypairSigner.ts +101 -0
- package/src/client/signers/UnifiedSigner.ts +99 -0
- package/src/client/signers/WalletAdapterSigner.ts +149 -0
- package/src/client/signers/index.ts +19 -0
- package/src/config/ConfigurationHelper.ts +413 -0
- package/src/config/defaults.ts +52 -0
- package/src/config/index.ts +9 -0
- package/src/config/validation.ts +71 -0
- package/src/core/index.ts +14 -0
- package/src/core/interfaces/IService.ts +307 -0
- package/src/core/interfaces/index.ts +8 -0
- package/src/core/types/capability.ts +297 -0
- package/src/core/types/index.ts +871 -0
- package/src/core/types/wallet.ts +271 -0
- package/src/core/types.ts +9 -0
- package/src/core/wallet.ts +223 -0
- package/src/embedding/index.ts +20 -0
- package/src/embedding/types.ts +358 -0
- package/src/errors/index.ts +603 -0
- package/src/errors/recovery.ts +462 -0
- package/src/errors/validation.ts +568 -0
- package/src/generated/pdw/capability.ts +319 -0
- package/src/generated/pdw/deps/sui/object.ts +13 -0
- package/src/generated/pdw/deps/sui/vec_map.ts +33 -0
- package/src/generated/pdw/memory.ts +1088 -0
- package/src/generated/pdw/wallet.ts +124 -0
- package/src/generated/utils/index.ts +159 -0
- package/src/graph/GraphService.ts +888 -0
- package/src/graph/KnowledgeGraphManager.ts +729 -0
- package/src/graph/index.ts +26 -0
- package/src/index.ts +458 -0
- package/src/infrastructure/index.ts +22 -0
- package/src/infrastructure/seal/EncryptionService.ts +604 -0
- package/src/infrastructure/seal/SealService.ts +616 -0
- package/src/infrastructure/seal/index.ts +9 -0
- package/src/infrastructure/sui/BlockchainManager.ts +628 -0
- package/src/infrastructure/sui/SuiService.ts +888 -0
- package/src/infrastructure/sui/index.ts +9 -0
- package/src/infrastructure/walrus/StorageManager.ts +605 -0
- package/src/infrastructure/walrus/WalrusStorageService.ts +613 -0
- package/src/infrastructure/walrus/index.ts +9 -0
- package/src/langchain/PDWEmbeddings.ts +145 -0
- package/src/langchain/PDWVectorStore.ts +456 -0
- package/src/langchain/README.md +116 -0
- package/src/langchain/createPDWRAG.ts +303 -0
- package/src/langchain/index.ts +47 -0
- package/src/permissions/ConsentRepository.ts +364 -0
- package/src/permissions/index.ts +9 -0
- package/src/pipeline/MemoryPipeline.ts +863 -0
- package/src/pipeline/PipelineManager.ts +684 -0
- package/src/pipeline/index.ts +27 -0
- package/src/retrieval/AdvancedSearchService.ts +630 -0
- package/src/retrieval/MemoryAnalyticsService.ts +712 -0
- package/src/retrieval/MemoryDecryptionPipeline.ts +825 -0
- package/src/retrieval/MemoryRetrievalService.ts +831 -0
- package/src/retrieval/index.ts +43 -0
- package/src/services/BatchService.ts +353 -0
- package/src/services/CapabilityService.ts +448 -0
- package/src/services/ClassifierService.ts +466 -0
- package/src/services/CrossContextPermissionService.ts +484 -0
- package/src/services/EmbeddingService.ts +706 -0
- package/src/services/EncryptionService.ts +712 -0
- package/src/services/GeminiAIService.ts +497 -0
- package/src/services/IndexManager.ts +1004 -0
- package/src/services/MemoryIndexService.ts +922 -0
- package/src/services/MemoryService.ts +370 -0
- package/src/services/QueryService.ts +891 -0
- package/src/services/StorageService.ts +1111 -0
- package/src/services/TransactionService.ts +791 -0
- package/src/services/VectorService.ts +462 -0
- package/src/services/ViewService.ts +485 -0
- package/src/services/index.ts +25 -0
- package/src/services/storage/BlobAttributesManager.ts +342 -0
- package/src/services/storage/KnowledgeGraphManager.ts +425 -0
- package/src/services/storage/MemorySearchManager.ts +387 -0
- package/src/services/storage/QuiltBatchManager.ts +532 -0
- package/src/services/storage/WalrusMetadataManager.ts +271 -0
- package/src/services/storage/WalrusStorageManager.ts +290 -0
- package/src/services/storage/index.ts +52 -0
- package/src/types/index.ts +13 -0
- package/src/utils/index.ts +68 -0
- package/src/utils/rebuildIndex.ts +290 -0
- package/src/utils/rebuildIndexNode.ts +341 -0
- package/src/vector/BrowserHnswIndexService.ts +758 -0
- package/src/vector/HnswWasmService.ts +679 -0
- package/src/vector/IHnswService.ts +224 -0
- package/src/vector/NodeHnswService.ts +713 -0
- package/src/vector/VectorManager.ts +479 -0
- package/src/vector/createHnswService.ts +135 -0
- package/src/vector/index.ts +57 -0
- package/src/wallet/ContextWalletService.ts +657 -0
- package/src/wallet/MainWalletService.ts +318 -0
- package/src/wallet/index.ts +17 -0
|
@@ -0,0 +1,466 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EncryptionService - SEAL-based encryption and access control
|
|
3
|
+
*
|
|
4
|
+
* Provides identity-based encryption using Mysten's SEAL SDK with decentralized
|
|
5
|
+
* key management and onchain access control policies.
|
|
6
|
+
*/
|
|
7
|
+
import { SessionKey } from '@mysten/seal';
|
|
8
|
+
import { Transaction } from '@mysten/sui/transactions';
|
|
9
|
+
import { fromHex } from '@mysten/sui/utils';
|
|
10
|
+
import { SealService } from './SealService.js';
|
|
11
|
+
import { CrossContextPermissionService } from '../../services/CrossContextPermissionService.js';
|
|
12
|
+
export class EncryptionService {
|
|
13
|
+
constructor(client, config) {
|
|
14
|
+
this.client = client;
|
|
15
|
+
this.config = config;
|
|
16
|
+
this.sessionKeyCache = new Map();
|
|
17
|
+
this.suiClient = client.client || client;
|
|
18
|
+
this.packageId = config.packageId || '';
|
|
19
|
+
this.sealService = this.initializeSealService();
|
|
20
|
+
// Initialize permission service for OAuth-style access control
|
|
21
|
+
this.permissionService = new CrossContextPermissionService({
|
|
22
|
+
packageId: this.packageId,
|
|
23
|
+
accessRegistryId: config.accessRegistryId || ''
|
|
24
|
+
}, this.suiClient);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Initialize SEAL service with proper configuration
|
|
28
|
+
*/
|
|
29
|
+
initializeSealService() {
|
|
30
|
+
const encryptionConfig = this.config.encryptionConfig;
|
|
31
|
+
if (!encryptionConfig?.enabled) {
|
|
32
|
+
console.warn('Encryption is disabled in configuration - creating SealService anyway');
|
|
33
|
+
}
|
|
34
|
+
// Default testnet key servers (replace with actual server object IDs)
|
|
35
|
+
const defaultKeyServers = [
|
|
36
|
+
'0x73d05d62c18d9374e3ea529e8e0ed6161da1a141a94d3f76ae3fe4e99356db75',
|
|
37
|
+
'0xf5d14a81a982144ae441cd7d64b09027f116a468bd36e7eca494f750591623c8'
|
|
38
|
+
];
|
|
39
|
+
const keyServerIds = encryptionConfig?.keyServers || defaultKeyServers;
|
|
40
|
+
// Create SealService with proper configuration
|
|
41
|
+
const sealConfig = {
|
|
42
|
+
suiClient: this.suiClient,
|
|
43
|
+
packageId: this.packageId,
|
|
44
|
+
keyServerUrls: [], // Empty for now, URLs handled separately if needed
|
|
45
|
+
keyServerObjectIds: keyServerIds,
|
|
46
|
+
network: process.env.NODE_ENV === 'production' ? 'mainnet' : 'testnet',
|
|
47
|
+
threshold: 2,
|
|
48
|
+
enableMetrics: true,
|
|
49
|
+
retryAttempts: 3,
|
|
50
|
+
timeoutMs: 30000
|
|
51
|
+
};
|
|
52
|
+
return new SealService(sealConfig);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Build access approval transaction for SEAL key servers (LEGACY)
|
|
56
|
+
*
|
|
57
|
+
* @deprecated Use buildAccessTransactionForWallet instead for wallet-based permissions
|
|
58
|
+
*/
|
|
59
|
+
async buildAccessTransaction(userAddress, accessType = 'read') {
|
|
60
|
+
console.warn('buildAccessTransaction is deprecated - use buildAccessTransactionForWallet for wallet-based permissions');
|
|
61
|
+
return this.buildAccessTransactionForWallet(userAddress, userAddress, accessType);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Build access approval transaction for a requesting wallet address
|
|
65
|
+
* Uses CrossContextPermissionService for proper permission validation
|
|
66
|
+
*
|
|
67
|
+
* @param userAddress - User's wallet address (used as SEAL identity)
|
|
68
|
+
* @param requestingWallet - Wallet requesting access
|
|
69
|
+
* @param accessType - Access level (read/write)
|
|
70
|
+
* @returns Transaction for SEAL key server approval
|
|
71
|
+
*/
|
|
72
|
+
async buildAccessTransactionForWallet(userAddress, requestingWallet, accessType = 'read') {
|
|
73
|
+
// Convert user address to bytes for SEAL identity
|
|
74
|
+
const identityBytes = fromHex(userAddress.replace('0x', ''));
|
|
75
|
+
return this.permissionService.buildSealApproveTransaction(identityBytes, requestingWallet);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Decrypt data using SEAL with session keys via SealService
|
|
79
|
+
* Handles both new binary format (Uint8Array) and legacy base64 format
|
|
80
|
+
* Validates wallet-based allowlists during approval flow
|
|
81
|
+
*/
|
|
82
|
+
async decrypt(options) {
|
|
83
|
+
try {
|
|
84
|
+
console.log('🔓 EncryptionService: Starting SEAL decryption...');
|
|
85
|
+
console.log(` User address: ${options.userAddress}`);
|
|
86
|
+
const requestingWallet = options.requestingWallet ?? options.userAddress;
|
|
87
|
+
console.log(` Requesting wallet: ${requestingWallet}`);
|
|
88
|
+
if (!options.requestingWallet) {
|
|
89
|
+
console.warn('No requestingWallet provided for decryption - defaulting to user address');
|
|
90
|
+
}
|
|
91
|
+
// Get or create session key
|
|
92
|
+
let activeSessionKey = options.sessionKey;
|
|
93
|
+
if (!activeSessionKey) {
|
|
94
|
+
console.log('🔄 Creating session key...');
|
|
95
|
+
activeSessionKey = await this.getOrCreateSessionKey(options.userAddress);
|
|
96
|
+
}
|
|
97
|
+
// Build access transaction if not provided
|
|
98
|
+
let txBytes = options.signedTxBytes;
|
|
99
|
+
if (!txBytes) {
|
|
100
|
+
console.log('🔄 Building access transaction for requesting wallet...');
|
|
101
|
+
const tx = await this.buildAccessTransactionForWallet(options.userAddress, requestingWallet, 'read');
|
|
102
|
+
txBytes = await tx.build({ client: this.suiClient });
|
|
103
|
+
}
|
|
104
|
+
if (!txBytes) {
|
|
105
|
+
throw new Error('Failed to build SEAL approval transaction bytes');
|
|
106
|
+
}
|
|
107
|
+
// ✅ CRITICAL: Handle both binary and legacy formats
|
|
108
|
+
let encryptedBytes;
|
|
109
|
+
if (options.encryptedContent && options.encryptedContent instanceof Uint8Array) {
|
|
110
|
+
// **NEW BINARY FORMAT** (preferred - matches memory-workflow-seal.ts)
|
|
111
|
+
encryptedBytes = options.encryptedContent;
|
|
112
|
+
console.log('✅ Using new binary format (Uint8Array)');
|
|
113
|
+
console.log(` Binary data size: ${encryptedBytes.length} bytes`);
|
|
114
|
+
console.log(` Format: Direct binary (preserves SEAL integrity)`);
|
|
115
|
+
}
|
|
116
|
+
else if (options.encryptedData) {
|
|
117
|
+
// **LEGACY BASE64 FORMAT** (deprecated but supported for backward compatibility)
|
|
118
|
+
console.log('⚠️ Using legacy base64 format (deprecated)');
|
|
119
|
+
const encryptedDataBase64 = options.encryptedData;
|
|
120
|
+
const binaryString = atob(encryptedDataBase64);
|
|
121
|
+
encryptedBytes = new Uint8Array(binaryString.length);
|
|
122
|
+
for (let i = 0; i < binaryString.length; i++) {
|
|
123
|
+
encryptedBytes[i] = binaryString.charCodeAt(i);
|
|
124
|
+
}
|
|
125
|
+
console.log(` Converted from base64: ${encryptedDataBase64.length} chars → ${encryptedBytes.length} bytes`);
|
|
126
|
+
console.log(' Recommendation: Use encryptedContent (Uint8Array) for better performance');
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
throw new Error('No encrypted data provided. Use either encryptedContent (Uint8Array) or encryptedData (base64 string)');
|
|
130
|
+
}
|
|
131
|
+
console.log('🔄 Calling SEAL decryption...');
|
|
132
|
+
console.log(` Encrypted data length: ${encryptedBytes.length} bytes`);
|
|
133
|
+
console.log(` Session key available: ${!!activeSessionKey}`);
|
|
134
|
+
console.log(` Transaction bytes length: ${txBytes.length} bytes`);
|
|
135
|
+
// Use SealService for decryption (matches memory-workflow-seal.ts pattern)
|
|
136
|
+
const decryptResult = await this.sealService.decryptData({
|
|
137
|
+
encryptedObject: encryptedBytes,
|
|
138
|
+
sessionKey: activeSessionKey,
|
|
139
|
+
txBytes
|
|
140
|
+
});
|
|
141
|
+
console.log(`✅ EncryptionService: SEAL decryption successful`);
|
|
142
|
+
console.log(` Decrypted data size: ${decryptResult.length} bytes`);
|
|
143
|
+
console.log(` Binary integrity preserved throughout process`);
|
|
144
|
+
return decryptResult;
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
throw new Error(`Decryption failed: ${error}`);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// ==================== SESSION KEY MANAGEMENT ====================
|
|
151
|
+
/**
|
|
152
|
+
* Create a new session key for a user via SealService
|
|
153
|
+
*
|
|
154
|
+
* Two usage patterns:
|
|
155
|
+
* 1. Frontend: Pass signPersonalMessageFn from @mysten/dapp-kit useSignPersonalMessage hook
|
|
156
|
+
* 2. Backend: Pass keypair for direct signing (auto-converts format)
|
|
157
|
+
*/
|
|
158
|
+
async createSessionKey(userAddress, signer) {
|
|
159
|
+
try {
|
|
160
|
+
console.log('🔄 EncryptionService: Creating SEAL session key...');
|
|
161
|
+
console.log(` User address: ${userAddress}`);
|
|
162
|
+
console.log(` TTL: 30 minutes (maximum allowed)`);
|
|
163
|
+
const sessionResult = await this.sealService.createSession({
|
|
164
|
+
address: userAddress,
|
|
165
|
+
packageId: this.packageId,
|
|
166
|
+
ttlMin: 30, // Use 30 minutes (maximum allowed)
|
|
167
|
+
});
|
|
168
|
+
// Handle signing based on provided signer type
|
|
169
|
+
if (signer?.signPersonalMessageFn) {
|
|
170
|
+
// Frontend pattern: Use dapp-kit signPersonalMessage (RECOMMENDED)
|
|
171
|
+
console.log('🔄 Signing with dapp-kit signPersonalMessage (recommended)...');
|
|
172
|
+
const personalMessage = sessionResult.personalMessage;
|
|
173
|
+
// Convert to string if it's a byte array
|
|
174
|
+
const messageString = typeof personalMessage === 'string'
|
|
175
|
+
? personalMessage
|
|
176
|
+
: new TextDecoder().decode(personalMessage);
|
|
177
|
+
console.log(` Message (first 100 chars): ${messageString.substring(0, 100)}...`);
|
|
178
|
+
// Use dapp-kit signPersonalMessage - returns signature in correct format
|
|
179
|
+
const result = await signer.signPersonalMessageFn(messageString);
|
|
180
|
+
console.log(` Signature from dapp-kit: ${result.signature.substring(0, 20)}...`);
|
|
181
|
+
console.log(` ✅ Using dapp-kit signature format (already compatible with SEAL)`);
|
|
182
|
+
// Set signature directly - dapp-kit returns it in SEAL-compatible format
|
|
183
|
+
await sessionResult.sessionKey.setPersonalMessageSignature(result.signature);
|
|
184
|
+
console.log('✅ Personal message signed with dapp-kit');
|
|
185
|
+
}
|
|
186
|
+
else if (signer?.keypair) {
|
|
187
|
+
// Backend pattern: Use Ed25519Keypair with format conversion
|
|
188
|
+
console.log('🔄 Signing with Ed25519Keypair (backend fallback)...');
|
|
189
|
+
const personalMessage = sessionResult.personalMessage;
|
|
190
|
+
// Convert to string if it's a byte array
|
|
191
|
+
const messageString = typeof personalMessage === 'string'
|
|
192
|
+
? personalMessage
|
|
193
|
+
: new TextDecoder().decode(personalMessage);
|
|
194
|
+
console.log(` Message (first 100 chars): ${messageString.substring(0, 100)}...`);
|
|
195
|
+
// Sign with keypair
|
|
196
|
+
const messageSignature = await signer.keypair.signPersonalMessage(new TextEncoder().encode(messageString));
|
|
197
|
+
// CRITICAL FIX: Use signature as-is from Ed25519Keypair (SEAL expects original format)
|
|
198
|
+
// According to SEAL documentation, pass signature directly from keypair.signPersonalMessage()
|
|
199
|
+
console.log(` ✅ Using signature as-is from Ed25519Keypair (SEAL-compatible format)`);
|
|
200
|
+
console.log(` Original signature: ${messageSignature.signature.substring(0, 20)}...`);
|
|
201
|
+
// Set signature exactly as returned by keypair (no conversion needed)
|
|
202
|
+
await sessionResult.sessionKey.setPersonalMessageSignature(messageSignature.signature);
|
|
203
|
+
console.log('✅ Personal message signed with Ed25519Keypair');
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
console.log('⚠️ No signer provided - session key created but not signed');
|
|
207
|
+
console.log(' Note: Call setPersonalMessageSignature() later with wallet-signed message');
|
|
208
|
+
console.log(' Frontend: Use dapp-kit useSignPersonalMessage hook');
|
|
209
|
+
console.log(' Backend: Provide Ed25519Keypair');
|
|
210
|
+
}
|
|
211
|
+
// Cache the session key
|
|
212
|
+
this.sessionKeyCache.set(userAddress, sessionResult.sessionKey);
|
|
213
|
+
console.log('✅ EncryptionService: Session key created and cached');
|
|
214
|
+
return sessionResult.sessionKey;
|
|
215
|
+
}
|
|
216
|
+
catch (error) {
|
|
217
|
+
throw new Error(`Failed to create session key: ${error}`);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Get cached session key or create new one
|
|
222
|
+
*/
|
|
223
|
+
async getOrCreateSessionKey(userAddress) {
|
|
224
|
+
const cached = this.sessionKeyCache.get(userAddress);
|
|
225
|
+
if (cached) {
|
|
226
|
+
return cached;
|
|
227
|
+
}
|
|
228
|
+
return this.createSessionKey(userAddress);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Export session key for persistence
|
|
232
|
+
*/
|
|
233
|
+
async exportSessionKey(sessionKey) {
|
|
234
|
+
try {
|
|
235
|
+
const exported = sessionKey.export();
|
|
236
|
+
return JSON.stringify(exported);
|
|
237
|
+
}
|
|
238
|
+
catch (error) {
|
|
239
|
+
throw new Error(`Failed to export session key: ${error}`);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Import previously exported session key
|
|
244
|
+
*/
|
|
245
|
+
async importSessionKey(exportedKey, userAddress) {
|
|
246
|
+
try {
|
|
247
|
+
const keyData = JSON.parse(exportedKey);
|
|
248
|
+
const sessionKey = SessionKey.import(keyData, this.suiClient);
|
|
249
|
+
if (userAddress) {
|
|
250
|
+
this.sessionKeyCache.set(userAddress, sessionKey);
|
|
251
|
+
}
|
|
252
|
+
return sessionKey;
|
|
253
|
+
}
|
|
254
|
+
catch (error) {
|
|
255
|
+
throw new Error(`Failed to import session key: ${error}`);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
// ==================== ACCESS CONTROL TRANSACTIONS ====================
|
|
259
|
+
/**
|
|
260
|
+
* Create SEAL approval transaction bytes (matches memory-workflow-seal.ts pattern)
|
|
261
|
+
* Returns raw PTB format bytes for SEAL verification
|
|
262
|
+
*/
|
|
263
|
+
async createSealApproveTransaction(userAddress, contentOwner) {
|
|
264
|
+
try {
|
|
265
|
+
console.log('🔄 EncryptionService: Creating SEAL approval transaction...');
|
|
266
|
+
console.log(` User address: ${userAddress}`);
|
|
267
|
+
console.log(` Content owner: ${contentOwner}`);
|
|
268
|
+
// Create the approval transaction (not signed, just bytes)
|
|
269
|
+
const tx = await this.buildAccessTransactionForWallet(userAddress, contentOwner, 'read');
|
|
270
|
+
const txBytes = await tx.build({ client: this.suiClient });
|
|
271
|
+
console.log(`✅ Created SEAL approval transaction bytes (${txBytes.length} bytes)`);
|
|
272
|
+
console.log(' Format: Raw PTB (Programmable Transaction Block) for SEAL verification');
|
|
273
|
+
return txBytes;
|
|
274
|
+
}
|
|
275
|
+
catch (error) {
|
|
276
|
+
throw new Error(`Failed to create SEAL approval transaction: ${error}`);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Build transaction to grant access to another user
|
|
281
|
+
*/
|
|
282
|
+
async buildGrantAccessTransaction(options) {
|
|
283
|
+
const { ownerAddress, recipientAddress, contentId, accessLevel, expiresIn } = options;
|
|
284
|
+
const tx = new Transaction();
|
|
285
|
+
const expiresAt = expiresIn ? Date.now() + expiresIn : Date.now() + 86400000; // 24h default
|
|
286
|
+
tx.moveCall({
|
|
287
|
+
target: `${this.packageId}::seal_access_control::grant_access`,
|
|
288
|
+
arguments: [
|
|
289
|
+
tx.pure.address(ownerAddress),
|
|
290
|
+
tx.pure.address(recipientAddress),
|
|
291
|
+
tx.pure.string(contentId),
|
|
292
|
+
tx.pure.string(accessLevel),
|
|
293
|
+
tx.pure.u64(expiresAt),
|
|
294
|
+
],
|
|
295
|
+
});
|
|
296
|
+
return tx;
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* Build transaction to revoke access from a user
|
|
300
|
+
*/
|
|
301
|
+
async buildRevokeAccessTransaction(options) {
|
|
302
|
+
const { ownerAddress, recipientAddress, contentId } = options;
|
|
303
|
+
const tx = new Transaction();
|
|
304
|
+
tx.moveCall({
|
|
305
|
+
target: `${this.packageId}::seal_access_control::revoke_access`,
|
|
306
|
+
arguments: [
|
|
307
|
+
tx.pure.address(ownerAddress),
|
|
308
|
+
tx.pure.address(recipientAddress),
|
|
309
|
+
tx.pure.string(contentId),
|
|
310
|
+
],
|
|
311
|
+
});
|
|
312
|
+
return tx;
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Build transaction to register content ownership
|
|
316
|
+
*/
|
|
317
|
+
async buildRegisterContentTransaction(ownerAddress, contentId, contentHash) {
|
|
318
|
+
const tx = new Transaction();
|
|
319
|
+
tx.moveCall({
|
|
320
|
+
target: `${this.packageId}::seal_access_control::register_content`,
|
|
321
|
+
arguments: [
|
|
322
|
+
tx.pure.address(ownerAddress),
|
|
323
|
+
tx.pure.string(contentId),
|
|
324
|
+
tx.pure.string(contentHash),
|
|
325
|
+
tx.pure.string(''), // encryption_info
|
|
326
|
+
],
|
|
327
|
+
});
|
|
328
|
+
return tx;
|
|
329
|
+
}
|
|
330
|
+
// ==================== TRANSACTION BUILDERS ====================
|
|
331
|
+
get tx() {
|
|
332
|
+
return {
|
|
333
|
+
/**
|
|
334
|
+
* Grant access to encrypted memory
|
|
335
|
+
*/
|
|
336
|
+
grantAccess: (options) => {
|
|
337
|
+
return this.buildGrantAccessTransaction(options);
|
|
338
|
+
},
|
|
339
|
+
/**
|
|
340
|
+
* Revoke access to encrypted memory
|
|
341
|
+
*/
|
|
342
|
+
revokeAccess: (options) => {
|
|
343
|
+
return this.buildRevokeAccessTransaction(options);
|
|
344
|
+
},
|
|
345
|
+
/**
|
|
346
|
+
* Register content ownership
|
|
347
|
+
*/
|
|
348
|
+
registerContent: (ownerAddress, contentId, contentHash) => {
|
|
349
|
+
return this.buildRegisterContentTransaction(ownerAddress, contentId, contentHash);
|
|
350
|
+
},
|
|
351
|
+
/**
|
|
352
|
+
* Build access approval transaction
|
|
353
|
+
*/
|
|
354
|
+
buildAccessTransaction: (userAddress, accessType = 'read') => {
|
|
355
|
+
return this.buildAccessTransaction(userAddress, accessType);
|
|
356
|
+
},
|
|
357
|
+
};
|
|
358
|
+
}
|
|
359
|
+
// ==================== MOVE CALL BUILDERS ====================
|
|
360
|
+
get call() {
|
|
361
|
+
return {
|
|
362
|
+
/**
|
|
363
|
+
* Move call for granting access
|
|
364
|
+
*/
|
|
365
|
+
grantAccess: (options) => {
|
|
366
|
+
return async (tx) => {
|
|
367
|
+
const grantTx = await this.buildGrantAccessTransaction(options);
|
|
368
|
+
return grantTx;
|
|
369
|
+
};
|
|
370
|
+
},
|
|
371
|
+
/**
|
|
372
|
+
* Move call for revoking access
|
|
373
|
+
*/
|
|
374
|
+
revokeAccess: (options) => {
|
|
375
|
+
return async (tx) => {
|
|
376
|
+
const revokeTx = await this.buildRevokeAccessTransaction(options);
|
|
377
|
+
return revokeTx;
|
|
378
|
+
};
|
|
379
|
+
},
|
|
380
|
+
};
|
|
381
|
+
}
|
|
382
|
+
// ==================== ACCESS CONTROL QUERIES ====================
|
|
383
|
+
/**
|
|
384
|
+
* Check if a user has access to decrypt content
|
|
385
|
+
*/
|
|
386
|
+
async hasAccess(userAddress, contentId, ownerAddress) {
|
|
387
|
+
try {
|
|
388
|
+
if (userAddress === ownerAddress) {
|
|
389
|
+
return true;
|
|
390
|
+
}
|
|
391
|
+
const tx = new Transaction();
|
|
392
|
+
tx.moveCall({
|
|
393
|
+
target: `${this.packageId}::seal_access_control::check_access`,
|
|
394
|
+
arguments: [
|
|
395
|
+
tx.pure.address(userAddress),
|
|
396
|
+
tx.pure.string(contentId),
|
|
397
|
+
tx.pure.address(ownerAddress),
|
|
398
|
+
],
|
|
399
|
+
});
|
|
400
|
+
const result = await this.suiClient.devInspectTransactionBlock({
|
|
401
|
+
transactionBlock: tx,
|
|
402
|
+
sender: userAddress,
|
|
403
|
+
});
|
|
404
|
+
return result.effects.status.status === 'success';
|
|
405
|
+
}
|
|
406
|
+
catch (error) {
|
|
407
|
+
console.error(`Error checking access: ${error}`);
|
|
408
|
+
return false;
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
// ==================== VIEW METHODS ====================
|
|
412
|
+
get view() {
|
|
413
|
+
return {
|
|
414
|
+
/**
|
|
415
|
+
* Get access permissions for memories
|
|
416
|
+
*/
|
|
417
|
+
getAccessPermissions: async (userAddress, memoryId) => {
|
|
418
|
+
// Note: This would typically require event queries or indexing
|
|
419
|
+
// For now, return empty array as this requires additional infrastructure
|
|
420
|
+
console.warn('getAccessPermissions: This method requires event indexing infrastructure');
|
|
421
|
+
return [];
|
|
422
|
+
},
|
|
423
|
+
/**
|
|
424
|
+
* Check if user has access to content
|
|
425
|
+
*/
|
|
426
|
+
hasAccess: (userAddress, contentId, ownerAddress) => {
|
|
427
|
+
return this.hasAccess(userAddress, contentId, ownerAddress);
|
|
428
|
+
},
|
|
429
|
+
};
|
|
430
|
+
}
|
|
431
|
+
// ==================== UTILITY METHODS ====================
|
|
432
|
+
/**
|
|
433
|
+
* Generate content hash for verification
|
|
434
|
+
*/
|
|
435
|
+
async generateContentHash(data) {
|
|
436
|
+
// Create a new Uint8Array to ensure proper typing
|
|
437
|
+
const dataArray = new Uint8Array(data);
|
|
438
|
+
const hashBuffer = await crypto.subtle.digest('SHA-256', dataArray);
|
|
439
|
+
const hashArray = Array.from(new Uint8Array(hashBuffer));
|
|
440
|
+
return hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Verify content integrity
|
|
444
|
+
*/
|
|
445
|
+
async verifyContentHash(data, expectedHash) {
|
|
446
|
+
const actualHash = await this.generateContentHash(data);
|
|
447
|
+
return actualHash === expectedHash;
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* Check if SEAL service is available
|
|
451
|
+
*/
|
|
452
|
+
isAvailable() {
|
|
453
|
+
return this.sealService !== null;
|
|
454
|
+
}
|
|
455
|
+
/**
|
|
456
|
+
* Get SEAL service configuration info
|
|
457
|
+
*/
|
|
458
|
+
getClientInfo() {
|
|
459
|
+
return {
|
|
460
|
+
isInitialized: this.sealService !== null,
|
|
461
|
+
packageId: this.packageId,
|
|
462
|
+
encryptionEnabled: this.config.encryptionConfig?.enabled || false,
|
|
463
|
+
};
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
//# sourceMappingURL=EncryptionService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EncryptionService.js","sourceRoot":"","sources":["../../../src/infrastructure/seal/EncryptionService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SEAL Service Integration
|
|
3
|
+
*
|
|
4
|
+
* Production-ready SEAL service wrapper with comprehensive error handling,
|
|
5
|
+
* session management, and performance analytics integration.
|
|
6
|
+
*/
|
|
7
|
+
import { SuiClient } from '@mysten/sui/client';
|
|
8
|
+
import { Transaction } from '@mysten/sui/transactions';
|
|
9
|
+
interface SealConfig {
|
|
10
|
+
suiClient: SuiClient;
|
|
11
|
+
packageId: string;
|
|
12
|
+
keyServerUrls: string[];
|
|
13
|
+
keyServerObjectIds: string[];
|
|
14
|
+
threshold: number;
|
|
15
|
+
network: 'testnet' | 'mainnet';
|
|
16
|
+
enableMetrics: boolean;
|
|
17
|
+
retryAttempts: number;
|
|
18
|
+
timeoutMs: number;
|
|
19
|
+
}
|
|
20
|
+
interface EncryptionOptions {
|
|
21
|
+
data: Uint8Array;
|
|
22
|
+
id: string;
|
|
23
|
+
threshold?: number;
|
|
24
|
+
}
|
|
25
|
+
interface DecryptionOptions {
|
|
26
|
+
encryptedObject: Uint8Array;
|
|
27
|
+
sessionKey: any;
|
|
28
|
+
txBytes: Uint8Array;
|
|
29
|
+
}
|
|
30
|
+
interface SessionConfig {
|
|
31
|
+
address: string;
|
|
32
|
+
packageId: string;
|
|
33
|
+
ttlMin: number;
|
|
34
|
+
}
|
|
35
|
+
interface PerformanceMetric {
|
|
36
|
+
operation: string;
|
|
37
|
+
startTime: number;
|
|
38
|
+
endTime: number;
|
|
39
|
+
duration: number;
|
|
40
|
+
success: boolean;
|
|
41
|
+
errorType?: string;
|
|
42
|
+
metadata?: any;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* SEAL Service - Production Implementation
|
|
46
|
+
*/
|
|
47
|
+
export declare class SealService {
|
|
48
|
+
private sealClient;
|
|
49
|
+
private sessionKey;
|
|
50
|
+
private config;
|
|
51
|
+
private performanceMetrics;
|
|
52
|
+
private activeSessions;
|
|
53
|
+
constructor(config: SealConfig);
|
|
54
|
+
/**
|
|
55
|
+
* Initialize SEAL client with retry logic
|
|
56
|
+
*/
|
|
57
|
+
initializeClient(): Promise<void>;
|
|
58
|
+
/**
|
|
59
|
+
* Create and manage session key
|
|
60
|
+
*/
|
|
61
|
+
createSession(config: SessionConfig, signature?: Uint8Array | string): Promise<any>;
|
|
62
|
+
/**
|
|
63
|
+
* Encrypt data with comprehensive error handling
|
|
64
|
+
*/
|
|
65
|
+
encryptData(options: EncryptionOptions): Promise<{
|
|
66
|
+
encryptedObject: Uint8Array;
|
|
67
|
+
key: Uint8Array;
|
|
68
|
+
}>;
|
|
69
|
+
/**
|
|
70
|
+
* Decrypt data with session management
|
|
71
|
+
*/
|
|
72
|
+
decryptData(options: DecryptionOptions): Promise<Uint8Array>;
|
|
73
|
+
/**
|
|
74
|
+
* Create transaction for seal_approve using wallet-based allowlists
|
|
75
|
+
* Matches Move signature: seal_approve(id: vector<u8>, requesting_wallet: address, ...)
|
|
76
|
+
*/
|
|
77
|
+
createSealApproveTransaction(id: string, userAddress: string, requestingWallet: string, accessRegistry?: string): Promise<Uint8Array>;
|
|
78
|
+
/**
|
|
79
|
+
* Build a seal_approve transaction for a specific requesting wallet
|
|
80
|
+
*/
|
|
81
|
+
buildSealApproveTransaction(contentId: Uint8Array, requestingWallet: string, accessRegistry?: string): Transaction;
|
|
82
|
+
/**
|
|
83
|
+
* Parse encrypted object structure
|
|
84
|
+
*/
|
|
85
|
+
parseEncryptedObject(encryptedBytes: Uint8Array): any;
|
|
86
|
+
/**
|
|
87
|
+
* Session management utilities
|
|
88
|
+
*/
|
|
89
|
+
getActiveSession(address: string): any | null;
|
|
90
|
+
cleanupExpiredSessions(): number;
|
|
91
|
+
getSessionStats(): {
|
|
92
|
+
total: number;
|
|
93
|
+
expired: number;
|
|
94
|
+
active: number;
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Performance metrics and analytics
|
|
98
|
+
*/
|
|
99
|
+
private startMetric;
|
|
100
|
+
private completeMetric;
|
|
101
|
+
getPerformanceMetrics(): PerformanceMetric[];
|
|
102
|
+
getPerformanceStats(): {
|
|
103
|
+
totalOperations: number;
|
|
104
|
+
averageTime: number;
|
|
105
|
+
successRate: number;
|
|
106
|
+
successfulOperations?: undefined;
|
|
107
|
+
averageSuccessTime?: undefined;
|
|
108
|
+
operationBreakdown?: undefined;
|
|
109
|
+
} | {
|
|
110
|
+
totalOperations: number;
|
|
111
|
+
successfulOperations: number;
|
|
112
|
+
successRate: number;
|
|
113
|
+
averageTime: number;
|
|
114
|
+
averageSuccessTime: number;
|
|
115
|
+
operationBreakdown: Record<string, any>;
|
|
116
|
+
};
|
|
117
|
+
private getOperationBreakdown;
|
|
118
|
+
/**
|
|
119
|
+
* Health checks and diagnostics
|
|
120
|
+
*/
|
|
121
|
+
healthCheck(): Promise<{
|
|
122
|
+
status: 'healthy' | 'degraded' | 'unhealthy';
|
|
123
|
+
details: any;
|
|
124
|
+
}>;
|
|
125
|
+
/**
|
|
126
|
+
* Configuration and utilities
|
|
127
|
+
*/
|
|
128
|
+
getConfiguration(): Partial<SealConfig>;
|
|
129
|
+
updateConfiguration(updates: Partial<SealConfig>): void;
|
|
130
|
+
}
|
|
131
|
+
export {};
|
|
132
|
+
//# sourceMappingURL=SealService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SealService.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/seal/SealService.ts"],"names":[],"mappings":"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"}
|