@oobe-protocol-labs/synapse-client-sdk 1.2.2 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (763) hide show
  1. package/CHANGELOG.md +176 -0
  2. package/README.md +230 -17
  3. package/dist/cjs/ai/actions/blinks.d.ts +158 -0
  4. package/dist/cjs/ai/actions/blinks.d.ts.map +1 -0
  5. package/dist/cjs/ai/actions/blinks.js +232 -0
  6. package/dist/cjs/ai/actions/blinks.js.map +1 -0
  7. package/dist/cjs/ai/actions/index.d.ts +51 -0
  8. package/dist/cjs/ai/actions/index.d.ts.map +1 -0
  9. package/dist/cjs/ai/actions/index.js +61 -0
  10. package/dist/cjs/ai/actions/index.js.map +1 -0
  11. package/dist/cjs/ai/actions/server.d.ts +188 -0
  12. package/dist/cjs/ai/actions/server.d.ts.map +1 -0
  13. package/dist/cjs/ai/actions/server.js +404 -0
  14. package/dist/cjs/ai/actions/server.js.map +1 -0
  15. package/dist/cjs/ai/actions/types.d.ts +251 -0
  16. package/dist/cjs/ai/actions/types.d.ts.map +1 -0
  17. package/dist/cjs/ai/actions/types.js +16 -0
  18. package/dist/cjs/ai/actions/types.js.map +1 -0
  19. package/dist/cjs/ai/gateway/index.d.ts +1 -0
  20. package/dist/cjs/ai/gateway/index.d.ts.map +1 -1
  21. package/dist/cjs/ai/gateway/index.js +6 -1
  22. package/dist/cjs/ai/gateway/index.js.map +1 -1
  23. package/dist/cjs/ai/gateway/monetize.d.ts +222 -0
  24. package/dist/cjs/ai/gateway/monetize.d.ts.map +1 -0
  25. package/dist/cjs/ai/gateway/monetize.js +316 -0
  26. package/dist/cjs/ai/gateway/monetize.js.map +1 -0
  27. package/dist/cjs/ai/index.d.ts +7 -2
  28. package/dist/cjs/ai/index.d.ts.map +1 -1
  29. package/dist/cjs/ai/index.js +78 -2
  30. package/dist/cjs/ai/index.js.map +1 -1
  31. package/dist/cjs/ai/intents/executor.d.ts +102 -0
  32. package/dist/cjs/ai/intents/executor.d.ts.map +1 -0
  33. package/dist/cjs/ai/intents/executor.js +335 -0
  34. package/dist/cjs/ai/intents/executor.js.map +1 -0
  35. package/dist/cjs/ai/intents/index.d.ts +52 -0
  36. package/dist/cjs/ai/intents/index.d.ts.map +1 -0
  37. package/dist/cjs/ai/intents/index.js +60 -0
  38. package/dist/cjs/ai/intents/index.js.map +1 -0
  39. package/dist/cjs/ai/intents/parser.d.ts +106 -0
  40. package/dist/cjs/ai/intents/parser.d.ts.map +1 -0
  41. package/dist/cjs/ai/intents/parser.js +189 -0
  42. package/dist/cjs/ai/intents/parser.js.map +1 -0
  43. package/dist/cjs/ai/intents/planner.d.ts +96 -0
  44. package/dist/cjs/ai/intents/planner.d.ts.map +1 -0
  45. package/dist/cjs/ai/intents/planner.js +270 -0
  46. package/dist/cjs/ai/intents/planner.js.map +1 -0
  47. package/dist/cjs/ai/intents/types.d.ts +281 -0
  48. package/dist/cjs/ai/intents/types.d.ts.map +1 -0
  49. package/dist/cjs/ai/intents/types.js +70 -0
  50. package/dist/cjs/ai/intents/types.js.map +1 -0
  51. package/dist/cjs/ai/mcp/client.d.ts +71 -0
  52. package/dist/cjs/ai/mcp/client.d.ts.map +1 -0
  53. package/dist/cjs/ai/mcp/client.js +675 -0
  54. package/dist/cjs/ai/mcp/client.js.map +1 -0
  55. package/dist/cjs/ai/mcp/index.d.ts +16 -0
  56. package/dist/cjs/ai/mcp/index.d.ts.map +1 -0
  57. package/dist/cjs/ai/mcp/index.js +27 -0
  58. package/dist/cjs/ai/mcp/index.js.map +1 -0
  59. package/dist/cjs/ai/mcp/server.d.ts +115 -0
  60. package/dist/cjs/ai/mcp/server.d.ts.map +1 -0
  61. package/dist/cjs/ai/mcp/server.js +624 -0
  62. package/dist/cjs/ai/mcp/server.js.map +1 -0
  63. package/dist/cjs/ai/mcp/types.d.ts +215 -0
  64. package/dist/cjs/ai/mcp/types.d.ts.map +1 -0
  65. package/dist/cjs/ai/mcp/types.js +17 -0
  66. package/dist/cjs/ai/mcp/types.js.map +1 -0
  67. package/dist/cjs/ai/plugins/blinks/index.d.ts +22 -0
  68. package/dist/cjs/ai/plugins/blinks/index.d.ts.map +1 -0
  69. package/dist/cjs/ai/plugins/blinks/index.js +202 -0
  70. package/dist/cjs/ai/plugins/blinks/index.js.map +1 -0
  71. package/dist/cjs/ai/plugins/blinks/schemas.d.ts +4 -0
  72. package/dist/cjs/ai/plugins/blinks/schemas.d.ts.map +1 -0
  73. package/dist/cjs/ai/plugins/blinks/schemas.js +103 -0
  74. package/dist/cjs/ai/plugins/blinks/schemas.js.map +1 -0
  75. package/dist/cjs/ai/plugins/defi/index.d.ts +44 -0
  76. package/dist/cjs/ai/plugins/defi/index.d.ts.map +1 -0
  77. package/dist/cjs/ai/plugins/defi/index.js +490 -0
  78. package/dist/cjs/ai/plugins/defi/index.js.map +1 -0
  79. package/dist/cjs/ai/plugins/defi/schemas.d.ts +13 -0
  80. package/dist/cjs/ai/plugins/defi/schemas.d.ts.map +1 -0
  81. package/dist/cjs/ai/plugins/defi/schemas.js +573 -0
  82. package/dist/cjs/ai/plugins/defi/schemas.js.map +1 -0
  83. package/dist/cjs/ai/plugins/index.d.ts +30 -0
  84. package/dist/cjs/ai/plugins/index.d.ts.map +1 -0
  85. package/dist/cjs/ai/plugins/index.js +40 -0
  86. package/dist/cjs/ai/plugins/index.js.map +1 -0
  87. package/dist/cjs/ai/plugins/misc/index.d.ts +28 -0
  88. package/dist/cjs/ai/plugins/misc/index.d.ts.map +1 -0
  89. package/dist/cjs/ai/plugins/misc/index.js +445 -0
  90. package/dist/cjs/ai/plugins/misc/index.js.map +1 -0
  91. package/dist/cjs/ai/plugins/misc/schemas.d.ts +9 -0
  92. package/dist/cjs/ai/plugins/misc/schemas.d.ts.map +1 -0
  93. package/dist/cjs/ai/plugins/misc/schemas.js +318 -0
  94. package/dist/cjs/ai/plugins/misc/schemas.js.map +1 -0
  95. package/dist/cjs/ai/plugins/nft/index.d.ts +24 -0
  96. package/dist/cjs/ai/plugins/nft/index.d.ts.map +1 -0
  97. package/dist/cjs/ai/plugins/nft/index.js +70 -0
  98. package/dist/cjs/ai/plugins/nft/index.js.map +1 -0
  99. package/dist/cjs/ai/plugins/nft/schemas.d.ts +6 -0
  100. package/dist/cjs/ai/plugins/nft/schemas.d.ts.map +1 -0
  101. package/dist/cjs/ai/plugins/nft/schemas.js +272 -0
  102. package/dist/cjs/ai/plugins/nft/schemas.js.map +1 -0
  103. package/dist/cjs/ai/plugins/registry.d.ts +157 -0
  104. package/dist/cjs/ai/plugins/registry.d.ts.map +1 -0
  105. package/dist/cjs/ai/plugins/registry.js +369 -0
  106. package/dist/cjs/ai/plugins/registry.js.map +1 -0
  107. package/dist/cjs/ai/plugins/token/index.d.ts +35 -0
  108. package/dist/cjs/ai/plugins/token/index.d.ts.map +1 -0
  109. package/dist/cjs/ai/plugins/token/index.js +187 -0
  110. package/dist/cjs/ai/plugins/token/index.js.map +1 -0
  111. package/dist/cjs/ai/plugins/token/schemas.d.ts +5 -0
  112. package/dist/cjs/ai/plugins/token/schemas.d.ts.map +1 -0
  113. package/dist/cjs/ai/plugins/token/schemas.js +268 -0
  114. package/dist/cjs/ai/plugins/token/schemas.js.map +1 -0
  115. package/dist/cjs/ai/plugins/types.d.ts +176 -0
  116. package/dist/cjs/ai/plugins/types.d.ts.map +1 -0
  117. package/dist/cjs/ai/plugins/types.js +3 -0
  118. package/dist/cjs/ai/plugins/types.js.map +1 -0
  119. package/dist/cjs/ai/sap/adapter.d.ts +140 -0
  120. package/dist/cjs/ai/sap/adapter.d.ts.map +1 -0
  121. package/dist/cjs/ai/sap/adapter.js +181 -0
  122. package/dist/cjs/ai/sap/adapter.js.map +1 -0
  123. package/dist/cjs/ai/sap/discovery.d.ts +165 -0
  124. package/dist/cjs/ai/sap/discovery.d.ts.map +1 -0
  125. package/dist/cjs/ai/sap/discovery.js +316 -0
  126. package/dist/cjs/ai/sap/discovery.js.map +1 -0
  127. package/dist/cjs/ai/sap/index.d.ts +61 -0
  128. package/dist/cjs/ai/sap/index.d.ts.map +1 -0
  129. package/dist/cjs/ai/sap/index.js +89 -0
  130. package/dist/cjs/ai/sap/index.js.map +1 -0
  131. package/dist/cjs/ai/sap/pda.d.ts +205 -0
  132. package/dist/cjs/ai/sap/pda.d.ts.map +1 -0
  133. package/dist/cjs/ai/sap/pda.js +547 -0
  134. package/dist/cjs/ai/sap/pda.js.map +1 -0
  135. package/dist/cjs/ai/sap/program.d.ts +153 -0
  136. package/dist/cjs/ai/sap/program.d.ts.map +1 -0
  137. package/dist/cjs/ai/sap/program.js +227 -0
  138. package/dist/cjs/ai/sap/program.js.map +1 -0
  139. package/dist/cjs/ai/sap/registry.d.ts +218 -0
  140. package/dist/cjs/ai/sap/registry.d.ts.map +1 -0
  141. package/dist/cjs/ai/sap/registry.js +519 -0
  142. package/dist/cjs/ai/sap/registry.js.map +1 -0
  143. package/dist/cjs/ai/sap/scoring.d.ts +138 -0
  144. package/dist/cjs/ai/sap/scoring.d.ts.map +1 -0
  145. package/dist/cjs/ai/sap/scoring.js +266 -0
  146. package/dist/cjs/ai/sap/scoring.js.map +1 -0
  147. package/dist/cjs/ai/sap/subnetwork.d.ts +201 -0
  148. package/dist/cjs/ai/sap/subnetwork.d.ts.map +1 -0
  149. package/dist/cjs/ai/sap/subnetwork.js +365 -0
  150. package/dist/cjs/ai/sap/subnetwork.js.map +1 -0
  151. package/dist/cjs/ai/sap/types.d.ts +418 -0
  152. package/dist/cjs/ai/sap/types.d.ts.map +1 -0
  153. package/dist/cjs/ai/sap/types.js +217 -0
  154. package/dist/cjs/ai/sap/types.js.map +1 -0
  155. package/dist/cjs/ai/sap/validator.d.ts +160 -0
  156. package/dist/cjs/ai/sap/validator.d.ts.map +1 -0
  157. package/dist/cjs/ai/sap/validator.js +619 -0
  158. package/dist/cjs/ai/sap/validator.js.map +1 -0
  159. package/dist/docs/assets/highlight.css +13 -6
  160. package/dist/docs/classes/AccountReader.html +18 -18
  161. package/dist/docs/classes/AccountsClient.html +10 -10
  162. package/dist/docs/classes/AsyncProviderError.html +4 -4
  163. package/dist/docs/classes/CircularDependencyError.html +4 -4
  164. package/dist/docs/classes/DasClient.html +13 -13
  165. package/dist/docs/classes/GeyserParser.html +17 -17
  166. package/dist/docs/classes/GrpcTransport.html +6 -6
  167. package/dist/docs/classes/HttpTransport.html +4 -4
  168. package/dist/docs/classes/InstructionWriter.html +11 -11
  169. package/dist/docs/classes/MemoryGuard.html +9 -9
  170. package/dist/docs/classes/NetworkError.html +5 -5
  171. package/dist/docs/classes/RefRegistry.html +11 -11
  172. package/dist/docs/classes/RefReleasedError.html +4 -4
  173. package/dist/docs/classes/RpcMethodNotFoundError.html +4 -4
  174. package/dist/docs/classes/ServiceNotFoundError.html +4 -4
  175. package/dist/docs/classes/ServiceRef.html +13 -13
  176. package/dist/docs/classes/SolanaRpc.html +55 -55
  177. package/dist/docs/classes/SynapseClient.html +16 -16
  178. package/dist/docs/classes/SynapseContext.html +27 -27
  179. package/dist/docs/classes/SynapseError.html +4 -4
  180. package/dist/docs/classes/TimeoutError.html +4 -4
  181. package/dist/docs/classes/UpstreamError.html +6 -6
  182. package/dist/docs/classes/WeakServiceRef.html +4 -4
  183. package/dist/docs/classes/WsClient.html +10 -10
  184. package/dist/docs/enums/SynapseNetwork.html +2 -2
  185. package/dist/docs/enums/SynapseRegion.html +2 -2
  186. package/dist/docs/enums/TokenExtensionType.html +2 -2
  187. package/dist/docs/functions/Epoch-1.html +1 -1
  188. package/dist/docs/functions/Lamports-2.html +1 -1
  189. package/dist/docs/functions/Pubkey-1.html +1 -1
  190. package/dist/docs/functions/Sig.html +1 -1
  191. package/dist/docs/functions/Slot-1.html +1 -1
  192. package/dist/docs/functions/UnixTs.html +1 -1
  193. package/dist/docs/functions/autoSelectRegion.html +1 -1
  194. package/dist/docs/functions/autoWire.html +1 -1
  195. package/dist/docs/functions/base58Encode.html +1 -1
  196. package/dist/docs/functions/base64ToBytes.html +1 -1
  197. package/dist/docs/functions/bigIntReplacer.html +1 -1
  198. package/dist/docs/functions/chunk.html +1 -1
  199. package/dist/docs/functions/computeBalanceChanges.html +1 -1
  200. package/dist/docs/functions/computeTokenBalanceChanges.html +1 -1
  201. package/dist/docs/functions/createBareContext.html +1 -1
  202. package/dist/docs/functions/createBinding.html +1 -1
  203. package/dist/docs/functions/createBoundHook.html +1 -1
  204. package/dist/docs/functions/createReactAdapter.html +1 -1
  205. package/dist/docs/functions/createRefHook.html +1 -1
  206. package/dist/docs/functions/createServerMiddleware.html +1 -1
  207. package/dist/docs/functions/createServiceHook.html +1 -1
  208. package/dist/docs/functions/createSingleton.html +1 -1
  209. package/dist/docs/functions/createSynapse.html +1 -1
  210. package/dist/docs/functions/createSynapseContext.html +1 -1
  211. package/dist/docs/functions/createToken.html +1 -1
  212. package/dist/docs/functions/decodeBase58.html +1 -1
  213. package/dist/docs/functions/decodeLookupTable.html +1 -1
  214. package/dist/docs/functions/decodeMint.html +1 -1
  215. package/dist/docs/functions/decodeMultisig.html +1 -1
  216. package/dist/docs/functions/decodeNonceAccount.html +1 -1
  217. package/dist/docs/functions/decodeStakeAccount.html +1 -1
  218. package/dist/docs/functions/decodeToken2022Account.html +1 -1
  219. package/dist/docs/functions/decodeToken2022Mint.html +1 -1
  220. package/dist/docs/functions/decodeTokenAccount.html +1 -1
  221. package/dist/docs/functions/encodeBase58.html +1 -1
  222. package/dist/docs/functions/fetchLookupTable.html +2 -2
  223. package/dist/docs/functions/fetchMint.html +2 -2
  224. package/dist/docs/functions/fetchNonceAccount.html +2 -2
  225. package/dist/docs/functions/fetchStakeAccount.html +2 -2
  226. package/dist/docs/functions/fetchTokenAccount.html +2 -2
  227. package/dist/docs/functions/fetchTokenAccountsByOwner.html +2 -2
  228. package/dist/docs/functions/fromKitAddress.html +1 -1
  229. package/dist/docs/functions/getAccountInfo.html +2 -2
  230. package/dist/docs/functions/getAsset.html +1 -1
  231. package/dist/docs/functions/getAssetBatch.html +1 -1
  232. package/dist/docs/functions/getAssetProof.html +1 -1
  233. package/dist/docs/functions/getAssetProofBatch.html +1 -1
  234. package/dist/docs/functions/getAssetsByAuthority.html +1 -1
  235. package/dist/docs/functions/getAssetsByCreator.html +1 -1
  236. package/dist/docs/functions/getAssetsByGroup.html +1 -1
  237. package/dist/docs/functions/getAssetsByOwner.html +1 -1
  238. package/dist/docs/functions/getBalance.html +1 -1
  239. package/dist/docs/functions/getBlock.html +2 -2
  240. package/dist/docs/functions/getBlockCommitment.html +1 -1
  241. package/dist/docs/functions/getBlockHeight.html +1 -1
  242. package/dist/docs/functions/getBlockProduction.html +1 -1
  243. package/dist/docs/functions/getBlockTime.html +1 -1
  244. package/dist/docs/functions/getBlocks.html +1 -1
  245. package/dist/docs/functions/getBlocksWithLimit.html +2 -2
  246. package/dist/docs/functions/getClusterNodes.html +2 -2
  247. package/dist/docs/functions/getContext.html +1 -1
  248. package/dist/docs/functions/getDecodedAccount.html +2 -2
  249. package/dist/docs/functions/getDecodedAccounts.html +1 -1
  250. package/dist/docs/functions/getEnvironment.html +1 -1
  251. package/dist/docs/functions/getEpochInfo.html +2 -2
  252. package/dist/docs/functions/getEpochSchedule.html +2 -2
  253. package/dist/docs/functions/getFeeForMessage.html +1 -1
  254. package/dist/docs/functions/getFirstAvailableBlock.html +1 -1
  255. package/dist/docs/functions/getGenesisHash.html +1 -1
  256. package/dist/docs/functions/getHealth.html +1 -1
  257. package/dist/docs/functions/getHighestSnapshotSlot.html +1 -1
  258. package/dist/docs/functions/getIdentity.html +1 -1
  259. package/dist/docs/functions/getInflationGovernor.html +2 -2
  260. package/dist/docs/functions/getInflationRate.html +2 -2
  261. package/dist/docs/functions/getInflationReward.html +2 -2
  262. package/dist/docs/functions/getLargestAccounts.html +2 -2
  263. package/dist/docs/functions/getLatestBlockhash.html +2 -2
  264. package/dist/docs/functions/getLeaderSchedule.html +1 -1
  265. package/dist/docs/functions/getMaxRetransmitSlot.html +1 -1
  266. package/dist/docs/functions/getMaxShredInsertSlot.html +1 -1
  267. package/dist/docs/functions/getMinimumBalanceForRentExemption.html +1 -1
  268. package/dist/docs/functions/getMultipleAccounts.html +1 -1
  269. package/dist/docs/functions/getProgramAccounts.html +1 -1
  270. package/dist/docs/functions/getProgramCategory.html +1 -1
  271. package/dist/docs/functions/getRecentPerformanceSamples.html +1 -1
  272. package/dist/docs/functions/getRecentPrioritizationFees.html +1 -1
  273. package/dist/docs/functions/getSignatureStatuses.html +1 -1
  274. package/dist/docs/functions/getSignaturesForAddress.html +1 -1
  275. package/dist/docs/functions/getSignaturesForAsset.html +1 -1
  276. package/dist/docs/functions/getSlot.html +1 -1
  277. package/dist/docs/functions/getSlotLeader.html +1 -1
  278. package/dist/docs/functions/getSlotLeaders.html +1 -1
  279. package/dist/docs/functions/getStakeActivation.html +1 -1
  280. package/dist/docs/functions/getStakeMinimumDelegation.html +1 -1
  281. package/dist/docs/functions/getSupply.html +1 -1
  282. package/dist/docs/functions/getTokenAccountBalance.html +1 -1
  283. package/dist/docs/functions/getTokenAccounts.html +1 -1
  284. package/dist/docs/functions/getTokenAccountsByDelegate.html +1 -1
  285. package/dist/docs/functions/getTokenAccountsByOwner.html +1 -1
  286. package/dist/docs/functions/getTokenLargestAccounts.html +1 -1
  287. package/dist/docs/functions/getTokenSupply.html +1 -1
  288. package/dist/docs/functions/getTransaction.html +1 -1
  289. package/dist/docs/functions/getTransactionCount.html +1 -1
  290. package/dist/docs/functions/getVersion.html +1 -1
  291. package/dist/docs/functions/getVoteAccounts.html +1 -1
  292. package/dist/docs/functions/isBlockhashValid.html +1 -1
  293. package/dist/docs/functions/isBrowser.html +1 -1
  294. package/dist/docs/functions/isDisposable.html +1 -1
  295. package/dist/docs/functions/isProgramInCategory.html +1 -1
  296. package/dist/docs/functions/isServer.html +1 -1
  297. package/dist/docs/functions/isValidPubkey.html +1 -1
  298. package/dist/docs/functions/isValidSignature.html +1 -1
  299. package/dist/docs/functions/lamportsToSol.html +1 -1
  300. package/dist/docs/functions/listEndpoints.html +1 -1
  301. package/dist/docs/functions/listNetworks.html +1 -1
  302. package/dist/docs/functions/listRegions.html +1 -1
  303. package/dist/docs/functions/minimumLedgerSlot.html +1 -1
  304. package/dist/docs/functions/parseAccountUpdate.html +1 -1
  305. package/dist/docs/functions/parseBlockMeta.html +1 -1
  306. package/dist/docs/functions/parseEntry.html +1 -1
  307. package/dist/docs/functions/parseGeyserUpdate.html +1 -1
  308. package/dist/docs/functions/parseSlotUpdate.html +1 -1
  309. package/dist/docs/functions/parseTimestamp.html +1 -1
  310. package/dist/docs/functions/parseTransaction.html +1 -1
  311. package/dist/docs/functions/probeLatency.html +1 -1
  312. package/dist/docs/functions/rawBufferToBase58.html +1 -1
  313. package/dist/docs/functions/rawBufferToBase64.html +1 -1
  314. package/dist/docs/functions/rawBufferToBytes.html +1 -1
  315. package/dist/docs/functions/rawBufferToHex.html +1 -1
  316. package/dist/docs/functions/readonly.html +1 -1
  317. package/dist/docs/functions/readonlySigner.html +1 -1
  318. package/dist/docs/functions/requestAirdrop.html +1 -1
  319. package/dist/docs/functions/resolveEndpoint.html +1 -1
  320. package/dist/docs/functions/resolveProgram.html +1 -1
  321. package/dist/docs/functions/resolveProgramBatch.html +1 -1
  322. package/dist/docs/functions/retry.html +1 -1
  323. package/dist/docs/functions/searchAssets.html +1 -1
  324. package/dist/docs/functions/sendAndConfirmDurableNonceTransactionFactory.html +1 -1
  325. package/dist/docs/functions/sendTransaction.html +1 -1
  326. package/dist/docs/functions/setGlobalContext.html +1 -1
  327. package/dist/docs/functions/simulateTransaction.html +1 -1
  328. package/dist/docs/functions/sleep.html +1 -1
  329. package/dist/docs/functions/solToLamports.html +1 -1
  330. package/dist/docs/functions/toClientConfig.html +1 -1
  331. package/dist/docs/functions/toJsonSafe.html +1 -1
  332. package/dist/docs/functions/toKitAddress.html +1 -1
  333. package/dist/docs/functions/toKitInstruction.html +1 -1
  334. package/dist/docs/functions/toKitLamports.html +1 -1
  335. package/dist/docs/functions/toKitSignatureString.html +1 -1
  336. package/dist/docs/functions/tryGetContext.html +1 -1
  337. package/dist/docs/functions/tryUseService.html +1 -1
  338. package/dist/docs/functions/useBoundServices.html +1 -1
  339. package/dist/docs/functions/useService.html +1 -1
  340. package/dist/docs/functions/useSharedRef.html +1 -1
  341. package/dist/docs/functions/withRef.html +1 -1
  342. package/dist/docs/functions/withRefAsync.html +1 -1
  343. package/dist/docs/functions/writable.html +1 -1
  344. package/dist/docs/functions/writableSigner.html +1 -1
  345. package/dist/docs/index.html +174 -8
  346. package/dist/docs/interfaces/AccountInfo.html +7 -7
  347. package/dist/docs/interfaces/AccountMeta.html +4 -4
  348. package/dist/docs/interfaces/AccountNotification.html +2 -2
  349. package/dist/docs/interfaces/AccountSubParams.html +2 -2
  350. package/dist/docs/interfaces/AddMemoParams.html +5 -5
  351. package/dist/docs/interfaces/AdvanceNonceParams.html +3 -3
  352. package/dist/docs/interfaces/AliasProvider.html +2 -2
  353. package/dist/docs/interfaces/AllocateParams.html +3 -3
  354. package/dist/docs/interfaces/ApproveCheckedParams.html +9 -9
  355. package/dist/docs/interfaces/ApproveParams.html +7 -7
  356. package/dist/docs/interfaces/AssetSignatureInfo.html +2 -2
  357. package/dist/docs/interfaces/AssetSignaturesPage.html +2 -2
  358. package/dist/docs/interfaces/AssignParams.html +3 -3
  359. package/dist/docs/interfaces/AsyncFactoryProvider.html +2 -2
  360. package/dist/docs/interfaces/AuthorizeNonceParams.html +4 -4
  361. package/dist/docs/interfaces/BalanceChange.html +6 -6
  362. package/dist/docs/interfaces/BlockProduction.html +3 -3
  363. package/dist/docs/interfaces/BlockResult.html +2 -2
  364. package/dist/docs/interfaces/BlockReward.html +2 -2
  365. package/dist/docs/interfaces/BlockhashResult.html +2 -2
  366. package/dist/docs/interfaces/BurnCheckedParams.html +8 -8
  367. package/dist/docs/interfaces/BurnParams.html +7 -7
  368. package/dist/docs/interfaces/CallOptions.html +6 -6
  369. package/dist/docs/interfaces/ClassProvider.html +2 -2
  370. package/dist/docs/interfaces/CloseAccountParams.html +6 -6
  371. package/dist/docs/interfaces/ConfirmedTransaction.html +6 -6
  372. package/dist/docs/interfaces/ContactInfo.html +2 -2
  373. package/dist/docs/interfaces/ContextAdapter.html +5 -5
  374. package/dist/docs/interfaces/ContextEvents.html +6 -6
  375. package/dist/docs/interfaces/ContextModule.html +3 -3
  376. package/dist/docs/interfaces/CreateATAParams.html +6 -6
  377. package/dist/docs/interfaces/CreateAccountParams.html +6 -6
  378. package/dist/docs/interfaces/CreateAccountWithSeedParams.html +8 -8
  379. package/dist/docs/interfaces/CreateSynapseContextOpts.html +4 -4
  380. package/dist/docs/interfaces/DasAsset.html +2 -2
  381. package/dist/docs/interfaces/DasAssetProof.html +2 -2
  382. package/dist/docs/interfaces/DasAuthority.html +2 -2
  383. package/dist/docs/interfaces/DasCompression.html +2 -2
  384. package/dist/docs/interfaces/DasContent.html +2 -2
  385. package/dist/docs/interfaces/DasCreator.html +2 -2
  386. package/dist/docs/interfaces/DasFile.html +2 -2
  387. package/dist/docs/interfaces/DasGrouping.html +2 -2
  388. package/dist/docs/interfaces/DasOpts.html +2 -2
  389. package/dist/docs/interfaces/DasOwnership.html +2 -2
  390. package/dist/docs/interfaces/DasPage.html +2 -2
  391. package/dist/docs/interfaces/DasRoyalty.html +2 -2
  392. package/dist/docs/interfaces/DasSearchParams.html +2 -2
  393. package/dist/docs/interfaces/DasSupply.html +2 -2
  394. package/dist/docs/interfaces/DataSlice.html +3 -3
  395. package/dist/docs/interfaces/DecodedAccountResult.html +4 -4
  396. package/dist/docs/interfaces/DecodedLookupTable.html +9 -9
  397. package/dist/docs/interfaces/DecodedMint.html +7 -7
  398. package/dist/docs/interfaces/DecodedMultisig.html +6 -6
  399. package/dist/docs/interfaces/DecodedNonceAccount.html +7 -7
  400. package/dist/docs/interfaces/DecodedStakeAccount.html +2 -2
  401. package/dist/docs/interfaces/DecodedToken2022Account.html +9 -9
  402. package/dist/docs/interfaces/DecodedToken2022Mint.html +6 -6
  403. package/dist/docs/interfaces/DecodedTokenAccount.html +10 -10
  404. package/dist/docs/interfaces/DefaultAccountStateExt.html +2 -2
  405. package/dist/docs/interfaces/Disposable.html +2 -2
  406. package/dist/docs/interfaces/EndpointConnectConfig.html +5 -5
  407. package/dist/docs/interfaces/EpochInfo.html +7 -7
  408. package/dist/docs/interfaces/EpochSchedule.html +2 -2
  409. package/dist/docs/interfaces/FactoryProvider.html +2 -2
  410. package/dist/docs/interfaces/FetchedMint.html +6 -6
  411. package/dist/docs/interfaces/FetchedTokenAccount.html +6 -6
  412. package/dist/docs/interfaces/FreezeThawParams.html +6 -6
  413. package/dist/docs/interfaces/GetAccountInfoOpts.html +6 -6
  414. package/dist/docs/interfaces/GetAssetsByAuthorityParams.html +2 -2
  415. package/dist/docs/interfaces/GetAssetsByCreatorParams.html +2 -2
  416. package/dist/docs/interfaces/GetAssetsByGroupParams.html +2 -2
  417. package/dist/docs/interfaces/GetAssetsByOwnerParams.html +2 -2
  418. package/dist/docs/interfaces/GetBlockOpts.html +6 -6
  419. package/dist/docs/interfaces/GetBlockProductionOpts.html +6 -6
  420. package/dist/docs/interfaces/GetMultipleAccountsOpts.html +6 -6
  421. package/dist/docs/interfaces/GetProgramAccountsOpts.html +6 -6
  422. package/dist/docs/interfaces/GetSignatureStatusesOpts.html +6 -6
  423. package/dist/docs/interfaces/GetSignaturesOpts.html +7 -7
  424. package/dist/docs/interfaces/GetTokenAccountsParams.html +2 -2
  425. package/dist/docs/interfaces/GetTransactionOpts.html +6 -6
  426. package/dist/docs/interfaces/GeyserParserConfig.html +6 -6
  427. package/dist/docs/interfaces/GeyserParserEvents.html +9 -9
  428. package/dist/docs/interfaces/GeyserParserStats.html +2 -2
  429. package/dist/docs/interfaces/GrpcCallOptions.html +2 -2
  430. package/dist/docs/interfaces/GrpcTransportConfig.html +6 -6
  431. package/dist/docs/interfaces/ImmutableOwnerExt.html +2 -2
  432. package/dist/docs/interfaces/InflationGovernor.html +2 -2
  433. package/dist/docs/interfaces/InflationRate.html +2 -2
  434. package/dist/docs/interfaces/InflationReward.html +2 -2
  435. package/dist/docs/interfaces/InitializeAccountParams.html +5 -5
  436. package/dist/docs/interfaces/InitializeMintParams.html +6 -6
  437. package/dist/docs/interfaces/InitializeNonceParams.html +3 -3
  438. package/dist/docs/interfaces/InterestBearingConfigExt.html +2 -2
  439. package/dist/docs/interfaces/LatencyProbeResult.html +2 -2
  440. package/dist/docs/interfaces/LeakReport.html +5 -5
  441. package/dist/docs/interfaces/LogsNotification.html +2 -2
  442. package/dist/docs/interfaces/LogsSubParams.html +2 -2
  443. package/dist/docs/interfaces/MemoTransferExt.html +2 -2
  444. package/dist/docs/interfaces/MemoryGuardConfig.html +4 -4
  445. package/dist/docs/interfaces/MetadataPointerExt.html +2 -2
  446. package/dist/docs/interfaces/MintCloseAuthorityExt.html +2 -2
  447. package/dist/docs/interfaces/MintToCheckedParams.html +8 -8
  448. package/dist/docs/interfaces/MintToParams.html +7 -7
  449. package/dist/docs/interfaces/NonTransferableExt.html +2 -2
  450. package/dist/docs/interfaces/PaginationOpts.html +2 -2
  451. package/dist/docs/interfaces/ParsedAccountUpdate.html +16 -16
  452. package/dist/docs/interfaces/ParsedBlockMeta.html +2 -2
  453. package/dist/docs/interfaces/ParsedEntry.html +2 -2
  454. package/dist/docs/interfaces/ParsedInstruction.html +9 -9
  455. package/dist/docs/interfaces/ParsedSlotUpdate.html +3 -3
  456. package/dist/docs/interfaces/ParsedTransaction.html +19 -19
  457. package/dist/docs/interfaces/PerfSample.html +2 -2
  458. package/dist/docs/interfaces/PermanentDelegateExt.html +2 -2
  459. package/dist/docs/interfaces/ProgramAccount.html +2 -2
  460. package/dist/docs/interfaces/ProgramNotification.html +2 -2
  461. package/dist/docs/interfaces/ProgramSubParams.html +2 -2
  462. package/dist/docs/interfaces/ProgramsBundle.html +33 -33
  463. package/dist/docs/interfaces/RawAccountInfo.html +2 -2
  464. package/dist/docs/interfaces/RawBlockMeta.html +2 -2
  465. package/dist/docs/interfaces/RawBuffer.html +2 -2
  466. package/dist/docs/interfaces/RawCompiledInstruction.html +2 -2
  467. package/dist/docs/interfaces/RawEntry.html +2 -2
  468. package/dist/docs/interfaces/RawGeyserUpdate.html +2 -2
  469. package/dist/docs/interfaces/RawInnerInstruction.html +2 -2
  470. package/dist/docs/interfaces/RawSlotInfo.html +2 -2
  471. package/dist/docs/interfaces/RawTimestamp.html +2 -2
  472. package/dist/docs/interfaces/RawTokenBalance.html +2 -2
  473. package/dist/docs/interfaces/RawTransactionInfo.html +2 -2
  474. package/dist/docs/interfaces/ReactAdapterConfig.html +2 -2
  475. package/dist/docs/interfaces/RecoverNestedParams.html +7 -7
  476. package/dist/docs/interfaces/RefRegistryConfig.html +2 -2
  477. package/dist/docs/interfaces/RefStats.html +7 -7
  478. package/dist/docs/interfaces/RequestHeapFrameParams.html +2 -2
  479. package/dist/docs/interfaces/ResolveMiddleware.html +1 -1
  480. package/dist/docs/interfaces/RevokeParams.html +5 -5
  481. package/dist/docs/interfaces/RootNotification.html +2 -2
  482. package/dist/docs/interfaces/RootSubParams.html +1 -1
  483. package/dist/docs/interfaces/RpcContext.html +2 -2
  484. package/dist/docs/interfaces/RpcError.html +4 -4
  485. package/dist/docs/interfaces/RpcRequest.html +3 -3
  486. package/dist/docs/interfaces/RpcResponse.html +2 -2
  487. package/dist/docs/interfaces/SendTransactionOpts.html +6 -6
  488. package/dist/docs/interfaces/ServerAdapterConfig.html +3 -3
  489. package/dist/docs/interfaces/ServiceBinding.html +6 -6
  490. package/dist/docs/interfaces/ServiceRegistration.html +3 -3
  491. package/dist/docs/interfaces/ServiceResolver.html +6 -6
  492. package/dist/docs/interfaces/ServiceToken.html +4 -4
  493. package/dist/docs/interfaces/SetComputeUnitLimitParams.html +2 -2
  494. package/dist/docs/interfaces/SetComputeUnitPriceParams.html +2 -2
  495. package/dist/docs/interfaces/SetLoadedAccountsDataSizeLimitParams.html +2 -2
  496. package/dist/docs/interfaces/SignatureInfo.html +7 -7
  497. package/dist/docs/interfaces/SignatureNotification.html +2 -2
  498. package/dist/docs/interfaces/SignatureStatus.html +5 -5
  499. package/dist/docs/interfaces/SignatureSubParams.html +2 -2
  500. package/dist/docs/interfaces/SignaturesForAssetParams.html +2 -2
  501. package/dist/docs/interfaces/SimulateResult.html +2 -2
  502. package/dist/docs/interfaces/SimulateTransactionOpts.html +7 -7
  503. package/dist/docs/interfaces/SingletonOptions.html +2 -2
  504. package/dist/docs/interfaces/SlotNotification.html +2 -2
  505. package/dist/docs/interfaces/SlotSubParams.html +1 -1
  506. package/dist/docs/interfaces/SortOpts.html +2 -2
  507. package/dist/docs/interfaces/StakeAuthorized.html +2 -2
  508. package/dist/docs/interfaces/StakeDelegation.html +3 -3
  509. package/dist/docs/interfaces/StakeLockup.html +4 -4
  510. package/dist/docs/interfaces/StakeMeta.html +2 -2
  511. package/dist/docs/interfaces/Supply.html +5 -5
  512. package/dist/docs/interfaces/SynapseClientConfig.html +9 -9
  513. package/dist/docs/interfaces/SynapseClientLike.html +2 -2
  514. package/dist/docs/interfaces/SynapseEndpoint.html +7 -7
  515. package/dist/docs/interfaces/SyncNativeParams.html +3 -3
  516. package/dist/docs/interfaces/SystemTransferParams.html +4 -4
  517. package/dist/docs/interfaces/TokenAccount.html +3 -3
  518. package/dist/docs/interfaces/TokenAccountsByOwnerResult.html +2 -2
  519. package/dist/docs/interfaces/TokenAmount.html +5 -5
  520. package/dist/docs/interfaces/TokenBalanceChange.html +2 -2
  521. package/dist/docs/interfaces/TokenTransferParams.html +7 -7
  522. package/dist/docs/interfaces/TransactionInstruction.html +4 -4
  523. package/dist/docs/interfaces/TransactionMeta.html +11 -11
  524. package/dist/docs/interfaces/TransferCheckedParams.html +9 -9
  525. package/dist/docs/interfaces/TransferFeeAmount.html +2 -2
  526. package/dist/docs/interfaces/TransferFeeConfig.html +2 -2
  527. package/dist/docs/interfaces/TransportConfig.html +7 -7
  528. package/dist/docs/interfaces/UnknownExtension.html +2 -2
  529. package/dist/docs/interfaces/ValueProvider.html +2 -2
  530. package/dist/docs/interfaces/VoteAccount.html +9 -9
  531. package/dist/docs/interfaces/VoteAccountsResult.html +3 -3
  532. package/dist/docs/interfaces/WithdrawNonceParams.html +5 -5
  533. package/dist/docs/interfaces/WsConfig.html +6 -6
  534. package/dist/docs/media/10_PLUGINS.md +454 -0
  535. package/dist/docs/media/11_MCP.md +459 -0
  536. package/dist/docs/media/CHANGELOG.md +176 -0
  537. package/dist/docs/types/AccountFetchOpts.html +1 -1
  538. package/dist/docs/types/AccountFilter.html +1 -1
  539. package/dist/docs/types/Base58.html +1 -1
  540. package/dist/docs/types/Brand.html +1 -1
  541. package/dist/docs/types/Commitment.html +1 -1
  542. package/dist/docs/types/DasSortBy.html +1 -1
  543. package/dist/docs/types/DasSortDirection.html +1 -1
  544. package/dist/docs/types/DataSizeFilter.html +1 -1
  545. package/dist/docs/types/DecodedExtension.html +1 -1
  546. package/dist/docs/types/Encoding.html +1 -1
  547. package/dist/docs/types/Epoch.html +1 -1
  548. package/dist/docs/types/Lamports.html +1 -1
  549. package/dist/docs/types/LogsFilter.html +1 -1
  550. package/dist/docs/types/MemcmpFilter.html +1 -1
  551. package/dist/docs/types/NonceState.html +1 -1
  552. package/dist/docs/types/ParsedGeyserUpdate.html +1 -1
  553. package/dist/docs/types/Pubkey.html +1 -1
  554. package/dist/docs/types/RuntimeEnv.html +1 -1
  555. package/dist/docs/types/ServiceLifecycle.html +1 -1
  556. package/dist/docs/types/ServiceProvider.html +1 -1
  557. package/dist/docs/types/Signature.html +1 -1
  558. package/dist/docs/types/Slot.html +1 -1
  559. package/dist/docs/types/StakeAccountType.html +1 -1
  560. package/dist/docs/types/SubscriptionId.html +1 -1
  561. package/dist/docs/types/TokenAccountState.html +1 -1
  562. package/dist/docs/types/TransactionDetail.html +1 -1
  563. package/dist/docs/types/UnaryMethod.html +1 -1
  564. package/dist/docs/types/UnixTimestamp.html +1 -1
  565. package/dist/docs/types/WsNotification.html +1 -1
  566. package/dist/docs/variables/ASSOCIATED_TOKEN_PROGRAM.html +1 -1
  567. package/dist/docs/variables/AssociatedToken.html +4 -4
  568. package/dist/docs/variables/COMPUTE_BUDGET_PROGRAM.html +1 -1
  569. package/dist/docs/variables/ComputeBudget.html +5 -5
  570. package/dist/docs/variables/JUPITER_PROGRAMS.html +1 -1
  571. package/dist/docs/variables/KNOWN_PROGRAMS.html +1 -1
  572. package/dist/docs/variables/KNOWN_PROGRAMS_COUNT.html +1 -1
  573. package/dist/docs/variables/LOOKUP_TABLE_HEADER_SIZE.html +1 -1
  574. package/dist/docs/variables/LOOKUP_TABLE_PROGRAM_ID.html +1 -1
  575. package/dist/docs/variables/MARINADE_PROGRAMS.html +1 -1
  576. package/dist/docs/variables/MAX_MULTISIG_SIGNERS.html +1 -1
  577. package/dist/docs/variables/MEMO_PROGRAM_V1.html +1 -1
  578. package/dist/docs/variables/MEMO_PROGRAM_V2.html +1 -1
  579. package/dist/docs/variables/METAPLEX_PROGRAMS.html +1 -1
  580. package/dist/docs/variables/METEORA_PROGRAMS.html +1 -1
  581. package/dist/docs/variables/MINT_SIZE.html +1 -1
  582. package/dist/docs/variables/MULTISIG_SIZE.html +1 -1
  583. package/dist/docs/variables/Memo.html +2 -2
  584. package/dist/docs/variables/NONCE_ACCOUNT_SIZE.html +1 -1
  585. package/dist/docs/variables/ORCA_PROGRAMS.html +1 -1
  586. package/dist/docs/variables/OTHER_PROGRAMS.html +1 -1
  587. package/dist/docs/variables/RAYDIUM_PROGRAMS.html +1 -1
  588. package/dist/docs/variables/SDK_USER_AGENT.html +1 -1
  589. package/dist/docs/variables/SPL_PROGRAMS.html +1 -1
  590. package/dist/docs/variables/STAKE_PROGRAM_ID.html +1 -1
  591. package/dist/docs/variables/SYNAPSE_DEVNET_EU.html +1 -1
  592. package/dist/docs/variables/SYNAPSE_DEVNET_US.html +1 -1
  593. package/dist/docs/variables/SYNAPSE_ENDPOINTS.html +1 -1
  594. package/dist/docs/variables/SYNAPSE_MAINNET_EU.html +1 -1
  595. package/dist/docs/variables/SYNAPSE_MAINNET_US.html +1 -1
  596. package/dist/docs/variables/SYSTEM_PROGRAM.html +1 -1
  597. package/dist/docs/variables/SYSTEM_PROGRAMS.html +1 -1
  598. package/dist/docs/variables/SYSTEM_PROGRAM_ID.html +1 -1
  599. package/dist/docs/variables/SplToken.html +16 -16
  600. package/dist/docs/variables/SystemProgram.html +10 -10
  601. package/dist/docs/variables/TOKEN_2022_PROGRAM.html +1 -1
  602. package/dist/docs/variables/TOKEN_2022_PROGRAM_ID.html +1 -1
  603. package/dist/docs/variables/TOKEN_ACCOUNT_SIZE.html +1 -1
  604. package/dist/docs/variables/TOKEN_PROGRAM.html +1 -1
  605. package/dist/docs/variables/TOKEN_PROGRAM_ID.html +1 -1
  606. package/dist/docs/variables/Tokens.html +1 -1
  607. package/dist/esm/ai/actions/blinks.d.ts +158 -0
  608. package/dist/esm/ai/actions/blinks.d.ts.map +1 -0
  609. package/dist/esm/ai/actions/blinks.js +227 -0
  610. package/dist/esm/ai/actions/blinks.js.map +1 -0
  611. package/dist/esm/ai/actions/index.d.ts +51 -0
  612. package/dist/esm/ai/actions/index.d.ts.map +1 -0
  613. package/dist/esm/ai/actions/index.js +52 -0
  614. package/dist/esm/ai/actions/index.js.map +1 -0
  615. package/dist/esm/ai/actions/server.d.ts +188 -0
  616. package/dist/esm/ai/actions/server.d.ts.map +1 -0
  617. package/dist/esm/ai/actions/server.js +399 -0
  618. package/dist/esm/ai/actions/server.js.map +1 -0
  619. package/dist/esm/ai/actions/types.d.ts +251 -0
  620. package/dist/esm/ai/actions/types.d.ts.map +1 -0
  621. package/dist/esm/ai/actions/types.js +15 -0
  622. package/dist/esm/ai/actions/types.js.map +1 -0
  623. package/dist/esm/ai/gateway/index.d.ts +1 -0
  624. package/dist/esm/ai/gateway/index.d.ts.map +1 -1
  625. package/dist/esm/ai/gateway/index.js +2 -0
  626. package/dist/esm/ai/gateway/index.js.map +1 -1
  627. package/dist/esm/ai/gateway/monetize.d.ts +222 -0
  628. package/dist/esm/ai/gateway/monetize.d.ts.map +1 -0
  629. package/dist/esm/ai/gateway/monetize.js +277 -0
  630. package/dist/esm/ai/gateway/monetize.js.map +1 -0
  631. package/dist/esm/ai/index.d.ts +7 -2
  632. package/dist/esm/ai/index.d.ts.map +1 -1
  633. package/dist/esm/ai/index.js +41 -1
  634. package/dist/esm/ai/index.js.map +1 -1
  635. package/dist/esm/ai/intents/executor.d.ts +102 -0
  636. package/dist/esm/ai/intents/executor.d.ts.map +1 -0
  637. package/dist/esm/ai/intents/executor.js +331 -0
  638. package/dist/esm/ai/intents/executor.js.map +1 -0
  639. package/dist/esm/ai/intents/index.d.ts +52 -0
  640. package/dist/esm/ai/intents/index.d.ts.map +1 -0
  641. package/dist/esm/ai/intents/index.js +50 -0
  642. package/dist/esm/ai/intents/index.js.map +1 -0
  643. package/dist/esm/ai/intents/parser.d.ts +106 -0
  644. package/dist/esm/ai/intents/parser.d.ts.map +1 -0
  645. package/dist/esm/ai/intents/parser.js +185 -0
  646. package/dist/esm/ai/intents/parser.js.map +1 -0
  647. package/dist/esm/ai/intents/planner.d.ts +96 -0
  648. package/dist/esm/ai/intents/planner.d.ts.map +1 -0
  649. package/dist/esm/ai/intents/planner.js +266 -0
  650. package/dist/esm/ai/intents/planner.js.map +1 -0
  651. package/dist/esm/ai/intents/types.d.ts +281 -0
  652. package/dist/esm/ai/intents/types.d.ts.map +1 -0
  653. package/dist/esm/ai/intents/types.js +63 -0
  654. package/dist/esm/ai/intents/types.js.map +1 -0
  655. package/dist/esm/ai/mcp/client.d.ts +71 -0
  656. package/dist/esm/ai/mcp/client.d.ts.map +1 -0
  657. package/dist/esm/ai/mcp/client.js +638 -0
  658. package/dist/esm/ai/mcp/client.js.map +1 -0
  659. package/dist/esm/ai/mcp/index.d.ts +16 -0
  660. package/dist/esm/ai/mcp/index.d.ts.map +1 -0
  661. package/dist/esm/ai/mcp/index.js +19 -0
  662. package/dist/esm/ai/mcp/index.js.map +1 -0
  663. package/dist/esm/ai/mcp/server.d.ts +115 -0
  664. package/dist/esm/ai/mcp/server.d.ts.map +1 -0
  665. package/dist/esm/ai/mcp/server.js +586 -0
  666. package/dist/esm/ai/mcp/server.js.map +1 -0
  667. package/dist/esm/ai/mcp/types.d.ts +215 -0
  668. package/dist/esm/ai/mcp/types.d.ts.map +1 -0
  669. package/dist/esm/ai/mcp/types.js +14 -0
  670. package/dist/esm/ai/mcp/types.js.map +1 -0
  671. package/dist/esm/ai/plugins/blinks/index.d.ts +22 -0
  672. package/dist/esm/ai/plugins/blinks/index.d.ts.map +1 -0
  673. package/dist/esm/ai/plugins/blinks/index.js +197 -0
  674. package/dist/esm/ai/plugins/blinks/index.js.map +1 -0
  675. package/dist/esm/ai/plugins/blinks/schemas.d.ts +4 -0
  676. package/dist/esm/ai/plugins/blinks/schemas.d.ts.map +1 -0
  677. package/dist/esm/ai/plugins/blinks/schemas.js +103 -0
  678. package/dist/esm/ai/plugins/blinks/schemas.js.map +1 -0
  679. package/dist/esm/ai/plugins/defi/index.d.ts +44 -0
  680. package/dist/esm/ai/plugins/defi/index.d.ts.map +1 -0
  681. package/dist/esm/ai/plugins/defi/index.js +476 -0
  682. package/dist/esm/ai/plugins/defi/index.js.map +1 -0
  683. package/dist/esm/ai/plugins/defi/schemas.d.ts +13 -0
  684. package/dist/esm/ai/plugins/defi/schemas.d.ts.map +1 -0
  685. package/dist/esm/ai/plugins/defi/schemas.js +564 -0
  686. package/dist/esm/ai/plugins/defi/schemas.js.map +1 -0
  687. package/dist/esm/ai/plugins/index.d.ts +30 -0
  688. package/dist/esm/ai/plugins/index.d.ts.map +1 -0
  689. package/dist/esm/ai/plugins/index.js +31 -0
  690. package/dist/esm/ai/plugins/index.js.map +1 -0
  691. package/dist/esm/ai/plugins/misc/index.d.ts +28 -0
  692. package/dist/esm/ai/plugins/misc/index.d.ts.map +1 -0
  693. package/dist/esm/ai/plugins/misc/index.js +435 -0
  694. package/dist/esm/ai/plugins/misc/index.js.map +1 -0
  695. package/dist/esm/ai/plugins/misc/schemas.d.ts +9 -0
  696. package/dist/esm/ai/plugins/misc/schemas.d.ts.map +1 -0
  697. package/dist/esm/ai/plugins/misc/schemas.js +313 -0
  698. package/dist/esm/ai/plugins/misc/schemas.js.map +1 -0
  699. package/dist/esm/ai/plugins/nft/index.d.ts +24 -0
  700. package/dist/esm/ai/plugins/nft/index.d.ts.map +1 -0
  701. package/dist/esm/ai/plugins/nft/index.js +63 -0
  702. package/dist/esm/ai/plugins/nft/index.js.map +1 -0
  703. package/dist/esm/ai/plugins/nft/schemas.d.ts +6 -0
  704. package/dist/esm/ai/plugins/nft/schemas.d.ts.map +1 -0
  705. package/dist/esm/ai/plugins/nft/schemas.js +270 -0
  706. package/dist/esm/ai/plugins/nft/schemas.js.map +1 -0
  707. package/dist/esm/ai/plugins/registry.d.ts +157 -0
  708. package/dist/esm/ai/plugins/registry.d.ts.map +1 -0
  709. package/dist/esm/ai/plugins/registry.js +365 -0
  710. package/dist/esm/ai/plugins/registry.js.map +1 -0
  711. package/dist/esm/ai/plugins/token/index.d.ts +35 -0
  712. package/dist/esm/ai/plugins/token/index.d.ts.map +1 -0
  713. package/dist/esm/ai/plugins/token/index.js +180 -0
  714. package/dist/esm/ai/plugins/token/index.js.map +1 -0
  715. package/dist/esm/ai/plugins/token/schemas.d.ts +5 -0
  716. package/dist/esm/ai/plugins/token/schemas.d.ts.map +1 -0
  717. package/dist/esm/ai/plugins/token/schemas.js +265 -0
  718. package/dist/esm/ai/plugins/token/schemas.js.map +1 -0
  719. package/dist/esm/ai/plugins/types.d.ts +176 -0
  720. package/dist/esm/ai/plugins/types.d.ts.map +1 -0
  721. package/dist/esm/ai/plugins/types.js +2 -0
  722. package/dist/esm/ai/plugins/types.js.map +1 -0
  723. package/dist/esm/ai/sap/adapter.d.ts +140 -0
  724. package/dist/esm/ai/sap/adapter.d.ts.map +1 -0
  725. package/dist/esm/ai/sap/adapter.js +177 -0
  726. package/dist/esm/ai/sap/adapter.js.map +1 -0
  727. package/dist/esm/ai/sap/discovery.d.ts +165 -0
  728. package/dist/esm/ai/sap/discovery.d.ts.map +1 -0
  729. package/dist/esm/ai/sap/discovery.js +311 -0
  730. package/dist/esm/ai/sap/discovery.js.map +1 -0
  731. package/dist/esm/ai/sap/index.d.ts +61 -0
  732. package/dist/esm/ai/sap/index.d.ts.map +1 -0
  733. package/dist/esm/ai/sap/index.js +58 -0
  734. package/dist/esm/ai/sap/index.js.map +1 -0
  735. package/dist/esm/ai/sap/pda.d.ts +205 -0
  736. package/dist/esm/ai/sap/pda.d.ts.map +1 -0
  737. package/dist/esm/ai/sap/pda.js +535 -0
  738. package/dist/esm/ai/sap/pda.js.map +1 -0
  739. package/dist/esm/ai/sap/program.d.ts +153 -0
  740. package/dist/esm/ai/sap/program.d.ts.map +1 -0
  741. package/dist/esm/ai/sap/program.js +222 -0
  742. package/dist/esm/ai/sap/program.js.map +1 -0
  743. package/dist/esm/ai/sap/registry.d.ts +218 -0
  744. package/dist/esm/ai/sap/registry.d.ts.map +1 -0
  745. package/dist/esm/ai/sap/registry.js +515 -0
  746. package/dist/esm/ai/sap/registry.js.map +1 -0
  747. package/dist/esm/ai/sap/scoring.d.ts +138 -0
  748. package/dist/esm/ai/sap/scoring.d.ts.map +1 -0
  749. package/dist/esm/ai/sap/scoring.js +262 -0
  750. package/dist/esm/ai/sap/scoring.js.map +1 -0
  751. package/dist/esm/ai/sap/subnetwork.d.ts +201 -0
  752. package/dist/esm/ai/sap/subnetwork.d.ts.map +1 -0
  753. package/dist/esm/ai/sap/subnetwork.js +361 -0
  754. package/dist/esm/ai/sap/subnetwork.js.map +1 -0
  755. package/dist/esm/ai/sap/types.d.ts +418 -0
  756. package/dist/esm/ai/sap/types.d.ts.map +1 -0
  757. package/dist/esm/ai/sap/types.js +210 -0
  758. package/dist/esm/ai/sap/types.js.map +1 -0
  759. package/dist/esm/ai/sap/validator.d.ts +160 -0
  760. package/dist/esm/ai/sap/validator.d.ts.map +1 -0
  761. package/dist/esm/ai/sap/validator.js +614 -0
  762. package/dist/esm/ai/sap/validator.js.map +1 -0
  763. package/package.json +67 -2
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ /**
3
+ * @module ai/sap/adapter
4
+ * @description SAP — On-chain persistence adapter for {@link AgentRegistry}.
5
+ *
6
+ * Implements the {@link PersistenceAdapter} interface using SAP on-chain
7
+ * data, enabling the `AgentRegistry` to persist and discover agents
8
+ * directly on the Solana blockchain.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * import { AgentRegistry, OnChainPersistenceAdapter } from '@oobe-protocol-labs/synapse-client-sdk/ai';
13
+ *
14
+ * const adapter = new OnChainPersistenceAdapter(client, { programId: 'SAPAgnt1...' });
15
+ * const registry = new AgentRegistry({ adapter });
16
+ *
17
+ * // Agents registered via the registry are now backed by on-chain data
18
+ * ```
19
+ *
20
+ * @since 1.3.0
21
+ */
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.OnChainPersistenceAdapter = void 0;
24
+ const types_1 = require("./types");
25
+ const discovery_1 = require("./discovery");
26
+ /* ═══════════════════════════════════════════════════════════════
27
+ * OnChainPersistenceAdapter
28
+ * ═══════════════════════════════════════════════════════════════ */
29
+ /**
30
+ * @description Persistence adapter backed by SAP on-chain data.
31
+ *
32
+ * **Read operations** (`load`, `loadAll`) query the blockchain via
33
+ * {@link SAPDiscovery}. **Write operations** (`save`, `remove`) are
34
+ * cached locally — the actual on-chain write must be done by the user
35
+ * via {@link SAPInstructionBuilder} + transaction signing.
36
+ *
37
+ * This design separates read (automatic) from write (user-driven)
38
+ * because on-chain writes require a signature from the agent's wallet.
39
+ *
40
+ * @implements {PersistenceAdapterLike}
41
+ * @since 1.3.0
42
+ */
43
+ class OnChainPersistenceAdapter {
44
+ discovery;
45
+ pendingWrites = new Map();
46
+ removed = new Set();
47
+ /**
48
+ * @param {RpcClient} client - Client providing RPC transport
49
+ * @param {Partial<SAPConfig>} [config] - SAP configuration
50
+ */
51
+ constructor(client, config) {
52
+ this.discovery = new discovery_1.SAPDiscovery(client, {
53
+ programId: config?.programId ?? types_1.SAP_DEFAULT_PROGRAM_ID,
54
+ commitment: config?.commitment ?? 'confirmed',
55
+ maxAccounts: config?.maxAccounts ?? 100,
56
+ });
57
+ }
58
+ /**
59
+ * @description Get the underlying discovery instance for direct queries.
60
+ * @returns {SAPDiscovery} Discovery engine
61
+ * @since 1.3.0
62
+ */
63
+ getDiscovery() {
64
+ return this.discovery;
65
+ }
66
+ /**
67
+ * @description Stage agent data for persistence.
68
+ *
69
+ * This caches the data locally. To actually write on-chain, build and
70
+ * send a transaction using {@link SAPInstructionBuilder}.
71
+ *
72
+ * @param {string} id - Agent wallet pubkey or DID
73
+ * @param {unknown} data - Agent data to persist
74
+ * @returns {Promise<void>}
75
+ * @since 1.3.0
76
+ */
77
+ async save(id, data) {
78
+ this.removed.delete(id);
79
+ this.pendingWrites.set(id, data);
80
+ }
81
+ /**
82
+ * @description Load agent data from on-chain PDA.
83
+ *
84
+ * First checks pending writes (local cache), then queries the blockchain.
85
+ *
86
+ * @param {string} id - Agent wallet pubkey
87
+ * @returns {Promise<AgentPDAAccount | unknown | null>} Agent data or null
88
+ * @since 1.3.0
89
+ */
90
+ async load(id) {
91
+ if (this.removed.has(id))
92
+ return null;
93
+ if (this.pendingWrites.has(id))
94
+ return this.pendingWrites.get(id);
95
+ const agent = await this.discovery.findAgent(id);
96
+ if (!agent)
97
+ return null;
98
+ return {
99
+ identity: (0, types_1.pdaToIdentity)(agent),
100
+ pda: agent,
101
+ };
102
+ }
103
+ /**
104
+ * @description Load all agents from the blockchain.
105
+ *
106
+ * Merges on-chain data with pending local writes, excluding removed entries.
107
+ *
108
+ * @returns {Promise<Array<{ id: string; data: unknown }>>} All agent records
109
+ * @since 1.3.0
110
+ */
111
+ async loadAll() {
112
+ const onChain = await this.discovery.findActive();
113
+ const results = [];
114
+ const seen = new Set();
115
+ // On-chain agents
116
+ for (const agent of onChain) {
117
+ if (this.removed.has(agent.walletPubkey))
118
+ continue;
119
+ seen.add(agent.walletPubkey);
120
+ // Prefer pending write if available
121
+ if (this.pendingWrites.has(agent.walletPubkey)) {
122
+ results.push({ id: agent.walletPubkey, data: this.pendingWrites.get(agent.walletPubkey) });
123
+ }
124
+ else {
125
+ results.push({
126
+ id: agent.walletPubkey,
127
+ data: { identity: (0, types_1.pdaToIdentity)(agent), pda: agent },
128
+ });
129
+ }
130
+ }
131
+ // Pending writes not yet on-chain
132
+ for (const [id, data] of this.pendingWrites) {
133
+ if (!seen.has(id) && !this.removed.has(id)) {
134
+ results.push({ id, data });
135
+ }
136
+ }
137
+ return results;
138
+ }
139
+ /**
140
+ * @description Mark an agent for removal (locally cached).
141
+ *
142
+ * On-chain removal requires sending a `deactivate` instruction
143
+ * via {@link SAPInstructionBuilder}.
144
+ *
145
+ * @param {string} id - Agent wallet pubkey
146
+ * @returns {Promise<void>}
147
+ * @since 1.3.0
148
+ */
149
+ async remove(id) {
150
+ this.pendingWrites.delete(id);
151
+ this.removed.add(id);
152
+ }
153
+ /**
154
+ * @description Get pending writes that need to be committed on-chain.
155
+ * @returns {Map<string, unknown>} Map of agent ID → staged data
156
+ * @since 1.3.0
157
+ */
158
+ getPendingWrites() {
159
+ return this.pendingWrites;
160
+ }
161
+ /**
162
+ * @description Get IDs of agents marked for removal.
163
+ * @returns {ReadonlySet<string>} Set of removed agent IDs
164
+ * @since 1.3.0
165
+ */
166
+ getRemovedIds() {
167
+ return this.removed;
168
+ }
169
+ /**
170
+ * @description Clear all pending local writes and removals.
171
+ * Call after successfully committing transactions on-chain.
172
+ * @returns {void}
173
+ * @since 1.3.0
174
+ */
175
+ clearPending() {
176
+ this.pendingWrites.clear();
177
+ this.removed.clear();
178
+ }
179
+ }
180
+ exports.OnChainPersistenceAdapter = OnChainPersistenceAdapter;
181
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/ai/sap/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * @module ai/sap/discovery
3
+ * @description SAP — On-chain agent discovery via `getProgramAccounts`.
4
+ *
5
+ * Queries the Solana blockchain for registered agents, applying filters
6
+ * like capability, protocol, reputation, price range, and uptime.
7
+ *
8
+ * Uses the SDK's native {@link HttpTransport} — no external dependencies.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * import { SynapseClient } from '@oobe-protocol-labs/synapse-client-sdk';
13
+ * import { SAPDiscovery } from '@oobe-protocol-labs/synapse-client-sdk/ai';
14
+ *
15
+ * const client = new SynapseClient({ endpoint: 'https://api.mainnet-beta.solana.com' });
16
+ * const discovery = new SAPDiscovery(client, { programId: 'SAPAgnt1...' });
17
+ *
18
+ * // Find agents that support Jupiter swaps
19
+ * const result = await discovery.find({ capability: 'jupiter:swap', minReputation: 700 });
20
+ * for (const agent of result.agents) {
21
+ * console.log(agent.name, agent.reputation.score, agent.x402Endpoint);
22
+ * }
23
+ * ```
24
+ *
25
+ * @since 1.3.0
26
+ */
27
+ import type { SAPConfig, AgentPDAAccount, AgentDiscoveryFilter, DiscoveryResult, SAPAggregateMetrics } from './types';
28
+ /**
29
+ * @description Minimal transport interface for RPC calls.
30
+ * @since 1.3.0
31
+ */
32
+ interface RpcTransport {
33
+ request<T = unknown>(method: string, params: unknown[]): Promise<T>;
34
+ }
35
+ /**
36
+ * @description Minimal client interface providing transport access.
37
+ * Satisfied by {@link SynapseClient} and any object with a `transport` property.
38
+ * @since 1.3.0
39
+ */
40
+ interface RpcClient {
41
+ transport: RpcTransport;
42
+ }
43
+ /**
44
+ * @description Error class for SAP discovery failures.
45
+ * @since 1.3.0
46
+ */
47
+ export declare class SAPDiscoveryError extends Error {
48
+ readonly code: string;
49
+ constructor(message: string, code: string);
50
+ }
51
+ /**
52
+ * @description On-chain agent discovery engine.
53
+ *
54
+ * Queries the Solana blockchain for SAP-registered agents using
55
+ * `getProgramAccounts` with memcmp filters for efficient querying.
56
+ *
57
+ * @since 1.3.0
58
+ */
59
+ export declare class SAPDiscovery {
60
+ private readonly transport;
61
+ private readonly config;
62
+ /**
63
+ * @param {RpcClient} client - Client providing RPC transport
64
+ * @param {Partial<SAPConfig>} [config] - Discovery configuration
65
+ */
66
+ constructor(client: RpcClient, config?: Partial<SAPConfig>);
67
+ /**
68
+ * @description Find a single agent by wallet public key.
69
+ *
70
+ * Derives the PDA and fetches the account data directly.
71
+ *
72
+ * @param {string} walletPubkey - Agent's wallet (base58)
73
+ * @returns {Promise<AgentPDAAccount | null>} Agent account or null
74
+ *
75
+ * @example
76
+ * ```ts
77
+ * const agent = await discovery.findAgent('7xKXwJ...');
78
+ * if (agent) console.log(agent.name, agent.capabilities);
79
+ * ```
80
+ *
81
+ * @since 1.3.0
82
+ */
83
+ findAgent(walletPubkey: string): Promise<AgentPDAAccount | null>;
84
+ /**
85
+ * @description Find agents matching the given filters.
86
+ *
87
+ * Uses `getProgramAccounts` with a memcmp filter on the discriminator
88
+ * to fetch all SAP accounts, then applies client-side filters.
89
+ *
90
+ * @param {AgentDiscoveryFilter} [filter] - Query filters
91
+ * @returns {Promise<DiscoveryResult>} Discovery results with matching agents
92
+ *
93
+ * @example
94
+ * ```ts
95
+ * const result = await discovery.find({
96
+ * capability: 'jupiter:swap',
97
+ * minReputation: 600,
98
+ * maxPricePerCall: 5000n,
99
+ * sortBy: 'reputation',
100
+ * limit: 20,
101
+ * });
102
+ * ```
103
+ *
104
+ * @since 1.3.0
105
+ */
106
+ find(filter?: AgentDiscoveryFilter): Promise<DiscoveryResult>;
107
+ /**
108
+ * @description Find all active agents (shortcut for `find({ activeOnly: true })`).
109
+ * @returns {Promise<AgentPDAAccount[]>} Active agent accounts
110
+ * @since 1.3.0
111
+ */
112
+ findActive(): Promise<AgentPDAAccount[]>;
113
+ /**
114
+ * @description Find agents by capability ID.
115
+ * @param {string} capabilityId - Capability to search for (e.g. `"jupiter:swap"`)
116
+ * @returns {Promise<AgentPDAAccount[]>} Agents with the given capability
117
+ * @since 1.3.0
118
+ */
119
+ findByCapability(capabilityId: string): Promise<AgentPDAAccount[]>;
120
+ /**
121
+ * @description Find agents by protocol name.
122
+ * @param {string} protocol - Protocol name (e.g. `"jupiter"`, `"raydium"`)
123
+ * @returns {Promise<AgentPDAAccount[]>} Agents offering tools for the given protocol
124
+ * @since 1.3.0
125
+ */
126
+ findByProtocol(protocol: string): Promise<AgentPDAAccount[]>;
127
+ /**
128
+ * @description Find the cheapest agent for a given capability.
129
+ * @param {string} capabilityId - Capability to search for
130
+ * @returns {Promise<AgentPDAAccount | null>} Cheapest agent or null
131
+ * @since 1.3.0
132
+ */
133
+ findCheapest(capabilityId: string): Promise<AgentPDAAccount | null>;
134
+ /**
135
+ * @description Find the most reputable agent for a given capability.
136
+ * @param {string} capabilityId - Capability to search for
137
+ * @returns {Promise<AgentPDAAccount | null>} Most reputable agent or null
138
+ * @since 1.3.0
139
+ */
140
+ findMostReputable(capabilityId: string): Promise<AgentPDAAccount | null>;
141
+ /**
142
+ * @description Compute aggregate metrics across all registered agents.
143
+ *
144
+ * @returns {Promise<SAPAggregateMetrics>} Network-wide agent statistics
145
+ *
146
+ * @example
147
+ * ```ts
148
+ * const metrics = await discovery.getAggregateMetrics();
149
+ * console.log(`${metrics.activeAgents} active agents`);
150
+ * console.log(`${metrics.totalCallsServed} total calls served`);
151
+ * console.log(`Protocols: ${metrics.protocols.join(', ')}`);
152
+ * ```
153
+ *
154
+ * @since 1.3.0
155
+ */
156
+ getAggregateMetrics(): Promise<SAPAggregateMetrics>;
157
+ /**
158
+ * @description Fetch all SAP accounts from the blockchain using getProgramAccounts.
159
+ * @returns {Promise<AgentPDAAccount[]>} All deserialized agent accounts
160
+ * @internal
161
+ */
162
+ private fetchAllAccounts;
163
+ }
164
+ export {};
165
+ //# sourceMappingURL=discovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../../src/ai/sap/discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAQjB;;;GAGG;AACH,UAAU,YAAY;IACpB,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACrE;AAED;;;;GAIG;AACH,UAAU,SAAS;IACjB,SAAS,EAAE,YAAY,CAAC;CACzB;AAMD;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;aACG,IAAI,EAAE,MAAM;gBAA7C,OAAO,EAAE,MAAM,EAAkB,IAAI,EAAE,MAAM;CAI1D;AAED;;;;;;;GAOG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAE7C;;;OAGG;gBACS,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC;IAS1D;;;;;;;;;;;;;;;OAeG;IACG,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAiBtE;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,IAAI,CAAC,MAAM,GAAE,oBAAyB,GAAG,OAAO,CAAC,eAAe,CAAC;IAqEvE;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAK9C;;;;;OAKG;IACG,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAKxE;;;;;OAKG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAKlE;;;;;OAKG;IACG,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAUzE;;;;;OAKG;IACG,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAU9E;;;;;;;;;;;;;;OAcG;IACG,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAmCzD;;;;OAIG;YACW,gBAAgB;CAgC/B"}
@@ -0,0 +1,316 @@
1
+ "use strict";
2
+ /**
3
+ * @module ai/sap/discovery
4
+ * @description SAP — On-chain agent discovery via `getProgramAccounts`.
5
+ *
6
+ * Queries the Solana blockchain for registered agents, applying filters
7
+ * like capability, protocol, reputation, price range, and uptime.
8
+ *
9
+ * Uses the SDK's native {@link HttpTransport} — no external dependencies.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * import { SynapseClient } from '@oobe-protocol-labs/synapse-client-sdk';
14
+ * import { SAPDiscovery } from '@oobe-protocol-labs/synapse-client-sdk/ai';
15
+ *
16
+ * const client = new SynapseClient({ endpoint: 'https://api.mainnet-beta.solana.com' });
17
+ * const discovery = new SAPDiscovery(client, { programId: 'SAPAgnt1...' });
18
+ *
19
+ * // Find agents that support Jupiter swaps
20
+ * const result = await discovery.find({ capability: 'jupiter:swap', minReputation: 700 });
21
+ * for (const agent of result.agents) {
22
+ * console.log(agent.name, agent.reputation.score, agent.x402Endpoint);
23
+ * }
24
+ * ```
25
+ *
26
+ * @since 1.3.0
27
+ */
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.SAPDiscovery = exports.SAPDiscoveryError = void 0;
30
+ const types_1 = require("./types");
31
+ const pda_1 = require("./pda");
32
+ /* ═══════════════════════════════════════════════════════════════
33
+ * SAPDiscovery
34
+ * ═══════════════════════════════════════════════════════════════ */
35
+ /**
36
+ * @description Error class for SAP discovery failures.
37
+ * @since 1.3.0
38
+ */
39
+ class SAPDiscoveryError extends Error {
40
+ code;
41
+ constructor(message, code) {
42
+ super(message);
43
+ this.code = code;
44
+ this.name = 'SAPDiscoveryError';
45
+ }
46
+ }
47
+ exports.SAPDiscoveryError = SAPDiscoveryError;
48
+ /**
49
+ * @description On-chain agent discovery engine.
50
+ *
51
+ * Queries the Solana blockchain for SAP-registered agents using
52
+ * `getProgramAccounts` with memcmp filters for efficient querying.
53
+ *
54
+ * @since 1.3.0
55
+ */
56
+ class SAPDiscovery {
57
+ transport;
58
+ config;
59
+ /**
60
+ * @param {RpcClient} client - Client providing RPC transport
61
+ * @param {Partial<SAPConfig>} [config] - Discovery configuration
62
+ */
63
+ constructor(client, config) {
64
+ this.transport = client.transport;
65
+ this.config = {
66
+ programId: config?.programId ?? types_1.SAP_DEFAULT_PROGRAM_ID,
67
+ commitment: config?.commitment ?? 'confirmed',
68
+ maxAccounts: config?.maxAccounts ?? 100,
69
+ };
70
+ }
71
+ /**
72
+ * @description Find a single agent by wallet public key.
73
+ *
74
+ * Derives the PDA and fetches the account data directly.
75
+ *
76
+ * @param {string} walletPubkey - Agent's wallet (base58)
77
+ * @returns {Promise<AgentPDAAccount | null>} Agent account or null
78
+ *
79
+ * @example
80
+ * ```ts
81
+ * const agent = await discovery.findAgent('7xKXwJ...');
82
+ * if (agent) console.log(agent.name, agent.capabilities);
83
+ * ```
84
+ *
85
+ * @since 1.3.0
86
+ */
87
+ async findAgent(walletPubkey) {
88
+ const pda = (0, pda_1.deriveAgentPDA)(walletPubkey, this.config.programId);
89
+ const result = await this.transport.request('getAccountInfo', [pda.address, { encoding: 'base64', commitment: this.config.commitment }]);
90
+ if (!result?.value?.data)
91
+ return null;
92
+ try {
93
+ const bytes = Buffer.from(result.value.data[0], 'base64');
94
+ return (0, pda_1.deserializeAgentAccount)(pda.address, bytes);
95
+ }
96
+ catch {
97
+ return null;
98
+ }
99
+ }
100
+ /**
101
+ * @description Find agents matching the given filters.
102
+ *
103
+ * Uses `getProgramAccounts` with a memcmp filter on the discriminator
104
+ * to fetch all SAP accounts, then applies client-side filters.
105
+ *
106
+ * @param {AgentDiscoveryFilter} [filter] - Query filters
107
+ * @returns {Promise<DiscoveryResult>} Discovery results with matching agents
108
+ *
109
+ * @example
110
+ * ```ts
111
+ * const result = await discovery.find({
112
+ * capability: 'jupiter:swap',
113
+ * minReputation: 600,
114
+ * maxPricePerCall: 5000n,
115
+ * sortBy: 'reputation',
116
+ * limit: 20,
117
+ * });
118
+ * ```
119
+ *
120
+ * @since 1.3.0
121
+ */
122
+ async find(filter = {}) {
123
+ const start = performance.now();
124
+ const { activeOnly = true, capability, protocol, minReputation, maxPricePerCall, minUptime, sortBy, sortDirection = 'desc', limit = 50, } = filter;
125
+ // Fetch all accounts with discriminator filter
126
+ const accounts = await this.fetchAllAccounts();
127
+ const totalScanned = accounts.length;
128
+ // Apply filters
129
+ let matched = accounts.filter((agent) => {
130
+ if (activeOnly && !agent.isActive)
131
+ return false;
132
+ if (capability && !agent.capabilities.some(c => c.id === capability))
133
+ return false;
134
+ if (protocol && !agent.capabilities.some(c => c.protocol === protocol))
135
+ return false;
136
+ if (minReputation !== undefined && agent.reputation.score < minReputation)
137
+ return false;
138
+ if (maxPricePerCall !== undefined) {
139
+ const cheapest = agent.pricing.reduce((min, p) => p.pricePerCall < min ? p.pricePerCall : min, agent.pricing[0]?.pricePerCall ?? 0n);
140
+ if (cheapest > maxPricePerCall)
141
+ return false;
142
+ }
143
+ if (minUptime !== undefined && agent.reputation.uptimePercent < minUptime)
144
+ return false;
145
+ return true;
146
+ });
147
+ const totalMatching = matched.length;
148
+ // Sort
149
+ if (sortBy) {
150
+ const mul = sortDirection === 'asc' ? 1 : -1;
151
+ matched.sort((a, b) => {
152
+ switch (sortBy) {
153
+ case 'reputation': return mul * (a.reputation.score - b.reputation.score);
154
+ case 'latency': return mul * (a.reputation.avgLatencyMs - b.reputation.avgLatencyMs);
155
+ case 'uptime': return mul * (a.reputation.uptimePercent - b.reputation.uptimePercent);
156
+ case 'calls': return mul * Number(a.reputation.totalCallsServed - b.reputation.totalCallsServed);
157
+ case 'price': {
158
+ const aMin = a.pricing[0]?.pricePerCall ?? 0n;
159
+ const bMin = b.pricing[0]?.pricePerCall ?? 0n;
160
+ return mul * Number(aMin - bMin);
161
+ }
162
+ default: return 0;
163
+ }
164
+ });
165
+ }
166
+ // Limit
167
+ if (matched.length > limit) {
168
+ matched = matched.slice(0, limit);
169
+ }
170
+ return {
171
+ agents: matched,
172
+ totalScanned,
173
+ totalMatching,
174
+ queryLatencyMs: Math.round(performance.now() - start),
175
+ };
176
+ }
177
+ /**
178
+ * @description Find all active agents (shortcut for `find({ activeOnly: true })`).
179
+ * @returns {Promise<AgentPDAAccount[]>} Active agent accounts
180
+ * @since 1.3.0
181
+ */
182
+ async findActive() {
183
+ const result = await this.find({ activeOnly: true, limit: this.config.maxAccounts });
184
+ return result.agents;
185
+ }
186
+ /**
187
+ * @description Find agents by capability ID.
188
+ * @param {string} capabilityId - Capability to search for (e.g. `"jupiter:swap"`)
189
+ * @returns {Promise<AgentPDAAccount[]>} Agents with the given capability
190
+ * @since 1.3.0
191
+ */
192
+ async findByCapability(capabilityId) {
193
+ const result = await this.find({ capability: capabilityId, limit: this.config.maxAccounts });
194
+ return result.agents;
195
+ }
196
+ /**
197
+ * @description Find agents by protocol name.
198
+ * @param {string} protocol - Protocol name (e.g. `"jupiter"`, `"raydium"`)
199
+ * @returns {Promise<AgentPDAAccount[]>} Agents offering tools for the given protocol
200
+ * @since 1.3.0
201
+ */
202
+ async findByProtocol(protocol) {
203
+ const result = await this.find({ protocol, limit: this.config.maxAccounts });
204
+ return result.agents;
205
+ }
206
+ /**
207
+ * @description Find the cheapest agent for a given capability.
208
+ * @param {string} capabilityId - Capability to search for
209
+ * @returns {Promise<AgentPDAAccount | null>} Cheapest agent or null
210
+ * @since 1.3.0
211
+ */
212
+ async findCheapest(capabilityId) {
213
+ const result = await this.find({
214
+ capability: capabilityId,
215
+ sortBy: 'price',
216
+ sortDirection: 'asc',
217
+ limit: 1,
218
+ });
219
+ return result.agents[0] ?? null;
220
+ }
221
+ /**
222
+ * @description Find the most reputable agent for a given capability.
223
+ * @param {string} capabilityId - Capability to search for
224
+ * @returns {Promise<AgentPDAAccount | null>} Most reputable agent or null
225
+ * @since 1.3.0
226
+ */
227
+ async findMostReputable(capabilityId) {
228
+ const result = await this.find({
229
+ capability: capabilityId,
230
+ sortBy: 'reputation',
231
+ sortDirection: 'desc',
232
+ limit: 1,
233
+ });
234
+ return result.agents[0] ?? null;
235
+ }
236
+ /**
237
+ * @description Compute aggregate metrics across all registered agents.
238
+ *
239
+ * @returns {Promise<SAPAggregateMetrics>} Network-wide agent statistics
240
+ *
241
+ * @example
242
+ * ```ts
243
+ * const metrics = await discovery.getAggregateMetrics();
244
+ * console.log(`${metrics.activeAgents} active agents`);
245
+ * console.log(`${metrics.totalCallsServed} total calls served`);
246
+ * console.log(`Protocols: ${metrics.protocols.join(', ')}`);
247
+ * ```
248
+ *
249
+ * @since 1.3.0
250
+ */
251
+ async getAggregateMetrics() {
252
+ const agents = await this.fetchAllAccounts();
253
+ const protocols = new Set();
254
+ const capabilities = new Set();
255
+ let totalCalls = 0n;
256
+ let totalReputation = 0;
257
+ let totalLatency = 0;
258
+ let activeCount = 0;
259
+ for (const agent of agents) {
260
+ if (agent.isActive)
261
+ activeCount++;
262
+ totalCalls += agent.reputation.totalCallsServed;
263
+ totalReputation += agent.reputation.score;
264
+ totalLatency += agent.reputation.avgLatencyMs;
265
+ for (const cap of agent.capabilities) {
266
+ capabilities.add(cap.id);
267
+ if (cap.protocol)
268
+ protocols.add(cap.protocol);
269
+ }
270
+ }
271
+ return {
272
+ totalAgents: agents.length,
273
+ activeAgents: activeCount,
274
+ totalCallsServed: totalCalls,
275
+ avgReputation: agents.length > 0 ? Math.round(totalReputation / agents.length) : 0,
276
+ avgLatencyMs: agents.length > 0 ? Math.round(totalLatency / agents.length) : 0,
277
+ protocols: [...protocols],
278
+ capabilities: [...capabilities],
279
+ };
280
+ }
281
+ /* ── Internal ── */
282
+ /**
283
+ * @description Fetch all SAP accounts from the blockchain using getProgramAccounts.
284
+ * @returns {Promise<AgentPDAAccount[]>} All deserialized agent accounts
285
+ * @internal
286
+ */
287
+ async fetchAllAccounts() {
288
+ // memcmp filter: match the 8-byte discriminator at offset 0
289
+ const discriminatorBase64 = Buffer.from(types_1.SAP_ACCOUNT_DISCRIMINATOR).toString('base64');
290
+ const rpcResult = await this.transport.request('getProgramAccounts', [
291
+ this.config.programId,
292
+ {
293
+ encoding: 'base64',
294
+ commitment: this.config.commitment,
295
+ filters: [
296
+ { memcmp: { offset: 0, bytes: discriminatorBase64, encoding: 'base64' } },
297
+ ],
298
+ },
299
+ ]);
300
+ if (!Array.isArray(rpcResult))
301
+ return [];
302
+ const agents = [];
303
+ for (const entry of rpcResult) {
304
+ try {
305
+ const bytes = Buffer.from(entry.account.data[0], 'base64');
306
+ agents.push((0, pda_1.deserializeAgentAccount)(entry.pubkey, bytes));
307
+ }
308
+ catch {
309
+ // Skip malformed accounts
310
+ }
311
+ }
312
+ return agents;
313
+ }
314
+ }
315
+ exports.SAPDiscovery = SAPDiscovery;
316
+ //# sourceMappingURL=discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../../src/ai/sap/discovery.ts"],"names":[],"mappings":"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"}