@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.
Files changed (784) hide show
  1. package/ARCHITECTURE.md +463 -0
  2. package/BENCHMARKS.md +238 -0
  3. package/README.md +142 -0
  4. package/dist/access/PermissionService.d.ts +179 -0
  5. package/dist/access/PermissionService.d.ts.map +1 -0
  6. package/dist/access/PermissionService.js +445 -0
  7. package/dist/access/PermissionService.js.map +1 -0
  8. package/dist/access/index.d.ts +8 -0
  9. package/dist/access/index.d.ts.map +1 -0
  10. package/dist/access/index.js +7 -0
  11. package/dist/access/index.js.map +1 -0
  12. package/dist/aggregation/AggregationService.d.ts +132 -0
  13. package/dist/aggregation/AggregationService.d.ts.map +1 -0
  14. package/dist/aggregation/AggregationService.js +225 -0
  15. package/dist/aggregation/AggregationService.js.map +1 -0
  16. package/dist/aggregation/index.d.ts +8 -0
  17. package/dist/aggregation/index.d.ts.map +1 -0
  18. package/dist/aggregation/index.js +7 -0
  19. package/dist/aggregation/index.js.map +1 -0
  20. package/dist/ai-sdk/PDWVectorStore.d.ts +124 -0
  21. package/dist/ai-sdk/PDWVectorStore.d.ts.map +1 -0
  22. package/dist/ai-sdk/PDWVectorStore.js +557 -0
  23. package/dist/ai-sdk/PDWVectorStore.js.map +1 -0
  24. package/dist/ai-sdk/index.d.ts +45 -0
  25. package/dist/ai-sdk/index.d.ts.map +1 -0
  26. package/dist/ai-sdk/index.js +45 -0
  27. package/dist/ai-sdk/index.js.map +1 -0
  28. package/dist/ai-sdk/tools.d.ts +153 -0
  29. package/dist/ai-sdk/tools.d.ts.map +1 -0
  30. package/dist/ai-sdk/tools.js +312 -0
  31. package/dist/ai-sdk/tools.js.map +1 -0
  32. package/dist/ai-sdk/types.d.ts +336 -0
  33. package/dist/ai-sdk/types.d.ts.map +1 -0
  34. package/dist/ai-sdk/types.js +36 -0
  35. package/dist/ai-sdk/types.js.map +1 -0
  36. package/dist/api/client.d.ts +43 -0
  37. package/dist/api/client.d.ts.map +1 -0
  38. package/dist/api/client.js +136 -0
  39. package/dist/api/client.js.map +1 -0
  40. package/dist/batch/BatchManager.d.ts +147 -0
  41. package/dist/batch/BatchManager.d.ts.map +1 -0
  42. package/dist/batch/BatchManager.js +427 -0
  43. package/dist/batch/BatchManager.js.map +1 -0
  44. package/dist/batch/BatchingService.d.ts +122 -0
  45. package/dist/batch/BatchingService.d.ts.map +1 -0
  46. package/dist/batch/BatchingService.js +301 -0
  47. package/dist/batch/BatchingService.js.map +1 -0
  48. package/dist/batch/MemoryProcessingCache.d.ts +147 -0
  49. package/dist/batch/MemoryProcessingCache.d.ts.map +1 -0
  50. package/dist/batch/MemoryProcessingCache.js +349 -0
  51. package/dist/batch/MemoryProcessingCache.js.map +1 -0
  52. package/dist/batch/index.d.ts +13 -0
  53. package/dist/batch/index.d.ts.map +1 -0
  54. package/dist/batch/index.js +10 -0
  55. package/dist/batch/index.js.map +1 -0
  56. package/dist/browser.d.ts +73 -0
  57. package/dist/browser.d.ts.map +1 -0
  58. package/dist/browser.js +66 -0
  59. package/dist/browser.js.map +1 -0
  60. package/dist/chat/index.d.ts +13 -0
  61. package/dist/chat/index.d.ts.map +1 -0
  62. package/dist/chat/index.js +14 -0
  63. package/dist/chat/index.js.map +1 -0
  64. package/dist/client/ClientMemoryManager.d.ts +202 -0
  65. package/dist/client/ClientMemoryManager.d.ts.map +1 -0
  66. package/dist/client/ClientMemoryManager.js +764 -0
  67. package/dist/client/ClientMemoryManager.js.map +1 -0
  68. package/dist/client/PersonalDataWallet.d.ts +406 -0
  69. package/dist/client/PersonalDataWallet.d.ts.map +1 -0
  70. package/dist/client/PersonalDataWallet.js +229 -0
  71. package/dist/client/PersonalDataWallet.js.map +1 -0
  72. package/dist/client/SimplePDWClient.d.ts +534 -0
  73. package/dist/client/SimplePDWClient.d.ts.map +1 -0
  74. package/dist/client/SimplePDWClient.js +876 -0
  75. package/dist/client/SimplePDWClient.js.map +1 -0
  76. package/dist/client/factory.d.ts +99 -0
  77. package/dist/client/factory.d.ts.map +1 -0
  78. package/dist/client/factory.js +126 -0
  79. package/dist/client/factory.js.map +1 -0
  80. package/dist/client/namespaces/AnalyticsNamespace.d.ts +178 -0
  81. package/dist/client/namespaces/AnalyticsNamespace.d.ts.map +1 -0
  82. package/dist/client/namespaces/AnalyticsNamespace.js +261 -0
  83. package/dist/client/namespaces/AnalyticsNamespace.js.map +1 -0
  84. package/dist/client/namespaces/BatchNamespace.d.ts +120 -0
  85. package/dist/client/namespaces/BatchNamespace.d.ts.map +1 -0
  86. package/dist/client/namespaces/BatchNamespace.js +261 -0
  87. package/dist/client/namespaces/BatchNamespace.js.map +1 -0
  88. package/dist/client/namespaces/CacheNamespace.d.ts +80 -0
  89. package/dist/client/namespaces/CacheNamespace.d.ts.map +1 -0
  90. package/dist/client/namespaces/CacheNamespace.js +100 -0
  91. package/dist/client/namespaces/CacheNamespace.js.map +1 -0
  92. package/dist/client/namespaces/CapabilityNamespace.d.ts +145 -0
  93. package/dist/client/namespaces/CapabilityNamespace.d.ts.map +1 -0
  94. package/dist/client/namespaces/CapabilityNamespace.js +181 -0
  95. package/dist/client/namespaces/CapabilityNamespace.js.map +1 -0
  96. package/dist/client/namespaces/ChatNamespace.d.ts +110 -0
  97. package/dist/client/namespaces/ChatNamespace.d.ts.map +1 -0
  98. package/dist/client/namespaces/ChatNamespace.js +123 -0
  99. package/dist/client/namespaces/ChatNamespace.js.map +1 -0
  100. package/dist/client/namespaces/ClassifyNamespace.d.ts +96 -0
  101. package/dist/client/namespaces/ClassifyNamespace.d.ts.map +1 -0
  102. package/dist/client/namespaces/ClassifyNamespace.js +149 -0
  103. package/dist/client/namespaces/ClassifyNamespace.js.map +1 -0
  104. package/dist/client/namespaces/ContextNamespace.d.ts +150 -0
  105. package/dist/client/namespaces/ContextNamespace.d.ts.map +1 -0
  106. package/dist/client/namespaces/ContextNamespace.js +250 -0
  107. package/dist/client/namespaces/ContextNamespace.js.map +1 -0
  108. package/dist/client/namespaces/EmbeddingsNamespace.d.ts +64 -0
  109. package/dist/client/namespaces/EmbeddingsNamespace.d.ts.map +1 -0
  110. package/dist/client/namespaces/EmbeddingsNamespace.js +86 -0
  111. package/dist/client/namespaces/EmbeddingsNamespace.js.map +1 -0
  112. package/dist/client/namespaces/EncryptionNamespace.d.ts +128 -0
  113. package/dist/client/namespaces/EncryptionNamespace.d.ts.map +1 -0
  114. package/dist/client/namespaces/EncryptionNamespace.js +161 -0
  115. package/dist/client/namespaces/EncryptionNamespace.js.map +1 -0
  116. package/dist/client/namespaces/GraphNamespace.d.ts +168 -0
  117. package/dist/client/namespaces/GraphNamespace.d.ts.map +1 -0
  118. package/dist/client/namespaces/GraphNamespace.js +314 -0
  119. package/dist/client/namespaces/GraphNamespace.js.map +1 -0
  120. package/dist/client/namespaces/IndexNamespace.d.ts +141 -0
  121. package/dist/client/namespaces/IndexNamespace.d.ts.map +1 -0
  122. package/dist/client/namespaces/IndexNamespace.js +238 -0
  123. package/dist/client/namespaces/IndexNamespace.js.map +1 -0
  124. package/dist/client/namespaces/MemoryNamespace.d.ts +277 -0
  125. package/dist/client/namespaces/MemoryNamespace.d.ts.map +1 -0
  126. package/dist/client/namespaces/MemoryNamespace.js +907 -0
  127. package/dist/client/namespaces/MemoryNamespace.js.map +1 -0
  128. package/dist/client/namespaces/PermissionsNamespace.d.ts +114 -0
  129. package/dist/client/namespaces/PermissionsNamespace.d.ts.map +1 -0
  130. package/dist/client/namespaces/PermissionsNamespace.js +179 -0
  131. package/dist/client/namespaces/PermissionsNamespace.js.map +1 -0
  132. package/dist/client/namespaces/PipelineNamespace.d.ts +125 -0
  133. package/dist/client/namespaces/PipelineNamespace.d.ts.map +1 -0
  134. package/dist/client/namespaces/PipelineNamespace.js +171 -0
  135. package/dist/client/namespaces/PipelineNamespace.js.map +1 -0
  136. package/dist/client/namespaces/SearchNamespace.d.ts +382 -0
  137. package/dist/client/namespaces/SearchNamespace.d.ts.map +1 -0
  138. package/dist/client/namespaces/SearchNamespace.js +821 -0
  139. package/dist/client/namespaces/SearchNamespace.js.map +1 -0
  140. package/dist/client/namespaces/StorageNamespace.d.ts +180 -0
  141. package/dist/client/namespaces/StorageNamespace.d.ts.map +1 -0
  142. package/dist/client/namespaces/StorageNamespace.js +354 -0
  143. package/dist/client/namespaces/StorageNamespace.js.map +1 -0
  144. package/dist/client/namespaces/TxNamespace.d.ts +143 -0
  145. package/dist/client/namespaces/TxNamespace.d.ts.map +1 -0
  146. package/dist/client/namespaces/TxNamespace.js +208 -0
  147. package/dist/client/namespaces/TxNamespace.js.map +1 -0
  148. package/dist/client/namespaces/WalletNamespace.d.ts +124 -0
  149. package/dist/client/namespaces/WalletNamespace.d.ts.map +1 -0
  150. package/dist/client/namespaces/WalletNamespace.js +197 -0
  151. package/dist/client/namespaces/WalletNamespace.js.map +1 -0
  152. package/dist/client/namespaces/consolidated/AINamespace.d.ts +265 -0
  153. package/dist/client/namespaces/consolidated/AINamespace.d.ts.map +1 -0
  154. package/dist/client/namespaces/consolidated/AINamespace.js +390 -0
  155. package/dist/client/namespaces/consolidated/AINamespace.js.map +1 -0
  156. package/dist/client/namespaces/consolidated/BlockchainNamespace.d.ts +265 -0
  157. package/dist/client/namespaces/consolidated/BlockchainNamespace.d.ts.map +1 -0
  158. package/dist/client/namespaces/consolidated/BlockchainNamespace.js +412 -0
  159. package/dist/client/namespaces/consolidated/BlockchainNamespace.js.map +1 -0
  160. package/dist/client/namespaces/consolidated/SecurityNamespace.d.ts +354 -0
  161. package/dist/client/namespaces/consolidated/SecurityNamespace.d.ts.map +1 -0
  162. package/dist/client/namespaces/consolidated/SecurityNamespace.js +522 -0
  163. package/dist/client/namespaces/consolidated/SecurityNamespace.js.map +1 -0
  164. package/dist/client/namespaces/consolidated/StorageNamespace.d.ts +235 -0
  165. package/dist/client/namespaces/consolidated/StorageNamespace.d.ts.map +1 -0
  166. package/dist/client/namespaces/consolidated/StorageNamespace.js +351 -0
  167. package/dist/client/namespaces/consolidated/StorageNamespace.js.map +1 -0
  168. package/dist/client/namespaces/consolidated/index.d.ts +17 -0
  169. package/dist/client/namespaces/consolidated/index.d.ts.map +1 -0
  170. package/dist/client/namespaces/consolidated/index.js +13 -0
  171. package/dist/client/namespaces/consolidated/index.js.map +1 -0
  172. package/dist/client/signers/KeypairSigner.d.ts +55 -0
  173. package/dist/client/signers/KeypairSigner.d.ts.map +1 -0
  174. package/dist/client/signers/KeypairSigner.js +84 -0
  175. package/dist/client/signers/KeypairSigner.js.map +1 -0
  176. package/dist/client/signers/UnifiedSigner.d.ts +88 -0
  177. package/dist/client/signers/UnifiedSigner.d.ts.map +1 -0
  178. package/dist/client/signers/UnifiedSigner.js +13 -0
  179. package/dist/client/signers/UnifiedSigner.js.map +1 -0
  180. package/dist/client/signers/WalletAdapterSigner.d.ts +94 -0
  181. package/dist/client/signers/WalletAdapterSigner.d.ts.map +1 -0
  182. package/dist/client/signers/WalletAdapterSigner.js +91 -0
  183. package/dist/client/signers/WalletAdapterSigner.js.map +1 -0
  184. package/dist/client/signers/index.d.ts +14 -0
  185. package/dist/client/signers/index.d.ts.map +1 -0
  186. package/dist/client/signers/index.js +12 -0
  187. package/dist/client/signers/index.js.map +1 -0
  188. package/dist/config/ConfigurationHelper.d.ts +167 -0
  189. package/dist/config/ConfigurationHelper.d.ts.map +1 -0
  190. package/dist/config/ConfigurationHelper.js +283 -0
  191. package/dist/config/ConfigurationHelper.js.map +1 -0
  192. package/dist/config/defaults.d.ts +9 -0
  193. package/dist/config/defaults.d.ts.map +1 -0
  194. package/dist/config/defaults.js +49 -0
  195. package/dist/config/defaults.js.map +1 -0
  196. package/dist/config/index.d.ts +9 -0
  197. package/dist/config/index.d.ts.map +1 -0
  198. package/dist/config/index.js +8 -0
  199. package/dist/config/index.js.map +1 -0
  200. package/dist/config/validation.d.ts +12 -0
  201. package/dist/config/validation.d.ts.map +1 -0
  202. package/dist/config/validation.js +61 -0
  203. package/dist/config/validation.js.map +1 -0
  204. package/dist/core/index.d.ts +11 -0
  205. package/dist/core/index.d.ts.map +1 -0
  206. package/dist/core/index.js +13 -0
  207. package/dist/core/index.js.map +1 -0
  208. package/dist/core/interfaces/IService.d.ts +162 -0
  209. package/dist/core/interfaces/IService.d.ts.map +1 -0
  210. package/dist/core/interfaces/IService.js +159 -0
  211. package/dist/core/interfaces/IService.js.map +1 -0
  212. package/dist/core/interfaces/index.d.ts +7 -0
  213. package/dist/core/interfaces/index.d.ts.map +1 -0
  214. package/dist/core/interfaces/index.js +7 -0
  215. package/dist/core/interfaces/index.js.map +1 -0
  216. package/dist/core/types/capability.d.ts +268 -0
  217. package/dist/core/types/capability.d.ts.map +1 -0
  218. package/dist/core/types/capability.js +16 -0
  219. package/dist/core/types/capability.js.map +1 -0
  220. package/dist/core/types/index.d.ts +750 -0
  221. package/dist/core/types/index.d.ts.map +1 -0
  222. package/dist/core/types/index.js +6 -0
  223. package/dist/core/types/index.js.map +1 -0
  224. package/dist/core/types/wallet.d.ts +254 -0
  225. package/dist/core/types/wallet.d.ts.map +1 -0
  226. package/dist/core/types/wallet.js +27 -0
  227. package/dist/core/types/wallet.js.map +1 -0
  228. package/dist/core/types.d.ts +8 -0
  229. package/dist/core/types.d.ts.map +1 -0
  230. package/dist/core/types.js +8 -0
  231. package/dist/core/types.js.map +1 -0
  232. package/dist/core/wallet.d.ts +209 -0
  233. package/dist/core/wallet.d.ts.map +1 -0
  234. package/dist/core/wallet.js +27 -0
  235. package/dist/core/wallet.js.map +1 -0
  236. package/dist/embedding/index.d.ts +9 -0
  237. package/dist/embedding/index.d.ts.map +1 -0
  238. package/dist/embedding/index.js +8 -0
  239. package/dist/embedding/index.js.map +1 -0
  240. package/dist/embedding/types.d.ts +302 -0
  241. package/dist/embedding/types.d.ts.map +1 -0
  242. package/dist/embedding/types.js +9 -0
  243. package/dist/embedding/types.js.map +1 -0
  244. package/dist/encryption/index.d.ts +14 -0
  245. package/dist/encryption/index.d.ts.map +1 -0
  246. package/dist/encryption/index.js +14 -0
  247. package/dist/encryption/index.js.map +1 -0
  248. package/dist/errors/index.d.ts +149 -0
  249. package/dist/errors/index.d.ts.map +1 -0
  250. package/dist/errors/index.js +301 -0
  251. package/dist/errors/index.js.map +1 -0
  252. package/dist/errors/recovery.d.ts +128 -0
  253. package/dist/errors/recovery.d.ts.map +1 -0
  254. package/dist/errors/recovery.js +320 -0
  255. package/dist/errors/recovery.js.map +1 -0
  256. package/dist/errors/validation.d.ts +106 -0
  257. package/dist/errors/validation.d.ts.map +1 -0
  258. package/dist/errors/validation.js +354 -0
  259. package/dist/errors/validation.js.map +1 -0
  260. package/dist/generated/pdw/capability.d.ts +223 -0
  261. package/dist/generated/pdw/capability.d.ts.map +1 -0
  262. package/dist/generated/pdw/capability.js +238 -0
  263. package/dist/generated/pdw/capability.js.map +1 -0
  264. package/dist/generated/pdw/deps/sui/object.d.ts +9 -0
  265. package/dist/generated/pdw/deps/sui/object.d.ts.map +1 -0
  266. package/dist/generated/pdw/deps/sui/object.js +11 -0
  267. package/dist/generated/pdw/deps/sui/object.js.map +1 -0
  268. package/dist/generated/pdw/deps/sui/vec_map.d.ts +37 -0
  269. package/dist/generated/pdw/deps/sui/vec_map.d.ts.map +1 -0
  270. package/dist/generated/pdw/deps/sui/vec_map.js +28 -0
  271. package/dist/generated/pdw/deps/sui/vec_map.js.map +1 -0
  272. package/dist/generated/pdw/memory.d.ts +676 -0
  273. package/dist/generated/pdw/memory.d.ts.map +1 -0
  274. package/dist/generated/pdw/memory.js +681 -0
  275. package/dist/generated/pdw/memory.js.map +1 -0
  276. package/dist/generated/pdw/wallet.d.ts +78 -0
  277. package/dist/generated/pdw/wallet.d.ts.map +1 -0
  278. package/dist/generated/pdw/wallet.js +89 -0
  279. package/dist/generated/pdw/wallet.js.map +1 -0
  280. package/dist/generated/utils/index.d.ts +12 -0
  281. package/dist/generated/utils/index.d.ts.map +1 -0
  282. package/dist/generated/utils/index.js +132 -0
  283. package/dist/generated/utils/index.js.map +1 -0
  284. package/dist/graph/BrowserKnowledgeGraphManager.d.ts +101 -0
  285. package/dist/graph/BrowserKnowledgeGraphManager.d.ts.map +1 -0
  286. package/dist/graph/BrowserKnowledgeGraphManager.js +411 -0
  287. package/dist/graph/BrowserKnowledgeGraphManager.js.map +1 -0
  288. package/dist/graph/GraphService.d.ts +194 -0
  289. package/dist/graph/GraphService.d.ts.map +1 -0
  290. package/dist/graph/GraphService.js +662 -0
  291. package/dist/graph/GraphService.js.map +1 -0
  292. package/dist/graph/KnowledgeGraphManager.d.ts +161 -0
  293. package/dist/graph/KnowledgeGraphManager.d.ts.map +1 -0
  294. package/dist/graph/KnowledgeGraphManager.js +495 -0
  295. package/dist/graph/KnowledgeGraphManager.js.map +1 -0
  296. package/dist/graph/index.d.ts +11 -0
  297. package/dist/graph/index.d.ts.map +1 -0
  298. package/dist/graph/index.js +9 -0
  299. package/dist/graph/index.js.map +1 -0
  300. package/dist/hooks.wip/index.d.ts +55 -0
  301. package/dist/hooks.wip/index.d.ts.map +1 -0
  302. package/dist/hooks.wip/index.js +58 -0
  303. package/dist/hooks.wip/index.js.map +1 -0
  304. package/dist/hooks.wip/useCreateMemory.d.ts +111 -0
  305. package/dist/hooks.wip/useCreateMemory.d.ts.map +1 -0
  306. package/dist/hooks.wip/useCreateMemory.js +149 -0
  307. package/dist/hooks.wip/useCreateMemory.js.map +1 -0
  308. package/dist/hooks.wip/useCreateMemoryBatch.d.ts +122 -0
  309. package/dist/hooks.wip/useCreateMemoryBatch.d.ts.map +1 -0
  310. package/dist/hooks.wip/useCreateMemoryBatch.js +221 -0
  311. package/dist/hooks.wip/useCreateMemoryBatch.js.map +1 -0
  312. package/dist/hooks.wip/useKnowledgeGraph.d.ts +66 -0
  313. package/dist/hooks.wip/useKnowledgeGraph.d.ts.map +1 -0
  314. package/dist/hooks.wip/useKnowledgeGraph.js +229 -0
  315. package/dist/hooks.wip/useKnowledgeGraph.js.map +1 -0
  316. package/dist/hooks.wip/useMemoryChat.d.ts +106 -0
  317. package/dist/hooks.wip/useMemoryChat.d.ts.map +1 -0
  318. package/dist/hooks.wip/useMemoryChat.js +284 -0
  319. package/dist/hooks.wip/useMemoryChat.js.map +1 -0
  320. package/dist/hooks.wip/useMemoryIndex.d.ts +90 -0
  321. package/dist/hooks.wip/useMemoryIndex.d.ts.map +1 -0
  322. package/dist/hooks.wip/useMemoryIndex.js +218 -0
  323. package/dist/hooks.wip/useMemoryIndex.js.map +1 -0
  324. package/dist/hooks.wip/useMemoryManager.d.ts +35 -0
  325. package/dist/hooks.wip/useMemoryManager.d.ts.map +1 -0
  326. package/dist/hooks.wip/useMemoryManager.js +86 -0
  327. package/dist/hooks.wip/useMemoryManager.js.map +1 -0
  328. package/dist/hooks.wip/useMemorySearch.d.ts +100 -0
  329. package/dist/hooks.wip/useMemorySearch.d.ts.map +1 -0
  330. package/dist/hooks.wip/useMemorySearch.js +278 -0
  331. package/dist/hooks.wip/useMemorySearch.js.map +1 -0
  332. package/dist/hooks.wip/useMemoryServices.d.ts +80 -0
  333. package/dist/hooks.wip/useMemoryServices.d.ts.map +1 -0
  334. package/dist/hooks.wip/useMemoryServices.js +264 -0
  335. package/dist/hooks.wip/useMemoryServices.js.map +1 -0
  336. package/dist/hooks.wip/usePDWRAG.d.ts +112 -0
  337. package/dist/hooks.wip/usePDWRAG.d.ts.map +1 -0
  338. package/dist/hooks.wip/usePDWRAG.js +121 -0
  339. package/dist/hooks.wip/usePDWRAG.js.map +1 -0
  340. package/dist/hooks.wip/usePDWVectorStore.d.ts +68 -0
  341. package/dist/hooks.wip/usePDWVectorStore.d.ts.map +1 -0
  342. package/dist/hooks.wip/usePDWVectorStore.js +102 -0
  343. package/dist/hooks.wip/usePDWVectorStore.js.map +1 -0
  344. package/dist/hooks.wip/useRetrieveEmbedding.d.ts +138 -0
  345. package/dist/hooks.wip/useRetrieveEmbedding.d.ts.map +1 -0
  346. package/dist/hooks.wip/useRetrieveEmbedding.js +121 -0
  347. package/dist/hooks.wip/useRetrieveEmbedding.js.map +1 -0
  348. package/dist/hooks.wip/useSearchMemories.d.ts +103 -0
  349. package/dist/hooks.wip/useSearchMemories.d.ts.map +1 -0
  350. package/dist/hooks.wip/useSearchMemories.js +146 -0
  351. package/dist/hooks.wip/useSearchMemories.js.map +1 -0
  352. package/dist/hooks.wip/useStoreEmbedding.d.ts +174 -0
  353. package/dist/hooks.wip/useStoreEmbedding.d.ts.map +1 -0
  354. package/dist/hooks.wip/useStoreEmbedding.js +167 -0
  355. package/dist/hooks.wip/useStoreEmbedding.js.map +1 -0
  356. package/dist/hooks.wip/useWalletMemories.d.ts +119 -0
  357. package/dist/hooks.wip/useWalletMemories.d.ts.map +1 -0
  358. package/dist/hooks.wip/useWalletMemories.js +166 -0
  359. package/dist/hooks.wip/useWalletMemories.js.map +1 -0
  360. package/dist/hooks.wip/utils/cache.d.ts +25 -0
  361. package/dist/hooks.wip/utils/cache.d.ts.map +1 -0
  362. package/dist/hooks.wip/utils/cache.js +38 -0
  363. package/dist/hooks.wip/utils/cache.js.map +1 -0
  364. package/dist/hooks.wip/utils/types.d.ts +138 -0
  365. package/dist/hooks.wip/utils/types.d.ts.map +1 -0
  366. package/dist/hooks.wip/utils/types.js +5 -0
  367. package/dist/hooks.wip/utils/types.js.map +1 -0
  368. package/dist/index.d.ts +190 -0
  369. package/dist/index.d.ts.map +1 -0
  370. package/dist/index.js +298 -0
  371. package/dist/index.js.map +1 -0
  372. package/dist/infrastructure/ai/EmbeddingService.d.ts +101 -0
  373. package/dist/infrastructure/ai/EmbeddingService.d.ts.map +1 -0
  374. package/dist/infrastructure/ai/EmbeddingService.js +242 -0
  375. package/dist/infrastructure/ai/EmbeddingService.js.map +1 -0
  376. package/dist/infrastructure/ai/GeminiAIService.d.ts +84 -0
  377. package/dist/infrastructure/ai/GeminiAIService.d.ts.map +1 -0
  378. package/dist/infrastructure/ai/GeminiAIService.js +300 -0
  379. package/dist/infrastructure/ai/GeminiAIService.js.map +1 -0
  380. package/dist/infrastructure/ai/index.d.ts +8 -0
  381. package/dist/infrastructure/ai/index.d.ts.map +1 -0
  382. package/dist/infrastructure/ai/index.js +8 -0
  383. package/dist/infrastructure/ai/index.js.map +1 -0
  384. package/dist/infrastructure/index.d.ts +16 -0
  385. package/dist/infrastructure/index.d.ts.map +1 -0
  386. package/dist/infrastructure/index.js +19 -0
  387. package/dist/infrastructure/index.js.map +1 -0
  388. package/dist/infrastructure/seal/EncryptionService.d.ts +162 -0
  389. package/dist/infrastructure/seal/EncryptionService.d.ts.map +1 -0
  390. package/dist/infrastructure/seal/EncryptionService.js +466 -0
  391. package/dist/infrastructure/seal/EncryptionService.js.map +1 -0
  392. package/dist/infrastructure/seal/SealService.d.ts +132 -0
  393. package/dist/infrastructure/seal/SealService.d.ts.map +1 -0
  394. package/dist/infrastructure/seal/SealService.js +473 -0
  395. package/dist/infrastructure/seal/SealService.js.map +1 -0
  396. package/dist/infrastructure/seal/index.d.ts +8 -0
  397. package/dist/infrastructure/seal/index.d.ts.map +1 -0
  398. package/dist/infrastructure/seal/index.js +8 -0
  399. package/dist/infrastructure/seal/index.js.map +1 -0
  400. package/dist/infrastructure/sui/BlockchainManager.d.ts +161 -0
  401. package/dist/infrastructure/sui/BlockchainManager.d.ts.map +1 -0
  402. package/dist/infrastructure/sui/BlockchainManager.js +421 -0
  403. package/dist/infrastructure/sui/BlockchainManager.js.map +1 -0
  404. package/dist/infrastructure/sui/SuiService.d.ts +179 -0
  405. package/dist/infrastructure/sui/SuiService.d.ts.map +1 -0
  406. package/dist/infrastructure/sui/SuiService.js +658 -0
  407. package/dist/infrastructure/sui/SuiService.js.map +1 -0
  408. package/dist/infrastructure/sui/index.d.ts +8 -0
  409. package/dist/infrastructure/sui/index.d.ts.map +1 -0
  410. package/dist/infrastructure/sui/index.js +8 -0
  411. package/dist/infrastructure/sui/index.js.map +1 -0
  412. package/dist/infrastructure/walrus/StorageManager.d.ts +207 -0
  413. package/dist/infrastructure/walrus/StorageManager.d.ts.map +1 -0
  414. package/dist/infrastructure/walrus/StorageManager.js +413 -0
  415. package/dist/infrastructure/walrus/StorageManager.js.map +1 -0
  416. package/dist/infrastructure/walrus/WalrusStorageService.d.ts +177 -0
  417. package/dist/infrastructure/walrus/WalrusStorageService.d.ts.map +1 -0
  418. package/dist/infrastructure/walrus/WalrusStorageService.js +403 -0
  419. package/dist/infrastructure/walrus/WalrusStorageService.js.map +1 -0
  420. package/dist/infrastructure/walrus/index.d.ts +8 -0
  421. package/dist/infrastructure/walrus/index.d.ts.map +1 -0
  422. package/dist/infrastructure/walrus/index.js +8 -0
  423. package/dist/infrastructure/walrus/index.js.map +1 -0
  424. package/dist/langchain/PDWEmbeddings.d.ts +77 -0
  425. package/dist/langchain/PDWEmbeddings.d.ts.map +1 -0
  426. package/dist/langchain/PDWEmbeddings.js +96 -0
  427. package/dist/langchain/PDWEmbeddings.js.map +1 -0
  428. package/dist/langchain/PDWVectorStore.d.ts +173 -0
  429. package/dist/langchain/PDWVectorStore.d.ts.map +1 -0
  430. package/dist/langchain/PDWVectorStore.js +304 -0
  431. package/dist/langchain/PDWVectorStore.js.map +1 -0
  432. package/dist/langchain/createPDWRAG.d.ts +115 -0
  433. package/dist/langchain/createPDWRAG.d.ts.map +1 -0
  434. package/dist/langchain/createPDWRAG.js +181 -0
  435. package/dist/langchain/createPDWRAG.js.map +1 -0
  436. package/dist/langchain/index.d.ts +35 -0
  437. package/dist/langchain/index.d.ts.map +1 -0
  438. package/dist/langchain/index.js +35 -0
  439. package/dist/langchain/index.js.map +1 -0
  440. package/dist/memory/index.d.ts +13 -0
  441. package/dist/memory/index.d.ts.map +1 -0
  442. package/dist/memory/index.js +14 -0
  443. package/dist/memory/index.js.map +1 -0
  444. package/dist/permissions/ConsentRepository.d.ts +71 -0
  445. package/dist/permissions/ConsentRepository.d.ts.map +1 -0
  446. package/dist/permissions/ConsentRepository.js +297 -0
  447. package/dist/permissions/ConsentRepository.js.map +1 -0
  448. package/dist/permissions/index.d.ts +9 -0
  449. package/dist/permissions/index.d.ts.map +1 -0
  450. package/dist/permissions/index.js +8 -0
  451. package/dist/permissions/index.js.map +1 -0
  452. package/dist/pipeline/MemoryPipeline.d.ts +191 -0
  453. package/dist/pipeline/MemoryPipeline.d.ts.map +1 -0
  454. package/dist/pipeline/MemoryPipeline.js +588 -0
  455. package/dist/pipeline/MemoryPipeline.js.map +1 -0
  456. package/dist/pipeline/PipelineManager.d.ts +178 -0
  457. package/dist/pipeline/PipelineManager.d.ts.map +1 -0
  458. package/dist/pipeline/PipelineManager.js +485 -0
  459. package/dist/pipeline/PipelineManager.js.map +1 -0
  460. package/dist/pipeline/index.d.ts +13 -0
  461. package/dist/pipeline/index.d.ts.map +1 -0
  462. package/dist/pipeline/index.js +11 -0
  463. package/dist/pipeline/index.js.map +1 -0
  464. package/dist/retrieval/AdvancedSearchService.d.ts +231 -0
  465. package/dist/retrieval/AdvancedSearchService.d.ts.map +1 -0
  466. package/dist/retrieval/AdvancedSearchService.js +384 -0
  467. package/dist/retrieval/AdvancedSearchService.js.map +1 -0
  468. package/dist/retrieval/MemoryAnalyticsService.d.ts +227 -0
  469. package/dist/retrieval/MemoryAnalyticsService.d.ts.map +1 -0
  470. package/dist/retrieval/MemoryAnalyticsService.js +417 -0
  471. package/dist/retrieval/MemoryAnalyticsService.js.map +1 -0
  472. package/dist/retrieval/MemoryDecryptionPipeline.d.ts +191 -0
  473. package/dist/retrieval/MemoryDecryptionPipeline.d.ts.map +1 -0
  474. package/dist/retrieval/MemoryDecryptionPipeline.js +623 -0
  475. package/dist/retrieval/MemoryDecryptionPipeline.js.map +1 -0
  476. package/dist/retrieval/MemoryRetrievalService.d.ts +248 -0
  477. package/dist/retrieval/MemoryRetrievalService.d.ts.map +1 -0
  478. package/dist/retrieval/MemoryRetrievalService.js +519 -0
  479. package/dist/retrieval/MemoryRetrievalService.js.map +1 -0
  480. package/dist/retrieval/index.d.ts +14 -0
  481. package/dist/retrieval/index.d.ts.map +1 -0
  482. package/dist/retrieval/index.js +10 -0
  483. package/dist/retrieval/index.js.map +1 -0
  484. package/dist/services/BatchService.d.ts +109 -0
  485. package/dist/services/BatchService.d.ts.map +1 -0
  486. package/dist/services/BatchService.js +259 -0
  487. package/dist/services/BatchService.js.map +1 -0
  488. package/dist/services/CapabilityService.d.ts +141 -0
  489. package/dist/services/CapabilityService.d.ts.map +1 -0
  490. package/dist/services/CapabilityService.js +361 -0
  491. package/dist/services/CapabilityService.js.map +1 -0
  492. package/dist/services/ChatService.d.ts +89 -0
  493. package/dist/services/ChatService.d.ts.map +1 -0
  494. package/dist/services/ChatService.js +319 -0
  495. package/dist/services/ChatService.js.map +1 -0
  496. package/dist/services/ClassifierService.d.ts +104 -0
  497. package/dist/services/ClassifierService.d.ts.map +1 -0
  498. package/dist/services/ClassifierService.js +374 -0
  499. package/dist/services/ClassifierService.js.map +1 -0
  500. package/dist/services/CrossContextPermissionService.d.ts +149 -0
  501. package/dist/services/CrossContextPermissionService.d.ts.map +1 -0
  502. package/dist/services/CrossContextPermissionService.js +337 -0
  503. package/dist/services/CrossContextPermissionService.js.map +1 -0
  504. package/dist/services/EmbeddingService.d.ts +206 -0
  505. package/dist/services/EmbeddingService.d.ts.map +1 -0
  506. package/dist/services/EmbeddingService.js +504 -0
  507. package/dist/services/EmbeddingService.js.map +1 -0
  508. package/dist/services/EncryptionService.d.ts +201 -0
  509. package/dist/services/EncryptionService.d.ts.map +1 -0
  510. package/dist/services/EncryptionService.js +558 -0
  511. package/dist/services/EncryptionService.js.map +1 -0
  512. package/dist/services/GeminiAIService.d.ts +112 -0
  513. package/dist/services/GeminiAIService.d.ts.map +1 -0
  514. package/dist/services/GeminiAIService.js +389 -0
  515. package/dist/services/GeminiAIService.js.map +1 -0
  516. package/dist/services/IndexManager.d.ts +238 -0
  517. package/dist/services/IndexManager.d.ts.map +1 -0
  518. package/dist/services/IndexManager.js +691 -0
  519. package/dist/services/IndexManager.js.map +1 -0
  520. package/dist/services/MemoryIndexService.d.ts +222 -0
  521. package/dist/services/MemoryIndexService.d.ts.map +1 -0
  522. package/dist/services/MemoryIndexService.js +695 -0
  523. package/dist/services/MemoryIndexService.js.map +1 -0
  524. package/dist/services/MemoryService.d.ts +156 -0
  525. package/dist/services/MemoryService.d.ts.map +1 -0
  526. package/dist/services/MemoryService.js +273 -0
  527. package/dist/services/MemoryService.js.map +1 -0
  528. package/dist/services/QueryService.d.ts +182 -0
  529. package/dist/services/QueryService.d.ts.map +1 -0
  530. package/dist/services/QueryService.js +631 -0
  531. package/dist/services/QueryService.js.map +1 -0
  532. package/dist/services/StorageService.d.ts +523 -0
  533. package/dist/services/StorageService.d.ts.map +1 -0
  534. package/dist/services/StorageService.js +627 -0
  535. package/dist/services/StorageService.js.map +1 -0
  536. package/dist/services/TransactionService.d.ts +179 -0
  537. package/dist/services/TransactionService.d.ts.map +1 -0
  538. package/dist/services/TransactionService.js +639 -0
  539. package/dist/services/TransactionService.js.map +1 -0
  540. package/dist/services/VectorService.d.ts +122 -0
  541. package/dist/services/VectorService.d.ts.map +1 -0
  542. package/dist/services/VectorService.js +371 -0
  543. package/dist/services/VectorService.js.map +1 -0
  544. package/dist/services/ViewService.d.ts +126 -0
  545. package/dist/services/ViewService.d.ts.map +1 -0
  546. package/dist/services/ViewService.js +356 -0
  547. package/dist/services/ViewService.js.map +1 -0
  548. package/dist/services/index.d.ts +12 -0
  549. package/dist/services/index.d.ts.map +1 -0
  550. package/dist/services/index.js +11 -0
  551. package/dist/services/index.js.map +1 -0
  552. package/dist/services/storage/BlobAttributesManager.d.ts +60 -0
  553. package/dist/services/storage/BlobAttributesManager.d.ts.map +1 -0
  554. package/dist/services/storage/BlobAttributesManager.js +265 -0
  555. package/dist/services/storage/BlobAttributesManager.js.map +1 -0
  556. package/dist/services/storage/KnowledgeGraphManager.d.ts +162 -0
  557. package/dist/services/storage/KnowledgeGraphManager.d.ts.map +1 -0
  558. package/dist/services/storage/KnowledgeGraphManager.js +303 -0
  559. package/dist/services/storage/KnowledgeGraphManager.js.map +1 -0
  560. package/dist/services/storage/MemorySearchManager.d.ts +154 -0
  561. package/dist/services/storage/MemorySearchManager.d.ts.map +1 -0
  562. package/dist/services/storage/MemorySearchManager.js +260 -0
  563. package/dist/services/storage/MemorySearchManager.js.map +1 -0
  564. package/dist/services/storage/QuiltBatchManager.d.ts +185 -0
  565. package/dist/services/storage/QuiltBatchManager.d.ts.map +1 -0
  566. package/dist/services/storage/QuiltBatchManager.js +385 -0
  567. package/dist/services/storage/QuiltBatchManager.js.map +1 -0
  568. package/dist/services/storage/WalrusMetadataManager.d.ts +89 -0
  569. package/dist/services/storage/WalrusMetadataManager.d.ts.map +1 -0
  570. package/dist/services/storage/WalrusMetadataManager.js +177 -0
  571. package/dist/services/storage/WalrusMetadataManager.js.map +1 -0
  572. package/dist/services/storage/WalrusStorageManager.d.ts +113 -0
  573. package/dist/services/storage/WalrusStorageManager.d.ts.map +1 -0
  574. package/dist/services/storage/WalrusStorageManager.js +211 -0
  575. package/dist/services/storage/WalrusStorageManager.js.map +1 -0
  576. package/dist/services/storage/index.d.ts +24 -0
  577. package/dist/services/storage/index.d.ts.map +1 -0
  578. package/dist/services/storage/index.js +18 -0
  579. package/dist/services/storage/index.js.map +1 -0
  580. package/dist/transactions/index.d.ts +13 -0
  581. package/dist/transactions/index.d.ts.map +1 -0
  582. package/dist/transactions/index.js +14 -0
  583. package/dist/transactions/index.js.map +1 -0
  584. package/dist/types/index.d.ts +12 -0
  585. package/dist/types/index.d.ts.map +1 -0
  586. package/dist/types/index.js +13 -0
  587. package/dist/types/index.js.map +1 -0
  588. package/dist/types/wallet.d.ts +12 -0
  589. package/dist/types/wallet.d.ts.map +1 -0
  590. package/dist/types/wallet.js +13 -0
  591. package/dist/types/wallet.js.map +1 -0
  592. package/dist/utils/index.d.ts +21 -0
  593. package/dist/utils/index.d.ts.map +1 -0
  594. package/dist/utils/index.js +30 -0
  595. package/dist/utils/index.js.map +1 -0
  596. package/dist/utils/rebuildIndex.d.ts +79 -0
  597. package/dist/utils/rebuildIndex.d.ts.map +1 -0
  598. package/dist/utils/rebuildIndex.js +211 -0
  599. package/dist/utils/rebuildIndex.js.map +1 -0
  600. package/dist/utils/rebuildIndexNode.d.ts +70 -0
  601. package/dist/utils/rebuildIndexNode.d.ts.map +1 -0
  602. package/dist/utils/rebuildIndexNode.js +236 -0
  603. package/dist/utils/rebuildIndexNode.js.map +1 -0
  604. package/dist/vector/BrowserHnswIndexService.d.ts +93 -0
  605. package/dist/vector/BrowserHnswIndexService.d.ts.map +1 -0
  606. package/dist/vector/BrowserHnswIndexService.js +581 -0
  607. package/dist/vector/BrowserHnswIndexService.js.map +1 -0
  608. package/dist/vector/HnswWasmService.d.ts +97 -0
  609. package/dist/vector/HnswWasmService.d.ts.map +1 -0
  610. package/dist/vector/HnswWasmService.js +518 -0
  611. package/dist/vector/HnswWasmService.js.map +1 -0
  612. package/dist/vector/IHnswService.d.ts +179 -0
  613. package/dist/vector/IHnswService.d.ts.map +1 -0
  614. package/dist/vector/IHnswService.js +25 -0
  615. package/dist/vector/IHnswService.js.map +1 -0
  616. package/dist/vector/NodeHnswService.d.ts +80 -0
  617. package/dist/vector/NodeHnswService.d.ts.map +1 -0
  618. package/dist/vector/NodeHnswService.js +589 -0
  619. package/dist/vector/NodeHnswService.js.map +1 -0
  620. package/dist/vector/VectorManager.d.ts +142 -0
  621. package/dist/vector/VectorManager.d.ts.map +1 -0
  622. package/dist/vector/VectorManager.js +339 -0
  623. package/dist/vector/VectorManager.js.map +1 -0
  624. package/dist/vector/createHnswService.d.ts +51 -0
  625. package/dist/vector/createHnswService.d.ts.map +1 -0
  626. package/dist/vector/createHnswService.js +120 -0
  627. package/dist/vector/createHnswService.js.map +1 -0
  628. package/dist/vector/index.d.ts +24 -0
  629. package/dist/vector/index.d.ts.map +1 -0
  630. package/dist/vector/index.js +24 -0
  631. package/dist/vector/index.js.map +1 -0
  632. package/dist/view/ViewService.d.ts +136 -0
  633. package/dist/view/ViewService.d.ts.map +1 -0
  634. package/dist/view/ViewService.js +325 -0
  635. package/dist/view/ViewService.js.map +1 -0
  636. package/dist/view/index.d.ts +7 -0
  637. package/dist/view/index.d.ts.map +1 -0
  638. package/dist/view/index.js +7 -0
  639. package/dist/view/index.js.map +1 -0
  640. package/dist/wallet/ContextWalletService.d.ts +172 -0
  641. package/dist/wallet/ContextWalletService.d.ts.map +1 -0
  642. package/dist/wallet/ContextWalletService.js +510 -0
  643. package/dist/wallet/ContextWalletService.js.map +1 -0
  644. package/dist/wallet/MainWalletService.d.ts +114 -0
  645. package/dist/wallet/MainWalletService.d.ts.map +1 -0
  646. package/dist/wallet/MainWalletService.js +259 -0
  647. package/dist/wallet/MainWalletService.js.map +1 -0
  648. package/dist/wallet/index.d.ts +16 -0
  649. package/dist/wallet/index.d.ts.map +1 -0
  650. package/dist/wallet/index.js +14 -0
  651. package/dist/wallet/index.js.map +1 -0
  652. package/package.json +150 -0
  653. package/src/access/PermissionService.ts +636 -0
  654. package/src/access/index.ts +8 -0
  655. package/src/aggregation/AggregationService.ts +390 -0
  656. package/src/aggregation/index.ts +8 -0
  657. package/src/ai-sdk/PDWVectorStore.ts +712 -0
  658. package/src/ai-sdk/index.ts +65 -0
  659. package/src/ai-sdk/tools.ts +460 -0
  660. package/src/ai-sdk/types.ts +404 -0
  661. package/src/batch/BatchManager.ts +598 -0
  662. package/src/batch/BatchingService.ts +430 -0
  663. package/src/batch/MemoryProcessingCache.ts +493 -0
  664. package/src/batch/index.ts +31 -0
  665. package/src/browser.ts +196 -0
  666. package/src/client/ClientMemoryManager.ts +982 -0
  667. package/src/client/PersonalDataWallet.ts +346 -0
  668. package/src/client/SimplePDWClient.ts +1180 -0
  669. package/src/client/factory.ts +155 -0
  670. package/src/client/namespaces/AnalyticsNamespace.ts +377 -0
  671. package/src/client/namespaces/BatchNamespace.ts +356 -0
  672. package/src/client/namespaces/CacheNamespace.ts +123 -0
  673. package/src/client/namespaces/CapabilityNamespace.ts +217 -0
  674. package/src/client/namespaces/ClassifyNamespace.ts +169 -0
  675. package/src/client/namespaces/ContextNamespace.ts +297 -0
  676. package/src/client/namespaces/EmbeddingsNamespace.ts +99 -0
  677. package/src/client/namespaces/EncryptionNamespace.ts +221 -0
  678. package/src/client/namespaces/GraphNamespace.ts +468 -0
  679. package/src/client/namespaces/IndexNamespace.ts +283 -0
  680. package/src/client/namespaces/MemoryNamespace.ts +1135 -0
  681. package/src/client/namespaces/PermissionsNamespace.ts +254 -0
  682. package/src/client/namespaces/PipelineNamespace.ts +220 -0
  683. package/src/client/namespaces/SearchNamespace.ts +1036 -0
  684. package/src/client/namespaces/StorageNamespace.ts +458 -0
  685. package/src/client/namespaces/TxNamespace.ts +260 -0
  686. package/src/client/namespaces/WalletNamespace.ts +243 -0
  687. package/src/client/namespaces/consolidated/AINamespace.ts +449 -0
  688. package/src/client/namespaces/consolidated/BlockchainNamespace.ts +492 -0
  689. package/src/client/namespaces/consolidated/SecurityNamespace.ts +648 -0
  690. package/src/client/namespaces/consolidated/StorageNamespace.ts +440 -0
  691. package/src/client/namespaces/consolidated/index.ts +39 -0
  692. package/src/client/signers/KeypairSigner.ts +101 -0
  693. package/src/client/signers/UnifiedSigner.ts +99 -0
  694. package/src/client/signers/WalletAdapterSigner.ts +149 -0
  695. package/src/client/signers/index.ts +19 -0
  696. package/src/config/ConfigurationHelper.ts +413 -0
  697. package/src/config/defaults.ts +52 -0
  698. package/src/config/index.ts +9 -0
  699. package/src/config/validation.ts +71 -0
  700. package/src/core/index.ts +14 -0
  701. package/src/core/interfaces/IService.ts +307 -0
  702. package/src/core/interfaces/index.ts +8 -0
  703. package/src/core/types/capability.ts +297 -0
  704. package/src/core/types/index.ts +871 -0
  705. package/src/core/types/wallet.ts +271 -0
  706. package/src/core/types.ts +9 -0
  707. package/src/core/wallet.ts +223 -0
  708. package/src/embedding/index.ts +20 -0
  709. package/src/embedding/types.ts +358 -0
  710. package/src/errors/index.ts +603 -0
  711. package/src/errors/recovery.ts +462 -0
  712. package/src/errors/validation.ts +568 -0
  713. package/src/generated/pdw/capability.ts +319 -0
  714. package/src/generated/pdw/deps/sui/object.ts +13 -0
  715. package/src/generated/pdw/deps/sui/vec_map.ts +33 -0
  716. package/src/generated/pdw/memory.ts +1088 -0
  717. package/src/generated/pdw/wallet.ts +124 -0
  718. package/src/generated/utils/index.ts +159 -0
  719. package/src/graph/GraphService.ts +888 -0
  720. package/src/graph/KnowledgeGraphManager.ts +729 -0
  721. package/src/graph/index.ts +26 -0
  722. package/src/index.ts +458 -0
  723. package/src/infrastructure/index.ts +22 -0
  724. package/src/infrastructure/seal/EncryptionService.ts +604 -0
  725. package/src/infrastructure/seal/SealService.ts +616 -0
  726. package/src/infrastructure/seal/index.ts +9 -0
  727. package/src/infrastructure/sui/BlockchainManager.ts +628 -0
  728. package/src/infrastructure/sui/SuiService.ts +888 -0
  729. package/src/infrastructure/sui/index.ts +9 -0
  730. package/src/infrastructure/walrus/StorageManager.ts +605 -0
  731. package/src/infrastructure/walrus/WalrusStorageService.ts +613 -0
  732. package/src/infrastructure/walrus/index.ts +9 -0
  733. package/src/langchain/PDWEmbeddings.ts +145 -0
  734. package/src/langchain/PDWVectorStore.ts +456 -0
  735. package/src/langchain/README.md +116 -0
  736. package/src/langchain/createPDWRAG.ts +303 -0
  737. package/src/langchain/index.ts +47 -0
  738. package/src/permissions/ConsentRepository.ts +364 -0
  739. package/src/permissions/index.ts +9 -0
  740. package/src/pipeline/MemoryPipeline.ts +863 -0
  741. package/src/pipeline/PipelineManager.ts +684 -0
  742. package/src/pipeline/index.ts +27 -0
  743. package/src/retrieval/AdvancedSearchService.ts +630 -0
  744. package/src/retrieval/MemoryAnalyticsService.ts +712 -0
  745. package/src/retrieval/MemoryDecryptionPipeline.ts +825 -0
  746. package/src/retrieval/MemoryRetrievalService.ts +831 -0
  747. package/src/retrieval/index.ts +43 -0
  748. package/src/services/BatchService.ts +353 -0
  749. package/src/services/CapabilityService.ts +448 -0
  750. package/src/services/ClassifierService.ts +466 -0
  751. package/src/services/CrossContextPermissionService.ts +484 -0
  752. package/src/services/EmbeddingService.ts +706 -0
  753. package/src/services/EncryptionService.ts +712 -0
  754. package/src/services/GeminiAIService.ts +497 -0
  755. package/src/services/IndexManager.ts +1004 -0
  756. package/src/services/MemoryIndexService.ts +922 -0
  757. package/src/services/MemoryService.ts +370 -0
  758. package/src/services/QueryService.ts +891 -0
  759. package/src/services/StorageService.ts +1111 -0
  760. package/src/services/TransactionService.ts +791 -0
  761. package/src/services/VectorService.ts +462 -0
  762. package/src/services/ViewService.ts +485 -0
  763. package/src/services/index.ts +25 -0
  764. package/src/services/storage/BlobAttributesManager.ts +342 -0
  765. package/src/services/storage/KnowledgeGraphManager.ts +425 -0
  766. package/src/services/storage/MemorySearchManager.ts +387 -0
  767. package/src/services/storage/QuiltBatchManager.ts +532 -0
  768. package/src/services/storage/WalrusMetadataManager.ts +271 -0
  769. package/src/services/storage/WalrusStorageManager.ts +290 -0
  770. package/src/services/storage/index.ts +52 -0
  771. package/src/types/index.ts +13 -0
  772. package/src/utils/index.ts +68 -0
  773. package/src/utils/rebuildIndex.ts +290 -0
  774. package/src/utils/rebuildIndexNode.ts +341 -0
  775. package/src/vector/BrowserHnswIndexService.ts +758 -0
  776. package/src/vector/HnswWasmService.ts +679 -0
  777. package/src/vector/IHnswService.ts +224 -0
  778. package/src/vector/NodeHnswService.ts +713 -0
  779. package/src/vector/VectorManager.ts +479 -0
  780. package/src/vector/createHnswService.ts +135 -0
  781. package/src/vector/index.ts +57 -0
  782. package/src/wallet/ContextWalletService.ts +657 -0
  783. package/src/wallet/MainWalletService.ts +318 -0
  784. package/src/wallet/index.ts +17 -0
