@talken/talkenkit 2.3.6 → 2.3.8

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 (268) hide show
  1. package/LICENSE +9 -0
  2. package/dist/Arc-ILTINY4C.js +8 -0
  3. package/dist/Brave-4L5B7JJR.js +8 -0
  4. package/dist/Browser-XMB4J5WD.js +8 -0
  5. package/dist/Chrome-6ZDQIHC5.js +8 -0
  6. package/dist/Edge-OAWCEU7H.js +8 -0
  7. package/dist/Firefox-O66FZK3V.js +8 -0
  8. package/dist/Linux-NUJF4EPC.js +8 -0
  9. package/dist/Macos-46EJ2NPK.js +8 -0
  10. package/dist/Opera-KTUB3UWN.js +8 -0
  11. package/dist/Safari-A3Q6PIT2.js +8 -0
  12. package/dist/Windows-NL32NG52.js +8 -0
  13. package/dist/abcWallet-ES4OPRSK.js +8 -0
  14. package/dist/ar_AR-YBBYUEGS.js +8 -0
  15. package/dist/arbitrum-D2TUFPZI.js +8 -0
  16. package/dist/argentWallet-A5HM5FRP.js +8 -0
  17. package/dist/assets-4NDWRKXE.js +8 -0
  18. package/dist/avalanche-BOOSH35S.js +8 -0
  19. package/dist/base-3JMRS35B.js +8 -0
  20. package/dist/berasigWallet-6IOU73YL.js +8 -0
  21. package/dist/bestWallet-6LJUU6OL.js +8 -0
  22. package/dist/bifrostWallet-SLPPXZ2K.js +8 -0
  23. package/dist/binanceWallet-Z67J7362.js +8 -0
  24. package/dist/bitgetWallet-DLLOWMCI.js +8 -0
  25. package/dist/bitskiWallet-CPOXGABT.js +8 -0
  26. package/dist/bitverseWallet-SAK4MIS6.js +8 -0
  27. package/dist/blast-4GF24NR7.js +8 -0
  28. package/dist/bloomWallet-YIRCNQZJ.js +8 -0
  29. package/dist/braveWallet-PNBKQKJC.js +8 -0
  30. package/dist/bsc-KU6MBOYR.js +8 -0
  31. package/dist/bybitWallet-GCDBAJKO.js +8 -0
  32. package/dist/celo-5A5VXMPX.js +8 -0
  33. package/dist/chunk-TJX4M23U.js +27 -0
  34. package/dist/clvWallet-R6YRCMZO.js +8 -0
  35. package/dist/coin98Wallet-4Y3ROAGP.js +8 -0
  36. package/dist/coinbaseWallet-L4QDZB5W.js +8 -0
  37. package/dist/compassWallet-NNBX35AV.js +8 -0
  38. package/dist/components/ChainIndicator/ChainIndicator.css.d.ts +4 -0
  39. package/dist/components/ChainIndicator/ChainIndicator.d.ts +53 -0
  40. package/dist/components/ChainIndicator/index.d.ts +2 -0
  41. package/dist/components/ChainSelector/ChainSelector.css.d.ts +5 -0
  42. package/dist/components/ChainSelector/ChainSelector.d.ts +38 -0
  43. package/dist/components/ChainSelector/index.d.ts +2 -0
  44. package/dist/components/ConnectButton/ConnectButtonRenderer.d.ts +9 -0
  45. package/dist/components/ConnectOptions/DesktopOptions.d.ts +5 -1
  46. package/dist/components/ConnectOptions/MultiChainConnectOptions.d.ts +31 -0
  47. package/dist/components/ConnectOptions/index.d.ts +3 -0
  48. package/dist/components/ModalSelection/ModalSelection.d.ts +2 -1
  49. package/dist/components/ProfileDetails/ProfileDetails.d.ts +1 -2
  50. package/dist/components/RainbowKitProvider/RainbowKitProvider.d.ts +8 -1
  51. package/dist/components/SolanaWalletList/SolanaWalletList.css.d.ts +7 -0
  52. package/dist/components/SolanaWalletList/SolanaWalletList.d.ts +32 -0
  53. package/dist/components/SolanaWalletList/index.d.ts +2 -0
  54. package/dist/config/networks.d.ts +125 -0
  55. package/dist/connect-Q2RLUT5B.js +8 -0
  56. package/dist/contexts/MultiChainContext.d.ts +68 -0
  57. package/dist/contexts/index.d.ts +7 -0
  58. package/dist/coreWallet-PN2LMNGN.js +8 -0
  59. package/dist/create-HQ4QXTKY.js +8 -0
  60. package/dist/cronos-KZAB32FC.js +8 -0
  61. package/dist/dawnWallet-AMO43DL3.js +8 -0
  62. package/dist/de_DE-RUWMVYCQ.js +8 -0
  63. package/dist/desigWallet-AD335WX5.js +8 -0
  64. package/dist/en_US-NQ25CUR4.js +8 -0
  65. package/dist/enkryptWallet-OOP27GE2.js +8 -0
  66. package/dist/es_419-HKJPYJRI.js +8 -0
  67. package/dist/ethereum-WAFT6DML.js +8 -0
  68. package/dist/flow-XANNOAPJ.js +8 -0
  69. package/dist/foxWallet-UDUWOW52.js +8 -0
  70. package/dist/fr_FR-2O5ZDLPQ.js +1356 -0
  71. package/dist/frameWallet-BEABTFIT.js +8 -0
  72. package/dist/frontierWallet-RG47M3C5.js +8 -0
  73. package/dist/gateWallet-XOP74BMB.js +8 -0
  74. package/dist/gnosis-7GFI4V27.js +8 -0
  75. package/dist/hardhat-6HKZWC4T.js +8 -0
  76. package/dist/hi_IN-XRZ4YIUW.js +8 -0
  77. package/dist/id_ID-REEY4CSS.js +8 -0
  78. package/dist/imTokenWallet-LTPKXYUD.js +8 -0
  79. package/dist/index.css +105 -0
  80. package/dist/index.d.ts +16 -0
  81. package/dist/index.js +2363 -1054
  82. package/dist/injectedWallet-YCFZTULL.js +8 -0
  83. package/dist/iopayWallet-XS37QAUO.js +8 -0
  84. package/dist/ja_JP-2OPCVN6X.js +8 -0
  85. package/dist/kaia-DQ3OSYXE.js +8 -0
  86. package/dist/kaiaWallet-2XZDQZ63.js +8 -0
  87. package/dist/kaikasWallet-V2GCFPEB.js +8 -0
  88. package/dist/ko_KR-DDXBZTYT.js +8 -0
  89. package/dist/krakenWallet-3VM7ZM2O.js +8 -0
  90. package/dist/kresusWallet-4MXFQP4P.js +8 -0
  91. package/dist/ledgerWallet-YC3HF3NJ.js +8 -0
  92. package/dist/login-DGIK764Z.js +8 -0
  93. package/dist/magicEden-BLYGUG47.js +8 -0
  94. package/dist/manta-OEF3QP66.js +8 -0
  95. package/dist/mantle-EYIH4GGM.js +8 -0
  96. package/dist/metaMaskWallet-ZZMFVM52.js +8 -0
  97. package/dist/mewWallet-D6JN37EZ.js +8 -0
  98. package/dist/ms_MY-PX7G4XTD.js +8 -0
  99. package/dist/nestWallet-X3CDHKNV.js +8 -0
  100. package/dist/oktoWallet-ZYLL2RLN.js +8 -0
  101. package/dist/okxWallet-FLICEG4S.js +8 -0
  102. package/dist/omniWallet-DAQHKHUN.js +8 -0
  103. package/dist/oneInchWallet-BRGGUXND.js +8 -0
  104. package/dist/oneKeyWallet-KDU2JIFD.js +8 -0
  105. package/dist/optimism-6GXRYJDW.js +8 -0
  106. package/dist/paraSwapWallet-7UHWT54G.js +8 -0
  107. package/dist/phantomWallet-BSCGZT6L.js +8 -0
  108. package/dist/polygon-YNJM552P.js +8 -0
  109. package/dist/pt_BR-A5R4SBSC.js +8 -0
  110. package/dist/rabbyWallet-RZIUL3YN.js +8 -0
  111. package/dist/rainbowWallet-4ALDT5ZL.js +8 -0
  112. package/dist/ramperWallet-IB3JRE2F.js +8 -0
  113. package/dist/refresh-R5NYTT3S.js +8 -0
  114. package/dist/ronin-LU7LZPWA.js +8 -0
  115. package/dist/roninWallet-BS7VDK7U.js +8 -0
  116. package/dist/ru_RU-4QDZLRSW.js +1356 -0
  117. package/dist/safeWallet-5NR62MJV.js +8 -0
  118. package/dist/safeheronWallet-7ELUSU44.js +8 -0
  119. package/dist/safepalWallet-CZJABQ5N.js +8 -0
  120. package/dist/scan-BVZ7DVJ4.js +8 -0
  121. package/dist/scroll-XRP46UTI.js +8 -0
  122. package/dist/secure-GEK7TTJY.js +8 -0
  123. package/dist/seifWallet-XLBMTX4R.js +8 -0
  124. package/dist/sign-PREOQ4RR.js +8 -0
  125. package/dist/solana/SolanaWalletProvider.d.ts +38 -0
  126. package/dist/solana/config.d.ts +57 -0
  127. package/dist/solana/index.d.ts +11 -0
  128. package/dist/solana/utils/detection.d.ts +27 -0
  129. package/dist/solana/wallets/backpackWallet.d.ts +19 -0
  130. package/dist/solana/wallets/index.d.ts +8 -0
  131. package/dist/solana/wallets/phantomSolanaWallet.d.ts +17 -0
  132. package/dist/solana/wallets/solflareWallet.d.ts +17 -0
  133. package/dist/subWallet-47USA4OE.js +8 -0
  134. package/dist/tahoWallet-N3XXJ3NW.js +8 -0
  135. package/dist/talismanWallet-SV3B42TQ.js +8 -0
  136. package/dist/th_TH-4TWPYDKX.js +1356 -0
  137. package/dist/themes/baseTheme.js +1 -0
  138. package/dist/themes/darkTheme.js +1 -0
  139. package/dist/themes/lightTheme.js +1 -0
  140. package/dist/themes/midnightTheme.js +1 -0
  141. package/dist/tokenPocketWallet-7IYW3MIL.js +8 -0
  142. package/dist/tokenaryWallet-7D2LN65X.js +8 -0
  143. package/dist/tr_TR-C37KIU7M.js +1356 -0
  144. package/dist/trustWallet-HJQBMBC6.js +8 -0
  145. package/dist/types/solana.d.ts +97 -0
  146. package/dist/uk_UA-I77HS4GO.js +1356 -0
  147. package/dist/uniswapWallet-JZ2ULELN.js +8 -0
  148. package/dist/utils/abcWaasAdapter.d.ts +75 -0
  149. package/dist/valoraWallet-PCTL6UBB.js +8 -0
  150. package/dist/vi_VN-KVPDLW26.js +8 -0
  151. package/dist/walletConnectWallet-AJ36XVBT.js +8 -0
  152. package/dist/wallets/recentSolanaWalletIds.d.ts +16 -0
  153. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.d.ts +11 -8
  154. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.js +1 -1
  155. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.d.ts +4 -11
  156. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.js +1 -1
  157. package/dist/wallets/walletConnectors/abcWallet/api/BitcoinApi.d.ts +1 -19
  158. package/dist/wallets/walletConnectors/abcWallet/api/BitcoinApi.js +1 -1
  159. package/dist/wallets/walletConnectors/abcWallet/api/index.js +7 -7
  160. package/dist/wallets/walletConnectors/abcWallet/index.js +6 -6
  161. package/dist/wallets/walletConnectors/abcWallet/types.d.ts +2 -0
  162. package/dist/wallets/walletConnectors/{chunk-5EARL7FN.js → chunk-2GIBC7XF.js} +4 -4
  163. package/dist/wallets/walletConnectors/chunk-34WMJDUY.js +481 -0
  164. package/dist/wallets/walletConnectors/{chunk-E4N7SPPU.js → chunk-3J3XZMJ7.js} +4 -4
  165. package/dist/wallets/walletConnectors/chunk-3SVPZCA6.js +71 -0
  166. package/dist/wallets/walletConnectors/chunk-4IRVZPIN.js +63 -0
  167. package/dist/wallets/walletConnectors/{chunk-BRM4ZVXZ.js → chunk-5OFAP55G.js} +1 -1
  168. package/dist/wallets/walletConnectors/chunk-5QEUEPNY.js +94 -0
  169. package/dist/wallets/walletConnectors/chunk-6YPK343Z.js +63 -0
  170. package/dist/wallets/walletConnectors/chunk-7P5HZGEV.js +627 -0
  171. package/dist/wallets/walletConnectors/chunk-A6LBRVGP.js +63 -0
  172. package/dist/wallets/walletConnectors/chunk-B6JLYR3I.js +66 -0
  173. package/dist/wallets/walletConnectors/{chunk-WPHTIILX.js → chunk-BKXPGZMQ.js} +1 -1
  174. package/dist/wallets/walletConnectors/{chunk-2J6LHJAF.js → chunk-CNHVIXPV.js} +3 -3
  175. package/dist/wallets/walletConnectors/{chunk-YZBFKVTX.js → chunk-DAZZIITX.js} +8 -5
  176. package/dist/wallets/walletConnectors/{chunk-7UZBDZZZ.js → chunk-F4JFONDA.js} +4 -2
  177. package/dist/wallets/walletConnectors/chunk-GXHCAEWR.js +63 -0
  178. package/dist/wallets/walletConnectors/chunk-HKWBR5B7.js +102 -0
  179. package/dist/wallets/walletConnectors/chunk-HOE4UOHR.js +514 -0
  180. package/dist/wallets/walletConnectors/chunk-JJAJOFZI.js +63 -0
  181. package/dist/wallets/walletConnectors/chunk-K4APJ4PE.js +96 -0
  182. package/dist/wallets/walletConnectors/chunk-KFIUFVQH.js +624 -0
  183. package/dist/wallets/walletConnectors/chunk-KFROJI25.js +535 -0
  184. package/dist/wallets/walletConnectors/chunk-KHVILXGK.js +514 -0
  185. package/dist/wallets/walletConnectors/chunk-LGT7LQAJ.js +63 -0
  186. package/dist/wallets/walletConnectors/chunk-LHBQ2Z3Q.js +63 -0
  187. package/dist/wallets/walletConnectors/chunk-LJ2B47VF.js +108 -0
  188. package/dist/wallets/walletConnectors/chunk-LXINMUQC.js +186 -0
  189. package/dist/wallets/walletConnectors/chunk-M76GLEFL.js +63 -0
  190. package/dist/wallets/walletConnectors/chunk-MFIE6UCG.js +63 -0
  191. package/dist/wallets/walletConnectors/chunk-MORUEOYX.js +76 -0
  192. package/dist/wallets/walletConnectors/chunk-MQTXA63X.js +27 -0
  193. package/dist/wallets/walletConnectors/{chunk-KIQDE4N6.js → chunk-NKJLO4QH.js} +1 -1
  194. package/dist/wallets/walletConnectors/chunk-NURTFXQU.js +568 -0
  195. package/dist/wallets/walletConnectors/chunk-NWDLOM7Q.js +646 -0
  196. package/dist/wallets/walletConnectors/{chunk-BUDWZAL7.js → chunk-OHRTTVNJ.js} +1 -1
  197. package/dist/wallets/walletConnectors/chunk-OMYDLPUM.js +63 -0
  198. package/dist/wallets/walletConnectors/chunk-PMZJGS7X.js +73 -0
  199. package/dist/wallets/walletConnectors/chunk-PUFQKZA7.js +63 -0
  200. package/dist/wallets/walletConnectors/chunk-S2B56ZVJ.js +481 -0
  201. package/dist/wallets/walletConnectors/chunk-SFP47DS6.js +63 -0
  202. package/dist/wallets/walletConnectors/chunk-SNZL5LJ6.js +637 -0
  203. package/dist/wallets/walletConnectors/chunk-SPR4W5TG.js +474 -0
  204. package/dist/wallets/walletConnectors/{chunk-FSU3WBH3.js → chunk-SSDCG5BG.js} +5 -5
  205. package/dist/wallets/walletConnectors/{chunk-G2IHR6PW.js → chunk-VLEVJVJR.js} +4 -4
  206. package/dist/wallets/walletConnectors/chunk-WYSKBMHW.js +280 -0
  207. package/dist/wallets/walletConnectors/chunk-WZZVA3LW.js +101 -0
  208. package/dist/wallets/walletConnectors/chunk-XEIKWKH7.js +63 -0
  209. package/dist/wallets/walletConnectors/chunk-XOQNQKZE.js +98 -0
  210. package/dist/wallets/walletConnectors/chunk-ZAGAF6PO.js +63 -0
  211. package/dist/wallets/walletConnectors/chunk-ZJ6OFFD5.js +95 -0
  212. package/dist/wallets/walletConnectors/index.js +53 -53
  213. package/dist/wigwamWallet-D3MVGB5Z.js +8 -0
  214. package/dist/xdc-5NQHQJE5.js +8 -0
  215. package/dist/xdefiWallet-B4O6HAIP.js +8 -0
  216. package/dist/zealWallet-6SPNICRX.js +8 -0
  217. package/dist/zerionWallet-XZ3JCAOO.js +8 -0
  218. package/dist/zetachain-U6IILKZJ.js +8 -0
  219. package/dist/zh_CN-KGLAIP3N.js +8 -0
  220. package/dist/zh_HK-AEXEN6P6.js +8 -0
  221. package/dist/zh_TW-6C7R5V3K.js +8 -0
  222. package/dist/zkSync-TMPB52ZN.js +8 -0
  223. package/dist/zora-S46CHEOU.js +8 -0
  224. package/package.json +16 -12
  225. package/dist/wallets/walletConnectors/chunk-2ZPGPZCP.js +0 -228
  226. package/dist/wallets/walletConnectors/chunk-3DPCIDW6.js +0 -1730
  227. package/dist/wallets/walletConnectors/chunk-4HKJ53H3.js +0 -1742
  228. package/dist/wallets/walletConnectors/chunk-6JKWIEGA.js +0 -228
  229. package/dist/wallets/walletConnectors/chunk-7L33BY4P.js +0 -44
  230. package/dist/wallets/walletConnectors/chunk-7SXCH5TL.js +0 -1752
  231. package/dist/wallets/walletConnectors/chunk-CSWWNAYR.js +0 -44
  232. package/dist/wallets/walletConnectors/chunk-ENU7XLF5.js +0 -44
  233. package/dist/wallets/walletConnectors/chunk-FF7ZIXKD.js +0 -39
  234. package/dist/wallets/walletConnectors/chunk-FJCL2YPU.js +0 -1737
  235. package/dist/wallets/walletConnectors/chunk-HD6YCICR.js +0 -228
  236. package/dist/wallets/walletConnectors/chunk-HIZCIW5L.js +0 -228
  237. package/dist/wallets/walletConnectors/chunk-JRNBDHFL.js +0 -44
  238. package/dist/wallets/walletConnectors/chunk-KOT7JYJR.js +0 -39
  239. package/dist/wallets/walletConnectors/chunk-KRAIITU7.js +0 -39
  240. package/dist/wallets/walletConnectors/chunk-KZOSE2PI.js +0 -228
  241. package/dist/wallets/walletConnectors/chunk-L7I5I4CZ.js +0 -44
  242. package/dist/wallets/walletConnectors/chunk-LNZJLKFB.js +0 -39
  243. package/dist/wallets/walletConnectors/chunk-LV765WZL.js +0 -1748
  244. package/dist/wallets/walletConnectors/chunk-MSI2BPP5.js +0 -1722
  245. package/dist/wallets/walletConnectors/chunk-MX2IY5CD.js +0 -44
  246. package/dist/wallets/walletConnectors/chunk-NLX2EV7O.js +0 -44
  247. package/dist/wallets/walletConnectors/chunk-NVAZ3B3V.js +0 -228
  248. package/dist/wallets/walletConnectors/chunk-OEWU3ZMN.js +0 -39
  249. package/dist/wallets/walletConnectors/chunk-PNMSIVVT.js +0 -44
  250. package/dist/wallets/walletConnectors/chunk-PZNYT2HC.js +0 -1722
  251. package/dist/wallets/walletConnectors/chunk-QPAE4SDS.js +0 -39
  252. package/dist/wallets/walletConnectors/chunk-QZRNNI3E.js +0 -39
  253. package/dist/wallets/walletConnectors/chunk-R4UYVU5X.js +0 -1721
  254. package/dist/wallets/walletConnectors/chunk-R6JCHV55.js +0 -39
  255. package/dist/wallets/walletConnectors/chunk-RWIZ25FJ.js +0 -1684
  256. package/dist/wallets/walletConnectors/chunk-V6NRLREB.js +0 -44
  257. package/dist/wallets/walletConnectors/chunk-VM7AEC7H.js +0 -39
  258. package/dist/wallets/walletConnectors/chunk-VPNKJ7PB.js +0 -1674
  259. package/dist/wallets/walletConnectors/chunk-WR7HSVMH.js +0 -228
  260. package/dist/wallets/walletConnectors/chunk-WSCJY2QD.js +0 -228
  261. package/dist/wallets/walletConnectors/chunk-X3JQB5QL.js +0 -44
  262. package/dist/wallets/walletConnectors/chunk-X4CDP7L7.js +0 -228
  263. package/dist/wallets/walletConnectors/chunk-XETOVXYM.js +0 -228
  264. package/dist/wallets/walletConnectors/chunk-Z2ZRPTPX.js +0 -1726
  265. package/dist/wallets/walletConnectors/{chunk-LTBQU2GW.js → chunk-6TLWAEJV.js} +4 -4
  266. package/dist/wallets/walletConnectors/{chunk-66SCJ77O.js → chunk-74ALNZG4.js} +3 -3
  267. package/dist/wallets/walletConnectors/{chunk-VCBVYFLJ.js → chunk-CM5OGUJV.js} +8 -8
  268. package/dist/wallets/walletConnectors/{chunk-47TQ23J4.js → chunk-NLKL4KD2.js} +11 -11
