@hashgraphonline/standards-sdk 0.1.144 → 0.1.146-chore-jsr-improvements.canary.74bacb9.89

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 (442) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/hcs-10/base-client.d.ts.map +1 -1
  3. package/dist/cjs/hcs-10/sdk.d.ts +8 -0
  4. package/dist/cjs/hcs-10/sdk.d.ts.map +1 -1
  5. package/dist/cjs/hcs-11/client.d.ts +2 -2
  6. package/dist/cjs/hcs-11/client.d.ts.map +1 -1
  7. package/dist/cjs/hcs-11/person-builder.d.ts +1 -0
  8. package/dist/cjs/hcs-11/person-builder.d.ts.map +1 -1
  9. package/dist/cjs/hcs-11/types.d.ts +1 -0
  10. package/dist/cjs/hcs-11/types.d.ts.map +1 -1
  11. package/dist/cjs/hcs-12/rendering/resource-manager.d.ts.map +1 -1
  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-3/src/types.d.ts +60 -0
  35. package/dist/cjs/hcs-3/src/types.d.ts.map +1 -0
  36. package/dist/cjs/hcs-7/types.d.ts +4 -4
  37. package/dist/cjs/index.d.ts.map +1 -1
  38. package/dist/cjs/inscribe/inscriber.d.ts +89 -0
  39. package/dist/cjs/inscribe/inscriber.d.ts.map +1 -1
  40. package/dist/cjs/jsr-entry.d.ts +16 -0
  41. package/dist/cjs/jsr-entry.d.ts.map +1 -0
  42. package/dist/cjs/services/registry-broker/client/base-client.d.ts +14 -1
  43. package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -1
  44. package/dist/cjs/services/registry-broker/client/feedback.d.ts +2 -0
  45. package/dist/cjs/services/registry-broker/client/feedback.d.ts.map +1 -0
  46. package/dist/cjs/services/registry-broker/hol-chat-ops.d.ts +24 -0
  47. package/dist/cjs/services/registry-broker/hol-chat-ops.d.ts.map +1 -0
  48. package/dist/cjs/services/registry-broker/index.d.ts +1 -0
  49. package/dist/cjs/services/registry-broker/index.d.ts.map +1 -1
  50. package/dist/cjs/services/registry-broker/private-key-signer.d.ts +1 -0
  51. package/dist/cjs/services/registry-broker/private-key-signer.d.ts.map +1 -1
  52. package/dist/cjs/services/registry-broker/schemas.d.ts +1010 -586
  53. package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
  54. package/dist/cjs/services/registry-broker/types.d.ts +20 -1
  55. package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
  56. package/dist/cjs/standards-sdk.cjs +3 -3
  57. package/dist/cjs/standards-sdk.cjs.map +1 -1
  58. package/dist/cjs/utils/crypto-abstraction.d.ts.map +1 -1
  59. package/dist/cjs/utils/crypto-env.d.ts.map +1 -1
  60. package/dist/cjs/utils/dynamic-import.d.ts +5 -1
  61. package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
  62. package/dist/cjs/utils/hash-adapter.d.ts.map +1 -1
  63. package/dist/es/hcs-10/base-client.d.ts.map +1 -1
  64. package/dist/es/hcs-10/sdk.d.ts +8 -0
  65. package/dist/es/hcs-10/sdk.d.ts.map +1 -1
  66. package/dist/es/hcs-11/client.d.ts +2 -2
  67. package/dist/es/hcs-11/client.d.ts.map +1 -1
  68. package/dist/es/hcs-11/person-builder.d.ts +1 -0
  69. package/dist/es/hcs-11/person-builder.d.ts.map +1 -1
  70. package/dist/es/hcs-11/types.d.ts +1 -0
  71. package/dist/es/hcs-11/types.d.ts.map +1 -1
  72. package/dist/es/hcs-12/rendering/resource-manager.d.ts.map +1 -1
  73. package/dist/es/hcs-14/issuers/hiero.d.ts.map +1 -1
  74. package/dist/es/hcs-15/browser.d.ts +2 -0
  75. package/dist/es/hcs-15/browser.d.ts.map +1 -1
  76. package/dist/es/hcs-15/sdk.d.ts +7 -1
  77. package/dist/es/hcs-15/sdk.d.ts.map +1 -1
  78. package/dist/es/hcs-15/tx.d.ts +4 -0
  79. package/dist/es/hcs-15/tx.d.ts.map +1 -1
  80. package/dist/es/hcs-15/types.d.ts +16 -1
  81. package/dist/es/hcs-15/types.d.ts.map +1 -1
  82. package/dist/es/hcs-16/browser.d.ts +11 -2
  83. package/dist/es/hcs-16/browser.d.ts.map +1 -1
  84. package/dist/es/hcs-16/sdk.d.ts +62 -1
  85. package/dist/es/hcs-16/sdk.d.ts.map +1 -1
  86. package/dist/es/hcs-16/tx.d.ts +21 -3
  87. package/dist/es/hcs-16/tx.d.ts.map +1 -1
  88. package/dist/es/hcs-17/base-client.d.ts +1 -0
  89. package/dist/es/hcs-17/base-client.d.ts.map +1 -1
  90. package/dist/es/hcs-17/sdk.d.ts.map +1 -1
  91. package/dist/es/hcs-17/tx.d.ts +2 -0
  92. package/dist/es/hcs-17/tx.d.ts.map +1 -1
  93. package/dist/es/hcs-17/types.d.ts +4 -0
  94. package/dist/es/hcs-17/types.d.ts.map +1 -1
  95. package/dist/es/hcs-3/src/types.d.ts +60 -0
  96. package/dist/es/hcs-3/src/types.d.ts.map +1 -0
  97. package/dist/es/hcs-7/types.d.ts +4 -4
  98. package/dist/es/index.d.ts.map +1 -1
  99. package/dist/es/inscribe/inscriber.d.ts +89 -0
  100. package/dist/es/inscribe/inscriber.d.ts.map +1 -1
  101. package/dist/es/jsr-entry.d.ts +16 -0
  102. package/dist/es/jsr-entry.d.ts.map +1 -0
  103. package/dist/es/services/registry-broker/client/base-client.d.ts +14 -1
  104. package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -1
  105. package/dist/es/services/registry-broker/client/feedback.d.ts +2 -0
  106. package/dist/es/services/registry-broker/client/feedback.d.ts.map +1 -0
  107. package/dist/es/services/registry-broker/hol-chat-ops.d.ts +24 -0
  108. package/dist/es/services/registry-broker/hol-chat-ops.d.ts.map +1 -0
  109. package/dist/es/services/registry-broker/index.d.ts +1 -0
  110. package/dist/es/services/registry-broker/index.d.ts.map +1 -1
  111. package/dist/es/services/registry-broker/private-key-signer.d.ts +1 -0
  112. package/dist/es/services/registry-broker/private-key-signer.d.ts.map +1 -1
  113. package/dist/es/services/registry-broker/schemas.d.ts +1010 -586
  114. package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
  115. package/dist/es/services/registry-broker/types.d.ts +20 -1
  116. package/dist/es/services/registry-broker/types.d.ts.map +1 -1
  117. package/dist/es/standards-sdk.es.js +146 -131
  118. package/dist/es/standards-sdk.es10.js +70 -90
  119. package/dist/es/standards-sdk.es10.js.map +1 -1
  120. package/dist/es/standards-sdk.es100.js +229 -26
  121. package/dist/es/standards-sdk.es100.js.map +1 -1
  122. package/dist/es/standards-sdk.es101.js +109 -228
  123. package/dist/es/standards-sdk.es101.js.map +1 -1
  124. package/dist/es/standards-sdk.es102.js +15 -94
  125. package/dist/es/standards-sdk.es102.js.map +1 -1
  126. package/dist/es/standards-sdk.es103.js +80 -30
  127. package/dist/es/standards-sdk.es103.js.map +1 -1
  128. package/dist/es/standards-sdk.es104.js +27 -80
  129. package/dist/es/standards-sdk.es104.js.map +1 -1
  130. package/dist/es/standards-sdk.es105.js +136 -25
  131. package/dist/es/standards-sdk.es105.js.map +1 -1
  132. package/dist/es/standards-sdk.es106.js +27 -140
  133. package/dist/es/standards-sdk.es106.js.map +1 -1
  134. package/dist/es/standards-sdk.es107.js +20 -27
  135. package/dist/es/standards-sdk.es107.js.map +1 -1
  136. package/dist/es/standards-sdk.es108.js +156 -18
  137. package/dist/es/standards-sdk.es108.js.map +1 -1
  138. package/dist/es/standards-sdk.es109.js +198 -148
  139. package/dist/es/standards-sdk.es109.js.map +1 -1
  140. package/dist/es/standards-sdk.es11.js +121 -45
  141. package/dist/es/standards-sdk.es11.js.map +1 -1
  142. package/dist/es/standards-sdk.es110.js +747 -166
  143. package/dist/es/standards-sdk.es110.js.map +1 -1
  144. package/dist/es/standards-sdk.es111.js +9 -786
  145. package/dist/es/standards-sdk.es111.js.map +1 -1
  146. package/dist/es/standards-sdk.es112.js +567 -13
  147. package/dist/es/standards-sdk.es112.js.map +1 -1
  148. package/dist/es/standards-sdk.es113.js +576 -541
  149. package/dist/es/standards-sdk.es113.js.map +1 -1
  150. package/dist/es/standards-sdk.es114.js +12 -601
  151. package/dist/es/standards-sdk.es114.js.map +1 -1
  152. package/dist/es/standards-sdk.es115.js +2 -13
  153. package/dist/es/standards-sdk.es115.js.map +1 -1
  154. package/dist/es/standards-sdk.es116.js +87 -2
  155. package/dist/es/standards-sdk.es116.js.map +1 -1
  156. package/dist/es/standards-sdk.es117.js +37 -80
  157. package/dist/es/standards-sdk.es117.js.map +1 -1
  158. package/dist/es/standards-sdk.es118.js +2 -39
  159. package/dist/es/standards-sdk.es118.js.map +1 -1
  160. package/dist/es/standards-sdk.es119.js +231 -2
  161. package/dist/es/standards-sdk.es119.js.map +1 -1
  162. package/dist/es/standards-sdk.es12.js +60 -159
  163. package/dist/es/standards-sdk.es12.js.map +1 -1
  164. package/dist/es/standards-sdk.es120.js +1110 -193
  165. package/dist/es/standards-sdk.es120.js.map +1 -1
  166. package/dist/es/standards-sdk.es121.js +225 -1059
  167. package/dist/es/standards-sdk.es121.js.map +1 -1
  168. package/dist/es/standards-sdk.es122.js +419 -303
  169. package/dist/es/standards-sdk.es122.js.map +1 -1
  170. package/dist/es/standards-sdk.es123.js +351 -418
  171. package/dist/es/standards-sdk.es123.js.map +1 -1
  172. package/dist/es/standards-sdk.es124.js +1109 -347
  173. package/dist/es/standards-sdk.es124.js.map +1 -1
  174. package/dist/es/standards-sdk.es125.js +182 -854
  175. package/dist/es/standards-sdk.es125.js.map +1 -1
  176. package/dist/es/standards-sdk.es126.js +1512 -153
  177. package/dist/es/standards-sdk.es126.js.map +1 -1
  178. package/dist/es/standards-sdk.es127.js +157 -1547
  179. package/dist/es/standards-sdk.es127.js.map +1 -1
  180. package/dist/es/standards-sdk.es128.js +192 -162
  181. package/dist/es/standards-sdk.es128.js.map +1 -1
  182. package/dist/es/standards-sdk.es129.js +61 -164
  183. package/dist/es/standards-sdk.es129.js.map +1 -1
  184. package/dist/es/standards-sdk.es13.js +200 -60
  185. package/dist/es/standards-sdk.es13.js.map +1 -1
  186. package/dist/es/standards-sdk.es130.js +102 -85
  187. package/dist/es/standards-sdk.es130.js.map +1 -1
  188. package/dist/es/standards-sdk.es131.js +222 -96
  189. package/dist/es/standards-sdk.es131.js.map +1 -1
  190. package/dist/es/standards-sdk.es132.js +153 -220
  191. package/dist/es/standards-sdk.es132.js.map +1 -1
  192. package/dist/es/standards-sdk.es133.js +104 -162
  193. package/dist/es/standards-sdk.es133.js.map +1 -1
  194. package/dist/es/standards-sdk.es134.js +296 -92
  195. package/dist/es/standards-sdk.es134.js.map +1 -1
  196. package/dist/es/standards-sdk.es135.js +432 -294
  197. package/dist/es/standards-sdk.es135.js.map +1 -1
  198. package/dist/es/standards-sdk.es136.js +14 -363
  199. package/dist/es/standards-sdk.es136.js.map +1 -1
  200. package/dist/es/standards-sdk.es137.js +79 -15
  201. package/dist/es/standards-sdk.es137.js.map +1 -1
  202. package/dist/es/standards-sdk.es138.js +79 -59
  203. package/dist/es/standards-sdk.es138.js.map +1 -1
  204. package/dist/es/standards-sdk.es139.js +53 -80
  205. package/dist/es/standards-sdk.es139.js.map +1 -1
  206. package/dist/es/standards-sdk.es14.js +149 -178
  207. package/dist/es/standards-sdk.es14.js.map +1 -1
  208. package/dist/es/standards-sdk.es140.js +1 -1
  209. package/dist/es/standards-sdk.es142.js +1 -1
  210. package/dist/es/standards-sdk.es143.js +1 -1
  211. package/dist/es/standards-sdk.es144.js +30 -28
  212. package/dist/es/standards-sdk.es144.js.map +1 -1
  213. package/dist/es/standards-sdk.es145.js +34 -138
  214. package/dist/es/standards-sdk.es145.js.map +1 -1
  215. package/dist/es/standards-sdk.es146.js +28 -42
  216. package/dist/es/standards-sdk.es146.js.map +1 -1
  217. package/dist/es/standards-sdk.es147.js +105 -12256
  218. package/dist/es/standards-sdk.es147.js.map +1 -1
  219. package/dist/es/standards-sdk.es148.js +40 -15
  220. package/dist/es/standards-sdk.es148.js.map +1 -1
  221. package/dist/es/standards-sdk.es149.js +959 -56
  222. package/dist/es/standards-sdk.es149.js.map +1 -1
  223. package/dist/es/standards-sdk.es15.js +152 -151
  224. package/dist/es/standards-sdk.es15.js.map +1 -1
  225. package/dist/es/standards-sdk.es150.js +12264 -57
  226. package/dist/es/standards-sdk.es150.js.map +1 -1
  227. package/dist/es/standards-sdk.es151.js +51 -167
  228. package/dist/es/standards-sdk.es151.js.map +1 -1
  229. package/dist/es/standards-sdk.es152.js +70 -308
  230. package/dist/es/standards-sdk.es152.js.map +1 -1
  231. package/dist/es/standards-sdk.es153.js +13 -342
  232. package/dist/es/standards-sdk.es153.js.map +1 -1
  233. package/dist/es/standards-sdk.es154.js +129 -410
  234. package/dist/es/standards-sdk.es154.js.map +1 -1
  235. package/dist/es/standards-sdk.es155.js +200 -209
  236. package/dist/es/standards-sdk.es155.js.map +1 -1
  237. package/dist/es/standards-sdk.es156.js +334 -64
  238. package/dist/es/standards-sdk.es156.js.map +1 -1
  239. package/dist/es/standards-sdk.es157.js +453 -871
  240. package/dist/es/standards-sdk.es157.js.map +1 -1
  241. package/dist/es/standards-sdk.es158.js +314 -222
  242. package/dist/es/standards-sdk.es158.js.map +1 -1
  243. package/dist/es/standards-sdk.es159.js +60 -228
  244. package/dist/es/standards-sdk.es159.js.map +1 -1
  245. package/dist/es/standards-sdk.es16.js +917 -136
  246. package/dist/es/standards-sdk.es16.js.map +1 -1
  247. package/dist/es/standards-sdk.es160.js +242 -0
  248. package/dist/es/standards-sdk.es160.js.map +1 -0
  249. package/dist/es/standards-sdk.es161.js +247 -0
  250. package/dist/es/standards-sdk.es161.js.map +1 -0
  251. package/dist/es/standards-sdk.es17.js +23 -944
  252. package/dist/es/standards-sdk.es17.js.map +1 -1
  253. package/dist/es/standards-sdk.es18.js +2422 -24
  254. package/dist/es/standards-sdk.es18.js.map +1 -1
  255. package/dist/es/standards-sdk.es19.js +817 -2071
  256. package/dist/es/standards-sdk.es19.js.map +1 -1
  257. package/dist/es/standards-sdk.es2.js +654 -189
  258. package/dist/es/standards-sdk.es2.js.map +1 -1
  259. package/dist/es/standards-sdk.es20.js +205 -1091
  260. package/dist/es/standards-sdk.es20.js.map +1 -1
  261. package/dist/es/standards-sdk.es21.js +858 -221
  262. package/dist/es/standards-sdk.es21.js.map +1 -1
  263. package/dist/es/standards-sdk.es22.js +179 -903
  264. package/dist/es/standards-sdk.es22.js.map +1 -1
  265. package/dist/es/standards-sdk.es23.js +164 -179
  266. package/dist/es/standards-sdk.es23.js.map +1 -1
  267. package/dist/es/standards-sdk.es24.js +62 -118
  268. package/dist/es/standards-sdk.es24.js.map +1 -1
  269. package/dist/es/standards-sdk.es25.js +377 -52
  270. package/dist/es/standards-sdk.es25.js.map +1 -1
  271. package/dist/es/standards-sdk.es26.js +36 -394
  272. package/dist/es/standards-sdk.es26.js.map +1 -1
  273. package/dist/es/standards-sdk.es27.js +901 -50
  274. package/dist/es/standards-sdk.es27.js.map +1 -1
  275. package/dist/es/standards-sdk.es28.js +134 -902
  276. package/dist/es/standards-sdk.es28.js.map +1 -1
  277. package/dist/es/standards-sdk.es29.js +7 -134
  278. package/dist/es/standards-sdk.es29.js.map +1 -1
  279. package/dist/es/standards-sdk.es3.js +63 -680
  280. package/dist/es/standards-sdk.es3.js.map +1 -1
  281. package/dist/es/standards-sdk.es30.js +344 -7
  282. package/dist/es/standards-sdk.es30.js.map +1 -1
  283. package/dist/es/standards-sdk.es31.js +302 -287
  284. package/dist/es/standards-sdk.es31.js.map +1 -1
  285. package/dist/es/standards-sdk.es32.js +94 -322
  286. package/dist/es/standards-sdk.es32.js.map +1 -1
  287. package/dist/es/standards-sdk.es33.js +458 -101
  288. package/dist/es/standards-sdk.es33.js.map +1 -1
  289. package/dist/es/standards-sdk.es34.js +132 -451
  290. package/dist/es/standards-sdk.es34.js.map +1 -1
  291. package/dist/es/standards-sdk.es35.js +216 -130
  292. package/dist/es/standards-sdk.es35.js.map +1 -1
  293. package/dist/es/standards-sdk.es36.js +273 -195
  294. package/dist/es/standards-sdk.es36.js.map +1 -1
  295. package/dist/es/standards-sdk.es37.js +148 -87
  296. package/dist/es/standards-sdk.es37.js.map +1 -1
  297. package/dist/es/standards-sdk.es38.js +183 -320
  298. package/dist/es/standards-sdk.es38.js.map +1 -1
  299. package/dist/es/standards-sdk.es39.js +238 -161
  300. package/dist/es/standards-sdk.es39.js.map +1 -1
  301. package/dist/es/standards-sdk.es4.js +425 -63
  302. package/dist/es/standards-sdk.es4.js.map +1 -1
  303. package/dist/es/standards-sdk.es40.js +136 -254
  304. package/dist/es/standards-sdk.es40.js.map +1 -1
  305. package/dist/es/standards-sdk.es41.js +225 -176
  306. package/dist/es/standards-sdk.es41.js.map +1 -1
  307. package/dist/es/standards-sdk.es42.js +199 -261
  308. package/dist/es/standards-sdk.es42.js.map +1 -1
  309. package/dist/es/standards-sdk.es43.js +237 -199
  310. package/dist/es/standards-sdk.es43.js.map +1 -1
  311. package/dist/es/standards-sdk.es44.js +209 -201
  312. package/dist/es/standards-sdk.es44.js.map +1 -1
  313. package/dist/es/standards-sdk.es45.js +305 -201
  314. package/dist/es/standards-sdk.es45.js.map +1 -1
  315. package/dist/es/standards-sdk.es46.js +371 -261
  316. package/dist/es/standards-sdk.es46.js.map +1 -1
  317. package/dist/es/standards-sdk.es47.js +316 -371
  318. package/dist/es/standards-sdk.es47.js.map +1 -1
  319. package/dist/es/standards-sdk.es48.js +404 -336
  320. package/dist/es/standards-sdk.es48.js.map +1 -1
  321. package/dist/es/standards-sdk.es49.js +83 -449
  322. package/dist/es/standards-sdk.es49.js.map +1 -1
  323. package/dist/es/standards-sdk.es5.js +232 -354
  324. package/dist/es/standards-sdk.es5.js.map +1 -1
  325. package/dist/es/standards-sdk.es50.js +179 -89
  326. package/dist/es/standards-sdk.es50.js.map +1 -1
  327. package/dist/es/standards-sdk.es51.js +231 -165
  328. package/dist/es/standards-sdk.es51.js.map +1 -1
  329. package/dist/es/standards-sdk.es52.js +25 -262
  330. package/dist/es/standards-sdk.es52.js.map +1 -1
  331. package/dist/es/standards-sdk.es53.js +56 -26
  332. package/dist/es/standards-sdk.es53.js.map +1 -1
  333. package/dist/es/standards-sdk.es54.js +12 -57
  334. package/dist/es/standards-sdk.es54.js.map +1 -1
  335. package/dist/es/standards-sdk.es55.js +49 -12
  336. package/dist/es/standards-sdk.es55.js.map +1 -1
  337. package/dist/es/standards-sdk.es56.js +115 -43
  338. package/dist/es/standards-sdk.es56.js.map +1 -1
  339. package/dist/es/standards-sdk.es57.js +42 -115
  340. package/dist/es/standards-sdk.es57.js.map +1 -1
  341. package/dist/es/standards-sdk.es58.js +52 -43
  342. package/dist/es/standards-sdk.es58.js.map +1 -1
  343. package/dist/es/standards-sdk.es59.js +36 -50
  344. package/dist/es/standards-sdk.es59.js.map +1 -1
  345. package/dist/es/standards-sdk.es6.js +125 -246
  346. package/dist/es/standards-sdk.es6.js.map +1 -1
  347. package/dist/es/standards-sdk.es60.js +207 -39
  348. package/dist/es/standards-sdk.es60.js.map +1 -1
  349. package/dist/es/standards-sdk.es61.js +24 -200
  350. package/dist/es/standards-sdk.es61.js.map +1 -1
  351. package/dist/es/standards-sdk.es62.js +87 -25
  352. package/dist/es/standards-sdk.es62.js.map +1 -1
  353. package/dist/es/standards-sdk.es63.js +3 -51
  354. package/dist/es/standards-sdk.es63.js.map +1 -1
  355. package/dist/es/standards-sdk.es64.js +100 -3
  356. package/dist/es/standards-sdk.es64.js.map +1 -1
  357. package/dist/es/standards-sdk.es65.js +61 -62
  358. package/dist/es/standards-sdk.es65.js.map +1 -1
  359. package/dist/es/standards-sdk.es66.js +17 -98
  360. package/dist/es/standards-sdk.es66.js.map +1 -1
  361. package/dist/es/standards-sdk.es67.js +77 -19
  362. package/dist/es/standards-sdk.es67.js.map +1 -1
  363. package/dist/es/standards-sdk.es68.js +458 -77
  364. package/dist/es/standards-sdk.es68.js.map +1 -1
  365. package/dist/es/standards-sdk.es69.js +106 -240
  366. package/dist/es/standards-sdk.es69.js.map +1 -1
  367. package/dist/es/standards-sdk.es7.js +28 -183
  368. package/dist/es/standards-sdk.es7.js.map +1 -1
  369. package/dist/es/standards-sdk.es70.js +170 -286
  370. package/dist/es/standards-sdk.es70.js.map +1 -1
  371. package/dist/es/standards-sdk.es71.js +71 -207
  372. package/dist/es/standards-sdk.es71.js.map +1 -1
  373. package/dist/es/standards-sdk.es72.js +71 -72
  374. package/dist/es/standards-sdk.es72.js.map +1 -1
  375. package/dist/es/standards-sdk.es73.js +143 -71
  376. package/dist/es/standards-sdk.es73.js.map +1 -1
  377. package/dist/es/standards-sdk.es74.js +62 -136
  378. package/dist/es/standards-sdk.es74.js.map +1 -1
  379. package/dist/es/standards-sdk.es75.js +380 -45
  380. package/dist/es/standards-sdk.es75.js.map +1 -1
  381. package/dist/es/standards-sdk.es76.js +222 -130
  382. package/dist/es/standards-sdk.es76.js.map +1 -1
  383. package/dist/es/standards-sdk.es77.js +320 -444
  384. package/dist/es/standards-sdk.es77.js.map +1 -1
  385. package/dist/es/standards-sdk.es78.js +88 -370
  386. package/dist/es/standards-sdk.es78.js.map +1 -1
  387. package/dist/es/standards-sdk.es79.js +125 -89
  388. package/dist/es/standards-sdk.es79.js.map +1 -1
  389. package/dist/es/standards-sdk.es8.js +80 -29
  390. package/dist/es/standards-sdk.es8.js.map +1 -1
  391. package/dist/es/standards-sdk.es80.js +8 -125
  392. package/dist/es/standards-sdk.es80.js.map +1 -1
  393. package/dist/es/standards-sdk.es81.js +45 -6
  394. package/dist/es/standards-sdk.es81.js.map +1 -1
  395. package/dist/es/standards-sdk.es82.js +98 -44
  396. package/dist/es/standards-sdk.es82.js.map +1 -1
  397. package/dist/es/standards-sdk.es83.js +331 -84
  398. package/dist/es/standards-sdk.es83.js.map +1 -1
  399. package/dist/es/standards-sdk.es84.js +93 -160
  400. package/dist/es/standards-sdk.es84.js.map +1 -1
  401. package/dist/es/standards-sdk.es85.js +55 -275
  402. package/dist/es/standards-sdk.es85.js.map +1 -1
  403. package/dist/es/standards-sdk.es86.js +43 -55
  404. package/dist/es/standards-sdk.es86.js.map +1 -1
  405. package/dist/es/standards-sdk.es87.js +145 -22
  406. package/dist/es/standards-sdk.es87.js.map +1 -1
  407. package/dist/es/standards-sdk.es88.js +34 -47
  408. package/dist/es/standards-sdk.es88.js.map +1 -1
  409. package/dist/es/standards-sdk.es89.js +22 -57
  410. package/dist/es/standards-sdk.es89.js.map +1 -1
  411. package/dist/es/standards-sdk.es9.js +104 -80
  412. package/dist/es/standards-sdk.es9.js.map +1 -1
  413. package/dist/es/standards-sdk.es90.js +23 -28
  414. package/dist/es/standards-sdk.es90.js.map +1 -1
  415. package/dist/es/standards-sdk.es91.js +238 -23
  416. package/dist/es/standards-sdk.es91.js.map +1 -1
  417. package/dist/es/standards-sdk.es92.js +265 -152
  418. package/dist/es/standards-sdk.es92.js.map +1 -1
  419. package/dist/es/standards-sdk.es93.js +95 -68
  420. package/dist/es/standards-sdk.es93.js.map +1 -1
  421. package/dist/es/standards-sdk.es94.js +124 -136
  422. package/dist/es/standards-sdk.es94.js.map +1 -1
  423. package/dist/es/standards-sdk.es95.js +42 -138
  424. package/dist/es/standards-sdk.es95.js.map +1 -1
  425. package/dist/es/standards-sdk.es96.js +259 -42
  426. package/dist/es/standards-sdk.es96.js.map +1 -1
  427. package/dist/es/standards-sdk.es97.js +82 -243
  428. package/dist/es/standards-sdk.es97.js.map +1 -1
  429. package/dist/es/standards-sdk.es98.js +48 -47
  430. package/dist/es/standards-sdk.es98.js.map +1 -1
  431. package/dist/es/standards-sdk.es99.js +29 -100
  432. package/dist/es/standards-sdk.es99.js.map +1 -1
  433. package/dist/es/utils/crypto-abstraction.d.ts.map +1 -1
  434. package/dist/es/utils/crypto-env.d.ts.map +1 -1
  435. package/dist/es/utils/dynamic-import.d.ts +5 -1
  436. package/dist/es/utils/dynamic-import.d.ts.map +1 -1
  437. package/dist/es/utils/hash-adapter.d.ts.map +1 -1
  438. package/package.json +36 -13
  439. package/dist/cjs/patches/topic-autorenew-patch.d.ts +0 -2
  440. package/dist/cjs/patches/topic-autorenew-patch.d.ts.map +0 -1
  441. package/dist/es/patches/topic-autorenew-patch.d.ts +0 -2
  442. package/dist/es/patches/topic-autorenew-patch.d.ts.map +0 -1
