xrpl 4.3.0 → 4.4.0-smartescrow.0

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 (310) hide show
  1. package/build/xrpl-latest-min.js +1 -1
  2. package/build/xrpl-latest-min.js.map +1 -1
  3. package/build/xrpl-latest.js +1293 -1596
  4. package/build/xrpl-latest.js.map +1 -1
  5. package/dist/npm/Wallet/defaultFaucets.d.ts +2 -1
  6. package/dist/npm/Wallet/defaultFaucets.d.ts.map +1 -1
  7. package/dist/npm/Wallet/defaultFaucets.js +3 -0
  8. package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
  9. package/dist/npm/client/index.d.ts +3 -3
  10. package/dist/npm/client/index.d.ts.map +1 -1
  11. package/dist/npm/client/index.js +10 -7
  12. package/dist/npm/client/index.js.map +1 -1
  13. package/dist/npm/client/partialPayment.d.ts.map +1 -1
  14. package/dist/npm/client/partialPayment.js +2 -2
  15. package/dist/npm/client/partialPayment.js.map +1 -1
  16. package/dist/npm/models/common/index.d.ts +1 -0
  17. package/dist/npm/models/common/index.d.ts.map +1 -1
  18. package/dist/npm/models/ledger/AccountRoot.d.ts +1 -1
  19. package/dist/npm/models/ledger/AccountRoot.d.ts.map +1 -1
  20. package/dist/npm/models/ledger/Escrow.d.ts +2 -0
  21. package/dist/npm/models/ledger/Escrow.d.ts.map +1 -1
  22. package/dist/npm/models/ledger/FeeSettings.d.ts +2 -0
  23. package/dist/npm/models/ledger/FeeSettings.d.ts.map +1 -1
  24. package/dist/npm/models/ledger/LedgerEntry.d.ts +3 -2
  25. package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
  26. package/dist/npm/models/ledger/Vault.d.ts +21 -0
  27. package/dist/npm/models/ledger/Vault.d.ts.map +1 -0
  28. package/dist/npm/models/ledger/Vault.js +3 -0
  29. package/dist/npm/models/ledger/Vault.js.map +1 -0
  30. package/dist/npm/models/ledger/index.d.ts +2 -1
  31. package/dist/npm/models/ledger/index.d.ts.map +1 -1
  32. package/dist/npm/models/ledger/index.js.map +1 -1
  33. package/dist/npm/models/methods/index.d.ts +5 -4
  34. package/dist/npm/models/methods/index.d.ts.map +1 -1
  35. package/dist/npm/models/methods/serverInfo.d.ts +6 -0
  36. package/dist/npm/models/methods/serverInfo.d.ts.map +1 -1
  37. package/dist/npm/models/methods/serverState.d.ts +6 -0
  38. package/dist/npm/models/methods/serverState.d.ts.map +1 -1
  39. package/dist/npm/models/methods/vaultInfo.d.ts +46 -0
  40. package/dist/npm/models/methods/vaultInfo.d.ts.map +1 -0
  41. package/dist/npm/models/methods/vaultInfo.js +3 -0
  42. package/dist/npm/models/methods/vaultInfo.js.map +1 -0
  43. package/dist/npm/models/transactions/AMMBid.d.ts.map +1 -1
  44. package/dist/npm/models/transactions/AMMBid.js +7 -5
  45. package/dist/npm/models/transactions/AMMBid.js.map +1 -1
  46. package/dist/npm/models/transactions/AMMClawback.d.ts.map +1 -1
  47. package/dist/npm/models/transactions/AMMClawback.js +5 -6
  48. package/dist/npm/models/transactions/AMMClawback.js.map +1 -1
  49. package/dist/npm/models/transactions/AMMDelete.d.ts.map +1 -1
  50. package/dist/npm/models/transactions/AMMDelete.js +2 -2
  51. package/dist/npm/models/transactions/AMMDelete.js.map +1 -1
  52. package/dist/npm/models/transactions/AMMDeposit.js +3 -3
  53. package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
  54. package/dist/npm/models/transactions/AMMVote.d.ts.map +1 -1
  55. package/dist/npm/models/transactions/AMMVote.js +2 -2
  56. package/dist/npm/models/transactions/AMMVote.js.map +1 -1
  57. package/dist/npm/models/transactions/AMMWithdraw.js +3 -3
  58. package/dist/npm/models/transactions/AMMWithdraw.js.map +1 -1
  59. package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -1
  60. package/dist/npm/models/transactions/MPTokenIssuanceCreate.js +3 -3
  61. package/dist/npm/models/transactions/MPTokenIssuanceCreate.js.map +1 -1
  62. package/dist/npm/models/transactions/MPTokenIssuanceSet.js +4 -4
  63. package/dist/npm/models/transactions/MPTokenIssuanceSet.js.map +1 -1
  64. package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  65. package/dist/npm/models/transactions/NFTokenCancelOffer.js +1 -1
  66. package/dist/npm/models/transactions/NFTokenCancelOffer.js.map +1 -1
  67. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  68. package/dist/npm/models/transactions/NFTokenCreateOffer.js +6 -2
  69. package/dist/npm/models/transactions/NFTokenCreateOffer.js.map +1 -1
  70. package/dist/npm/models/transactions/checkCreate.d.ts.map +1 -1
  71. package/dist/npm/models/transactions/checkCreate.js +1 -2
  72. package/dist/npm/models/transactions/checkCreate.js.map +1 -1
  73. package/dist/npm/models/transactions/clawback.d.ts +2 -2
  74. package/dist/npm/models/transactions/clawback.d.ts.map +1 -1
  75. package/dist/npm/models/transactions/clawback.js +4 -6
  76. package/dist/npm/models/transactions/clawback.js.map +1 -1
  77. package/dist/npm/models/transactions/common.d.ts +9 -4
  78. package/dist/npm/models/transactions/common.d.ts.map +1 -1
  79. package/dist/npm/models/transactions/common.js +51 -28
  80. package/dist/npm/models/transactions/common.js.map +1 -1
  81. package/dist/npm/models/transactions/escrowCreate.d.ts +2 -0
  82. package/dist/npm/models/transactions/escrowCreate.d.ts.map +1 -1
  83. package/dist/npm/models/transactions/escrowCreate.js +4 -2
  84. package/dist/npm/models/transactions/escrowCreate.js.map +1 -1
  85. package/dist/npm/models/transactions/escrowFinish.d.ts +1 -0
  86. package/dist/npm/models/transactions/escrowFinish.d.ts.map +1 -1
  87. package/dist/npm/models/transactions/escrowFinish.js.map +1 -1
  88. package/dist/npm/models/transactions/index.d.ts +8 -2
  89. package/dist/npm/models/transactions/index.d.ts.map +1 -1
  90. package/dist/npm/models/transactions/index.js +4 -1
  91. package/dist/npm/models/transactions/index.js.map +1 -1
  92. package/dist/npm/models/transactions/oracleSet.d.ts.map +1 -1
  93. package/dist/npm/models/transactions/oracleSet.js +22 -21
  94. package/dist/npm/models/transactions/oracleSet.js.map +1 -1
  95. package/dist/npm/models/transactions/payment.d.ts +1 -0
  96. package/dist/npm/models/transactions/payment.d.ts.map +1 -1
  97. package/dist/npm/models/transactions/payment.js +6 -4
  98. package/dist/npm/models/transactions/payment.js.map +1 -1
  99. package/dist/npm/models/transactions/signerListSet.d.ts.map +1 -1
  100. package/dist/npm/models/transactions/signerListSet.js +10 -16
  101. package/dist/npm/models/transactions/signerListSet.js.map +1 -1
  102. package/dist/npm/models/transactions/transaction.d.ts +7 -1
  103. package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
  104. package/dist/npm/models/transactions/transaction.js +28 -35
  105. package/dist/npm/models/transactions/transaction.js.map +1 -1
  106. package/dist/npm/models/transactions/vaultClawback.d.ts +10 -0
  107. package/dist/npm/models/transactions/vaultClawback.d.ts.map +1 -0
  108. package/dist/npm/models/transactions/vaultClawback.js +12 -0
  109. package/dist/npm/models/transactions/vaultClawback.js.map +1 -0
  110. package/dist/npm/models/transactions/vaultCreate.d.ts +24 -0
  111. package/dist/npm/models/transactions/vaultCreate.d.ts.map +1 -0
  112. package/dist/npm/models/transactions/vaultCreate.js +51 -0
  113. package/dist/npm/models/transactions/vaultCreate.js.map +1 -0
  114. package/dist/npm/models/transactions/vaultDelete.d.ts +7 -0
  115. package/dist/npm/models/transactions/vaultDelete.d.ts.map +1 -0
  116. package/dist/npm/models/transactions/vaultDelete.js +10 -0
  117. package/dist/npm/models/transactions/vaultDelete.js.map +1 -0
  118. package/dist/npm/models/transactions/vaultDeposit.d.ts +9 -0
  119. package/dist/npm/models/transactions/vaultDeposit.d.ts.map +1 -0
  120. package/dist/npm/models/transactions/vaultDeposit.js +11 -0
  121. package/dist/npm/models/transactions/vaultDeposit.js.map +1 -0
  122. package/dist/npm/models/transactions/vaultSet.d.ts +10 -0
  123. package/dist/npm/models/transactions/vaultSet.d.ts.map +1 -0
  124. package/dist/npm/models/transactions/vaultSet.js +25 -0
  125. package/dist/npm/models/transactions/vaultSet.js.map +1 -0
  126. package/dist/npm/models/transactions/vaultWithdraw.d.ts +10 -0
  127. package/dist/npm/models/transactions/vaultWithdraw.d.ts.map +1 -0
  128. package/dist/npm/models/transactions/vaultWithdraw.js +12 -0
  129. package/dist/npm/models/transactions/vaultWithdraw.js.map +1 -0
  130. package/dist/npm/models/utils/flags.d.ts.map +1 -1
  131. package/dist/npm/models/utils/flags.js +2 -0
  132. package/dist/npm/models/utils/flags.js.map +1 -1
  133. package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
  134. package/dist/npm/src/Wallet/defaultFaucets.d.ts +2 -1
  135. package/dist/npm/src/Wallet/defaultFaucets.d.ts.map +1 -1
  136. package/dist/npm/src/Wallet/defaultFaucets.js +3 -0
  137. package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
  138. package/dist/npm/src/client/index.d.ts +3 -3
  139. package/dist/npm/src/client/index.d.ts.map +1 -1
  140. package/dist/npm/src/client/index.js +10 -7
  141. package/dist/npm/src/client/index.js.map +1 -1
  142. package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
  143. package/dist/npm/src/client/partialPayment.js +2 -2
  144. package/dist/npm/src/client/partialPayment.js.map +1 -1
  145. package/dist/npm/src/models/common/index.d.ts +1 -0
  146. package/dist/npm/src/models/common/index.d.ts.map +1 -1
  147. package/dist/npm/src/models/ledger/AccountRoot.d.ts +1 -1
  148. package/dist/npm/src/models/ledger/AccountRoot.d.ts.map +1 -1
  149. package/dist/npm/src/models/ledger/Escrow.d.ts +2 -0
  150. package/dist/npm/src/models/ledger/Escrow.d.ts.map +1 -1
  151. package/dist/npm/src/models/ledger/FeeSettings.d.ts +2 -0
  152. package/dist/npm/src/models/ledger/FeeSettings.d.ts.map +1 -1
  153. package/dist/npm/src/models/ledger/LedgerEntry.d.ts +3 -2
  154. package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
  155. package/dist/npm/src/models/ledger/Vault.d.ts +21 -0
  156. package/dist/npm/src/models/ledger/Vault.d.ts.map +1 -0
  157. package/dist/npm/src/models/ledger/Vault.js +3 -0
  158. package/dist/npm/src/models/ledger/Vault.js.map +1 -0
  159. package/dist/npm/src/models/ledger/index.d.ts +2 -1
  160. package/dist/npm/src/models/ledger/index.d.ts.map +1 -1
  161. package/dist/npm/src/models/ledger/index.js.map +1 -1
  162. package/dist/npm/src/models/methods/index.d.ts +5 -4
  163. package/dist/npm/src/models/methods/index.d.ts.map +1 -1
  164. package/dist/npm/src/models/methods/serverInfo.d.ts +6 -0
  165. package/dist/npm/src/models/methods/serverInfo.d.ts.map +1 -1
  166. package/dist/npm/src/models/methods/serverState.d.ts +6 -0
  167. package/dist/npm/src/models/methods/serverState.d.ts.map +1 -1
  168. package/dist/npm/src/models/methods/vaultInfo.d.ts +46 -0
  169. package/dist/npm/src/models/methods/vaultInfo.d.ts.map +1 -0
  170. package/dist/npm/src/models/methods/vaultInfo.js +3 -0
  171. package/dist/npm/src/models/methods/vaultInfo.js.map +1 -0
  172. package/dist/npm/src/models/transactions/AMMBid.d.ts.map +1 -1
  173. package/dist/npm/src/models/transactions/AMMBid.js +7 -5
  174. package/dist/npm/src/models/transactions/AMMBid.js.map +1 -1
  175. package/dist/npm/src/models/transactions/AMMClawback.d.ts.map +1 -1
  176. package/dist/npm/src/models/transactions/AMMClawback.js +5 -6
  177. package/dist/npm/src/models/transactions/AMMClawback.js.map +1 -1
  178. package/dist/npm/src/models/transactions/AMMDelete.d.ts.map +1 -1
  179. package/dist/npm/src/models/transactions/AMMDelete.js +2 -2
  180. package/dist/npm/src/models/transactions/AMMDelete.js.map +1 -1
  181. package/dist/npm/src/models/transactions/AMMDeposit.js +3 -3
  182. package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
  183. package/dist/npm/src/models/transactions/AMMVote.d.ts.map +1 -1
  184. package/dist/npm/src/models/transactions/AMMVote.js +2 -2
  185. package/dist/npm/src/models/transactions/AMMVote.js.map +1 -1
  186. package/dist/npm/src/models/transactions/AMMWithdraw.js +3 -3
  187. package/dist/npm/src/models/transactions/AMMWithdraw.js.map +1 -1
  188. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -1
  189. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js +3 -3
  190. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js.map +1 -1
  191. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js +4 -4
  192. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js.map +1 -1
  193. package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  194. package/dist/npm/src/models/transactions/NFTokenCancelOffer.js +1 -1
  195. package/dist/npm/src/models/transactions/NFTokenCancelOffer.js.map +1 -1
  196. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  197. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js +6 -2
  198. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js.map +1 -1
  199. package/dist/npm/src/models/transactions/checkCreate.d.ts.map +1 -1
  200. package/dist/npm/src/models/transactions/checkCreate.js +1 -2
  201. package/dist/npm/src/models/transactions/checkCreate.js.map +1 -1
  202. package/dist/npm/src/models/transactions/clawback.d.ts +2 -2
  203. package/dist/npm/src/models/transactions/clawback.d.ts.map +1 -1
  204. package/dist/npm/src/models/transactions/clawback.js +4 -6
  205. package/dist/npm/src/models/transactions/clawback.js.map +1 -1
  206. package/dist/npm/src/models/transactions/common.d.ts +9 -4
  207. package/dist/npm/src/models/transactions/common.d.ts.map +1 -1
  208. package/dist/npm/src/models/transactions/common.js +51 -28
  209. package/dist/npm/src/models/transactions/common.js.map +1 -1
  210. package/dist/npm/src/models/transactions/escrowCreate.d.ts +2 -0
  211. package/dist/npm/src/models/transactions/escrowCreate.d.ts.map +1 -1
  212. package/dist/npm/src/models/transactions/escrowCreate.js +4 -2
  213. package/dist/npm/src/models/transactions/escrowCreate.js.map +1 -1
  214. package/dist/npm/src/models/transactions/escrowFinish.d.ts +1 -0
  215. package/dist/npm/src/models/transactions/escrowFinish.d.ts.map +1 -1
  216. package/dist/npm/src/models/transactions/escrowFinish.js.map +1 -1
  217. package/dist/npm/src/models/transactions/index.d.ts +8 -2
  218. package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
  219. package/dist/npm/src/models/transactions/index.js +4 -1
  220. package/dist/npm/src/models/transactions/index.js.map +1 -1
  221. package/dist/npm/src/models/transactions/oracleSet.d.ts.map +1 -1
  222. package/dist/npm/src/models/transactions/oracleSet.js +22 -21
  223. package/dist/npm/src/models/transactions/oracleSet.js.map +1 -1
  224. package/dist/npm/src/models/transactions/payment.d.ts +1 -0
  225. package/dist/npm/src/models/transactions/payment.d.ts.map +1 -1
  226. package/dist/npm/src/models/transactions/payment.js +6 -4
  227. package/dist/npm/src/models/transactions/payment.js.map +1 -1
  228. package/dist/npm/src/models/transactions/signerListSet.d.ts.map +1 -1
  229. package/dist/npm/src/models/transactions/signerListSet.js +10 -16
  230. package/dist/npm/src/models/transactions/signerListSet.js.map +1 -1
  231. package/dist/npm/src/models/transactions/transaction.d.ts +7 -1
  232. package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
  233. package/dist/npm/src/models/transactions/transaction.js +28 -35
  234. package/dist/npm/src/models/transactions/transaction.js.map +1 -1
  235. package/dist/npm/src/models/transactions/vaultClawback.d.ts +10 -0
  236. package/dist/npm/src/models/transactions/vaultClawback.d.ts.map +1 -0
  237. package/dist/npm/src/models/transactions/vaultClawback.js +12 -0
  238. package/dist/npm/src/models/transactions/vaultClawback.js.map +1 -0
  239. package/dist/npm/src/models/transactions/vaultCreate.d.ts +24 -0
  240. package/dist/npm/src/models/transactions/vaultCreate.d.ts.map +1 -0
  241. package/dist/npm/src/models/transactions/vaultCreate.js +51 -0
  242. package/dist/npm/src/models/transactions/vaultCreate.js.map +1 -0
  243. package/dist/npm/src/models/transactions/vaultDelete.d.ts +7 -0
  244. package/dist/npm/src/models/transactions/vaultDelete.d.ts.map +1 -0
  245. package/dist/npm/src/models/transactions/vaultDelete.js +10 -0
  246. package/dist/npm/src/models/transactions/vaultDelete.js.map +1 -0
  247. package/dist/npm/src/models/transactions/vaultDeposit.d.ts +9 -0
  248. package/dist/npm/src/models/transactions/vaultDeposit.d.ts.map +1 -0
  249. package/dist/npm/src/models/transactions/vaultDeposit.js +11 -0
  250. package/dist/npm/src/models/transactions/vaultDeposit.js.map +1 -0
  251. package/dist/npm/src/models/transactions/vaultSet.d.ts +10 -0
  252. package/dist/npm/src/models/transactions/vaultSet.d.ts.map +1 -0
  253. package/dist/npm/src/models/transactions/vaultSet.js +25 -0
  254. package/dist/npm/src/models/transactions/vaultSet.js.map +1 -0
  255. package/dist/npm/src/models/transactions/vaultWithdraw.d.ts +10 -0
  256. package/dist/npm/src/models/transactions/vaultWithdraw.d.ts.map +1 -0
  257. package/dist/npm/src/models/transactions/vaultWithdraw.js +12 -0
  258. package/dist/npm/src/models/transactions/vaultWithdraw.js.map +1 -0
  259. package/dist/npm/src/models/utils/flags.d.ts.map +1 -1
  260. package/dist/npm/src/models/utils/flags.js +2 -0
  261. package/dist/npm/src/models/utils/flags.js.map +1 -1
  262. package/dist/npm/src/sugar/autofill.d.ts.map +1 -1
  263. package/dist/npm/src/sugar/autofill.js +32 -11
  264. package/dist/npm/src/sugar/autofill.js.map +1 -1
  265. package/dist/npm/sugar/autofill.d.ts.map +1 -1
  266. package/dist/npm/sugar/autofill.js +32 -11
  267. package/dist/npm/sugar/autofill.js.map +1 -1
  268. package/package.json +5 -4
  269. package/src/Wallet/defaultFaucets.ts +5 -0
  270. package/src/client/index.ts +43 -38
  271. package/src/client/partialPayment.ts +1 -2
  272. package/src/models/common/index.ts +2 -0
  273. package/src/models/ledger/AccountRoot.ts +1 -1
  274. package/src/models/ledger/Escrow.ts +4 -0
  275. package/src/models/ledger/FeeSettings.ts +4 -0
  276. package/src/models/ledger/LedgerEntry.ts +3 -0
  277. package/src/models/ledger/Vault.ts +83 -0
  278. package/src/models/ledger/index.ts +3 -1
  279. package/src/models/methods/index.ts +10 -0
  280. package/src/models/methods/serverInfo.ts +9 -0
  281. package/src/models/methods/serverState.ts +10 -0
  282. package/src/models/methods/vaultInfo.ts +193 -0
  283. package/src/models/transactions/AMMBid.ts +12 -20
  284. package/src/models/transactions/AMMClawback.ts +8 -11
  285. package/src/models/transactions/AMMDelete.ts +7 -3
  286. package/src/models/transactions/AMMDeposit.ts +4 -4
  287. package/src/models/transactions/AMMVote.ts +7 -3
  288. package/src/models/transactions/AMMWithdraw.ts +4 -4
  289. package/src/models/transactions/MPTokenIssuanceCreate.ts +3 -1
  290. package/src/models/transactions/MPTokenIssuanceSet.ts +1 -1
  291. package/src/models/transactions/NFTokenCancelOffer.ts +2 -2
  292. package/src/models/transactions/NFTokenCreateOffer.ts +8 -4
  293. package/src/models/transactions/checkCreate.ts +2 -6
  294. package/src/models/transactions/clawback.ts +9 -10
  295. package/src/models/transactions/common.ts +114 -41
  296. package/src/models/transactions/escrowCreate.ts +10 -2
  297. package/src/models/transactions/escrowFinish.ts +2 -0
  298. package/src/models/transactions/index.ts +13 -2
  299. package/src/models/transactions/oracleSet.ts +32 -39
  300. package/src/models/transactions/payment.ts +13 -7
  301. package/src/models/transactions/signerListSet.ts +21 -21
  302. package/src/models/transactions/transaction.ts +46 -43
  303. package/src/models/transactions/vaultClawback.ts +55 -0
  304. package/src/models/transactions/vaultCreate.ts +142 -0
  305. package/src/models/transactions/vaultDelete.ts +32 -0
  306. package/src/models/transactions/vaultDeposit.ts +41 -0
  307. package/src/models/transactions/vaultSet.ts +71 -0
  308. package/src/models/transactions/vaultWithdraw.ts +50 -0
  309. package/src/models/utils/flags.ts +2 -0
  310. package/src/sugar/autofill.ts +44 -31
