@tonappchain/sdk 0.7.0-rc9 → 0.7.1

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 (423) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +198 -191
  3. package/dist/artifacts/dev/index.d.ts +9 -0
  4. package/dist/artifacts/dev/index.js +52 -0
  5. package/dist/artifacts/dev/tac/addresses.d.ts +4 -0
  6. package/dist/artifacts/dev/tac/addresses.js +8 -0
  7. package/dist/artifacts/dev/tac/artifacts.d.ts +330 -0
  8. package/dist/artifacts/dev/tac/artifacts.js +26 -0
  9. package/dist/artifacts/dev/tac/endpoints.d.ts +2 -0
  10. package/dist/artifacts/dev/tac/endpoints.js +5 -0
  11. package/dist/artifacts/dev/tac/index.d.ts +6 -0
  12. package/dist/artifacts/dev/tac/index.js +43 -0
  13. package/dist/artifacts/dev/tac/internal/artifacts/@openzeppelin/contracts/token/ERC721/IERC721.sol/IERC721.json +296 -0
  14. package/dist/artifacts/dev/tac/internal/artifacts/contracts/core/Structs.sol/IStructsInterface.json +1087 -0
  15. package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/ICrossChainLayer.sol/ICrossChainLayer.json +114 -0
  16. package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/ISettings.sol/ISettings.json +194 -0
  17. package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/ITokenUtils.sol/ITokenUtils.json +164 -0
  18. package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/tokens/ICrossChainLayerERC20.sol/ICrossChainLayerERC20.json +278 -0
  19. package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/tokens/ICrossChainLayerERC721.sol/ICrossChainLayerERC721.json +380 -0
  20. package/dist/artifacts/dev/tac/internal/artifacts/contracts/interfaces/tokens/IERC20WithDecimals.sol/IERC20WithDecimals.json +207 -0
  21. package/dist/artifacts/dev/tac/internal/artifacts/contracts/smart-account/interfaces/ISAFactory.sol/ISAFactory.json +103 -0
  22. package/dist/artifacts/dev/tac/internal/artifacts/contracts/smart-account/interfaces/ITacSmartAccount.sol/ITacSmartAccount.json +181 -0
  23. package/dist/artifacts/dev/tac/internal/scripts/utils/encoding.d.ts +4 -0
  24. package/dist/artifacts/dev/tac/internal/scripts/utils/encoding.js +18 -0
  25. package/dist/artifacts/dev/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts +199 -0
  26. package/dist/artifacts/dev/tac/internal/typechain-types/common.d.ts +50 -0
  27. package/dist/artifacts/dev/tac/internal/typechain-types/common.js +2 -0
  28. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/core/Structs.sol/IStructsInterface.d.ts +356 -0
  29. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/core/Structs.sol/IStructsInterface.js +2 -0
  30. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.d.ts +75 -0
  31. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.js +2 -0
  32. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ISettings.d.ts +123 -0
  33. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ISettings.js +2 -0
  34. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.d.ts +99 -0
  35. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.js +2 -0
  36. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC20.d.ts +182 -0
  37. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC20.js +2 -0
  38. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC721.d.ts +244 -0
  39. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC721.js +2 -0
  40. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.d.ts +133 -0
  41. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.js +2 -0
  42. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.d.ts +77 -0
  43. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.js +2 -0
  44. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/smart-account/interfaces/ITacSmartAccount.d.ts +127 -0
  45. package/dist/artifacts/dev/tac/internal/typechain-types/contracts/smart-account/interfaces/ITacSmartAccount.js +2 -0
  46. package/dist/artifacts/dev/tac/multicall.d.ts +1 -0
  47. package/dist/artifacts/dev/tac/multicall.js +22 -0
  48. package/dist/artifacts/dev/tac/structs.d.ts +1 -0
  49. package/dist/artifacts/dev/tac/structs.js +2 -0
  50. package/dist/artifacts/dev/tac/utils.d.ts +1 -0
  51. package/dist/artifacts/dev/tac/utils.js +5 -0
  52. package/dist/artifacts/dev/tac/wrappers.d.ts +9 -0
  53. package/dist/artifacts/dev/tac/wrappers.js +2 -0
  54. package/dist/artifacts/dev/ton/addresses.d.ts +1 -0
  55. package/dist/artifacts/dev/ton/addresses.js +5 -0
  56. package/dist/artifacts/dev/ton/artifacts.d.ts +47 -0
  57. package/dist/artifacts/dev/ton/artifacts.js +26 -0
  58. package/dist/artifacts/dev/ton/endpoints.d.ts +3 -0
  59. package/dist/artifacts/dev/ton/endpoints.js +6 -0
  60. package/dist/artifacts/dev/ton/index.d.ts +3 -0
  61. package/dist/artifacts/dev/ton/index.js +40 -0
  62. package/dist/artifacts/dev/ton/internal/build/CrossChainLayer.compiled.json +1 -0
  63. package/dist/artifacts/dev/ton/internal/build/Executor.compiled.json +1 -0
  64. package/dist/artifacts/dev/ton/internal/build/JettonMinter.compiled.json +1 -0
  65. package/dist/artifacts/dev/ton/internal/build/JettonProxy.compiled.json +1 -0
  66. package/dist/artifacts/dev/ton/internal/build/JettonWallet.compiled.json +1 -0
  67. package/dist/artifacts/dev/ton/internal/build/NFTCollection.compiled.json +1 -0
  68. package/dist/artifacts/dev/ton/internal/build/NFTItem.compiled.json +1 -0
  69. package/dist/artifacts/dev/ton/internal/build/NFTProxy.compiled.json +1 -0
  70. package/dist/artifacts/dev/ton/internal/build/Settings.compiled.json +1 -0
  71. package/dist/artifacts/dev/ton/internal/wrappers/Constants.d.ts +56 -0
  72. package/dist/artifacts/dev/ton/internal/wrappers/Constants.js +62 -0
  73. package/dist/artifacts/dev/ton/internal/wrappers/CrossChainLayer.d.ts +164 -0
  74. package/dist/artifacts/dev/ton/internal/wrappers/CrossChainLayer.js +336 -0
  75. package/dist/artifacts/dev/ton/internal/wrappers/JettonMinter.d.ts +94 -0
  76. package/dist/artifacts/dev/ton/internal/wrappers/JettonMinter.js +202 -0
  77. package/dist/artifacts/dev/ton/internal/wrappers/JettonProxy.d.ts +80 -0
  78. package/dist/artifacts/dev/ton/internal/wrappers/JettonProxy.js +158 -0
  79. package/dist/{wrappers → artifacts/dev/ton/internal/wrappers}/JettonWallet.d.ts +52 -13
  80. package/dist/artifacts/dev/ton/internal/wrappers/JettonWallet.js +193 -0
  81. package/dist/artifacts/dev/ton/internal/wrappers/NFTCollection.d.ts +75 -0
  82. package/dist/artifacts/dev/ton/internal/wrappers/NFTCollection.js +151 -0
  83. package/dist/artifacts/dev/ton/internal/wrappers/NFTItem.d.ts +82 -0
  84. package/dist/artifacts/dev/ton/internal/wrappers/NFTItem.js +148 -0
  85. package/dist/artifacts/dev/ton/internal/wrappers/NFTProxy.d.ts +84 -0
  86. package/dist/artifacts/dev/ton/internal/wrappers/NFTProxy.js +157 -0
  87. package/dist/artifacts/dev/ton/internal/wrappers/Settings.d.ts +80 -0
  88. package/dist/artifacts/dev/ton/internal/wrappers/Settings.js +152 -0
  89. package/dist/artifacts/dev/ton/internal/wrappers/utils/GasUtils.d.ts +79 -0
  90. package/dist/artifacts/dev/ton/internal/wrappers/utils/GasUtils.js +291 -0
  91. package/dist/artifacts/dev/ton/internal/wrappers/utils/MerkleRoots.d.ts +7 -0
  92. package/dist/artifacts/dev/ton/internal/wrappers/utils/MerkleRoots.js +27 -0
  93. package/dist/artifacts/dev/ton/wrappers.d.ts +8 -0
  94. package/dist/artifacts/dev/ton/wrappers.js +27 -0
  95. package/dist/artifacts/index.d.ts +3 -0
  96. package/dist/artifacts/index.js +39 -0
  97. package/dist/artifacts/mainnet/index.d.ts +9 -0
  98. package/dist/artifacts/mainnet/index.js +52 -0
  99. package/dist/artifacts/mainnet/tac/addresses.d.ts +4 -0
  100. package/dist/artifacts/mainnet/tac/addresses.js +7 -0
  101. package/dist/artifacts/mainnet/tac/artifacts.d.ts +330 -0
  102. package/dist/artifacts/mainnet/tac/artifacts.js +26 -0
  103. package/dist/artifacts/mainnet/tac/endpoints.d.ts +2 -0
  104. package/dist/artifacts/mainnet/tac/endpoints.js +5 -0
  105. package/dist/artifacts/mainnet/tac/index.d.ts +6 -0
  106. package/dist/artifacts/mainnet/tac/index.js +43 -0
  107. package/dist/artifacts/mainnet/tac/internal/artifacts/@openzeppelin/contracts/token/ERC721/IERC721.sol/IERC721.json +296 -0
  108. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/core/Structs.sol/IStructsInterface.json +1087 -0
  109. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/ICrossChainLayer.sol/ICrossChainLayer.json +114 -0
  110. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/ISettings.sol/ISettings.json +194 -0
  111. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/ITokenUtils.sol/ITokenUtils.json +164 -0
  112. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/tokens/ICrossChainLayerERC20.sol/ICrossChainLayerERC20.json +278 -0
  113. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/tokens/ICrossChainLayerERC721.sol/ICrossChainLayerERC721.json +380 -0
  114. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/interfaces/tokens/IERC20WithDecimals.sol/IERC20WithDecimals.json +207 -0
  115. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/smart-account/interfaces/ISAFactory.sol/ISAFactory.json +103 -0
  116. package/dist/artifacts/mainnet/tac/internal/artifacts/contracts/smart-account/interfaces/ITacSmartAccount.sol/ITacSmartAccount.json +181 -0
  117. package/dist/artifacts/mainnet/tac/internal/scripts/utils/encoding.d.ts +4 -0
  118. package/dist/artifacts/mainnet/tac/internal/scripts/utils/encoding.js +18 -0
  119. package/dist/artifacts/mainnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts +199 -0
  120. package/dist/artifacts/mainnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.js +2 -0
  121. package/dist/artifacts/mainnet/tac/internal/typechain-types/common.d.ts +50 -0
  122. package/dist/artifacts/mainnet/tac/internal/typechain-types/common.js +2 -0
  123. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/core/Structs.sol/IStructsInterface.d.ts +356 -0
  124. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/core/Structs.sol/IStructsInterface.js +2 -0
  125. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.d.ts +75 -0
  126. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.js +2 -0
  127. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ISettings.d.ts +123 -0
  128. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ISettings.js +2 -0
  129. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.d.ts +99 -0
  130. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.js +2 -0
  131. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC20.d.ts +182 -0
  132. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC20.js +2 -0
  133. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC721.d.ts +244 -0
  134. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC721.js +2 -0
  135. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.d.ts +133 -0
  136. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.js +2 -0
  137. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.d.ts +77 -0
  138. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.js +2 -0
  139. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ITacSmartAccount.d.ts +127 -0
  140. package/dist/artifacts/mainnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ITacSmartAccount.js +2 -0
  141. package/dist/artifacts/mainnet/tac/multicall.d.ts +1 -0
  142. package/dist/artifacts/mainnet/tac/multicall.js +22 -0
  143. package/dist/artifacts/mainnet/tac/structs.d.ts +1 -0
  144. package/dist/artifacts/mainnet/tac/structs.js +2 -0
  145. package/dist/artifacts/mainnet/tac/utils.d.ts +1 -0
  146. package/dist/artifacts/mainnet/tac/utils.js +5 -0
  147. package/dist/artifacts/mainnet/tac/wrappers.d.ts +9 -0
  148. package/dist/artifacts/mainnet/tac/wrappers.js +2 -0
  149. package/dist/artifacts/mainnet/ton/addresses.d.ts +1 -0
  150. package/dist/artifacts/mainnet/ton/addresses.js +4 -0
  151. package/dist/artifacts/mainnet/ton/artifacts.d.ts +47 -0
  152. package/dist/artifacts/mainnet/ton/artifacts.js +26 -0
  153. package/dist/artifacts/mainnet/ton/endpoints.d.ts +3 -0
  154. package/dist/artifacts/mainnet/ton/endpoints.js +6 -0
  155. package/dist/artifacts/mainnet/ton/index.d.ts +3 -0
  156. package/dist/artifacts/mainnet/ton/index.js +40 -0
  157. package/dist/artifacts/mainnet/ton/internal/build/CrossChainLayer.compiled.json +1 -0
  158. package/dist/artifacts/mainnet/ton/internal/build/Executor.compiled.json +1 -0
  159. package/dist/artifacts/mainnet/ton/internal/build/JettonMinter.compiled.json +1 -0
  160. package/dist/artifacts/mainnet/ton/internal/build/JettonProxy.compiled.json +1 -0
  161. package/dist/artifacts/mainnet/ton/internal/build/JettonWallet.compiled.json +1 -0
  162. package/dist/artifacts/mainnet/ton/internal/build/NFTCollection.compiled.json +1 -0
  163. package/dist/artifacts/mainnet/ton/internal/build/NFTItem.compiled.json +1 -0
  164. package/dist/artifacts/mainnet/ton/internal/build/NFTProxy.compiled.json +1 -0
  165. package/dist/artifacts/mainnet/ton/internal/build/Settings.compiled.json +1 -0
  166. package/dist/artifacts/mainnet/ton/internal/wrappers/Constants.d.ts +56 -0
  167. package/dist/artifacts/mainnet/ton/internal/wrappers/Constants.js +62 -0
  168. package/dist/artifacts/mainnet/ton/internal/wrappers/CrossChainLayer.d.ts +164 -0
  169. package/dist/artifacts/mainnet/ton/internal/wrappers/CrossChainLayer.js +336 -0
  170. package/dist/artifacts/mainnet/ton/internal/wrappers/JettonMinter.d.ts +94 -0
  171. package/dist/artifacts/mainnet/ton/internal/wrappers/JettonMinter.js +202 -0
  172. package/dist/artifacts/mainnet/ton/internal/wrappers/JettonProxy.d.ts +80 -0
  173. package/dist/artifacts/mainnet/ton/internal/wrappers/JettonProxy.js +158 -0
  174. package/dist/artifacts/mainnet/ton/internal/wrappers/JettonWallet.d.ts +95 -0
  175. package/dist/artifacts/mainnet/ton/internal/wrappers/JettonWallet.js +193 -0
  176. package/dist/artifacts/mainnet/ton/internal/wrappers/NFTCollection.d.ts +75 -0
  177. package/dist/artifacts/mainnet/ton/internal/wrappers/NFTCollection.js +151 -0
  178. package/dist/artifacts/mainnet/ton/internal/wrappers/NFTItem.d.ts +82 -0
  179. package/dist/artifacts/mainnet/ton/internal/wrappers/NFTItem.js +148 -0
  180. package/dist/artifacts/mainnet/ton/internal/wrappers/NFTProxy.d.ts +84 -0
  181. package/dist/artifacts/mainnet/ton/internal/wrappers/NFTProxy.js +157 -0
  182. package/dist/artifacts/mainnet/ton/internal/wrappers/Settings.d.ts +80 -0
  183. package/dist/artifacts/mainnet/ton/internal/wrappers/Settings.js +152 -0
  184. package/dist/artifacts/mainnet/ton/internal/wrappers/utils/GasUtils.d.ts +79 -0
  185. package/dist/artifacts/mainnet/ton/internal/wrappers/utils/GasUtils.js +291 -0
  186. package/dist/artifacts/mainnet/ton/internal/wrappers/utils/MerkleRoots.d.ts +7 -0
  187. package/dist/artifacts/mainnet/ton/internal/wrappers/utils/MerkleRoots.js +27 -0
  188. package/dist/artifacts/mainnet/ton/wrappers.d.ts +8 -0
  189. package/dist/artifacts/mainnet/ton/wrappers.js +27 -0
  190. package/dist/artifacts/tacTypes.d.ts +13 -0
  191. package/dist/artifacts/tacTypes.js +2 -0
  192. package/dist/artifacts/testnet/index.d.ts +9 -0
  193. package/dist/artifacts/testnet/index.js +52 -0
  194. package/dist/artifacts/testnet/tac/addresses.d.ts +4 -0
  195. package/dist/artifacts/testnet/tac/addresses.js +7 -0
  196. package/dist/artifacts/testnet/tac/artifacts.d.ts +330 -0
  197. package/dist/artifacts/testnet/tac/artifacts.js +26 -0
  198. package/dist/artifacts/testnet/tac/endpoints.d.ts +2 -0
  199. package/dist/artifacts/testnet/tac/endpoints.js +5 -0
  200. package/dist/artifacts/testnet/tac/index.d.ts +6 -0
  201. package/dist/artifacts/testnet/tac/index.js +43 -0
  202. package/dist/artifacts/testnet/tac/internal/artifacts/@openzeppelin/contracts/token/ERC721/IERC721.sol/IERC721.json +296 -0
  203. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/core/Structs.sol/IStructsInterface.json +1087 -0
  204. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/ICrossChainLayer.sol/ICrossChainLayer.json +114 -0
  205. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/ISettings.sol/ISettings.json +194 -0
  206. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/ITokenUtils.sol/ITokenUtils.json +164 -0
  207. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/tokens/ICrossChainLayerERC20.sol/ICrossChainLayerERC20.json +278 -0
  208. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/tokens/ICrossChainLayerERC721.sol/ICrossChainLayerERC721.json +380 -0
  209. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/interfaces/tokens/IERC20WithDecimals.sol/IERC20WithDecimals.json +207 -0
  210. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/smart-account/interfaces/ISAFactory.sol/ISAFactory.json +103 -0
  211. package/dist/artifacts/testnet/tac/internal/artifacts/contracts/smart-account/interfaces/ITacSmartAccount.sol/ITacSmartAccount.json +181 -0
  212. package/dist/artifacts/testnet/tac/internal/scripts/utils/encoding.d.ts +4 -0
  213. package/dist/artifacts/testnet/tac/internal/scripts/utils/encoding.js +18 -0
  214. package/dist/artifacts/testnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.d.ts +199 -0
  215. package/dist/artifacts/testnet/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.js +2 -0
  216. package/dist/artifacts/testnet/tac/internal/typechain-types/common.d.ts +50 -0
  217. package/dist/artifacts/testnet/tac/internal/typechain-types/common.js +2 -0
  218. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/core/Structs.sol/IStructsInterface.d.ts +356 -0
  219. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/core/Structs.sol/IStructsInterface.js +2 -0
  220. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.d.ts +75 -0
  221. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ICrossChainLayer.js +2 -0
  222. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ISettings.d.ts +123 -0
  223. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ISettings.js +2 -0
  224. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.d.ts +99 -0
  225. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/ITokenUtils.js +2 -0
  226. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC20.d.ts +182 -0
  227. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC20.js +2 -0
  228. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC721.d.ts +244 -0
  229. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/tokens/ICrossChainLayerERC721.js +2 -0
  230. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.d.ts +133 -0
  231. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/interfaces/tokens/IERC20WithDecimals.js +2 -0
  232. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.d.ts +77 -0
  233. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ISAFactory.js +2 -0
  234. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ITacSmartAccount.d.ts +127 -0
  235. package/dist/artifacts/testnet/tac/internal/typechain-types/contracts/smart-account/interfaces/ITacSmartAccount.js +2 -0
  236. package/dist/artifacts/testnet/tac/multicall.d.ts +1 -0
  237. package/dist/artifacts/testnet/tac/multicall.js +22 -0
  238. package/dist/artifacts/testnet/tac/structs.d.ts +1 -0
  239. package/dist/artifacts/testnet/tac/structs.js +2 -0
  240. package/dist/artifacts/testnet/tac/utils.d.ts +1 -0
  241. package/dist/artifacts/testnet/tac/utils.js +5 -0
  242. package/dist/artifacts/testnet/tac/wrappers.d.ts +9 -0
  243. package/dist/artifacts/testnet/tac/wrappers.js +2 -0
  244. package/dist/artifacts/testnet/ton/addresses.d.ts +1 -0
  245. package/dist/artifacts/testnet/ton/addresses.js +4 -0
  246. package/dist/artifacts/testnet/ton/artifacts.d.ts +47 -0
  247. package/dist/artifacts/testnet/ton/artifacts.js +26 -0
  248. package/dist/artifacts/testnet/ton/endpoints.d.ts +3 -0
  249. package/dist/artifacts/testnet/ton/endpoints.js +6 -0
  250. package/dist/artifacts/testnet/ton/index.d.ts +3 -0
  251. package/dist/artifacts/testnet/ton/index.js +40 -0
  252. package/dist/artifacts/testnet/ton/internal/build/CrossChainLayer.compiled.json +1 -0
  253. package/dist/artifacts/testnet/ton/internal/build/Executor.compiled.json +1 -0
  254. package/dist/artifacts/testnet/ton/internal/build/JettonMinter.compiled.json +1 -0
  255. package/dist/artifacts/testnet/ton/internal/build/JettonProxy.compiled.json +1 -0
  256. package/dist/artifacts/testnet/ton/internal/build/JettonWallet.compiled.json +1 -0
  257. package/dist/artifacts/testnet/ton/internal/build/NFTCollection.compiled.json +1 -0
  258. package/dist/artifacts/testnet/ton/internal/build/NFTItem.compiled.json +1 -0
  259. package/dist/artifacts/testnet/ton/internal/build/NFTProxy.compiled.json +1 -0
  260. package/dist/artifacts/testnet/ton/internal/build/Settings.compiled.json +1 -0
  261. package/dist/artifacts/testnet/ton/internal/wrappers/Constants.d.ts +56 -0
  262. package/dist/artifacts/testnet/ton/internal/wrappers/Constants.js +62 -0
  263. package/dist/artifacts/testnet/ton/internal/wrappers/CrossChainLayer.d.ts +164 -0
  264. package/dist/artifacts/testnet/ton/internal/wrappers/CrossChainLayer.js +336 -0
  265. package/dist/artifacts/testnet/ton/internal/wrappers/JettonMinter.d.ts +94 -0
  266. package/dist/artifacts/testnet/ton/internal/wrappers/JettonMinter.js +202 -0
  267. package/dist/artifacts/testnet/ton/internal/wrappers/JettonProxy.d.ts +80 -0
  268. package/dist/artifacts/testnet/ton/internal/wrappers/JettonProxy.js +158 -0
  269. package/dist/artifacts/testnet/ton/internal/wrappers/JettonWallet.d.ts +95 -0
  270. package/dist/artifacts/testnet/ton/internal/wrappers/JettonWallet.js +193 -0
  271. package/dist/artifacts/testnet/ton/internal/wrappers/NFTCollection.d.ts +75 -0
  272. package/dist/artifacts/testnet/ton/internal/wrappers/NFTCollection.js +151 -0
  273. package/dist/artifacts/testnet/ton/internal/wrappers/NFTItem.d.ts +82 -0
  274. package/dist/artifacts/testnet/ton/internal/wrappers/NFTItem.js +148 -0
  275. package/dist/artifacts/testnet/ton/internal/wrappers/NFTProxy.d.ts +84 -0
  276. package/dist/artifacts/testnet/ton/internal/wrappers/NFTProxy.js +157 -0
  277. package/dist/artifacts/testnet/ton/internal/wrappers/Settings.d.ts +80 -0
  278. package/dist/artifacts/testnet/ton/internal/wrappers/Settings.js +152 -0
  279. package/dist/artifacts/testnet/ton/internal/wrappers/utils/GasUtils.d.ts +79 -0
  280. package/dist/artifacts/testnet/ton/internal/wrappers/utils/GasUtils.js +291 -0
  281. package/dist/artifacts/testnet/ton/internal/wrappers/utils/MerkleRoots.d.ts +7 -0
  282. package/dist/artifacts/testnet/ton/internal/wrappers/utils/MerkleRoots.js +27 -0
  283. package/dist/artifacts/testnet/ton/wrappers.d.ts +8 -0
  284. package/dist/artifacts/testnet/ton/wrappers.js +27 -0
  285. package/dist/artifacts/tonTypes.d.ts +20 -0
  286. package/dist/artifacts/tonTypes.js +2 -0
  287. package/dist/{adapters → src/adapters}/contractOpener.d.ts +2 -1
  288. package/dist/{adapters → src/adapters}/contractOpener.js +39 -6
  289. package/dist/src/adapters/index.d.ts +2 -0
  290. package/dist/src/adapters/index.js +18 -0
  291. package/dist/{adapters → src/adapters}/retryableContractOpener.d.ts +6 -3
  292. package/dist/{adapters → src/adapters}/retryableContractOpener.js +10 -11
  293. package/dist/src/agnosticSdk/AbiHandler.d.ts +27 -0
  294. package/dist/src/agnosticSdk/AbiHandler.js +137 -0
  295. package/dist/src/agnosticSdk/AgnosticSdk.d.ts +201 -0
  296. package/dist/src/agnosticSdk/AgnosticSdk.js +201 -0
  297. package/dist/src/agnosticSdk/AgnosticStructs.d.ts +108 -0
  298. package/dist/src/agnosticSdk/AgnosticStructs.js +23 -0
  299. package/dist/src/agnosticSdk/DebugHelpers.d.ts +88 -0
  300. package/dist/src/agnosticSdk/DebugHelpers.js +274 -0
  301. package/dist/src/agnosticSdk/HooksHandler.d.ts +43 -0
  302. package/dist/src/agnosticSdk/HooksHandler.js +102 -0
  303. package/dist/src/agnosticSdk/ReplacementHelper.d.ts +95 -0
  304. package/dist/src/agnosticSdk/ReplacementHelper.js +235 -0
  305. package/dist/{assets → src/assets}/AssetCache.d.ts +1 -1
  306. package/dist/{assets → src/assets}/AssetFactory.d.ts +2 -2
  307. package/dist/{assets → src/assets}/AssetFactory.js +4 -3
  308. package/dist/{assets → src/assets}/FT.d.ts +14 -17
  309. package/dist/{assets → src/assets}/FT.js +94 -58
  310. package/dist/{assets → src/assets}/NFT.d.ts +15 -16
  311. package/dist/{assets → src/assets}/NFT.js +58 -32
  312. package/dist/{assets → src/assets}/TON.d.ts +8 -13
  313. package/dist/{assets → src/assets}/TON.js +27 -21
  314. package/dist/src/errors/index.d.ts +2 -0
  315. package/dist/{errors → src/errors}/index.js +8 -2
  316. package/dist/{errors → src/errors}/instances.d.ts +11 -1
  317. package/dist/src/errors/instances.js +58 -0
  318. package/dist/src/index.d.ts +21 -0
  319. package/dist/{index.js → src/index.js} +38 -18
  320. package/dist/src/interfaces/Asset.d.ts +78 -0
  321. package/dist/src/interfaces/Asset.js +2 -0
  322. package/dist/src/interfaces/ContractOpener.d.ts +21 -0
  323. package/dist/src/interfaces/ContractOpener.js +2 -0
  324. package/dist/src/interfaces/IConfiguration.d.ts +35 -0
  325. package/dist/src/interfaces/IConfiguration.js +2 -0
  326. package/dist/src/interfaces/IHttpClient.d.ts +16 -0
  327. package/dist/src/interfaces/IHttpClient.js +2 -0
  328. package/dist/src/interfaces/ILiteSequencerClient.d.ts +43 -0
  329. package/dist/src/interfaces/ILiteSequencerClient.js +2 -0
  330. package/dist/src/interfaces/ILiteSequencerClientFactory.d.ts +9 -0
  331. package/dist/src/interfaces/ILiteSequencerClientFactory.js +2 -0
  332. package/dist/src/interfaces/ILogger.d.ts +10 -0
  333. package/dist/src/interfaces/ILogger.js +2 -0
  334. package/dist/src/interfaces/IOperationTracker.d.ts +81 -0
  335. package/dist/src/interfaces/IOperationTracker.js +2 -0
  336. package/dist/src/interfaces/ISimulator.d.ts +18 -0
  337. package/dist/src/interfaces/ISimulator.js +2 -0
  338. package/dist/src/interfaces/ITACTransactionManager.d.ts +15 -0
  339. package/dist/src/interfaces/ITACTransactionManager.js +2 -0
  340. package/dist/src/interfaces/ITONTransactionManager.d.ts +20 -0
  341. package/dist/src/interfaces/ITONTransactionManager.js +2 -0
  342. package/dist/src/interfaces/ITacSDK.d.ts +185 -0
  343. package/dist/src/interfaces/ITacSDK.js +2 -0
  344. package/dist/src/interfaces/SenderAbstraction.d.ts +35 -0
  345. package/dist/src/interfaces/SenderAbstraction.js +2 -0
  346. package/dist/src/interfaces/WalletInstanse.d.ts +20 -0
  347. package/dist/src/interfaces/WalletInstanse.js +2 -0
  348. package/dist/src/interfaces/index.d.ts +14 -0
  349. package/dist/src/interfaces/index.js +30 -0
  350. package/dist/src/sdk/AxiosHttpClient.d.ts +12 -0
  351. package/dist/src/sdk/AxiosHttpClient.js +23 -0
  352. package/dist/{sdk → src/sdk}/Configuration.d.ts +6 -5
  353. package/dist/src/sdk/Configuration.js +195 -0
  354. package/dist/{sdk → src/sdk}/Consts.d.ts +3 -0
  355. package/dist/{sdk → src/sdk}/Consts.js +4 -1
  356. package/dist/src/sdk/LiteSequencerClient.d.ts +18 -0
  357. package/dist/{sdk → src/sdk}/LiteSequencerClient.js +81 -25
  358. package/dist/{sdk → src/sdk}/Logger.d.ts +5 -5
  359. package/dist/{sdk → src/sdk}/Logger.js +12 -4
  360. package/dist/{sdk → src/sdk}/OperationTracker.d.ts +5 -13
  361. package/dist/{sdk → src/sdk}/OperationTracker.js +112 -16
  362. package/dist/src/sdk/Simulator.d.ts +11 -0
  363. package/dist/src/sdk/Simulator.js +70 -0
  364. package/dist/{sdk → src/sdk}/StartTracking.d.ts +1 -1
  365. package/dist/src/sdk/TACTransactionManager.d.ts +10 -0
  366. package/dist/src/sdk/TACTransactionManager.js +101 -0
  367. package/dist/src/sdk/TONTransactionManager.d.ts +17 -0
  368. package/dist/src/sdk/TONTransactionManager.js +220 -0
  369. package/dist/src/sdk/TacSdk.d.ts +44 -0
  370. package/dist/src/sdk/TacSdk.js +181 -0
  371. package/dist/{sdk → src/sdk}/TxFinalizer.d.ts +3 -2
  372. package/dist/{sdk → src/sdk}/TxFinalizer.js +13 -8
  373. package/dist/{sdk → src/sdk}/Utils.d.ts +14 -7
  374. package/dist/{sdk → src/sdk}/Utils.js +127 -34
  375. package/dist/{sdk → src/sdk}/Validator.d.ts +2 -2
  376. package/dist/{sdk → src/sdk}/Validator.js +6 -6
  377. package/dist/{sender → src/sender}/BatchSender.d.ts +1 -2
  378. package/dist/{sender → src/sender}/RawSender.d.ts +3 -3
  379. package/dist/{sender → src/sender}/SenderFactory.d.ts +1 -1
  380. package/dist/{sender → src/sender}/SenderFactory.js +1 -1
  381. package/dist/{sender → src/sender}/TonConnectSender.d.ts +2 -2
  382. package/dist/{sender → src/sender}/TonConnectSender.js +3 -3
  383. package/dist/{sender → src/sender}/index.d.ts +1 -1
  384. package/dist/{sender → src/sender}/index.js +1 -1
  385. package/dist/{structs → src/structs}/InternalStruct.d.ts +30 -6
  386. package/dist/{structs → src/structs}/Struct.d.ts +109 -62
  387. package/dist/{structs → src/structs}/Struct.js +7 -1
  388. package/dist/{wrappers → src/wrappers}/ContentUtils.js +0 -1
  389. package/dist/{wrappers → src/wrappers}/HighloadWalletV3.d.ts +2 -2
  390. package/package.json +118 -67
  391. package/dist/errors/index.d.ts +0 -2
  392. package/dist/errors/instances.js +0 -47
  393. package/dist/index.d.ts +0 -19
  394. package/dist/sdk/Configuration.js +0 -90
  395. package/dist/sdk/LiteSequencerClient.d.ts +0 -13
  396. package/dist/sdk/Simulator.d.ts +0 -23
  397. package/dist/sdk/Simulator.js +0 -169
  398. package/dist/sdk/TacSdk.d.ts +0 -32
  399. package/dist/sdk/TacSdk.js +0 -154
  400. package/dist/sdk/TransactionManager.d.ts +0 -22
  401. package/dist/sdk/TransactionManager.js +0 -269
  402. package/dist/sender/SenderAbstraction.d.ts +0 -22
  403. package/dist/sender/SenderAbstraction.js +0 -5
  404. package/dist/structs/Services.d.ts +0 -66
  405. package/dist/wrappers/JettonMaster.d.ts +0 -24
  406. package/dist/wrappers/JettonMaster.js +0 -53
  407. package/dist/wrappers/JettonWallet.js +0 -124
  408. package/dist/wrappers/Settings.d.ts +0 -10
  409. package/dist/wrappers/Settings.js +0 -38
  410. /package/dist/{structs/Services.js → artifacts/dev/tac/internal/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.js} +0 -0
  411. /package/dist/{assets → src/assets}/AssetCache.js +0 -0
  412. /package/dist/{assets → src/assets}/index.d.ts +0 -0
  413. /package/dist/{assets → src/assets}/index.js +0 -0
  414. /package/dist/{errors → src/errors}/errors.d.ts +0 -0
  415. /package/dist/{errors → src/errors}/errors.js +0 -0
  416. /package/dist/{sdk → src/sdk}/StartTracking.js +0 -0
  417. /package/dist/{sender → src/sender}/BatchSender.js +0 -0
  418. /package/dist/{sender → src/sender}/RawSender.js +0 -0
  419. /package/dist/{structs → src/structs}/InternalStruct.js +0 -0
  420. /package/dist/{wrappers → src/wrappers}/ContentUtils.d.ts +0 -0
  421. /package/dist/{wrappers → src/wrappers}/HighloadQueryId.d.ts +0 -0
  422. /package/dist/{wrappers → src/wrappers}/HighloadQueryId.js +0 -0
  423. /package/dist/{wrappers → src/wrappers}/HighloadWalletV3.js +0 -0