@@ -0,0 +1,627 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-IOLHAU7H.js";
5
+ import {
6
+ createAbcError
7
+ } from "./chunk-W23N7VC4.js";
8
+ import {
9
+ DEFAULT_HEADERS
10
+ } from "./chunk-VETRBBA2.js";
11
+
12
+ // src/wallets/walletConnectors/abcWallet/api/BitcoinApi.ts
13
+ var BitcoinApi = class extends BaseApiClient {
14
+ /**
15
+ * Generate Bitcoin wallet
16
+ * Uses V3 API with secp256k1 curve (same as EVM but compressed public key)
17
+ *
18
+ * @param pin - Hashed PIN (SHA-256)
19
+ * @param network - Bitcoin network (mainnet or testnet)
20
+ * @param addressType - Bitcoin address type (bech32 recommended)
21
+ * @returns Bitcoin wallet information
22
+ */
23
+ async generateBitcoinWallet(pin, network = "bitcoin", addressType = "bech32") {
24
+ console.log("[BitcoinApi] \u{1F527} Generating Bitcoin wallet...", {
25
+ network,
26
+ addressType
27
+ });
28
+ const response = await this.request("/v3/wallet/generate", {
29
+ method: "POST",
30
+ contentType: "json",
31
+ body: {
32
+ curve: "secp256k1",
33
+ // Same as EVM but compressed public key
34
+ password: pin,
35
+ network
36
+ }
37
+ });
38
+ if (response.status !== "success" || !response.result) {
39
+ console.error("[BitcoinApi] \u274C Generation failed:", response);
40
+ throw createAbcError(
41
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
42
+ "Failed to generate Bitcoin wallet",
43
+ response
44
+ );
45
+ }
46
+ const result = response.result;
47
+ const addressResult = await this.getBitcoinAddress(
48
+ result.public_key,
49
+ network,
50
+ addressType
51
+ );
52
+ console.log("[BitcoinApi] \u2705 Bitcoin wallet generated:", addressResult);
53
+ return {
54
+ uid: result.uid || "",
55
+ sessionId: result.share_id,
56
+ shareId: result.share_id,
57
+ publicKey: result.public_key,
58
+ // Compressed (33 bytes, 0x02 or 0x03 prefix)
59
+ address: addressResult,
60
+ addressType,
61
+ keyId: result.key_id || result.share_id,
62
+ encryptedShare: result.encrypted_share || "",
63
+ network
64
+ };
65
+ }
66
+ /**
67
+ * Recover Bitcoin wallet
68
+ * Uses V3 API wallet recovery endpoint
69
+ *
70
+ * @param pin - Hashed PIN (SHA-256)
71
+ * @param network - Bitcoin network
72
+ * @param addressType - Bitcoin address type
73
+ * @returns Recovered Bitcoin wallet information
74
+ */
75
+ async recoverBitcoinWallet(pin, network = "bitcoin", addressType = "bech32") {
76
+ console.log("[BitcoinApi] \u{1F527} Recovering Bitcoin wallet...", {
77
+ network,
78
+ addressType
79
+ });
80
+ const response = await this.request("/v3/wallet/recover", {
81
+ method: "POST",
82
+ contentType: "json",
83
+ body: {
84
+ curve: "secp256k1",
85
+ password: pin,
86
+ network
87
+ }
88
+ });
89
+ if (response.status !== "success" || !response.result) {
90
+ console.error("[BitcoinApi] \u274C Recovery failed:", response);
91
+ throw createAbcError(
92
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
93
+ "Failed to recover Bitcoin wallet",
94
+ response
95
+ );
96
+ }
97
+ const result = response.result;
98
+ const addressResult = await this.getBitcoinAddress(
99
+ result.public_key,
100
+ network,
101
+ addressType
102
+ );
103
+ console.log("[BitcoinApi] \u2705 Bitcoin wallet recovered:", addressResult);
104
+ return {
105
+ uid: result.uid || "",
106
+ sessionId: result.share_id,
107
+ shareId: result.share_id,
108
+ publicKey: result.public_key,
109
+ address: addressResult,
110
+ addressType,
111
+ keyId: result.key_id || result.share_id,
112
+ encryptedShare: result.encrypted_share || "",
113
+ network
114
+ };
115
+ }
116
+ /**
117
+ * Get Bitcoin address from compressed public key
118
+ * Converts compressed public key to Bitcoin address based on address type
119
+ *
120
+ * @param publicKey - Compressed public key (33 bytes, hex)
121
+ * @param network - Bitcoin network
122
+ * @param addressType - Address format type (currently not used by API)
123
+ * @returns Bitcoin address
124
+ */
125
+ async getBitcoinAddress(publicKey, network, _addressType = "bech32") {
126
+ const url = `${this.baseURL}/wapi/v2/btc/address`;
127
+ const params = new URLSearchParams({
128
+ pubkey: publicKey,
129
+ network
130
+ });
131
+ const response = await fetch(`${url}?${params}`, {
132
+ method: "GET",
133
+ headers: {
134
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
135
+ }
136
+ });
137
+ const data = await response.json();
138
+ if (!response.ok) {
139
+ throw createAbcError(
140
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
141
+ "Failed to get Bitcoin address",
142
+ data
143
+ );
144
+ }
145
+ return data.address;
146
+ }
147
+ /**
148
+ * Get UTXOs (Unspent Transaction Outputs) for address
149
+ * Bitcoin uses UTXO model unlike EVM/Solana account model
150
+ *
151
+ * @param address - Bitcoin address
152
+ * @param network - Bitcoin network
153
+ * @returns Array of UTXOs
154
+ */
155
+ async getUtxos(address, network) {
156
+ const url = `${this.baseURL}/wapi/v2/bitcoin/utxo/list`;
157
+ const params = new URLSearchParams({ network, address });
158
+ console.log("[BitcoinApi] \u{1F50D} Fetching UTXOs for:", address);
159
+ const response = await fetch(`${url}?${params}`, {
160
+ method: "GET",
161
+ headers: {
162
+ ...DEFAULT_HEADERS,
163
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
164
+ }
165
+ });
166
+ const data = await response.json();
167
+ if (!response.ok || data.status !== "success") {
168
+ throw createAbcError(
169
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
170
+ "Failed to get UTXOs",
171
+ data
172
+ );
173
+ }
174
+ const utxos = data.result?.utxos || [];
175
+ console.log(`[BitcoinApi] \u2705 Found ${utxos.length} UTXOs`);
176
+ return utxos;
177
+ }
178
+ /**
179
+ * Sign Bitcoin transaction (PSBT-based)
180
+ * Bitcoin transactions are signed using PSBT (BIP-174) format
181
+ * Each input requires individual signature
182
+ *
183
+ * @param params - Transaction signing parameters
184
+ * @returns Signed PSBT with multiple input signatures
185
+ */
186
+ async signBitcoinTransaction(params) {
187
+ const url = `${this.baseURL}/v3/wallet/sign`;
188
+ console.log("[BitcoinApi] \u{1F510} Signing Bitcoin transaction (PSBT)...");
189
+ const response = await fetch(url, {
190
+ method: "POST",
191
+ headers: {
192
+ "Content-Type": "application/json",
193
+ Accept: "application/json",
194
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
195
+ },
196
+ body: JSON.stringify({
197
+ uid: params.uid,
198
+ share_id: params.shareId,
199
+ message: params.psbt,
200
+ // PSBT in base64
201
+ password: params.pin,
202
+ network: params.network
203
+ })
204
+ });
205
+ const data = await response.json();
206
+ if (!response.ok || data.status !== "success") {
207
+ console.error("[BitcoinApi] \u274C Transaction signing failed:", data);
208
+ throw createAbcError(
209
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
210
+ "Failed to sign Bitcoin transaction",
211
+ data
212
+ );
213
+ }
214
+ console.log("[BitcoinApi] \u2705 Transaction signed successfully");
215
+ return {
216
+ signedPsbt: data.result?.signedPsbt,
217
+ signatures: data.result?.signatures || []
218
+ };
219
+ }
220
+ /**
221
+ * Sign Bitcoin message (BIP-322)
222
+ * Bitcoin message signing using BIP-322 standard
223
+ * Supports both legacy and modern address types
224
+ *
225
+ * @param params - Message signing parameters
226
+ * @returns BIP-322 signature
227
+ */
228
+ async signBitcoinMessage(params) {
229
+ const url = `${this.baseURL}/v3/wallet/sign`;
230
+ console.log("[BitcoinApi] \u{1F510} Signing Bitcoin message (BIP-322)...");
231
+ const response = await fetch(url, {
232
+ method: "POST",
233
+ headers: {
234
+ "Content-Type": "application/json",
235
+ Accept: "application/json",
236
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
237
+ },
238
+ body: JSON.stringify({
239
+ uid: params.uid,
240
+ share_id: params.shareId,
241
+ key_id: params.keyId,
242
+ message: params.message,
243
+ // Hex-encoded message
244
+ password: params.pin,
245
+ messageType: params.messageType || "bip322",
246
+ network: params.network
247
+ })
248
+ });
249
+ const responseText = await response.text();
250
+ console.log("[BitcoinApi] \u{1F4E5} Sign message raw response:", {
251
+ status: response.status,
252
+ statusText: response.statusText,
253
+ contentType: response.headers.get("content-type"),
254
+ text: responseText.substring(0, 500)
255
+ });
256
+ if (!responseText) {
257
+ throw createAbcError(
258
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
259
+ "Empty response from sign message API",
260
+ { status: response.status }
261
+ );
262
+ }
263
+ let data;
264
+ try {
265
+ data = JSON.parse(responseText);
266
+ } catch (parseError) {
267
+ console.error("[BitcoinApi] \u274C JSON parse error:", parseError);
268
+ console.error("[BitcoinApi] \u{1F4C4} Full response text:", responseText);
269
+ throw createAbcError(
270
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
271
+ `Server returned non-JSON response: ${responseText}`,
272
+ { responseText, parseError, status: response.status }
273
+ );
274
+ }
275
+ if (!response.ok || data.status !== "success") {
276
+ console.error("[BitcoinApi] \u274C Message signing failed:", data);
277
+ throw createAbcError(
278
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
279
+ data.error || data.message || "Failed to sign Bitcoin message",
280
+ data
281
+ );
282
+ }
283
+ console.log("[BitcoinApi] \u2705 Message signed successfully");
284
+ return {
285
+ signature: data.result?.signature,
286
+ messageHash: data.result?.messageHash,
287
+ address: data.result?.address,
288
+ network: params.network
289
+ };
290
+ }
291
+ /**
292
+ * Send Bitcoin transaction
293
+ * Broadcasts signed transaction to Bitcoin network
294
+ *
295
+ * @param params - Transaction broadcast parameters
296
+ * @returns Transaction hash
297
+ */
298
+ async sendBitcoinTransaction(params) {
299
+ const url = `${this.baseURL}/wapi/v2/bitcoin/tx/sendTransaction`;
300
+ console.log("[BitcoinApi] \u{1F4E1} Broadcasting Bitcoin transaction...");
301
+ const response = await fetch(url, {
302
+ method: "POST",
303
+ headers: {
304
+ ...DEFAULT_HEADERS,
305
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
306
+ },
307
+ body: JSON.stringify({
308
+ network: params.network,
309
+ rawTransaction: params.rawTransaction,
310
+ ...params.psbt && { psbt: params.psbt }
311
+ })
312
+ });
313
+ const data = await response.json();
314
+ if (!response.ok || data.status !== "success") {
315
+ console.error("[BitcoinApi] \u274C Transaction broadcast failed:", data);
316
+ throw createAbcError(
317
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
318
+ "Failed to send Bitcoin transaction",
319
+ data
320
+ );
321
+ }
322
+ const txHash = data.result?.data;
323
+ console.log("[BitcoinApi] \u2705 Transaction broadcasted:", txHash);
324
+ return {
325
+ txHash
326
+ };
327
+ }
328
+ /**
329
+ * Generate Bitcoin transaction (Step 1 of 3)
330
+ * Creates PSBT and returns hashes to sign
331
+ *
332
+ * @param params - Transaction parameters
333
+ * @returns Transaction data with hashes to sign
334
+ */
335
+ async generateTransaction(params) {
336
+ const url = `${this.baseURL}/wapi/v2/btc/transaction/generate`;
337
+ console.log("[BitcoinApi] \u{1F527} Generating transaction...", params);
338
+ const response = await fetch(url, {
339
+ method: "POST",
340
+ headers: {
341
+ "Content-Type": "application/json",
342
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
343
+ },
344
+ body: JSON.stringify(params)
345
+ });
346
+ const data = await response.json();
347
+ if (!response.ok || !data.hashes) {
348
+ const errorMsg = typeof data.error === "string" ? data.error : JSON.stringify(data.error || data);
349
+ console.error("[BitcoinApi] \u274C Generate failed:", errorMsg);
350
+ throw createAbcError(
351
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
352
+ `Failed to generate transaction: ${errorMsg}`,
353
+ data
354
+ );
355
+ }
356
+ console.log(
357
+ `[BitcoinApi] \u2705 Generated ${data.hashes.length} hashes to sign`
358
+ );
359
+ return data;
360
+ }
361
+ /**
362
+ * Sign transaction hash (Step 2 of 3)
363
+ * Uses Secure Channel encryption for signing
364
+ * Based on tg-wallet-frontend reference implementation
365
+ *
366
+ * @param hash - Transaction hash to sign
367
+ * @param wallet - Full wallet object with Bitcoin signing fields
368
+ * @param pinHash - Hashed PIN for device password
369
+ * @param secureService - Secure service instance for encryption
370
+ * @returns Signature hex string (r + s without 0x prefix on s)
371
+ */
372
+ async signHash(hash, wallet, pinHash, secureService) {
373
+ console.log("[BitcoinApi] \u{1F510} Signing hash:", `${hash.substring(0, 20)}...`);
374
+ if (!wallet.wid || !wallet.pvencstr) {
375
+ console.error("[BitcoinApi] \u274C Missing Bitcoin signing fields:", {
376
+ hasWid: !!wallet.wid,
377
+ hasPvencstr: !!wallet.pvencstr,
378
+ hasSid: !!wallet.sid,
379
+ hasUid: !!wallet.uid
380
+ });
381
+ throw createAbcError(
382
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
383
+ "Wallet missing required fields for Bitcoin signing (wid, pvencstr)",
384
+ { hasWid: !!wallet.wid, hasPvencstr: !!wallet.pvencstr }
385
+ );
386
+ }
387
+ console.log("[BitcoinApi] \u2705 Wallet fields validated for Bitcoin signing");
388
+ console.log("[BitcoinApi] \u{1F4CB} Wallet PLAINTEXT values:", {
389
+ hasWid: !!wallet.wid,
390
+ widLength: wallet.wid?.length,
391
+ hasPvencstr: !!wallet.pvencstr,
392
+ pvencstrLength: wallet.pvencstr?.length,
393
+ hasEncryptDevicePassword: !!wallet.encryptDevicePassword,
394
+ encryptDevicePasswordLength: wallet.encryptDevicePassword?.length
395
+ });
396
+ const encryptDevicePassword = await secureService.getEncryptPlain(
397
+ wallet.encryptDevicePassword || pinHash
398
+ );
399
+ const pvencstr = await secureService.getEncryptPlain(wallet.pvencstr);
400
+ const wid = await secureService.getEncryptPlain(wallet.wid);
401
+ const secureChannelId = await secureService.getSecureChannelId();
402
+ console.log("[BitcoinApi] \u{1F510} Encrypted values:", {
403
+ encryptDevicePasswordLength: encryptDevicePassword.length,
404
+ pvencstrLength: pvencstr.length,
405
+ widLength: wid.length,
406
+ secureChannelId
407
+ });
408
+ const params = new URLSearchParams({
409
+ uid: wallet.uid,
410
+ sid: wallet.sid || "",
411
+ // Handle optional sid
412
+ hash,
413
+ pvencstr,
414
+ wid,
415
+ encryptDevicePassword
416
+ });
417
+ console.log("[BitcoinApi] \u{1F4E4} Request params:", {
418
+ uid: wallet.uid,
419
+ sid: wallet.sid || "",
420
+ hashLength: hash.length,
421
+ bodyLength: params.toString().length
422
+ });
423
+ const url = `${this.baseURL}/wapi/v2/sign/hash`;
424
+ const response = await fetch(url, {
425
+ method: "POST",
426
+ headers: {
427
+ "Content-Type": "application/x-www-form-urlencoded",
428
+ "Secure-Channel": secureChannelId,
429
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
430
+ },
431
+ body: params.toString()
432
+ });
433
+ const responseText = await response.text();
434
+ console.log("[BitcoinApi] \u{1F4E5} Raw response:", {
435
+ status: response.status,
436
+ statusText: response.statusText,
437
+ text: responseText.substring(0, 200)
438
+ });
439
+ if (!responseText) {
440
+ throw createAbcError(
441
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
442
+ "Empty response from sign hash API",
443
+ { status: response.status }
444
+ );
445
+ }
446
+ let data;
447
+ try {
448
+ data = JSON.parse(responseText);
449
+ } catch (parseError) {
450
+ console.error("[BitcoinApi] \u274C JSON parse error:", parseError);
451
+ throw createAbcError(
452
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
453
+ "Invalid JSON response from sign hash API",
454
+ { responseText, parseError }
455
+ );
456
+ }
457
+ if (!response.ok || data.iserr === true || !data.signstr) {
458
+ const errorDetails = data.errmsg || data.errors?.[0] || data.message || data;
459
+ console.error("[BitcoinApi] \u274C Sign failed:", errorDetails);
460
+ throw createAbcError(
461
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
462
+ `Failed to sign hash: ${JSON.stringify(errorDetails)}`,
463
+ data
464
+ );
465
+ }
466
+ console.log("[BitcoinApi] \u2705 Sign successful, parsing signature...");
467
+ const signstr = JSON.parse(data.signstr);
468
+ const sig_list = signstr.sig_list;
469
+ const signatures = [];
470
+ for (const sig of sig_list) {
471
+ const r = sig.r;
472
+ const s = sig.s.startsWith("0x") ? sig.s.substring(2) : sig.s;
473
+ const combinedSig = r + s;
474
+ signatures.push(combinedSig);
475
+ }
476
+ console.log(
477
+ "[BitcoinApi] \u2705 Signature generated:",
478
+ `${signatures[0].substring(0, 32)}...`
479
+ );
480
+ return signatures[0];
481
+ }
482
+ /**
483
+ * Finalize and broadcast transaction (Step 3 of 3)
484
+ * Broadcasts signed transaction to Bitcoin network
485
+ *
486
+ * @param params - Transaction parameters with signatures
487
+ * @returns Transaction hash
488
+ */
489
+ async finalizeTransaction(params) {
490
+ const url = `${this.baseURL}/wapi/v2/btc/transaction/finalize`;
491
+ console.log("[BitcoinApi] \u{1F4E1} Broadcasting transaction...");
492
+ console.log("[BitcoinApi] \u{1F4E4} Finalize params:", {
493
+ signatureCount: params.signatureHex.length,
494
+ amount: params.amount,
495
+ to: params.to,
496
+ pubkey: `${params.pubkey.substring(0, 20)}...`
497
+ });
498
+ const response = await fetch(url, {
499
+ method: "POST",
500
+ headers: {
501
+ "Content-Type": "application/json",
502
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
503
+ },
504
+ body: JSON.stringify(params)
505
+ });
506
+ const responseText = await response.text();
507
+ console.log("[BitcoinApi] \u{1F4E5} Finalize raw response:", {
508
+ status: response.status,
509
+ statusText: response.statusText,
510
+ text: responseText.substring(0, 200)
511
+ });
512
+ if (!responseText) {
513
+ throw createAbcError(
514
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
515
+ "Empty response from finalize API",
516
+ { status: response.status }
517
+ );
518
+ }
519
+ let data;
520
+ try {
521
+ data = JSON.parse(responseText);
522
+ } catch (parseError) {
523
+ console.error("[BitcoinApi] \u274C JSON parse error:", parseError);
524
+ throw createAbcError(
525
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
526
+ "Invalid JSON response from finalize API",
527
+ { responseText, parseError }
528
+ );
529
+ }
530
+ console.log("[BitcoinApi] \u{1F4CB} Finalize parsed data:", data);
531
+ if (!response.ok) {
532
+ const errorMsg = data.error || data.message || data.errmsg || "Unknown error";
533
+ console.error("[BitcoinApi] \u274C Finalize failed:", errorMsg);
534
+ throw createAbcError(
535
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
536
+ `Failed to finalize transaction: ${errorMsg}`,
537
+ data
538
+ );
539
+ }
540
+ const txHash = data.result?.tx_hash || data.tx_hash || data.result?.txHash || data.txHash;
541
+ if (!txHash) {
542
+ console.error("[BitcoinApi] \u274C No tx_hash in response:", data);
543
+ throw createAbcError(
544
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
545
+ "Transaction hash not found in response",
546
+ data
547
+ );
548
+ }
549
+ console.log("[BitcoinApi] \u2705 Transaction sent:", txHash);
550
+ return txHash;
551
+ }
552
+ /**
553
+ * Send Bitcoin transaction (Complete flow: generate → sign → finalize)
554
+ * High-level API that handles all 3 steps
555
+ *
556
+ * @param params - Transaction parameters
557
+ * @param wallet - EVM wallet credentials
558
+ * @param pinHash - Hashed PIN
559
+ * @param secureService - Secure service instance
560
+ * @returns Transaction hash
561
+ */
562
+ async sendTransaction(params, wallet, pinHash, secureService) {
563
+ console.log("[BitcoinApi] \u{1F4B8} Starting Bitcoin transaction flow...");
564
+ const generateData = await this.generateTransaction({
565
+ amount: params.amount,
566
+ pubkey: params.pubkey,
567
+ to: params.to,
568
+ feeRate: "2"
569
+ // Default fee rate
570
+ });
571
+ const { hashes, fee_rate } = generateData;
572
+ const signatureHex = [];
573
+ for (let i = 0; i < hashes.length; i++) {
574
+ const signature = await this.signHash(
575
+ hashes[i],
576
+ wallet,
577
+ pinHash,
578
+ secureService
579
+ );
580
+ signatureHex.push(signature);
581
+ }
582
+ const txHash = await this.finalizeTransaction({
583
+ network: params.network,
584
+ signatureHex,
585
+ feeRate: fee_rate,
586
+ amount: params.amount,
587
+ pubkey: params.pubkey,
588
+ to: params.to
589
+ });
590
+ console.log("[BitcoinApi] \u2705 Transaction complete:", txHash);
591
+ return txHash;
592
+ }
593
+ /**
594
+ * Estimate Bitcoin transaction fee
595
+ * Gets recommended fee rate (satoshis per byte) for target confirmation blocks
596
+ *
597
+ * @param network - Bitcoin network
598
+ * @param targetBlocks - Target confirmation blocks (default: 6)
599
+ * @returns Fee rate in satoshis per byte
600
+ */
601
+ async estimateFee(network, targetBlocks = 6) {
602
+ const url = `${this.baseURL}/wapi/v2/bitcoin/fee/estimate`;
603
+ const params = new URLSearchParams({
604
+ network,
605
+ targetBlocks: targetBlocks.toString()
606
+ });
607
+ const response = await fetch(`${url}?${params}`, {
608
+ method: "GET",
609
+ headers: {
610
+ ...DEFAULT_HEADERS,
611
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
612
+ }
613
+ });
614
+ const data = await response.json();
615
+ if (!response.ok || data.status !== "success") {
616
+ console.warn("[BitcoinApi] \u26A0\uFE0F Fee estimation failed, using fallback");
617
+ return 1;
618
+ }
619
+ const feeRate = data.result?.feeRate || 1;
620
+ console.log(`[BitcoinApi] \u26FD Estimated fee rate: ${feeRate} sat/byte`);
621
+ return feeRate;
622
+ }
623
+ };
624
+
625
+ export {
626
+ BitcoinApi
627
+ };
@@ -0,0 +1,63 @@
1
+ "use client";
2
+ import {
3
+ WalletApi
4
+ } from "./chunk-JBRW4UTW.js";
5
+ import {
6
+ BitcoinApi
7
+ } from "./chunk-KFIUFVQH.js";
8
+ import {
9
+ SigningApi
10
+ } from "./chunk-4UGXLYKP.js";
11
+ import {
12
+ AuthApi
13
+ } from "./chunk-W7R3JGSC.js";
14
+ import {
15
+ SolanaApi
16
+ } from "./chunk-DMRM7XAS.js";
17
+ import {
18
+ TransactionApi
19
+ } from "./chunk-KD2OAMDA.js";
20
+
21
+ // src/wallets/walletConnectors/abcWallet/api/index.ts
22
+ var AbcWaasApiClient = class {
23
+ constructor(config) {
24
+ this.auth = new AuthApi(config);
25
+ this.wallet = new WalletApi(config);
26
+ this.transaction = new TransactionApi(config);
27
+ this.signing = new SigningApi(config);
28
+ this.solana = new SolanaApi(config);
29
+ this.bitcoin = new BitcoinApi(config);
30
+ }
31
+ /**
32
+ * Check if user is authenticated
33
+ */
34
+ isAuthenticated() {
35
+ return this.auth.isAuthenticated();
36
+ }
37
+ /**
38
+ * Check if access token is expired
39
+ */
40
+ isTokenExpired() {
41
+ return this.auth.isTokenExpired();
42
+ }
43
+ /**
44
+ * Get current access token
45
+ */
46
+ getAccessToken() {
47
+ return this.auth.getAccessToken();
48
+ }
49
+ /**
50
+ * Logout (clear tokens)
51
+ */
52
+ async logout() {
53
+ await this.auth.logout();
54
+ }
55
+ };
56
+ function createAbcWaasApiClient(config) {
57
+ return new AbcWaasApiClient(config);
58
+ }
59
+
60
+ export {
61
+ AbcWaasApiClient,
62
+ createAbcWaasApiClient
63
+ };