@@ -0,0 +1,193 @@
1
+ import { Currency } from '../common'
2
+
3
+ import { BaseRequest, BaseResponse } from './baseMethod'
4
+
5
+ /**
6
+ * The `vault_info` method gets information about a Vault instance.
7
+ * Returns an {@link VaultInfoResponse}.
8
+ *
9
+ * @category Requests
10
+ */
11
+ export interface VaultInfoRequest extends BaseRequest {
12
+ command: 'vault_info'
13
+
14
+ /**
15
+ * The object ID of the Vault to be returned.
16
+ */
17
+ vault_id?: string
18
+
19
+ /**
20
+ * ID of the Vault Owner account.
21
+ */
22
+ owner?: string
23
+
24
+ /**
25
+ * Sequence number of the vault entry.
26
+ */
27
+ seq?: number
28
+ }
29
+
30
+ /**
31
+ * Response expected from an {@link VaultInfoRequest}.
32
+ *
33
+ * @category Responses
34
+ */
35
+ export interface VaultInfoResponse extends BaseResponse {
36
+ result: {
37
+ vault: {
38
+ /**
39
+ * The pseudo-account ID of the vault.
40
+ */
41
+ Account: string
42
+
43
+ /**
44
+ * Object representing the asset held in the vault.
45
+ */
46
+ Asset: Currency
47
+
48
+ /**
49
+ * Amount of assets currently available for withdrawal.
50
+ */
51
+ AssetsAvailable: string
52
+
53
+ /**
54
+ * Total amount of assets in the vault.
55
+ */
56
+ AssetsTotal: string
57
+
58
+ /**
59
+ * Ledger entry type, always "Vault".
60
+ */
61
+ LedgerEntryType: 'Vault'
62
+
63
+ /**
64
+ * ID of the Vault Owner account.
65
+ */
66
+ Owner: string
67
+
68
+ /**
69
+ * Transaction ID of the last modification to this vault.
70
+ */
71
+ PreviousTxnID: string
72
+
73
+ /**
74
+ * Ledger sequence number of the last transaction modifying this vault.
75
+ */
76
+ PreviousTxnLgrSeq: number
77
+
78
+ /**
79
+ * Sequence number of the vault entry.
80
+ */
81
+ Sequence: number
82
+
83
+ /**
84
+ * Unique index of the vault ledger entry.
85
+ */
86
+ index: string
87
+
88
+ /**
89
+ * Object containing details about issued shares.
90
+ */
91
+ shares: {
92
+ /**
93
+ * The ID of the Issuer of the Share. It will always be the pseudo-account ID.
94
+ */
95
+ Issuer: string
96
+
97
+ /**
98
+ * Ledger entry type, always "MPTokenIssuance".
99
+ */
100
+ LedgerEntryType: string
101
+
102
+ /**
103
+ * Total outstanding shares issued.
104
+ */
105
+ OutstandingAmount: string
106
+
107
+ /**
108
+ * Transaction ID of the last modification to the shares issuance.
109
+ */
110
+ PreviousTxnID: string
111
+
112
+ /**
113
+ * Ledger sequence number of the last transaction modifying the shares issuance.
114
+ */
115
+ PreviousTxnLgrSeq: number
116
+
117
+ /**
118
+ * Sequence number of the shares issuance entry.
119
+ */
120
+ Sequence: number
121
+
122
+ /**
123
+ * Unique index of the shares ledger entry.
124
+ */
125
+ index: string
126
+
127
+ /**
128
+ * Identifier for the owner node of the shares.
129
+ */
130
+ OwnerNode?: string
131
+
132
+ /**
133
+ * The ID of the MPTokenIssuance object. It will always be equal to vault.ShareMPTID.
134
+ */
135
+ mpt_issuance_id?: string
136
+
137
+ /**
138
+ * The PermissionedDomain object ID associated with the shares of this Vault.
139
+ */
140
+ DomainID?: string
141
+
142
+ /**
143
+ * Bit-field flags associated with the shares issuance.
144
+ */
145
+ Flags?: number
146
+ }
147
+
148
+ /**
149
+ * Unrealized loss associated with the vault.
150
+ */
151
+ LossUnrealized?: string
152
+
153
+ /**
154
+ * Identifier for the owner node in the ledger tree.
155
+ */
156
+ OwnerNode?: string
157
+
158
+ /**
159
+ * Multi-purpose token ID associated with this vault.
160
+ */
161
+ ShareMPTID?: string
162
+
163
+ /**
164
+ * Policy defining withdrawal conditions.
165
+ */
166
+ WithdrawalPolicy?: number
167
+
168
+ /**
169
+ * Flags
170
+ */
171
+ Flags?: number
172
+ }
173
+
174
+ /**
175
+ * The identifying hash of the ledger that was used to generate this
176
+ * response.
177
+ */
178
+ ledger_hash?: string
179
+
180
+ /**
181
+ * The ledger index of the ledger version that was used to generate this
182
+ * response.
183
+ */
184
+ ledger_index?: number
185
+
186
+ /**
187
+ * If included and set to true, the information in this response comes from
188
+ * a validated ledger version. Otherwise, the information is subject to
189
+ * change.
190
+ */
191
+ validated?: boolean
192
+ }
193
+ }
@@ -4,7 +4,9 @@ import { AuthAccount, Currency, IssuedCurrencyAmount } from '../common'
4
4
  import {
5
5
  BaseTransaction,
6
6
  isAmount,
7
- isCurrency,
7
+ isArray,
8
+ isIssuedCurrency,
9
+ isRecord,
8
10
  validateBaseTransaction,
9
11
  } from './common'
