@oobe-protocol-labs/synapse-sap-sdk 0.12.9 → 0.14.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 (640) hide show
  1. package/dist/cjs/accounts/index.js +286 -0
  2. package/dist/cjs/accounts/index.js.map +1 -0
  3. package/dist/cjs/client.js +108 -0
  4. package/dist/cjs/client.js.map +1 -0
  5. package/dist/cjs/constants.js +59 -0
  6. package/dist/cjs/constants.js.map +1 -0
  7. package/dist/cjs/errors.js +250 -0
  8. package/dist/cjs/errors.js.map +1 -0
  9. package/dist/cjs/events/index.js +38 -130
  10. package/dist/cjs/events/index.js.map +1 -1
  11. package/dist/cjs/idlTypes.js +4 -0
  12. package/dist/cjs/idlTypes.js.map +1 -0
  13. package/dist/cjs/index.js +75 -241
  14. package/dist/cjs/index.js.map +1 -1
  15. package/dist/cjs/instructions/agent.js +89 -0
  16. package/dist/cjs/instructions/agent.js.map +1 -0
  17. package/dist/cjs/instructions/attestation.js +112 -0
  18. package/dist/cjs/instructions/attestation.js.map +1 -0
  19. package/dist/cjs/instructions/digest.js +28 -0
  20. package/dist/cjs/instructions/digest.js.map +1 -0
  21. package/dist/cjs/instructions/dispute.js +116 -0
  22. package/dist/cjs/instructions/dispute.js.map +1 -0
  23. package/dist/cjs/instructions/escrow.js +101 -0
  24. package/dist/cjs/instructions/escrow.js.map +1 -0
  25. package/dist/cjs/instructions/global.js +28 -0
  26. package/dist/cjs/instructions/global.js.map +1 -0
  27. package/dist/cjs/instructions/index.js +31 -0
  28. package/dist/cjs/instructions/index.js.map +1 -0
  29. package/dist/cjs/instructions/indexing.js +221 -0
  30. package/dist/cjs/instructions/indexing.js.map +1 -0
  31. package/dist/cjs/instructions/misc.js +73 -0
  32. package/dist/cjs/instructions/misc.js.map +1 -0
  33. package/dist/cjs/instructions/session.js +89 -0
  34. package/dist/cjs/instructions/session.js.map +1 -0
  35. package/dist/cjs/instructions/staking.js +132 -0
  36. package/dist/cjs/instructions/staking.js.map +1 -0
  37. package/dist/cjs/instructions/subscription.js +80 -0
  38. package/dist/cjs/instructions/subscription.js.map +1 -0
  39. package/dist/cjs/instructions/tools.js +109 -0
  40. package/dist/cjs/instructions/tools.js.map +1 -0
  41. package/dist/cjs/instructions/vault.js +106 -0
  42. package/dist/cjs/instructions/vault.js.map +1 -0
  43. package/dist/cjs/pdas/index.js +120 -0
  44. package/dist/cjs/pdas/index.js.map +1 -0
  45. package/dist/cjs/types.js +42 -0
  46. package/dist/cjs/types.js.map +1 -0
  47. package/dist/cjs/utils/index.js +29 -75
  48. package/dist/cjs/utils/index.js.map +1 -1
  49. package/dist/cjs/utils/validate.js +236 -0
  50. package/dist/cjs/utils/validate.js.map +1 -0
  51. package/dist/esm/accounts/index.d.ts +11 -0
  52. package/dist/esm/accounts/index.d.ts.map +1 -0
  53. package/dist/esm/accounts/index.js +273 -0
  54. package/dist/esm/accounts/index.js.map +1 -0
  55. package/dist/esm/client.d.ts +55 -0
  56. package/dist/esm/client.d.ts.map +1 -0
  57. package/dist/esm/client.js +70 -0
  58. package/dist/esm/client.js.map +1 -0
  59. package/dist/esm/constants.d.ts +52 -0
  60. package/dist/esm/constants.d.ts.map +1 -0
  61. package/dist/esm/constants.js +56 -0
  62. package/dist/esm/constants.js.map +1 -0
  63. package/dist/esm/errors.d.ts +111 -0
  64. package/dist/esm/errors.d.ts.map +1 -0
  65. package/dist/esm/errors.js +244 -0
  66. package/dist/esm/errors.js.map +1 -0
  67. package/dist/esm/events/index.d.ts +13 -0
  68. package/dist/esm/events/index.d.ts.map +1 -0
  69. package/dist/esm/events/index.js +36 -128
  70. package/dist/esm/events/index.js.map +1 -1
  71. package/dist/esm/idlTypes.d.ts +925 -0
  72. package/dist/esm/idlTypes.d.ts.map +1 -0
  73. package/dist/esm/idlTypes.js +3 -0
  74. package/dist/esm/idlTypes.js.map +1 -0
  75. package/dist/esm/index.d.ts +12 -0
  76. package/dist/esm/index.d.ts.map +1 -0
  77. package/dist/esm/index.js +15 -88
  78. package/dist/esm/index.js.map +1 -1
  79. package/dist/esm/instructions/agent.d.ts +71 -0
  80. package/dist/esm/instructions/agent.d.ts.map +1 -0
  81. package/dist/esm/instructions/agent.js +85 -0
  82. package/dist/esm/instructions/agent.js.map +1 -0
  83. package/dist/esm/instructions/attestation.d.ts +76 -0
  84. package/dist/esm/instructions/attestation.d.ts.map +1 -0
  85. package/dist/esm/instructions/attestation.js +108 -0
  86. package/dist/esm/instructions/attestation.js.map +1 -0
  87. package/dist/esm/instructions/digest.d.ts +20 -0
  88. package/dist/esm/instructions/digest.d.ts.map +1 -0
  89. package/dist/esm/instructions/digest.js +24 -0
  90. package/dist/esm/instructions/digest.js.map +1 -0
  91. package/dist/esm/instructions/dispute.d.ts +81 -0
  92. package/dist/esm/instructions/dispute.d.ts.map +1 -0
  93. package/dist/esm/instructions/dispute.js +112 -0
  94. package/dist/esm/instructions/dispute.js.map +1 -0
  95. package/dist/esm/instructions/escrow.d.ts +79 -0
  96. package/dist/esm/instructions/escrow.d.ts.map +1 -0
  97. package/dist/esm/instructions/escrow.js +97 -0
  98. package/dist/esm/instructions/escrow.js.map +1 -0
  99. package/dist/esm/instructions/global.d.ts +14 -0
  100. package/dist/esm/instructions/global.d.ts.map +1 -0
  101. package/dist/esm/instructions/global.js +24 -0
  102. package/dist/esm/instructions/global.js.map +1 -0
  103. package/dist/esm/instructions/index.d.ts +14 -0
  104. package/dist/esm/instructions/index.d.ts.map +1 -0
  105. package/dist/esm/instructions/index.js +15 -0
  106. package/dist/esm/instructions/index.js.map +1 -0
  107. package/dist/esm/instructions/indexing.d.ts +150 -0
  108. package/dist/esm/instructions/indexing.d.ts.map +1 -0
  109. package/dist/esm/instructions/indexing.js +217 -0
  110. package/dist/esm/instructions/indexing.js.map +1 -0
  111. package/dist/esm/instructions/memory.d.ts +8 -0
  112. package/dist/esm/instructions/memory.d.ts.map +1 -0
  113. package/dist/esm/instructions/memory.js +234 -0
  114. package/dist/esm/instructions/memory.js.map +1 -0
  115. package/dist/esm/instructions/misc.d.ts +50 -0
  116. package/dist/esm/instructions/misc.d.ts.map +1 -0
  117. package/dist/esm/instructions/misc.js +69 -0
  118. package/dist/esm/instructions/misc.js.map +1 -0
  119. package/dist/esm/instructions/session.d.ts +57 -0
  120. package/dist/esm/instructions/session.d.ts.map +1 -0
  121. package/dist/esm/instructions/session.js +85 -0
  122. package/dist/esm/instructions/session.js.map +1 -0
  123. package/dist/esm/instructions/staking.d.ts +85 -0
  124. package/dist/esm/instructions/staking.d.ts.map +1 -0
  125. package/dist/esm/instructions/staking.js +128 -0
  126. package/dist/esm/instructions/staking.js.map +1 -0
  127. package/dist/esm/instructions/subscription.d.ts +50 -0
  128. package/dist/esm/instructions/subscription.d.ts.map +1 -0
  129. package/dist/esm/instructions/subscription.js +76 -0
  130. package/dist/esm/instructions/subscription.js.map +1 -0
  131. package/dist/esm/instructions/tools.d.ts +88 -0
  132. package/dist/esm/instructions/tools.d.ts.map +1 -0
  133. package/dist/esm/instructions/tools.js +105 -0
  134. package/dist/esm/instructions/tools.js.map +1 -0
  135. package/dist/esm/instructions/vault.d.ts +84 -0
  136. package/dist/esm/instructions/vault.d.ts.map +1 -0
  137. package/dist/esm/instructions/vault.js +102 -0
  138. package/dist/esm/instructions/vault.js.map +1 -0
  139. package/dist/esm/pdas/index.d.ts +37 -0
  140. package/dist/esm/pdas/index.d.ts.map +1 -0
  141. package/dist/esm/pdas/index.js +101 -0
  142. package/dist/esm/pdas/index.js.map +1 -0
  143. package/dist/esm/types.d.ts +208 -0
  144. package/dist/esm/types.d.ts.map +1 -0
  145. package/dist/esm/types.js +39 -0
  146. package/dist/esm/types.js.map +1 -0
  147. package/dist/esm/utils/index.d.ts +4 -0
  148. package/dist/esm/utils/index.d.ts.map +1 -0
  149. package/dist/esm/utils/index.js +13 -29
  150. package/dist/esm/utils/index.js.map +1 -1
  151. package/dist/esm/utils/validate.d.ts +66 -0
  152. package/dist/esm/utils/validate.d.ts.map +1 -0
  153. package/dist/esm/utils/validate.js +221 -0
  154. package/dist/esm/utils/validate.js.map +1 -0
  155. package/package.json +59 -183
  156. package/LICENSE +0 -21
  157. package/README.md +0 -986
  158. package/dist/cjs/constants/addresses.js +0 -143
  159. package/dist/cjs/constants/addresses.js.map +0 -1
  160. package/dist/cjs/constants/index.js +0 -64
  161. package/dist/cjs/constants/index.js.map +0 -1
  162. package/dist/cjs/constants/limits.js +0 -161
  163. package/dist/cjs/constants/limits.js.map +0 -1
  164. package/dist/cjs/constants/network.js +0 -81
  165. package/dist/cjs/constants/network.js.map +0 -1
  166. package/dist/cjs/constants/payments.js +0 -137
  167. package/dist/cjs/constants/payments.js.map +0 -1
  168. package/dist/cjs/constants/programs.js +0 -78
  169. package/dist/cjs/constants/programs.js.map +0 -1
  170. package/dist/cjs/constants/seeds.js +0 -76
  171. package/dist/cjs/constants/seeds.js.map +0 -1
  172. package/dist/cjs/core/client.js +0 -546
  173. package/dist/cjs/core/client.js.map +0 -1
  174. package/dist/cjs/core/connection.js +0 -350
  175. package/dist/cjs/core/connection.js.map +0 -1
  176. package/dist/cjs/core/index.js +0 -25
  177. package/dist/cjs/core/index.js.map +0 -1
  178. package/dist/cjs/errors/index.js +0 -334
  179. package/dist/cjs/errors/index.js.map +0 -1
  180. package/dist/cjs/events/geyser.js +0 -295
  181. package/dist/cjs/events/geyser.js.map +0 -1
  182. package/dist/cjs/idl/index.js +0 -63
  183. package/dist/cjs/idl/index.js.map +0 -1
  184. package/dist/cjs/idl/synapse_agent_sap.json +0 -14595
  185. package/dist/cjs/modules/agent.js +0 -272
  186. package/dist/cjs/modules/agent.js.map +0 -1
  187. package/dist/cjs/modules/attestation.js +0 -147
  188. package/dist/cjs/modules/attestation.js.map +0 -1
  189. package/dist/cjs/modules/base.js +0 -128
  190. package/dist/cjs/modules/base.js.map +0 -1
  191. package/dist/cjs/modules/escrow-v2.js +0 -454
  192. package/dist/cjs/modules/escrow-v2.js.map +0 -1
  193. package/dist/cjs/modules/escrow.js +0 -300
  194. package/dist/cjs/modules/escrow.js.map +0 -1
  195. package/dist/cjs/modules/feedback.js +0 -166
  196. package/dist/cjs/modules/feedback.js.map +0 -1
  197. package/dist/cjs/modules/index.js +0 -43
  198. package/dist/cjs/modules/index.js.map +0 -1
  199. package/dist/cjs/modules/indexing.js +0 -375
  200. package/dist/cjs/modules/indexing.js.map +0 -1
  201. package/dist/cjs/modules/ledger.js +0 -234
  202. package/dist/cjs/modules/ledger.js.map +0 -1
  203. package/dist/cjs/modules/receipt.js +0 -148
  204. package/dist/cjs/modules/receipt.js.map +0 -1
  205. package/dist/cjs/modules/staking.js +0 -124
  206. package/dist/cjs/modules/staking.js.map +0 -1
  207. package/dist/cjs/modules/subscription.js +0 -96
  208. package/dist/cjs/modules/subscription.js.map +0 -1
  209. package/dist/cjs/modules/tools.js +0 -319
  210. package/dist/cjs/modules/tools.js.map +0 -1
  211. package/dist/cjs/modules/vault.js +0 -410
  212. package/dist/cjs/modules/vault.js.map +0 -1
  213. package/dist/cjs/parser/client.js +0 -146
  214. package/dist/cjs/parser/client.js.map +0 -1
  215. package/dist/cjs/parser/complete.js +0 -177
  216. package/dist/cjs/parser/complete.js.map +0 -1
  217. package/dist/cjs/parser/index.js +0 -57
  218. package/dist/cjs/parser/index.js.map +0 -1
  219. package/dist/cjs/parser/inner.js +0 -185
  220. package/dist/cjs/parser/inner.js.map +0 -1
  221. package/dist/cjs/parser/instructions.js +0 -114
  222. package/dist/cjs/parser/instructions.js.map +0 -1
  223. package/dist/cjs/parser/transaction.js +0 -153
  224. package/dist/cjs/parser/transaction.js.map +0 -1
  225. package/dist/cjs/parser/types.js +0 -14
  226. package/dist/cjs/parser/types.js.map +0 -1
  227. package/dist/cjs/pda/index.js +0 -672
  228. package/dist/cjs/pda/index.js.map +0 -1
  229. package/dist/cjs/plugin/index.js +0 -952
  230. package/dist/cjs/plugin/index.js.map +0 -1
  231. package/dist/cjs/plugin/protocols.js +0 -282
  232. package/dist/cjs/plugin/protocols.js.map +0 -1
  233. package/dist/cjs/plugin/schemas.js +0 -863
  234. package/dist/cjs/plugin/schemas.js.map +0 -1
  235. package/dist/cjs/postgres/adapter.js +0 -715
  236. package/dist/cjs/postgres/adapter.js.map +0 -1
  237. package/dist/cjs/postgres/index.js +0 -50
  238. package/dist/cjs/postgres/index.js.map +0 -1
  239. package/dist/cjs/postgres/serializers.js +0 -381
  240. package/dist/cjs/postgres/serializers.js.map +0 -1
  241. package/dist/cjs/postgres/sync.js +0 -289
  242. package/dist/cjs/postgres/sync.js.map +0 -1
  243. package/dist/cjs/postgres/types.js +0 -44
  244. package/dist/cjs/postgres/types.js.map +0 -1
  245. package/dist/cjs/registries/builder.js +0 -414
  246. package/dist/cjs/registries/builder.js.map +0 -1
  247. package/dist/cjs/registries/discovery.js +0 -362
  248. package/dist/cjs/registries/discovery.js.map +0 -1
  249. package/dist/cjs/registries/fairscale.js +0 -639
  250. package/dist/cjs/registries/fairscale.js.map +0 -1
  251. package/dist/cjs/registries/index.js +0 -58
  252. package/dist/cjs/registries/index.js.map +0 -1
  253. package/dist/cjs/registries/metaplex-bridge.js +0 -743
  254. package/dist/cjs/registries/metaplex-bridge.js.map +0 -1
  255. package/dist/cjs/registries/session.js +0 -433
  256. package/dist/cjs/registries/session.js.map +0 -1
  257. package/dist/cjs/registries/x402.js +0 -668
  258. package/dist/cjs/registries/x402.js.map +0 -1
  259. package/dist/cjs/types/accounts.js +0 -13
  260. package/dist/cjs/types/accounts.js.map +0 -1
  261. package/dist/cjs/types/common.js +0 -13
  262. package/dist/cjs/types/common.js.map +0 -1
  263. package/dist/cjs/types/endpoint.js +0 -15
  264. package/dist/cjs/types/endpoint.js.map +0 -1
  265. package/dist/cjs/types/enums.js +0 -269
  266. package/dist/cjs/types/enums.js.map +0 -1
  267. package/dist/cjs/types/index.js +0 -41
  268. package/dist/cjs/types/index.js.map +0 -1
  269. package/dist/cjs/types/instructions.js +0 -92
  270. package/dist/cjs/types/instructions.js.map +0 -1
  271. package/dist/cjs/utils/endpoint-validator.js +0 -232
  272. package/dist/cjs/utils/endpoint-validator.js.map +0 -1
  273. package/dist/cjs/utils/escrow-validation.js +0 -219
  274. package/dist/cjs/utils/escrow-validation.js.map +0 -1
  275. package/dist/cjs/utils/hash.js +0 -109
  276. package/dist/cjs/utils/hash.js.map +0 -1
  277. package/dist/cjs/utils/merchant-validator.js +0 -246
  278. package/dist/cjs/utils/merchant-validator.js.map +0 -1
  279. package/dist/cjs/utils/network-normalizer.js +0 -236
  280. package/dist/cjs/utils/network-normalizer.js.map +0 -1
  281. package/dist/cjs/utils/priority-fee.js +0 -215
  282. package/dist/cjs/utils/priority-fee.js.map +0 -1
  283. package/dist/cjs/utils/rpc-strategy.js +0 -239
  284. package/dist/cjs/utils/rpc-strategy.js.map +0 -1
  285. package/dist/cjs/utils/schemas.js +0 -331
  286. package/dist/cjs/utils/schemas.js.map +0 -1
  287. package/dist/cjs/utils/serialization.js +0 -105
  288. package/dist/cjs/utils/serialization.js.map +0 -1
  289. package/dist/cjs/utils/validation.js +0 -36
  290. package/dist/cjs/utils/validation.js.map +0 -1
  291. package/dist/cjs/utils/x402-direct.js +0 -231
  292. package/dist/cjs/utils/x402-direct.js.map +0 -1
  293. package/dist/esm/constants/addresses.js +0 -140
  294. package/dist/esm/constants/addresses.js.map +0 -1
  295. package/dist/esm/constants/index.js +0 -35
  296. package/dist/esm/constants/index.js.map +0 -1
  297. package/dist/esm/constants/limits.js +0 -158
  298. package/dist/esm/constants/limits.js.map +0 -1
  299. package/dist/esm/constants/network.js +0 -78
  300. package/dist/esm/constants/network.js.map +0 -1
  301. package/dist/esm/constants/payments.js +0 -131
  302. package/dist/esm/constants/payments.js.map +0 -1
  303. package/dist/esm/constants/programs.js +0 -75
  304. package/dist/esm/constants/programs.js.map +0 -1
  305. package/dist/esm/constants/seeds.js +0 -73
  306. package/dist/esm/constants/seeds.js.map +0 -1
  307. package/dist/esm/core/client.js +0 -539
  308. package/dist/esm/core/client.js.map +0 -1
  309. package/dist/esm/core/connection.js +0 -345
  310. package/dist/esm/core/connection.js.map +0 -1
  311. package/dist/esm/core/index.js +0 -19
  312. package/dist/esm/core/index.js.map +0 -1
  313. package/dist/esm/errors/index.js +0 -325
  314. package/dist/esm/errors/index.js.map +0 -1
  315. package/dist/esm/events/geyser.js +0 -258
  316. package/dist/esm/events/geyser.js.map +0 -1
  317. package/dist/esm/idl/index.js +0 -57
  318. package/dist/esm/idl/index.js.map +0 -1
  319. package/dist/esm/idl/synapse_agent_sap.json +0 -14595
  320. package/dist/esm/modules/agent.js +0 -268
  321. package/dist/esm/modules/agent.js.map +0 -1
  322. package/dist/esm/modules/attestation.js +0 -143
  323. package/dist/esm/modules/attestation.js.map +0 -1
  324. package/dist/esm/modules/base.js +0 -124
  325. package/dist/esm/modules/base.js.map +0 -1
  326. package/dist/esm/modules/escrow-v2.js +0 -450
  327. package/dist/esm/modules/escrow-v2.js.map +0 -1
  328. package/dist/esm/modules/escrow.js +0 -296
  329. package/dist/esm/modules/escrow.js.map +0 -1
  330. package/dist/esm/modules/feedback.js +0 -162
  331. package/dist/esm/modules/feedback.js.map +0 -1
  332. package/dist/esm/modules/index.js +0 -27
  333. package/dist/esm/modules/index.js.map +0 -1
  334. package/dist/esm/modules/indexing.js +0 -371
  335. package/dist/esm/modules/indexing.js.map +0 -1
  336. package/dist/esm/modules/ledger.js +0 -230
  337. package/dist/esm/modules/ledger.js.map +0 -1
  338. package/dist/esm/modules/receipt.js +0 -144
  339. package/dist/esm/modules/receipt.js.map +0 -1
  340. package/dist/esm/modules/staking.js +0 -120
  341. package/dist/esm/modules/staking.js.map +0 -1
  342. package/dist/esm/modules/subscription.js +0 -92
  343. package/dist/esm/modules/subscription.js.map +0 -1
  344. package/dist/esm/modules/tools.js +0 -315
  345. package/dist/esm/modules/tools.js.map +0 -1
  346. package/dist/esm/modules/vault.js +0 -406
  347. package/dist/esm/modules/vault.js.map +0 -1
  348. package/dist/esm/parser/client.js +0 -142
  349. package/dist/esm/parser/client.js.map +0 -1
  350. package/dist/esm/parser/complete.js +0 -173
  351. package/dist/esm/parser/complete.js.map +0 -1
  352. package/dist/esm/parser/index.js +0 -43
  353. package/dist/esm/parser/index.js.map +0 -1
  354. package/dist/esm/parser/inner.js +0 -180
  355. package/dist/esm/parser/inner.js.map +0 -1
  356. package/dist/esm/parser/instructions.js +0 -109
  357. package/dist/esm/parser/instructions.js.map +0 -1
  358. package/dist/esm/parser/transaction.js +0 -149
  359. package/dist/esm/parser/transaction.js.map +0 -1
  360. package/dist/esm/parser/types.js +0 -13
  361. package/dist/esm/parser/types.js.map +0 -1
  362. package/dist/esm/pda/index.js +0 -638
  363. package/dist/esm/pda/index.js.map +0 -1
  364. package/dist/esm/plugin/index.js +0 -945
  365. package/dist/esm/plugin/index.js.map +0 -1
  366. package/dist/esm/plugin/protocols.js +0 -279
  367. package/dist/esm/plugin/protocols.js.map +0 -1
  368. package/dist/esm/plugin/schemas.js +0 -860
  369. package/dist/esm/plugin/schemas.js.map +0 -1
  370. package/dist/esm/postgres/adapter.js +0 -678
  371. package/dist/esm/postgres/adapter.js.map +0 -1
  372. package/dist/esm/postgres/index.js +0 -27
  373. package/dist/esm/postgres/index.js.map +0 -1
  374. package/dist/esm/postgres/serializers.js +0 -362
  375. package/dist/esm/postgres/serializers.js.map +0 -1
  376. package/dist/esm/postgres/sync.js +0 -285
  377. package/dist/esm/postgres/sync.js.map +0 -1
  378. package/dist/esm/postgres/types.js +0 -41
  379. package/dist/esm/postgres/types.js.map +0 -1
  380. package/dist/esm/registries/builder.js +0 -410
  381. package/dist/esm/registries/builder.js.map +0 -1
  382. package/dist/esm/registries/discovery.js +0 -358
  383. package/dist/esm/registries/discovery.js.map +0 -1
  384. package/dist/esm/registries/fairscale.js +0 -633
  385. package/dist/esm/registries/fairscale.js.map +0 -1
  386. package/dist/esm/registries/index.js +0 -46
  387. package/dist/esm/registries/index.js.map +0 -1
  388. package/dist/esm/registries/metaplex-bridge.js +0 -706
  389. package/dist/esm/registries/metaplex-bridge.js.map +0 -1
  390. package/dist/esm/registries/session.js +0 -429
  391. package/dist/esm/registries/session.js.map +0 -1
  392. package/dist/esm/registries/x402.js +0 -664
  393. package/dist/esm/registries/x402.js.map +0 -1
  394. package/dist/esm/types/accounts.js +0 -12
  395. package/dist/esm/types/accounts.js.map +0 -1
  396. package/dist/esm/types/common.js +0 -12
  397. package/dist/esm/types/common.js.map +0 -1
  398. package/dist/esm/types/endpoint.js +0 -14
  399. package/dist/esm/types/endpoint.js.map +0 -1
  400. package/dist/esm/types/enums.js +0 -266
  401. package/dist/esm/types/enums.js.map +0 -1
  402. package/dist/esm/types/index.js +0 -25
  403. package/dist/esm/types/index.js.map +0 -1
  404. package/dist/esm/types/instructions.js +0 -89
  405. package/dist/esm/types/instructions.js.map +0 -1
  406. package/dist/esm/utils/endpoint-validator.js +0 -226
  407. package/dist/esm/utils/endpoint-validator.js.map +0 -1
  408. package/dist/esm/utils/escrow-validation.js +0 -212
  409. package/dist/esm/utils/escrow-validation.js.map +0 -1
  410. package/dist/esm/utils/hash.js +0 -103
  411. package/dist/esm/utils/hash.js.map +0 -1
  412. package/dist/esm/utils/merchant-validator.js +0 -241
  413. package/dist/esm/utils/merchant-validator.js.map +0 -1
  414. package/dist/esm/utils/network-normalizer.js +0 -229
  415. package/dist/esm/utils/network-normalizer.js.map +0 -1
  416. package/dist/esm/utils/priority-fee.js +0 -209
  417. package/dist/esm/utils/priority-fee.js.map +0 -1
  418. package/dist/esm/utils/rpc-strategy.js +0 -231
  419. package/dist/esm/utils/rpc-strategy.js.map +0 -1
  420. package/dist/esm/utils/schemas.js +0 -320
  421. package/dist/esm/utils/schemas.js.map +0 -1
  422. package/dist/esm/utils/serialization.js +0 -98
  423. package/dist/esm/utils/serialization.js.map +0 -1
  424. package/dist/esm/utils/validation.js +0 -33
  425. package/dist/esm/utils/validation.js.map +0 -1
  426. package/dist/esm/utils/x402-direct.js +0 -228
  427. package/dist/esm/utils/x402-direct.js.map +0 -1
  428. package/dist/types/constants/addresses.d.ts +0 -117
  429. package/dist/types/constants/addresses.d.ts.map +0 -1
  430. package/dist/types/constants/index.d.ts +0 -31
  431. package/dist/types/constants/index.d.ts.map +0 -1
  432. package/dist/types/constants/limits.d.ts +0 -149
  433. package/dist/types/constants/limits.d.ts.map +0 -1
  434. package/dist/types/constants/network.d.ts +0 -81
  435. package/dist/types/constants/network.d.ts.map +0 -1
  436. package/dist/types/constants/payments.d.ts +0 -121
  437. package/dist/types/constants/payments.d.ts.map +0 -1
  438. package/dist/types/constants/programs.d.ts +0 -69
  439. package/dist/types/constants/programs.d.ts.map +0 -1
  440. package/dist/types/constants/seeds.d.ts +0 -80
  441. package/dist/types/constants/seeds.d.ts.map +0 -1
  442. package/dist/types/core/client.d.ts +0 -452
  443. package/dist/types/core/client.d.ts.map +0 -1
  444. package/dist/types/core/connection.d.ts +0 -305
  445. package/dist/types/core/connection.d.ts.map +0 -1
  446. package/dist/types/core/index.d.ts +0 -20
  447. package/dist/types/core/index.d.ts.map +0 -1
  448. package/dist/types/errors/index.d.ts +0 -276
  449. package/dist/types/errors/index.d.ts.map +0 -1
  450. package/dist/types/events/geyser.d.ts +0 -150
  451. package/dist/types/events/geyser.d.ts.map +0 -1
  452. package/dist/types/events/index.d.ts +0 -248
  453. package/dist/types/events/index.d.ts.map +0 -1
  454. package/dist/types/idl/index.d.ts +0 -70
  455. package/dist/types/idl/index.d.ts.map +0 -1
  456. package/dist/types/index.d.ts +0 -85
  457. package/dist/types/index.d.ts.map +0 -1
  458. package/dist/types/modules/agent.d.ts +0 -166
  459. package/dist/types/modules/agent.d.ts.map +0 -1
  460. package/dist/types/modules/attestation.d.ts +0 -96
  461. package/dist/types/modules/attestation.d.ts.map +0 -1
  462. package/dist/types/modules/base.d.ts +0 -126
  463. package/dist/types/modules/base.d.ts.map +0 -1
  464. package/dist/types/modules/escrow-v2.d.ts +0 -100
  465. package/dist/types/modules/escrow-v2.d.ts.map +0 -1
  466. package/dist/types/modules/escrow.d.ts +0 -168
  467. package/dist/types/modules/escrow.d.ts.map +0 -1
  468. package/dist/types/modules/feedback.d.ts +0 -105
  469. package/dist/types/modules/feedback.d.ts.map +0 -1
  470. package/dist/types/modules/index.d.ts +0 -28
  471. package/dist/types/modules/index.d.ts.map +0 -1
  472. package/dist/types/modules/indexing.d.ts +0 -200
  473. package/dist/types/modules/indexing.d.ts.map +0 -1
  474. package/dist/types/modules/ledger.d.ts +0 -150
  475. package/dist/types/modules/ledger.d.ts.map +0 -1
  476. package/dist/types/modules/receipt.d.ts +0 -77
  477. package/dist/types/modules/receipt.d.ts.map +0 -1
  478. package/dist/types/modules/staking.d.ts +0 -51
  479. package/dist/types/modules/staking.d.ts.map +0 -1
  480. package/dist/types/modules/subscription.d.ts +0 -33
  481. package/dist/types/modules/subscription.d.ts.map +0 -1
  482. package/dist/types/modules/tools.d.ts +0 -182
  483. package/dist/types/modules/tools.d.ts.map +0 -1
  484. package/dist/types/modules/vault.d.ts +0 -240
  485. package/dist/types/modules/vault.d.ts.map +0 -1
  486. package/dist/types/parser/client.d.ts +0 -123
  487. package/dist/types/parser/client.d.ts.map +0 -1
  488. package/dist/types/parser/complete.d.ts +0 -90
  489. package/dist/types/parser/complete.d.ts.map +0 -1
  490. package/dist/types/parser/index.d.ts +0 -40
  491. package/dist/types/parser/index.d.ts.map +0 -1
  492. package/dist/types/parser/inner.d.ts +0 -114
  493. package/dist/types/parser/inner.d.ts.map +0 -1
  494. package/dist/types/parser/instructions.d.ts +0 -76
  495. package/dist/types/parser/instructions.d.ts.map +0 -1
  496. package/dist/types/parser/transaction.d.ts +0 -77
  497. package/dist/types/parser/transaction.d.ts.map +0 -1
  498. package/dist/types/parser/types.d.ts +0 -154
  499. package/dist/types/parser/types.d.ts.map +0 -1
  500. package/dist/types/pda/index.d.ts +0 -510
  501. package/dist/types/pda/index.d.ts.map +0 -1
  502. package/dist/types/plugin/index.d.ts +0 -171
  503. package/dist/types/plugin/index.d.ts.map +0 -1
  504. package/dist/types/plugin/protocols.d.ts +0 -152
  505. package/dist/types/plugin/protocols.d.ts.map +0 -1
  506. package/dist/types/plugin/schemas.d.ts +0 -829
  507. package/dist/types/plugin/schemas.d.ts.map +0 -1
  508. package/dist/types/postgres/adapter.d.ts +0 -355
  509. package/dist/types/postgres/adapter.d.ts.map +0 -1
  510. package/dist/types/postgres/index.d.ts +0 -24
  511. package/dist/types/postgres/index.d.ts.map +0 -1
  512. package/dist/types/postgres/serializers.d.ts +0 -30
  513. package/dist/types/postgres/serializers.d.ts.map +0 -1
  514. package/dist/types/postgres/sync.d.ts +0 -156
  515. package/dist/types/postgres/sync.d.ts.map +0 -1
  516. package/dist/types/postgres/types.d.ts +0 -167
  517. package/dist/types/postgres/types.d.ts.map +0 -1
  518. package/dist/types/registries/builder.d.ts +0 -340
  519. package/dist/types/registries/builder.d.ts.map +0 -1
  520. package/dist/types/registries/discovery.d.ts +0 -333
  521. package/dist/types/registries/discovery.d.ts.map +0 -1
  522. package/dist/types/registries/fairscale.d.ts +0 -680
  523. package/dist/types/registries/fairscale.d.ts.map +0 -1
  524. package/dist/types/registries/index.d.ts +0 -52
  525. package/dist/types/registries/index.d.ts.map +0 -1
  526. package/dist/types/registries/metaplex-bridge.d.ts +0 -488
  527. package/dist/types/registries/metaplex-bridge.d.ts.map +0 -1
  528. package/dist/types/registries/session.d.ts +0 -323
  529. package/dist/types/registries/session.d.ts.map +0 -1
  530. package/dist/types/registries/x402.d.ts +0 -530
  531. package/dist/types/registries/x402.d.ts.map +0 -1
  532. package/dist/types/types/accounts.d.ts +0 -765
  533. package/dist/types/types/accounts.d.ts.map +0 -1
  534. package/dist/types/types/common.d.ts +0 -166
  535. package/dist/types/types/common.d.ts.map +0 -1
  536. package/dist/types/types/endpoint.d.ts +0 -161
  537. package/dist/types/types/endpoint.d.ts.map +0 -1
  538. package/dist/types/types/enums.d.ts +0 -353
  539. package/dist/types/types/enums.d.ts.map +0 -1
  540. package/dist/types/types/index.d.ts +0 -29
  541. package/dist/types/types/index.d.ts.map +0 -1
  542. package/dist/types/types/instructions.d.ts +0 -400
  543. package/dist/types/types/instructions.d.ts.map +0 -1
  544. package/dist/types/utils/endpoint-validator.d.ts +0 -110
  545. package/dist/types/utils/endpoint-validator.d.ts.map +0 -1
  546. package/dist/types/utils/escrow-validation.d.ts +0 -145
  547. package/dist/types/utils/escrow-validation.d.ts.map +0 -1
  548. package/dist/types/utils/hash.d.ts +0 -75
  549. package/dist/types/utils/hash.d.ts.map +0 -1
  550. package/dist/types/utils/index.d.ts +0 -33
  551. package/dist/types/utils/index.d.ts.map +0 -1
  552. package/dist/types/utils/merchant-validator.d.ts +0 -176
  553. package/dist/types/utils/merchant-validator.d.ts.map +0 -1
  554. package/dist/types/utils/network-normalizer.d.ts +0 -120
  555. package/dist/types/utils/network-normalizer.d.ts.map +0 -1
  556. package/dist/types/utils/priority-fee.d.ts +0 -205
  557. package/dist/types/utils/priority-fee.d.ts.map +0 -1
  558. package/dist/types/utils/rpc-strategy.d.ts +0 -172
  559. package/dist/types/utils/rpc-strategy.d.ts.map +0 -1
  560. package/dist/types/utils/schemas.d.ts +0 -351
  561. package/dist/types/utils/schemas.d.ts.map +0 -1
  562. package/dist/types/utils/serialization.d.ts +0 -69
  563. package/dist/types/utils/serialization.d.ts.map +0 -1
  564. package/dist/types/utils/validation.d.ts +0 -29
  565. package/dist/types/utils/validation.d.ts.map +0 -1
  566. package/dist/types/utils/x402-direct.d.ts +0 -114
  567. package/dist/types/utils/x402-direct.d.ts.map +0 -1
  568. package/src/constants/addresses.ts +0 -162
  569. package/src/constants/index.ts +0 -69
  570. package/src/constants/limits.ts +0 -165
  571. package/src/constants/network.ts +0 -89
  572. package/src/constants/payments.ts +0 -145
  573. package/src/constants/programs.ts +0 -83
  574. package/src/constants/seeds.ts +0 -85
  575. package/src/core/client.ts +0 -583
  576. package/src/core/connection.ts +0 -461
  577. package/src/core/index.ts +0 -20
  578. package/src/errors/index.ts +0 -346
  579. package/src/events/geyser.ts +0 -384
  580. package/src/events/index.ts +0 -335
  581. package/src/events/yellowstone.d.ts +0 -7
  582. package/src/idl/index.ts +0 -76
  583. package/src/idl/synapse_agent_sap.json +0 -14595
  584. package/src/index.ts +0 -421
  585. package/src/modules/agent.ts +0 -319
  586. package/src/modules/attestation.ts +0 -168
  587. package/src/modules/base.ts +0 -158
  588. package/src/modules/escrow-v2.ts +0 -658
  589. package/src/modules/escrow.ts +0 -383
  590. package/src/modules/feedback.ts +0 -186
  591. package/src/modules/index.ts +0 -28
  592. package/src/modules/indexing.ts +0 -444
  593. package/src/modules/ledger.ts +0 -262
  594. package/src/modules/receipt.ts +0 -212
  595. package/src/modules/staking.ts +0 -157
  596. package/src/modules/subscription.ts +0 -147
  597. package/src/modules/tools.ts +0 -411
  598. package/src/modules/vault.ts +0 -533
  599. package/src/parser/client.ts +0 -211
  600. package/src/parser/complete.ts +0 -232
  601. package/src/parser/index.ts +0 -71
  602. package/src/parser/inner.ts +0 -255
  603. package/src/parser/instructions.ts +0 -135
  604. package/src/parser/transaction.ts +0 -200
  605. package/src/parser/types.ts +0 -182
  606. package/src/pda/index.ts +0 -919
  607. package/src/plugin/index.ts +0 -1224
  608. package/src/plugin/protocols.ts +0 -404
  609. package/src/plugin/schemas.ts +0 -941
  610. package/src/postgres/adapter.ts +0 -904
  611. package/src/postgres/index.ts +0 -59
  612. package/src/postgres/schema.sql +0 -683
  613. package/src/postgres/serializers.ts +0 -485
  614. package/src/postgres/sync.ts +0 -340
  615. package/src/postgres/types.ts +0 -245
  616. package/src/registries/builder.ts +0 -607
  617. package/src/registries/discovery.ts +0 -572
  618. package/src/registries/fairscale.ts +0 -1278
  619. package/src/registries/index.ts +0 -143
  620. package/src/registries/metaplex-bridge.ts +0 -1199
  621. package/src/registries/session.ts +0 -613
  622. package/src/registries/x402.ts +0 -1048
  623. package/src/types/accounts.ts +0 -858
  624. package/src/types/common.ts +0 -187
  625. package/src/types/endpoint.ts +0 -181
  626. package/src/types/enums.ts +0 -333
  627. package/src/types/index.ts +0 -121
  628. package/src/types/instructions.ts +0 -453
  629. package/src/utils/endpoint-validator.ts +0 -300
  630. package/src/utils/escrow-validation.ts +0 -301
  631. package/src/utils/hash.ts +0 -113
  632. package/src/utils/index.ts +0 -102
  633. package/src/utils/merchant-validator.ts +0 -359
  634. package/src/utils/network-normalizer.ts +0 -240
  635. package/src/utils/priority-fee.ts +0 -325
  636. package/src/utils/rpc-strategy.ts +0 -322
  637. package/src/utils/schemas.ts +0 -359
  638. package/src/utils/serialization.ts +0 -98
  639. package/src/utils/validation.ts +0 -36
  640. package/src/utils/x402-direct.ts +0 -370
