@stellar/stellar-sdk 12.3.0 → 13.0.0-rc.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 (514) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/README.md +29 -7
  3. package/dist/stellar-sdk-minimal.js +46009 -0
  4. package/dist/stellar-sdk-minimal.min.js +2 -0
  5. package/dist/stellar-sdk-minimal.min.js.LICENSE.txt +69 -0
  6. package/dist/stellar-sdk-no-axios.js +56648 -0
  7. package/dist/stellar-sdk-no-axios.min.js +2 -0
  8. package/dist/stellar-sdk-no-axios.min.js.LICENSE.txt +71 -0
  9. package/dist/stellar-sdk-no-eventsource.js +49822 -0
  10. package/dist/stellar-sdk-no-eventsource.min.js +2 -0
  11. package/dist/stellar-sdk-no-eventsource.min.js.LICENSE.txt +69 -0
  12. package/dist/stellar-sdk.js +28279 -27350
  13. package/dist/stellar-sdk.min.js +1 -1
  14. package/lib/browser.d.ts +2 -2
  15. package/lib/browser.js +5 -7
  16. package/lib/config.d.ts +31 -19
  17. package/lib/contract/assembled_transaction.d.ts +22 -14
  18. package/lib/contract/assembled_transaction.js +159 -128
  19. package/lib/contract/basic_node_signer.d.ts +6 -1
  20. package/lib/contract/client.d.ts +24 -24
  21. package/lib/contract/rust_result.d.ts +22 -12
  22. package/lib/contract/sent_transaction.d.ts +9 -4
  23. package/lib/contract/sent_transaction.js +6 -6
  24. package/lib/contract/spec.d.ts +8 -14
  25. package/lib/contract/types.d.ts +81 -13
  26. package/lib/contract/utils.d.ts +8 -1
  27. package/lib/errors/account_requires_memo.d.ts +24 -0
  28. package/lib/errors/account_requires_memo.js +38 -0
  29. package/lib/errors/bad_request.d.ts +14 -0
  30. package/lib/errors/bad_request.js +34 -0
  31. package/lib/errors/bad_response.d.ts +17 -0
  32. package/lib/errors/bad_response.js +34 -0
  33. package/lib/errors/index.d.ts +5 -0
  34. package/lib/errors/index.js +60 -0
  35. package/lib/errors/network.d.ts +33 -0
  36. package/lib/{errors.js → errors/network.js} +1 -59
  37. package/lib/errors/not_found.d.ts +14 -0
  38. package/lib/errors/not_found.js +34 -0
  39. package/lib/federation/api.d.ts +21 -0
  40. package/lib/federation/index.d.ts +1 -1
  41. package/lib/federation/index.js +16 -6
  42. package/lib/federation/server.d.ts +36 -38
  43. package/lib/federation/server.js +2 -2
  44. package/lib/horizon/account_call_builder.d.ts +10 -8
  45. package/lib/horizon/account_response.d.ts +5 -2
  46. package/lib/horizon/assets_call_builder.d.ts +3 -2
  47. package/lib/horizon/call_builder.js +9 -3
  48. package/lib/horizon/claimable_balances_call_builder.d.ts +10 -8
  49. package/lib/horizon/effect_call_builder.d.ts +8 -7
  50. package/lib/horizon/horizon_axios_client.d.ts +13 -6
  51. package/lib/horizon/horizon_axios_client.js +16 -4
  52. package/lib/horizon/index.d.ts +2 -1
  53. package/lib/horizon/index.js +1 -1
  54. package/lib/horizon/ledger_call_builder.d.ts +6 -4
  55. package/lib/horizon/liquidity_pool_call_builder.d.ts +3 -2
  56. package/lib/horizon/offer_call_builder.d.ts +12 -10
  57. package/lib/horizon/operation_call_builder.d.ts +11 -9
  58. package/lib/horizon/orderbook_call_builder.d.ts +7 -2
  59. package/lib/horizon/path_call_builder.d.ts +7 -2
  60. package/lib/horizon/payment_call_builder.d.ts +10 -6
  61. package/lib/horizon/server.d.ts +64 -55
  62. package/lib/horizon/server.js +6 -5
  63. package/lib/horizon/server_api.d.ts +0 -15
  64. package/lib/horizon/strict_receive_path_call_builder.d.ts +7 -2
  65. package/lib/horizon/strict_send_path_call_builder.d.ts +7 -2
  66. package/lib/horizon/trade_aggregation_call_builder.d.ts +4 -2
  67. package/lib/horizon/trades_call_builder.d.ts +8 -5
  68. package/lib/horizon/transaction_call_builder.d.ts +10 -7
  69. package/lib/horizon/types/assets.d.ts +0 -2
  70. package/lib/http-client/axios-client.d.ts +2 -0
  71. package/lib/http-client/axios-client.js +10 -0
  72. package/lib/http-client/fetch-client.d.ts +11 -0
  73. package/lib/http-client/fetch-client.js +229 -0
  74. package/lib/http-client/index.d.ts +5 -0
  75. package/lib/http-client/index.js +33 -0
  76. package/lib/http-client/types.d.ts +69 -0
  77. package/lib/http-client/types.js +34 -0
  78. package/lib/index.d.ts +3 -8
  79. package/lib/index.js +8 -5
  80. package/lib/minimal/browser.d.ts +6 -0
  81. package/lib/minimal/browser.js +35 -0
  82. package/lib/minimal/config.d.ts +64 -0
  83. package/lib/minimal/config.js +51 -0
  84. package/lib/minimal/contract/assembled_transaction.d.ts +555 -0
  85. package/lib/minimal/contract/assembled_transaction.js +752 -0
  86. package/lib/minimal/contract/basic_node_signer.d.ts +17 -0
  87. package/lib/minimal/contract/basic_node_signer.js +52 -0
  88. package/lib/minimal/contract/client.d.ts +52 -0
  89. package/lib/minimal/contract/client.js +180 -0
  90. package/lib/minimal/contract/index.d.ts +7 -0
  91. package/lib/minimal/contract/index.js +82 -0
  92. package/lib/minimal/contract/rust_result.d.ts +81 -0
  93. package/lib/minimal/contract/rust_result.js +66 -0
  94. package/lib/minimal/contract/sent_transaction.d.ts +84 -0
  95. package/lib/minimal/contract/sent_transaction.js +151 -0
  96. package/lib/minimal/contract/spec.d.ts +152 -0
  97. package/lib/minimal/contract/spec.js +1020 -0
  98. package/lib/minimal/contract/types.d.ts +180 -0
  99. package/lib/minimal/contract/types.js +8 -0
  100. package/lib/minimal/contract/utils.d.ts +46 -0
  101. package/lib/minimal/contract/utils.js +123 -0
  102. package/lib/minimal/errors/account_requires_memo.d.ts +24 -0
  103. package/lib/minimal/errors/account_requires_memo.js +38 -0
  104. package/lib/minimal/errors/bad_request.d.ts +14 -0
  105. package/lib/minimal/errors/bad_request.js +34 -0
  106. package/lib/minimal/errors/bad_response.d.ts +17 -0
  107. package/lib/minimal/errors/bad_response.js +34 -0
  108. package/lib/minimal/errors/index.d.ts +5 -0
  109. package/lib/minimal/errors/index.js +60 -0
  110. package/lib/minimal/errors/network.d.ts +33 -0
  111. package/lib/minimal/errors/network.js +41 -0
  112. package/lib/minimal/errors/not_found.d.ts +14 -0
  113. package/lib/minimal/errors/not_found.js +34 -0
  114. package/lib/minimal/federation/api.d.ts +32 -0
  115. package/lib/minimal/federation/api.js +7 -0
  116. package/lib/minimal/federation/index.d.ts +2 -0
  117. package/lib/minimal/federation/index.js +34 -0
  118. package/lib/minimal/federation/server.d.ts +116 -0
  119. package/lib/minimal/federation/server.js +252 -0
  120. package/lib/minimal/friendbot/index.d.ts +5 -0
  121. package/lib/minimal/friendbot/index.js +7 -0
  122. package/lib/minimal/horizon/account_call_builder.d.ts +56 -0
  123. package/lib/minimal/horizon/account_call_builder.js +62 -0
  124. package/lib/minimal/horizon/account_response.d.ts +61 -0
  125. package/lib/minimal/horizon/account_response.js +49 -0
  126. package/lib/minimal/horizon/assets_call_builder.d.ts +27 -0
  127. package/lib/minimal/horizon/assets_call_builder.js +43 -0
  128. package/lib/minimal/horizon/call_builder.d.ts +128 -0
  129. package/lib/minimal/horizon/call_builder.js +362 -0
  130. package/lib/minimal/horizon/claimable_balances_call_builder.d.ts +50 -0
  131. package/lib/minimal/horizon/claimable_balances_call_builder.js +56 -0
  132. package/lib/minimal/horizon/effect_call_builder.d.ts +53 -0
  133. package/lib/minimal/horizon/effect_call_builder.js +56 -0
  134. package/lib/minimal/horizon/friendbot_builder.d.ts +4 -0
  135. package/lib/minimal/horizon/friendbot_builder.js +32 -0
  136. package/lib/minimal/horizon/horizon_api.d.ts +527 -0
  137. package/lib/minimal/horizon/horizon_api.js +96 -0
  138. package/lib/minimal/horizon/horizon_axios_client.d.ts +37 -0
  139. package/lib/minimal/horizon/horizon_axios_client.js +60 -0
  140. package/lib/minimal/horizon/index.d.ts +8 -0
  141. package/lib/minimal/horizon/index.js +78 -0
  142. package/lib/minimal/horizon/ledger_call_builder.d.ts +23 -0
  143. package/lib/minimal/horizon/ledger_call_builder.js +37 -0
  144. package/lib/minimal/horizon/liquidity_pool_call_builder.d.ts +37 -0
  145. package/lib/minimal/horizon/liquidity_pool_call_builder.js +59 -0
  146. package/lib/minimal/horizon/offer_call_builder.d.ts +65 -0
  147. package/lib/minimal/horizon/offer_call_builder.js +79 -0
  148. package/lib/minimal/horizon/operation_call_builder.d.ts +69 -0
  149. package/lib/minimal/horizon/operation_call_builder.js +69 -0
  150. package/lib/minimal/horizon/orderbook_call_builder.d.ts +20 -0
  151. package/lib/minimal/horizon/orderbook_call_builder.js +45 -0
  152. package/lib/minimal/horizon/path_call_builder.d.ts +35 -0
  153. package/lib/minimal/horizon/path_call_builder.js +41 -0
  154. package/lib/minimal/horizon/payment_call_builder.d.ts +39 -0
  155. package/lib/minimal/horizon/payment_call_builder.js +46 -0
  156. package/lib/minimal/horizon/server.d.ts +389 -0
  157. package/lib/minimal/horizon/server.js +550 -0
  158. package/lib/minimal/horizon/server_api.d.ts +263 -0
  159. package/lib/minimal/horizon/server_api.js +19 -0
  160. package/lib/minimal/horizon/strict_receive_path_call_builder.d.ts +38 -0
  161. package/lib/minimal/horizon/strict_receive_path_call_builder.js +50 -0
  162. package/lib/minimal/horizon/strict_send_path_call_builder.d.ts +38 -0
  163. package/lib/minimal/horizon/strict_send_path_call_builder.js +50 -0
  164. package/lib/minimal/horizon/trade_aggregation_call_builder.d.ts +49 -0
  165. package/lib/minimal/horizon/trade_aggregation_call_builder.js +76 -0
  166. package/lib/minimal/horizon/trades_call_builder.d.ts +52 -0
  167. package/lib/minimal/horizon/trades_call_builder.js +72 -0
  168. package/lib/minimal/horizon/transaction_call_builder.d.ts +60 -0
  169. package/lib/minimal/horizon/transaction_call_builder.js +64 -0
  170. package/lib/minimal/horizon/types/account.d.ts +5 -0
  171. package/lib/minimal/horizon/types/account.js +5 -0
  172. package/lib/minimal/horizon/types/assets.d.ts +17 -0
  173. package/lib/minimal/horizon/types/assets.js +5 -0
  174. package/lib/minimal/horizon/types/effects.d.ts +285 -0
  175. package/lib/minimal/horizon/types/effects.js +62 -0
  176. package/lib/minimal/horizon/types/offer.d.ts +20 -0
  177. package/lib/minimal/horizon/types/offer.js +5 -0
  178. package/lib/minimal/horizon/types/trade.d.ts +13 -0
  179. package/lib/minimal/horizon/types/trade.js +5 -0
  180. package/lib/minimal/http-client/axios-client.d.ts +2 -0
  181. package/lib/minimal/http-client/axios-client.js +10 -0
  182. package/lib/minimal/http-client/fetch-client.d.ts +11 -0
  183. package/lib/minimal/http-client/fetch-client.js +229 -0
  184. package/lib/minimal/http-client/index.d.ts +5 -0
  185. package/lib/minimal/http-client/index.js +33 -0
  186. package/lib/minimal/http-client/types.d.ts +69 -0
  187. package/lib/minimal/http-client/types.js +34 -0
  188. package/lib/minimal/index.d.ts +32 -0
  189. package/lib/minimal/index.js +80 -0
  190. package/lib/minimal/rpc/api.d.ts +362 -0
  191. package/lib/minimal/rpc/api.js +32 -0
  192. package/lib/minimal/rpc/axios.d.ts +4 -0
  193. package/lib/minimal/rpc/axios.js +15 -0
  194. package/lib/minimal/rpc/browser.d.ts +4 -0
  195. package/lib/minimal/rpc/browser.js +27 -0
  196. package/lib/minimal/rpc/index.d.ts +8 -0
  197. package/lib/minimal/rpc/index.js +86 -0
  198. package/lib/minimal/rpc/jsonrpc.d.ts +35 -0
  199. package/lib/minimal/rpc/jsonrpc.js +52 -0
  200. package/lib/minimal/rpc/parsers.d.ts +39 -0
  201. package/lib/minimal/rpc/parsers.js +155 -0
  202. package/lib/minimal/rpc/server.d.ts +622 -0
  203. package/lib/minimal/rpc/server.js +877 -0
  204. package/lib/minimal/rpc/transaction.d.ts +21 -0
  205. package/lib/minimal/rpc/transaction.js +53 -0
  206. package/lib/minimal/rpc/utils.d.ts +1 -0
  207. package/lib/minimal/rpc/utils.js +9 -0
  208. package/lib/minimal/stellartoml/index.d.ts +131 -0
  209. package/lib/minimal/stellartoml/index.js +77 -0
  210. package/lib/minimal/utils.d.ts +20 -0
  211. package/lib/minimal/utils.js +38 -0
  212. package/lib/minimal/webauth/errors.d.ts +13 -0
  213. package/lib/minimal/webauth/errors.js +36 -0
  214. package/lib/minimal/webauth/index.d.ts +2 -0
  215. package/lib/minimal/webauth/index.js +27 -0
  216. package/lib/minimal/webauth/utils.d.ts +307 -0
  217. package/lib/minimal/webauth/utils.js +332 -0
  218. package/lib/no-axios/browser.d.ts +6 -0
  219. package/lib/no-axios/browser.js +35 -0
  220. package/lib/no-axios/config.d.ts +64 -0
  221. package/lib/no-axios/config.js +51 -0
  222. package/lib/no-axios/contract/assembled_transaction.d.ts +555 -0
  223. package/lib/no-axios/contract/assembled_transaction.js +752 -0
  224. package/lib/no-axios/contract/basic_node_signer.d.ts +17 -0
  225. package/lib/no-axios/contract/basic_node_signer.js +52 -0
  226. package/lib/no-axios/contract/client.d.ts +52 -0
  227. package/lib/no-axios/contract/client.js +180 -0
  228. package/lib/no-axios/contract/index.d.ts +7 -0
  229. package/lib/no-axios/contract/index.js +82 -0
  230. package/lib/no-axios/contract/rust_result.d.ts +81 -0
  231. package/lib/no-axios/contract/rust_result.js +66 -0
  232. package/lib/no-axios/contract/sent_transaction.d.ts +84 -0
  233. package/lib/no-axios/contract/sent_transaction.js +151 -0
  234. package/lib/no-axios/contract/spec.d.ts +152 -0
  235. package/lib/no-axios/contract/spec.js +1020 -0
  236. package/lib/no-axios/contract/types.d.ts +180 -0
  237. package/lib/no-axios/contract/types.js +8 -0
  238. package/lib/no-axios/contract/utils.d.ts +46 -0
  239. package/lib/no-axios/contract/utils.js +123 -0
  240. package/lib/no-axios/errors/account_requires_memo.d.ts +24 -0
  241. package/lib/no-axios/errors/account_requires_memo.js +38 -0
  242. package/lib/no-axios/errors/bad_request.d.ts +14 -0
  243. package/lib/no-axios/errors/bad_request.js +34 -0
  244. package/lib/no-axios/errors/bad_response.d.ts +17 -0
  245. package/lib/no-axios/errors/bad_response.js +34 -0
  246. package/lib/no-axios/errors/index.d.ts +5 -0
  247. package/lib/no-axios/errors/index.js +60 -0
  248. package/lib/no-axios/errors/network.d.ts +33 -0
  249. package/lib/no-axios/errors/network.js +41 -0
  250. package/lib/no-axios/errors/not_found.d.ts +14 -0
  251. package/lib/no-axios/errors/not_found.js +34 -0
  252. package/lib/no-axios/federation/api.d.ts +32 -0
  253. package/lib/no-axios/federation/api.js +7 -0
  254. package/lib/no-axios/federation/index.d.ts +2 -0
  255. package/lib/no-axios/federation/index.js +34 -0
  256. package/lib/no-axios/federation/server.d.ts +116 -0
  257. package/lib/no-axios/federation/server.js +252 -0
  258. package/lib/no-axios/friendbot/index.d.ts +5 -0
  259. package/lib/no-axios/friendbot/index.js +7 -0
  260. package/lib/no-axios/horizon/account_call_builder.d.ts +56 -0
  261. package/lib/no-axios/horizon/account_call_builder.js +62 -0
  262. package/lib/no-axios/horizon/account_response.d.ts +61 -0
  263. package/lib/no-axios/horizon/account_response.js +49 -0
  264. package/lib/no-axios/horizon/assets_call_builder.d.ts +27 -0
  265. package/lib/no-axios/horizon/assets_call_builder.js +43 -0
  266. package/lib/no-axios/horizon/call_builder.d.ts +128 -0
  267. package/lib/no-axios/horizon/call_builder.js +362 -0
  268. package/lib/no-axios/horizon/claimable_balances_call_builder.d.ts +50 -0
  269. package/lib/no-axios/horizon/claimable_balances_call_builder.js +56 -0
  270. package/lib/no-axios/horizon/effect_call_builder.d.ts +53 -0
  271. package/lib/no-axios/horizon/effect_call_builder.js +56 -0
  272. package/lib/no-axios/horizon/friendbot_builder.d.ts +4 -0
  273. package/lib/no-axios/horizon/friendbot_builder.js +32 -0
  274. package/lib/no-axios/horizon/horizon_api.d.ts +527 -0
  275. package/lib/no-axios/horizon/horizon_api.js +96 -0
  276. package/lib/no-axios/horizon/horizon_axios_client.d.ts +37 -0
  277. package/lib/no-axios/horizon/horizon_axios_client.js +60 -0
  278. package/lib/no-axios/horizon/index.d.ts +8 -0
  279. package/lib/no-axios/horizon/index.js +78 -0
  280. package/lib/no-axios/horizon/ledger_call_builder.d.ts +23 -0
  281. package/lib/no-axios/horizon/ledger_call_builder.js +37 -0
  282. package/lib/no-axios/horizon/liquidity_pool_call_builder.d.ts +37 -0
  283. package/lib/no-axios/horizon/liquidity_pool_call_builder.js +59 -0
  284. package/lib/no-axios/horizon/offer_call_builder.d.ts +65 -0
  285. package/lib/no-axios/horizon/offer_call_builder.js +79 -0
  286. package/lib/no-axios/horizon/operation_call_builder.d.ts +69 -0
  287. package/lib/no-axios/horizon/operation_call_builder.js +69 -0
  288. package/lib/no-axios/horizon/orderbook_call_builder.d.ts +20 -0
  289. package/lib/no-axios/horizon/orderbook_call_builder.js +45 -0
  290. package/lib/no-axios/horizon/path_call_builder.d.ts +35 -0
  291. package/lib/no-axios/horizon/path_call_builder.js +41 -0
  292. package/lib/no-axios/horizon/payment_call_builder.d.ts +39 -0
  293. package/lib/no-axios/horizon/payment_call_builder.js +46 -0
  294. package/lib/no-axios/horizon/server.d.ts +389 -0
  295. package/lib/no-axios/horizon/server.js +550 -0
  296. package/lib/no-axios/horizon/server_api.d.ts +263 -0
  297. package/lib/no-axios/horizon/server_api.js +19 -0
  298. package/lib/no-axios/horizon/strict_receive_path_call_builder.d.ts +38 -0
  299. package/lib/no-axios/horizon/strict_receive_path_call_builder.js +50 -0
  300. package/lib/no-axios/horizon/strict_send_path_call_builder.d.ts +38 -0
  301. package/lib/no-axios/horizon/strict_send_path_call_builder.js +50 -0
  302. package/lib/no-axios/horizon/trade_aggregation_call_builder.d.ts +49 -0
  303. package/lib/no-axios/horizon/trade_aggregation_call_builder.js +76 -0
  304. package/lib/no-axios/horizon/trades_call_builder.d.ts +52 -0
  305. package/lib/no-axios/horizon/trades_call_builder.js +72 -0
  306. package/lib/no-axios/horizon/transaction_call_builder.d.ts +60 -0
  307. package/lib/no-axios/horizon/transaction_call_builder.js +64 -0
  308. package/lib/no-axios/horizon/types/account.d.ts +5 -0
  309. package/lib/no-axios/horizon/types/account.js +5 -0
  310. package/lib/no-axios/horizon/types/assets.d.ts +17 -0
  311. package/lib/no-axios/horizon/types/assets.js +5 -0
  312. package/lib/no-axios/horizon/types/effects.d.ts +285 -0
  313. package/lib/no-axios/horizon/types/effects.js +62 -0
  314. package/lib/no-axios/horizon/types/offer.d.ts +20 -0
  315. package/lib/no-axios/horizon/types/offer.js +5 -0
  316. package/lib/no-axios/horizon/types/trade.d.ts +13 -0
  317. package/lib/no-axios/horizon/types/trade.js +5 -0
  318. package/lib/no-axios/http-client/axios-client.d.ts +2 -0
  319. package/lib/no-axios/http-client/axios-client.js +10 -0
  320. package/lib/no-axios/http-client/fetch-client.d.ts +11 -0
  321. package/lib/no-axios/http-client/fetch-client.js +229 -0
  322. package/lib/no-axios/http-client/index.d.ts +5 -0
  323. package/lib/no-axios/http-client/index.js +33 -0
  324. package/lib/no-axios/http-client/types.d.ts +69 -0
  325. package/lib/no-axios/http-client/types.js +34 -0
  326. package/lib/no-axios/index.d.ts +32 -0
  327. package/lib/no-axios/index.js +80 -0
  328. package/lib/no-axios/rpc/api.d.ts +362 -0
  329. package/lib/no-axios/rpc/api.js +32 -0
  330. package/lib/no-axios/rpc/axios.d.ts +4 -0
  331. package/lib/no-axios/rpc/axios.js +15 -0
  332. package/lib/no-axios/rpc/browser.d.ts +4 -0
  333. package/lib/no-axios/rpc/browser.js +27 -0
  334. package/lib/no-axios/rpc/index.d.ts +8 -0
  335. package/lib/no-axios/rpc/index.js +86 -0
  336. package/lib/no-axios/rpc/jsonrpc.d.ts +35 -0
  337. package/lib/no-axios/rpc/jsonrpc.js +52 -0
  338. package/lib/no-axios/rpc/parsers.d.ts +39 -0
  339. package/lib/no-axios/rpc/parsers.js +155 -0
  340. package/lib/no-axios/rpc/server.d.ts +622 -0
  341. package/lib/no-axios/rpc/server.js +877 -0
  342. package/lib/no-axios/rpc/transaction.d.ts +21 -0
  343. package/lib/no-axios/rpc/transaction.js +53 -0
  344. package/lib/no-axios/rpc/utils.d.ts +1 -0
  345. package/lib/no-axios/rpc/utils.js +9 -0
  346. package/lib/no-axios/stellartoml/index.d.ts +131 -0
  347. package/lib/no-axios/stellartoml/index.js +77 -0
  348. package/lib/no-axios/utils.d.ts +20 -0
  349. package/lib/no-axios/utils.js +38 -0
  350. package/lib/no-axios/webauth/errors.d.ts +13 -0
  351. package/lib/no-axios/webauth/errors.js +36 -0
  352. package/lib/no-axios/webauth/index.d.ts +2 -0
  353. package/lib/no-axios/webauth/index.js +27 -0
  354. package/lib/no-axios/webauth/utils.d.ts +307 -0
  355. package/lib/no-axios/webauth/utils.js +332 -0
  356. package/lib/no-eventsource/browser.d.ts +6 -0
  357. package/lib/no-eventsource/browser.js +35 -0
  358. package/lib/no-eventsource/config.d.ts +64 -0
  359. package/lib/no-eventsource/config.js +51 -0
  360. package/lib/no-eventsource/contract/assembled_transaction.d.ts +555 -0
  361. package/lib/no-eventsource/contract/assembled_transaction.js +752 -0
  362. package/lib/no-eventsource/contract/basic_node_signer.d.ts +17 -0
  363. package/lib/no-eventsource/contract/basic_node_signer.js +52 -0
  364. package/lib/no-eventsource/contract/client.d.ts +52 -0
  365. package/lib/no-eventsource/contract/client.js +180 -0
  366. package/lib/no-eventsource/contract/index.d.ts +7 -0
  367. package/lib/no-eventsource/contract/index.js +82 -0
  368. package/lib/no-eventsource/contract/rust_result.d.ts +81 -0
  369. package/lib/no-eventsource/contract/rust_result.js +66 -0
  370. package/lib/no-eventsource/contract/sent_transaction.d.ts +84 -0
  371. package/lib/no-eventsource/contract/sent_transaction.js +151 -0
  372. package/lib/no-eventsource/contract/spec.d.ts +152 -0
  373. package/lib/no-eventsource/contract/spec.js +1020 -0
  374. package/lib/no-eventsource/contract/types.d.ts +180 -0
  375. package/lib/no-eventsource/contract/types.js +8 -0
  376. package/lib/no-eventsource/contract/utils.d.ts +46 -0
  377. package/lib/no-eventsource/contract/utils.js +123 -0
  378. package/lib/no-eventsource/errors/account_requires_memo.d.ts +24 -0
  379. package/lib/no-eventsource/errors/account_requires_memo.js +38 -0
  380. package/lib/no-eventsource/errors/bad_request.d.ts +14 -0
  381. package/lib/no-eventsource/errors/bad_request.js +34 -0
  382. package/lib/no-eventsource/errors/bad_response.d.ts +17 -0
  383. package/lib/no-eventsource/errors/bad_response.js +34 -0
  384. package/lib/no-eventsource/errors/index.d.ts +5 -0
  385. package/lib/no-eventsource/errors/index.js +60 -0
  386. package/lib/no-eventsource/errors/network.d.ts +33 -0
  387. package/lib/no-eventsource/errors/network.js +41 -0
  388. package/lib/no-eventsource/errors/not_found.d.ts +14 -0
  389. package/lib/no-eventsource/errors/not_found.js +34 -0
  390. package/lib/no-eventsource/federation/api.d.ts +32 -0
  391. package/lib/no-eventsource/federation/api.js +7 -0
  392. package/lib/no-eventsource/federation/index.d.ts +2 -0
  393. package/lib/no-eventsource/federation/index.js +34 -0
  394. package/lib/no-eventsource/federation/server.d.ts +116 -0
  395. package/lib/no-eventsource/federation/server.js +252 -0
  396. package/lib/no-eventsource/friendbot/index.d.ts +5 -0
  397. package/lib/no-eventsource/friendbot/index.js +7 -0
  398. package/lib/no-eventsource/horizon/account_call_builder.d.ts +56 -0
  399. package/lib/no-eventsource/horizon/account_call_builder.js +62 -0
  400. package/lib/no-eventsource/horizon/account_response.d.ts +61 -0
  401. package/lib/no-eventsource/horizon/account_response.js +49 -0
  402. package/lib/no-eventsource/horizon/assets_call_builder.d.ts +27 -0
  403. package/lib/no-eventsource/horizon/assets_call_builder.js +43 -0
  404. package/lib/no-eventsource/horizon/call_builder.d.ts +128 -0
  405. package/lib/no-eventsource/horizon/call_builder.js +362 -0
  406. package/lib/no-eventsource/horizon/claimable_balances_call_builder.d.ts +50 -0
  407. package/lib/no-eventsource/horizon/claimable_balances_call_builder.js +56 -0
  408. package/lib/no-eventsource/horizon/effect_call_builder.d.ts +53 -0
  409. package/lib/no-eventsource/horizon/effect_call_builder.js +56 -0
  410. package/lib/no-eventsource/horizon/friendbot_builder.d.ts +4 -0
  411. package/lib/no-eventsource/horizon/friendbot_builder.js +32 -0
  412. package/lib/no-eventsource/horizon/horizon_api.d.ts +527 -0
  413. package/lib/no-eventsource/horizon/horizon_api.js +96 -0
  414. package/lib/no-eventsource/horizon/horizon_axios_client.d.ts +37 -0
  415. package/lib/no-eventsource/horizon/horizon_axios_client.js +60 -0
  416. package/lib/no-eventsource/horizon/index.d.ts +8 -0
  417. package/lib/no-eventsource/horizon/index.js +78 -0
  418. package/lib/no-eventsource/horizon/ledger_call_builder.d.ts +23 -0
  419. package/lib/no-eventsource/horizon/ledger_call_builder.js +37 -0
  420. package/lib/no-eventsource/horizon/liquidity_pool_call_builder.d.ts +37 -0
  421. package/lib/no-eventsource/horizon/liquidity_pool_call_builder.js +59 -0
  422. package/lib/no-eventsource/horizon/offer_call_builder.d.ts +65 -0
  423. package/lib/no-eventsource/horizon/offer_call_builder.js +79 -0
  424. package/lib/no-eventsource/horizon/operation_call_builder.d.ts +69 -0
  425. package/lib/no-eventsource/horizon/operation_call_builder.js +69 -0
  426. package/lib/no-eventsource/horizon/orderbook_call_builder.d.ts +20 -0
  427. package/lib/no-eventsource/horizon/orderbook_call_builder.js +45 -0
  428. package/lib/no-eventsource/horizon/path_call_builder.d.ts +35 -0
  429. package/lib/no-eventsource/horizon/path_call_builder.js +41 -0
  430. package/lib/no-eventsource/horizon/payment_call_builder.d.ts +39 -0
  431. package/lib/no-eventsource/horizon/payment_call_builder.js +46 -0
  432. package/lib/no-eventsource/horizon/server.d.ts +389 -0
  433. package/lib/no-eventsource/horizon/server.js +550 -0
  434. package/lib/no-eventsource/horizon/server_api.d.ts +263 -0
  435. package/lib/no-eventsource/horizon/server_api.js +19 -0
  436. package/lib/no-eventsource/horizon/strict_receive_path_call_builder.d.ts +38 -0
  437. package/lib/no-eventsource/horizon/strict_receive_path_call_builder.js +50 -0
  438. package/lib/no-eventsource/horizon/strict_send_path_call_builder.d.ts +38 -0
  439. package/lib/no-eventsource/horizon/strict_send_path_call_builder.js +50 -0
  440. package/lib/no-eventsource/horizon/trade_aggregation_call_builder.d.ts +49 -0
  441. package/lib/no-eventsource/horizon/trade_aggregation_call_builder.js +76 -0
  442. package/lib/no-eventsource/horizon/trades_call_builder.d.ts +52 -0
  443. package/lib/no-eventsource/horizon/trades_call_builder.js +72 -0
  444. package/lib/no-eventsource/horizon/transaction_call_builder.d.ts +60 -0
  445. package/lib/no-eventsource/horizon/transaction_call_builder.js +64 -0
  446. package/lib/no-eventsource/horizon/types/account.d.ts +5 -0
  447. package/lib/no-eventsource/horizon/types/account.js +5 -0
  448. package/lib/no-eventsource/horizon/types/assets.d.ts +17 -0
  449. package/lib/no-eventsource/horizon/types/assets.js +5 -0
  450. package/lib/no-eventsource/horizon/types/effects.d.ts +285 -0
  451. package/lib/no-eventsource/horizon/types/effects.js +62 -0
  452. package/lib/no-eventsource/horizon/types/offer.d.ts +20 -0
  453. package/lib/no-eventsource/horizon/types/offer.js +5 -0
  454. package/lib/no-eventsource/horizon/types/trade.d.ts +13 -0
  455. package/lib/no-eventsource/horizon/types/trade.js +5 -0
  456. package/lib/no-eventsource/http-client/axios-client.d.ts +2 -0
  457. package/lib/no-eventsource/http-client/axios-client.js +10 -0
  458. package/lib/no-eventsource/http-client/fetch-client.d.ts +11 -0
  459. package/lib/no-eventsource/http-client/fetch-client.js +229 -0
  460. package/lib/no-eventsource/http-client/index.d.ts +5 -0
  461. package/lib/no-eventsource/http-client/index.js +33 -0
  462. package/lib/no-eventsource/http-client/types.d.ts +69 -0
  463. package/lib/no-eventsource/http-client/types.js +34 -0
  464. package/lib/no-eventsource/index.d.ts +32 -0
  465. package/lib/no-eventsource/index.js +80 -0
  466. package/lib/no-eventsource/rpc/api.d.ts +362 -0
  467. package/lib/no-eventsource/rpc/api.js +32 -0
  468. package/lib/no-eventsource/rpc/axios.d.ts +4 -0
  469. package/lib/no-eventsource/rpc/axios.js +15 -0
  470. package/lib/no-eventsource/rpc/browser.d.ts +4 -0
  471. package/lib/no-eventsource/rpc/browser.js +27 -0
  472. package/lib/no-eventsource/rpc/index.d.ts +8 -0
  473. package/lib/no-eventsource/rpc/index.js +86 -0
  474. package/lib/no-eventsource/rpc/jsonrpc.d.ts +35 -0
  475. package/lib/no-eventsource/rpc/jsonrpc.js +52 -0
  476. package/lib/no-eventsource/rpc/parsers.d.ts +39 -0
  477. package/lib/no-eventsource/rpc/parsers.js +155 -0
  478. package/lib/no-eventsource/rpc/server.d.ts +622 -0
  479. package/lib/no-eventsource/rpc/server.js +877 -0
  480. package/lib/no-eventsource/rpc/transaction.d.ts +21 -0
  481. package/lib/no-eventsource/rpc/transaction.js +53 -0
  482. package/lib/no-eventsource/rpc/utils.d.ts +1 -0
  483. package/lib/no-eventsource/rpc/utils.js +9 -0
  484. package/lib/no-eventsource/stellartoml/index.d.ts +131 -0
  485. package/lib/no-eventsource/stellartoml/index.js +77 -0
  486. package/lib/no-eventsource/utils.d.ts +20 -0
  487. package/lib/no-eventsource/utils.js +38 -0
  488. package/lib/no-eventsource/webauth/errors.d.ts +13 -0
  489. package/lib/no-eventsource/webauth/errors.js +36 -0
  490. package/lib/no-eventsource/webauth/index.d.ts +2 -0
  491. package/lib/no-eventsource/webauth/index.js +27 -0
  492. package/lib/no-eventsource/webauth/utils.d.ts +307 -0
  493. package/lib/no-eventsource/webauth/utils.js +332 -0
  494. package/lib/rpc/api.d.ts +25 -11
  495. package/lib/rpc/axios.d.ts +3 -2
  496. package/lib/rpc/axios.js +3 -4
  497. package/lib/rpc/browser.d.ts +0 -2
  498. package/lib/rpc/browser.js +1 -11
  499. package/lib/rpc/index.d.ts +2 -1
  500. package/lib/rpc/index.js +15 -1
  501. package/lib/rpc/jsonrpc.d.ts +9 -1
  502. package/lib/rpc/parsers.d.ts +31 -11
  503. package/lib/rpc/parsers.js +14 -14
  504. package/lib/rpc/server.d.ts +207 -99
  505. package/lib/rpc/server.js +273 -133
  506. package/lib/rpc/transaction.d.ts +11 -9
  507. package/lib/stellartoml/index.d.ts +21 -11
  508. package/lib/stellartoml/index.js +3 -3
  509. package/lib/utils.d.ts +12 -4
  510. package/lib/utils.js +7 -0
  511. package/lib/webauth/errors.d.ts +9 -0
  512. package/lib/webauth/utils.d.ts +67 -54
  513. package/package.json +73 -21
  514. package/lib/errors.d.ts +0 -59