@@ -1,74 +1,146 @@
1
- import { z } from "zod";
2
- const HCS20_CONSTANTS = {
3
- PROTOCOL: "hcs-20",
4
- PUBLIC_TOPIC_ID: "0.0.4350190",
5
- REGISTRY_TOPIC_ID: "0.0.4362300",
6
- MAX_NUMBER_LENGTH: 18,
7
- MAX_NAME_LENGTH: 100,
8
- MAX_METADATA_LENGTH: 100,
9
- HEDERA_ACCOUNT_REGEX: /^(0|(?:[1-9]\d*))\.(0|(?:[1-9]\d*))\.(0|(?:[1-9]\d*))$/
10
- };
11
- const HederaAccountIdSchema = z.string().regex(
12
- HCS20_CONSTANTS.HEDERA_ACCOUNT_REGEX,
13
- "Invalid Hedera account ID format"
14
- );
15
- const NumberStringSchema = z.string().regex(/^\d+$/, "Must be a valid number").max(
16
- HCS20_CONSTANTS.MAX_NUMBER_LENGTH,
17
- `Max ${HCS20_CONSTANTS.MAX_NUMBER_LENGTH} digits`
18
- );
19
- const TickSchema = z.string().min(1, "Tick cannot be empty").transform((val) => val.toLowerCase().trim());
20
- const HCS20BaseMessageSchema = z.object({
21
- p: z.literal("hcs-20"),
22
- m: z.string().optional()
23
- });
24
- const HCS20DeployMessageSchema = HCS20BaseMessageSchema.extend({
25
- op: z.literal("deploy"),
26
- name: z.string().min(1).max(HCS20_CONSTANTS.MAX_NAME_LENGTH),
27
- tick: TickSchema,
28
- max: NumberStringSchema,
29
- lim: NumberStringSchema.optional(),
30
- metadata: z.string().max(HCS20_CONSTANTS.MAX_METADATA_LENGTH).optional()
31
- });
32
- const HCS20MintMessageSchema = HCS20BaseMessageSchema.extend({
33
- op: z.literal("mint"),
34
- tick: TickSchema,
35
- amt: NumberStringSchema,
36
- to: HederaAccountIdSchema
37
- });
38
- const HCS20BurnMessageSchema = HCS20BaseMessageSchema.extend({
39
- op: z.literal("burn"),
40
- tick: TickSchema,
41
- amt: NumberStringSchema,
42
- from: HederaAccountIdSchema
43
- });
44
- const HCS20TransferMessageSchema = HCS20BaseMessageSchema.extend({
45
- op: z.literal("transfer"),
46
- tick: TickSchema,
47
- amt: NumberStringSchema,
48
- from: HederaAccountIdSchema,
49
- to: HederaAccountIdSchema
50
- });
51
- const HCS20RegisterMessageSchema = HCS20BaseMessageSchema.extend({
52
- op: z.literal("register"),
53
- name: z.string().min(1).max(HCS20_CONSTANTS.MAX_NAME_LENGTH),
54
- metadata: z.string().max(HCS20_CONSTANTS.MAX_METADATA_LENGTH).optional(),
55
- private: z.boolean(),
56
- t_id: HederaAccountIdSchema
57
- });
58
- const HCS20MessageSchema = z.discriminatedUnion("op", [
59
- HCS20DeployMessageSchema,
60
- HCS20MintMessageSchema,
61
- HCS20BurnMessageSchema,
62
- HCS20TransferMessageSchema,
63
- HCS20RegisterMessageSchema
64
- ]);
1
+ class HCS20Error extends Error {
2
+ constructor(message) {
3
+ super(message);
4
+ this.name = "HCS20Error";
5
+ }
6
+ }
7
+ class PointsDeploymentError extends HCS20Error {
8
+ constructor(message, tick) {
9
+ super(message);
10
+ this.tick = tick;
11
+ this.name = "PointsDeploymentError";
12
+ }
13
+ }
14
+ class PointsMintError extends HCS20Error {
15
+ constructor(message, tick, requestedAmount, availableSupply) {
16
+ super(message);
17
+ this.tick = tick;
18
+ this.requestedAmount = requestedAmount;
19
+ this.availableSupply = availableSupply;
20
+ this.name = "PointsMintError";
21
+ }
22
+ }
23
+ class PointsTransferError extends HCS20Error {
24
+ constructor(message, tick, from, to, amount, availableBalance) {
25
+ super(message);
26
+ this.tick = tick;
27
+ this.from = from;
28
+ this.to = to;
29
+ this.amount = amount;
30
+ this.availableBalance = availableBalance;
31
+ this.name = "PointsTransferError";
32
+ }
33
+ }
34
+ class PointsBurnError extends HCS20Error {
35
+ constructor(message, tick, from, amount, availableBalance) {
36
+ super(message);
37
+ this.tick = tick;
38
+ this.from = from;
39
+ this.amount = amount;
40
+ this.availableBalance = availableBalance;
41
+ this.name = "PointsBurnError";
42
+ }
43
+ }
44
+ class PointsValidationError extends HCS20Error {
45
+ constructor(message, validationErrors) {
46
+ super(message);
47
+ this.validationErrors = validationErrors;
48
+ this.name = "PointsValidationError";
49
+ }
50
+ }
51
+ class PointsNotFoundError extends HCS20Error {
52
+ constructor(tick) {
53
+ super(`Points with tick "${tick}" not found`);
54
+ this.tick = tick;
55
+ this.name = "PointsNotFoundError";
56
+ }
57
+ }
58
+ class TopicRegistrationError extends HCS20Error {
59
+ constructor(message, topicId) {
60
+ super(message);
61
+ this.topicId = topicId;
62
+ this.name = "TopicRegistrationError";
63
+ }
64
+ }
65
+ class InsufficientBalanceError extends HCS20Error {
66
+ constructor(accountId, tick, required, available) {
67
+ super(
68
+ `Insufficient balance for ${tick}: required ${required}, available ${available}`
69
+ );
70
+ this.accountId = accountId;
71
+ this.tick = tick;
72
+ this.required = required;
73
+ this.available = available;
74
+ this.name = "InsufficientBalanceError";
75
+ }
76
+ }
77
+ class SupplyLimitExceededError extends HCS20Error {
78
+ constructor(tick, requested, maxSupply, currentSupply) {
79
+ super(
80
+ `Supply limit exceeded for ${tick}: max ${maxSupply}, current ${currentSupply}, requested ${requested}`
81
+ );
82
+ this.tick = tick;
83
+ this.requested = requested;
84
+ this.maxSupply = maxSupply;
85
+ this.currentSupply = currentSupply;
86
+ this.name = "SupplyLimitExceededError";
87
+ }
88
+ }
89
+ class MintLimitExceededError extends HCS20Error {
90
+ constructor(tick, requested, limit) {
91
+ super(
92
+ `Mint limit exceeded for ${tick}: requested ${requested}, limit ${limit}`
93
+ );
94
+ this.tick = tick;
95
+ this.requested = requested;
96
+ this.limit = limit;
97
+ this.name = "MintLimitExceededError";
98
+ }
99
+ }
100
+ class InvalidMessageFormatError extends HCS20Error {
101
+ constructor(message, messageData) {
102
+ super(message);
103
+ this.messageData = messageData;
104
+ this.name = "InvalidMessageFormatError";
105
+ }
106
+ }
107
+ class InvalidAccountFormatError extends HCS20Error {
108
+ constructor(account) {
109
+ super(`Invalid Hedera account format: ${account}`);
110
+ this.account = account;
111
+ this.name = "InvalidAccountFormatError";
112
+ }
113
+ }
114
+ class InvalidTickFormatError extends HCS20Error {
115
+ constructor(tick) {
116
+ super(`Invalid tick format: ${tick}`);
117
+ this.tick = tick;
118
+ this.name = "InvalidTickFormatError";
119
+ }
120
+ }
121
+ class InvalidNumberFormatError extends HCS20Error {
122
+ constructor(value, field) {
123
+ super(`Invalid number format for ${field}: ${value}`);
124
+ this.value = value;
125
+ this.field = field;
126
+ this.name = "InvalidNumberFormatError";
127
+ }
128
+ }
65
129
  export {
66
- HCS20BurnMessageSchema,
67
- HCS20DeployMessageSchema,
68
- HCS20MessageSchema,
69
- HCS20MintMessageSchema,
70
- HCS20RegisterMessageSchema,
71
- HCS20TransferMessageSchema,
72
- HCS20_CONSTANTS
130
+ HCS20Error,
131
+ InsufficientBalanceError,
132
+ InvalidAccountFormatError,
133
+ InvalidMessageFormatError,
134
+ InvalidNumberFormatError,
135
+ InvalidTickFormatError,
136
+ MintLimitExceededError,
137
+ PointsBurnError,
138
+ PointsDeploymentError,
139
+ PointsMintError,
140
+ PointsNotFoundError,
141
+ PointsTransferError,
142
+ PointsValidationError,
143
+ SupplyLimitExceededError,
144
+ TopicRegistrationError
73
145
  };