@@ -1,319 +0,0 @@
1
- /**
2
- * @module agent
3
- * @description Agent lifecycle operations for the Synapse Agent Protocol.
4
- *
5
- * Covers: register, update, deactivate, reactivate, close,
6
- * report calls, update reputation metrics, and account fetching.
7
- *
8
- * @category Modules
9
- * @since v0.1.0
10
- * @packageDocumentation
11
- */
12
-
13
- import { SystemProgram, type PublicKey, type TransactionSignature } from "@solana/web3.js";
14
- import { BaseModule } from "./base";
15
- import { deriveAgent, deriveAgentStats, deriveGlobalRegistry } from "../pda";
16
- import type {
17
- AgentAccountData,
18
- AgentStatsData,
19
- RegisterAgentArgs,
20
- UpdateAgentArgs,
21
- } from "../types";
22
-
23
- /**
24
- * @name AgentModule
25
- * @description Manages the full agent lifecycle on the Synapse Agent Protocol.
26
- * Provides methods to register, update, deactivate, reactivate, and close
27
- * agent identities, as well as self-report call metrics and reputation data.
28
- *
29
- * @category Modules
30
- * @since v0.1.0
31
- * @extends BaseModule
32
- *
33
- * @example
34
- * ```ts
35
- * const sap = new SapClient(provider);
36
- * // Register a new agent
37
- * const sig = await sap.agent.register({
38
- * name: "my-agent",
39
- * description: "An example agent",
40
- * capabilities: [0, 1],
41
- * pricing: { free: {} },
42
- * protocols: [0],
43
- * });
44
- * // Fetch agent data
45
- * const data = await sap.agent.fetch();
46
- * ```
47
- */
48
- export class AgentModule extends BaseModule {
49
- // ── PDA helpers ──────────────────────────────────────
50
-
51
- /**
52
- * @name deriveAgent
53
- * @description Derive the `AgentAccount` PDA for a wallet.
54
- * @param wallet - The wallet public key. Defaults to the connected wallet.
55
- * @returns A tuple of `[PublicKey, bump]` for the agent PDA.
56
- * @see {@link deriveAgent} from `pda/` module for the underlying derivation.
57
- * @since v0.1.0
58
- */
59
- deriveAgent(wallet?: PublicKey): readonly [PublicKey, number] {
60
- return deriveAgent(wallet ?? this.walletPubkey);
61
- }
62
-
63
- /**
64
- * @name deriveStats
65
- * @description Derive the `AgentStats` PDA for a given agent.
66
- * @param agentPda - The agent account PDA.
67
- * @returns A tuple of `[PublicKey, bump]` for the stats PDA.
68
- * @see {@link deriveAgentStats} from `pda/` module for the underlying derivation.
69
- * @since v0.1.0
70
- */
71
- deriveStats(agentPda: PublicKey): readonly [PublicKey, number] {
72
- return deriveAgentStats(agentPda);
73
- }
74
-
75
- // ── Instructions ─────────────────────────────────────
76
-
77
- /**
78
- * @name register
79
- * @description Register a new agent identity on-chain. Creates the
80
- * `AgentAccount`, `AgentStats`, and updates the `GlobalRegistry`.
81
- * @param args - Registration parameters (name, description, capabilities, pricing, protocols, etc.).
82
- * @returns {Promise<TransactionSignature>} The transaction signature.
83
- * @since v0.1.0
84
- */
85
- async register(args: RegisterAgentArgs): Promise<TransactionSignature> {
86
- const [agentPda] = this.deriveAgent();
87
- const [statsPda] = this.deriveStats(agentPda);
88
- const [globalPda] = deriveGlobalRegistry();
89
-
90
- return this.methods
91
- .registerAgent(
92
- args.name,
93
- args.description,
94
- args.capabilities,
95
- args.pricing,
96
- args.protocols,
97
- args.agentId ?? null,
98
- args.agentUri ?? null,
99
- args.x402Endpoint ?? null,
100
- )
101
- .accounts({
102
- wallet: this.walletPubkey,
103
- agent: agentPda,
104
- agentStats: statsPda,
105
- globalRegistry: globalPda,
106
- systemProgram: SystemProgram.programId,
107
- })
108
- .rpc();
109
- }
110
-
111
- /**
112
- * @name update
113
- * @description Update an existing agent's metadata fields. All fields
114
- * are optional — only non-null values are written.
115
- * @param args - Partial update parameters.
116
- * @returns {Promise<TransactionSignature>} The transaction signature.
117
- * @since v0.1.0
118
- */
119
- async update(args: UpdateAgentArgs): Promise<TransactionSignature> {
120
- const [agentPda] = this.deriveAgent();
121
-
122
- return this.methods
123
- .updateAgent(
124
- args.name ?? null,
125
- args.description ?? null,
126
- args.capabilities ?? null,
127
- args.pricing ?? null,
128
- args.protocols ?? null,
129
- args.agentId ?? null,
130
- args.agentUri ?? null,
131
- args.x402Endpoint ?? null,
132
- )
133
- .accounts({
134
- wallet: this.walletPubkey,
135
- agent: agentPda,
136
- systemProgram: SystemProgram.programId,
137
- })
138
- .rpc();
139
- }
140
-
141
- /**
142
- * @name deactivate
143
- * @description Deactivate an agent, setting `is_active = false`.
144
- * The agent remains on-chain but is excluded from active discovery.
145
- * @returns {Promise<TransactionSignature>} The transaction signature.
146
- * @since v0.1.0
147
- */
148
- async deactivate(): Promise<TransactionSignature> {
149
- const [agentPda] = this.deriveAgent();
150
- const [statsPda] = this.deriveStats(agentPda);
151
-
152
- return this.methods
153
- .deactivateAgent()
154
- .accounts({
155
- wallet: this.walletPubkey,
156
- agent: agentPda,
157
- agentStats: statsPda,
158
- })
159
- .rpc();
160
- }
161
-
162
- /**
163
- * @name reactivate
164
- * @description Reactivate a previously deactivated agent, restoring
165
- * it to active status.
166
- * @returns {Promise<TransactionSignature>} The transaction signature.
167
- * @since v0.1.0
168
- */
169
- async reactivate(): Promise<TransactionSignature> {
170
- const [agentPda] = this.deriveAgent();
171
- const [statsPda] = this.deriveStats(agentPda);
172
-
173
- return this.methods
174
- .reactivateAgent()
175
- .accounts({
176
- wallet: this.walletPubkey,
177
- agent: agentPda,
178
- agentStats: statsPda,
179
- })
180
- .rpc();
181
- }
182
-
183
- /**
184
- * @name close
185
- * @description Close an agent PDA and its associated stats PDA.
186
- * Rent is returned to the owner wallet.
187
- * @returns {Promise<TransactionSignature>} The transaction signature.
188
- * @since v0.1.0
189
- */
190
- async close(): Promise<TransactionSignature> {
191
- const [agentPda] = this.deriveAgent();
192
- const [statsPda] = this.deriveStats(agentPda);
193
- const [globalPda] = deriveGlobalRegistry();
194
-
195
- return this.methods
196
- .closeAgent()
197
- .accounts({
198
- wallet: this.walletPubkey,
199
- agent: agentPda,
200
- agentStats: statsPda,
201
- globalRegistry: globalPda,
202
- systemProgram: SystemProgram.programId,
203
- })
204
- .rpc();
205
- }
206
-
207
- /**
208
- * @name reportCalls
209
- * @description Self-report call metrics for the agent. This updates the
210
- * `AgentStats` counter but does not affect on-chain reputation.
211
- * @param callsServed - The number of calls to report.
212
- * @returns {Promise<TransactionSignature>} The transaction signature.
213
- * @since v0.1.0
214
- */
215
- async reportCalls(callsServed: number | bigint): Promise<TransactionSignature> {
216
- const [agentPda] = this.deriveAgent();
217
- const [statsPda] = this.deriveStats(agentPda);
218
-
219
- return this.methods
220
- .reportCalls(this.bn(callsServed))
221
- .accounts({
222
- wallet: this.walletPubkey,
223
- agent: agentPda,
224
- agentStats: statsPda,
225
- })
226
- .rpc();
227
- }
228
-
229
- /**
230
- * @name updateReputation
231
- * @description Update self-reported latency and uptime metrics.
232
- * These are informational and do not affect on-chain reputation scoring.
233
- * @param avgLatencyMs - Average response latency in milliseconds.
234
- * @param uptimePercent - Uptime percentage (0–100).
235
- * @returns {Promise<TransactionSignature>} The transaction signature.
236
- * @since v0.1.0
237
- */
238
- async updateReputation(
239
- avgLatencyMs: number,
240
- uptimePercent: number,
241
- ): Promise<TransactionSignature> {
242
- const [agentPda] = this.deriveAgent();
243
-
244
- return this.methods
245
- .updateReputation(avgLatencyMs, uptimePercent)
246
- .accounts({
247
- wallet: this.walletPubkey,
248
- agent: agentPda,
249
- })
250
- .rpc();
251
- }
252
-
253
- // ── Fetchers ─────────────────────────────────────────
254
-
255
- /**
256
- * @name fetch
257
- * @description Fetch the deserialized `AgentAccount` data for a wallet.
258
- * @param wallet - The wallet public key. Defaults to the connected wallet.
259
- * @returns {Promise<AgentAccountData>} The agent account data.
260
- * @throws Will throw if the agent account does not exist.
261
- * @since v0.1.0
262
- */
263
- async fetch(wallet?: PublicKey): Promise<AgentAccountData> {
264
- const [pda] = this.deriveAgent(wallet ?? this.walletPubkey);
265
- return this.fetchAccount<AgentAccountData>("agentAccount", pda);
266
- }
267
-
268
- /**
269
- * @name fetchNullable
270
- * @description Fetch the deserialized `AgentAccount` data, or `null`
271
- * if the account doesn't exist on-chain.
272
- * @param wallet - The wallet public key. Defaults to the connected wallet.
273
- * @returns {Promise<AgentAccountData | null>} The agent data or `null`.
274
- * @since v0.1.0
275
- */
276
- async fetchNullable(wallet?: PublicKey): Promise<AgentAccountData | null> {
277
- const [pda] = this.deriveAgent(wallet ?? this.walletPubkey);
278
- return this.fetchAccountNullable<AgentAccountData>("agentAccount", pda);
279
- }
280
-
281
- /**
282
- * @name fetchStats
283
- * @description Fetch the deserialized `AgentStats` data for an agent.
284
- * @param agentPda - The agent account PDA.
285
- * @returns {Promise<AgentStatsData>} The agent stats data.
286
- * @throws Will throw if the stats account does not exist.
287
- * @since v0.1.0
288
- */
289
- async fetchStats(agentPda: PublicKey): Promise<AgentStatsData> {
290
- const [pda] = this.deriveStats(agentPda);
291
- return this.fetchAccount<AgentStatsData>("agentStats", pda);
292
- }
293
-
294
- /**
295
- * @name fetchStatsNullable
296
- * @description Fetch the deserialized `AgentStats` data, or `null`
297
- * if the account doesn't exist on-chain.
298
- * @param agentPda - The agent account PDA.
299
- * @returns {Promise<AgentStatsData | null>} The stats data or `null`.
300
- * @since v0.1.0
301
- */
302
- async fetchStatsNullable(agentPda: PublicKey): Promise<AgentStatsData | null> {
303
- const [pda] = this.deriveStats(agentPda);
304
- return this.fetchAccountNullable<AgentStatsData>("agentStats", pda);
305
- }
306
-
307
- /**
308
- * @name fetchGlobalRegistry
309
- * @description Fetch the `GlobalRegistry` singleton account that tracks
310
- * aggregate protocol statistics.
311
- * @returns {Promise<GlobalRegistryData>} The global registry data.
312
- * @throws Will throw if the registry has not been initialized.
313
- * @since v0.1.0
314
- */
315
- async fetchGlobalRegistry(): Promise<import("../types").GlobalRegistryData> {
316
- const [pda] = deriveGlobalRegistry();
317
- return this.fetchAccount("globalRegistry", pda);
318
- }
319
- }
@@ -1,168 +0,0 @@
1
- /**
2
- * @module attestation
3
- * @description Web-of-trust attestations — create, revoke, and close
4
- * on-chain attestations that vouch for agent trustworthiness.
5
- *
6
- * Attestations are signed endorsements from one wallet to an agent,
7
- * forming a composable trust graph on Solana.
8
- *
9
- * @category Modules
10
- * @since v0.1.0
11
- * @packageDocumentation
12
- */
13
-
14
- import { SystemProgram, type PublicKey, type TransactionSignature } from "@solana/web3.js";
15
- import { BaseModule } from "./base";
16
- import { deriveAgent, deriveAttestation, deriveGlobalRegistry } from "../pda";
17
- import type { AgentAttestationData, CreateAttestationArgs } from "../types";
18
-
19
- /**
20
- * @name AttestationModule
21
- * @description Manages on-chain attestations for the Synapse Agent Protocol.
22
- * Provides methods to create, revoke, close, and fetch attestation PDAs
23
- * that form the web-of-trust layer.
24
- *
25
- * @category Modules
26
- * @since v0.1.0
27
- * @extends BaseModule
28
- *
29
- * @example
30
- * ```ts
31
- * const sap = new SapClient(provider);
32
- * // Create an attestation for an agent
33
- * const sig = await sap.attestation.create(agentWallet, {
34
- * attestationType: { identity: {} },
35
- * metadataHash: [...],
36
- * expiresAt: null,
37
- * });
38
- * ```
39
- */
40
- export class AttestationModule extends BaseModule {
41
- // ── PDA helpers ──────────────────────────────────────
42
-
43
- /**
44
- * @name deriveAttestation
45
- * @description Derive the `AgentAttestation` PDA for a given agent and attester.
46
- * @param agentPda - The agent account PDA to attest.
47
- * @param attester - The attester wallet. Defaults to the connected wallet.
48
- * @returns A tuple of `[PublicKey, bump]` for the attestation PDA.
49
- * @see {@link deriveAttestation} from `pda/` module for the underlying derivation.
50
- * @since v0.1.0
51
- */
52
- deriveAttestation(
53
- agentPda: PublicKey,
54
- attester?: PublicKey,
55
- ): readonly [PublicKey, number] {
56
- return deriveAttestation(agentPda, attester ?? this.walletPubkey);
57
- }
58
-
59
- // ── Instructions ─────────────────────────────────────
60
-
61
- /**
62
- * @name create
63
- * @description Create an on-chain attestation vouching for an agent.
64
- * The connected wallet becomes the attester.
65
- * @param agentWallet - The wallet that owns the target agent.
66
- * @param args - Attestation parameters (type, metadata hash, optional expiry).
67
- * @returns {Promise<TransactionSignature>} The transaction signature.
68
- * @since v0.1.0
69
- */
70
- async create(
71
- agentWallet: PublicKey,
72
- args: CreateAttestationArgs,
73
- ): Promise<TransactionSignature> {
74
- const [agentPda] = deriveAgent(agentWallet);
75
- const [attestPda] = this.deriveAttestation(agentPda);
76
- const [globalPda] = deriveGlobalRegistry();
77
-
78
- return this.methods
79
- .createAttestation(args.attestationType, args.metadataHash, args.expiresAt)
80
- .accounts({
81
- attester: this.walletPubkey,
82
- agent: agentPda,
83
- attestation: attestPda,
84
- globalRegistry: globalPda,
85
- systemProgram: SystemProgram.programId,
86
- })
87
- .rpc();
88
- }
89
-
90
- /**
91
- * @name revoke
92
- * @description Revoke a previously issued attestation. Only the original
93
- * attester may revoke.
94
- * @param agentWallet - The wallet of the attested agent.
95
- * @returns {Promise<TransactionSignature>} The transaction signature.
96
- * @since v0.1.0
97
- */
98
- async revoke(agentWallet: PublicKey): Promise<TransactionSignature> {
99
- const [agentPda] = deriveAgent(agentWallet);
100
- const [attestPda] = this.deriveAttestation(agentPda);
101
-
102
- return this.methods
103
- .revokeAttestation()
104
- .accounts({
105
- attester: this.walletPubkey,
106
- attestation: attestPda,
107
- })
108
- .rpc();
109
- }
110
-
111
- /**
112
- * @name close
113
- * @description Close a revoked attestation PDA and reclaim rent to the attester.
114
- * @param agentWallet - The wallet of the attested agent.
115
- * @returns {Promise<TransactionSignature>} The transaction signature.
116
- * @since v0.1.0
117
- */
118
- async close(agentWallet: PublicKey): Promise<TransactionSignature> {
119
- const [agentPda] = deriveAgent(agentWallet);
120
- const [attestPda] = this.deriveAttestation(agentPda);
121
- const [globalPda] = deriveGlobalRegistry();
122
-
123
- return this.methods
124
- .closeAttestation()
125
- .accounts({
126
- attester: this.walletPubkey,
127
- attestation: attestPda,
128
- globalRegistry: globalPda,
129
- })
130
- .rpc();
131
- }
132
-
133
- // ── Fetchers ─────────────────────────────────────────
134
-
135
- /**
136
- * @name fetch
137
- * @description Fetch a deserialized `AgentAttestation` account.
138
- * @param agentPda - The agent account PDA.
139
- * @param attester - The attester wallet. Defaults to the connected wallet.
140
- * @returns {Promise<AgentAttestationData>} The attestation account data.
141
- * @throws Will throw if the attestation account does not exist.
142
- * @since v0.1.0
143
- */
144
- async fetch(
145
- agentPda: PublicKey,
146
- attester?: PublicKey,
147
- ): Promise<AgentAttestationData> {
148
- const [pda] = this.deriveAttestation(agentPda, attester);
149
- return this.fetchAccount<AgentAttestationData>("agentAttestation", pda);
150
- }
151
-
152
- /**
153
- * @name fetchNullable
154
- * @description Fetch a deserialized `AgentAttestation` account, or `null`
155
- * if it does not exist on-chain.
156
- * @param agentPda - The agent account PDA.
157
- * @param attester - The attester wallet. Defaults to the connected wallet.
158
- * @returns {Promise<AgentAttestationData | null>} The attestation data or `null`.
159
- * @since v0.1.0
160
- */
161
- async fetchNullable(
162
- agentPda: PublicKey,
163
- attester?: PublicKey,
164
- ): Promise<AgentAttestationData | null> {
165
- const [pda] = this.deriveAttestation(agentPda, attester);
166
- return this.fetchAccountNullable<AgentAttestationData>("agentAttestation", pda);
167
- }
168
- }
@@ -1,158 +0,0 @@
1
- /**
2
- * @module base
3
- * @description Abstract base class for all SDK modules.
4
- *
5
- * Provides shared access to the Anchor program, provider,
6
- * and typed `fetch` / `fetchNullable` helpers.
7
- *
8
- * @category Modules
9
- * @since v0.1.0
10
- * @packageDocumentation
11
- */
12
-
13
- import { type AnchorProvider, type Program, BN } from "@coral-xyz/anchor";
14
- import type { PublicKey, TransactionSignature } from "@solana/web3.js";
15
-
16
- /**
17
- * Anchor `Program` instance typed for the Synapse Agent SAP IDL.
18
- *
19
- * @name SapProgram
20
- * @description Alias for `Program<any>` — the Anchor program reference
21
- * used as the backbone of every module in the SDK.
22
- * @category Modules
23
- * @since v0.1.0
24
- */
25
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
26
- export type SapProgram = Program<any>;
27
-
28
- /**
29
- * @name SapTransactionResult
30
- * @description Instruction builder return type — a ready-to-send transaction.
31
- * Contains the finalized transaction signature after RPC submission.
32
- * @category Modules
33
- * @since v0.1.0
34
- */
35
- export interface SapTransactionResult {
36
- /** The base-58 encoded transaction signature returned by the RPC node. */
37
- readonly signature: TransactionSignature;
38
- }
39
-
40
- /**
41
- * @name BaseModule
42
- * @description Abstract base module inherited by every domain module in the SDK.
43
- * Encapsulates the Anchor program reference, provider access, and common
44
- * helpers for account fetching and BN construction.
45
- *
46
- * @abstract
47
- * @category Modules
48
- * @since v0.1.0
49
- *
50
- * @example
51
- * ```ts
52
- * class MyModule extends BaseModule {
53
- * async doSomething() {
54
- * const data = await this.fetchAccount<MyData>("myAccount", pda);
55
- * }
56
- * }
57
- * ```
58
- */
59
- export abstract class BaseModule {
60
- /**
61
- * Create a new module instance.
62
- *
63
- * @param program - The Anchor `Program` instance for the SAP IDL.
64
- * @protected
65
- */
66
- constructor(protected readonly program: SapProgram) {}
67
-
68
- /**
69
- * @name methods
70
- * @description Instruction method namespace — bypasses `noUncheckedIndexedAccess`
71
- * on `Program<any>` where every property is `T | undefined`.
72
- * Used internally by subclasses to build and send instructions.
73
- * @returns The Anchor program `methods` object for chaining instruction builders.
74
- * @protected
75
- * @since v0.1.0
76
- */
77
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
78
- protected get methods(): any {
79
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
80
- return this.program.methods;
81
- }
82
-
83
- /**
84
- * @name provider
85
- * @description The AnchorProvider from the program, giving access to
86
- * the connection and wallet for signing transactions.
87
- * @returns {AnchorProvider} The Anchor provider instance.
88
- * @protected
89
- * @since v0.1.0
90
- */
91
- protected get provider(): AnchorProvider {
92
- return this.program.provider as AnchorProvider;
93
- }
94
-
95
- /**
96
- * @name walletPubkey
97
- * @description Convenience accessor for the signer wallet's public key.
98
- * @returns {PublicKey} The public key of the connected wallet.
99
- * @protected
100
- * @since v0.1.0
101
- */
102
- protected get walletPubkey(): PublicKey {
103
- return this.provider.wallet.publicKey;
104
- }
105
-
106
- /**
107
- * @name fetchAccount
108
- * @description Generic account fetch — deserializes the on-chain account
109
- * data into the given type `T`, or throws if the account does not exist.
110
- * @typeParam T - The expected deserialized account data type.
111
- * @param accountName - The Anchor account discriminator name (e.g. `"agentAccount"`).
112
- * @param address - The public key of the account to fetch.
113
- * @returns {Promise<T>} The deserialized account data.
114
- * @throws Will throw if the account does not exist on-chain.
115
- * @protected
116
- * @since v0.1.0
117
- */
118
- protected async fetchAccount<T>(
119
- accountName: string,
120
- address: PublicKey,
121
- ): Promise<T> {
122
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-explicit-any
123
- return (this.program.account as any)[accountName].fetch(address) as Promise<T>;
124
- }
125
-
126
- /**
127
- * @name fetchAccountNullable
128
- * @description Generic nullable account fetch — deserializes the on-chain
129
- * account data into type `T`, or returns `null` if the account does not exist.
130
- * @typeParam T - The expected deserialized account data type.
131
- * @param accountName - The Anchor account discriminator name (e.g. `"agentAccount"`).
132
- * @param address - The public key of the account to fetch.
133
- * @returns {Promise<T | null>} The deserialized account data, or `null`.
134
- * @protected
135
- * @since v0.1.0
136
- */
137
- protected async fetchAccountNullable<T>(
138
- accountName: string,
139
- address: PublicKey,
140
- ): Promise<T | null> {
141
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-explicit-any
142
- return (this.program.account as any)[accountName].fetchNullable(address) as Promise<T | null>;
143
- }
144
-
145
- /**
146
- * @name bn
147
- * @description Create an Anchor `BN` from a number, bigint, or existing BN.
148
- * Passes through values that are already `BN` instances.
149
- * @param value - The numeric value to convert.
150
- * @returns {BN} An Anchor-compatible big number.
151
- * @protected
152
- * @since v0.1.0
153
- */
154
- protected bn(value: number | bigint | BN): BN {
155
- if (BN.isBN(value)) return value;
156
- return new BN(value.toString());
157
- }
158
- }