@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,565 @@
1
+ /**
2
+ * @module types/accounts
3
+ * @description Deserialized on-chain account data interfaces.
4
+ *
5
+ * Every interface mirrors the corresponding Rust struct exactly.
6
+ * Anchor deserializes PDA accounts into these shapes.
7
+ *
8
+ * @category Types
9
+ * @since v0.1.0
10
+ */
11
+ import type { PublicKey } from "@solana/web3.js";
12
+ import type BN from "bn.js";
13
+ import type { ToolHttpMethodKind, ToolCategoryKind } from "./enums";
14
+ import type { Capability, PricingTier, PluginRef, VolumeCurveBreakpoint } from "./common";
15
+ /**
16
+ * @interface AgentAccountData
17
+ * @description Core agent identity PDA.
18
+ *
19
+ * Stores the agent's profile, reputation metrics, pricing tiers,
20
+ * capabilities, and active plugin references. This is the primary
21
+ * on-chain identity anchor for every registered agent.
22
+ *
23
+ * @category Types
24
+ * @since v0.1.0
25
+ * @see {@link AgentStatsData} for the lightweight hot-path metrics companion.
26
+ */
27
+ export interface AgentAccountData {
28
+ /** PDA bump seed. */
29
+ readonly bump: number;
30
+ /** Account schema version for migrations. */
31
+ readonly version: number;
32
+ /** Owner wallet that controls this agent. */
33
+ readonly wallet: PublicKey;
34
+ /** Human-readable agent name. */
35
+ readonly name: string;
36
+ /** Human-readable agent description. */
37
+ readonly description: string;
38
+ /** Off-chain agent identifier (e.g. DID or UUID). */
39
+ readonly agentId: string | null;
40
+ /** URI pointing to extended agent metadata (JSON). */
41
+ readonly agentUri: string | null;
42
+ /** x402 payment endpoint URL. */
43
+ readonly x402Endpoint: string | null;
44
+ /** Whether the agent is currently accepting calls. */
45
+ readonly isActive: boolean;
46
+ /** Unix timestamp of agent registration. */
47
+ readonly createdAt: BN;
48
+ /** Unix timestamp of the last profile update. */
49
+ readonly updatedAt: BN;
50
+ /** Computed reputation score (0–100). */
51
+ readonly reputationScore: number;
52
+ /** Total number of feedbacks received. */
53
+ readonly totalFeedbacks: number;
54
+ /** Raw sum of all feedback scores (used for averaging). */
55
+ readonly reputationSum: BN;
56
+ /** Lifetime calls served counter. */
57
+ readonly totalCallsServed: BN;
58
+ /** Average latency in milliseconds. */
59
+ readonly avgLatencyMs: number;
60
+ /** Uptime percentage (0–100). */
61
+ readonly uptimePercent: number;
62
+ /** Declared capabilities for discovery indexing. */
63
+ readonly capabilities: Capability[];
64
+ /** Active pricing tiers. */
65
+ readonly pricing: PricingTier[];
66
+ /** Supported protocol identifiers. */
67
+ readonly protocols: string[];
68
+ /** Currently enabled plugin references. */
69
+ readonly activePlugins: PluginRef[];
70
+ }
71
+ /**
72
+ * @interface AgentStatsData
73
+ * @description Lightweight hot-path metrics PDA for an agent.
74
+ *
75
+ * This account is separated from the main {@link AgentAccountData} to
76
+ * minimize the compute cost of frequent counter updates.
77
+ *
78
+ * @category Types
79
+ * @since v0.1.0
80
+ */
81
+ export interface AgentStatsData {
82
+ /** PDA bump seed. */
83
+ readonly bump: number;
84
+ /** Agent PDA this stats account tracks. */
85
+ readonly agent: PublicKey;
86
+ /** Owner wallet. */
87
+ readonly wallet: PublicKey;
88
+ /** Lifetime calls served counter. */
89
+ readonly totalCallsServed: BN;
90
+ /** Whether the agent is currently active. */
91
+ readonly isActive: boolean;
92
+ /** Unix timestamp of the last update. */
93
+ readonly updatedAt: BN;
94
+ }
95
+ /**
96
+ * @interface FeedbackAccountData
97
+ * @description Trustless reputation entry PDA.
98
+ *
99
+ * Each feedback is a unique PDA keyed by `[agent, reviewer]` preventing
100
+ * duplicate reviews. Scores contribute to the agent's aggregate reputation.
101
+ *
102
+ * @category Types
103
+ * @since v0.1.0
104
+ */
105
+ export interface FeedbackAccountData {
106
+ /** PDA bump seed. */
107
+ readonly bump: number;
108
+ /** Agent PDA this feedback targets. */
109
+ readonly agent: PublicKey;
110
+ /** Wallet of the reviewer who submitted the feedback. */
111
+ readonly reviewer: PublicKey;
112
+ /** Reputation score (1–100). */
113
+ readonly score: number;
114
+ /** Freeform tag / category for the feedback. */
115
+ readonly tag: string;
116
+ /** Optional SHA-256 hash of an off-chain comment. */
117
+ readonly commentHash: number[] | null;
118
+ /** Unix timestamp of creation. */
119
+ readonly createdAt: BN;
120
+ /** Unix timestamp of the last update. */
121
+ readonly updatedAt: BN;
122
+ /** Whether this feedback has been revoked by the reviewer. */
123
+ readonly isRevoked: boolean;
124
+ }
125
+ /**
126
+ * @interface CapabilityIndexData
127
+ * @description Scalable discovery index PDA keyed by capability hash.
128
+ *
129
+ * Enables consumers to look up all agents that declare a given capability.
130
+ * Supports pagination via `totalPages`.
131
+ *
132
+ * @category Types
133
+ * @since v0.1.0
134
+ */
135
+ export interface CapabilityIndexData {
136
+ readonly bump: number;
137
+ /** Human-readable capability identifier. */
138
+ readonly capabilityId: string;
139
+ /** SHA-256 hash of the capability ID used as PDA seed. */
140
+ readonly capabilityHash: number[];
141
+ /** Agent PDAs that declare this capability. */
142
+ readonly agents: PublicKey[];
143
+ /** Total number of pages for this index. */
144
+ readonly totalPages: number;
145
+ /** Unix timestamp of the last index update. */
146
+ readonly lastUpdated: BN;
147
+ }
148
+ /**
149
+ * @interface ProtocolIndexData
150
+ * @description Scalable discovery index PDA keyed by protocol hash.
151
+ *
152
+ * Enables consumers to look up all agents that support a given protocol.
153
+ *
154
+ * @category Types
155
+ * @since v0.1.0
156
+ */
157
+ export interface ProtocolIndexData {
158
+ readonly bump: number;
159
+ /** Human-readable protocol identifier. */
160
+ readonly protocolId: string;
161
+ /** SHA-256 hash of the protocol ID used as PDA seed. */
162
+ readonly protocolHash: number[];
163
+ /** Agent PDAs that support this protocol. */
164
+ readonly agents: PublicKey[];
165
+ /** Total number of pages for this index. */
166
+ readonly totalPages: number;
167
+ /** Unix timestamp of the last index update. */
168
+ readonly lastUpdated: BN;
169
+ }
170
+ /**
171
+ * @interface ToolCategoryIndexData
172
+ * @description Cross-agent tool discovery index PDA keyed by category.
173
+ *
174
+ * @category Types
175
+ * @since v0.1.0
176
+ */
177
+ export interface ToolCategoryIndexData {
178
+ readonly bump: number;
179
+ /** Numeric category discriminant. */
180
+ readonly category: number;
181
+ /** Tool descriptor PDAs in this category. */
182
+ readonly tools: PublicKey[];
183
+ /** Total number of pages for this index. */
184
+ readonly totalPages: number;
185
+ /** Unix timestamp of the last index update. */
186
+ readonly lastUpdated: BN;
187
+ }
188
+ /**
189
+ * @interface GlobalRegistryData
190
+ * @description Network-wide statistics singleton PDA.
191
+ *
192
+ * A single instance exists per program deployment and aggregates global
193
+ * counters across all agents, feedbacks, tools, vaults, escrows, and attestations.
194
+ *
195
+ * @category Types
196
+ * @since v0.1.0
197
+ */
198
+ export interface GlobalRegistryData {
199
+ readonly bump: number;
200
+ /** Total number of registered agents. */
201
+ readonly totalAgents: BN;
202
+ /** Number of currently active agents. */
203
+ readonly activeAgents: BN;
204
+ /** Total feedbacks submitted network-wide. */
205
+ readonly totalFeedbacks: BN;
206
+ /** Distinct capability count. */
207
+ readonly totalCapabilities: number;
208
+ /** Distinct protocol count. */
209
+ readonly totalProtocols: number;
210
+ /** Unix timestamp of the last agent registration. */
211
+ readonly lastRegisteredAt: BN;
212
+ /** Unix timestamp of registry initialization. */
213
+ readonly initializedAt: BN;
214
+ /** Upgrade authority for the registry. */
215
+ readonly authority: PublicKey;
216
+ /** Total published tools. */
217
+ readonly totalTools: number;
218
+ /** Total memory vaults. */
219
+ readonly totalVaults: number;
220
+ /** Total escrow accounts. */
221
+ readonly totalEscrows: number;
222
+ /** Total attestations issued. */
223
+ readonly totalAttestations: number;
224
+ }
225
+ /**
226
+ * @interface MemoryVaultData
227
+ * @description Encrypted inscription vault PDA.
228
+ *
229
+ * Each agent may own one vault that stores NaCl-encrypted memory
230
+ * inscriptions across multiple sessions. The vault tracks a nonce
231
+ * for key rotation.
232
+ *
233
+ * @category Types
234
+ * @since v0.1.0
235
+ */
236
+ export interface MemoryVaultData {
237
+ readonly bump: number;
238
+ /** Agent PDA that owns this vault. */
239
+ readonly agent: PublicKey;
240
+ /** Wallet of the vault owner. */
241
+ readonly wallet: PublicKey;
242
+ /** Current encryption nonce seed (32 bytes). */
243
+ readonly vaultNonce: number[];
244
+ /** Total sessions created inside this vault. */
245
+ readonly totalSessions: number;
246
+ /** Total inscriptions across all sessions. */
247
+ readonly totalInscriptions: BN;
248
+ /** Total bytes inscribed across all sessions. */
249
+ readonly totalBytesInscribed: BN;
250
+ /** Unix timestamp of vault creation. */
251
+ readonly createdAt: BN;
252
+ /** Protocol version this vault was created with. */
253
+ readonly protocolVersion: number;
254
+ /** Current nonce version (increments on rotation). */
255
+ readonly nonceVersion: number;
256
+ /** Unix timestamp of the last nonce rotation. */
257
+ readonly lastNonceRotation: BN;
258
+ }
259
+ /**
260
+ * @interface SessionLedgerData
261
+ * @description Compact session index PDA within a {@link MemoryVaultData}.
262
+ *
263
+ * Tracks inscription order, epoch segmentation, Merkle checkpointing,
264
+ * and the hash-chain tip for integrity verification.
265
+ *
266
+ * @category Types
267
+ * @since v0.1.0
268
+ */
269
+ export interface SessionLedgerData {
270
+ readonly bump: number;
271
+ /** Parent vault PDA. */
272
+ readonly vault: PublicKey;
273
+ /** SHA-256 session identifier. */
274
+ readonly sessionHash: number[];
275
+ /** Next inscription sequence number. */
276
+ readonly sequenceCounter: number;
277
+ /** Total bytes inscribed in this session. */
278
+ readonly totalBytes: BN;
279
+ /** Current epoch index. */
280
+ readonly currentEpoch: number;
281
+ /** Total epochs created. */
282
+ readonly totalEpochs: number;
283
+ /** Unix timestamp of session creation. */
284
+ readonly createdAt: BN;
285
+ /** Unix timestamp of the last inscription. */
286
+ readonly lastInscribedAt: BN;
287
+ /** Whether the session has been closed. */
288
+ readonly isClosed: boolean;
289
+ /** Running Merkle root across all inscriptions. */
290
+ readonly merkleRoot: number[];
291
+ /** Total checkpoints taken. */
292
+ readonly totalCheckpoints: number;
293
+ /** Hash of the latest inscription in the chain. */
294
+ readonly tipHash: number[];
295
+ }
296
+ /**
297
+ * @interface EpochPageData
298
+ * @description Per-epoch scan target PDA within a session.
299
+ *
300
+ * Epochs partition inscriptions into bounded pages, enabling efficient
301
+ * range scans and garbage collection.
302
+ *
303
+ * @category Types
304
+ * @since v0.1.0
305
+ */
306
+ export interface EpochPageData {
307
+ readonly bump: number;
308
+ /** Parent session PDA. */
309
+ readonly session: PublicKey;
310
+ /** Zero-based epoch index. */
311
+ readonly epochIndex: number;
312
+ /** Sequence number of the first inscription in this epoch. */
313
+ readonly startSequence: number;
314
+ /** Number of inscriptions in this epoch. */
315
+ readonly inscriptionCount: number;
316
+ /** Total bytes across all inscriptions in this epoch. */
317
+ readonly totalBytes: number;
318
+ /** Unix timestamp of the first inscription. */
319
+ readonly firstTs: BN;
320
+ /** Unix timestamp of the last inscription. */
321
+ readonly lastTs: BN;
322
+ }
323
+ /**
324
+ * @interface VaultDelegateData
325
+ * @description Hot-wallet authorization PDA for vault operations.
326
+ *
327
+ * Allows a delegate wallet to perform permitted operations (inscribe,
328
+ * open/close sessions) on behalf of the vault owner until expiry.
329
+ *
330
+ * @category Types
331
+ * @since v0.1.0
332
+ * @see {@link DelegatePermission} for available permission bits.
333
+ */
334
+ export interface VaultDelegateData {
335
+ readonly bump: number;
336
+ /** Parent vault PDA. */
337
+ readonly vault: PublicKey;
338
+ /** Delegate wallet public key. */
339
+ readonly delegate: PublicKey;
340
+ /** Bitmask of granted permissions. */
341
+ readonly permissions: number;
342
+ /** Unix timestamp when the delegation expires. */
343
+ readonly expiresAt: BN;
344
+ /** Unix timestamp of delegation creation. */
345
+ readonly createdAt: BN;
346
+ }
347
+ /**
348
+ * @interface SessionCheckpointData
349
+ * @description Fast-sync snapshot PDA for a session.
350
+ *
351
+ * Checkpoints capture a Merkle root at a particular sequence point,
352
+ * enabling clients to verify session integrity without replaying
353
+ * every inscription.
354
+ *
355
+ * @category Types
356
+ * @since v0.1.0
357
+ */
358
+ export interface SessionCheckpointData {
359
+ readonly bump: number;
360
+ /** Parent session PDA. */
361
+ readonly session: PublicKey;
362
+ /** Zero-based checkpoint index. */
363
+ readonly checkpointIndex: number;
364
+ /** Merkle root at the checkpoint. */
365
+ readonly merkleRoot: number[];
366
+ /** Sequence number at which the checkpoint was taken. */
367
+ readonly sequenceAt: number;
368
+ /** Epoch index at checkpoint time. */
369
+ readonly epochAt: number;
370
+ /** Cumulative bytes at checkpoint time. */
371
+ readonly totalBytesAt: BN;
372
+ /** Cumulative inscriptions at checkpoint time. */
373
+ readonly inscriptionsAt: BN;
374
+ /** Unix timestamp when the checkpoint was created. */
375
+ readonly createdAt: BN;
376
+ }
377
+ /**
378
+ * @interface ToolDescriptorData
379
+ * @description On-chain tool schema registry PDA.
380
+ *
381
+ * Each published tool stores hashed metadata (description, input/output schemas)
382
+ * and tracks invocation count. Tools support versioning via `previousVersion`
383
+ * back-links.
384
+ *
385
+ * @category Types
386
+ * @since v0.1.0
387
+ * @see {@link ToolHttpMethod} for HTTP method variants.
388
+ * @see {@link ToolCategory} for category variants.
389
+ */
390
+ export interface ToolDescriptorData {
391
+ readonly bump: number;
392
+ /** Agent PDA that owns this tool. */
393
+ readonly agent: PublicKey;
394
+ /** SHA-256 hash of the tool name (PDA seed). */
395
+ readonly toolNameHash: number[];
396
+ /** Human-readable tool name. */
397
+ readonly toolName: string;
398
+ /** SHA-256 hash of the protocol identifier. */
399
+ readonly protocolHash: number[];
400
+ /** Schema version. */
401
+ readonly version: number;
402
+ /** SHA-256 hash of the tool description. */
403
+ readonly descriptionHash: number[];
404
+ /** SHA-256 hash of the input JSON schema. */
405
+ readonly inputSchemaHash: number[];
406
+ /** SHA-256 hash of the output JSON schema. */
407
+ readonly outputSchemaHash: number[];
408
+ /** HTTP method exposed by this tool. */
409
+ readonly httpMethod: ToolHttpMethodKind;
410
+ /** Discovery category. */
411
+ readonly category: ToolCategoryKind;
412
+ /** Total number of parameters. */
413
+ readonly paramsCount: number;
414
+ /** Number of required parameters. */
415
+ readonly requiredParams: number;
416
+ /** Whether this tool is a compound (multi-step) operation. */
417
+ readonly isCompound: boolean;
418
+ /** Whether this tool is currently enabled. */
419
+ readonly isActive: boolean;
420
+ /** Lifetime invocation counter. */
421
+ readonly totalInvocations: BN;
422
+ /** Unix timestamp of creation. */
423
+ readonly createdAt: BN;
424
+ /** Unix timestamp of the last update. */
425
+ readonly updatedAt: BN;
426
+ /** PDA of the previous version (zero key if first version). */
427
+ readonly previousVersion: PublicKey;
428
+ }
429
+ /**
430
+ * @interface EscrowAccountData
431
+ * @description x402 pre-funded micropayment escrow PDA.
432
+ *
433
+ * An escrow is created by a consumer (depositor) for a specific agent.
434
+ * Calls are settled against the escrow balance either per-call or in
435
+ * batches, with optional volume-curve discounts.
436
+ *
437
+ * @category Types
438
+ * @since v0.1.0
439
+ * @see {@link VolumeCurveBreakpoint} for discount curve details.
440
+ */
441
+ export interface EscrowAccountData {
442
+ readonly bump: number;
443
+ /** Agent PDA this escrow is for. */
444
+ readonly agent: PublicKey;
445
+ /** Consumer wallet that funded the escrow. */
446
+ readonly depositor: PublicKey;
447
+ /** Agent's wallet that receives settlements. */
448
+ readonly agentWallet: PublicKey;
449
+ /** Current remaining balance (in token base units). */
450
+ readonly balance: BN;
451
+ /** Cumulative amount deposited. */
452
+ readonly totalDeposited: BN;
453
+ /** Cumulative amount settled to the agent. */
454
+ readonly totalSettled: BN;
455
+ /** Cumulative calls settled. */
456
+ readonly totalCallsSettled: BN;
457
+ /** Base price per call. */
458
+ readonly pricePerCall: BN;
459
+ /** Maximum number of calls this escrow funds. */
460
+ readonly maxCalls: BN;
461
+ /** Unix timestamp of escrow creation. */
462
+ readonly createdAt: BN;
463
+ /** Unix timestamp of the last settlement. */
464
+ readonly lastSettledAt: BN;
465
+ /** Unix timestamp when the escrow expires. */
466
+ readonly expiresAt: BN;
467
+ /** Volume discount breakpoints. */
468
+ readonly volumeCurve: VolumeCurveBreakpoint[];
469
+ /** Optional SPL token mint (null for native SOL). */
470
+ readonly tokenMint: PublicKey | null;
471
+ /** Decimal places for the token. */
472
+ readonly tokenDecimals: number;
473
+ }
474
+ /**
475
+ * @interface AgentAttestationData
476
+ * @description Web-of-trust attestation PDA.
477
+ *
478
+ * Attestations allow one agent or authority to vouch for another agent's
479
+ * identity, compliance, or capabilities. They support expiration and
480
+ * can be deactivated.
481
+ *
482
+ * @category Types
483
+ * @since v0.1.0
484
+ */
485
+ export interface AgentAttestationData {
486
+ readonly bump: number;
487
+ /** Agent PDA being attested. */
488
+ readonly agent: PublicKey;
489
+ /** Wallet of the attester. */
490
+ readonly attester: PublicKey;
491
+ /** Freeform attestation type (e.g. `"kyc"`, `"audit"`). */
492
+ readonly attestationType: string;
493
+ /** SHA-256 hash of off-chain attestation metadata. */
494
+ readonly metadataHash: number[];
495
+ /** Whether the attestation is currently active. */
496
+ readonly isActive: boolean;
497
+ /** Unix timestamp when the attestation expires. */
498
+ readonly expiresAt: BN;
499
+ /** Unix timestamp of creation. */
500
+ readonly createdAt: BN;
501
+ /** Unix timestamp of the last update. */
502
+ readonly updatedAt: BN;
503
+ }
504
+ /**
505
+ * @interface MemoryLedgerData
506
+ * @description Unified on-chain memory ledger PDA.
507
+ *
508
+ * Provides a ring-buffer based memory store with Merkle-root integrity,
509
+ * supporting sealed page archival and hash-chain verification.
510
+ *
511
+ * @category Types
512
+ * @since v0.1.0
513
+ * @see {@link LedgerPageData} for sealed archive pages.
514
+ */
515
+ export interface MemoryLedgerData {
516
+ readonly bump: number;
517
+ /** Parent session PDA. */
518
+ readonly session: PublicKey;
519
+ /** Authority that controls ledger writes. */
520
+ readonly authority: PublicKey;
521
+ /** Current number of entries in the ring buffer. */
522
+ readonly numEntries: number;
523
+ /** Running Merkle root across all entries. */
524
+ readonly merkleRoot: number[];
525
+ /** Hash of the latest entry in the chain. */
526
+ readonly latestHash: number[];
527
+ /** Total data size in bytes. */
528
+ readonly totalDataSize: BN;
529
+ /** Unix timestamp of ledger creation. */
530
+ readonly createdAt: BN;
531
+ /** Unix timestamp of the last update. */
532
+ readonly updatedAt: BN;
533
+ /** Number of sealed pages. */
534
+ readonly numPages: number;
535
+ /** Ring-buffer raw bytes. */
536
+ readonly ring: number[];
537
+ }
538
+ /**
539
+ * @interface LedgerPageData
540
+ * @description Sealed archive page PDA (write-once, never-delete).
541
+ *
542
+ * When a ledger’s ring buffer is full, entries are sealed into
543
+ * immutable pages with a Merkle root snapshot for verifiability.
544
+ *
545
+ * @category Types
546
+ * @since v0.1.0
547
+ */
548
+ export interface LedgerPageData {
549
+ readonly bump: number;
550
+ /** Parent ledger PDA. */
551
+ readonly ledger: PublicKey;
552
+ /** Zero-based page index. */
553
+ readonly pageIndex: number;
554
+ /** Unix timestamp when the page was sealed. */
555
+ readonly sealedAt: BN;
556
+ /** Number of entries archived in this page. */
557
+ readonly entriesInPage: number;
558
+ /** Total data size of this page in bytes. */
559
+ readonly dataSize: number;
560
+ /** Merkle root at the time of sealing. */
561
+ readonly merkleRootAtSeal: number[];
562
+ /** Raw archived data bytes. */
563
+ readonly data: number[];
564
+ }
565
+ //# sourceMappingURL=accounts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../../src/types/accounts.ts"],"names":[],"mappings":"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"}