74
146
  //# sourceMappingURL=standards-sdk.es73.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es73.js","sources":["../../src/hcs-20/types.ts"],"sourcesContent":["/**\n * HCS-20 Auditable Points Standard Types\n */\n\nimport { z } from 'zod';\nimport { AccountId, TopicId, PrivateKey } from '@hashgraph/sdk';\nimport type { ILogger } from '../utils/logger';\n\n/**\n * HCS-20 Constants\n */\nexport const HCS20_CONSTANTS = {\n PROTOCOL: 'hcs-20',\n PUBLIC_TOPIC_ID: '0.0.4350190',\n REGISTRY_TOPIC_ID: '0.0.4362300',\n MAX_NUMBER_LENGTH: 18,\n MAX_NAME_LENGTH: 100,\n MAX_METADATA_LENGTH: 100,\n HEDERA_ACCOUNT_REGEX:\n /^(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))$/,\n} as const;\n\n/**\n * Hedera Account ID validator\n */\nconst HederaAccountIdSchema = z\n .string()\n .regex(\n HCS20_CONSTANTS.HEDERA_ACCOUNT_REGEX,\n 'Invalid Hedera account ID format',\n );\n\n/**\n * Number string validator\n */\nconst NumberStringSchema = z\n .string()\n .regex(/^\\d+$/, 'Must be a valid number')\n .max(\n HCS20_CONSTANTS.MAX_NUMBER_LENGTH,\n `Max ${HCS20_CONSTANTS.MAX_NUMBER_LENGTH} digits`,\n );\n\n/**\n * Tick validator\n */\nconst TickSchema = z\n .string()\n .min(1, 'Tick cannot be empty')\n .transform(val => val.toLowerCase().trim());\n\n/**\n * Base HCS-20 Message Schema\n */\nconst HCS20BaseMessageSchema = z.object({\n p: z.literal('hcs-20'),\n m: z.string().optional(),\n});\n\n/**\n * Deploy Points Operation Schema\n */\nexport const HCS20DeployMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('deploy'),\n name: z.string().min(1).max(HCS20_CONSTANTS.MAX_NAME_LENGTH),\n tick: TickSchema,\n max: NumberStringSchema,\n lim: NumberStringSchema.optional(),\n metadata: z.string().max(HCS20_CONSTANTS.MAX_METADATA_LENGTH).optional(),\n});\n\n/**\n * Mint Points Operation Schema\n */\nexport const HCS20MintMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('mint'),\n tick: TickSchema,\n amt: NumberStringSchema,\n to: HederaAccountIdSchema,\n});\n\n/**\n * Burn Points Operation Schema\n */\nexport const HCS20BurnMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('burn'),\n tick: TickSchema,\n amt: NumberStringSchema,\n from: HederaAccountIdSchema,\n});\n\n/**\n * Transfer Points Operation Schema\n */\nexport const HCS20TransferMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('transfer'),\n tick: TickSchema,\n amt: NumberStringSchema,\n from: HederaAccountIdSchema,\n to: HederaAccountIdSchema,\n});\n\n/**\n * Register Topic Operation Schema\n */\nexport const HCS20RegisterMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('register'),\n name: z.string().min(1).max(HCS20_CONSTANTS.MAX_NAME_LENGTH),\n metadata: z.string().max(HCS20_CONSTANTS.MAX_METADATA_LENGTH).optional(),\n private: z.boolean(),\n t_id: HederaAccountIdSchema,\n});\n\n/**\n * Union schema for all HCS-20 messages\n */\nexport const HCS20MessageSchema = z.discriminatedUnion('op', [\n HCS20DeployMessageSchema,\n HCS20MintMessageSchema,\n HCS20BurnMessageSchema,\n HCS20TransferMessageSchema,\n HCS20RegisterMessageSchema,\n]);\n\n/**\n * Inferred types from schemas\n */\nexport type HCS20BaseMessage = z.infer<typeof HCS20BaseMessageSchema>;\nexport type HCS20DeployMessage = z.infer<typeof HCS20DeployMessageSchema>;\nexport type HCS20MintMessage = z.infer<typeof HCS20MintMessageSchema>;\nexport type HCS20BurnMessage = z.infer<typeof HCS20BurnMessageSchema>;\nexport type HCS20TransferMessage = z.infer<typeof HCS20TransferMessageSchema>;\nexport type HCS20RegisterMessage = z.infer<typeof HCS20RegisterMessageSchema>;\nexport type HCS20Message = z.infer<typeof HCS20MessageSchema>;\nexport type HCS20Operation = HCS20Message['op'];\n\n/**\n * Points Configuration\n */\nexport interface PointsConfig {\n name: string;\n tick: string;\n maxSupply: string;\n limitPerMint?: string;\n metadata?: string;\n}\n\n/**\n * Points Information\n */\nexport interface PointsInfo extends PointsConfig {\n topicId: string;\n deployerAccountId: string;\n currentSupply: string;\n deploymentTimestamp: string;\n isPrivate: boolean;\n}\n\n/**\n * Points Balance\n */\nexport interface PointsBalance {\n tick: string;\n accountId: string;\n balance: string;\n lastUpdated: string;\n}\n\n/**\n * Points Transaction\n */\nexport interface PointsTransaction {\n id: string;\n operation: HCS20Operation;\n tick: string;\n amount?: string;\n from?: string;\n to?: string;\n timestamp: string;\n sequenceNumber: number;\n topicId: string;\n transactionId: string;\n memo?: string;\n}\n\n/**\n * HCS-20 Client Configuration\n */\nexport interface HCS20ClientConfig {\n mirrorNodeUrl?: string;\n logger?: ILogger;\n network?: 'mainnet' | 'testnet';\n registryTopicId?: string;\n publicTopicId?: string;\n}\n\n/**\n * Browser-specific HCS-20 Client Configuration\n */\nexport interface BrowserHCS20ClientConfig extends HCS20ClientConfig {\n walletConnectProjectId?: string;\n hwcMetadata?: {\n name: string;\n description: string;\n icons: string[];\n url: string;\n };\n}\n\n/**\n * SDK-specific HCS-20 Client Configuration\n */\nexport interface SDKHCS20ClientConfig extends HCS20ClientConfig {\n operatorId: string | AccountId;\n operatorKey: string | PrivateKey;\n keyType?: 'ed25519' | 'ecdsa';\n}\n\n/**\n * Deploy Points Progress\n */\nexport interface DeployPointsProgress {\n stage: 'creating-topic' | 'submitting-deploy' | 'confirming' | 'complete';\n percentage: number;\n topicId?: string;\n deployTxId?: string;\n error?: string;\n}\n\n/**\n * Deploy Points Options\n */\nexport interface DeployPointsOptions extends PointsConfig {\n usePrivateTopic?: boolean;\n topicMemo?: string;\n progressCallback?: (data: DeployPointsProgress) => void;\n}\n\n/**\n * Mint Points Progress\n */\nexport interface MintPointsProgress {\n stage: 'validating' | 'submitting' | 'confirming' | 'complete';\n percentage: number;\n mintTxId?: string;\n error?: string;\n}\n\n/**\n * Mint Points Options\n */\nexport interface MintPointsOptions {\n tick: string;\n amount: string;\n to: string | AccountId;\n memo?: string;\n topicId?: string | TopicId;\n progressCallback?: (data: MintPointsProgress) => void;\n disableMirrorCheck?: boolean;\n}\n\n/**\n * Transfer Points Progress\n */\nexport interface TransferPointsProgress {\n stage: 'validating-balance' | 'submitting' | 'confirming' | 'complete';\n percentage: number;\n transferTxId?: string;\n error?: string;\n}\n\n/**\n * Transfer Points Options\n */\nexport interface TransferPointsOptions {\n tick: string;\n amount: string;\n from: string | AccountId;\n to: string | AccountId;\n memo?: string;\n topicId?: string | TopicId;\n progressCallback?: (data: TransferPointsProgress) => void;\n}\n\n/**\n * Burn Points Progress\n */\nexport interface BurnPointsProgress {\n stage: 'validating-balance' | 'submitting' | 'confirming' | 'complete';\n percentage: number;\n burnTxId?: string;\n error?: string;\n}\n\n/**\n * Burn Points Options\n */\nexport interface BurnPointsOptions {\n tick: string;\n amount: string;\n from: string | AccountId;\n memo?: string;\n topicId?: string | TopicId;\n progressCallback?: (data: BurnPointsProgress) => void;\n}\n\n/**\n * Register Topic Progress\n */\nexport interface RegisterTopicProgress {\n stage: 'validating' | 'submitting' | 'confirming' | 'complete';\n percentage: number;\n registerTxId?: string;\n error?: string;\n}\n\n/**\n * Register Topic Options\n */\nexport interface RegisterTopicOptions {\n topicId: string | TopicId;\n name: string;\n metadata?: string;\n isPrivate: boolean;\n memo?: string;\n progressCallback?: (data: RegisterTopicProgress) => void;\n}\n\n/**\n * Query Points Options\n */\nexport interface QueryPointsOptions {\n tick?: string;\n accountId?: string | AccountId;\n topicId?: string | TopicId;\n limit?: number;\n order?: 'asc' | 'desc';\n}\n\n/**\n * Points Query Result\n */\nexport interface PointsQueryResult {\n points: PointsInfo[];\n balances?: PointsBalance[];\n transactions?: PointsTransaction[];\n totalCount: number;\n hasMore: boolean;\n nextCursor?: string;\n}\n\n/**\n * Points State\n */\nexport interface PointsState {\n deployedPoints: Map<string, PointsInfo>;\n balances: Map<string, Map<string, PointsBalance>>;\n transactions: PointsTransaction[];\n lastProcessedSequence: number;\n lastProcessedTimestamp: string;\n}\n\n/**\n * HCS-20 Registry Entry\n */\nexport interface HCS20RegistryEntry {\n name: string;\n topicId: string;\n metadata?: string;\n isPrivate: boolean;\n registeredAt: string;\n registeredBy: string;\n}\n"],"names":[],"mappings":";AAWO,MAAM,kBAAkB;AAAA,EAC7B,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,EACjB,qBAAqB;AAAA,EACrB,sBACE;AACJ;AAKA,MAAM,wBAAwB,EAC3B,OAAA,EACA;AAAA,EACC,gBAAgB;AAAA,EAChB;AACF;AAKF,MAAM,qBAAqB,EACxB,OAAA,EACA,MAAM,SAAS,wBAAwB,EACvC;AAAA,EACC,gBAAgB;AAAA,EAChB,OAAO,gBAAgB,iBAAiB;AAC1C;AAKF,MAAM,aAAa,EAChB,OAAA,EACA,IAAI,GAAG,sBAAsB,EAC7B,UAAU,CAAA,QAAO,IAAI,YAAA,EAAc,MAAM;AAK5C,MAAM,yBAAyB,EAAE,OAAO;AAAA,EACtC,GAAG,EAAE,QAAQ,QAAQ;AAAA,EACrB,GAAG,EAAE,OAAA,EAAS,SAAA;AAChB,CAAC;AAKM,MAAM,2BAA2B,uBAAuB,OAAO;AAAA,EACpE,IAAI,EAAE,QAAQ,QAAQ;AAAA,EACtB,MAAM,EAAE,SAAS,IAAI,CAAC,EAAE,IAAI,gBAAgB,eAAe;AAAA,EAC3D,MAAM;AAAA,EACN,KAAK;AAAA,EACL,KAAK,mBAAmB,SAAA;AAAA,EACxB,UAAU,EAAE,OAAA,EAAS,IAAI,gBAAgB,mBAAmB,EAAE,SAAA;AAChE,CAAC;AAKM,MAAM,yBAAyB,uBAAuB,OAAO;AAAA,EAClE,IAAI,EAAE,QAAQ,MAAM;AAAA,EACpB,MAAM;AAAA,EACN,KAAK;AAAA,EACL,IAAI;AACN,CAAC;AAKM,MAAM,yBAAyB,uBAAuB,OAAO;AAAA,EAClE,IAAI,EAAE,QAAQ,MAAM;AAAA,EACpB,MAAM;AAAA,EACN,KAAK;AAAA,EACL,MAAM;AACR,CAAC;AAKM,MAAM,6BAA6B,uBAAuB,OAAO;AAAA,EACtE,IAAI,EAAE,QAAQ,UAAU;AAAA,EACxB,MAAM;AAAA,EACN,KAAK;AAAA,EACL,MAAM;AAAA,EACN,IAAI;AACN,CAAC;AAKM,MAAM,6BAA6B,uBAAuB,OAAO;AAAA,EACtE,IAAI,EAAE,QAAQ,UAAU;AAAA,EACxB,MAAM,EAAE,SAAS,IAAI,CAAC,EAAE,IAAI,gBAAgB,eAAe;AAAA,EAC3D,UAAU,EAAE,OAAA,EAAS,IAAI,gBAAgB,mBAAmB,EAAE,SAAA;AAAA,EAC9D,SAAS,EAAE,QAAA;AAAA,EACX,MAAM;AACR,CAAC;AAKM,MAAM,qBAAqB,EAAE,mBAAmB,MAAM;AAAA,EAC3D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;"}