10
12
 
@@ -65,7 +67,7 @@ export function validateAMMBid(tx: Record<string, unknown>): void {
65
67
  throw new ValidationError('AMMBid: missing field Asset')
66
68
  }
67
69
 
68
- if (!isCurrency(tx.Asset)) {
70
+ if (!isIssuedCurrency(tx.Asset)) {
69
71
  throw new ValidationError('AMMBid: Asset must be a Currency')
70
72
  }
71
73
 
@@ -73,7 +75,7 @@ export function validateAMMBid(tx: Record<string, unknown>): void {
73
75
  throw new ValidationError('AMMBid: missing field Asset2')
74
76
  }
75
77
 
76
- if (!isCurrency(tx.Asset2)) {
78
+ if (!isIssuedCurrency(tx.Asset2)) {
77
79
  throw new ValidationError('AMMBid: Asset2 must be a Currency')
78
80
  }
79
81
 
@@ -86,7 +88,7 @@ export function validateAMMBid(tx: Record<string, unknown>): void {
86
88
  }
87
89
 
88
90
  if (tx.AuthAccounts != null) {
89
- if (!Array.isArray(tx.AuthAccounts)) {
91
+ if (!isArray(tx.AuthAccounts)) {
90
92
  throw new ValidationError(
91
93
  `AMMBid: AuthAccounts must be an AuthAccount array`,
92
94
  )
@@ -96,37 +98,27 @@ export function validateAMMBid(tx: Record<string, unknown>): void {
96
98
  `AMMBid: AuthAccounts length must not be greater than ${MAX_AUTH_ACCOUNTS}`,
97
99
  )
98
100
  }
99
- validateAuthAccounts(
100
- tx.Account,
101
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- Only used by JS
102
- tx.AuthAccounts as Array<Record<string, unknown>>,
103
- )
101
+ validateAuthAccounts(tx.Account, tx.AuthAccounts)
104
102
  }
105
103
  }
106
104
 
107
105
  function validateAuthAccounts(
108
106
  senderAddress: string,
109
- authAccounts: Array<Record<string, unknown>>,
107
+ authAccounts: unknown[],
110
108
  ): boolean {
111
109
  for (const authAccount of authAccounts) {
112
- if (
113
- authAccount.AuthAccount == null ||
114
- typeof authAccount.AuthAccount !== 'object'
115
- ) {
110
+ if (!isRecord(authAccount)) {
111
+ throw new ValidationError(`AMMBid: invalid AuthAccounts`)
112
+ }
113
+ if (!isRecord(authAccount.AuthAccount)) {
116
114
  throw new ValidationError(`AMMBid: invalid AuthAccounts`)
117
115
  }
118
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- used for null check
119
- // @ts-expect-error -- used for null check
120
116
  if (authAccount.AuthAccount.Account == null) {
121
117
  throw new ValidationError(`AMMBid: invalid AuthAccounts`)
122
118
  }
123
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- used for null check
124
- // @ts-expect-error -- used for null check
125
119
  if (typeof authAccount.AuthAccount.Account !== 'string') {
126
120
  throw new ValidationError(`AMMBid: invalid AuthAccounts`)
127
121
  }
128
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- used for null check
129
- // @ts-expect-error -- used for null check
130
122
  if (authAccount.AuthAccount.Account === senderAddress) {
131
123
  throw new ValidationError(
132
124
  `AMMBid: AuthAccounts must not include sender's address`,
@@ -6,8 +6,8 @@ import {
6
6
  BaseTransaction,
7
7
  GlobalFlagsInterface,
8
8
  isAccount,
9
- isAmount,
10
- isCurrency,
9
+ isIssuedCurrency,
10
+ isIssuedCurrencyAmount,
11
11
  validateBaseTransaction,
12
12
  validateOptionalField,
13
13
  validateRequiredField,
@@ -81,12 +81,9 @@ export function validateAMMClawback(tx: Record<string, unknown>): void {
81
81
 
82
82
  validateRequiredField(tx, 'Holder', isAccount)
83
83
 
84
- validateRequiredField(tx, 'Asset', isCurrency)
84
+ validateRequiredField(tx, 'Asset', isIssuedCurrency)
85
85
 
86
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- required
87
- const asset = tx.Asset as IssuedCurrency
88
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- required
89
- const amount = tx.Amount as IssuedCurrencyAmount
86
+ const asset = tx.Asset
90
87
 
91
88
  if (tx.Holder === asset.issuer) {
92
89
  throw new ValidationError(
@@ -100,18 +97,18 @@ export function validateAMMClawback(tx: Record<string, unknown>): void {
100
97
  )
101
98
  }
102
99
 
103
- validateRequiredField(tx, 'Asset2', isCurrency)
100
+ validateRequiredField(tx, 'Asset2', isIssuedCurrency)
104
101
 
105
- validateOptionalField(tx, 'Amount', isAmount)
102
+ validateOptionalField(tx, 'Amount', isIssuedCurrencyAmount)
106
103
 
107
104
  if (tx.Amount != null) {
108
- if (amount.currency !== asset.currency) {
105
+ if (tx.Amount.currency !== asset.currency) {
109
106
  throw new ValidationError(
110
107
  'AMMClawback: Amount.currency must match Asset.currency',
111
108
  )
112
109
  }
113
110
 
114
- if (amount.issuer !== asset.issuer) {
111
+ if (tx.Amount.issuer !== asset.issuer) {
115
112
  throw new ValidationError(
116
113
  'AMMClawback: Amount.issuer must match Amount.issuer',
117
114
  )
@@ -1,7 +1,11 @@
1
1
  import { ValidationError } from '../../errors'
2
2
  import { Currency } from '../common'
3
3
 
4
- import { BaseTransaction, isCurrency, validateBaseTransaction } from './common'
4
+ import {
5
+ BaseTransaction,
6
+ isIssuedCurrency,
7
+ validateBaseTransaction,
8
+ } from './common'
5
9
 
6
10
  /**
7
11
  * Delete an empty Automated Market Maker (AMM) instance that could not be fully deleted automatically.
@@ -41,7 +45,7 @@ export function validateAMMDelete(tx: Record<string, unknown>): void {
41
45
  throw new ValidationError('AMMDelete: missing field Asset')
42
46
  }
43
47
 
44
- if (!isCurrency(tx.Asset)) {
48
+ if (!isIssuedCurrency(tx.Asset)) {
45
49
  throw new ValidationError('AMMDelete: Asset must be a Currency')
46
50
  }
47
51
 
@@ -49,7 +53,7 @@ export function validateAMMDelete(tx: Record<string, unknown>): void {
49
53
  throw new ValidationError('AMMDelete: missing field Asset2')
50
54
  }
51
55
 
52
- if (!isCurrency(tx.Asset2)) {
56
+ if (!isIssuedCurrency(tx.Asset2)) {
53
57
  throw new ValidationError('AMMDelete: Asset2 must be a Currency')
54
58
  }
55
59
  }
@@ -5,8 +5,8 @@ import {
5
5
  BaseTransaction,
6
6
  GlobalFlagsInterface,
7
7
  isAmount,
8
- isCurrency,
9
8
  isIssuedCurrency,
9
+ isIssuedCurrencyAmount,
10
10
  validateBaseTransaction,
11
11
  } from './common'
12
12
 
@@ -89,7 +89,7 @@ export function validateAMMDeposit(tx: Record<string, unknown>): void {
89
89
  throw new ValidationError('AMMDeposit: missing field Asset')
90
90
  }
91
91
 
92
- if (!isCurrency(tx.Asset)) {
92
+ if (!isIssuedCurrency(tx.Asset)) {
93
93
  throw new ValidationError('AMMDeposit: Asset must be a Currency')
94
94
  }
95
95
 
@@ -97,7 +97,7 @@ export function validateAMMDeposit(tx: Record<string, unknown>): void {
97
97
  throw new ValidationError('AMMDeposit: missing field Asset2')
98
98
  }
99
99
 
100
- if (!isCurrency(tx.Asset2)) {
100
+ if (!isIssuedCurrency(tx.Asset2)) {
101
101
  throw new ValidationError('AMMDeposit: Asset2 must be a Currency')
102
102
  }
103
103
 
@@ -111,7 +111,7 @@ export function validateAMMDeposit(tx: Record<string, unknown>): void {
111
111
  )
112
112
  }
113
113
 
114
- if (tx.LPTokenOut != null && !isIssuedCurrency(tx.LPTokenOut)) {
114
+ if (tx.LPTokenOut != null && !isIssuedCurrencyAmount(tx.LPTokenOut)) {
115
115
  throw new ValidationError(
116
116
  'AMMDeposit: LPTokenOut must be an IssuedCurrencyAmount',
117
117
  )
@@ -2,7 +2,11 @@ import { ValidationError } from '../../errors'
2
2
  import { Currency } from '../common'
3
3
 
4
4
  import { AMM_MAX_TRADING_FEE } from './AMMCreate'
5
- import { BaseTransaction, isCurrency, validateBaseTransaction } from './common'
5
+ import {
6
+ BaseTransaction,
7
+ isIssuedCurrency,
8
+ validateBaseTransaction,
9
+ } from './common'
6
10
 
7
11
  /**
8
12
  * Vote on the trading fee for an Automated Market Maker (AMM) instance.
@@ -43,7 +47,7 @@ export function validateAMMVote(tx: Record<string, unknown>): void {
43
47
  throw new ValidationError('AMMVote: missing field Asset')
44
48
  }
45
49
 
46
- if (!isCurrency(tx.Asset)) {
50
+ if (!isIssuedCurrency(tx.Asset)) {
47
51
  throw new ValidationError('AMMVote: Asset must be a Currency')
48
52
  }
49
53
 
@@ -51,7 +55,7 @@ export function validateAMMVote(tx: Record<string, unknown>): void {
51
55
  throw new ValidationError('AMMVote: missing field Asset2')
52
56
  }
53
57
 
54
- if (!isCurrency(tx.Asset2)) {
58
+ if (!isIssuedCurrency(tx.Asset2)) {
55
59
  throw new ValidationError('AMMVote: Asset2 must be a Currency')
56
60
  }
57
61
 
@@ -5,8 +5,8 @@ import {
5
5
  BaseTransaction,
6
6
  GlobalFlagsInterface,
7
7
  isAmount,
8
- isCurrency,
9
8
  isIssuedCurrency,
9
+ isIssuedCurrencyAmount,
10
10
  validateBaseTransaction,
11
11
  } from './common'
12
12
 
@@ -87,7 +87,7 @@ export function validateAMMWithdraw(tx: Record<string, unknown>): void {
87
87
  throw new ValidationError('AMMWithdraw: missing field Asset')
88
88
  }
89
89
 
90
- if (!isCurrency(tx.Asset)) {
90
+ if (!isIssuedCurrency(tx.Asset)) {
91
91
  throw new ValidationError('AMMWithdraw: Asset must be a Currency')
92
92
  }
93
93
 
@@ -95,7 +95,7 @@ export function validateAMMWithdraw(tx: Record<string, unknown>): void {
95
95
  throw new ValidationError('AMMWithdraw: missing field Asset2')
96
96
  }
97
97
 
98
- if (!isCurrency(tx.Asset2)) {
98
+ if (!isIssuedCurrency(tx.Asset2)) {
99
99
  throw new ValidationError('AMMWithdraw: Asset2 must be a Currency')
100
100
  }
101
101
 
@@ -105,7 +105,7 @@ export function validateAMMWithdraw(tx: Record<string, unknown>): void {
105
105
  throw new ValidationError('AMMWithdraw: must set Amount with EPrice')
106
106
  }
107
107
 
108
- if (tx.LPTokenIn != null && !isIssuedCurrency(tx.LPTokenIn)) {
108
+ if (tx.LPTokenIn != null && !isIssuedCurrencyAmount(tx.LPTokenIn)) {
109
109
  throw new ValidationError(
110
110
  'AMMWithdraw: LPTokenIn must be an IssuedCurrencyAmount',
111
111
  )
@@ -158,7 +158,9 @@ export function validateMPTokenIssuanceCreate(
158
158
 
159
159
  if (typeof tx.TransferFee === 'number') {
160
160
  // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- Not necessary
161
- const flags = tx.Flags as number | MPTokenIssuanceCreateFlagsInterface
161
+ const flags = (tx.Flags ?? 0) as
162
+ | number
163
+ | MPTokenIssuanceCreateFlagsInterface
162
164
  const isTfMPTCanTransfer =
163
165
  typeof flags === 'number'
164
166
  ? isFlagEnabled(flags, MPTokenIssuanceCreateFlags.tfMPTCanTransfer)
@@ -69,7 +69,7 @@ export function validateMPTokenIssuanceSet(tx: Record<string, unknown>): void {
69
69
  validateOptionalField(tx, 'Holder', isAccount)
70
70
 
71
71
  // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- Not necessary
72
- const flags = tx.Flags as number | MPTokenIssuanceSetFlagsInterface
72
+ const flags = (tx.Flags ?? 0) as number | MPTokenIssuanceSetFlagsInterface
73
73
  const isTfMPTLock =
74
74
  typeof flags === 'number'
75
75
  ? isFlagEnabled(flags, MPTokenIssuanceSetFlags.tfMPTLock)
@@ -1,6 +1,6 @@
1
1
  import { ValidationError } from '../../errors'
2
2
 
3
- import { BaseTransaction, validateBaseTransaction } from './common'
3
+ import { BaseTransaction, isArray, validateBaseTransaction } from './common'
4
4
  import type { TransactionMetadataBase } from './metadata'
5
5
 
6
6
  /**
@@ -41,7 +41,7 @@ export interface NFTokenCancelOfferMetadata extends TransactionMetadataBase {
41
41
  export function validateNFTokenCancelOffer(tx: Record<string, unknown>): void {
42
42
  validateBaseTransaction(tx)
43
43
 
44
- if (!Array.isArray(tx.NFTokenOffers)) {
44
+ if (!isArray(tx.NFTokenOffers)) {
45
45
  throw new ValidationError('NFTokenCancelOffer: missing field NFTokenOffers')
46
46
  }
47
47
 
@@ -146,10 +146,14 @@ export function validateNFTokenCreateOffer(tx: Record<string, unknown>): void {
146
146
  throw new ValidationError('NFTokenCreateOffer: invalid Amount')
147
147
  }
148
148
 
149
- if (
150
- typeof tx.Flags === 'number' &&
151
- isFlagEnabled(tx.Flags, NFTokenCreateOfferFlags.tfSellNFToken)
152
- ) {
149
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- checked in BaseTransaction
150
+ const flags = (tx.Flags ?? 0) as number | NFTokenCreateOfferFlagsInterface
151
+ const isTfSellNFToken =
152
+ typeof flags === 'number'
153
+ ? isFlagEnabled(flags, NFTokenCreateOfferFlags.tfSellNFToken)
154
+ : flags.tfSellNFToken ?? false
155
+
156
+ if (isTfSellNFToken) {
153
157
  validateNFTokenSellOfferCases(tx)
154
158
  } else {
155
159
  validateNFTokenBuyOfferCases(tx)
@@ -4,7 +4,7 @@ import { Amount } from '../common'
4
4
  import {
5
5
  BaseTransaction,
6
6
  validateBaseTransaction,
7
- isIssuedCurrency,
7
+ isIssuedCurrencyAmount,
8
8
  isAccount,
9
9
  validateRequiredField,
10
10
  validateOptionalField,
@@ -64,11 +64,7 @@ export function validateCheckCreate(tx: Record<string, unknown>): void {
64
64
  validateRequiredField(tx, 'Destination', isAccount)
65
65
  validateOptionalField(tx, 'DestinationTag', isNumber)
66
66
 
67
- if (
68
- typeof tx.SendMax !== 'string' &&
69
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- Only used by JS
70
- !isIssuedCurrency(tx.SendMax as Record<string, unknown>)
71
- ) {
67
+ if (typeof tx.SendMax !== 'string' && !isIssuedCurrencyAmount(tx.SendMax)) {
72
68
  throw new ValidationError('CheckCreate: invalid SendMax')
73
69
  }
74
70
 
@@ -1,13 +1,15 @@
1
1
  import { ValidationError } from '../../errors'
2
- import { IssuedCurrencyAmount, MPTAmount } from '../common'
2
+ import { ClawbackAmount } from '../common'
3
3
 
4
4
  import {
5
5
  BaseTransaction,
6
6
  validateBaseTransaction,
7
- isIssuedCurrency,
7
+ isIssuedCurrencyAmount,
8
8
  isMPTAmount,
9
9
  isAccount,
10
10
  validateOptionalField,
11
+ isClawbackAmount,
12
+ validateRequiredField,
11
13
  } from './common'
12
14
 
13
15
  /**
@@ -26,7 +28,7 @@ export interface Clawback extends BaseTransaction {
26
28
  * names MUST be lower-case. If the amount is IOU, the `issuer` field MUST be the holder's address,
27
29
  * whom to be clawed back.
28
30
  */
29
- Amount: IssuedCurrencyAmount | MPTAmount
31
+ Amount: ClawbackAmount
30
32
  /**
31
33
  * Indicates the AccountID that the issuer wants to clawback. This field is only valid for clawing back
32
34
  * MPTs.
@@ -42,17 +44,14 @@ export interface Clawback extends BaseTransaction {
42
44
  */
43
45
  export function validateClawback(tx: Record<string, unknown>): void {
44
46
  validateBaseTransaction(tx)
47
+ validateRequiredField(tx, 'Amount', isClawbackAmount)
45
48
  validateOptionalField(tx, 'Holder', isAccount)
46
49
 
47
- if (tx.Amount == null) {
48
- throw new ValidationError('Clawback: missing field Amount')
49
- }
50
-
51
- if (!isIssuedCurrency(tx.Amount) && !isMPTAmount(tx.Amount)) {
50
+ if (!isIssuedCurrencyAmount(tx.Amount) && !isMPTAmount(tx.Amount)) {
52
51
  throw new ValidationError('Clawback: invalid Amount')
53
52
  }
54
53
 
55
- if (isIssuedCurrency(tx.Amount) && tx.Account === tx.Amount.issuer) {
54
+ if (isIssuedCurrencyAmount(tx.Amount) && tx.Account === tx.Amount.issuer) {
56
55
  throw new ValidationError('Clawback: invalid holder Account')
57
56
  }
58
57
 
@@ -60,7 +59,7 @@ export function validateClawback(tx: Record<string, unknown>): void {
60
59
  throw new ValidationError('Clawback: invalid holder Account')
61
60
  }
62
61
 
63
- if (isIssuedCurrency(tx.Amount) && tx.Holder) {
62
+ if (isIssuedCurrencyAmount(tx.Amount) && tx.Holder) {
64
63
  throw new ValidationError('Clawback: cannot have Holder for currency')
65
64
  }
66
65