@@ -10,9 +10,19 @@ exports.generateTransactionLinker = generateTransactionLinker;
10
10
  exports.calculateEVMTokenAddress = calculateEVMTokenAddress;
11
11
  exports.waitUntilSuccess = waitUntilSuccess;
12
12
  exports.formatObjectForLogging = formatObjectForLogging;
13
+ exports.getBouncedAddress = getBouncedAddress;
13
14
  exports.aggregateTokens = aggregateTokens;
15
+ exports.sha256toBigInt = sha256toBigInt;
16
+ exports.mapAssetsToTonAssets = mapAssetsToTonAssets;
17
+ exports.normalizeAsset = normalizeAsset;
18
+ exports.normalizeAssets = normalizeAssets;
19
+ exports.getAddressString = getAddressString;
20
+ exports.getNumber = getNumber;
21
+ exports.getString = getString;
14
22
  const ton_1 = require("@ton/ton");
15
23
  const ethers_1 = require("ethers");
24
+ const ton_crypto_1 = require("ton-crypto");
25
+ const assets_1 = require("../assets");
16
26
  const errors_1 = require("../errors");
17
27
  const Struct_1 = require("../structs/Struct");
18
28
  const Consts_1 = require("./Consts");
@@ -131,12 +141,14 @@ const generateFeeData = (feeParams) => {
131
141
  }
