@oobe-protocol-labs/synapse-sap-sdk 0.1.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 (315) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +882 -0
  3. package/dist/cjs/constants/index.js +43 -0
  4. package/dist/cjs/constants/index.js.map +1 -0
  5. package/dist/cjs/constants/limits.js +161 -0
  6. package/dist/cjs/constants/limits.js.map +1 -0
  7. package/dist/cjs/constants/programs.js +78 -0
  8. package/dist/cjs/constants/programs.js.map +1 -0
  9. package/dist/cjs/constants/seeds.js +57 -0
  10. package/dist/cjs/constants/seeds.js.map +1 -0
  11. package/dist/cjs/core/client.js +391 -0
  12. package/dist/cjs/core/client.js.map +1 -0
  13. package/dist/cjs/core/connection.js +319 -0
  14. package/dist/cjs/core/connection.js.map +1 -0
  15. package/dist/cjs/core/index.js +24 -0
  16. package/dist/cjs/core/index.js.map +1 -0
  17. package/dist/cjs/errors/index.js +334 -0
  18. package/dist/cjs/errors/index.js.map +1 -0
  19. package/dist/cjs/events/index.js +136 -0
  20. package/dist/cjs/events/index.js.map +1 -0
  21. package/dist/cjs/idl/index.js +63 -0
  22. package/dist/cjs/idl/index.js.map +1 -0
  23. package/dist/cjs/idl/synapse_agent_sap.json +9710 -0
  24. package/dist/cjs/index.js +147 -0
  25. package/dist/cjs/index.js.map +1 -0
  26. package/dist/cjs/modules/agent.js +272 -0
  27. package/dist/cjs/modules/agent.js.map +1 -0
  28. package/dist/cjs/modules/attestation.js +147 -0
  29. package/dist/cjs/modules/attestation.js.map +1 -0
  30. package/dist/cjs/modules/base.js +128 -0
  31. package/dist/cjs/modules/base.js.map +1 -0
  32. package/dist/cjs/modules/escrow.js +246 -0
  33. package/dist/cjs/modules/escrow.js.map +1 -0
  34. package/dist/cjs/modules/feedback.js +166 -0
  35. package/dist/cjs/modules/feedback.js.map +1 -0
  36. package/dist/cjs/modules/index.js +35 -0
  37. package/dist/cjs/modules/index.js.map +1 -0
  38. package/dist/cjs/modules/indexing.js +375 -0
  39. package/dist/cjs/modules/indexing.js.map +1 -0
  40. package/dist/cjs/modules/ledger.js +234 -0
  41. package/dist/cjs/modules/ledger.js.map +1 -0
  42. package/dist/cjs/modules/tools.js +319 -0
  43. package/dist/cjs/modules/tools.js.map +1 -0
  44. package/dist/cjs/modules/vault.js +410 -0
  45. package/dist/cjs/modules/vault.js.map +1 -0
  46. package/dist/cjs/pda/index.js +377 -0
  47. package/dist/cjs/pda/index.js.map +1 -0
  48. package/dist/cjs/plugin/index.js +934 -0
  49. package/dist/cjs/plugin/index.js.map +1 -0
  50. package/dist/cjs/plugin/protocols.js +282 -0
  51. package/dist/cjs/plugin/protocols.js.map +1 -0
  52. package/dist/cjs/plugin/schemas.js +831 -0
  53. package/dist/cjs/plugin/schemas.js.map +1 -0
  54. package/dist/cjs/postgres/adapter.js +715 -0
  55. package/dist/cjs/postgres/adapter.js.map +1 -0
  56. package/dist/cjs/postgres/index.js +50 -0
  57. package/dist/cjs/postgres/index.js.map +1 -0
  58. package/dist/cjs/postgres/serializers.js +381 -0
  59. package/dist/cjs/postgres/serializers.js.map +1 -0
  60. package/dist/cjs/postgres/sync.js +221 -0
  61. package/dist/cjs/postgres/sync.js.map +1 -0
  62. package/dist/cjs/postgres/types.js +44 -0
  63. package/dist/cjs/postgres/types.js.map +1 -0
  64. package/dist/cjs/registries/builder.js +414 -0
  65. package/dist/cjs/registries/builder.js.map +1 -0
  66. package/dist/cjs/registries/discovery.js +362 -0
  67. package/dist/cjs/registries/discovery.js.map +1 -0
  68. package/dist/cjs/registries/index.js +51 -0
  69. package/dist/cjs/registries/index.js.map +1 -0
  70. package/dist/cjs/registries/session.js +433 -0
  71. package/dist/cjs/registries/session.js.map +1 -0
  72. package/dist/cjs/registries/x402.js +577 -0
  73. package/dist/cjs/registries/x402.js.map +1 -0
  74. package/dist/cjs/types/accounts.js +13 -0
  75. package/dist/cjs/types/accounts.js.map +1 -0
  76. package/dist/cjs/types/common.js +13 -0
  77. package/dist/cjs/types/common.js.map +1 -0
  78. package/dist/cjs/types/enums.js +174 -0
  79. package/dist/cjs/types/enums.js.map +1 -0
  80. package/dist/cjs/types/index.js +36 -0
  81. package/dist/cjs/types/index.js.map +1 -0
  82. package/dist/cjs/types/instructions.js +92 -0
  83. package/dist/cjs/types/instructions.js.map +1 -0
  84. package/dist/cjs/utils/hash.js +58 -0
  85. package/dist/cjs/utils/hash.js.map +1 -0
  86. package/dist/cjs/utils/index.js +27 -0
  87. package/dist/cjs/utils/index.js.map +1 -0
  88. package/dist/cjs/utils/serialization.js +105 -0
  89. package/dist/cjs/utils/serialization.js.map +1 -0
  90. package/dist/cjs/utils/validation.js +36 -0
  91. package/dist/cjs/utils/validation.js.map +1 -0
  92. package/dist/esm/constants/index.js +29 -0
  93. package/dist/esm/constants/index.js.map +1 -0
  94. package/dist/esm/constants/limits.js +158 -0
  95. package/dist/esm/constants/limits.js.map +1 -0
  96. package/dist/esm/constants/programs.js +75 -0
  97. package/dist/esm/constants/programs.js.map +1 -0
  98. package/dist/esm/constants/seeds.js +54 -0
  99. package/dist/esm/constants/seeds.js.map +1 -0
  100. package/dist/esm/core/client.js +384 -0
  101. package/dist/esm/core/client.js.map +1 -0
  102. package/dist/esm/core/connection.js +315 -0
  103. package/dist/esm/core/connection.js.map +1 -0
  104. package/dist/esm/core/index.js +19 -0
  105. package/dist/esm/core/index.js.map +1 -0
  106. package/dist/esm/errors/index.js +325 -0
  107. package/dist/esm/errors/index.js.map +1 -0
  108. package/dist/esm/events/index.js +132 -0
  109. package/dist/esm/events/index.js.map +1 -0
  110. package/dist/esm/idl/index.js +57 -0
  111. package/dist/esm/idl/index.js.map +1 -0
  112. package/dist/esm/idl/synapse_agent_sap.json +9710 -0
  113. package/dist/esm/index.js +70 -0
  114. package/dist/esm/index.js.map +1 -0
  115. package/dist/esm/modules/agent.js +268 -0
  116. package/dist/esm/modules/agent.js.map +1 -0
  117. package/dist/esm/modules/attestation.js +143 -0
  118. package/dist/esm/modules/attestation.js.map +1 -0
  119. package/dist/esm/modules/base.js +124 -0
  120. package/dist/esm/modules/base.js.map +1 -0
  121. package/dist/esm/modules/escrow.js +242 -0
  122. package/dist/esm/modules/escrow.js.map +1 -0
  123. package/dist/esm/modules/feedback.js +162 -0
  124. package/dist/esm/modules/feedback.js.map +1 -0
  125. package/dist/esm/modules/index.js +23 -0
  126. package/dist/esm/modules/index.js.map +1 -0
  127. package/dist/esm/modules/indexing.js +371 -0
  128. package/dist/esm/modules/indexing.js.map +1 -0
  129. package/dist/esm/modules/ledger.js +230 -0
  130. package/dist/esm/modules/ledger.js.map +1 -0
  131. package/dist/esm/modules/tools.js +315 -0
  132. package/dist/esm/modules/tools.js.map +1 -0
  133. package/dist/esm/modules/vault.js +406 -0
  134. package/dist/esm/modules/vault.js.map +1 -0
  135. package/dist/esm/pda/index.js +357 -0
  136. package/dist/esm/pda/index.js.map +1 -0
  137. package/dist/esm/plugin/index.js +927 -0
  138. package/dist/esm/plugin/index.js.map +1 -0
  139. package/dist/esm/plugin/protocols.js +279 -0
  140. package/dist/esm/plugin/protocols.js.map +1 -0
  141. package/dist/esm/plugin/schemas.js +828 -0
  142. package/dist/esm/plugin/schemas.js.map +1 -0
  143. package/dist/esm/postgres/adapter.js +678 -0
  144. package/dist/esm/postgres/adapter.js.map +1 -0
  145. package/dist/esm/postgres/index.js +27 -0
  146. package/dist/esm/postgres/index.js.map +1 -0
  147. package/dist/esm/postgres/serializers.js +362 -0
  148. package/dist/esm/postgres/serializers.js.map +1 -0
  149. package/dist/esm/postgres/sync.js +217 -0
  150. package/dist/esm/postgres/sync.js.map +1 -0
  151. package/dist/esm/postgres/types.js +41 -0
  152. package/dist/esm/postgres/types.js.map +1 -0
  153. package/dist/esm/registries/builder.js +410 -0
  154. package/dist/esm/registries/builder.js.map +1 -0
  155. package/dist/esm/registries/discovery.js +358 -0
  156. package/dist/esm/registries/discovery.js.map +1 -0
  157. package/dist/esm/registries/index.js +44 -0
  158. package/dist/esm/registries/index.js.map +1 -0
  159. package/dist/esm/registries/session.js +429 -0
  160. package/dist/esm/registries/session.js.map +1 -0
  161. package/dist/esm/registries/x402.js +573 -0
  162. package/dist/esm/registries/x402.js.map +1 -0
  163. package/dist/esm/types/accounts.js +12 -0
  164. package/dist/esm/types/accounts.js.map +1 -0
  165. package/dist/esm/types/common.js +12 -0
  166. package/dist/esm/types/common.js.map +1 -0
  167. package/dist/esm/types/enums.js +171 -0
  168. package/dist/esm/types/enums.js.map +1 -0
  169. package/dist/esm/types/index.js +25 -0
  170. package/dist/esm/types/index.js.map +1 -0
  171. package/dist/esm/types/instructions.js +89 -0
  172. package/dist/esm/types/instructions.js.map +1 -0
  173. package/dist/esm/utils/hash.js +53 -0
  174. package/dist/esm/utils/hash.js.map +1 -0
  175. package/dist/esm/utils/index.js +19 -0
  176. package/dist/esm/utils/index.js.map +1 -0
  177. package/dist/esm/utils/serialization.js +98 -0
  178. package/dist/esm/utils/serialization.js.map +1 -0
  179. package/dist/esm/utils/validation.js +33 -0
  180. package/dist/esm/utils/validation.js.map +1 -0
  181. package/dist/types/constants/index.d.ts +27 -0
  182. package/dist/types/constants/index.d.ts.map +1 -0
  183. package/dist/types/constants/limits.d.ts +149 -0
  184. package/dist/types/constants/limits.d.ts.map +1 -0
  185. package/dist/types/constants/programs.d.ts +69 -0
  186. package/dist/types/constants/programs.d.ts.map +1 -0
  187. package/dist/types/constants/seeds.d.ts +61 -0
  188. package/dist/types/constants/seeds.d.ts.map +1 -0
  189. package/dist/types/core/client.d.ts +323 -0
  190. package/dist/types/core/client.d.ts.map +1 -0
  191. package/dist/types/core/connection.d.ts +279 -0
  192. package/dist/types/core/connection.d.ts.map +1 -0
  193. package/dist/types/core/index.d.ts +20 -0
  194. package/dist/types/core/index.d.ts.map +1 -0
  195. package/dist/types/errors/index.d.ts +276 -0
  196. package/dist/types/errors/index.d.ts.map +1 -0
  197. package/dist/types/events/index.d.ts +248 -0
  198. package/dist/types/events/index.d.ts.map +1 -0
  199. package/dist/types/idl/index.d.ts +70 -0
  200. package/dist/types/idl/index.d.ts.map +1 -0
  201. package/dist/types/index.d.ts +68 -0
  202. package/dist/types/index.d.ts.map +1 -0
  203. package/dist/types/modules/agent.d.ts +166 -0
  204. package/dist/types/modules/agent.d.ts.map +1 -0
  205. package/dist/types/modules/attestation.d.ts +96 -0
  206. package/dist/types/modules/attestation.d.ts.map +1 -0
  207. package/dist/types/modules/base.d.ts +126 -0
  208. package/dist/types/modules/base.d.ts.map +1 -0
  209. package/dist/types/modules/escrow.d.ts +151 -0
  210. package/dist/types/modules/escrow.d.ts.map +1 -0
  211. package/dist/types/modules/feedback.d.ts +105 -0
  212. package/dist/types/modules/feedback.d.ts.map +1 -0
  213. package/dist/types/modules/index.d.ts +24 -0
  214. package/dist/types/modules/index.d.ts.map +1 -0
  215. package/dist/types/modules/indexing.d.ts +200 -0
  216. package/dist/types/modules/indexing.d.ts.map +1 -0
  217. package/dist/types/modules/ledger.d.ts +150 -0
  218. package/dist/types/modules/ledger.d.ts.map +1 -0
  219. package/dist/types/modules/tools.d.ts +182 -0
  220. package/dist/types/modules/tools.d.ts.map +1 -0
  221. package/dist/types/modules/vault.d.ts +240 -0
  222. package/dist/types/modules/vault.d.ts.map +1 -0
  223. package/dist/types/pda/index.d.ts +296 -0
  224. package/dist/types/pda/index.d.ts.map +1 -0
  225. package/dist/types/plugin/index.d.ts +171 -0
  226. package/dist/types/plugin/index.d.ts.map +1 -0
  227. package/dist/types/plugin/protocols.d.ts +152 -0
  228. package/dist/types/plugin/protocols.d.ts.map +1 -0
  229. package/dist/types/plugin/schemas.d.ts +823 -0
  230. package/dist/types/plugin/schemas.d.ts.map +1 -0
  231. package/dist/types/postgres/adapter.d.ts +355 -0
  232. package/dist/types/postgres/adapter.d.ts.map +1 -0
  233. package/dist/types/postgres/index.d.ts +24 -0
  234. package/dist/types/postgres/index.d.ts.map +1 -0
  235. package/dist/types/postgres/serializers.d.ts +30 -0
  236. package/dist/types/postgres/serializers.d.ts.map +1 -0
  237. package/dist/types/postgres/sync.d.ts +132 -0
  238. package/dist/types/postgres/sync.d.ts.map +1 -0
  239. package/dist/types/postgres/types.d.ts +167 -0
  240. package/dist/types/postgres/types.d.ts.map +1 -0
  241. package/dist/types/registries/builder.d.ts +340 -0
  242. package/dist/types/registries/builder.d.ts.map +1 -0
  243. package/dist/types/registries/discovery.d.ts +333 -0
  244. package/dist/types/registries/discovery.d.ts.map +1 -0
  245. package/dist/types/registries/index.d.ts +48 -0
  246. package/dist/types/registries/index.d.ts.map +1 -0
  247. package/dist/types/registries/session.d.ts +323 -0
  248. package/dist/types/registries/session.d.ts.map +1 -0
  249. package/dist/types/registries/x402.d.ts +463 -0
  250. package/dist/types/registries/x402.d.ts.map +1 -0
  251. package/dist/types/types/accounts.d.ts +565 -0
  252. package/dist/types/types/accounts.d.ts.map +1 -0
  253. package/dist/types/types/common.d.ts +166 -0
  254. package/dist/types/types/common.d.ts.map +1 -0
  255. package/dist/types/types/enums.d.ts +238 -0
  256. package/dist/types/types/enums.d.ts.map +1 -0
  257. package/dist/types/types/index.d.ts +28 -0
  258. package/dist/types/types/index.d.ts.map +1 -0
  259. package/dist/types/types/instructions.d.ts +366 -0
  260. package/dist/types/types/instructions.d.ts.map +1 -0
  261. package/dist/types/utils/hash.d.ts +48 -0
  262. package/dist/types/utils/hash.d.ts.map +1 -0
  263. package/dist/types/utils/index.d.ts +19 -0
  264. package/dist/types/utils/index.d.ts.map +1 -0
  265. package/dist/types/utils/serialization.d.ts +69 -0
  266. package/dist/types/utils/serialization.d.ts.map +1 -0
  267. package/dist/types/utils/validation.d.ts +29 -0
  268. package/dist/types/utils/validation.d.ts.map +1 -0
  269. package/package.json +178 -0
  270. package/src/constants/index.ts +44 -0
  271. package/src/constants/limits.ts +165 -0
  272. package/src/constants/programs.ts +83 -0
  273. package/src/constants/seeds.ts +66 -0
  274. package/src/core/client.ts +416 -0
  275. package/src/core/connection.ts +409 -0
  276. package/src/core/index.ts +20 -0
  277. package/src/errors/index.ts +346 -0
  278. package/src/events/index.ts +335 -0
  279. package/src/idl/index.ts +76 -0
  280. package/src/idl/synapse_agent_sap.json +9710 -0
  281. package/src/index.ts +253 -0
  282. package/src/modules/agent.ts +319 -0
  283. package/src/modules/attestation.ts +168 -0
  284. package/src/modules/base.ts +158 -0
  285. package/src/modules/escrow.ts +308 -0
  286. package/src/modules/feedback.ts +186 -0
  287. package/src/modules/index.ts +24 -0
  288. package/src/modules/indexing.ts +444 -0
  289. package/src/modules/ledger.ts +262 -0
  290. package/src/modules/tools.ts +411 -0
  291. package/src/modules/vault.ts +533 -0
  292. package/src/pda/index.ts +512 -0
  293. package/src/plugin/index.ts +1202 -0
  294. package/src/plugin/protocols.ts +404 -0
  295. package/src/plugin/schemas.ts +909 -0
  296. package/src/postgres/adapter.ts +904 -0
  297. package/src/postgres/index.ts +59 -0
  298. package/src/postgres/schema.sql +683 -0
  299. package/src/postgres/serializers.ts +485 -0
  300. package/src/postgres/sync.ts +254 -0
  301. package/src/postgres/types.ts +245 -0
  302. package/src/registries/builder.ts +607 -0
  303. package/src/registries/discovery.ts +572 -0
  304. package/src/registries/index.ts +77 -0
  305. package/src/registries/session.ts +613 -0
  306. package/src/registries/x402.ts +906 -0
  307. package/src/types/accounts.ts +618 -0
  308. package/src/types/common.ts +187 -0
  309. package/src/types/enums.ts +214 -0
  310. package/src/types/index.ts +92 -0
  311. package/src/types/instructions.ts +413 -0
  312. package/src/utils/hash.ts +57 -0
  313. package/src/utils/index.ts +19 -0
  314. package/src/utils/serialization.ts +98 -0
  315. package/src/utils/validation.ts +36 -0
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+ /**
3
+ * @module types/enums
4
+ * @description Anchor-compatible enum variant objects for SAP v2.
5
+ *
6
+ * Each enum mirrors the Rust discriminant format used by Anchor:
7
+ * `{ variant: {} }` — e.g. `{ sol: {} }` for `TokenType::Sol`.
8
+ *
9
+ * Use the `*Kind` types for function signatures.
10
+ *
11
+ * @category Types
12
+ * @since v0.1.0
13
+ * @see {@link https://solana.com/docs | Solana Docs}
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.ToolCategory = exports.ToolHttpMethod = exports.SettlementMode = exports.PluginType = exports.TokenType = void 0;
17
+ // ═══════════════════════════════════════════════════════════════════
18
+ // Token Type
19
+ // ═══════════════════════════════════════════════════════════════════
20
+ /**
21
+ * @name TokenType
22
+ * @description Anchor-compatible enum variants for token types accepted by agent pricing and escrow.
23
+ *
24
+ * - `Sol` — Native SOL.
25
+ * - `Usdc` — USDC stablecoin.
26
+ * - `Spl` — Arbitrary SPL token (requires `tokenMint`).
27
+ *
28
+ * @category Types
29
+ * @since v0.1.0
30
+ *
31
+ * @example
32
+ * ```ts
33
+ * import { TokenType } from "@synapse-sap/sdk";
34
+ *
35
+ * const tier = { tokenType: TokenType.Sol };
36
+ * ```
37
+ */
38
+ exports.TokenType = {
39
+ Sol: { sol: {} },
40
+ Usdc: { usdc: {} },
41
+ Spl: { spl: {} },
42
+ };
43
+ // ═══════════════════════════════════════════════════════════════════
44
+ // Plugin Type
45
+ // ═══════════════════════════════════════════════════════════════════
46
+ /**
47
+ * @name PluginType
48
+ * @description Anchor-compatible enum variants for plugin extension types.
49
+ *
50
+ * Plugins extend agent functionality and are feature-gated on-chain.
51
+ *
52
+ * - `Memory` — Encrypted memory / vault storage.
53
+ * - `Validation` — Custom validation logic.
54
+ * - `Delegation` — Hot-wallet delegation.
55
+ * - `Analytics` — Metrics & analytics.
56
+ * - `Governance` — DAO / governance participation.
57
+ * - `Custom` — User-defined plugin type.
58
+ *
59
+ * @category Types
60
+ * @since v0.1.0
61
+ *
62
+ * @example
63
+ * ```ts
64
+ * import { PluginType } from "@synapse-sap/sdk";
65
+ *
66
+ * const ref = { pluginType: PluginType.Memory, pda: vaultPda };
67
+ * ```
68
+ */
69
+ exports.PluginType = {
70
+ Memory: { memory: {} },
71
+ Validation: { validation: {} },
72
+ Delegation: { delegation: {} },
73
+ Analytics: { analytics: {} },
74
+ Governance: { governance: {} },
75
+ Custom: { custom: {} },
76
+ };
77
+ // ═══════════════════════════════════════════════════════════════════
78
+ // Settlement Mode
79
+ // ═══════════════════════════════════════════════════════════════════
80
+ /**
81
+ * @name SettlementMode
82
+ * @description Anchor-compatible enum variants for payment settlement strategies.
83
+ *
84
+ * - `Instant` — Pay-per-call, settled immediately on invocation.
85
+ * - `Escrow` — Pre-funded escrow account with per-call drawdown.
86
+ * - `Batched` — Aggregated settlement at fixed intervals.
87
+ * - `X402` — HTTP 402-based micropayment protocol settlement.
88
+ *
89
+ * @category Types
90
+ * @since v0.1.0
91
+ *
92
+ * @example
93
+ * ```ts
94
+ * import { SettlementMode } from "@synapse-sap/sdk";
95
+ *
96
+ * const tier = { settlementMode: SettlementMode.Escrow };
97
+ * ```
98
+ */
99
+ exports.SettlementMode = {
100
+ Instant: { instant: {} },
101
+ Escrow: { escrow: {} },
102
+ Batched: { batched: {} },
103
+ X402: { x402: {} },
104
+ };
105
+ // ═══════════════════════════════════════════════════════════════════
106
+ // Tool HTTP Method
107
+ // ═══════════════════════════════════════════════════════════════════
108
+ /**
109
+ * @name ToolHttpMethod
110
+ * @description Anchor-compatible enum variants for the HTTP method exposed by a tool.
111
+ *
112
+ * - `Get` / `Post` / `Put` / `Delete` — Standard REST verbs.
113
+ * - `Compound` — Multi-step tool (calls several sub-operations).
114
+ *
115
+ * @category Types
116
+ * @since v0.1.0
117
+ *
118
+ * @example
119
+ * ```ts
120
+ * import { ToolHttpMethod } from "@synapse-sap/sdk";
121
+ *
122
+ * const args = { httpMethod: ToolHttpMethod.Post };
123
+ * ```
124
+ */
125
+ exports.ToolHttpMethod = {
126
+ Get: { get: {} },
127
+ Post: { post: {} },
128
+ Put: { put: {} },
129
+ Delete: { delete: {} },
130
+ Compound: { compound: {} },
131
+ };
132
+ // ═══════════════════════════════════════════════════════════════════
133
+ // Tool Category
134
+ // ═══════════════════════════════════════════════════════════════════
135
+ /**
136
+ * @name ToolCategory
137
+ * @description Anchor-compatible enum variants for classifying tools in the on-chain registry.
138
+ *
139
+ * Categories power cross-agent tool discovery via the `ToolCategoryIndex` PDA.
140
+ *
141
+ * - `Swap` — Token swap / DEX tools.
142
+ * - `Lend` — Lending protocol tools.
143
+ * - `Stake` — Staking / validator tools.
144
+ * - `Nft` — NFT minting / marketplace tools.
145
+ * - `Payment` — Payment & invoicing tools.
146
+ * - `Data` — Data feeds / oracles.
147
+ * - `Governance` — DAO & governance tools.
148
+ * - `Bridge` — Cross-chain bridge tools.
149
+ * - `Analytics` — On-chain analytics.
150
+ * - `Custom` — User-defined category.
151
+ *
152
+ * @category Types
153
+ * @since v0.1.0
154
+ *
155
+ * @example
156
+ * ```ts
157
+ * import { ToolCategory } from "@synapse-sap/sdk";
158
+ *
159
+ * const args = { category: ToolCategory.Swap };
160
+ * ```
161
+ */
162
+ exports.ToolCategory = {
163
+ Swap: { swap: {} },
164
+ Lend: { lend: {} },
165
+ Stake: { stake: {} },
166
+ Nft: { nft: {} },
167
+ Payment: { payment: {} },
168
+ Data: { data: {} },
169
+ Governance: { governance: {} },
170
+ Bridge: { bridge: {} },
171
+ Analytics: { analytics: {} },
172
+ Custom: { custom: {} },
173
+ };
174
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/types/enums.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AAEH,sEAAsE;AACtE,cAAc;AACd,sEAAsE;AAEtE;;;;;;;;;;;;;;;;;GAiBG;AACU,QAAA,SAAS,GAAG;IACvB,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;IAChB,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IAClB,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;CACR,CAAC;AASX,sEAAsE;AACtE,eAAe;AACf,sEAAsE;AAEtE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACU,QAAA,UAAU,GAAG;IACxB,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACtB,UAAU,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IAC9B,UAAU,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IAC9B,SAAS,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAC5B,UAAU,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;CACd,CAAC;AAQX,sEAAsE;AACtE,mBAAmB;AACnB,sEAAsE;AAEtE;;;;;;;;;;;;;;;;;;GAkBG;AACU,QAAA,cAAc,GAAG;IAC5B,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IACxB,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACtB,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IACxB,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;CACV,CAAC;AASX,sEAAsE;AACtE,oBAAoB;AACpB,sEAAsE;AAEtE;;;;;;;;;;;;;;;;GAgBG;AACU,QAAA,cAAc,GAAG;IAC5B,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;IAChB,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IAClB,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;IAChB,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACtB,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;CAClB,CAAC;AASX,sEAAsE;AACtE,iBAAiB;AACjB,sEAAsE;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACU,QAAA,YAAY,GAAG;IAC1B,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IAClB,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IAClB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;IACpB,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;IAChB,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IACxB,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IAClB,UAAU,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACtB,SAAS,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IAC5B,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;CACd,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ /**
3
+ * @module types
4
+ * @description Strongly-typed domain models for SAP v2.
5
+ *
6
+ * Every type mirrors the onchain Rust struct / enum exactly.
7
+ * Types are organized into four layers:
8
+ *
9
+ * - **enums** — Anchor-style enum variant objects (`TokenType`, `ToolCategory`, …)
10
+ * - **common** — Shared helper structs (`Capability`, `PricingTier`, `Settlement`, …)
11
+ * - **accounts** — Deserialized on-chain PDA account data (`AgentAccountData`, …)
12
+ * - **instructions** — Instruction argument DTOs + permission/schema helpers
13
+ *
14
+ * @category Types
15
+ * @since v0.1.0
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * import type { AgentAccountData, RegisterAgentArgs } from "@synapse-sap/sdk/types";
20
+ * import { TokenType, SettlementMode } from "@synapse-sap/sdk/types";
21
+ * ```
22
+ */
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.CompressionType = exports.SchemaType = exports.DelegatePermission = exports.ToolCategory = exports.ToolHttpMethod = exports.SettlementMode = exports.PluginType = exports.TokenType = void 0;
25
+ // ── Enums ────────────────────────────────────────────
26
+ var enums_1 = require("./enums");
27
+ Object.defineProperty(exports, "TokenType", { enumerable: true, get: function () { return enums_1.TokenType; } });
28
+ Object.defineProperty(exports, "PluginType", { enumerable: true, get: function () { return enums_1.PluginType; } });
29
+ Object.defineProperty(exports, "SettlementMode", { enumerable: true, get: function () { return enums_1.SettlementMode; } });
30
+ Object.defineProperty(exports, "ToolHttpMethod", { enumerable: true, get: function () { return enums_1.ToolHttpMethod; } });
31
+ Object.defineProperty(exports, "ToolCategory", { enumerable: true, get: function () { return enums_1.ToolCategory; } });
32
+ var instructions_1 = require("./instructions");
33
+ Object.defineProperty(exports, "DelegatePermission", { enumerable: true, get: function () { return instructions_1.DelegatePermission; } });
34
+ Object.defineProperty(exports, "SchemaType", { enumerable: true, get: function () { return instructions_1.SchemaType; } });
35
+ Object.defineProperty(exports, "CompressionType", { enumerable: true, get: function () { return instructions_1.CompressionType; } });
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;;;AAEH,wDAAwD;AACxD,iCAMiB;AALf,kGAAA,SAAS,OAAA;AACT,mGAAA,UAAU,OAAA;AACV,uGAAA,cAAc,OAAA;AACd,uGAAA,cAAc,OAAA;AACd,qGAAA,YAAY,OAAA;AA2Dd,+CAIwB;AAHtB,kHAAA,kBAAkB,OAAA;AAClB,0GAAA,UAAU,OAAA;AACV,+GAAA,eAAe,OAAA"}
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ /**
3
+ * @module types/instructions
4
+ * @description Instruction argument DTOs and helper enumerations.
5
+ *
6
+ * These interfaces map 1:1 to the Anchor instruction argument structs.
7
+ * Use them when calling SDK module methods.
8
+ *
9
+ * @category Types
10
+ * @since v0.1.0
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.CompressionType = exports.SchemaType = exports.DelegatePermission = void 0;
14
+ // ═══════════════════════════════════════════════════════════════════
15
+ // Permission & Schema Helpers
16
+ // ═══════════════════════════════════════════════════════════════════
17
+ /**
18
+ * @name DelegatePermission
19
+ * @description Bitmask constants for vault delegate permissions.
20
+ *
21
+ * Combine with bitwise OR to grant multiple permissions.
22
+ *
23
+ * | Bit | Value | Permission |
24
+ * | --- | ----- | ------------------- |
25
+ * | 0 | 1 | Inscribe memories |
26
+ * | 1 | 2 | Close sessions |
27
+ * | 2 | 4 | Open sessions |
28
+ * | — | 7 | All permissions |
29
+ *
30
+ * @category Types
31
+ * @since v0.1.0
32
+ *
33
+ * @example
34
+ * ```ts
35
+ * import { DelegatePermission } from "@synapse-sap/sdk";
36
+ *
37
+ * // Grant inscribe + open session
38
+ * const perms = DelegatePermission.Inscribe | DelegatePermission.OpenSession;
39
+ * ```
40
+ */
41
+ exports.DelegatePermission = {
42
+ Inscribe: 1,
43
+ CloseSession: 2,
44
+ OpenSession: 4,
45
+ All: 7,
46
+ };
47
+ /**
48
+ * @name SchemaType
49
+ * @description Numeric discriminants for tool schema types.
50
+ *
51
+ * Used in the `inscribeToolSchema` instruction to specify which schema
52
+ * is being written on-chain.
53
+ *
54
+ * @category Types
55
+ * @since v0.1.0
56
+ *
57
+ * @example
58
+ * ```ts
59
+ * import { SchemaType } from "@synapse-sap/sdk";
60
+ *
61
+ * const args = { schemaType: SchemaType.Input, ... };
62
+ * ```
63
+ */
64
+ exports.SchemaType = {
65
+ Input: 0,
66
+ Output: 1,
67
+ Description: 2,
68
+ };
69
+ /**
70
+ * @name CompressionType
71
+ * @description Numeric discriminants for compression algorithms.
72
+ *
73
+ * Used in inscription instructions to declare the compression format
74
+ * of the payload so consumers can decompress correctly.
75
+ *
76
+ * @category Types
77
+ * @since v0.1.0
78
+ *
79
+ * @example
80
+ * ```ts
81
+ * import { CompressionType } from "@synapse-sap/sdk";
82
+ *
83
+ * const args = { compression: CompressionType.Gzip, ... };
84
+ * ```
85
+ */
86
+ exports.CompressionType = {
87
+ None: 0,
88
+ Deflate: 1,
89
+ Gzip: 2,
90
+ Brotli: 3,
91
+ };
92
+ //# sourceMappingURL=instructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../../src/types/instructions.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AA+SH,sEAAsE;AACtE,+BAA+B;AAC/B,sEAAsE;AAEtE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACU,QAAA,kBAAkB,GAAG;IAChC,QAAQ,EAAE,CAAC;IACX,YAAY,EAAE,CAAC;IACf,WAAW,EAAE,CAAC;IACd,GAAG,EAAE,CAAC;CACE,CAAC;AASX;;;;;;;;;;;;;;;;GAgBG;AACU,QAAA,UAAU,GAAG;IACxB,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,WAAW,EAAE,CAAC;CACN,CAAC;AAQX;;;;;;;;;;;;;;;;GAgBG;AACU,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;CACD,CAAC"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /**
3
+ * @module utils/hash
4
+ * @description Cryptographic hashing utilities.
5
+ *
6
+ * @category Utils
7
+ * @since v0.1.0
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.hashToArray = exports.sha256 = void 0;
11
+ const crypto_1 = require("crypto");
12
+ /**
13
+ * Compute the SHA-256 hash of a UTF-8 string or byte buffer.
14
+ *
15
+ * Returns a 32-byte `Uint8Array` suitable for PDA seeds
16
+ * and Anchor instruction arguments.
17
+ *
18
+ * @name sha256
19
+ * @description Hashes the input using Node’s `crypto.createHash("sha256")`.
20
+ * @param input - A UTF-8 string, `Buffer`, or `Uint8Array` to hash.
21
+ * @returns {Uint8Array} 32-byte SHA-256 digest.
22
+ * @category Utils
23
+ * @since v0.1.0
24
+ * @example
25
+ * ```ts
26
+ * import { sha256 } from "@synapse-sap/sdk/utils";
27
+ *
28
+ * const hash = sha256("jupiter:swap"); // Uint8Array (32 bytes)
29
+ * ```
30
+ */
31
+ const sha256 = (input) => {
32
+ const hash = (0, crypto_1.createHash)("sha256");
33
+ hash.update(typeof input === "string" ? Buffer.from(input, "utf-8") : input);
34
+ return new Uint8Array(hash.digest());
35
+ };
36
+ exports.sha256 = sha256;
37
+ /**
38
+ * Convert a `Uint8Array` hash to a plain `number[]`.
39
+ *
40
+ * Anchor instruction argument types expect `number[]` for hash fields
41
+ * rather than typed arrays.
42
+ *
43
+ * @name hashToArray
44
+ * @description Converts a byte array (typically 32 bytes) to a plain JavaScript `number[]`.
45
+ * @param hash - The byte array to convert.
46
+ * @returns {number[]} Shallow copy as a plain array of numbers.
47
+ * @category Utils
48
+ * @since v0.1.0
49
+ * @example
50
+ * ```ts
51
+ * import { sha256, hashToArray } from "@synapse-sap/sdk/utils";
52
+ *
53
+ * const arr = hashToArray(sha256("jupiter:swap")); // number[]
54
+ * ```
55
+ */
56
+ const hashToArray = (hash) => Array.from(hash);
57
+ exports.hashToArray = hashToArray;
58
+ //# sourceMappingURL=hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../src/utils/hash.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,mCAAoC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACI,MAAM,MAAM,GAAG,CAAC,KAAmC,EAAc,EAAE;IACxE,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM,CACT,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAChE,CAAC;IACF,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AACvC,CAAC,CAAC;AANW,QAAA,MAAM,UAMjB;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACI,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAY,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAA/D,QAAA,WAAW,eAAoD"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ /**
3
+ * @module utils
4
+ * @description Shared utilities used across SDK modules.
5
+ *
6
+ * @category Utils
7
+ * @since v0.1.0
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * import { sha256, hashToArray, assert } from "@synapse-sap/sdk/utils";
12
+ *
13
+ * const hash = sha256("jupiter:swap");
14
+ * const arr = hashToArray(hash); // number[] for Anchor args
15
+ * ```
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.serializeValue = exports.serializeAccount = exports.assert = exports.hashToArray = exports.sha256 = void 0;
19
+ var hash_1 = require("./hash");
20
+ Object.defineProperty(exports, "sha256", { enumerable: true, get: function () { return hash_1.sha256; } });
21
+ Object.defineProperty(exports, "hashToArray", { enumerable: true, get: function () { return hash_1.hashToArray; } });
22
+ var validation_1 = require("./validation");
23
+ Object.defineProperty(exports, "assert", { enumerable: true, get: function () { return validation_1.assert; } });
24
+ var serialization_1 = require("./serialization");
25
+ Object.defineProperty(exports, "serializeAccount", { enumerable: true, get: function () { return serialization_1.serializeAccount; } });
26
+ Object.defineProperty(exports, "serializeValue", { enumerable: true, get: function () { return serialization_1.serializeValue; } });
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,+BAA6C;AAApC,8FAAA,MAAM,OAAA;AAAE,mGAAA,WAAW,OAAA;AAC5B,2CAAsC;AAA7B,oGAAA,MAAM,OAAA;AACf,iDAAmE;AAA1D,iHAAA,gBAAgB,OAAA;AAAE,+GAAA,cAAc,OAAA"}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ /**
3
+ * @module utils/serialization
4
+ * @description JSON-safe serialization helpers for on-chain account data.
5
+ *
6
+ * On-chain Anchor account objects contain `PublicKey` and `BN` instances
7
+ * that are not JSON-serializable. These helpers convert them to plain
8
+ * strings (`base58` and decimal `string`) recursively.
9
+ *
10
+ * @category Utils
11
+ * @since v0.1.0
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { serializeAccount } from "@synapse-sap/sdk/utils";
16
+ *
17
+ * const raw = await program.account.agent.fetch(pda);
18
+ * const json = serializeAccount(raw);
19
+ * // { authority: "GBL...", totalCalls: "42", ... }
20
+ * ```
21
+ */
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.serializeValue = serializeValue;
27
+ exports.serializeAccount = serializeAccount;
28
+ const web3_js_1 = require("@solana/web3.js");
29
+ const bn_js_1 = __importDefault(require("bn.js"));
30
+ /**
31
+ * Recursively convert a single value for JSON serialization.
32
+ *
33
+ * - `PublicKey` → base58 string
34
+ * - `BN` → decimal string
35
+ * - `Uint8Array` / `Buffer` → hex string
36
+ * - `Array` → recursed
37
+ * - plain `object` → recursed via {@link serializeAccount}
38
+ * - primitives → identity
39
+ *
40
+ * @name serializeValue
41
+ * @description Transforms a single Anchor-typed value into its JSON-safe equivalent.
42
+ * @param value - The value to serialize.
43
+ * @returns The JSON-safe representation of `value`.
44
+ * @category Utils
45
+ * @since v0.1.0
46
+ * @example
47
+ * ```ts
48
+ * import { serializeValue } from "@synapse-sap/sdk/utils";
49
+ *
50
+ * serializeValue(new PublicKey("11111111111111111111111111111111")); // "1111..."
51
+ * serializeValue(new BN(42)); // "42"
52
+ * ```
53
+ */
54
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
55
+ function serializeValue(value) {
56
+ if (value === null || value === undefined)
57
+ return null;
58
+ if (value instanceof web3_js_1.PublicKey)
59
+ return value.toBase58();
60
+ if (bn_js_1.default.isBN(value))
61
+ return value.toString();
62
+ if (value instanceof Uint8Array || Buffer.isBuffer(value))
63
+ return Buffer.from(value).toString("hex");
64
+ if (Array.isArray(value))
65
+ return value.map(serializeValue);
66
+ if (typeof value === "object") {
67
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
68
+ return serializeAccount(value);
69
+ }
70
+ return value;
71
+ }
72
+ /**
73
+ * Serialize an entire on-chain account object to a JSON-safe shape.
74
+ *
75
+ * Iterates over each key and delegates to {@link serializeValue}.
76
+ * Handles `PublicKey` → base58, `BN` → string, and nested
77
+ * objects / arrays recursively.
78
+ *
79
+ * @name serializeAccount
80
+ * @description Converts all non-primitive fields in an Anchor account record to JSON-safe strings.
81
+ * @param obj - The raw account object returned by `program.account.<name>.fetch()`.
82
+ * @returns A new plain object with all values converted.
83
+ * @category Utils
84
+ * @since v0.1.0
85
+ * @example
86
+ * ```ts
87
+ * import { serializeAccount } from "@synapse-sap/sdk/utils";
88
+ *
89
+ * const raw = await program.account.agent.fetch(pda);
90
+ * const safe = serializeAccount(raw);
91
+ * console.log(JSON.stringify(safe));
92
+ * ```
93
+ */
94
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
95
+ function serializeAccount(
96
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
97
+ obj) {
98
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
99
+ const result = {};
100
+ for (const [key, value] of Object.entries(obj)) {
101
+ result[key] = serializeValue(value);
102
+ }
103
+ return result;
104
+ }
105
+ //# sourceMappingURL=serialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialization.js","sourceRoot":"","sources":["../../../src/utils/serialization.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;;;AA8BH,wCAYC;AAyBD,4CAWC;AA5ED,6CAA4C;AAC5C,kDAAuB;AAEvB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,8DAA8D;AAC9D,SAAgB,cAAc,CAAC,KAAc;IAC3C,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,KAAK,YAAY,mBAAS;QAAE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IACxD,IAAI,eAAE,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC5C,IAAI,KAAK,YAAY,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACvD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC3D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,8DAA8D;QAC9D,OAAO,gBAAgB,CAAC,KAA4B,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,8DAA8D;AAC9D,SAAgB,gBAAgB;AAC9B,8DAA8D;AAC9D,GAAwB;IAGxB,8DAA8D;IAC9D,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ /**
3
+ * @module utils/validation
4
+ * @description Runtime assertion helpers.
5
+ *
6
+ * @category Utils
7
+ * @since v0.1.0
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.assert = assert;
11
+ /**
12
+ * Assert that a condition holds, throwing a descriptive error otherwise.
13
+ *
14
+ * Uses TypeScript’s `asserts condition` return type so the compiler
15
+ * narrows the guarded value after the call.
16
+ *
17
+ * @name assert
18
+ * @description Runtime guard — throws `RangeError` with a `[SAP SDK]` prefix when the condition is falsy.
19
+ * @param condition - The boolean expression to verify.
20
+ * @param message - Human-readable message included in the thrown error.
21
+ * @throws {RangeError} When `condition` is `false`.
22
+ * @category Utils
23
+ * @since v0.1.0
24
+ * @example
25
+ * ```ts
26
+ * import { assert } from "@synapse-sap/sdk/utils";
27
+ *
28
+ * assert(name.length <= 64, "Agent name exceeds MAX_NAME_LEN");
29
+ * ```
30
+ */
31
+ function assert(condition, message) {
32
+ if (!condition) {
33
+ throw new RangeError(`[SAP SDK] ${message}`);
34
+ }
35
+ }
36
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/utils/validation.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAsBH,wBAOC;AA3BD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,MAAM,CACpB,SAAkB,EAClB,OAAe;IAEf,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,UAAU,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @module constants
3
+ * @description Protocol constants mirroring the on-chain Rust program.
4
+ *
5
+ * Organized into:
6
+ * - **programs** — Network-specific program IDs
7
+ * - **seeds** — PDA seed prefix strings
8
+ * - **limits** — Size constraints, versions, enum numeric values
9
+ *
10
+ * @category Constants
11
+ * @since v0.1.0
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import {
16
+ * MAINNET_SAP_PROGRAM_ID,
17
+ * DEVNET_SAP_PROGRAM_ID,
18
+ * SEEDS,
19
+ * LIMITS,
20
+ * } from "@synapse-sap/sdk/constants";
21
+ * ```
22
+ */
23
+ // ── Program IDs ──────────────────────────────────────
24
+ export { SAP_PROGRAM_ADDRESS, MAINNET_SAP_PROGRAM_ID, DEVNET_SAP_PROGRAM_ID, LOCALNET_SAP_PROGRAM_ID, SAP_PROGRAM_ID, } from "./programs";
25
+ // ── PDA Seeds ────────────────────────────────────────
26
+ export { SEEDS } from "./seeds";
27
+ // ── Limits & Versions ────────────────────────────────
28
+ export { LIMITS, AGENT_VERSION, VAULT_PROTOCOL_VERSION, TOOL_CATEGORY_VALUES, HTTP_METHOD_VALUES, } from "./limits";
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,wDAAwD;AACxD,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,wDAAwD;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,wDAAwD;AACxD,OAAO,EACL,MAAM,EACN,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,UAAU,CAAC"}