@hashgraphonline/standards-sdk 0.1.143 → 0.1.144-feat-solana-register.canary.d5edcec.80

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 (475) hide show
  1. package/dist/cjs/hcs-10/base-client.d.ts.map +1 -1
  2. package/dist/cjs/hcs-10/sdk.d.ts +8 -0
  3. package/dist/cjs/hcs-10/sdk.d.ts.map +1 -1
  4. package/dist/cjs/hcs-11/client.d.ts +2 -2
  5. package/dist/cjs/hcs-11/client.d.ts.map +1 -1
  6. package/dist/cjs/hcs-11/person-builder.d.ts +1 -0
  7. package/dist/cjs/hcs-11/person-builder.d.ts.map +1 -1
  8. package/dist/cjs/hcs-11/types.d.ts +1 -0
  9. package/dist/cjs/hcs-11/types.d.ts.map +1 -1
  10. package/dist/cjs/hcs-12/rendering/resource-manager.d.ts.map +1 -1
  11. package/dist/cjs/hcs-12/validation/schemas.d.ts +8 -8
  12. package/dist/cjs/hcs-14/issuers/hiero.d.ts.map +1 -1
  13. package/dist/cjs/hcs-15/browser.d.ts +2 -0
  14. package/dist/cjs/hcs-15/browser.d.ts.map +1 -1
  15. package/dist/cjs/hcs-15/sdk.d.ts +7 -1
  16. package/dist/cjs/hcs-15/sdk.d.ts.map +1 -1
  17. package/dist/cjs/hcs-15/tx.d.ts +4 -0
  18. package/dist/cjs/hcs-15/tx.d.ts.map +1 -1
  19. package/dist/cjs/hcs-15/types.d.ts +16 -1
  20. package/dist/cjs/hcs-15/types.d.ts.map +1 -1
  21. package/dist/cjs/hcs-16/browser.d.ts +11 -2
  22. package/dist/cjs/hcs-16/browser.d.ts.map +1 -1
  23. package/dist/cjs/hcs-16/sdk.d.ts +62 -1
  24. package/dist/cjs/hcs-16/sdk.d.ts.map +1 -1
  25. package/dist/cjs/hcs-16/tx.d.ts +21 -3
  26. package/dist/cjs/hcs-16/tx.d.ts.map +1 -1
  27. package/dist/cjs/hcs-17/base-client.d.ts +1 -0
  28. package/dist/cjs/hcs-17/base-client.d.ts.map +1 -1
  29. package/dist/cjs/hcs-17/sdk.d.ts.map +1 -1
  30. package/dist/cjs/hcs-17/tx.d.ts +2 -0
  31. package/dist/cjs/hcs-17/tx.d.ts.map +1 -1
  32. package/dist/cjs/hcs-17/types.d.ts +4 -0
  33. package/dist/cjs/hcs-17/types.d.ts.map +1 -1
  34. package/dist/cjs/hcs-21/types.d.ts +75 -75
  35. package/dist/cjs/index.d.ts.map +1 -1
  36. package/dist/cjs/services/registry-broker/client/adapters.d.ts +20 -0
  37. package/dist/cjs/services/registry-broker/client/adapters.d.ts.map +1 -0
  38. package/dist/cjs/services/registry-broker/client/agents.d.ts +16 -0
  39. package/dist/cjs/services/registry-broker/client/agents.d.ts.map +1 -0
  40. package/dist/cjs/services/registry-broker/client/base-client.d.ts +70 -0
  41. package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -0
  42. package/dist/cjs/services/registry-broker/client/chat-history.d.ts +23 -0
  43. package/dist/cjs/services/registry-broker/client/chat-history.d.ts.map +1 -0
  44. package/dist/cjs/services/registry-broker/client/chat.d.ts +33 -0
  45. package/dist/cjs/services/registry-broker/client/chat.d.ts.map +1 -0
  46. package/dist/cjs/services/registry-broker/client/credits.d.ts +40 -0
  47. package/dist/cjs/services/registry-broker/client/credits.d.ts.map +1 -0
  48. package/dist/cjs/services/registry-broker/client/encrypted-chat-manager.d.ts +35 -0
  49. package/dist/cjs/services/registry-broker/client/encrypted-chat-manager.d.ts.map +1 -0
  50. package/dist/cjs/services/registry-broker/client/encryption.d.ts +33 -0
  51. package/dist/cjs/services/registry-broker/client/encryption.d.ts.map +1 -0
  52. package/dist/cjs/services/registry-broker/client/errors.d.ts +19 -0
  53. package/dist/cjs/services/registry-broker/client/errors.d.ts.map +1 -0
  54. package/dist/cjs/services/registry-broker/client/feedback.d.ts +2 -0
  55. package/dist/cjs/services/registry-broker/client/feedback.d.ts.map +1 -0
  56. package/dist/cjs/services/registry-broker/client/ledger-auth.d.ts +10 -0
  57. package/dist/cjs/services/registry-broker/client/ledger-auth.d.ts.map +1 -0
  58. package/dist/cjs/services/registry-broker/client/search.d.ts +19 -0
  59. package/dist/cjs/services/registry-broker/client/search.d.ts.map +1 -0
  60. package/dist/cjs/services/registry-broker/client/utils.d.ts +21 -0
  61. package/dist/cjs/services/registry-broker/client/utils.d.ts.map +1 -0
  62. package/dist/cjs/services/registry-broker/client.d.ts +2 -205
  63. package/dist/cjs/services/registry-broker/client.d.ts.map +1 -1
  64. package/dist/cjs/services/registry-broker/private-key-signer.d.ts +1 -0
  65. package/dist/cjs/services/registry-broker/private-key-signer.d.ts.map +1 -1
  66. package/dist/cjs/services/registry-broker/schemas.d.ts +2509 -816
  67. package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
  68. package/dist/cjs/services/registry-broker/types.d.ts +64 -2
  69. package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
  70. package/dist/cjs/standards-sdk.cjs +3 -3
  71. package/dist/cjs/standards-sdk.cjs.map +1 -1
  72. package/dist/cjs/utils/crypto-abstraction.d.ts.map +1 -1
  73. package/dist/cjs/utils/crypto-env.d.ts.map +1 -1
  74. package/dist/cjs/utils/dynamic-import.d.ts +5 -1
  75. package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
  76. package/dist/cjs/utils/hash-adapter.d.ts.map +1 -1
  77. package/dist/es/hcs-10/base-client.d.ts.map +1 -1
  78. package/dist/es/hcs-10/sdk.d.ts +8 -0
  79. package/dist/es/hcs-10/sdk.d.ts.map +1 -1
  80. package/dist/es/hcs-11/client.d.ts +2 -2
  81. package/dist/es/hcs-11/client.d.ts.map +1 -1
  82. package/dist/es/hcs-11/person-builder.d.ts +1 -0
  83. package/dist/es/hcs-11/person-builder.d.ts.map +1 -1
  84. package/dist/es/hcs-11/types.d.ts +1 -0
  85. package/dist/es/hcs-11/types.d.ts.map +1 -1
  86. package/dist/es/hcs-12/rendering/resource-manager.d.ts.map +1 -1
  87. package/dist/es/hcs-12/validation/schemas.d.ts +8 -8
  88. package/dist/es/hcs-14/issuers/hiero.d.ts.map +1 -1
  89. package/dist/es/hcs-15/browser.d.ts +2 -0
  90. package/dist/es/hcs-15/browser.d.ts.map +1 -1
  91. package/dist/es/hcs-15/sdk.d.ts +7 -1
  92. package/dist/es/hcs-15/sdk.d.ts.map +1 -1
  93. package/dist/es/hcs-15/tx.d.ts +4 -0
  94. package/dist/es/hcs-15/tx.d.ts.map +1 -1
  95. package/dist/es/hcs-15/types.d.ts +16 -1
  96. package/dist/es/hcs-15/types.d.ts.map +1 -1
  97. package/dist/es/hcs-16/browser.d.ts +11 -2
  98. package/dist/es/hcs-16/browser.d.ts.map +1 -1
  99. package/dist/es/hcs-16/sdk.d.ts +62 -1
  100. package/dist/es/hcs-16/sdk.d.ts.map +1 -1
  101. package/dist/es/hcs-16/tx.d.ts +21 -3
  102. package/dist/es/hcs-16/tx.d.ts.map +1 -1
  103. package/dist/es/hcs-17/base-client.d.ts +1 -0
  104. package/dist/es/hcs-17/base-client.d.ts.map +1 -1
  105. package/dist/es/hcs-17/sdk.d.ts.map +1 -1
  106. package/dist/es/hcs-17/tx.d.ts +2 -0
  107. package/dist/es/hcs-17/tx.d.ts.map +1 -1
  108. package/dist/es/hcs-17/types.d.ts +4 -0
  109. package/dist/es/hcs-17/types.d.ts.map +1 -1
  110. package/dist/es/hcs-21/types.d.ts +75 -75
  111. package/dist/es/index.d.ts.map +1 -1
  112. package/dist/es/services/registry-broker/client/adapters.d.ts +20 -0
  113. package/dist/es/services/registry-broker/client/adapters.d.ts.map +1 -0
  114. package/dist/es/services/registry-broker/client/agents.d.ts +16 -0
  115. package/dist/es/services/registry-broker/client/agents.d.ts.map +1 -0
  116. package/dist/es/services/registry-broker/client/base-client.d.ts +70 -0
  117. package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -0
  118. package/dist/es/services/registry-broker/client/chat-history.d.ts +23 -0
  119. package/dist/es/services/registry-broker/client/chat-history.d.ts.map +1 -0
  120. package/dist/es/services/registry-broker/client/chat.d.ts +33 -0
  121. package/dist/es/services/registry-broker/client/chat.d.ts.map +1 -0
  122. package/dist/es/services/registry-broker/client/credits.d.ts +40 -0
  123. package/dist/es/services/registry-broker/client/credits.d.ts.map +1 -0
  124. package/dist/es/services/registry-broker/client/encrypted-chat-manager.d.ts +35 -0
  125. package/dist/es/services/registry-broker/client/encrypted-chat-manager.d.ts.map +1 -0
  126. package/dist/es/services/registry-broker/client/encryption.d.ts +33 -0
  127. package/dist/es/services/registry-broker/client/encryption.d.ts.map +1 -0
  128. package/dist/es/services/registry-broker/client/errors.d.ts +19 -0
  129. package/dist/es/services/registry-broker/client/errors.d.ts.map +1 -0
  130. package/dist/es/services/registry-broker/client/feedback.d.ts +2 -0
  131. package/dist/es/services/registry-broker/client/feedback.d.ts.map +1 -0
  132. package/dist/es/services/registry-broker/client/ledger-auth.d.ts +10 -0
  133. package/dist/es/services/registry-broker/client/ledger-auth.d.ts.map +1 -0
  134. package/dist/es/services/registry-broker/client/search.d.ts +19 -0
  135. package/dist/es/services/registry-broker/client/search.d.ts.map +1 -0
  136. package/dist/es/services/registry-broker/client/utils.d.ts +21 -0
  137. package/dist/es/services/registry-broker/client/utils.d.ts.map +1 -0
  138. package/dist/es/services/registry-broker/client.d.ts +2 -205
  139. package/dist/es/services/registry-broker/client.d.ts.map +1 -1
  140. package/dist/es/services/registry-broker/private-key-signer.d.ts +1 -0
  141. package/dist/es/services/registry-broker/private-key-signer.d.ts.map +1 -1
  142. package/dist/es/services/registry-broker/schemas.d.ts +2509 -816
  143. package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
  144. package/dist/es/services/registry-broker/types.d.ts +64 -2
  145. package/dist/es/services/registry-broker/types.d.ts.map +1 -1
  146. package/dist/es/standards-sdk.es.js +148 -133
  147. package/dist/es/standards-sdk.es.js.map +1 -1
  148. package/dist/es/standards-sdk.es10.js +70 -90
  149. package/dist/es/standards-sdk.es10.js.map +1 -1
  150. package/dist/es/standards-sdk.es100.js +229 -26
  151. package/dist/es/standards-sdk.es100.js.map +1 -1
  152. package/dist/es/standards-sdk.es101.js +109 -228
  153. package/dist/es/standards-sdk.es101.js.map +1 -1
  154. package/dist/es/standards-sdk.es102.js +15 -94
  155. package/dist/es/standards-sdk.es102.js.map +1 -1
  156. package/dist/es/standards-sdk.es103.js +80 -30
  157. package/dist/es/standards-sdk.es103.js.map +1 -1
  158. package/dist/es/standards-sdk.es104.js +27 -80
  159. package/dist/es/standards-sdk.es104.js.map +1 -1
  160. package/dist/es/standards-sdk.es105.js +136 -25
  161. package/dist/es/standards-sdk.es105.js.map +1 -1
  162. package/dist/es/standards-sdk.es106.js +27 -140
  163. package/dist/es/standards-sdk.es106.js.map +1 -1
  164. package/dist/es/standards-sdk.es107.js +20 -27
  165. package/dist/es/standards-sdk.es107.js.map +1 -1
  166. package/dist/es/standards-sdk.es108.js +156 -18
  167. package/dist/es/standards-sdk.es108.js.map +1 -1
  168. package/dist/es/standards-sdk.es109.js +198 -148
  169. package/dist/es/standards-sdk.es109.js.map +1 -1
  170. package/dist/es/standards-sdk.es11.js +121 -45
  171. package/dist/es/standards-sdk.es11.js.map +1 -1
  172. package/dist/es/standards-sdk.es110.js +747 -160
  173. package/dist/es/standards-sdk.es110.js.map +1 -1
  174. package/dist/es/standards-sdk.es111.js +9 -786
  175. package/dist/es/standards-sdk.es111.js.map +1 -1
  176. package/dist/es/standards-sdk.es112.js +567 -13
  177. package/dist/es/standards-sdk.es112.js.map +1 -1
  178. package/dist/es/standards-sdk.es113.js +576 -541
  179. package/dist/es/standards-sdk.es113.js.map +1 -1
  180. package/dist/es/standards-sdk.es114.js +12 -601
  181. package/dist/es/standards-sdk.es114.js.map +1 -1
  182. package/dist/es/standards-sdk.es115.js +2 -13
  183. package/dist/es/standards-sdk.es115.js.map +1 -1
  184. package/dist/es/standards-sdk.es116.js +87 -2
  185. package/dist/es/standards-sdk.es116.js.map +1 -1
  186. package/dist/es/standards-sdk.es117.js +37 -80
  187. package/dist/es/standards-sdk.es117.js.map +1 -1
  188. package/dist/es/standards-sdk.es118.js +2 -39
  189. package/dist/es/standards-sdk.es118.js.map +1 -1
  190. package/dist/es/standards-sdk.es119.js +231 -2
  191. package/dist/es/standards-sdk.es119.js.map +1 -1
  192. package/dist/es/standards-sdk.es12.js +60 -159
  193. package/dist/es/standards-sdk.es12.js.map +1 -1
  194. package/dist/es/standards-sdk.es120.js +1110 -193
  195. package/dist/es/standards-sdk.es120.js.map +1 -1
  196. package/dist/es/standards-sdk.es121.js +225 -1059
  197. package/dist/es/standards-sdk.es121.js.map +1 -1
  198. package/dist/es/standards-sdk.es122.js +419 -303
  199. package/dist/es/standards-sdk.es122.js.map +1 -1
  200. package/dist/es/standards-sdk.es123.js +351 -418
  201. package/dist/es/standards-sdk.es123.js.map +1 -1
  202. package/dist/es/standards-sdk.es124.js +872 -347
  203. package/dist/es/standards-sdk.es124.js.map +1 -1
  204. package/dist/es/standards-sdk.es125.js +182 -854
  205. package/dist/es/standards-sdk.es125.js.map +1 -1
  206. package/dist/es/standards-sdk.es126.js +1512 -153
  207. package/dist/es/standards-sdk.es126.js.map +1 -1
  208. package/dist/es/standards-sdk.es127.js +157 -1547
  209. package/dist/es/standards-sdk.es127.js.map +1 -1
  210. package/dist/es/standards-sdk.es128.js +184 -2190
  211. package/dist/es/standards-sdk.es128.js.map +1 -1
  212. package/dist/es/standards-sdk.es129.js +100 -63
  213. package/dist/es/standards-sdk.es129.js.map +1 -1
  214. package/dist/es/standards-sdk.es13.js +200 -60
  215. package/dist/es/standards-sdk.es13.js.map +1 -1
  216. package/dist/es/standards-sdk.es130.js +112 -78
  217. package/dist/es/standards-sdk.es130.js.map +1 -1
  218. package/dist/es/standards-sdk.es131.js +232 -144
  219. package/dist/es/standards-sdk.es131.js.map +1 -1
  220. package/dist/es/standards-sdk.es132.js +181 -8
  221. package/dist/es/standards-sdk.es132.js.map +1 -1
  222. package/dist/es/standards-sdk.es133.js +118 -82
  223. package/dist/es/standards-sdk.es133.js.map +1 -1
  224. package/dist/es/standards-sdk.es134.js +322 -61
  225. package/dist/es/standards-sdk.es134.js.map +1 -1
  226. package/dist/es/standards-sdk.es135.js +464 -28
  227. package/dist/es/standards-sdk.es135.js.map +1 -1
  228. package/dist/es/standards-sdk.es136.js +14 -135
  229. package/dist/es/standards-sdk.es136.js.map +1 -1
  230. package/dist/es/standards-sdk.es137.js +78 -39
  231. package/dist/es/standards-sdk.es137.js.map +1 -1
  232. package/dist/es/standards-sdk.es138.js +85 -764
  233. package/dist/es/standards-sdk.es138.js.map +1 -1
  234. package/dist/es/standards-sdk.es139.js +135 -12250
  235. package/dist/es/standards-sdk.es139.js.map +1 -1
  236. package/dist/es/standards-sdk.es14.js +149 -178
  237. package/dist/es/standards-sdk.es14.js.map +1 -1
  238. package/dist/es/standards-sdk.es140.js +7 -56
  239. package/dist/es/standards-sdk.es140.js.map +1 -1
  240. package/dist/es/standards-sdk.es141.js +72 -68
  241. package/dist/es/standards-sdk.es141.js.map +1 -1
  242. package/dist/es/standards-sdk.es142.js +61 -13
  243. package/dist/es/standards-sdk.es142.js.map +1 -1
  244. package/dist/es/standards-sdk.es143.js +30 -172
  245. package/dist/es/standards-sdk.es143.js.map +1 -1
  246. package/dist/es/standards-sdk.es144.js +34 -322
  247. package/dist/es/standards-sdk.es144.js.map +1 -1
  248. package/dist/es/standards-sdk.es145.js +28 -346
  249. package/dist/es/standards-sdk.es145.js.map +1 -1
  250. package/dist/es/standards-sdk.es146.js +112 -427
  251. package/dist/es/standards-sdk.es146.js.map +1 -1
  252. package/dist/es/standards-sdk.es147.js +40 -329
  253. package/dist/es/standards-sdk.es147.js.map +1 -1
  254. package/dist/es/standards-sdk.es148.js +12279 -66
  255. package/dist/es/standards-sdk.es148.js.map +1 -1
  256. package/dist/es/standards-sdk.es149.js +961 -0
  257. package/dist/es/standards-sdk.es149.js.map +1 -0
  258. package/dist/es/standards-sdk.es15.js +152 -151
  259. package/dist/es/standards-sdk.es15.js.map +1 -1
  260. package/dist/es/standards-sdk.es150.js +20 -0
  261. package/dist/es/standards-sdk.es150.js.map +1 -0
  262. package/dist/es/standards-sdk.es151.js +59 -0
  263. package/dist/es/standards-sdk.es151.js.map +1 -0
  264. package/dist/es/standards-sdk.es152.js +87 -0
  265. package/dist/es/standards-sdk.es152.js.map +1 -0
  266. package/dist/es/standards-sdk.es153.js +175 -0
  267. package/dist/es/standards-sdk.es153.js.map +1 -0
  268. package/dist/es/standards-sdk.es154.js +325 -0
  269. package/dist/es/standards-sdk.es154.js.map +1 -0
  270. package/dist/es/standards-sdk.es155.js +349 -0
  271. package/dist/es/standards-sdk.es155.js.map +1 -0
  272. package/dist/es/standards-sdk.es156.js +456 -0
  273. package/dist/es/standards-sdk.es156.js.map +1 -0
  274. package/dist/es/standards-sdk.es157.js +334 -0
  275. package/dist/es/standards-sdk.es157.js.map +1 -0
  276. package/dist/es/standards-sdk.es158.js +79 -0
  277. package/dist/es/standards-sdk.es158.js.map +1 -0
  278. package/dist/es/standards-sdk.es159.js +242 -0
  279. package/dist/es/standards-sdk.es159.js.map +1 -0
  280. package/dist/es/standards-sdk.es16.js +917 -136
  281. package/dist/es/standards-sdk.es16.js.map +1 -1
  282. package/dist/es/standards-sdk.es160.js +247 -0
  283. package/dist/es/standards-sdk.es160.js.map +1 -0
  284. package/dist/es/standards-sdk.es17.js +23 -938
  285. package/dist/es/standards-sdk.es17.js.map +1 -1
  286. package/dist/es/standards-sdk.es18.js +2422 -24
  287. package/dist/es/standards-sdk.es18.js.map +1 -1
  288. package/dist/es/standards-sdk.es19.js +826 -2075
  289. package/dist/es/standards-sdk.es19.js.map +1 -1
  290. package/dist/es/standards-sdk.es2.js +654 -189
  291. package/dist/es/standards-sdk.es2.js.map +1 -1
  292. package/dist/es/standards-sdk.es20.js +205 -1086
  293. package/dist/es/standards-sdk.es20.js.map +1 -1
  294. package/dist/es/standards-sdk.es21.js +858 -221
  295. package/dist/es/standards-sdk.es21.js.map +1 -1
  296. package/dist/es/standards-sdk.es22.js +179 -903
  297. package/dist/es/standards-sdk.es22.js.map +1 -1
  298. package/dist/es/standards-sdk.es23.js +164 -179
  299. package/dist/es/standards-sdk.es23.js.map +1 -1
  300. package/dist/es/standards-sdk.es24.js +62 -118
  301. package/dist/es/standards-sdk.es24.js.map +1 -1
  302. package/dist/es/standards-sdk.es25.js +377 -52
  303. package/dist/es/standards-sdk.es25.js.map +1 -1
  304. package/dist/es/standards-sdk.es26.js +36 -394
  305. package/dist/es/standards-sdk.es26.js.map +1 -1
  306. package/dist/es/standards-sdk.es27.js +901 -50
  307. package/dist/es/standards-sdk.es27.js.map +1 -1
  308. package/dist/es/standards-sdk.es28.js +134 -897
  309. package/dist/es/standards-sdk.es28.js.map +1 -1
  310. package/dist/es/standards-sdk.es29.js +7 -134
  311. package/dist/es/standards-sdk.es29.js.map +1 -1
  312. package/dist/es/standards-sdk.es3.js +63 -680
  313. package/dist/es/standards-sdk.es3.js.map +1 -1
  314. package/dist/es/standards-sdk.es30.js +344 -7
  315. package/dist/es/standards-sdk.es30.js.map +1 -1
  316. package/dist/es/standards-sdk.es31.js +302 -287
  317. package/dist/es/standards-sdk.es31.js.map +1 -1
  318. package/dist/es/standards-sdk.es32.js +94 -322
  319. package/dist/es/standards-sdk.es32.js.map +1 -1
  320. package/dist/es/standards-sdk.es33.js +458 -101
  321. package/dist/es/standards-sdk.es33.js.map +1 -1
  322. package/dist/es/standards-sdk.es34.js +132 -451
  323. package/dist/es/standards-sdk.es34.js.map +1 -1
  324. package/dist/es/standards-sdk.es35.js +216 -130
  325. package/dist/es/standards-sdk.es35.js.map +1 -1
  326. package/dist/es/standards-sdk.es36.js +274 -191
  327. package/dist/es/standards-sdk.es36.js.map +1 -1
  328. package/dist/es/standards-sdk.es37.js +148 -87
  329. package/dist/es/standards-sdk.es37.js.map +1 -1
  330. package/dist/es/standards-sdk.es38.js +183 -320
  331. package/dist/es/standards-sdk.es38.js.map +1 -1
  332. package/dist/es/standards-sdk.es39.js +238 -161
  333. package/dist/es/standards-sdk.es39.js.map +1 -1
  334. package/dist/es/standards-sdk.es4.js +425 -63
  335. package/dist/es/standards-sdk.es4.js.map +1 -1
  336. package/dist/es/standards-sdk.es40.js +136 -254
  337. package/dist/es/standards-sdk.es40.js.map +1 -1
  338. package/dist/es/standards-sdk.es41.js +225 -176
  339. package/dist/es/standards-sdk.es41.js.map +1 -1
  340. package/dist/es/standards-sdk.es42.js +199 -261
  341. package/dist/es/standards-sdk.es42.js.map +1 -1
  342. package/dist/es/standards-sdk.es43.js +237 -199
  343. package/dist/es/standards-sdk.es43.js.map +1 -1
  344. package/dist/es/standards-sdk.es44.js +209 -201
  345. package/dist/es/standards-sdk.es44.js.map +1 -1
  346. package/dist/es/standards-sdk.es45.js +305 -201
  347. package/dist/es/standards-sdk.es45.js.map +1 -1
  348. package/dist/es/standards-sdk.es46.js +371 -261
  349. package/dist/es/standards-sdk.es46.js.map +1 -1
  350. package/dist/es/standards-sdk.es47.js +316 -371
  351. package/dist/es/standards-sdk.es47.js.map +1 -1
  352. package/dist/es/standards-sdk.es48.js +404 -336
  353. package/dist/es/standards-sdk.es48.js.map +1 -1
  354. package/dist/es/standards-sdk.es49.js +83 -449
  355. package/dist/es/standards-sdk.es49.js.map +1 -1
  356. package/dist/es/standards-sdk.es5.js +232 -354
  357. package/dist/es/standards-sdk.es5.js.map +1 -1
  358. package/dist/es/standards-sdk.es50.js +179 -89
  359. package/dist/es/standards-sdk.es50.js.map +1 -1
  360. package/dist/es/standards-sdk.es51.js +231 -165
  361. package/dist/es/standards-sdk.es51.js.map +1 -1
  362. package/dist/es/standards-sdk.es52.js +25 -262
  363. package/dist/es/standards-sdk.es52.js.map +1 -1
  364. package/dist/es/standards-sdk.es53.js +56 -26
  365. package/dist/es/standards-sdk.es53.js.map +1 -1
  366. package/dist/es/standards-sdk.es54.js +12 -57
  367. package/dist/es/standards-sdk.es54.js.map +1 -1
  368. package/dist/es/standards-sdk.es55.js +49 -12
  369. package/dist/es/standards-sdk.es55.js.map +1 -1
  370. package/dist/es/standards-sdk.es56.js +115 -43
  371. package/dist/es/standards-sdk.es56.js.map +1 -1
  372. package/dist/es/standards-sdk.es57.js +42 -115
  373. package/dist/es/standards-sdk.es57.js.map +1 -1
  374. package/dist/es/standards-sdk.es58.js +52 -43
  375. package/dist/es/standards-sdk.es58.js.map +1 -1
  376. package/dist/es/standards-sdk.es59.js +36 -50
  377. package/dist/es/standards-sdk.es59.js.map +1 -1
  378. package/dist/es/standards-sdk.es6.js +125 -246
  379. package/dist/es/standards-sdk.es6.js.map +1 -1
  380. package/dist/es/standards-sdk.es60.js +207 -39
  381. package/dist/es/standards-sdk.es60.js.map +1 -1
  382. package/dist/es/standards-sdk.es61.js +24 -195
  383. package/dist/es/standards-sdk.es61.js.map +1 -1
  384. package/dist/es/standards-sdk.es62.js +87 -25
  385. package/dist/es/standards-sdk.es62.js.map +1 -1
  386. package/dist/es/standards-sdk.es63.js +3 -51
  387. package/dist/es/standards-sdk.es63.js.map +1 -1
  388. package/dist/es/standards-sdk.es64.js +100 -3
  389. package/dist/es/standards-sdk.es64.js.map +1 -1
  390. package/dist/es/standards-sdk.es65.js +61 -62
  391. package/dist/es/standards-sdk.es65.js.map +1 -1
  392. package/dist/es/standards-sdk.es66.js +17 -98
  393. package/dist/es/standards-sdk.es66.js.map +1 -1
  394. package/dist/es/standards-sdk.es67.js +77 -19
  395. package/dist/es/standards-sdk.es67.js.map +1 -1
  396. package/dist/es/standards-sdk.es68.js +458 -77
  397. package/dist/es/standards-sdk.es68.js.map +1 -1
  398. package/dist/es/standards-sdk.es69.js +106 -240
  399. package/dist/es/standards-sdk.es69.js.map +1 -1
  400. package/dist/es/standards-sdk.es7.js +28 -183
  401. package/dist/es/standards-sdk.es7.js.map +1 -1
  402. package/dist/es/standards-sdk.es70.js +170 -286
  403. package/dist/es/standards-sdk.es70.js.map +1 -1
  404. package/dist/es/standards-sdk.es71.js +71 -207
  405. package/dist/es/standards-sdk.es71.js.map +1 -1
  406. package/dist/es/standards-sdk.es72.js +71 -72
  407. package/dist/es/standards-sdk.es72.js.map +1 -1
  408. package/dist/es/standards-sdk.es73.js +143 -71
  409. package/dist/es/standards-sdk.es73.js.map +1 -1
  410. package/dist/es/standards-sdk.es74.js +62 -136
  411. package/dist/es/standards-sdk.es74.js.map +1 -1
  412. package/dist/es/standards-sdk.es75.js +380 -45
  413. package/dist/es/standards-sdk.es75.js.map +1 -1
  414. package/dist/es/standards-sdk.es76.js +222 -130
  415. package/dist/es/standards-sdk.es76.js.map +1 -1
  416. package/dist/es/standards-sdk.es77.js +320 -444
  417. package/dist/es/standards-sdk.es77.js.map +1 -1
  418. package/dist/es/standards-sdk.es78.js +88 -364
  419. package/dist/es/standards-sdk.es78.js.map +1 -1
  420. package/dist/es/standards-sdk.es79.js +125 -89
  421. package/dist/es/standards-sdk.es79.js.map +1 -1
  422. package/dist/es/standards-sdk.es8.js +80 -29
  423. package/dist/es/standards-sdk.es8.js.map +1 -1
  424. package/dist/es/standards-sdk.es80.js +8 -125
  425. package/dist/es/standards-sdk.es80.js.map +1 -1
  426. package/dist/es/standards-sdk.es81.js +45 -6
  427. package/dist/es/standards-sdk.es81.js.map +1 -1
  428. package/dist/es/standards-sdk.es82.js +98 -44
  429. package/dist/es/standards-sdk.es82.js.map +1 -1
  430. package/dist/es/standards-sdk.es83.js +331 -84
  431. package/dist/es/standards-sdk.es83.js.map +1 -1
  432. package/dist/es/standards-sdk.es84.js +93 -160
  433. package/dist/es/standards-sdk.es84.js.map +1 -1
  434. package/dist/es/standards-sdk.es85.js +55 -275
  435. package/dist/es/standards-sdk.es85.js.map +1 -1
  436. package/dist/es/standards-sdk.es86.js +43 -55
  437. package/dist/es/standards-sdk.es86.js.map +1 -1
  438. package/dist/es/standards-sdk.es87.js +145 -22
  439. package/dist/es/standards-sdk.es87.js.map +1 -1
  440. package/dist/es/standards-sdk.es88.js +34 -47
  441. package/dist/es/standards-sdk.es88.js.map +1 -1
  442. package/dist/es/standards-sdk.es89.js +22 -57
  443. package/dist/es/standards-sdk.es89.js.map +1 -1
  444. package/dist/es/standards-sdk.es9.js +104 -80
  445. package/dist/es/standards-sdk.es9.js.map +1 -1
  446. package/dist/es/standards-sdk.es90.js +23 -28
  447. package/dist/es/standards-sdk.es90.js.map +1 -1
  448. package/dist/es/standards-sdk.es91.js +238 -23
  449. package/dist/es/standards-sdk.es91.js.map +1 -1
  450. package/dist/es/standards-sdk.es92.js +265 -152
  451. package/dist/es/standards-sdk.es92.js.map +1 -1
  452. package/dist/es/standards-sdk.es93.js +95 -68
  453. package/dist/es/standards-sdk.es93.js.map +1 -1
  454. package/dist/es/standards-sdk.es94.js +124 -136
  455. package/dist/es/standards-sdk.es94.js.map +1 -1
  456. package/dist/es/standards-sdk.es95.js +42 -138
  457. package/dist/es/standards-sdk.es95.js.map +1 -1
  458. package/dist/es/standards-sdk.es96.js +259 -42
  459. package/dist/es/standards-sdk.es96.js.map +1 -1
  460. package/dist/es/standards-sdk.es97.js +82 -243
  461. package/dist/es/standards-sdk.es97.js.map +1 -1
  462. package/dist/es/standards-sdk.es98.js +48 -47
  463. package/dist/es/standards-sdk.es98.js.map +1 -1
  464. package/dist/es/standards-sdk.es99.js +29 -100
  465. package/dist/es/standards-sdk.es99.js.map +1 -1
  466. package/dist/es/utils/crypto-abstraction.d.ts.map +1 -1
  467. package/dist/es/utils/crypto-env.d.ts.map +1 -1
  468. package/dist/es/utils/dynamic-import.d.ts +5 -1
  469. package/dist/es/utils/dynamic-import.d.ts.map +1 -1
  470. package/dist/es/utils/hash-adapter.d.ts.map +1 -1
  471. package/package.json +15 -16
  472. package/dist/cjs/patches/topic-autorenew-patch.d.ts +0 -2
  473. package/dist/cjs/patches/topic-autorenew-patch.d.ts.map +0 -1
  474. package/dist/es/patches/topic-autorenew-patch.d.ts +0 -2
  475. package/dist/es/patches/topic-autorenew-patch.d.ts.map +0 -1