@@ -0,0 +1,691 @@
1
+ /**
2
+ * IndexManager - Hybrid Index Persistence Manager
3
+ *
4
+ * Provides intelligent index management with:
5
+ * - Option 1: Full rebuild from Blockchain + Walrus (fallback)
6
+ * - Option 2: Binary serialization to/from Walrus (fast)
7
+ * - Hybrid: Combines both with incremental sync
8
+ * - On-chain MemoryIndex object for versioned index tracking
9
+ *
10
+ * Flow:
11
+ * 1. Initialize: Check for MemoryIndex on-chain → Load blob from Walrus
12
+ * 2. Save: Upload to Walrus → Create/Update MemoryIndex on-chain
13
+ *
14
+ * @module services/IndexManager
15
+ */
16
+ /**
17
+ * IndexManager - Manages HNSW index persistence with hybrid restore strategy
18
+ *
19
+ * Strategy:
20
+ * 1. Try to load from Walrus cache (fast, ~500ms)
21
+ * 2. If failed, rebuild from blockchain + Walrus (slow but complete)
22
+ * 3. Sync any new memories since last save
23
+ * 4. Auto-save periodically
24
+ */
25
+ export class IndexManager {
26
+ constructor(vectorService, storageService, embeddingService, options = {}) {
27
+ this.indexStates = new Map();
28
+ this.vectorCache = new Map();
29
+ this.vectorService = vectorService;
30
+ this.storageService = storageService;
31
+ this.embeddingService = embeddingService;
32
+ this.options = {
33
+ autoSaveInterval: options.autoSaveInterval ?? 5 * 60 * 1000, // 5 minutes
34
+ enableAutoSave: options.enableAutoSave ?? true,
35
+ storageKeyPrefix: options.storageKeyPrefix ?? 'pdw_index_',
36
+ onProgress: options.onProgress ?? (() => { }),
37
+ transactionService: options.transactionService,
38
+ getMemoryIndexFromChain: options.getMemoryIndexFromChain,
39
+ executeTransaction: options.executeTransaction,
40
+ };
41
+ // Default to localStorage in browser, no-op in Node
42
+ this.storage = typeof localStorage !== 'undefined'
43
+ ? localStorage
44
+ : {
45
+ getItem: () => null,
46
+ setItem: () => { },
47
+ removeItem: () => { },
48
+ };
49
+ }
50
+ /**
51
+ * Set custom storage adapter (for React Native, Node.js, etc.)
52
+ */
53
+ setStorageAdapter(adapter) {
54
+ this.storage = adapter;
55
+ }
56
+ /**
57
+ * Initialize index for a user with hybrid restore strategy
58
+ *
59
+ * @param spaceId - User address / space identifier
60
+ * @param getMemoriesFromChain - Function to fetch memories from blockchain
61
+ * @param getMemoryContent - Function to fetch memory content from Walrus
62
+ */
63
+ async initialize(spaceId, getMemoriesFromChain, getMemoryContent) {
64
+ const startTime = Date.now();
65
+ let method = 'empty';
66
+ let vectorCount = 0;
67
+ let syncedCount = 0;
68
+ this.options.onProgress('loading', 0, 'Starting index initialization...');
69
+ // Step 0: Check for on-chain MemoryIndex first (source of truth)
70
+ let onChainIndex = null;
71
+ if (this.options.getMemoryIndexFromChain) {
72
+ try {
73
+ this.options.onProgress('loading', 5, 'Checking on-chain MemoryIndex...');
74
+ onChainIndex = await this.options.getMemoryIndexFromChain(spaceId);
75
+ if (onChainIndex) {
76
+ console.log(`📍 Found on-chain MemoryIndex: ${onChainIndex.id} (v${onChainIndex.version})`);
77
+ console.log(` Index blob: ${onChainIndex.indexBlobId}`);
78
+ console.log(` Graph blob: ${onChainIndex.graphBlobId}`);
79
+ }
80
+ }
81
+ catch (error) {
82
+ console.warn('⚠️ Failed to fetch on-chain MemoryIndex:', error);
83
+ }
84
+ }
85
+ // Step 1: Try to load from on-chain index or localStorage cache
86
+ // Priority: on-chain index > localStorage cache
87
+ let cachedState = this.loadIndexState(spaceId);
88
+ // If on-chain index is newer, use it instead of localStorage
89
+ if (onChainIndex && onChainIndex.indexBlobId) {
90
+ const onChainVersion = onChainIndex.version;
91
+ const localVersion = cachedState?.version || 0;
92
+ if (onChainVersion > localVersion || !cachedState) {
93
+ console.log(`🔄 On-chain index (v${onChainVersion}) is newer than local (v${localVersion}), using on-chain`);
94
+ cachedState = {
95
+ blobId: onChainIndex.indexBlobId,
96
+ graphBlobId: onChainIndex.graphBlobId,
97
+ lastSyncTimestamp: 0, // Will sync all memories
98
+ vectorCount: 0,
99
+ version: onChainVersion,
100
+ dimension: 3072,
101
+ onChainIndexId: onChainIndex.id,
102
+ };
103
+ }
104
+ }
105
+ if (cachedState) {
106
+ try {
107
+ this.options.onProgress('loading', 10, 'Found cached index, loading from Walrus...');
108
+ await this.loadFromWalrus(spaceId, cachedState.blobId);
109
+ // Restore on-chain index ID if available
110
+ if (onChainIndex) {
111
+ const state = this.indexStates.get(spaceId);
112
+ if (state) {
113
+ state.onChainIndexId = onChainIndex.id;
114
+ this.indexStates.set(spaceId, state);
115
+ }
116
+ }
117
+ method = 'cache';
118
+ vectorCount = this.vectorService.getIndexStats(spaceId)?.currentElements || 0;
119
+ this.options.onProgress('loading', 50, `Loaded ${vectorCount} vectors from cache`);
120
+ // Step 2: Sync new memories since last save (with timeout)
121
+ this.options.onProgress('syncing', 60, 'Checking for new memories...');
122
+ try {
123
+ // Add 30 second timeout for sync operation
124
+ const syncPromise = this.syncNewMemories(spaceId, cachedState.lastSyncTimestamp, getMemoriesFromChain, getMemoryContent);
125
+ const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error('Sync timeout after 30s')), 30000));
126
+ syncedCount = await Promise.race([syncPromise, timeoutPromise]);
127
+ if (syncedCount > 0) {
128
+ vectorCount += syncedCount;
129
+ this.options.onProgress('syncing', 90, `Synced ${syncedCount} new memories`);
130
+ }
131
+ }
132
+ catch (syncError) {
133
+ console.warn('⚠️ Sync skipped:', syncError.message);
134
+ // Continue without sync - index is still usable from cache
135
+ }
136
+ this.options.onProgress('complete', 100, 'Index ready');
137
+ }
138
+ catch (error) {
139
+ console.warn('⚠️ Failed to load cached index, falling back to rebuild:', error);
140
+ // Fall through to rebuild
141
+ method = 'rebuild';
142
+ }
143
+ }
144
+ // Step 3: Full rebuild if no cache or cache failed (Option 1 - slow but complete)
145
+ if (method !== 'cache') {
146
+ this.options.onProgress('rebuilding', 10, 'No cache found, rebuilding from blockchain...');
147
+ try {
148
+ // Add 60 second timeout for full rebuild
149
+ const rebuildPromise = this.fullRebuild(spaceId, getMemoriesFromChain, getMemoryContent);
150
+ const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error('Rebuild timeout after 60s')), 60000));
151
+ const result = await Promise.race([rebuildPromise, timeoutPromise]);
152
+ method = result.memoriesCount > 0 ? 'rebuild' : 'empty';
153
+ vectorCount = result.memoriesCount;
154
+ }
155
+ catch (rebuildError) {
156
+ console.warn('⚠️ Rebuild failed or timed out:', rebuildError.message);
157
+ method = 'empty';
158
+ vectorCount = 0;
159
+ }
160
+ }
161
+ // Step 4: Mark as dirty if vectors were synced or rebuilt (save will happen when saveIndex is called)
162
+ // Note: We don't auto-save here because we don't have a signer
163
+ // The caller should call saveIndexWithSigner() when ready to persist
164
+ // Step 5: Start auto-save if enabled
165
+ if (this.options.enableAutoSave) {
166
+ this.startAutoSave(spaceId);
167
+ }
168
+ this.options.onProgress('complete', 100, 'Index initialization complete');
169
+ return {
170
+ restored: method === 'cache',
171
+ method,
172
+ vectorCount,
173
+ syncedCount,
174
+ timeMs: Date.now() - startTime,
175
+ };
176
+ }
177
+ /**
178
+ * Load index from Walrus (Option 2)
179
+ */
180
+ async loadFromWalrus(spaceId, blobId) {
181
+ // Download serialized index from Walrus
182
+ const result = await this.storageService.retrieveMemoryPackage(blobId);
183
+ // Parse the index package - it may be in memoryPackage or need to be extracted from content
184
+ let pkg;
185
+ console.log('📥 Loading index from Walrus, parsing format...');
186
+ console.log(' memoryPackage keys:', result.memoryPackage ? Object.keys(result.memoryPackage) : 'null');
187
+ if (result.memoryPackage?.formatVersion === '1.0') {
188
+ // Direct format match - SerializedIndexPackage at top level
189
+ console.log(' Format: Direct SerializedIndexPackage');
190
+ pkg = result.memoryPackage;
191
+ }
192
+ else if (result.memoryPackage?.content) {
193
+ // Index was wrapped in memory package format
194
+ // content could be a string (JSON) or already parsed object
195
+ const content = result.memoryPackage.content;
196
+ console.log(' Content type:', typeof content);
197
+ if (typeof content === 'string') {
198
+ // Parse JSON string
199
+ try {
200
+ pkg = JSON.parse(content);
201
+ console.log(' Parsed content from JSON string');
202
+ }
203
+ catch (parseErr) {
204
+ console.error(' Failed to parse content string:', parseErr);
205
+ throw new Error('Failed to parse index package from memory package content');
206
+ }
207
+ }
208
+ else if (typeof content === 'object' && content !== null) {
209
+ // Already parsed object
210
+ pkg = content;
211
+ console.log(' Content is already an object');
212
+ }
213
+ else {
214
+ throw new Error('Invalid content type in memory package');
215
+ }
216
+ }
217
+ else {
218
+ // Try to parse raw content
219
+ console.log(' Trying raw content parse...');
220
+ try {
221
+ const contentString = new TextDecoder().decode(result.content);
222
+ const parsed = JSON.parse(contentString);
223
+ // Check if it's wrapped in memory package format
224
+ if (parsed.content && typeof parsed.content === 'string') {
225
+ pkg = JSON.parse(parsed.content);
226
+ }
227
+ else if (parsed.formatVersion === '1.0') {
228
+ pkg = parsed;
229
+ }
230
+ else {
231
+ throw new Error('Unknown format');
232
+ }
233
+ }
234
+ catch (err) {
235
+ console.error(' Raw parse failed:', err);
236
+ throw new Error('Invalid index package format - could not parse content');
237
+ }
238
+ }
239
+ // Validate format version
240
+ if (pkg.formatVersion !== '1.0') {
241
+ throw new Error(`Unsupported index format version: ${pkg.formatVersion}`);
242
+ }
243
+ console.log(`✅ Parsed index package: ${pkg.vectors?.length || 0} vectors, version ${pkg.version}`);
244
+ // Create new index with same config
245
+ await this.vectorService.createIndex(spaceId, pkg.dimension, {
246
+ maxElements: pkg.hnswConfig.maxElements,
247
+ m: pkg.hnswConfig.m,
248
+ efConstruction: pkg.hnswConfig.efConstruction,
249
+ });
250
+ // Initialize vector cache for this space
251
+ const vectorMap = new Map();
252
+ this.vectorCache.set(spaceId, vectorMap);
253
+ // Restore vectors and metadata
254
+ const metadataMap = new Map(pkg.metadata);
255
+ for (const { vectorId, vector } of pkg.vectors) {
256
+ await this.vectorService.addVector(spaceId, vectorId, vector, metadataMap.get(vectorId));
257
+ vectorMap.set(vectorId, vector);
258
+ }
259
+ // Update index state
260
+ this.indexStates.set(spaceId, {
261
+ blobId,
262
+ lastSyncTimestamp: pkg.timestamp,
263
+ vectorCount: pkg.vectors.length,
264
+ version: pkg.version,
265
+ dimension: pkg.dimension,
266
+ });
267
+ console.log(`✅ Loaded index from Walrus: ${pkg.vectors.length} vectors`);
268
+ }
269
+ /**
270
+ * Full rebuild from blockchain + Walrus (Option 1)
271
+ */
272
+ async fullRebuild(spaceId, getMemoriesFromChain, getMemoryContent) {
273
+ // Get all memories from blockchain
274
+ this.options.onProgress('rebuilding', 15, 'Fetching memories from blockchain...');
275
+ const memories = await getMemoriesFromChain();
276
+ if (memories.length === 0) {
277
+ console.log('No memories found on blockchain');
278
+ return { memoriesCount: 0 };
279
+ }
280
+ this.options.onProgress('rebuilding', 20, `Found ${memories.length} memories, rebuilding index...`);
281
+ // Determine dimension from first memory with embedding
282
+ let dimension = 3072; // Default
283
+ // Create index
284
+ await this.vectorService.createIndex(spaceId, dimension, {
285
+ maxElements: Math.max(10000, memories.length * 2),
286
+ m: 16,
287
+ efConstruction: 200,
288
+ });
289
+ // Initialize vector cache
290
+ const vectorMap = new Map();
291
+ this.vectorCache.set(spaceId, vectorMap);
292
+ // Process each memory
293
+ let processed = 0;
294
+ const batchSize = 10;
295
+ for (let i = 0; i < memories.length; i += batchSize) {
296
+ const batch = memories.slice(i, i + batchSize);
297
+ await Promise.all(batch.map(async (memory) => {
298
+ try {
299
+ // Fetch content from Walrus
300
+ const content = await getMemoryContent(memory.blobId);
301
+ let embedding = content.embedding;
302
+ // Generate embedding if not stored
303
+ if (!embedding || embedding.length === 0) {
304
+ const result = await this.embeddingService.embedText({ text: content.content });
305
+ embedding = result.vector;
306
+ }
307
+ // Update dimension if needed
308
+ if (processed === 0 && embedding.length !== dimension) {
309
+ dimension = embedding.length;
310
+ }
311
+ const vectorId = memory.vectorId ?? Date.now() % 4294967295;
312
+ // Add to index
313
+ await this.vectorService.addVector(spaceId, vectorId, embedding, {
314
+ blobId: memory.blobId,
315
+ memoryId: memory.id,
316
+ category: memory.category,
317
+ importance: memory.importance,
318
+ topic: memory.topic,
319
+ timestamp: memory.createdAt || Date.now(),
320
+ });
321
+ // Cache vector for serialization
322
+ vectorMap.set(vectorId, embedding);
323
+ processed++;
324
+ }
325
+ catch (error) {
326
+ console.warn(`Failed to rebuild memory ${memory.id}:`, error);
327
+ }
328
+ }));
329
+ const progress = 20 + Math.floor((processed / memories.length) * 70);
330
+ this.options.onProgress('rebuilding', progress, `Processed ${processed}/${memories.length} memories`);
331
+ }
332
+ console.log(`✅ Rebuilt index: ${processed} vectors`);
333
+ return { memoriesCount: processed };
334
+ }
335
+ /**
336
+ * Sync new memories since last save (incremental update)
337
+ */
338
+ async syncNewMemories(spaceId, lastSyncTimestamp, getMemoriesFromChain, getMemoryContent) {
339
+ // Get all memories
340
+ const allMemories = await getMemoriesFromChain();
341
+ // Filter to only new memories
342
+ const newMemories = allMemories.filter((m) => (m.createdAt || 0) > lastSyncTimestamp);
343
+ if (newMemories.length === 0) {
344
+ console.log('✅ Index is up to date');
345
+ return 0;
346
+ }
347
+ console.log(`🔄 Syncing ${newMemories.length} new memories...`);
348
+ // Get or create vector cache
349
+ let vectorMap = this.vectorCache.get(spaceId);
350
+ if (!vectorMap) {
351
+ vectorMap = new Map();
352
+ this.vectorCache.set(spaceId, vectorMap);
353
+ }
354
+ let synced = 0;
355
+ for (const memory of newMemories) {
356
+ try {
357
+ const content = await getMemoryContent(memory.blobId);
358
+ let embedding = content.embedding;
359
+ if (!embedding || embedding.length === 0) {
360
+ const result = await this.embeddingService.embedText({ text: content.content });
361
+ embedding = result.vector;
362
+ }
363
+ const vectorId = memory.vectorId ?? Date.now() % 4294967295;
364
+ await this.vectorService.addVector(spaceId, vectorId, embedding, {
365
+ blobId: memory.blobId,
366
+ memoryId: memory.id,
367
+ category: memory.category,
368
+ importance: memory.importance,
369
+ topic: memory.topic,
370
+ timestamp: memory.createdAt || Date.now(),
371
+ });
372
+ vectorMap.set(vectorId, embedding);
373
+ synced++;
374
+ }
375
+ catch (error) {
376
+ console.warn(`Failed to sync memory ${memory.id}:`, error);
377
+ }
378
+ }
379
+ return synced;
380
+ }
381
+ /**
382
+ * Save index to Walrus
383
+ */
384
+ async saveIndex(spaceId) {
385
+ const stats = this.vectorService.getIndexStats(spaceId);
386
+ if (!stats || stats.currentElements === 0) {
387
+ console.log('No vectors to save');
388
+ return null;
389
+ }
390
+ // Get all vectors and metadata
391
+ const allVectors = this.vectorService.getAllVectors(spaceId);
392
+ // Try to get vectors from VectorService cache first, then fallback to local cache
393
+ let vectorMap = this.vectorService.getAllCachedVectors(spaceId);
394
+ if (vectorMap.size === 0) {
395
+ vectorMap = this.vectorCache.get(spaceId) || new Map();
396
+ }
397
+ if (vectorMap.size === 0) {
398
+ console.warn('Vector cache is empty, cannot save index');
399
+ return null;
400
+ }
401
+ // Build serialized package
402
+ const currentState = this.indexStates.get(spaceId);
403
+ const pkg = {
404
+ formatVersion: '1.0',
405
+ spaceId,
406
+ version: (currentState?.version || 0) + 1,
407
+ dimension: currentState?.dimension || 3072,
408
+ timestamp: Date.now(),
409
+ vectors: allVectors
410
+ .filter(({ vectorId }) => vectorMap.has(vectorId))
411
+ .map(({ vectorId }) => ({
412
+ vectorId,
413
+ vector: vectorMap.get(vectorId),
414
+ })),
415
+ metadata: allVectors.map(({ vectorId, metadata }) => [vectorId, metadata]),
416
+ hnswConfig: {
417
+ maxElements: stats.maxElements || 10000,
418
+ m: 16,
419
+ efConstruction: 200,
420
+ },
421
+ };
422
+ // Upload to Walrus as JSON package
423
+ const result = await this.storageService.uploadMemoryPackage({
424
+ content: JSON.stringify(pkg),
425
+ embedding: [],
426
+ metadata: {
427
+ category: 'vector-index',
428
+ type: 'hnsw-index-package',
429
+ spaceId,
430
+ version: pkg.version,
431
+ },
432
+ identity: spaceId,
433
+ }, {
434
+ signer: null, // Will be provided by caller
435
+ epochs: 5, // Longer retention for index
436
+ deletable: true,
437
+ });
438
+ // Update state
439
+ const state = {
440
+ blobId: result.blobId,
441
+ lastSyncTimestamp: pkg.timestamp,
442
+ vectorCount: pkg.vectors.length,
443
+ version: pkg.version,
444
+ dimension: pkg.dimension,
445
+ };
446
+ this.indexStates.set(spaceId, state);
447
+ this.saveIndexState(spaceId, state);
448
+ console.log(`💾 Index saved to Walrus: ${result.blobId} (${pkg.vectors.length} vectors)`);
449
+ return result.blobId;
450
+ }
451
+ /**
452
+ * Save index with signer (public API)
453
+ *
454
+ * This method:
455
+ * 1. Uploads index to Walrus
456
+ * 2. Creates or updates MemoryIndex on-chain (if transactionService is available)
457
+ * 3. Updates local state
458
+ *
459
+ * @param spaceId - User address
460
+ * @param signer - Wallet signer for transactions
461
+ * @returns Blob ID of saved index
462
+ */
463
+ async saveIndexWithSigner(spaceId, signer) {
464
+ const stats = this.vectorService.getIndexStats(spaceId);
465
+ if (!stats || stats.currentElements === 0) {
466
+ console.log('No vectors to save');
467
+ return null;
468
+ }
469
+ const allVectors = this.vectorService.getAllVectors(spaceId);
470
+ // Try to get vectors from VectorService cache first, then fallback to local cache
471
+ let vectorMap = this.vectorService.getAllCachedVectors(spaceId);
472
+ if (vectorMap.size === 0) {
473
+ vectorMap = this.vectorCache.get(spaceId) || new Map();
474
+ }
475
+ if (vectorMap.size === 0) {
476
+ console.warn('Vector cache is empty, cannot save index');
477
+ return null;
478
+ }
479
+ const currentState = this.indexStates.get(spaceId);
480
+ const newVersion = (currentState?.version || 0) + 1;
481
+ const pkg = {
482
+ formatVersion: '1.0',
483
+ spaceId,
484
+ version: newVersion,
485
+ dimension: currentState?.dimension || 3072,
486
+ timestamp: Date.now(),
487
+ vectors: allVectors
488
+ .filter(({ vectorId }) => vectorMap.has(vectorId))
489
+ .map(({ vectorId }) => ({
490
+ vectorId,
491
+ vector: vectorMap.get(vectorId),
492
+ })),
493
+ metadata: allVectors.map(({ vectorId, metadata }) => [vectorId, metadata]),
494
+ hnswConfig: {
495
+ maxElements: stats.maxElements || 10000,
496
+ m: 16,
497
+ efConstruction: 200,
498
+ },
499
+ };
500
+ // Step 1: Upload index to Walrus
501
+ const result = await this.storageService.uploadMemoryPackage({
502
+ content: JSON.stringify(pkg),
503
+ embedding: [],
504
+ metadata: {
505
+ category: 'vector-index',
506
+ type: 'hnsw-index-package',
507
+ spaceId,
508
+ version: pkg.version,
509
+ },
510
+ identity: spaceId,
511
+ }, {
512
+ signer,
513
+ epochs: 5,
514
+ deletable: true,
515
+ });
516
+ console.log(`💾 Index uploaded to Walrus: ${result.blobId} (${pkg.vectors.length} vectors)`);
517
+ // Step 2: Create or update MemoryIndex on-chain
518
+ // SerialTransactionExecutor handles gas coin management and prevents equivocation
519
+ let onChainIndexId = currentState?.onChainIndexId;
520
+ const graphBlobId = currentState?.graphBlobId || ''; // Empty for now, could be knowledge graph
521
+ if (this.options.transactionService && this.options.executeTransaction) {
522
+ try {
523
+ if (!onChainIndexId) {
524
+ // Create new MemoryIndex on-chain
525
+ console.log('📝 Creating new MemoryIndex on-chain...');
526
+ const tx = this.options.transactionService.buildCreateMemoryIndex({
527
+ indexBlobId: result.blobId,
528
+ graphBlobId: graphBlobId,
529
+ });
530
+ const txResult = await this.options.executeTransaction(tx, signer);
531
+ if (txResult.digest && !txResult.error) {
532
+ console.log(`✅ MemoryIndex created on-chain: ${txResult.digest}`);
533
+ // Extract created object ID from transaction effects
534
+ if (txResult.effects?.created?.[0]?.reference?.objectId) {
535
+ onChainIndexId = txResult.effects.created[0].reference.objectId;
536
+ console.log(` Object ID: ${onChainIndexId}`);
537
+ }
538
+ }
539
+ else {
540
+ console.warn('⚠️ Failed to create on-chain MemoryIndex:', txResult.error);
541
+ }
542
+ }
543
+ else {
544
+ // Update existing MemoryIndex on-chain
545
+ console.log(`📝 Updating MemoryIndex on-chain (v${currentState?.version} → v${newVersion})...`);
546
+ const tx = this.options.transactionService.buildUpdateMemoryIndex({
547
+ indexId: onChainIndexId,
548
+ expectedVersion: currentState?.version || 1,
549
+ newIndexBlobId: result.blobId,
550
+ newGraphBlobId: graphBlobId,
551
+ });
552
+ const txResult = await this.options.executeTransaction(tx, signer);
553
+ if (txResult.digest && !txResult.error) {
554
+ console.log(`✅ MemoryIndex updated on-chain: ${txResult.digest}`);
555
+ }
556
+ else {
557
+ console.warn('⚠️ Failed to update on-chain MemoryIndex:', txResult.error);
558
+ }
559
+ }
560
+ }
561
+ catch (error) {
562
+ console.warn('⚠️ Failed to sync MemoryIndex on-chain:', error.message);
563
+ }
564
+ }
565
+ // Step 3: Update local state
566
+ const state = {
567
+ blobId: result.blobId,
568
+ graphBlobId: graphBlobId,
569
+ lastSyncTimestamp: pkg.timestamp,
570
+ vectorCount: pkg.vectors.length,
571
+ version: newVersion,
572
+ dimension: pkg.dimension,
573
+ onChainIndexId: onChainIndexId,
574
+ };
575
+ this.indexStates.set(spaceId, state);
576
+ this.saveIndexState(spaceId, state);
577
+ console.log(`💾 Index saved: ${result.blobId} (${pkg.vectors.length} vectors, v${newVersion})`);
578
+ return result.blobId;
579
+ }
580
+ /**
581
+ * Add vector and cache it for serialization
582
+ */
583
+ async addVectorWithCache(spaceId, vectorId, vector, metadata) {
584
+ await this.vectorService.addVector(spaceId, vectorId, vector, metadata);
585
+ // Cache vector for later serialization
586
+ let vectorMap = this.vectorCache.get(spaceId);
587
+ if (!vectorMap) {
588
+ vectorMap = new Map();
589
+ this.vectorCache.set(spaceId, vectorMap);
590
+ }
591
+ vectorMap.set(vectorId, vector);
592
+ }
593
+ /**
594
+ * Start auto-save interval
595
+ */
596
+ startAutoSave(spaceId) {
597
+ if (this.autoSaveTimer) {
598
+ clearInterval(this.autoSaveTimer);
599
+ }
600
+ this.autoSaveTimer = setInterval(async () => {
601
+ const stats = this.vectorService.getIndexStats(spaceId);
602
+ if (stats?.isDirty) {
603
+ try {
604
+ console.log('🔄 Auto-saving index...');
605
+ await this.saveIndex(spaceId);
606
+ }
607
+ catch (error) {
608
+ console.error('Auto-save failed:', error);
609
+ }
610
+ }
611
+ }, this.options.autoSaveInterval);
612
+ console.log(`🔄 Auto-save enabled (every ${this.options.autoSaveInterval / 1000}s)`);
613
+ }
614
+ /**
615
+ * Stop auto-save
616
+ */
617
+ stopAutoSave() {
618
+ if (this.autoSaveTimer) {
619
+ clearInterval(this.autoSaveTimer);
620
+ this.autoSaveTimer = undefined;
621
+ console.log('Auto-save disabled');
622
+ }
623
+ }
624
+ /**
625
+ * Load index state from localStorage
626
+ */
627
+ loadIndexState(spaceId) {
628
+ const key = `${this.options.storageKeyPrefix}${spaceId}`;
629
+ const data = this.storage.getItem(key);
630
+ if (!data) {
631
+ return null;
632
+ }
633
+ try {
634
+ return JSON.parse(data);
635
+ }
636
+ catch {
637
+ return null;
638
+ }
639
+ }
640
+ /**
641
+ * Save index state to localStorage
642
+ */
643
+ saveIndexState(spaceId, state) {
644
+ const key = `${this.options.storageKeyPrefix}${spaceId}`;
645
+ this.storage.setItem(key, JSON.stringify(state));
646
+ }
647
+ /**
648
+ * Clear cached index state
649
+ */
650
+ clearIndexState(spaceId) {
651
+ const key = `${this.options.storageKeyPrefix}${spaceId}`;
652
+ this.storage.removeItem(key);
653
+ this.indexStates.delete(spaceId);
654
+ this.vectorCache.delete(spaceId);
655
+ console.log(`Cleared index state for ${spaceId}`);
656
+ }
657
+ /**
658
+ * Get current index state
659
+ */
660
+ getIndexState(spaceId) {
661
+ return this.indexStates.get(spaceId) || this.loadIndexState(spaceId);
662
+ }
663
+ /**
664
+ * Force a full rebuild (useful for troubleshooting)
665
+ */
666
+ async forceRebuild(spaceId, getMemoriesFromChain, getMemoryContent) {
667
+ // Clear existing state
668
+ this.clearIndexState(spaceId);
669
+ // Full rebuild
670
+ return this.fullRebuild(spaceId, getMemoriesFromChain, getMemoryContent);
671
+ }
672
+ /**
673
+ * Get statistics
674
+ */
675
+ getStats(spaceId) {
676
+ return {
677
+ indexState: this.getIndexState(spaceId),
678
+ vectorCacheSize: this.vectorCache.get(spaceId)?.size || 0,
679
+ isAutoSaveEnabled: !!this.autoSaveTimer,
680
+ };
681
+ }
682
+ /**
683
+ * Cleanup resources
684
+ */
685
+ async cleanup() {
686
+ this.stopAutoSave();
687
+ this.indexStates.clear();
688
+ this.vectorCache.clear();
689
+ }
690
+ }
691
+ //# sourceMappingURL=IndexManager.js.map