1
+ {"version":3,"file":"standards-sdk.es73.js","sources":["../../src/hcs-20/errors.ts"],"sourcesContent":["/**\n * HCS-20 Specific Error Classes\n */\n\n/**\n * Base error class for HCS-20 operations\n */\nexport class HCS20Error extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'HCS20Error';\n }\n}\n\n/**\n * Error thrown when points deployment fails\n */\nexport class PointsDeploymentError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick?: string,\n ) {\n super(message);\n this.name = 'PointsDeploymentError';\n }\n}\n\n/**\n * Error thrown when points minting fails\n */\nexport class PointsMintError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly requestedAmount: string,\n public readonly availableSupply?: string,\n ) {\n super(message);\n this.name = 'PointsMintError';\n }\n}\n\n/**\n * Error thrown when points transfer fails\n */\nexport class PointsTransferError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly from: string,\n public readonly to: string,\n public readonly amount: string,\n public readonly availableBalance?: string,\n ) {\n super(message);\n this.name = 'PointsTransferError';\n }\n}\n\n/**\n * Error thrown when points burn fails\n */\nexport class PointsBurnError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly from: string,\n public readonly amount: string,\n public readonly availableBalance?: string,\n ) {\n super(message);\n this.name = 'PointsBurnError';\n }\n}\n\n/**\n * Error thrown when points validation fails\n */\nexport class PointsValidationError extends HCS20Error {\n constructor(\n message: string,\n public readonly validationErrors: string[],\n ) {\n super(message);\n this.name = 'PointsValidationError';\n }\n}\n\n/**\n * Error thrown when points are not found\n */\nexport class PointsNotFoundError extends HCS20Error {\n constructor(public readonly tick: string) {\n super(`Points with tick \"${tick}\" not found`);\n this.name = 'PointsNotFoundError';\n }\n}\n\n/**\n * Error thrown when topic registration fails\n */\nexport class TopicRegistrationError extends HCS20Error {\n constructor(\n message: string,\n public readonly topicId: string,\n ) {\n super(message);\n this.name = 'TopicRegistrationError';\n }\n}\n\n/**\n * Error thrown when insufficient balance\n */\nexport class InsufficientBalanceError extends HCS20Error {\n constructor(\n public readonly accountId: string,\n public readonly tick: string,\n public readonly required: string,\n public readonly available: string,\n ) {\n super(\n `Insufficient balance for ${tick}: required ${required}, available ${available}`,\n );\n this.name = 'InsufficientBalanceError';\n }\n}\n\n/**\n * Error thrown when supply limit is exceeded\n */\nexport class SupplyLimitExceededError extends HCS20Error {\n constructor(\n public readonly tick: string,\n public readonly requested: string,\n public readonly maxSupply: string,\n public readonly currentSupply: string,\n ) {\n super(\n `Supply limit exceeded for ${tick}: max ${maxSupply}, current ${currentSupply}, requested ${requested}`,\n );\n this.name = 'SupplyLimitExceededError';\n }\n}\n\n/**\n * Error thrown when mint limit is exceeded\n */\nexport class MintLimitExceededError extends HCS20Error {\n constructor(\n public readonly tick: string,\n public readonly requested: string,\n public readonly limit: string,\n ) {\n super(\n `Mint limit exceeded for ${tick}: requested ${requested}, limit ${limit}`,\n );\n this.name = 'MintLimitExceededError';\n }\n}\n\n/**\n * Error thrown when HCS-20 message format is invalid\n */\nexport class InvalidMessageFormatError extends HCS20Error {\n constructor(\n message: string,\n public readonly messageData?: any,\n ) {\n super(message);\n this.name = 'InvalidMessageFormatError';\n }\n}\n\n/**\n * Error thrown when account format is invalid\n */\nexport class InvalidAccountFormatError extends HCS20Error {\n constructor(public readonly account: string) {\n super(`Invalid Hedera account format: ${account}`);\n this.name = 'InvalidAccountFormatError';\n }\n}\n\n/**\n * Error thrown when tick format is invalid\n */\nexport class InvalidTickFormatError extends HCS20Error {\n constructor(public readonly tick: string) {\n super(`Invalid tick format: ${tick}`);\n this.name = 'InvalidTickFormatError';\n }\n}\n\n/**\n * Error thrown when number format is invalid\n */\nexport class InvalidNumberFormatError extends HCS20Error {\n constructor(\n public readonly value: string,\n public readonly field: string,\n ) {\n super(`Invalid number format for ${field}: ${value}`);\n this.name = 'InvalidNumberFormatError';\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,146 +1,72 @@
1
- class HCS20Error extends Error {
2
- constructor(message) {
3
- super(message);
4
- this.name = "HCS20Error";
5
- }
6
- }
7
- class PointsDeploymentError extends HCS20Error {
8
- constructor(message, tick) {
9
- super(message);
10
- this.tick = tick;
11
- this.name = "PointsDeploymentError";
12
- }
13
- }
14
- class PointsMintError extends HCS20Error {
15
- constructor(message, tick, requestedAmount, availableSupply) {
16
- super(message);
17
- this.tick = tick;
18
- this.requestedAmount = requestedAmount;
19
- this.availableSupply = availableSupply;
20
- this.name = "PointsMintError";
21
- }
22
- }
23
- class PointsTransferError extends HCS20Error {
24
- constructor(message, tick, from, to, amount, availableBalance) {
25
- super(message);
26
- this.tick = tick;
27
- this.from = from;
28
- this.to = to;
29
- this.amount = amount;
30
- this.availableBalance = availableBalance;
31
- this.name = "PointsTransferError";
32
- }
33
- }
34
- class PointsBurnError extends HCS20Error {
35
- constructor(message, tick, from, amount, availableBalance) {
36
- super(message);
37
- this.tick = tick;
38
- this.from = from;
39
- this.amount = amount;
40
- this.availableBalance = availableBalance;
41
- this.name = "PointsBurnError";
42
- }
43
- }
44
- class PointsValidationError extends HCS20Error {
45
- constructor(message, validationErrors) {
46
- super(message);
47
- this.validationErrors = validationErrors;
48
- this.name = "PointsValidationError";
49
- }
50
- }
51
- class PointsNotFoundError extends HCS20Error {
52
- constructor(tick) {
53
- super(`Points with tick "${tick}" not found`);
54
- this.tick = tick;
55
- this.name = "PointsNotFoundError";
56
- }
57
- }
58
- class TopicRegistrationError extends HCS20Error {
59
- constructor(message, topicId) {
60
- super(message);
61
- this.topicId = topicId;
62
- this.name = "TopicRegistrationError";
63
- }
64
- }
65
- class InsufficientBalanceError extends HCS20Error {
66
- constructor(accountId, tick, required, available) {
67
- super(
68
- `Insufficient balance for ${tick}: required ${required}, available ${available}`
1
+ import { Logger } from "./standards-sdk.es105.js";
2
+ import { HederaMirrorNode } from "./standards-sdk.es126.js";
3
+ import { HCS20_CONSTANTS, HCS20MessageSchema } from "./standards-sdk.es72.js";
4
+ import { InvalidAccountFormatError } from "./standards-sdk.es73.js";
5
+ class HCS20BaseClient {
6
+ constructor(config) {
7
+ this.logger = config.logger || new Logger({ module: "HCS20Client" });
8
+ this.network = config.network === "mainnet" ? "mainnet" : "testnet";
9
+ this.mirrorNode = new HederaMirrorNode(
10
+ this.network,
11
+ this.logger,
12
+ config.mirrorNodeUrl ? { customUrl: config.mirrorNodeUrl } : void 0
69
13
  );
70
- this.accountId = accountId;
71
- this.tick = tick;
72
- this.required = required;
73
- this.available = available;
74
- this.name = "InsufficientBalanceError";
14
+ this.registryTopicId = config.registryTopicId || HCS20_CONSTANTS.REGISTRY_TOPIC_ID;
15
+ this.publicTopicId = config.publicTopicId || HCS20_CONSTANTS.PUBLIC_TOPIC_ID;
75
16
  }
76
- }
77
- class SupplyLimitExceededError extends HCS20Error {
78
- constructor(tick, requested, maxSupply, currentSupply) {
79
- super(
80
- `Supply limit exceeded for ${tick}: max ${maxSupply}, current ${currentSupply}, requested ${requested}`
81
- );
82
- this.tick = tick;
83
- this.requested = requested;
84
- this.maxSupply = maxSupply;
85
- this.currentSupply = currentSupply;
86
- this.name = "SupplyLimitExceededError";
17
+ /**
18
+ * Validate HCS-20 message using Zod schema
19
+ */
20
+ validateMessage(message) {
21
+ try {
22
+ HCS20MessageSchema.parse(message);
23
+ return { valid: true };
24
+ } catch (error) {
25
+ if (error.errors) {
26
+ const errors = error.errors.map(
27
+ (e) => `${e.path.join(".")}: ${e.message}`
28
+ );
29
+ return { valid: false, errors };
30
+ }
31
+ return { valid: false, errors: [error.message] };
32
+ }
87
33
  }
88
- }
89
- class MintLimitExceededError extends HCS20Error {
90
- constructor(tick, requested, limit) {
91
- super(
92
- `Mint limit exceeded for ${tick}: requested ${requested}, limit ${limit}`
93
- );
94
- this.tick = tick;
95
- this.requested = requested;
96
- this.limit = limit;
97
- this.name = "MintLimitExceededError";
34
+ /**
35
+ * Normalize tick to lowercase and trimmed
36
+ */
37
+ normalizeTick(tick) {
38
+ return tick.toLowerCase().trim();
98
39
  }
99
- }
100
- class InvalidMessageFormatError extends HCS20Error {
101
- constructor(message, messageData) {
102
- super(message);
103
- this.messageData = messageData;
104
- this.name = "InvalidMessageFormatError";
105
- }
106
- }
107
- class InvalidAccountFormatError extends HCS20Error {
108
- constructor(account) {
109
- super(`Invalid Hedera account format: ${account}`);
110
- this.account = account;
111
- this.name = "InvalidAccountFormatError";
40
+ /**
41
+ * Convert account to string format
42
+ */
43
+ accountToString(account) {
44
+ if (typeof account === "string") {
45
+ if (!HCS20_CONSTANTS.HEDERA_ACCOUNT_REGEX.test(account)) {
46
+ throw new InvalidAccountFormatError(account);
47
+ }
48
+ return account;
49
+ }
50
+ return account.toString();
112
51
  }
113
- }
114
- class InvalidTickFormatError extends HCS20Error {
115
- constructor(tick) {
116
- super(`Invalid tick format: ${tick}`);
117
- this.tick = tick;
118
- this.name = "InvalidTickFormatError";
119
- }
120
- }
121
- class InvalidNumberFormatError extends HCS20Error {
122
- constructor(value, field) {
123
- super(`Invalid number format for ${field}: ${value}`);
124
- this.value = value;
125
- this.field = field;
126
- this.name = "InvalidNumberFormatError";
52
+ /**
53
+ * Convert topic to string format
54
+ */
55
+ topicToString(topic) {
56
+ if (typeof topic === "string") {
57
+ if (!HCS20_CONSTANTS.HEDERA_ACCOUNT_REGEX.test(topic)) {
58
+ throw new InvalidAccountFormatError(topic);
59
+ }
60
+ return topic;
61
+ }
62
+ return topic.toString();
127
63
  }
64
+ /**
65
+ * NOTE: State queries (getPointsInfo, getBalance, etc.) require an external indexing service.
66
+ * The HCS-20 clients only handle message submission. Use HCS20PointsIndexer for state management.
67
+ */
128
68
  }
129
69
  export {
130
- HCS20Error,
131
- InsufficientBalanceError,
132
- InvalidAccountFormatError,
133
- InvalidMessageFormatError,
134
- InvalidNumberFormatError,
135
- InvalidTickFormatError,
136
- MintLimitExceededError,
137
- PointsBurnError,
138
- PointsDeploymentError,
139
- PointsMintError,
140
- PointsNotFoundError,
141
- PointsTransferError,
142
- PointsValidationError,
143
- SupplyLimitExceededError,
144
- TopicRegistrationError
70
+ HCS20BaseClient
145
71
  };
146
72
  //# sourceMappingURL=standards-sdk.es74.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es74.js","sources":["../../src/hcs-20/errors.ts"],"sourcesContent":["/**\n * HCS-20 Specific Error Classes\n */\n\n/**\n * Base error class for HCS-20 operations\n */\nexport class HCS20Error extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'HCS20Error';\n }\n}\n\n/**\n * Error thrown when points deployment fails\n */\nexport class PointsDeploymentError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick?: string,\n ) {\n super(message);\n this.name = 'PointsDeploymentError';\n }\n}\n\n/**\n * Error thrown when points minting fails\n */\nexport class PointsMintError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly requestedAmount: string,\n public readonly availableSupply?: string,\n ) {\n super(message);\n this.name = 'PointsMintError';\n }\n}\n\n/**\n * Error thrown when points transfer fails\n */\nexport class PointsTransferError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly from: string,\n public readonly to: string,\n public readonly amount: string,\n public readonly availableBalance?: string,\n ) {\n super(message);\n this.name = 'PointsTransferError';\n }\n}\n\n/**\n * Error thrown when points burn fails\n */\nexport class PointsBurnError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly from: string,\n public readonly amount: string,\n public readonly availableBalance?: string,\n ) {\n super(message);\n this.name = 'PointsBurnError';\n }\n}\n\n/**\n * Error thrown when points validation fails\n */\nexport class PointsValidationError extends HCS20Error {\n constructor(\n message: string,\n public readonly validationErrors: string[],\n ) {\n super(message);\n this.name = 'PointsValidationError';\n }\n}\n\n/**\n * Error thrown when points are not found\n */\nexport class PointsNotFoundError extends HCS20Error {\n constructor(public readonly tick: string) {\n super(`Points with tick \"${tick}\" not found`);\n this.name = 'PointsNotFoundError';\n }\n}\n\n/**\n * Error thrown when topic registration fails\n */\nexport class TopicRegistrationError extends HCS20Error {\n constructor(\n message: string,\n public readonly topicId: string,\n ) {\n super(message);\n this.name = 'TopicRegistrationError';\n }\n}\n\n/**\n * Error thrown when insufficient balance\n */\nexport class InsufficientBalanceError extends HCS20Error {\n constructor(\n public readonly accountId: string,\n public readonly tick: string,\n public readonly required: string,\n public readonly available: string,\n ) {\n super(\n `Insufficient balance for ${tick}: required ${required}, available ${available}`,\n );\n this.name = 'InsufficientBalanceError';\n }\n}\n\n/**\n * Error thrown when supply limit is exceeded\n */\nexport class SupplyLimitExceededError extends HCS20Error {\n constructor(\n public readonly tick: string,\n public readonly requested: string,\n public readonly maxSupply: string,\n public readonly currentSupply: string,\n ) {\n super(\n `Supply limit exceeded for ${tick}: max ${maxSupply}, current ${currentSupply}, requested ${requested}`,\n );\n this.name = 'SupplyLimitExceededError';\n }\n}\n\n/**\n * Error thrown when mint limit is exceeded\n */\nexport class MintLimitExceededError extends HCS20Error {\n constructor(\n public readonly tick: string,\n public readonly requested: string,\n public readonly limit: string,\n ) {\n super(\n `Mint limit exceeded for ${tick}: requested ${requested}, limit ${limit}`,\n );\n this.name = 'MintLimitExceededError';\n }\n}\n\n/**\n * Error thrown when HCS-20 message format is invalid\n */\nexport class InvalidMessageFormatError extends HCS20Error {\n constructor(\n message: string,\n public readonly messageData?: any,\n ) {\n super(message);\n this.name = 'InvalidMessageFormatError';\n }\n}\n\n/**\n * Error thrown when account format is invalid\n */\nexport class InvalidAccountFormatError extends HCS20Error {\n constructor(public readonly account: string) {\n super(`Invalid Hedera account format: ${account}`);\n this.name = 'InvalidAccountFormatError';\n }\n}\n\n/**\n * Error thrown when tick format is invalid\n */\nexport class InvalidTickFormatError extends HCS20Error {\n constructor(public readonly tick: string) {\n super(`Invalid tick format: ${tick}`);\n this.name = 'InvalidTickFormatError';\n }\n}\n\n/**\n * Error thrown when number format is invalid\n */\nexport class InvalidNumberFormatError extends HCS20Error {\n constructor(\n public readonly value: string,\n public readonly field: string,\n ) {\n super(`Invalid number format for ${field}: ${value}`);\n this.name = 'InvalidNumberFormatError';\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es74.js","sources":["../../src/hcs-20/base-client.ts"],"sourcesContent":["/**\n * Base client for HCS-20 Auditable Points operations\n */\n\nimport { AccountId, TopicId } from '@hashgraph/sdk';\nimport { Logger, ILogger } from '../utils/logger';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport type { NetworkType } from '../utils/types';\nimport {\n HCS20ClientConfig,\n HCS20MessageSchema,\n PointsInfo,\n PointsTransaction,\n HCS20_CONSTANTS,\n DeployPointsOptions,\n MintPointsOptions,\n TransferPointsOptions,\n BurnPointsOptions,\n RegisterTopicOptions,\n} from './types';\nimport { InvalidAccountFormatError } from './errors';\n\n/**\n * Abstract base class for HCS-20 clients\n */\nexport abstract class HCS20BaseClient {\n protected logger: ILogger;\n protected mirrorNode: HederaMirrorNode;\n protected network: NetworkType;\n protected registryTopicId: string;\n protected publicTopicId: string;\n\n constructor(config: HCS20ClientConfig) {\n this.logger = config.logger || new Logger({ module: 'HCS20Client' });\n this.network = config.network === 'mainnet' ? 'mainnet' : 'testnet';\n this.mirrorNode = new HederaMirrorNode(\n this.network,\n this.logger,\n config.mirrorNodeUrl ? { customUrl: config.mirrorNodeUrl } : undefined,\n );\n this.registryTopicId =\n config.registryTopicId || HCS20_CONSTANTS.REGISTRY_TOPIC_ID;\n this.publicTopicId =\n config.publicTopicId || HCS20_CONSTANTS.PUBLIC_TOPIC_ID;\n }\n\n /**\n * Deploy new points\n */\n abstract deployPoints(options: DeployPointsOptions): Promise<PointsInfo>;\n\n /**\n * Mint points\n */\n abstract mintPoints(options: MintPointsOptions): Promise<PointsTransaction>;\n\n /**\n * Transfer points\n */\n abstract transferPoints(\n options: TransferPointsOptions,\n ): Promise<PointsTransaction>;\n\n /**\n * Burn points\n */\n abstract burnPoints(options: BurnPointsOptions): Promise<PointsTransaction>;\n\n /**\n * Register a topic in the registry\n */\n abstract registerTopic(options: RegisterTopicOptions): Promise<void>;\n\n /**\n * Validate HCS-20 message using Zod schema\n */\n protected validateMessage(message: any): {\n valid: boolean;\n errors?: string[];\n } {\n try {\n HCS20MessageSchema.parse(message);\n return { valid: true };\n } catch (error: any) {\n if (error.errors) {\n const errors = error.errors.map(\n (e: any) => `${e.path.join('.')}: ${e.message}`,\n );\n return { valid: false, errors };\n }\n return { valid: false, errors: [error.message] };\n }\n }\n\n /**\n * Normalize tick to lowercase and trimmed\n */\n protected normalizeTick(tick: string): string {\n return tick.toLowerCase().trim();\n }\n\n /**\n * Convert account to string format\n */\n protected accountToString(account: string | AccountId): string {\n if (typeof account === 'string') {\n if (!HCS20_CONSTANTS.HEDERA_ACCOUNT_REGEX.test(account)) {\n throw new InvalidAccountFormatError(account);\n }\n return account;\n }\n return account.toString();\n }\n\n /**\n * Convert topic to string format\n */\n protected topicToString(topic: string | TopicId): string {\n if (typeof topic === 'string') {\n if (!HCS20_CONSTANTS.HEDERA_ACCOUNT_REGEX.test(topic)) {\n throw new InvalidAccountFormatError(topic);\n }\n return topic;\n }\n return topic.toString();\n }\n\n /**\n * NOTE: State queries (getPointsInfo, getBalance, etc.) require an external indexing service.\n * The HCS-20 clients only handle message submission. Use HCS20PointsIndexer for state management.\n */\n}\n"],"names":[],"mappings":";;;;AAyBO,MAAe,gBAAgB;AAAA,EAOpC,YAAY,QAA2B;AACrC,SAAK,SAAS,OAAO,UAAU,IAAI,OAAO,EAAE,QAAQ,eAAe;AACnE,SAAK,UAAU,OAAO,YAAY,YAAY,YAAY;AAC1D,SAAK,aAAa,IAAI;AAAA,MACpB,KAAK;AAAA,MACL,KAAK;AAAA,MACL,OAAO,gBAAgB,EAAE,WAAW,OAAO,kBAAkB;AAAA,IAAA;AAE/D,SAAK,kBACH,OAAO,mBAAmB,gBAAgB;AAC5C,SAAK,gBACH,OAAO,iBAAiB,gBAAgB;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA,EAgCU,gBAAgB,SAGxB;AACA,QAAI;AACF,yBAAmB,MAAM,OAAO;AAChC,aAAO,EAAE,OAAO,KAAA;AAAA,IAClB,SAAS,OAAY;AACnB,UAAI,MAAM,QAAQ;AAChB,cAAM,SAAS,MAAM,OAAO;AAAA,UAC1B,CAAC,MAAW,GAAG,EAAE,KAAK,KAAK,GAAG,CAAC,KAAK,EAAE,OAAO;AAAA,QAAA;AAE/C,eAAO,EAAE,OAAO,OAAO,OAAA;AAAA,MACzB;AACA,aAAO,EAAE,OAAO,OAAO,QAAQ,CAAC,MAAM,OAAO,EAAA;AAAA,IAC/C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKU,cAAc,MAAsB;AAC5C,WAAO,KAAK,YAAA,EAAc,KAAA;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA,EAKU,gBAAgB,SAAqC;AAC7D,QAAI,OAAO,YAAY,UAAU;AAC/B,UAAI,CAAC,gBAAgB,qBAAqB,KAAK,OAAO,GAAG;AACvD,cAAM,IAAI,0BAA0B,OAAO;AAAA,MAC7C;AACA,aAAO;AAAA,IACT;AACA,WAAO,QAAQ,SAAA;AAAA,EACjB;AAAA;AAAA;AAAA;AAAA,EAKU,cAAc,OAAiC;AACvD,QAAI,OAAO,UAAU,UAAU;AAC7B,UAAI,CAAC,gBAAgB,qBAAqB,KAAK,KAAK,GAAG;AACrD,cAAM,IAAI,0BAA0B,KAAK;AAAA,MAC3C;AACA,aAAO;AAAA,IACT;AACA,WAAO,MAAM,SAAA;AAAA,EACf;AAAA;AAAA;AAAA;AAAA;AAMF;"}