@@ -1,22 +1,38 @@
1
- import { Logger } from "./standards-sdk.es106.js";
2
- class PersonBuilder {
1
+ import { VerificationType } from "./standards-sdk.es28.js";
2
+ import { Logger } from "./standards-sdk.es105.js";
3
+ class MCPServerBuilder {
3
4
  constructor() {
4
5
  this.config = {
5
- version: "1.0",
6
- type: 0
6
+ mcpServer: {}
7
7
  };
8
+ this.socials = [];
8
9
  this.logger = Logger.getInstance({
9
- module: "PersonBuilder"
10
+ module: "MCPServerBuilder"
10
11
  });
11
12
  }
13
+ /**
14
+ * Sets the display name of the MCP server
15
+ *
16
+ * @param name The display name for the MCP server profile
17
+ */
12
18
  setName(name) {
13
- this.config.display_name = name;
19
+ this.config.name = name;
14
20
  return this;
15
21
  }
22
+ /**
23
+ * Sets the alias for the MCP server
24
+ *
25
+ * @param alias Alternative identifier for the MCP server
26
+ */
16
27
  setAlias(alias) {
17
28
  this.config.alias = alias;
18
29
  return this;
19
30
  }
31
+ /**
32
+ * Sets the bio/description for the MCP server profile
33
+ *
34
+ * @param bio Brief description or biography for the MCP server
35
+ */
20
36
  setBio(bio) {
21
37
  this.config.bio = bio;
22
38
  return this;
@@ -27,81 +43,390 @@ class PersonBuilder {
27
43
  setDescription(description) {
28
44
  return this.setBio(description);
29
45
  }
30
- addSocial(platform, handle) {
31
- if (!this.config.socials) {
32
- this.config.socials = [];
46
+ /**
47
+ * Sets the version of the MCP server
48
+ *
49
+ * @param version The MCP server version (e.g., "2024-06-01")
50
+ */
51
+ setVersion(version) {
52
+ if (!this.config.mcpServer) {
53
+ this.config.mcpServer = {};
54
+ }
55
+ this.config.mcpServer.version = version;
56
+ return this;
57
+ }
58
+ /**
59
+ * Sets the connection information for the MCP server
60
+ *
61
+ * @param url Base URL for the MCP server (e.g., "https://mcp.example.com")
62
+ * @param transport Transport type ("stdio" or "sse")
63
+ */
64
+ setConnectionInfo(url, transport) {
65
+ if (!this.config.mcpServer) {
66
+ this.config.mcpServer = {};
67
+ }
68
+ const connectionInfo = {
69
+ url,
70
+ transport
71
+ };
72
+ this.config.mcpServer.connectionInfo = connectionInfo;
73
+ return this;
74
+ }
75
+ /**
76
+ * Sets the detailed description for the MCP server capabilities
77
+ *
78
+ * @param description Detailed description of server functionality
79
+ */
80
+ setServerDescription(description) {
81
+ if (!this.config.mcpServer) {
82
+ this.config.mcpServer = {};
83
+ }
84
+ this.config.mcpServer.description = description;
85
+ return this;
86
+ }
87
+ /**
88
+ * Sets the services/capabilities provided by the MCP server
89
+ *
90
+ * @param services Array of service types offered by this MCP server
91
+ */
92
+ setServices(services) {
93
+ if (!this.config.mcpServer) {
94
+ this.config.mcpServer = {};
95
+ }
96
+ this.config.mcpServer.services = services;
97
+ return this;
98
+ }
99
+ /**
100
+ * Sets the minimum host version requirements
101
+ *
102
+ * @param minVersion Minimum host version required (e.g., "2024-11-05")
103
+ */
104
+ setHostRequirements(minVersion) {
105
+ if (!this.config.mcpServer) {
106
+ this.config.mcpServer = {};
107
+ }
108
+ const hostInfo = {
109
+ minVersion
110
+ };
111
+ this.config.mcpServer.host = hostInfo;
112
+ return this;
113
+ }
114
+ /**
115
+ * Sets the MCP capabilities supported by the server
116
+ *
117
+ * @param capabilities Array of capability strings (e.g., ["resources.get", "tools.invoke"])
118
+ */
119
+ setCapabilities(capabilities) {
120
+ if (!this.config.mcpServer) {
121
+ this.config.mcpServer = {};
122
+ }
123
+ this.config.mcpServer.capabilities = capabilities;
124
+ return this;
125
+ }
126
+ /**
127
+ * Adds a resource that the MCP server exposes
128
+ *
129
+ * @param name Resource name identifier (e.g., "hcs_topics")
130
+ * @param description Human-readable description of the resource
131
+ */
132
+ addResource(name, description) {
133
+ if (!this.config.mcpServer) {
134
+ this.config.mcpServer = {};
135
+ }
136
+ if (!this.config.mcpServer.resources) {
137
+ this.config.mcpServer.resources = [];
138
+ }
139
+ const resource = {
140
+ name,
141
+ description
142
+ };
143
+ this.config.mcpServer.resources.push(resource);
144
+ return this;
145
+ }
146
+ /**
147
+ * Sets all resources the MCP server exposes (replaces existing resources)
148
+ *
149
+ * @param resources Array of resource objects with name and description
150
+ */
151
+ setResources(resources) {
152
+ if (!this.config.mcpServer) {
153
+ this.config.mcpServer = {};
154
+ }
155
+ this.config.mcpServer.resources = resources;
156
+ return this;
157
+ }
158
+ /**
159
+ * Adds a tool that the MCP server provides
160
+ *
161
+ * @param name Tool name identifier (e.g., "topic_submit")
162
+ * @param description Human-readable description of what the tool does
163
+ */
164
+ addTool(name, description) {
165
+ if (!this.config.mcpServer) {
166
+ this.config.mcpServer = {};
167
+ }
168
+ if (!this.config.mcpServer.tools) {
169
+ this.config.mcpServer.tools = [];
170
+ }
171
+ const tool = {
172
+ name,
173
+ description
174
+ };
175
+ this.config.mcpServer.tools.push(tool);
176
+ return this;
177
+ }
178
+ /**
179
+ * Sets all tools the MCP server provides (replaces existing tools)
180
+ *
181
+ * @param tools Array of tool objects with name and description
182
+ */
183
+ setTools(tools) {
184
+ if (!this.config.mcpServer) {
185
+ this.config.mcpServer = {};
186
+ }
187
+ this.config.mcpServer.tools = tools;
188
+ return this;
189
+ }
190
+ /**
191
+ * Sets information about who maintains the MCP server
192
+ *
193
+ * @param maintainer Organization or entity maintaining this MCP server
194
+ */
195
+ setMaintainer(maintainer) {
196
+ if (!this.config.mcpServer) {
197
+ this.config.mcpServer = {};
33
198
  }
34
- const existingSocial = this.config.socials.find(
35
- (s) => s.platform === platform
36
- );
199
+ this.config.mcpServer.maintainer = maintainer;
200
+ return this;
201
+ }
202
+ /**
203
+ * Sets the URL to the source code repository
204
+ *
205
+ * @param repository URL to source code repository
206
+ */
207
+ setRepository(repository) {
208
+ if (!this.config.mcpServer) {
209
+ this.config.mcpServer = {};
210
+ }
211
+ this.config.mcpServer.repository = repository;
212
+ return this;
213
+ }
214
+ /**
215
+ * Sets the URL to the server documentation
216
+ *
217
+ * @param docs URL to server documentation
218
+ */
219
+ setDocs(docs) {
220
+ if (!this.config.mcpServer) {
221
+ this.config.mcpServer = {};
222
+ }
223
+ this.config.mcpServer.docs = docs;
224
+ return this;
225
+ }
226
+ /**
227
+ * Sets the verification information for the MCP server
228
+ *
229
+ * @param verification Complete verification object
230
+ */
231
+ setVerification(verification) {
232
+ if (!this.config.mcpServer) {
233
+ this.config.mcpServer = {};
234
+ }
235
+ this.config.mcpServer.verification = verification;
236
+ return this;
237
+ }
238
+ /**
239
+ * Adds DNS-based verification of endpoint ownership
240
+ *
241
+ * For DNS verification, the MCP server owner must add a DNS TXT record to their domain with:
242
+ * - Name: By default, `_hedera` or a custom name specified in `dnsField` (automatically prefixed with `_`)
243
+ * - Value: Equal to their Hedera account ID (e.g., `0.0.12345678`)
244
+ *
245
+ * Example DNS record:
246
+ * ```
247
+ * _hedera.example.com. 3600 IN TXT "0.0.12345678"
248
+ * ```
249
+ *
250
+ * @param domain The fully qualified domain name to check (e.g., "example.com")
251
+ * @param dnsField Optional custom DNS TXT record name (defaults to "hedera")
252
+ */
253
+ addVerificationDNS(domain, dnsField) {
254
+ if (!this.config.mcpServer) {
255
+ this.config.mcpServer = {};
256
+ }
257
+ const verification = {
258
+ type: VerificationType.DNS,
259
+ value: domain,
260
+ dns_field: dnsField
261
+ };
262
+ this.config.mcpServer.verification = verification;
263
+ return this;
264
+ }
265
+ /**
266
+ * Adds signature-based verification of endpoint ownership
267
+ *
268
+ * For signature verification:
269
+ * 1. The message to be signed must be the server URL exactly as it appears in the connectionInfo.url field
270
+ * 2. The signature must be created using the ED25519 key associated with the Hedera account
271
+ * 3. The signature must be encoded as a hexadecimal string with no `0x` prefix
272
+ *
273
+ * @param signature Hex-encoded ED25519 signature of the server URL
274
+ */
275
+ addVerificationSignature(signature) {
276
+ if (!this.config.mcpServer) {
277
+ this.config.mcpServer = {};
278
+ }
279
+ const verification = {
280
+ type: VerificationType.SIGNATURE,
281
+ value: signature
282
+ };
283
+ this.config.mcpServer.verification = verification;
284
+ return this;
285
+ }
286
+ /**
287
+ * Adds challenge-based verification of endpoint ownership
288
+ *
289
+ * For challenge verification:
290
+ * 1. The MCP server must expose an endpoint that responds to HTTP GET requests
291
+ * 2. The endpoint path defaults to "/hedera-verification" or can be customized with challengePath
292
+ * 3. The server must respond with a JSON object containing:
293
+ * ```json
294
+ * {
295
+ * "accountId": "0.0.12345678",
296
+ * "timestamp": 1620000000000,
297
+ * "signature": "a1b2c3d4e5f6..."
298
+ * }
299
+ * ```
300
+ * 4. The signature must be an ED25519 signature of the UTF-8 encoded string `{accountId}:{timestamp}`
301
+ *
302
+ * @param challengePath Optional custom challenge endpoint path (defaults to "hedera-verification")
303
+ */
304
+ addVerificationChallenge(challengePath) {
305
+ if (!this.config.mcpServer) {
306
+ this.config.mcpServer = {};
307
+ }
308
+ const verification = {
309
+ type: VerificationType.CHALLENGE,
310
+ value: "",
311
+ challenge_path: challengePath
312
+ };
313
+ this.config.mcpServer.verification = verification;
314
+ return this;
315
+ }
316
+ /**
317
+ * Adds a social media link to the profile
318
+ *
319
+ * @param platform Social media platform (e.g., "twitter", "github")
320
+ * @param handle Username on the platform (e.g., "@username", "username")
321
+ */
322
+ addSocial(platform, handle) {
323
+ const existingSocial = this.socials.find((s) => s.platform === platform);
37
324
  if (!existingSocial) {
38
- this.config.socials.push({ platform, handle });
325
+ const socialLink = {
326
+ platform,
327
+ handle
328
+ };
329
+ this.socials.push(socialLink);
39
330
  } else {
40
331
  existingSocial.handle = handle;
41
332
  }
42
333
  return this;
43
334
  }
44
- setProfileImage(profileImage) {
45
- this.config.profileImage = profileImage;
335
+ /**
336
+ * Sets all social media links for the profile (replaces existing links)
337
+ *
338
+ * @param socials Array of social media links
339
+ */
340
+ setSocials(socials) {
341
+ this.socials = socials;
46
342
  return this;
47
343
  }
344
+ /**
345
+ * Sets the profile picture for the MCP server
346
+ *
347
+ * @param pfpBuffer Buffer containing the profile picture data
348
+ * @param pfpFileName Filename for the profile picture including extension
349
+ */
48
350
  setProfilePicture(pfpBuffer, pfpFileName) {
49
351
  this.config.pfpBuffer = pfpBuffer;
50
352
  this.config.pfpFileName = pfpFileName;
51
353
  return this;
52
354
  }
355
+ /**
356
+ * Sets a reference to an existing profile picture
357
+ *
358
+ * @param pfpTopicId Topic ID containing the profile picture (for reuse)
359
+ */
53
360
  setExistingProfilePicture(pfpTopicId) {
54
- this.config.profileImage = `hcs://1/${pfpTopicId}`;
55
- return this;
56
- }
57
- addProperty(key, value) {
58
- if (!this.config.properties) {
59
- this.config.properties = {};
60
- }
61
- this.config.properties[key] = value;
62
- return this;
63
- }
64
- setInboundTopicId(topicId) {
65
- this.config.inboundTopicId = topicId;
361
+ this.config.existingPfpTopicId = pfpTopicId;
66
362
  return this;
67
363
  }
68
- setOutboundTopicId(topicId) {
69
- this.config.outboundTopicId = topicId;
364
+ /**
365
+ * Sets the network type (mainnet or testnet)
366
+ *
367
+ * @param network Network type ("mainnet" or "testnet")
368
+ */
369
+ setNetworkType(network) {
370
+ this.config.network = network;
70
371
  return this;
71
372
  }
72
- getProfilePicture() {
73
- return {
74
- pfpBuffer: this.config.pfpBuffer,
75
- pfpFileName: this.config.pfpFileName
373
+ /**
374
+ * Sets an existing account to use for the MCP server
375
+ *
376
+ * @param accountId Hedera account ID (e.g., "0.0.12345678")
377
+ * @param privateKey ED25519 private key as a string
378
+ */
379
+ setExistingAccount(accountId, privateKey) {
380
+ this.config.existingAccount = {
381
+ accountId,
382
+ privateKey
76
383
  };
384
+ return this;
77
385
  }
386
+ /**
387
+ * Builds and validates the MCP server configuration
388
+ *
389
+ * @returns Complete MCPServerConfig object ready for use
390
+ * @throws Error if required fields are missing
391
+ */
78
392
  build() {
79
- if (!this.config.display_name) {
80
- throw new Error("Display name is required for the profile");
393
+ if (!this.config.name) {
394
+ throw new Error("MCP server name is required");
395
+ }
396
+ if (!this.config.network) {
397
+ throw new Error("Network type is required");
398
+ }
399
+ if (!this.config.mcpServer) {
400
+ throw new Error("MCP server details are required");
401
+ }
402
+ if (!this.config.mcpServer.version) {
403
+ throw new Error("MCP server version is required");
404
+ }
405
+ if (!this.config.mcpServer.connectionInfo) {
406
+ throw new Error("MCP server connection info is required");
407
+ }
408
+ if (!this.config.mcpServer.services || this.config.mcpServer.services.length === 0) {
409
+ throw new Error("At least one MCP service type is required");
410
+ }
411
+ if (!this.config.mcpServer.description) {
412
+ throw new Error("MCP server description is required");
81
413
  }
82
414
  if (!this.config.bio) {
83
- this.logger.warn("No bio provided for person profile");
415
+ this.logger.warn("No bio provided for MCP server profile");
84
416
  }
85
- if (!this.config.pfpBuffer && !this.config.profileImage) {
417
+ if (!this.config.pfpBuffer && !this.config.existingPfpTopicId) {
86
418
  this.logger.warn("No profile picture provided or referenced");
87
419
  }
88
- return {
89
- version: this.config.version,
90
- type: 0,
91
- display_name: this.config.display_name,
92
- alias: this.config.alias,
93
- bio: this.config.bio,
94
- socials: this.config.socials,
95
- profileImage: this.config.profileImage,
96
- properties: this.config.properties,
97
- inboundTopicId: this.config.inboundTopicId,
98
- outboundTopicId: this.config.outboundTopicId,
99
- pfpBuffer: this.config.pfpBuffer,
100
- pfpFileName: this.config.pfpFileName
101
- };
420
+ if (this.socials.length > 0) {
421
+ return {
422
+ ...this.config,
423
+ socials: this.socials
424
+ };
425
+ }
426
+ return this.config;
102
427
  }
103
428
  }
104
429
  export {
105
- PersonBuilder
430
+ MCPServerBuilder
106
431
  };
107
432
  //# sourceMappingURL=standards-sdk.es25.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es25.js","sources":["../../src/hcs-11/person-builder.ts"],"sourcesContent":["import { HCS11Profile, SocialLink, SocialPlatform } from './types';\nimport { Logger, ILogger } from '../utils/logger';\n\nexport class PersonBuilder {\n private config: Partial<\n HCS11Profile & { pfpBuffer?: Buffer; pfpFileName?: string }\n > = {\n version: '1.0',\n type: 0,\n };\n private logger: ILogger;\n\n constructor() {\n this.logger = Logger.getInstance({\n module: 'PersonBuilder',\n });\n }\n\n setName(name: string): this {\n this.config.display_name = name;\n return this;\n }\n\n setAlias(alias: string): this {\n this.config.alias = alias;\n return this;\n }\n\n setBio(bio: string): this {\n this.config.bio = bio;\n return this;\n }\n\n /**\n * @deprecated Use setBio instead\n */\n setDescription(description: string): this {\n return this.setBio(description);\n }\n\n addSocial(platform: SocialPlatform, handle: string): this {\n if (!this.config.socials) {\n this.config.socials = [];\n }\n const existingSocial = this.config.socials.find(\n (s: SocialLink) => s.platform === platform,\n );\n if (!existingSocial) {\n this.config.socials.push({ platform, handle });\n } else {\n existingSocial.handle = handle;\n }\n return this;\n }\n\n setProfileImage(profileImage: string): this {\n this.config.profileImage = profileImage;\n return this;\n }\n\n setProfilePicture(pfpBuffer: Buffer, pfpFileName: string): this {\n this.config.pfpBuffer = pfpBuffer;\n this.config.pfpFileName = pfpFileName;\n return this;\n }\n\n setExistingProfilePicture(pfpTopicId: string): this {\n this.config.profileImage = `hcs://1/${pfpTopicId}`;\n return this;\n }\n\n addProperty(key: string, value: any): this {\n if (!this.config.properties) {\n this.config.properties = {};\n }\n this.config.properties[key] = value;\n return this;\n }\n\n setInboundTopicId(topicId: string): this {\n this.config.inboundTopicId = topicId;\n return this;\n }\n\n setOutboundTopicId(topicId: string): this {\n this.config.outboundTopicId = topicId;\n return this;\n }\n\n getProfilePicture(): { pfpBuffer?: Buffer; pfpFileName?: string } {\n return {\n pfpBuffer: this.config.pfpBuffer,\n pfpFileName: this.config.pfpFileName,\n };\n }\n\n build(): HCS11Profile & { pfpBuffer?: Buffer; pfpFileName?: string } {\n if (!this.config.display_name) {\n throw new Error('Display name is required for the profile');\n }\n\n if (!this.config.bio) {\n this.logger.warn('No bio provided for person profile');\n }\n\n if (!this.config.pfpBuffer && !this.config.profileImage) {\n this.logger.warn('No profile picture provided or referenced');\n }\n\n return {\n version: this.config.version!,\n type: 0,\n display_name: this.config.display_name,\n alias: this.config.alias,\n bio: this.config.bio,\n socials: this.config.socials,\n profileImage: this.config.profileImage,\n properties: this.config.properties,\n inboundTopicId: this.config.inboundTopicId,\n outboundTopicId: this.config.outboundTopicId,\n pfpBuffer: this.config.pfpBuffer,\n pfpFileName: this.config.pfpFileName,\n };\n }\n}\n"],"names":[],"mappings":";AAGO,MAAM,cAAc;AAAA,EASzB,cAAc;AARd,SAAQ,SAEJ;AAAA,MACF,SAAS;AAAA,MACT,MAAM;AAAA,IAAA;AAKN,SAAK,SAAS,OAAO,YAAY;AAAA,MAC/B,QAAQ;AAAA,IAAA,CACT;AAAA,EACH;AAAA,EAEA,QAAQ,MAAoB;AAC1B,SAAK,OAAO,eAAe;AAC3B,WAAO;AAAA,EACT;AAAA,EAEA,SAAS,OAAqB;AAC5B,SAAK,OAAO,QAAQ;AACpB,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,KAAmB;AACxB,SAAK,OAAO,MAAM;AAClB,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,eAAe,aAA2B;AACxC,WAAO,KAAK,OAAO,WAAW;AAAA,EAChC;AAAA,EAEA,UAAU,UAA0B,QAAsB;AACxD,QAAI,CAAC,KAAK,OAAO,SAAS;AACxB,WAAK,OAAO,UAAU,CAAA;AAAA,IACxB;AACA,UAAM,iBAAiB,KAAK,OAAO,QAAQ;AAAA,MACzC,CAAC,MAAkB,EAAE,aAAa;AAAA,IAAA;AAEpC,QAAI,CAAC,gBAAgB;AACnB,WAAK,OAAO,QAAQ,KAAK,EAAE,UAAU,QAAQ;AAAA,IAC/C,OAAO;AACL,qBAAe,SAAS;AAAA,IAC1B;AACA,WAAO;AAAA,EACT;AAAA,EAEA,gBAAgB,cAA4B;AAC1C,SAAK,OAAO,eAAe;AAC3B,WAAO;AAAA,EACT;AAAA,EAEA,kBAAkB,WAAmB,aAA2B;AAC9D,SAAK,OAAO,YAAY;AACxB,SAAK,OAAO,cAAc;AAC1B,WAAO;AAAA,EACT;AAAA,EAEA,0BAA0B,YAA0B;AAClD,SAAK,OAAO,eAAe,WAAW,UAAU;AAChD,WAAO;AAAA,EACT;AAAA,EAEA,YAAY,KAAa,OAAkB;AACzC,QAAI,CAAC,KAAK,OAAO,YAAY;AAC3B,WAAK,OAAO,aAAa,CAAA;AAAA,IAC3B;AACA,SAAK,OAAO,WAAW,GAAG,IAAI;AAC9B,WAAO;AAAA,EACT;AAAA,EAEA,kBAAkB,SAAuB;AACvC,SAAK,OAAO,iBAAiB;AAC7B,WAAO;AAAA,EACT;AAAA,EAEA,mBAAmB,SAAuB;AACxC,SAAK,OAAO,kBAAkB;AAC9B,WAAO;AAAA,EACT;AAAA,EAEA,oBAAkE;AAChE,WAAO;AAAA,MACL,WAAW,KAAK,OAAO;AAAA,MACvB,aAAa,KAAK,OAAO;AAAA,IAAA;AAAA,EAE7B;AAAA,EAEA,QAAqE;AACnE,QAAI,CAAC,KAAK,OAAO,cAAc;AAC7B,YAAM,IAAI,MAAM,0CAA0C;AAAA,IAC5D;AAEA,QAAI,CAAC,KAAK,OAAO,KAAK;AACpB,WAAK,OAAO,KAAK,oCAAoC;AAAA,IACvD;AAEA,QAAI,CAAC,KAAK,OAAO,aAAa,CAAC,KAAK,OAAO,cAAc;AACvD,WAAK,OAAO,KAAK,2CAA2C;AAAA,IAC9D;AAEA,WAAO;AAAA,MACL,SAAS,KAAK,OAAO;AAAA,MACrB,MAAM;AAAA,MACN,cAAc,KAAK,OAAO;AAAA,MAC1B,OAAO,KAAK,OAAO;AAAA,MACnB,KAAK,KAAK,OAAO;AAAA,MACjB,SAAS,KAAK,OAAO;AAAA,MACrB,cAAc,KAAK,OAAO;AAAA,MAC1B,YAAY,KAAK,OAAO;AAAA,MACxB,gBAAgB,KAAK,OAAO;AAAA,MAC5B,iBAAiB,KAAK,OAAO;AAAA,MAC7B,WAAW,KAAK,OAAO;AAAA,MACvB,aAAa,KAAK,OAAO;AAAA,IAAA;AAAA,EAE7B;AACF;"}
1
+ {"version":3,"file":"standards-sdk.es25.js","sources":["../../src/hcs-11/mcp-server-builder.ts"],"sourcesContent":["import {\n MCPServerConfig,\n MCPServerDetails,\n MCPServerConnectionInfo,\n MCPServerVerification,\n MCPServerHost,\n MCPServerResource,\n MCPServerTool,\n MCPServerCapability,\n SocialPlatform,\n VerificationType,\n SocialLink,\n} from './types';\nimport { Logger, ILogger } from '../utils/logger';\nimport { NetworkType } from '../utils/types';\n\n/**\n * MCPServerBuilder is a builder class for creating MCP server configurations.\n * It provides a fluent interface for setting various properties of the MCP server.\n *\n * Example usage:\n * ```typescript\n * const mcpBuilder = new MCPServerBuilder();\n * mcpBuilder.setName('My MCP Server');\n * mcpBuilder.setServerDescription('This is my MCP server for AI integration');\n * mcpBuilder.setVersion('2024-06-01');\n * mcpBuilder.setConnectionInfo('https://mcp.example.com', 'sse');\n * mcpBuilder.setServices([MCPServerCapability.TOOL_PROVIDER, MCPServerCapability.API_INTEGRATION]);\n * mcpBuilder.setNetworkType('mainnet');\n * mcpBuilder.addVerificationDNS('example.com', 'mcp-verify');\n * const serverConfig = mcpBuilder.build();\n * ```\n */\nexport class MCPServerBuilder {\n private config: Partial<MCPServerConfig> = {\n mcpServer: {} as MCPServerDetails,\n };\n private socials: SocialLink[] = [];\n private logger: ILogger;\n\n constructor() {\n this.logger = Logger.getInstance({\n module: 'MCPServerBuilder',\n });\n }\n\n /**\n * Sets the display name of the MCP server\n *\n * @param name The display name for the MCP server profile\n */\n setName(name: string): this {\n this.config.name = name;\n return this;\n }\n\n /**\n * Sets the alias for the MCP server\n *\n * @param alias Alternative identifier for the MCP server\n */\n setAlias(alias: string): this {\n this.config.alias = alias;\n return this;\n }\n\n /**\n * Sets the bio/description for the MCP server profile\n *\n * @param bio Brief description or biography for the MCP server\n */\n setBio(bio: string): this {\n this.config.bio = bio;\n return this;\n }\n\n /**\n * @deprecated Use setBio instead\n */\n setDescription(description: string): this {\n return this.setBio(description);\n }\n\n /**\n * Sets the version of the MCP server\n *\n * @param version The MCP server version (e.g., \"2024-06-01\")\n */\n setVersion(version: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n this.config.mcpServer.version = version;\n return this;\n }\n\n /**\n * Sets the connection information for the MCP server\n *\n * @param url Base URL for the MCP server (e.g., \"https://mcp.example.com\")\n * @param transport Transport type (\"stdio\" or \"sse\")\n */\n setConnectionInfo(url: string, transport: 'stdio' | 'sse'): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n const connectionInfo: MCPServerConnectionInfo = {\n url,\n transport,\n };\n\n this.config.mcpServer.connectionInfo = connectionInfo;\n return this;\n }\n\n /**\n * Sets the detailed description for the MCP server capabilities\n *\n * @param description Detailed description of server functionality\n */\n setServerDescription(description: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n this.config.mcpServer.description = description;\n return this;\n }\n\n /**\n * Sets the services/capabilities provided by the MCP server\n *\n * @param services Array of service types offered by this MCP server\n */\n setServices(services: MCPServerCapability[]): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n this.config.mcpServer.services = services;\n return this;\n }\n\n /**\n * Sets the minimum host version requirements\n *\n * @param minVersion Minimum host version required (e.g., \"2024-11-05\")\n */\n setHostRequirements(minVersion?: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n const hostInfo: MCPServerHost = {\n minVersion,\n };\n\n this.config.mcpServer.host = hostInfo;\n return this;\n }\n\n /**\n * Sets the MCP capabilities supported by the server\n *\n * @param capabilities Array of capability strings (e.g., [\"resources.get\", \"tools.invoke\"])\n */\n setCapabilities(capabilities: string[]): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n this.config.mcpServer.capabilities = capabilities;\n return this;\n }\n\n /**\n * Adds a resource that the MCP server exposes\n *\n * @param name Resource name identifier (e.g., \"hcs_topics\")\n * @param description Human-readable description of the resource\n */\n addResource(name: string, description: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n if (!this.config.mcpServer.resources) {\n this.config.mcpServer.resources = [];\n }\n\n const resource: MCPServerResource = {\n name,\n description,\n };\n\n this.config.mcpServer.resources.push(resource);\n return this;\n }\n\n /**\n * Sets all resources the MCP server exposes (replaces existing resources)\n *\n * @param resources Array of resource objects with name and description\n */\n setResources(resources: MCPServerResource[]): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n this.config.mcpServer.resources = resources;\n return this;\n }\n\n /**\n * Adds a tool that the MCP server provides\n *\n * @param name Tool name identifier (e.g., \"topic_submit\")\n * @param description Human-readable description of what the tool does\n */\n addTool(name: string, description: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n if (!this.config.mcpServer.tools) {\n this.config.mcpServer.tools = [];\n }\n\n const tool: MCPServerTool = {\n name,\n description,\n };\n\n this.config.mcpServer.tools.push(tool);\n return this;\n }\n\n /**\n * Sets all tools the MCP server provides (replaces existing tools)\n *\n * @param tools Array of tool objects with name and description\n */\n setTools(tools: MCPServerTool[]): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n this.config.mcpServer.tools = tools;\n return this;\n }\n\n /**\n * Sets information about who maintains the MCP server\n *\n * @param maintainer Organization or entity maintaining this MCP server\n */\n setMaintainer(maintainer: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n this.config.mcpServer.maintainer = maintainer;\n return this;\n }\n\n /**\n * Sets the URL to the source code repository\n *\n * @param repository URL to source code repository\n */\n setRepository(repository: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n this.config.mcpServer.repository = repository;\n return this;\n }\n\n /**\n * Sets the URL to the server documentation\n *\n * @param docs URL to server documentation\n */\n setDocs(docs: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n this.config.mcpServer.docs = docs;\n return this;\n }\n\n /**\n * Sets the verification information for the MCP server\n *\n * @param verification Complete verification object\n */\n setVerification(verification: MCPServerVerification): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n this.config.mcpServer.verification = verification;\n return this;\n }\n\n /**\n * Adds DNS-based verification of endpoint ownership\n *\n * For DNS verification, the MCP server owner must add a DNS TXT record to their domain with:\n * - Name: By default, `_hedera` or a custom name specified in `dnsField` (automatically prefixed with `_`)\n * - Value: Equal to their Hedera account ID (e.g., `0.0.12345678`)\n *\n * Example DNS record:\n * ```\n * _hedera.example.com. 3600 IN TXT \"0.0.12345678\"\n * ```\n *\n * @param domain The fully qualified domain name to check (e.g., \"example.com\")\n * @param dnsField Optional custom DNS TXT record name (defaults to \"hedera\")\n */\n addVerificationDNS(domain: string, dnsField?: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n const verification: MCPServerVerification = {\n type: VerificationType.DNS,\n value: domain,\n dns_field: dnsField,\n };\n\n this.config.mcpServer.verification = verification;\n return this;\n }\n\n /**\n * Adds signature-based verification of endpoint ownership\n *\n * For signature verification:\n * 1. The message to be signed must be the server URL exactly as it appears in the connectionInfo.url field\n * 2. The signature must be created using the ED25519 key associated with the Hedera account\n * 3. The signature must be encoded as a hexadecimal string with no `0x` prefix\n *\n * @param signature Hex-encoded ED25519 signature of the server URL\n */\n addVerificationSignature(signature: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n const verification: MCPServerVerification = {\n type: VerificationType.SIGNATURE,\n value: signature,\n };\n\n this.config.mcpServer.verification = verification;\n return this;\n }\n\n /**\n * Adds challenge-based verification of endpoint ownership\n *\n * For challenge verification:\n * 1. The MCP server must expose an endpoint that responds to HTTP GET requests\n * 2. The endpoint path defaults to \"/hedera-verification\" or can be customized with challengePath\n * 3. The server must respond with a JSON object containing:\n * ```json\n * {\n * \"accountId\": \"0.0.12345678\",\n * \"timestamp\": 1620000000000,\n * \"signature\": \"a1b2c3d4e5f6...\"\n * }\n * ```\n * 4. The signature must be an ED25519 signature of the UTF-8 encoded string `{accountId}:{timestamp}`\n *\n * @param challengePath Optional custom challenge endpoint path (defaults to \"hedera-verification\")\n */\n addVerificationChallenge(challengePath?: string): this {\n if (!this.config.mcpServer) {\n this.config.mcpServer = {} as MCPServerDetails;\n }\n\n const verification: MCPServerVerification = {\n type: VerificationType.CHALLENGE,\n value: '',\n challenge_path: challengePath,\n };\n\n this.config.mcpServer.verification = verification;\n return this;\n }\n\n /**\n * Adds a social media link to the profile\n *\n * @param platform Social media platform (e.g., \"twitter\", \"github\")\n * @param handle Username on the platform (e.g., \"@username\", \"username\")\n */\n addSocial(platform: SocialPlatform, handle: string): this {\n const existingSocial = this.socials.find(s => s.platform === platform);\n\n if (!existingSocial) {\n const socialLink: SocialLink = {\n platform,\n handle,\n };\n\n this.socials.push(socialLink);\n } else {\n existingSocial.handle = handle;\n }\n\n return this;\n }\n\n /**\n * Sets all social media links for the profile (replaces existing links)\n *\n * @param socials Array of social media links\n */\n setSocials(socials: SocialLink[]): this {\n this.socials = socials;\n return this;\n }\n\n /**\n * Sets the profile picture for the MCP server\n *\n * @param pfpBuffer Buffer containing the profile picture data\n * @param pfpFileName Filename for the profile picture including extension\n */\n setProfilePicture(pfpBuffer: Buffer, pfpFileName: string): this {\n this.config.pfpBuffer = pfpBuffer;\n this.config.pfpFileName = pfpFileName;\n return this;\n }\n\n /**\n * Sets a reference to an existing profile picture\n *\n * @param pfpTopicId Topic ID containing the profile picture (for reuse)\n */\n setExistingProfilePicture(pfpTopicId: string): this {\n this.config.existingPfpTopicId = pfpTopicId;\n return this;\n }\n\n /**\n * Sets the network type (mainnet or testnet)\n *\n * @param network Network type (\"mainnet\" or \"testnet\")\n */\n setNetworkType(network: NetworkType): this {\n this.config.network = network;\n return this;\n }\n\n /**\n * Sets an existing account to use for the MCP server\n *\n * @param accountId Hedera account ID (e.g., \"0.0.12345678\")\n * @param privateKey ED25519 private key as a string\n */\n setExistingAccount(accountId: string, privateKey: string): this {\n this.config.existingAccount = {\n accountId,\n privateKey,\n };\n return this;\n }\n\n /**\n * Builds and validates the MCP server configuration\n *\n * @returns Complete MCPServerConfig object ready for use\n * @throws Error if required fields are missing\n */\n build(): MCPServerConfig {\n if (!this.config.name) {\n throw new Error('MCP server name is required');\n }\n\n if (!this.config.network) {\n throw new Error('Network type is required');\n }\n\n if (!this.config.mcpServer) {\n throw new Error('MCP server details are required');\n }\n\n if (!this.config.mcpServer.version) {\n throw new Error('MCP server version is required');\n }\n\n if (!this.config.mcpServer.connectionInfo) {\n throw new Error('MCP server connection info is required');\n }\n\n if (\n !this.config.mcpServer.services ||\n this.config.mcpServer.services.length === 0\n ) {\n throw new Error('At least one MCP service type is required');\n }\n\n if (!this.config.mcpServer.description) {\n throw new Error('MCP server description is required');\n }\n\n if (!this.config.bio) {\n this.logger.warn('No bio provided for MCP server profile');\n }\n\n if (!this.config.pfpBuffer && !this.config.existingPfpTopicId) {\n this.logger.warn('No profile picture provided or referenced');\n }\n\n if (this.socials.length > 0) {\n return {\n ...(this.config as MCPServerConfig),\n socials: this.socials,\n };\n }\n\n return this.config as MCPServerConfig;\n }\n}\n"],"names":[],"mappings":"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"}