@@ -0,0 +1,622 @@
1
+ import URI from 'urijs';
2
+ import { Account, Address, Asset, Contract, FeeBumpTransaction, Transaction, xdr } from '@stellar/stellar-base';
3
+ import { Api } from './api';
4
+ /**
5
+ * Default transaction submission timeout for RPC requests, in milliseconds
6
+ * @constant {number}
7
+ * @default 60000
8
+ * @memberof module:rpc.Server
9
+ */
10
+ export declare const SUBMIT_TRANSACTION_TIMEOUT: number;
11
+ /**
12
+ * Specifies the durability namespace of contract-related ledger entries.
13
+ * @enum {('temporary' | 'persistent')}
14
+ * @memberof module:rpc
15
+ *
16
+ * @see {@link https://developers.stellar.org/docs/learn/smart-contract-internals/state-archival | State Archival docs}
17
+ * @see {@link https://docs.rs/soroban-sdk/latest/soroban_sdk/storage/struct.Storage.html | Rust SDK Storage docs}
18
+ */
19
+ export declare enum Durability {
20
+ Temporary = "temporary",
21
+ Persistent = "persistent"
22
+ }
23
+ /**
24
+ * @typedef {object} GetEventsRequest Describes the complex filter combinations available for event queries.
25
+ * @property {Array.<module:rpc.Api.EventFilter>} filters Filters to use when querying events from the RPC server.
26
+ * @property {number} [startLedger] Ledger number (inclusive) to begin querying events.
27
+ * @property {string} [cursor] Page cursor (exclusive) to begin querying events.
28
+ * @property {number} [limit=100] The maximum number of events that should be returned in the RPC response.
29
+ * @memberof module:rpc.Server
30
+ */
31
+ /**
32
+ * @typedef {object} ResourceLeeway Describes additional resource leeways for transaction simulation.
33
+ * @property {number} cpuInstructions Simulate the transaction with more CPU instructions available.
34
+ * @memberof module:rpc.Server
35
+ */
36
+ /**
37
+ * @typedef {object} Options Options for configuring connections to RPC servers.
38
+ * @property {boolean} [allowHttp=false] Allow connecting to http servers, default: `false`. This must be set to false in production deployments!
39
+ * @property {number} [timeout=0] Allow a timeout, default: 0. Allows user to avoid nasty lag. You can also use {@link Config} class to set this globally.
40
+ * @property {Record<string, string>} [headers] Additional headers that should be added to any requests to the RPC server.
41
+ * @memberof module:rpc.Server
42
+ */
43
+ export declare namespace RpcServer {
44
+ interface GetEventsRequest {
45
+ filters: Api.EventFilter[];
46
+ startLedger?: number;
47
+ endLedger?: number;
48
+ cursor?: string;
49
+ limit?: number;
50
+ }
51
+ interface PollingOptions {
52
+ attempts?: number;
53
+ sleepStrategy?: SleepStrategy;
54
+ }
55
+ interface ResourceLeeway {
56
+ cpuInstructions: number;
57
+ }
58
+ interface Options {
59
+ allowHttp?: boolean;
60
+ timeout?: number;
61
+ headers?: Record<string, string>;
62
+ }
63
+ }
64
+ export declare const BasicSleepStrategy: SleepStrategy;
65
+ export declare const LinearSleepStrategy: SleepStrategy;
66
+ /**
67
+ * A function that returns the number of *milliseconds* to sleep
68
+ * on a given `iter`ation.
69
+ */
70
+ export type SleepStrategy = (iter: number) => number;
71
+ /**
72
+ * Handles the network connection to a Soroban RPC instance, exposing an
73
+ * interface for requests to that instance.
74
+ *
75
+ * @alias module:rpc.Server
76
+ * @memberof module:rpc
77
+ *
78
+ * @param {string} serverURL Soroban-RPC Server URL (ex. `http://localhost:8000/soroban/rpc`).
79
+ * @param {module:rpc.Server.Options} [opts] Options object
80
+ * @param {boolean} [opts.allowHttp] Allows connecting to insecure http servers
81
+ * (default: `false`). This must be set to false in production deployments!
82
+ * You can also use {@link Config} class to set this globally.
83
+ * @param {Record<string, string>} [opts.headers] Allows setting custom headers
84
+ *
85
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods | API reference docs}
86
+ */
87
+ export declare class RpcServer {
88
+ readonly serverURL: URI;
89
+ constructor(serverURL: string, opts?: RpcServer.Options);
90
+ /**
91
+ * Fetch a minimal set of current info about a Stellar account.
92
+ *
93
+ * Needed to get the current sequence number for the account so you can build
94
+ * a successful transaction with {@link TransactionBuilder}.
95
+ *
96
+ * @param {string} address The public address of the account to load.
97
+ * @returns {Promise<Account>} A promise which resolves to the {@link Account}
98
+ * object with a populated sequence number
99
+ *
100
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgerEntries | getLedgerEntries docs}
101
+ *
102
+ * @example
103
+ * const accountId = "GBZC6Y2Y7Q3ZQ2Y4QZJ2XZ3Z5YXZ6Z7Z2Y4QZJ2XZ3Z5YXZ6Z7Z2Y4";
104
+ * server.getAccount(accountId).then((account) => {
105
+ * console.log("sequence:", account.sequence);
106
+ * });
107
+ */
108
+ getAccount(address: string): Promise<Account>;
109
+ /**
110
+ * General node health check.
111
+ *
112
+ * @returns {Promise<Api.GetHealthResponse>} A promise which resolves to the
113
+ * {@link Api.GetHealthResponse} object with the status of the
114
+ * server (e.g. "healthy").
115
+ *
116
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getHealth | getLedgerEntries docs}
117
+ *
118
+ * @example
119
+ * server.getHealth().then((health) => {
120
+ * console.log("status:", health.status);
121
+ * });
122
+ */
123
+ getHealth(): Promise<Api.GetHealthResponse>;
124
+ /**
125
+ * Reads the current value of contract data ledger entries directly.
126
+ *
127
+ * Allows you to directly inspect the current state of a contract. This is a
128
+ * backup way to access your contract data which may not be available via
129
+ * events or {@link module:rpc.Server#simulateTransaction}.
130
+ *
131
+ * @param {string|Address|Contract} contract The contract ID containing the
132
+ * data to load as a strkey (`C...` form), a {@link Contract}, or an
133
+ * {@link Address} instance
134
+ * @param {xdr.ScVal} key The key of the contract data to load
135
+ * @param {module:rpc.Durability} [durability=Durability.Persistent] The "durability
136
+ * keyspace" that this ledger key belongs to, which is either 'temporary'
137
+ * or 'persistent' (the default), see {@link module:rpc.Durability}.
138
+ * @returns {Promise<Api.LedgerEntryResult>} The current data value
139
+ *
140
+ * @warning If the data entry in question is a 'temporary' entry, it's
141
+ * entirely possible that it has expired out of existence.
142
+ *
143
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgerEntries | getLedgerEntries docs}
144
+ *
145
+ * @example
146
+ * const contractId = "CCJZ5DGASBWQXR5MPFCJXMBI333XE5U3FSJTNQU7RIKE3P5GN2K2WYD5";
147
+ * const key = xdr.ScVal.scvSymbol("counter");
148
+ * server.getContractData(contractId, key, Durability.Temporary).then(data => {
149
+ * console.log("value:", data.val);
150
+ * console.log("liveUntilLedgerSeq:", data.liveUntilLedgerSeq);
151
+ * console.log("lastModified:", data.lastModifiedLedgerSeq);
152
+ * console.log("latestLedger:", data.latestLedger);
153
+ * });
154
+ */
155
+ getContractData(contract: string | Address | Contract, key: xdr.ScVal, durability?: Durability): Promise<Api.LedgerEntryResult>;
156
+ /**
157
+ * Retrieves the WASM bytecode for a given contract.
158
+ *
159
+ * This method allows you to fetch the WASM bytecode associated with a contract
160
+ * deployed on the Soroban network. The WASM bytecode represents the executable
161
+ * code of the contract.
162
+ *
163
+ * @param {string} contractId The contract ID containing the WASM bytecode to retrieve
164
+ * @returns {Promise<Buffer>} A Buffer containing the WASM bytecode
165
+ * @throws {Error} If the contract or its associated WASM bytecode cannot be
166
+ * found on the network.
167
+ *
168
+ * @example
169
+ * const contractId = "CCJZ5DGASBWQXR5MPFCJXMBI333XE5U3FSJTNQU7RIKE3P5GN2K2WYD5";
170
+ * server.getContractWasmByContractId(contractId).then(wasmBuffer => {
171
+ * console.log("WASM bytecode length:", wasmBuffer.length);
172
+ * // ... do something with the WASM bytecode ...
173
+ * }).catch(err => {
174
+ * console.error("Error fetching WASM bytecode:", err);
175
+ * });
176
+ */
177
+ getContractWasmByContractId(contractId: string): Promise<Buffer>;
178
+ /**
179
+ * Retrieves the WASM bytecode for a given contract hash.
180
+ *
181
+ * This method allows you to fetch the WASM bytecode associated with a contract
182
+ * deployed on the Soroban network using the contract's WASM hash. The WASM bytecode
183
+ * represents the executable code of the contract.
184
+ *
185
+ * @param {Buffer} wasmHash The WASM hash of the contract
186
+ * @returns {Promise<Buffer>} A Buffer containing the WASM bytecode
187
+ * @throws {Error} If the contract or its associated WASM bytecode cannot be
188
+ * found on the network.
189
+ *
190
+ * @example
191
+ * const wasmHash = Buffer.from("...");
192
+ * server.getContractWasmByHash(wasmHash).then(wasmBuffer => {
193
+ * console.log("WASM bytecode length:", wasmBuffer.length);
194
+ * // ... do something with the WASM bytecode ...
195
+ * }).catch(err => {
196
+ * console.error("Error fetching WASM bytecode:", err);
197
+ * });
198
+ */
199
+ getContractWasmByHash(wasmHash: Buffer | string, format?: undefined | "hex" | "base64"): Promise<Buffer>;
200
+ /**
201
+ * Reads the current value of arbitrary ledger entries directly.
202
+ *
203
+ * Allows you to directly inspect the current state of contracts, contract's
204
+ * code, accounts, or any other ledger entries.
205
+ *
206
+ * To fetch a contract's WASM byte-code, built the appropriate
207
+ * {@link xdr.LedgerKeyContractCode} ledger entry key (or see
208
+ * {@link Contract.getFootprint}).
209
+ *
210
+ * @param {xdr.ScVal[]} keys One or more ledger entry keys to load
211
+ * @returns {Promise<Api.GetLedgerEntriesResponse>} The current on-chain
212
+ * values for the given ledger keys
213
+ *
214
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLedgerEntries | getLedgerEntries docs}
215
+ * @see RpcServer._getLedgerEntries
216
+ * @example
217
+ * const contractId = "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM";
218
+ * const key = xdr.LedgerKey.contractData(new xdr.LedgerKeyContractData({
219
+ * contractId: StrKey.decodeContract(contractId),
220
+ * key: xdr.ScVal.scvSymbol("counter"),
221
+ * }));
222
+ *
223
+ * server.getLedgerEntries([key]).then(response => {
224
+ * const ledgerData = response.entries[0];
225
+ * console.log("key:", ledgerData.key);
226
+ * console.log("value:", ledgerData.val);
227
+ * console.log("liveUntilLedgerSeq:", ledgerData.liveUntilLedgerSeq);
228
+ * console.log("lastModified:", ledgerData.lastModifiedLedgerSeq);
229
+ * console.log("latestLedger:", response.latestLedger);
230
+ * });
231
+ */
232
+ getLedgerEntries(...keys: xdr.LedgerKey[]): Promise<Api.GetLedgerEntriesResponse>;
233
+ _getLedgerEntries(...keys: xdr.LedgerKey[]): Promise<Api.RawGetLedgerEntriesResponse>;
234
+ /**
235
+ * Poll for a particular transaction with certain parameters.
236
+ *
237
+ * After submitting a transaction, clients can use this to poll for
238
+ * transaction completion and return a definitive state of success or failure.
239
+ *
240
+ * @param {string} hash the transaction you're polling for
241
+ * @param {number} [opts.attempts] (optional) the number of attempts to make
242
+ * before returning the last-seen status. By default or on invalid inputs,
243
+ * try 5 times.
244
+ * @param {SleepStrategy} [opts.sleepStrategy] (optional) the amount of time
245
+ * to wait for between each attempt. By default, sleep for 1 second between
246
+ * each attempt.
247
+ *
248
+ * @return {Promise<Api.GetTransactionsResponse>} the response after a "found"
249
+ * response (which may be success or failure) or the last response obtained
250
+ * after polling the maximum number of specified attempts.
251
+ *
252
+ * @example
253
+ * const h = "c4515e3bdc0897f21cc5dbec8c82cf0a936d4741cb74a8e158eb51b9fb00411a";
254
+ * const txStatus = await server.pollTransaction(h, {
255
+ * attempts: 100, // I'm a maniac
256
+ * sleepStrategy: rpc.LinearSleepStrategy
257
+ * }); // this will take 5,050 seconds to complete
258
+ */
259
+ pollTransaction(hash: string, opts?: RpcServer.PollingOptions): Promise<Api.GetTransactionResponse>;
260
+ /**
261
+ * Fetch the details of a submitted transaction.
262
+ *
263
+ * After submitting a transaction, clients should poll this to tell when the
264
+ * transaction has completed.
265
+ *
266
+ * @param {string} hash Hex-encoded hash of the transaction to check
267
+ * @returns {Promise<Api.GetTransactionResponse>} The status, result, and
268
+ * other details about the transaction
269
+ *
270
+ * @see
271
+ * {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getTransaction | getTransaction docs}
272
+ *
273
+ * @example
274
+ * const transactionHash = "c4515e3bdc0897f21cc5dbec8c82cf0a936d4741cb74a8e158eb51b9fb00411a";
275
+ * server.getTransaction(transactionHash).then((tx) => {
276
+ * console.log("status:", tx.status);
277
+ * console.log("envelopeXdr:", tx.envelopeXdr);
278
+ * console.log("resultMetaXdr:", tx.resultMetaXdr);
279
+ * console.log("resultXdr:", tx.resultXdr);
280
+ * });
281
+ */
282
+ getTransaction(hash: string): Promise<Api.GetTransactionResponse>;
283
+ _getTransaction(hash: string): Promise<Api.RawGetTransactionResponse>;
284
+ /**
285
+ * Fetch transactions starting from a given start ledger or a cursor. The end ledger is the latest ledger
286
+ * in that RPC instance.
287
+ *
288
+ * @param {Api.GetTransactionsRequest} request - The request parameters.
289
+ * @returns {Promise<Api.GetTransactionsResponse>} - A promise that resolves to the transactions response.
290
+ *
291
+ * @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getTransactions
292
+ * @example
293
+ * server.getTransactions({
294
+ * startLedger: 10000,
295
+ * limit: 10,
296
+ * }).then((response) => {
297
+ * console.log("Transactions:", response.transactions);
298
+ * console.log("Latest Ledger:", response.latestLedger);
299
+ * console.log("Cursor:", response.cursor);
300
+ * });
301
+ */
302
+ getTransactions(request: Api.GetTransactionsRequest): Promise<Api.GetTransactionsResponse>;
303
+ private _getTransactions;
304
+ /**
305
+ * Fetch all events that match a given set of filters.
306
+ *
307
+ * The given filters (see {@link module:rpc.Api.EventFilter | Api.EventFilter}
308
+ * for detailed fields) are combined only in a logical OR fashion, and all of
309
+ * the fields in each filter are optional.
310
+ *
311
+ * To page through events, use the `pagingToken` field on the relevant
312
+ * {@link Api.EventResponse} object to set the `cursor` parameter.
313
+ *
314
+ * @param {module:rpc.Server.GetEventsRequest} request Event filters
315
+ * @returns {Promise<Api.GetEventsResponse>} A paginatable set of the events
316
+ * matching the given event filters
317
+ *
318
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getEvents | getEvents docs}
319
+ *
320
+ * @example
321
+ * server.getEvents({
322
+ * startLedger: 1000,
323
+ * endLedger: 2000,
324
+ * filters: [
325
+ * {
326
+ * type: "contract",
327
+ * contractIds: [ "deadb33f..." ],
328
+ * topics: [[ "AAAABQAAAAh0cmFuc2Zlcg==", "AAAAAQB6Mcc=", "*" ]]
329
+ * }, {
330
+ * type: "system",
331
+ * contractIds: [ "...c4f3b4b3..." ],
332
+ * topics: [[ "*" ], [ "*", "AAAAAQB6Mcc=" ]]
333
+ * }, {
334
+ * contractIds: [ "...c4f3b4b3..." ],
335
+ * topics: [[ "AAAABQAAAAh0cmFuc2Zlcg==" ]]
336
+ * }, {
337
+ * type: "diagnostic",
338
+ * topics: [[ "AAAAAQB6Mcc=" ]]
339
+ * }
340
+ * ],
341
+ * limit: 10,
342
+ * });
343
+ */
344
+ getEvents(request: RpcServer.GetEventsRequest): Promise<Api.GetEventsResponse>;
345
+ _getEvents(request: RpcServer.GetEventsRequest): Promise<Api.RawGetEventsResponse>;
346
+ /**
347
+ * Fetch metadata about the network this Soroban RPC server is connected to.
348
+ *
349
+ * @returns {Promise<Api.GetNetworkResponse>} Metadata about the current
350
+ * network this RPC server is connected to
351
+ *
352
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getNetwork | getNetwork docs}
353
+ *
354
+ * @example
355
+ * server.getNetwork().then((network) => {
356
+ * console.log("friendbotUrl:", network.friendbotUrl);
357
+ * console.log("passphrase:", network.passphrase);
358
+ * console.log("protocolVersion:", network.protocolVersion);
359
+ * });
360
+ */
361
+ getNetwork(): Promise<Api.GetNetworkResponse>;
362
+ /**
363
+ * Fetch the latest ledger meta info from network which this Soroban RPC
364
+ * server is connected to.
365
+ *
366
+ * @returns {Promise<Api.GetLatestLedgerResponse>} metadata about the
367
+ * latest ledger on the network that this RPC server is connected to
368
+ *
369
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/getLatestLedger | getLatestLedger docs}
370
+ *
371
+ * @example
372
+ * server.getLatestLedger().then((response) => {
373
+ * console.log("hash:", response.id);
374
+ * console.log("sequence:", response.sequence);
375
+ * console.log("protocolVersion:", response.protocolVersion);
376
+ * });
377
+ */
378
+ getLatestLedger(): Promise<Api.GetLatestLedgerResponse>;
379
+ /**
380
+ * Submit a trial contract invocation to get back return values, expected
381
+ * ledger footprint, expected authorizations, and expected costs.
382
+ *
383
+ * @param {Transaction | FeeBumpTransaction} tx the transaction to
384
+ * simulate, which should include exactly one operation (one of
385
+ * {@link xdr.InvokeHostFunctionOp}, {@link xdr.ExtendFootprintTTLOp}, or
386
+ * {@link xdr.RestoreFootprintOp}). Any provided footprint or auth
387
+ * information will be ignored.
388
+ * @returns {Promise<Api.SimulateTransactionResponse>} An object with the
389
+ * cost, footprint, result/auth requirements (if applicable), and error of
390
+ * the transaction
391
+ *
392
+ * @see {@link https://developers.stellar.org/docs/learn/fundamentals/stellar-data-structures/operations-and-transactions | transaction docs}
393
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/simulateTransaction | simulateTransaction docs}
394
+ * @see module:rpc.Server#prepareTransaction
395
+ * @see module:rpc.assembleTransaction
396
+ *
397
+ * @example
398
+ * const contractId = 'CA3D5KRYM6CB7OWQ6TWYRR3Z4T7GNZLKERYNZGGA5SOAOPIFY6YQGAXE';
399
+ * const contract = new StellarSdk.Contract(contractId);
400
+ *
401
+ * // Right now, this is just the default fee for this example.
402
+ * const fee = StellarSdk.BASE_FEE;
403
+ * const transaction = new StellarSdk.TransactionBuilder(account, { fee })
404
+ * // Uncomment the following line to build transactions for the live network. Be
405
+ * // sure to also change the horizon hostname.
406
+ * //.setNetworkPassphrase(StellarSdk.Networks.PUBLIC)
407
+ * .setNetworkPassphrase(StellarSdk.Networks.FUTURENET)
408
+ * .setTimeout(30) // valid for the next 30s
409
+ * // Add an operation to call increment() on the contract
410
+ * .addOperation(contract.call("increment"))
411
+ * .build();
412
+ *
413
+ * server.simulateTransaction(transaction).then((sim) => {
414
+ * console.log("cost:", sim.cost);
415
+ * console.log("result:", sim.result);
416
+ * console.log("error:", sim.error);
417
+ * console.log("latestLedger:", sim.latestLedger);
418
+ * });
419
+ */
420
+ simulateTransaction(tx: Transaction | FeeBumpTransaction, addlResources?: RpcServer.ResourceLeeway): Promise<Api.SimulateTransactionResponse>;
421
+ _simulateTransaction(transaction: Transaction | FeeBumpTransaction, addlResources?: RpcServer.ResourceLeeway): Promise<Api.RawSimulateTransactionResponse>;
422
+ /**
423
+ * Submit a trial contract invocation, first run a simulation of the contract
424
+ * invocation as defined on the incoming transaction, and apply the results to
425
+ * a new copy of the transaction which is then returned. Setting the ledger
426
+ * footprint and authorization, so the resulting transaction is ready for
427
+ * signing & sending.
428
+ *
429
+ * The returned transaction will also have an updated fee that is the sum of
430
+ * fee set on incoming transaction with the contract resource fees estimated
431
+ * from simulation. It is advisable to check the fee on returned transaction
432
+ * and validate or take appropriate measures for interaction with user to
433
+ * confirm it is acceptable.
434
+ *
435
+ * You can call the {@link module:rpc.Server#simulateTransaction} method
436
+ * directly first if you want to inspect estimated fees for a given
437
+ * transaction in detail first, then re-assemble it manually or via
438
+ * {@link module:rpc.assembleTransaction}.
439
+ *
440
+ * @param {Transaction | FeeBumpTransaction} tx the transaction to
441
+ * prepare. It should include exactly one operation, which must be one of
442
+ * {@link xdr.InvokeHostFunctionOp}, {@link xdr.ExtendFootprintTTLOp},
443
+ * or {@link xdr.RestoreFootprintOp}.
444
+ *
445
+ * Any provided footprint will be overwritten. However, if your operation
446
+ * has existing auth entries, they will be preferred over ALL auth entries
447
+ * from the simulation. In other words, if you include auth entries, you
448
+ * don't care about the auth returned from the simulation. Other fields
449
+ * (footprint, etc.) will be filled as normal.
450
+ * @returns {Promise<Transaction | FeeBumpTransaction>} A copy of the
451
+ * transaction with the expected authorizations (in the case of
452
+ * invocation), resources, and ledger footprints added. The transaction fee
453
+ * will also automatically be padded with the contract's minimum resource
454
+ * fees discovered from the simulation.
455
+ * @throws {jsonrpc.Error<any>|Error|Api.SimulateTransactionErrorResponse}
456
+ * If simulation fails
457
+ *
458
+ * @see module:rpc.assembleTransaction
459
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/simulateTransaction | simulateTransaction docs}
460
+ *
461
+ * @example
462
+ * const contractId = 'CA3D5KRYM6CB7OWQ6TWYRR3Z4T7GNZLKERYNZGGA5SOAOPIFY6YQGAXE';
463
+ * const contract = new StellarSdk.Contract(contractId);
464
+ *
465
+ * // Right now, this is just the default fee for this example.
466
+ * const fee = StellarSdk.BASE_FEE;
467
+ * const transaction = new StellarSdk.TransactionBuilder(account, { fee })
468
+ * // Uncomment the following line to build transactions for the live network. Be
469
+ * // sure to also change the horizon hostname.
470
+ * //.setNetworkPassphrase(StellarSdk.Networks.PUBLIC)
471
+ * .setNetworkPassphrase(StellarSdk.Networks.FUTURENET)
472
+ * .setTimeout(30) // valid for the next 30s
473
+ * // Add an operation to call increment() on the contract
474
+ * .addOperation(contract.call("increment"))
475
+ * .build();
476
+ *
477
+ * const preparedTransaction = await server.prepareTransaction(transaction);
478
+ *
479
+ * // Sign this transaction with the secret key
480
+ * // NOTE: signing is transaction is network specific. Test network transactions
481
+ * // won't work in the public network. To switch networks, use the Network object
482
+ * // as explained above (look for StellarSdk.Network).
483
+ * const sourceKeypair = StellarSdk.Keypair.fromSecret(sourceSecretKey);
484
+ * preparedTransaction.sign(sourceKeypair);
485
+ *
486
+ * server.sendTransaction(transaction).then(result => {
487
+ * console.log("hash:", result.hash);
488
+ * console.log("status:", result.status);
489
+ * console.log("errorResultXdr:", result.errorResultXdr);
490
+ * });
491
+ */
492
+ prepareTransaction(tx: Transaction | FeeBumpTransaction): Promise<Transaction<import("@stellar/stellar-base").Memo<import("@stellar/stellar-base").MemoType>, import("@stellar/stellar-base").Operation[]>>;
493
+ /**
494
+ * Submit a real transaction to the Stellar network.
495
+ *
496
+ * Unlike Horizon, Soroban RPC does not wait for transaction completion. It
497
+ * simply validates the transaction and enqueues it. Clients should call
498
+ * {@link module:rpc.Server#getTransaction} to learn about transaction
499
+ * success/failure.
500
+ *
501
+ * @param {Transaction | FeeBumpTransaction} transaction to submit
502
+ * @returns {Promise<Api.SendTransactionResponse>} the
503
+ * transaction id, status, and any error if available
504
+ *
505
+ * @see {@link https://developers.stellar.org/docs/learn/fundamentals/stellar-data-structures/operations-and-transactions | transaction docs}
506
+ * @see {@link https://developers.stellar.org/docs/data/rpc/api-reference/methods/sendTransaction | sendTransaction docs}
507
+ *
508
+ * @example
509
+ * const contractId = 'CA3D5KRYM6CB7OWQ6TWYRR3Z4T7GNZLKERYNZGGA5SOAOPIFY6YQGAXE';
510
+ * const contract = new StellarSdk.Contract(contractId);
511
+ *
512
+ * // Right now, this is just the default fee for this example.
513
+ * const fee = StellarSdk.BASE_FEE;
514
+ * const transaction = new StellarSdk.TransactionBuilder(account, { fee })
515
+ * // Uncomment the following line to build transactions for the live network. Be
516
+ * // sure to also change the horizon hostname.
517
+ * //.setNetworkPassphrase(StellarSdk.Networks.PUBLIC)
518
+ * .setNetworkPassphrase(StellarSdk.Networks.FUTURENET)
519
+ * .setTimeout(30) // valid for the next 30s
520
+ * // Add an operation to call increment() on the contract
521
+ * .addOperation(contract.call("increment"))
522
+ * .build();
523
+ *
524
+ * // Sign this transaction with the secret key
525
+ * // NOTE: signing is transaction is network specific. Test network transactions
526
+ * // won't work in the public network. To switch networks, use the Network object
527
+ * // as explained above (look for StellarSdk.Network).
528
+ * const sourceKeypair = StellarSdk.Keypair.fromSecret(sourceSecretKey);
529
+ * transaction.sign(sourceKeypair);
530
+ *
531
+ * server.sendTransaction(transaction).then((result) => {
532
+ * console.log("hash:", result.hash);
533
+ * console.log("status:", result.status);
534
+ * console.log("errorResultXdr:", result.errorResultXdr);
535
+ * });
536
+ */
537
+ sendTransaction(transaction: Transaction | FeeBumpTransaction): Promise<Api.SendTransactionResponse>;
538
+ _sendTransaction(transaction: Transaction | FeeBumpTransaction): Promise<Api.RawSendTransactionResponse>;
539
+ /**
540
+ * Fund a new account using the network's Friendbot faucet, if any.
541
+ *
542
+ * @param {string | Account} address The address or account instance that we
543
+ * want to create and fund with Friendbot
544
+ * @param {string} [friendbotUrl] Optionally, an explicit address for
545
+ * friendbot (by default: this calls the Soroban RPC
546
+ * {@link module:rpc.Server#getNetwork | getNetwork} method to try to
547
+ * discover this network's Friendbot url).
548
+ * @returns {Promise<Account>} An {@link Account} object for the created
549
+ * account, or the existing account if it's already funded with the
550
+ * populated sequence number (note that the account will not be "topped
551
+ * off" if it already exists)
552
+ * @throws If Friendbot is not configured on this network or request failure
553
+ *
554
+ * @see {@link https://developers.stellar.org/docs/learn/networks#friendbot | Friendbot docs}
555
+ * @see {@link module:Friendbot.Api.Response}
556
+ *
557
+ * @example
558
+ * server
559
+ * .requestAirdrop("GBZC6Y2Y7Q3ZQ2Y4QZJ2XZ3Z5YXZ6Z7Z2Y4QZJ2XZ3Z5YXZ6Z7Z2Y4")
560
+ * .then((accountCreated) => {
561
+ * console.log("accountCreated:", accountCreated);
562
+ * }).catch((error) => {
563
+ * console.error("error:", error);
564
+ * });
565
+ */
566
+ requestAirdrop(address: string | Pick<Account, 'accountId'>, friendbotUrl?: string): Promise<Account>;
567
+ /**
568
+ * Provides an analysis of the recent fee stats for regular and smart
569
+ * contract operations.
570
+ *
571
+ * @returns {Promise<Api.GetFeeStatsResponse>} the fee stats
572
+ * @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getFeeStats
573
+ */
574
+ getFeeStats(): Promise<Api.GetFeeStatsResponse>;
575
+ /**
576
+ * Provides information about the current version details of the Soroban RPC and captive-core
577
+ *
578
+ * @returns {Promise<Api.GetVersionInfoResponse>} the version info
579
+ * @see https://developers.stellar.org/docs/data/rpc/api-reference/methods/getVersionInfo
580
+ */
581
+ getVersionInfo(): Promise<Api.GetVersionInfoResponse>;
582
+ /**
583
+ * Returns a contract's balance of a particular SAC asset, if any.
584
+ *
585
+ * This is a convenience wrapper around {@link Server.getLedgerEntries}.
586
+ *
587
+ * @param {string} contractId the contract ID (string `C...`) whose
588
+ * balance of `sac` you want to know
589
+ * @param {Asset} sac the built-in SAC token (e.g. `USDC:GABC...`) that
590
+ * you are querying from the given `contract`.
591
+ * @param {string} [networkPassphrase] optionally, the network passphrase to
592
+ * which this token applies. If omitted, a request about network
593
+ * information will be made (see {@link getNetwork}), since contract IDs
594
+ * for assets are specific to a network. You can refer to {@link Networks}
595
+ * for a list of built-in passphrases, e.g., `Networks.TESTNET`.
596
+ *
597
+ * @returns {Promise<Api.BalanceResponse>}, which will contain the balance
598
+ * entry details if and only if the request returned a valid balance ledger
599
+ * entry. If it doesn't, the `balanceEntry` field will not exist.
600
+ *
601
+ * @throws {TypeError} If `contractId` is not a valid contract strkey (C...).
602
+ *
603
+ * @see getLedgerEntries
604
+ * @see https://developers.stellar.org/docs/tokens/stellar-asset-contract
605
+ *
606
+ * @example
607
+ * // assume `contractId` is some contract with an XLM balance
608
+ * // assume server is an instantiated `Server` instance.
609
+ * const entry = (await server.getSACBalance(
610
+ * new Address(contractId),
611
+ * Asset.native(),
612
+ * Networks.PUBLIC
613
+ * ));
614
+ *
615
+ * // assumes BigInt support:
616
+ * console.log(
617
+ * entry.balanceEntry ?
618
+ * BigInt(entry.balanceEntry.amount) :
619
+ * "Contract has no XLM");
620
+ */
621
+ getSACBalance(contractId: string, sac: Asset, networkPassphrase?: string): Promise<Api.BalanceResponse>;
622
+ }