@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,383 +0,0 @@
1
- /**
2
- * @module escrow
3
- * @description x402 escrow settlement layer — create, deposit,
4
- * settle, withdraw, batch settle, and close escrow accounts.
5
- *
6
- * Supports both SOL and SPL token escrows. SPL operations require
7
- * passing additional `AccountMeta[]` via the `splAccounts` parameter.
8
- *
9
- * @category Modules
10
- * @since v0.1.0
11
- * @packageDocumentation
12
- */
13
-
14
- import {
15
- SystemProgram,
16
- type PublicKey,
17
- type TransactionSignature,
18
- type AccountMeta,
19
- } from "@solana/web3.js";
20
- import { BN } from "@coral-xyz/anchor";
21
- import { BaseModule } from "./base";
22
- import {
23
- deriveAgent,
24
- deriveAgentStats,
25
- deriveEscrow,
26
- deriveStake,
27
- deriveSettlementReceipt,
28
- } from "../pda";
29
- import type {
30
- EscrowAccountData,
31
- CreateEscrowArgs,
32
- Settlement,
33
- } from "../types";
34
- import {
35
- buildPriorityFeeIxs,
36
- computeBatchSettleCu,
37
- buildRpcOptions,
38
- } from "../utils/priority-fee";
39
- import type { SettleOptions } from "../utils/priority-fee";
40
- import { computeBatchRoot, hashToArray } from "../utils/hash";
41
- import { isAcceptedPaymentToken } from "../constants/payments";
42
-
43
- /**
44
- * @name EscrowModule
45
- * @description Manages x402-compatible escrow accounts for agent micropayments.
46
- * Provides methods to create, fund, settle, withdraw, batch-settle, close,
47
- * and fetch escrow PDAs on the Synapse Agent Protocol.
48
- *
49
- * @category Modules
50
- * @since v0.1.0
51
- * @extends BaseModule
52
- *
53
- * @example
54
- * ```ts
55
- * const sap = new SapClient(provider);
56
- * // Create a SOL escrow for an agent
57
- * const sig = await sap.escrow.create(agentWallet, {
58
- * pricePerCall: new BN(1_000_000),
59
- * maxCalls: new BN(100),
60
- * initialDeposit: new BN(100_000_000),
61
- * expiresAt: null,
62
- * volumeCurve: null,
63
- * tokenMint: null,
64
- * tokenDecimals: null,
65
- * });
66
- * ```
67
- *
68
- * @deprecated Since v0.7.0 — Use {@link EscrowV2Module} (`client.escrowV2`) instead.
69
- * V1 escrows lack settlement security, dispute resolution, and staking integration.
70
- * Existing V1 escrows can be migrated via `client.escrowV2.migrateFromV1()`.
71
- */
72
- export class EscrowModule extends BaseModule {
73
- // ── PDA helpers ──────────────────────────────────────
74
-
75
- /**
76
- * @name deriveEscrow
77
- * @description Derive the `EscrowAccount` PDA for a given agent and depositor.
78
- * @param agentPda - The agent account PDA.
79
- * @param depositor - The depositor wallet. Defaults to the connected wallet.
80
- * @returns A tuple of `[PublicKey, bump]` for the escrow PDA.
81
- * @see {@link deriveEscrow} from `pda/` module for the underlying derivation.
82
- * @since v0.1.0
83
- */
84
- deriveEscrow(
85
- agentPda: PublicKey,
86
- depositor?: PublicKey,
87
- ): readonly [PublicKey, number] {
88
- return deriveEscrow(agentPda, depositor ?? this.walletPubkey);
89
- }
90
-
91
- // ── Instructions ─────────────────────────────────────
92
-
93
- /**
94
- * @name create
95
- * @description Create a new escrow for agent micropayments.
96
- *
97
- * For **SOL escrow**: pass `tokenMint: null` and leave `splAccounts` empty.
98
- * For **SPL escrow**: pass `tokenMint`, `tokenDecimals`, and provide
99
- * `splAccounts` with `[depositorAta, escrowAta, tokenMint, tokenProgram]`.
100
- *
101
- * @param agentWallet - The wallet of the agent to pay.
102
- * @param args - Escrow creation parameters (price, max calls, deposit, expiry, volume curve, token info).
103
- * @param splAccounts - Remaining accounts for SPL token transfers:
104
- * `[depositorAta, escrowAta, tokenMint, tokenProgram]`. Defaults to `[]`.
105
- * @returns {Promise<TransactionSignature>} The transaction signature.
106
- * @since v0.1.0
107
- */
108
- async create(
109
- agentWallet: PublicKey,
110
- args: CreateEscrowArgs,
111
- splAccounts: AccountMeta[] = [],
112
- ): Promise<TransactionSignature> {
113
- // v0.10.0 client-side guard — surface the on-chain rejection earlier.
114
- if (!isAcceptedPaymentToken(args.tokenMint ?? null)) {
115
- throw new Error(
116
- "createEscrow: tokenMint must be null (SOL) or USDC (mainnet/devnet). " +
117
- "On-chain will reject with PaymentTokenNotAllowed.",
118
- );
119
- }
120
-
121
- const [agentPda] = deriveAgent(agentWallet);
122
- const [escrowPda] = this.deriveEscrow(agentPda);
123
- const [stakePda] = deriveStake(agentPda);
124
-
125
- return this.methods
126
- .createEscrow(
127
- args.pricePerCall,
128
- args.maxCalls,
129
- args.initialDeposit,
130
- args.expiresAt,
131
- args.volumeCurve,
132
- args.tokenMint,
133
- args.tokenDecimals,
134
- )
135
- .accounts({
136
- depositor: this.walletPubkey,
137
- agent: agentPda,
138
- agentStake: stakePda,
139
- escrow: escrowPda,
140
- systemProgram: SystemProgram.programId,
141
- })
142
- .remainingAccounts(splAccounts)
143
- .rpc();
144
- }
145
-
146
- /**
147
- * @name deposit
148
- * @description Deposit additional funds into an existing escrow.
149
- * @param agentWallet - The wallet of the agent associated with the escrow.
150
- * @param amount - The amount to deposit (lamports for SOL, smallest unit for SPL).
151
- * @param splAccounts - Remaining accounts for SPL token transfers. Defaults to `[]`.
152
- * @returns {Promise<TransactionSignature>} The transaction signature.
153
- * @since v0.1.0
154
- */
155
- async deposit(
156
- agentWallet: PublicKey,
157
- amount: BN | number | bigint,
158
- splAccounts: AccountMeta[] = [],
159
- ): Promise<TransactionSignature> {
160
- const [agentPda] = deriveAgent(agentWallet);
161
- const [escrowPda] = this.deriveEscrow(agentPda);
162
-
163
- return this.methods
164
- .depositEscrow(this.bn(amount))
165
- .accounts({
166
- depositor: this.walletPubkey,
167
- escrow: escrowPda,
168
- systemProgram: SystemProgram.programId,
169
- })
170
- .remainingAccounts(splAccounts)
171
- .rpc();
172
- }
173
-
174
- /**
175
- * @name settle
176
- * @description Agent settles calls — claims earned funds from the escrow.
177
- * Must be called by the agent owner wallet.
178
- * @param depositorWallet - The wallet of the client who funded the escrow.
179
- * @param callsToSettle - Number of calls to settle payment for.
180
- * @param serviceHash - A 32-byte SHA-256 hash identifying the service rendered.
181
- * @param splAccounts - Remaining accounts for SPL token transfers. Defaults to `[]`.
182
- * @param opts - Optional {@link SettleOptions} for priority fees and RPC tuning.
183
- * @returns {Promise<TransactionSignature>} The transaction signature.
184
- * @since v0.1.0
185
- * @updated v0.6.2 — Added optional `opts` parameter for priority fees.
186
- */
187
- async settle(
188
- depositorWallet: PublicKey,
189
- callsToSettle: BN | number | bigint,
190
- serviceHash: number[],
191
- splAccounts: AccountMeta[] = [],
192
- opts?: SettleOptions,
193
- ): Promise<TransactionSignature> {
194
- const [agentPda] = deriveAgent(this.walletPubkey);
195
- const [escrowPda] = deriveEscrow(agentPda, depositorWallet);
196
- const [statsPda] = deriveAgentStats(agentPda);
197
- const [receiptPda] = deriveSettlementReceipt(escrowPda, serviceHash);
198
-
199
- const preIxs = buildPriorityFeeIxs(opts);
200
- const rpcOpts = buildRpcOptions(opts);
201
-
202
- let builder = this.methods
203
- .settleCalls(this.bn(callsToSettle), serviceHash)
204
- .accounts({
205
- wallet: this.walletPubkey,
206
- agent: agentPda,
207
- agentStats: statsPda,
208
- escrow: escrowPda,
209
- settlementReceipt: receiptPda,
210
- systemProgram: SystemProgram.programId,
211
- })
212
- .remainingAccounts(splAccounts);
213
-
214
- if (preIxs.length > 0) {
215
- builder = builder.preInstructions(preIxs);
216
- }
217
-
218
- return builder.rpc(rpcOpts);
219
- }
220
-
221
- /**
222
- * @name withdraw
223
- * @description Client withdraws un-settled funds from their escrow.
224
- * @param agentWallet - The wallet of the agent associated with the escrow.
225
- * @param amount - The amount to withdraw (lamports for SOL, smallest unit for SPL).
226
- * @param splAccounts - Remaining accounts for SPL token transfers. Defaults to `[]`.
227
- * @returns {Promise<TransactionSignature>} The transaction signature.
228
- * @since v0.1.0
229
- */
230
- async withdraw(
231
- agentWallet: PublicKey,
232
- amount: BN | number | bigint,
233
- splAccounts: AccountMeta[] = [],
234
- ): Promise<TransactionSignature> {
235
- const [agentPda] = deriveAgent(agentWallet);
236
- const [escrowPda] = this.deriveEscrow(agentPda);
237
-
238
- return this.methods
239
- .withdrawEscrow(this.bn(amount))
240
- .accounts({
241
- depositor: this.walletPubkey,
242
- escrow: escrowPda,
243
- systemProgram: SystemProgram.programId,
244
- })
245
- .remainingAccounts(splAccounts)
246
- .rpc();
247
- }
248
-
249
- /**
250
- * @name close
251
- * @description Close an empty escrow PDA (balance must be 0) and reclaim rent.
252
- * @param agentWallet - The wallet of the agent associated with the escrow.
253
- * @returns {Promise<TransactionSignature>} The transaction signature.
254
- * @since v0.1.0
255
- */
256
- async close(agentWallet: PublicKey): Promise<TransactionSignature> {
257
- const [agentPda] = deriveAgent(agentWallet);
258
- const [escrowPda] = this.deriveEscrow(agentPda);
259
-
260
- return this.methods
261
- .closeEscrow()
262
- .accounts({
263
- depositor: this.walletPubkey,
264
- escrow: escrowPda,
265
- })
266
- .rpc();
267
- }
268
-
269
- /**
270
- * @name settleBatch
271
- * @description Batch settlement — process up to 10 settlements in a single
272
- * transaction. Must be called by the agent owner wallet.
273
- *
274
- * @param depositorWallet - The wallet of the client who funded the escrow.
275
- * @param settlements - Array of settlement entries (up to 10).
276
- * @param batchRoot - Optional pre-computed batch root
277
- * (`sha256(s_0 || s_1 || ... || s_{N-1})`). When omitted the SDK
278
- * computes it from `settlements[*].serviceHash`. **Required on-chain
279
- * since v0.10.0** to seed the anti-replay receipt PDA.
280
- * @param splAccounts - Remaining accounts for SPL token transfers. Defaults to `[]`.
281
- * @param opts - Optional {@link SettleOptions} for priority fees and RPC tuning.
282
- * @returns {Promise<TransactionSignature>} The transaction signature.
283
- *
284
- * @since v0.1.0
285
- * @updated v0.6.2 — Added optional `opts` parameter for priority fees.
286
- * @updated v0.10.0 — Added `batchRoot` argument and required
287
- * `settlementReceipt` PDA on-chain (anti-replay).
288
- */
289
- async settleBatch(
290
- depositorWallet: PublicKey,
291
- settlements: Settlement[],
292
- batchRoot?: Uint8Array | number[] | null,
293
- splAccounts: AccountMeta[] = [],
294
- opts?: SettleOptions,
295
- ): Promise<TransactionSignature> {
296
- const [agentPda] = deriveAgent(this.walletPubkey);
297
- const [escrowPda] = deriveEscrow(agentPda, depositorWallet);
298
- const [statsPda] = deriveAgentStats(agentPda);
299
-
300
- const rootBytes =
301
- batchRoot && batchRoot !== null
302
- ? batchRoot instanceof Uint8Array
303
- ? batchRoot
304
- : Uint8Array.from(batchRoot)
305
- : computeBatchRoot(settlements.map((s) => s.serviceHash));
306
- const rootArr = hashToArray(rootBytes);
307
- const [receiptPda] = deriveSettlementReceipt(escrowPda, rootBytes);
308
-
309
- // Auto-size CU to the batch length so callers don't have to think
310
- // about it. The default Solana cap (200k) overflows past ~8
311
- // settlements; we compute a tight ceiling and let the caller
312
- // override via `opts.computeUnits` if they want.
313
- // Setting the CU limit is FREE — it doesn't add lamports, only
314
- // caps the maximum the runtime is allowed to charge.
315
- const effectiveOpts: SettleOptions = {
316
- ...opts,
317
- computeUnits: opts?.computeUnits ?? computeBatchSettleCu(settlements.length),
318
- };
319
- const preIxs = buildPriorityFeeIxs(effectiveOpts);
320
- const rpcOpts = buildRpcOptions(effectiveOpts);
321
-
322
- let builder = this.methods
323
- .settleBatch(settlements, rootArr)
324
- .accountsPartial({
325
- wallet: this.walletPubkey,
326
- agent: agentPda,
327
- agentStats: statsPda,
328
- escrow: escrowPda,
329
- settlementReceipt: receiptPda,
330
- systemProgram: SystemProgram.programId,
331
- })
332
- .remainingAccounts(splAccounts);
333
-
334
- if (preIxs.length > 0) {
335
- builder = builder.preInstructions(preIxs);
336
- }
337
-
338
- return builder.rpc(rpcOpts);
339
- }
340
-
341
- // ── Fetchers ─────────────────────────────────────────
342
-
343
- /**
344
- * @name fetch
345
- * @description Fetch a deserialized `EscrowAccount`.
346
- * @param agentPda - The agent account PDA.
347
- * @param depositor - The depositor wallet. Defaults to the connected wallet.
348
- * @returns {Promise<EscrowAccountData>} The escrow account data.
349
- * @throws Will throw if the escrow account does not exist.
350
- * @since v0.1.0
351
- */
352
- async fetch(agentPda: PublicKey, depositor?: PublicKey): Promise<EscrowAccountData> {
353
- const [pda] = this.deriveEscrow(agentPda, depositor);
354
- return this.fetchAccount<EscrowAccountData>("escrowAccount", pda);
355
- }
356
-
357
- /**
358
- * @name fetchNullable
359
- * @description Fetch a deserialized `EscrowAccount`, or `null` if it
360
- * does not exist on-chain.
361
- * @param agentPda - The agent account PDA.
362
- * @param depositor - The depositor wallet. Defaults to the connected wallet.
363
- * @returns {Promise<EscrowAccountData | null>} The escrow data or `null`.
364
- * @since v0.1.0
365
- */
366
- async fetchNullable(agentPda: PublicKey, depositor?: PublicKey): Promise<EscrowAccountData | null> {
367
- const [pda] = this.deriveEscrow(agentPda, depositor);
368
- return this.fetchAccountNullable<EscrowAccountData>("escrowAccount", pda);
369
- }
370
-
371
- /**
372
- * @name fetchByPda
373
- * @description Fetch an escrow account by its PDA address directly,
374
- * bypassing PDA derivation.
375
- * @param escrowPda - The escrow PDA public key.
376
- * @returns {Promise<EscrowAccountData>} The escrow account data.
377
- * @throws Will throw if the escrow account does not exist.
378
- * @since v0.1.0
379
- */
380
- async fetchByPda(escrowPda: PublicKey): Promise<EscrowAccountData> {
381
- return this.fetchAccount<EscrowAccountData>("escrowAccount", escrowPda);
382
- }
383
- }
@@ -1,186 +0,0 @@
1
- /**
2
- * @module feedback
3
- * @description Trustless reputation system — give, update, revoke, and close
4
- * on-chain feedback entries for agents.
5
- *
6
- * Feedback entries are PDA-based reviews tied to an agent and a reviewer wallet,
7
- * enabling permissionless, verifiable reputation 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, deriveFeedback, deriveGlobalRegistry } from "../pda";
17
- import type { FeedbackAccountData, GiveFeedbackArgs, UpdateFeedbackArgs } from "../types";
18
-
19
- /**
20
- * @name FeedbackModule
21
- * @description Manages on-chain feedback entries for the Synapse Agent Protocol.
22
- * Provides methods to give, update, revoke, close, and fetch feedback PDAs
23
- * that form the trustless reputation 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
- * const sig = await sap.feedback.give(agentWallet, {
33
- * score: 5,
34
- * tag: { quality: {} },
35
- * commentHash: null,
36
- * });
37
- * ```
38
- */
39
- export class FeedbackModule extends BaseModule {
40
- // ── PDA helpers ──────────────────────────────────────
41
-
42
- /**
43
- * @name deriveFeedback
44
- * @description Derive the `FeedbackAccount` PDA for a given agent and reviewer.
45
- * @param agentPda - The agent account PDA to review.
46
- * @param reviewer - The reviewer wallet. Defaults to the connected wallet.
47
- * @returns A tuple of `[PublicKey, bump]` for the feedback PDA.
48
- * @see {@link deriveFeedback} from `pda/` module for the underlying derivation.
49
- * @since v0.1.0
50
- */
51
- deriveFeedback(
52
- agentPda: PublicKey,
53
- reviewer?: PublicKey,
54
- ): readonly [PublicKey, number] {
55
- return deriveFeedback(agentPda, reviewer ?? this.walletPubkey);
56
- }
57
-
58
- // ── Instructions ─────────────────────────────────────
59
-
60
- /**
61
- * @name give
62
- * @description Leave on-chain feedback for an agent. Creates a new
63
- * `FeedbackAccount` PDA owned by the reviewer.
64
- * @param agentWallet - The wallet that owns the target agent.
65
- * @param args - Feedback parameters (score, tag, optional comment hash).
66
- * @returns {Promise<TransactionSignature>} The transaction signature.
67
- * @since v0.1.0
68
- */
69
- async give(
70
- agentWallet: PublicKey,
71
- args: GiveFeedbackArgs,
72
- ): Promise<TransactionSignature> {
73
- const [agentPda] = deriveAgent(agentWallet);
74
- const [feedbackPda] = this.deriveFeedback(agentPda);
75
- const [globalPda] = deriveGlobalRegistry();
76
-
77
- return this.methods
78
- .giveFeedback(args.score, args.tag, args.commentHash ?? null)
79
- .accounts({
80
- reviewer: this.walletPubkey,
81
- agent: agentPda,
82
- feedback: feedbackPda,
83
- globalRegistry: globalPda,
84
- systemProgram: SystemProgram.programId,
85
- })
86
- .rpc();
87
- }
88
-
89
- /**
90
- * @name update
91
- * @description Update an existing feedback entry. Only the original reviewer
92
- * may update their feedback.
93
- * @param agentWallet - The wallet that owns the target agent.
94
- * @param args - Updated feedback parameters (new score, optional new tag, optional comment hash).
95
- * @returns {Promise<TransactionSignature>} The transaction signature.
96
- * @since v0.1.0
97
- */
98
- async update(
99
- agentWallet: PublicKey,
100
- args: UpdateFeedbackArgs,
101
- ): Promise<TransactionSignature> {
102
- const [agentPda] = deriveAgent(agentWallet);
103
- const [feedbackPda] = this.deriveFeedback(agentPda);
104
-
105
- return this.methods
106
- .updateFeedback(args.newScore, args.newTag ?? null, args.commentHash ?? null)
107
- .accounts({
108
- reviewer: this.walletPubkey,
109
- agent: agentPda,
110
- feedback: feedbackPda,
111
- })
112
- .rpc();
113
- }
114
-
115
- /**
116
- * @name revoke
117
- * @description Revoke a feedback entry, marking it as revoked and excluding
118
- * it from reputation calculations.
119
- * @param agentWallet - The wallet that owns the target agent.
120
- * @returns {Promise<TransactionSignature>} The transaction signature.
121
- * @since v0.1.0
122
- */
123
- async revoke(agentWallet: PublicKey): Promise<TransactionSignature> {
124
- const [agentPda] = deriveAgent(agentWallet);
125
- const [feedbackPda] = this.deriveFeedback(agentPda);
126
-
127
- return this.methods
128
- .revokeFeedback()
129
- .accounts({
130
- reviewer: this.walletPubkey,
131
- agent: agentPda,
132
- feedback: feedbackPda,
133
- })
134
- .rpc();
135
- }
136
-
137
- /**
138
- * @name close
139
- * @description Close a revoked feedback PDA and reclaim rent to the reviewer.
140
- * @param agentWallet - The wallet that owns the target agent.
141
- * @returns {Promise<TransactionSignature>} The transaction signature.
142
- * @since v0.1.0
143
- */
144
- async close(agentWallet: PublicKey): Promise<TransactionSignature> {
145
- const [agentPda] = deriveAgent(agentWallet);
146
- const [feedbackPda] = this.deriveFeedback(agentPda);
147
-
148
- return this.methods
149
- .closeFeedback()
150
- .accounts({
151
- reviewer: this.walletPubkey,
152
- feedback: feedbackPda,
153
- })
154
- .rpc();
155
- }
156
-
157
- // ── Fetchers ─────────────────────────────────────────
158
-
159
- /**
160
- * @name fetch
161
- * @description Fetch a deserialized `FeedbackAccount`.
162
- * @param agentPda - The agent account PDA.
163
- * @param reviewer - The reviewer wallet. Defaults to the connected wallet.
164
- * @returns {Promise<FeedbackAccountData>} The feedback account data.
165
- * @throws Will throw if the feedback account does not exist.
166
- * @since v0.1.0
167
- */
168
- async fetch(agentPda: PublicKey, reviewer?: PublicKey): Promise<FeedbackAccountData> {
169
- const [pda] = this.deriveFeedback(agentPda, reviewer);
170
- return this.fetchAccount<FeedbackAccountData>("feedbackAccount", pda);
171
- }
172
-
173
- /**
174
- * @name fetchNullable
175
- * @description Fetch a deserialized `FeedbackAccount`, or `null` if it
176
- * does not exist on-chain.
177
- * @param agentPda - The agent account PDA.
178
- * @param reviewer - The reviewer wallet. Defaults to the connected wallet.
179
- * @returns {Promise<FeedbackAccountData | null>} The feedback data or `null`.
180
- * @since v0.1.0
181
- */
182
- async fetchNullable(agentPda: PublicKey, reviewer?: PublicKey): Promise<FeedbackAccountData | null> {
183
- const [pda] = this.deriveFeedback(agentPda, reviewer);
184
- return this.fetchAccountNullable<FeedbackAccountData>("feedbackAccount", pda);
185
- }
186
- }
@@ -1,28 +0,0 @@
1
- /**
2
- * @module modules
3
- * @description Barrel export for all domain modules of the `@synapse-sap/sdk`.
4
- *
5
- * Re-exports every module class so consumers can import from a single entry point:
6
- * ```ts
7
- * import { AgentModule, VaultModule } from "@synapse-sap/sdk/modules";
8
- * ```
9
- *
10
- * @category Modules
11
- * @since v0.1.0
12
- * @packageDocumentation
13
- */
14
-
15
- export { AgentModule } from "./agent";
16
- export { FeedbackModule } from "./feedback";
17
- export { IndexingModule } from "./indexing";
18
- export { ToolsModule } from "./tools";
19
- export { VaultModule } from "./vault";
20
- export { EscrowModule } from "./escrow";
21
- export { EscrowV2Module } from "./escrow-v2";
22
- export { ReceiptModule } from "./receipt";
23
- export { StakingModule } from "./staking";
24
- export { SubscriptionModule } from "./subscription";
25
- export { AttestationModule } from "./attestation";
26
- export { LedgerModule } from "./ledger";
27
- export { BaseModule } from "./base";
28
- export type { SapProgram, SapTransactionResult } from "./base";