132
142
  };
133
143
  exports.generateFeeData = generateFeeData;
134
- async function waitUntilSuccess(options = {}, operation, ...args) {
144
+ async function waitUntilSuccess(options = {}, operation, operationDescription, ...args) {
135
145
  const timeout = options.timeout ?? 300000;
136
146
  const maxAttempts = options.maxAttempts ?? 30;
137
147
  const delay = options.delay ?? 10000;
138
148
  const successCheck = options.successCheck;
139
- options.logger?.debug(`Starting wait for success with timeout=${timeout}ms, maxAttempts=${maxAttempts}, delay=${delay}ms`);
149
+ const context = options.context;
150
+ const contextPrefix = operationDescription ? `[${operationDescription}] ` : '';
151
+ options.logger?.debug(`${contextPrefix}Starting wait for success with timeout=${timeout}ms, maxAttempts=${maxAttempts}, delay=${delay}ms`);
140
152
  const startTime = Date.now();
141
153
  let attempt = 1;
142
154
  while (true) {
@@ -144,27 +156,36 @@ async function waitUntilSuccess(options = {}, operation, ...args) {
144
156
  const elapsedTime = currentTime - startTime;
145
157
  try {
146
158
  const result = await operation(...args);
147
- if (!result) {
159
+ if (result === undefined || result === null) {
148
160
  throw new Error(`Empty result`);
149
161
  }
150
- options.logger?.debug(`Result: ${formatObjectForLogging(result)}`);
151
- if (successCheck && !successCheck(result)) {
162
+ options.logger?.debug(`${contextPrefix}Result: ${formatObjectForLogging(result)}`);
163
+ if (successCheck && !successCheck(result, context)) {
152
164
  throw new Error(`Result is not successful`);
153
165
  }
154
- options.logger?.debug(`Attempt ${attempt} successful`);
166
+ options.logger?.debug(`${contextPrefix}Attempt ${attempt} successful`);
167
+ // Execute custom onSuccess callback if provided
168
+ if (options.onSuccess) {
169
+ try {
170
+ await options.onSuccess(result, context);
171
+ }
172
+ catch (callbackError) {
173
+ options.logger?.warn(`${contextPrefix}onSuccess callback error: ${callbackError}`);
174
+ }
175
+ }
155
176
  return result;
156
177
  }
157
178
  catch (error) {
158
179
  if (elapsedTime >= timeout) {
159
- options.logger?.debug(`Timeout after ${elapsedTime}ms`);
180
+ options.logger?.debug(`${contextPrefix}Timeout after ${elapsedTime}ms`);
160
181
  throw error;
161
182
  }
162
183
  if (attempt >= maxAttempts) {
163
- options.logger?.debug(`Max attempts (${maxAttempts}) reached`);
184
+ options.logger?.debug(`${contextPrefix}Max attempts (${maxAttempts}) reached`);
164
185
  throw error;
165
186
  }
166
- options.logger?.debug(`Error on attempt ${attempt}: ${error}`);
167
- options.logger?.debug(`Waiting ${delay}ms before next attempt`);
187
+ options.logger?.debug(`${contextPrefix}Error on attempt ${attempt}: ${error}`);
188
+ options.logger?.debug(`${contextPrefix}Waiting ${delay}ms before next attempt`);
168
189
  await (0, exports.sleep)(delay);
169
190
  attempt++;
170
191
  }
@@ -173,36 +194,108 @@ async function waitUntilSuccess(options = {}, operation, ...args) {
173
194
  function formatObjectForLogging(obj) {
174
195
  return JSON.stringify(obj, (key, value) => (typeof value === 'bigint' ? value.toString() : value));
175
196
  }
176
- async function aggregateTokens(assets) {
177
- const uniqueAssetsMap = new Map();
197
+ function getBouncedAddress(tvmAddress) {
198
+ return ton_1.Address.parse(tvmAddress).toString({
199
+ bounceable: true,
200
+ });
201
+ }
202
+ function aggregateTokens(assets) {
203
+ const jettonsMap = new Map();
204
+ const nftsMap = new Map();
178
205
  let ton;
179
- for await (const asset of assets ?? []) {
180
- if (asset.type !== Struct_1.AssetType.FT)
181
- continue;
182
- if (!asset.address) {
183
- ton = ton ? await ton.addAmount({ rawAmount: asset.rawAmount }) : asset.clone;
184
- continue;
206
+ for (const asset of assets ?? []) {
207
+ if (asset.rawAmount === 0n && asset.type === Struct_1.AssetType.FT) {
208
+ throw (0, errors_1.zeroRawAmountError)(asset.address || 'NATIVE TON');
185
209
  }
186
- let jetton = uniqueAssetsMap.get(asset.address);
187
- if (!jetton) {
188
- jetton = asset.clone;
210
+ if (asset.type === Struct_1.AssetType.FT) {
211
+ if (!asset.address) {
212
+ ton = ton ? ton.addRawAmount(asset.rawAmount) : asset.clone;
213
+ }
214
+ else {
215
+ const existing = jettonsMap.get(asset.address);
216
+ jettonsMap.set(asset.address, (existing ? existing.addRawAmount(asset.rawAmount) : asset.clone));
217
+ }
189
218
  }
190
- else {
191
- jetton = await jetton.addAmount({ rawAmount: asset.rawAmount });
219
+ else if (asset.type === Struct_1.AssetType.NFT) {
220
+ nftsMap.set(asset.address, asset.clone);
192
221
  }
193
- uniqueAssetsMap.set(asset.address, jetton);
194
- }
195
- const jettons = Array.from(uniqueAssetsMap.values());
196
- uniqueAssetsMap.clear();
197
- for await (const asset of assets ?? []) {
198
- if (asset.type !== Struct_1.AssetType.NFT)
199
- continue;
200
- uniqueAssetsMap.set(asset.address, asset.clone);
201
222
  }
202
- const nfts = Array.from(uniqueAssetsMap.values());
203
223
  return {
204
- jettons,
205
- nfts,
224
+ jettons: Array.from(jettonsMap.values()),
225
+ nfts: Array.from(nftsMap.values()),
206
226
  ton,
207
227
  };
208
228
  }
229
+ function sha256toBigInt(ContractName) {
230
+ const hash = (0, ton_crypto_1.sha256_sync)(ContractName);
231
+ return BigInt('0x' + hash.toString('hex'));
232
+ }
233
+ function mapAssetsToTonAssets(assets) {
234
+ const { jettons, nfts, ton } = aggregateTokens(assets);
235
+ const result = [...jettons, ...nfts];
236
+ if (ton)
237
+ result.push(ton);
238
+ return result.map((asset) => ({
239
+ amount: asset.rawAmount.toString(),
240
+ tokenAddress: asset.address || '',
241
+ assetType: asset.type,
242
+ }));
243
+ }
244
+ async function normalizeAsset(config, input) {
245
+ if (typeof input.generatePayload === 'function') {
246
+ return input;
247
+ }
248
+ const address = 'address' in input && input.address ? input.address : '';
249
+ if ('itemIndex' in input) {
250
+ const args = {
251
+ address,
252
+ tokenType: Struct_1.AssetType.NFT,
253
+ addressType: Struct_1.NFTAddressType.COLLECTION,
254
+ index: BigInt(input.itemIndex),
255
+ };
256
+ return await assets_1.AssetFactory.from(config, args);
257
+ }
258
+ try {
259
+ const ftArgs = {
260
+ address,
261
+ tokenType: Struct_1.AssetType.FT,
262
+ };
263
+ const asset = await assets_1.AssetFactory.from(config, ftArgs);
264
+ const rawAmount = 'rawAmount' in input ? input.rawAmount : undefined;
265
+ const amount = 'amount' in input ? input.amount : 0;
266
+ if (!rawAmount && !amount && asset.type === Struct_1.AssetType.FT) {
267
+ throw (0, errors_1.zeroRawAmountError)(asset.address || 'NATIVE TON');
268
+ }
269
+ return rawAmount ? asset.withRawAmount(rawAmount) : asset.withAmount(amount);
270
+ }
271
+ catch (e) {
272
+ if (e instanceof errors_1.TokenError && e.errorCode === (0, errors_1.zeroRawAmountError)('').errorCode) {
273
+ throw e;
274
+ }
275
+ console.warn('Failed to normalize FT asset', e);
276
+ }
277
+ const itemArgs = {
278
+ address,
279
+ tokenType: Struct_1.AssetType.NFT,
280
+ addressType: Struct_1.NFTAddressType.ITEM,
281
+ };
282
+ return await assets_1.AssetFactory.from(config, itemArgs);
283
+ }
284
+ async function normalizeAssets(config, assets) {
285
+ if (!assets || assets.length === 0)
286
+ return [];
287
+ const normalized = [];
288
+ for (const a of assets) {
289
+ normalized.push(await normalizeAsset(config, a));
290
+ }
291
+ return normalized;
292
+ }
293
+ function getAddressString(cell) {
294
+ return cell?.beginParse().loadAddress().toString({ bounceable: true, testOnly: false }) ?? '';
295
+ }
296
+ function getNumber(len, cell) {
297
+ return cell?.beginParse().loadUint(len) ?? 0;
298
+ }
299
+ function getString(cell) {
300
+ return cell?.beginParse().loadStringTail() ?? '';
301
+ }
@@ -1,6 +1,6 @@
1
- import { EvmProxyMsg, TACSimulationRequest } from '../structs/Struct';
1
+ import { EvmProxyMsg, TACSimulationParams } from '../structs/Struct';
2
2
  export declare class Validator {
3
- static validateTACSimulationRequest(req: TACSimulationRequest): void;
3
+ static validateTACSimulationParams(req: TACSimulationParams): void;
4
4
  static validateEVMProxyMsg(evmProxyMsg: EvmProxyMsg): void;
5
5
  static validateTVMAddresses(addresses?: string[]): void;
6
6
  static validateEVMAddresses(addresses?: string[]): void;
@@ -3,12 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Validator = void 0;
4
4
  const ton_1 = require("@ton/ton");
5
5
  const ethers_1 = require("ethers");
6
- const instances_1 = require("../errors/instances");
6
+ const errors_1 = require("../errors");
7
7
  class Validator {
8
- static validateTACSimulationRequest(req) {
8
+ static validateTACSimulationParams(req) {
9
9
  this.validateEVMAddress(req.tacCallParams.target);
10
- req.evmValidExecutors.forEach(this.validateEVMAddress);
11
- req.tvmValidExecutors.forEach(this.validateTVMAddress);
10
+ req.evmValidExecutors?.forEach(this.validateEVMAddress);
11
+ req.tvmValidExecutors?.forEach(this.validateTVMAddress);
12
12
  req.tonAssets.forEach((asset) => {
13
13
  // if empty then it's native TON
14
14
  if (asset.tokenAddress !== '') {
@@ -31,12 +31,12 @@ class Validator {
31
31
  ton_1.Address.parse(address); // will throw on error address
32
32
  }
33
33
  catch {
34
- throw (0, instances_1.tvmAddressError)(address);
34
+ throw (0, errors_1.tvmAddressError)(address);
35
35
  }
36
36
  }
37
37
  static validateEVMAddress(address) {
38
38
  if (!address.startsWith('0x') || !(0, ethers_1.isAddress)(address)) {
39
- throw (0, instances_1.evmAddressError)(address);
39
+ throw (0, errors_1.evmAddressError)(address);
40
40
  }
41
41
  }
42
42
  }
@@ -1,8 +1,7 @@
1
+ import type { Asset, ContractOpener, SenderAbstraction } from '../interfaces';
1
2
  import type { SendResult, ShardTransaction } from '../structs/InternalStruct';
2
- import type { Asset, ContractOpener } from '../structs/Struct';
3
3
  import { Network } from '../structs/Struct';
4
4
  import { HighloadWalletV3 } from '../wrappers/HighloadWalletV3';
5
- import { SenderAbstraction } from './SenderAbstraction';
6
5
  export declare class BatchSender implements SenderAbstraction {
7
6
  private wallet;
8
7
  private secretKey;
@@ -1,12 +1,12 @@
1
+ import type { Asset, ContractOpener } from '../interfaces';
2
+ import { SenderAbstraction, WalletInstanse } from '../interfaces';
1
3
  import type { SendResult, ShardTransaction } from '../structs/InternalStruct';
2
- import type { Asset, ContractOpener } from '../structs/Struct';
3
4
  import { Network } from '../structs/Struct';
4
- import { SenderAbstraction, WalletInstance } from './SenderAbstraction';
5
5
  export declare class RawSender implements SenderAbstraction {
6
6
  private wallet;
7
7
  private secretKey;
8
8
  private maxBatchSize;
9
- constructor(wallet: WalletInstance, secretKey: Buffer, maxBatchSize?: number);
9
+ constructor(wallet: WalletInstanse, secretKey: Buffer, maxBatchSize?: number);
10
10
  getBalanceOf(asset: Asset): Promise<bigint>;
11
11
  getBalance(contractOpener: ContractOpener): Promise<bigint>;
12
12
  sendShardTransactions(shardTransactions: ShardTransaction[], _chain: Network, contractOpener: ContractOpener): Promise<SendResult[]>;
@@ -1,8 +1,8 @@
1
1
  import { WalletContractV2R1, WalletContractV2R2, WalletContractV3R1, WalletContractV3R2, WalletContractV4, WalletContractV5R1 } from '@ton/ton';
2
2
  import { TonConnectUI } from '@tonconnect/ui';
3
+ import { SenderAbstraction } from '../interfaces';
3
4
  import { Network } from '../structs/Struct';
4
5
  import { HighloadWalletV3 } from '../wrappers/HighloadWalletV3';
5
- import { SenderAbstraction } from './SenderAbstraction';
6
6
  export type WalletVersion = 'V2R1' | 'V2R2' | 'V3R1' | 'V3R2' | 'V4' | 'V5R1' | 'HIGHLOAD_V3';
7
7
  export declare const wallets: {
8
8
  V2R1: typeof WalletContractV2R1;
@@ -38,7 +38,7 @@ class SenderFactory {
38
38
  if (params.version === 'V5R1') {
39
39
  // manual setup of wallet id required to support wallet w5 both on mainnet and testnet
40
40
  config.walletId = {
41
- networkGlobalId: params.network === Struct_1.Network.TESTNET ? -3 : -239,
41
+ networkGlobalId: params.network === Struct_1.Network.MAINNET ? -239 : -3,
42
42
  context: {
43
43
  walletVersion: 'v5r1',
44
44
  workchain: 0,
@@ -1,7 +1,7 @@
1
1
  import { TonConnectUI } from '@tonconnect/ui';
2
+ import { Asset, ContractOpener, SenderAbstraction } from '../interfaces';
2
3
  import type { SendResult, ShardTransaction } from '../structs/InternalStruct';
3
- import { Asset, ContractOpener, Network } from '../structs/Struct';
4
- import { SenderAbstraction } from './SenderAbstraction';
4
+ import { Network } from '../structs/Struct';
5
5
  export declare class TonConnectSender implements SenderAbstraction {
6
6
  readonly tonConnect: TonConnectUI;
7
7
  constructor(tonConnect: TonConnectUI);
@@ -4,8 +4,8 @@ exports.TonConnectSender = void 0;
4
4
  const ton_1 = require("@ton/ton");
5
5
  const protocol_1 = require("@tonconnect/protocol");
6
6
  const ui_1 = require("@tonconnect/ui");
7
+ const Utils_1 = require("../sdk/Utils");
7
8
  const Struct_1 = require("../structs/Struct");
8
- const SenderAbstraction_1 = require("./SenderAbstraction");
9
9
  const CHUNK_SIZE = 4;
10
10
  class TonConnectSender {
11
11
  constructor(tonConnect) {
@@ -28,7 +28,7 @@ class TonConnectSender {
28
28
  const transaction = {
29
29
  validUntil,
30
30
  messages: chunk,
31
- network: chain == Struct_1.Network.TESTNET ? ui_1.CHAIN.TESTNET : ui_1.CHAIN.MAINNET,
31
+ network: chain == Struct_1.Network.MAINNET ? ui_1.CHAIN.MAINNET : ui_1.CHAIN.TESTNET,
32
32
  };
33
33
  try {
34
34
  const response = await this.tonConnect.sendTransaction(transaction);
@@ -48,7 +48,7 @@ class TonConnectSender {
48
48
  break; // Stop sending after first error
49
49
  }
50
50
  if (i + chunkSize < messages.length) {
51
- await (0, SenderAbstraction_1.sleep)(1000);
51
+ await (0, Utils_1.sleep)(1000);
52
52
  }
53
53
  }
54
54
  return responses;
@@ -1,3 +1,3 @@
1
+ export * from '../interfaces/SenderAbstraction';
1
2
  export * from './BatchSender';
2
- export * from './SenderAbstraction';
3
3
  export * from './SenderFactory';
@@ -14,6 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../interfaces/SenderAbstraction"), exports);
17
18
  __exportStar(require("./BatchSender"), exports);
18
- __exportStar(require("./SenderAbstraction"), exports);
19
19
  __exportStar(require("./SenderFactory"), exports);
@@ -1,7 +1,8 @@
1
1
  import { Cell } from '@ton/ton';
2
- import { mainnet, testnet } from '@tonappchain/artifacts';
3
2
  import { AbstractProvider, ethers } from 'ethers';
4
- import { ContractOpener, ExecutionStagesByOperationId, Network, OperationIdsByShardsKey, OperationType, StatusInfosByOperationId, SuggestedTONExecutorFee, TACSimulationResult } from './Struct';
3
+ import { ICrossChainLayer, ISAFactory, ISettings, ITokenUtils } from '../../artifacts/tacTypes';
4
+ import { ContractOpener } from '../interfaces';
5
+ import { CurrencyType, ExecutionStagesByOperationId, Network, OperationIdsByShardsKey, OperationType, StatusInfosByOperationId, SuggestedTVMExecutorFee, TACSimulationResult } from './Struct';
5
6
  export type ShardMessage = {
6
7
  address: string;
7
8
  value: bigint;
@@ -34,9 +35,10 @@ export type InternalTONParams = {
34
35
  };
35
36
  export type InternalTACParams = {
36
37
  provider: AbstractProvider;
37
- crossChainLayer: testnet.tac.wrappers.CrossChainLayerTAC | mainnet.tac.wrappers.CrossChainLayerTAC;
38
- settings: testnet.tac.wrappers.SettingsTAC | mainnet.tac.wrappers.SettingsTAC;
39
- tokenUtils: testnet.tac.wrappers.TokenUtilsTAC | mainnet.tac.wrappers.TokenUtilsTAC;
38
+ crossChainLayer: ICrossChainLayer;
39
+ settings: ISettings;
40
+ tokenUtils: ITokenUtils;
41
+ smartAccountFactory: ISAFactory;
40
42
  trustedTACExecutors: string[];
41
43
  trustedTONExecutors: string[];
42
44
  abiCoder: ethers.AbiCoder;
@@ -50,7 +52,13 @@ export type StatusesResponse = ResponseBase<StatusInfosByOperationId>;
50
52
  export type OperationIdsByShardsKeyResponse = ResponseBase<OperationIdsByShardsKey>;
51
53
  export type StageProfilingResponse = ResponseBase<ExecutionStagesByOperationId>;
52
54
  export type TACSimulationResponse = ResponseBase<TACSimulationResult>;
53
- export type SuggestedTONExecutorFeeResponse = ResponseBase<SuggestedTONExecutorFee>;
55
+ export type SuggestedTVMExecutorFeeResponse = ResponseBase<SuggestedTVMExecutorFee>;
56
+ export type ConvertCurrencyResponse = ResponseBase<ConvertedCurrencyRawResult>;
57
+ export type OperationIdWithLogIndex = {
58
+ operationId: string;
59
+ logIndex: number;
60
+ };
61
+ export type OperationIdWithLogIndexResponse = ResponseBase<OperationIdWithLogIndex>;
54
62
  export interface SendResult {
55
63
  success: boolean;
56
64
  result?: unknown;
@@ -75,6 +83,9 @@ export type ToncenterTransaction = {
75
83
  hash: string;
76
84
  opcode: string;
77
85
  };
86
+ outMsgs: {
87
+ hash: string;
88
+ }[];
78
89
  };
79
90
  export type TransactionDepth = {
80
91
  hash: string;
@@ -90,3 +101,16 @@ export type TxFinalizerConfig = {
90
101
  value: string;
91
102
  };
92
103
  };
104
+ export type USDPriceInfoRaw = {
105
+ spot: string;
106
+ ema: string;
107
+ decimals: number;
108
+ };
109
+ export type ConvertedCurrencyRawResult = {
110
+ spotValue: string;
111
+ emaValue: string;
112
+ decimals: number;
113
+ currency: CurrencyType;
114
+ tacPrice: USDPriceInfoRaw;
115
+ tonPrice: USDPriceInfoRaw;
116
+ };