xrpl 4.3.0-smartescrow.3 → 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 (476) hide show
  1. package/README.md +2 -2
  2. package/build/xrpl-latest-min.js +3 -0
  3. package/build/xrpl-latest-min.js.map +1 -0
  4. package/build/xrpl-latest.js +1457 -1505
  5. package/build/xrpl-latest.js.map +1 -1
  6. package/dist/npm/Wallet/batchSigner.d.ts +8 -0
  7. package/dist/npm/Wallet/batchSigner.d.ts.map +1 -0
  8. package/dist/npm/Wallet/batchSigner.js +111 -0
  9. package/dist/npm/Wallet/batchSigner.js.map +1 -0
  10. package/dist/npm/Wallet/defaultFaucets.d.ts +3 -2
  11. package/dist/npm/Wallet/defaultFaucets.d.ts.map +1 -1
  12. package/dist/npm/Wallet/defaultFaucets.js +16 -15
  13. package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
  14. package/dist/npm/Wallet/fundWallet.d.ts.map +1 -1
  15. package/dist/npm/Wallet/fundWallet.js +8 -16
  16. package/dist/npm/Wallet/fundWallet.js.map +1 -1
  17. package/dist/npm/Wallet/index.d.ts.map +1 -1
  18. package/dist/npm/Wallet/index.js +10 -4
  19. package/dist/npm/Wallet/index.js.map +1 -1
  20. package/dist/npm/Wallet/signer.d.ts.map +1 -1
  21. package/dist/npm/Wallet/signer.js +4 -20
  22. package/dist/npm/Wallet/signer.js.map +1 -1
  23. package/dist/npm/Wallet/utils.d.ts +9 -0
  24. package/dist/npm/Wallet/utils.d.ts.map +1 -0
  25. package/dist/npm/Wallet/utils.js +28 -0
  26. package/dist/npm/Wallet/utils.js.map +1 -0
  27. package/dist/npm/client/RequestManager.d.ts.map +1 -1
  28. package/dist/npm/client/RequestManager.js +3 -3
  29. package/dist/npm/client/RequestManager.js.map +1 -1
  30. package/dist/npm/client/connection.d.ts.map +1 -1
  31. package/dist/npm/client/connection.js.map +1 -1
  32. package/dist/npm/client/index.d.ts +3 -3
  33. package/dist/npm/client/index.d.ts.map +1 -1
  34. package/dist/npm/client/index.js +14 -14
  35. package/dist/npm/client/index.js.map +1 -1
  36. package/dist/npm/client/partialPayment.d.ts.map +1 -1
  37. package/dist/npm/client/partialPayment.js +2 -2
  38. package/dist/npm/client/partialPayment.js.map +1 -1
  39. package/dist/npm/models/common/index.d.ts +1 -0
  40. package/dist/npm/models/common/index.d.ts.map +1 -1
  41. package/dist/npm/models/ledger/AccountRoot.d.ts +1 -1
  42. package/dist/npm/models/ledger/AccountRoot.d.ts.map +1 -1
  43. package/dist/npm/models/ledger/Credential.d.ts +2 -2
  44. package/dist/npm/models/ledger/Credential.d.ts.map +1 -1
  45. package/dist/npm/models/ledger/LedgerEntry.d.ts +3 -2
  46. package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
  47. package/dist/npm/models/ledger/Vault.d.ts +21 -0
  48. package/dist/npm/models/ledger/Vault.d.ts.map +1 -0
  49. package/dist/npm/models/ledger/Vault.js +3 -0
  50. package/dist/npm/models/ledger/Vault.js.map +1 -0
  51. package/dist/npm/models/ledger/XChainOwnedClaimID.d.ts +1 -2
  52. package/dist/npm/models/ledger/XChainOwnedClaimID.d.ts.map +1 -1
  53. package/dist/npm/models/ledger/index.d.ts +2 -1
  54. package/dist/npm/models/ledger/index.d.ts.map +1 -1
  55. package/dist/npm/models/ledger/index.js.map +1 -1
  56. package/dist/npm/models/methods/baseMethod.d.ts +1 -0
  57. package/dist/npm/models/methods/baseMethod.d.ts.map +1 -1
  58. package/dist/npm/models/methods/index.d.ts +5 -4
  59. package/dist/npm/models/methods/index.d.ts.map +1 -1
  60. package/dist/npm/models/methods/vaultInfo.d.ts +46 -0
  61. package/dist/npm/models/methods/vaultInfo.d.ts.map +1 -0
  62. package/dist/npm/models/methods/vaultInfo.js +3 -0
  63. package/dist/npm/models/methods/vaultInfo.js.map +1 -0
  64. package/dist/npm/models/transactions/AMMBid.d.ts.map +1 -1
  65. package/dist/npm/models/transactions/AMMBid.js +7 -5
  66. package/dist/npm/models/transactions/AMMBid.js.map +1 -1
  67. package/dist/npm/models/transactions/AMMClawback.d.ts +2 -2
  68. package/dist/npm/models/transactions/AMMClawback.d.ts.map +1 -1
  69. package/dist/npm/models/transactions/AMMClawback.js +5 -6
  70. package/dist/npm/models/transactions/AMMClawback.js.map +1 -1
  71. package/dist/npm/models/transactions/AMMDelete.d.ts.map +1 -1
  72. package/dist/npm/models/transactions/AMMDelete.js +2 -2
  73. package/dist/npm/models/transactions/AMMDelete.js.map +1 -1
  74. package/dist/npm/models/transactions/AMMDeposit.d.ts +2 -2
  75. package/dist/npm/models/transactions/AMMDeposit.d.ts.map +1 -1
  76. package/dist/npm/models/transactions/AMMDeposit.js +3 -3
  77. package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
  78. package/dist/npm/models/transactions/AMMVote.d.ts.map +1 -1
  79. package/dist/npm/models/transactions/AMMVote.js +2 -2
  80. package/dist/npm/models/transactions/AMMVote.js.map +1 -1
  81. package/dist/npm/models/transactions/AMMWithdraw.d.ts +2 -2
  82. package/dist/npm/models/transactions/AMMWithdraw.d.ts.map +1 -1
  83. package/dist/npm/models/transactions/AMMWithdraw.js +3 -3
  84. package/dist/npm/models/transactions/AMMWithdraw.js.map +1 -1
  85. package/dist/npm/models/transactions/MPTokenAuthorize.d.ts +2 -2
  86. package/dist/npm/models/transactions/MPTokenAuthorize.d.ts.map +1 -1
  87. package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts +2 -2
  88. package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -1
  89. package/dist/npm/models/transactions/MPTokenIssuanceCreate.js +3 -3
  90. package/dist/npm/models/transactions/MPTokenIssuanceCreate.js.map +1 -1
  91. package/dist/npm/models/transactions/MPTokenIssuanceSet.d.ts +2 -2
  92. package/dist/npm/models/transactions/MPTokenIssuanceSet.d.ts.map +1 -1
  93. package/dist/npm/models/transactions/MPTokenIssuanceSet.js +4 -4
  94. package/dist/npm/models/transactions/MPTokenIssuanceSet.js.map +1 -1
  95. package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  96. package/dist/npm/models/transactions/NFTokenCancelOffer.js +1 -1
  97. package/dist/npm/models/transactions/NFTokenCancelOffer.js.map +1 -1
  98. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts +2 -2
  99. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  100. package/dist/npm/models/transactions/NFTokenCreateOffer.js +6 -2
  101. package/dist/npm/models/transactions/NFTokenCreateOffer.js.map +1 -1
  102. package/dist/npm/models/transactions/NFTokenMint.d.ts +2 -2
  103. package/dist/npm/models/transactions/NFTokenMint.d.ts.map +1 -1
  104. package/dist/npm/models/transactions/XChainAddAccountCreateAttestation.js.map +1 -1
  105. package/dist/npm/models/transactions/XChainAddClaimAttestation.js.map +1 -1
  106. package/dist/npm/models/transactions/XChainClaim.js.map +1 -1
  107. package/dist/npm/models/transactions/XChainCommit.js.map +1 -1
  108. package/dist/npm/models/transactions/XChainModifyBridge.d.ts +2 -2
  109. package/dist/npm/models/transactions/XChainModifyBridge.d.ts.map +1 -1
  110. package/dist/npm/models/transactions/accountDelete.d.ts.map +1 -1
  111. package/dist/npm/models/transactions/accountDelete.js.map +1 -1
  112. package/dist/npm/models/transactions/accountSet.d.ts +2 -2
  113. package/dist/npm/models/transactions/accountSet.d.ts.map +1 -1
  114. package/dist/npm/models/transactions/accountSet.js.map +1 -1
  115. package/dist/npm/models/transactions/batch.d.ts +39 -0
  116. package/dist/npm/models/transactions/batch.d.ts.map +1 -0
  117. package/dist/npm/models/transactions/batch.js +64 -0
  118. package/dist/npm/models/transactions/batch.js.map +1 -0
  119. package/dist/npm/models/transactions/checkCreate.d.ts.map +1 -1
  120. package/dist/npm/models/transactions/checkCreate.js +1 -2
  121. package/dist/npm/models/transactions/checkCreate.js.map +1 -1
  122. package/dist/npm/models/transactions/clawback.d.ts +2 -2
  123. package/dist/npm/models/transactions/clawback.d.ts.map +1 -1
  124. package/dist/npm/models/transactions/clawback.js +4 -6
  125. package/dist/npm/models/transactions/clawback.js.map +1 -1
  126. package/dist/npm/models/transactions/common.d.ts +30 -9
  127. package/dist/npm/models/transactions/common.d.ts.map +1 -1
  128. package/dist/npm/models/transactions/common.js +74 -36
  129. package/dist/npm/models/transactions/common.js.map +1 -1
  130. package/dist/npm/models/transactions/delegateSet.d.ts.map +1 -1
  131. package/dist/npm/models/transactions/delegateSet.js +1 -0
  132. package/dist/npm/models/transactions/delegateSet.js.map +1 -1
  133. package/dist/npm/models/transactions/depositPreauth.d.ts.map +1 -1
  134. package/dist/npm/models/transactions/depositPreauth.js.map +1 -1
  135. package/dist/npm/models/transactions/escrowFinish.d.ts.map +1 -1
  136. package/dist/npm/models/transactions/escrowFinish.js.map +1 -1
  137. package/dist/npm/models/transactions/index.d.ts +9 -2
  138. package/dist/npm/models/transactions/index.d.ts.map +1 -1
  139. package/dist/npm/models/transactions/index.js +4 -1
  140. package/dist/npm/models/transactions/index.js.map +1 -1
  141. package/dist/npm/models/transactions/metadata.d.ts +1 -0
  142. package/dist/npm/models/transactions/metadata.d.ts.map +1 -1
  143. package/dist/npm/models/transactions/offerCreate.d.ts +2 -2
  144. package/dist/npm/models/transactions/offerCreate.d.ts.map +1 -1
  145. package/dist/npm/models/transactions/oracleSet.d.ts.map +1 -1
  146. package/dist/npm/models/transactions/oracleSet.js +22 -21
  147. package/dist/npm/models/transactions/oracleSet.js.map +1 -1
  148. package/dist/npm/models/transactions/payment.d.ts +3 -2
  149. package/dist/npm/models/transactions/payment.d.ts.map +1 -1
  150. package/dist/npm/models/transactions/payment.js +9 -4
  151. package/dist/npm/models/transactions/payment.js.map +1 -1
  152. package/dist/npm/models/transactions/paymentChannelClaim.d.ts +2 -2
  153. package/dist/npm/models/transactions/paymentChannelClaim.d.ts.map +1 -1
  154. package/dist/npm/models/transactions/paymentChannelClaim.js.map +1 -1
  155. package/dist/npm/models/transactions/permissionedDomainSet.d.ts.map +1 -1
  156. package/dist/npm/models/transactions/permissionedDomainSet.js +1 -1
  157. package/dist/npm/models/transactions/permissionedDomainSet.js.map +1 -1
  158. package/dist/npm/models/transactions/signerListSet.d.ts.map +1 -1
  159. package/dist/npm/models/transactions/signerListSet.js +10 -16
  160. package/dist/npm/models/transactions/signerListSet.js.map +1 -1
  161. package/dist/npm/models/transactions/transaction.d.ts +8 -1
  162. package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
  163. package/dist/npm/models/transactions/transaction.js +35 -35
  164. package/dist/npm/models/transactions/transaction.js.map +1 -1
  165. package/dist/npm/models/transactions/trustSet.d.ts +2 -2
  166. package/dist/npm/models/transactions/trustSet.d.ts.map +1 -1
  167. package/dist/npm/models/transactions/vaultClawback.d.ts +10 -0
  168. package/dist/npm/models/transactions/vaultClawback.d.ts.map +1 -0
  169. package/dist/npm/models/transactions/vaultClawback.js +12 -0
  170. package/dist/npm/models/transactions/vaultClawback.js.map +1 -0
  171. package/dist/npm/models/transactions/vaultCreate.d.ts +24 -0
  172. package/dist/npm/models/transactions/vaultCreate.d.ts.map +1 -0
  173. package/dist/npm/models/transactions/vaultCreate.js +51 -0
  174. package/dist/npm/models/transactions/vaultCreate.js.map +1 -0
  175. package/dist/npm/models/transactions/vaultDelete.d.ts +7 -0
  176. package/dist/npm/models/transactions/vaultDelete.d.ts.map +1 -0
  177. package/dist/npm/models/transactions/vaultDelete.js +10 -0
  178. package/dist/npm/models/transactions/vaultDelete.js.map +1 -0
  179. package/dist/npm/models/transactions/vaultDeposit.d.ts +9 -0
  180. package/dist/npm/models/transactions/vaultDeposit.d.ts.map +1 -0
  181. package/dist/npm/models/transactions/vaultDeposit.js +11 -0
  182. package/dist/npm/models/transactions/vaultDeposit.js.map +1 -0
  183. package/dist/npm/models/transactions/vaultSet.d.ts +10 -0
  184. package/dist/npm/models/transactions/vaultSet.d.ts.map +1 -0
  185. package/dist/npm/models/transactions/vaultSet.js +25 -0
  186. package/dist/npm/models/transactions/vaultSet.js.map +1 -0
  187. package/dist/npm/models/transactions/vaultWithdraw.d.ts +10 -0
  188. package/dist/npm/models/transactions/vaultWithdraw.d.ts.map +1 -0
  189. package/dist/npm/models/transactions/vaultWithdraw.js +12 -0
  190. package/dist/npm/models/transactions/vaultWithdraw.js.map +1 -0
  191. package/dist/npm/models/utils/flags.d.ts.map +1 -1
  192. package/dist/npm/models/utils/flags.js +26 -9
  193. package/dist/npm/models/utils/flags.js.map +1 -1
  194. package/dist/npm/models/utils/index.d.ts +2 -0
  195. package/dist/npm/models/utils/index.d.ts.map +1 -1
  196. package/dist/npm/models/utils/index.js +11 -1
  197. package/dist/npm/models/utils/index.js.map +1 -1
  198. package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
  199. package/dist/npm/src/Wallet/batchSigner.d.ts +8 -0
  200. package/dist/npm/src/Wallet/batchSigner.d.ts.map +1 -0
  201. package/dist/npm/src/Wallet/batchSigner.js +111 -0
  202. package/dist/npm/src/Wallet/batchSigner.js.map +1 -0
  203. package/dist/npm/src/Wallet/defaultFaucets.d.ts +3 -2
  204. package/dist/npm/src/Wallet/defaultFaucets.d.ts.map +1 -1
  205. package/dist/npm/src/Wallet/defaultFaucets.js +16 -15
  206. package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
  207. package/dist/npm/src/Wallet/fundWallet.d.ts.map +1 -1
  208. package/dist/npm/src/Wallet/fundWallet.js +8 -16
  209. package/dist/npm/src/Wallet/fundWallet.js.map +1 -1
  210. package/dist/npm/src/Wallet/index.d.ts.map +1 -1
  211. package/dist/npm/src/Wallet/index.js +10 -4
  212. package/dist/npm/src/Wallet/index.js.map +1 -1
  213. package/dist/npm/src/Wallet/signer.d.ts.map +1 -1
  214. package/dist/npm/src/Wallet/signer.js +4 -20
  215. package/dist/npm/src/Wallet/signer.js.map +1 -1
  216. package/dist/npm/src/Wallet/utils.d.ts +9 -0
  217. package/dist/npm/src/Wallet/utils.d.ts.map +1 -0
  218. package/dist/npm/src/Wallet/utils.js +28 -0
  219. package/dist/npm/src/Wallet/utils.js.map +1 -0
  220. package/dist/npm/src/client/RequestManager.d.ts.map +1 -1
  221. package/dist/npm/src/client/RequestManager.js +3 -3
  222. package/dist/npm/src/client/RequestManager.js.map +1 -1
  223. package/dist/npm/src/client/connection.d.ts.map +1 -1
  224. package/dist/npm/src/client/connection.js.map +1 -1
  225. package/dist/npm/src/client/index.d.ts +3 -3
  226. package/dist/npm/src/client/index.d.ts.map +1 -1
  227. package/dist/npm/src/client/index.js +14 -14
  228. package/dist/npm/src/client/index.js.map +1 -1
  229. package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
  230. package/dist/npm/src/client/partialPayment.js +2 -2
  231. package/dist/npm/src/client/partialPayment.js.map +1 -1
  232. package/dist/npm/src/models/common/index.d.ts +1 -0
  233. package/dist/npm/src/models/common/index.d.ts.map +1 -1
  234. package/dist/npm/src/models/ledger/AccountRoot.d.ts +1 -1
  235. package/dist/npm/src/models/ledger/AccountRoot.d.ts.map +1 -1
  236. package/dist/npm/src/models/ledger/Credential.d.ts +2 -2
  237. package/dist/npm/src/models/ledger/Credential.d.ts.map +1 -1
  238. package/dist/npm/src/models/ledger/LedgerEntry.d.ts +3 -2
  239. package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
  240. package/dist/npm/src/models/ledger/Vault.d.ts +21 -0
  241. package/dist/npm/src/models/ledger/Vault.d.ts.map +1 -0
  242. package/dist/npm/src/models/ledger/Vault.js +3 -0
  243. package/dist/npm/src/models/ledger/Vault.js.map +1 -0
  244. package/dist/npm/src/models/ledger/XChainOwnedClaimID.d.ts +1 -2
  245. package/dist/npm/src/models/ledger/XChainOwnedClaimID.d.ts.map +1 -1
  246. package/dist/npm/src/models/ledger/index.d.ts +2 -1
  247. package/dist/npm/src/models/ledger/index.d.ts.map +1 -1
  248. package/dist/npm/src/models/ledger/index.js.map +1 -1
  249. package/dist/npm/src/models/methods/baseMethod.d.ts +1 -0
  250. package/dist/npm/src/models/methods/baseMethod.d.ts.map +1 -1
  251. package/dist/npm/src/models/methods/index.d.ts +5 -4
  252. package/dist/npm/src/models/methods/index.d.ts.map +1 -1
  253. package/dist/npm/src/models/methods/vaultInfo.d.ts +46 -0
  254. package/dist/npm/src/models/methods/vaultInfo.d.ts.map +1 -0
  255. package/dist/npm/src/models/methods/vaultInfo.js +3 -0
  256. package/dist/npm/src/models/methods/vaultInfo.js.map +1 -0
  257. package/dist/npm/src/models/transactions/AMMBid.d.ts.map +1 -1
  258. package/dist/npm/src/models/transactions/AMMBid.js +7 -5
  259. package/dist/npm/src/models/transactions/AMMBid.js.map +1 -1
  260. package/dist/npm/src/models/transactions/AMMClawback.d.ts +2 -2
  261. package/dist/npm/src/models/transactions/AMMClawback.d.ts.map +1 -1
  262. package/dist/npm/src/models/transactions/AMMClawback.js +5 -6
  263. package/dist/npm/src/models/transactions/AMMClawback.js.map +1 -1
  264. package/dist/npm/src/models/transactions/AMMDelete.d.ts.map +1 -1
  265. package/dist/npm/src/models/transactions/AMMDelete.js +2 -2
  266. package/dist/npm/src/models/transactions/AMMDelete.js.map +1 -1
  267. package/dist/npm/src/models/transactions/AMMDeposit.d.ts +2 -2
  268. package/dist/npm/src/models/transactions/AMMDeposit.d.ts.map +1 -1
  269. package/dist/npm/src/models/transactions/AMMDeposit.js +3 -3
  270. package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
  271. package/dist/npm/src/models/transactions/AMMVote.d.ts.map +1 -1
  272. package/dist/npm/src/models/transactions/AMMVote.js +2 -2
  273. package/dist/npm/src/models/transactions/AMMVote.js.map +1 -1
  274. package/dist/npm/src/models/transactions/AMMWithdraw.d.ts +2 -2
  275. package/dist/npm/src/models/transactions/AMMWithdraw.d.ts.map +1 -1
  276. package/dist/npm/src/models/transactions/AMMWithdraw.js +3 -3
  277. package/dist/npm/src/models/transactions/AMMWithdraw.js.map +1 -1
  278. package/dist/npm/src/models/transactions/MPTokenAuthorize.d.ts +2 -2
  279. package/dist/npm/src/models/transactions/MPTokenAuthorize.d.ts.map +1 -1
  280. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts +2 -2
  281. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -1
  282. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js +3 -3
  283. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js.map +1 -1
  284. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.d.ts +2 -2
  285. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.d.ts.map +1 -1
  286. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js +4 -4
  287. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js.map +1 -1
  288. package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  289. package/dist/npm/src/models/transactions/NFTokenCancelOffer.js +1 -1
  290. package/dist/npm/src/models/transactions/NFTokenCancelOffer.js.map +1 -1
  291. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts +2 -2
  292. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  293. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js +6 -2
  294. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js.map +1 -1
  295. package/dist/npm/src/models/transactions/NFTokenMint.d.ts +2 -2
  296. package/dist/npm/src/models/transactions/NFTokenMint.d.ts.map +1 -1
  297. package/dist/npm/src/models/transactions/XChainAddAccountCreateAttestation.js.map +1 -1
  298. package/dist/npm/src/models/transactions/XChainAddClaimAttestation.js.map +1 -1
  299. package/dist/npm/src/models/transactions/XChainClaim.js.map +1 -1
  300. package/dist/npm/src/models/transactions/XChainCommit.js.map +1 -1
  301. package/dist/npm/src/models/transactions/XChainModifyBridge.d.ts +2 -2
  302. package/dist/npm/src/models/transactions/XChainModifyBridge.d.ts.map +1 -1
  303. package/dist/npm/src/models/transactions/accountDelete.d.ts.map +1 -1
  304. package/dist/npm/src/models/transactions/accountDelete.js.map +1 -1
  305. package/dist/npm/src/models/transactions/accountSet.d.ts +2 -2
  306. package/dist/npm/src/models/transactions/accountSet.d.ts.map +1 -1
  307. package/dist/npm/src/models/transactions/accountSet.js.map +1 -1
  308. package/dist/npm/src/models/transactions/batch.d.ts +39 -0
  309. package/dist/npm/src/models/transactions/batch.d.ts.map +1 -0
  310. package/dist/npm/src/models/transactions/batch.js +64 -0
  311. package/dist/npm/src/models/transactions/batch.js.map +1 -0
  312. package/dist/npm/src/models/transactions/checkCreate.d.ts.map +1 -1
  313. package/dist/npm/src/models/transactions/checkCreate.js +1 -2
  314. package/dist/npm/src/models/transactions/checkCreate.js.map +1 -1
  315. package/dist/npm/src/models/transactions/clawback.d.ts +2 -2
  316. package/dist/npm/src/models/transactions/clawback.d.ts.map +1 -1
  317. package/dist/npm/src/models/transactions/clawback.js +4 -6
  318. package/dist/npm/src/models/transactions/clawback.js.map +1 -1
  319. package/dist/npm/src/models/transactions/common.d.ts +30 -9
  320. package/dist/npm/src/models/transactions/common.d.ts.map +1 -1
  321. package/dist/npm/src/models/transactions/common.js +74 -36
  322. package/dist/npm/src/models/transactions/common.js.map +1 -1
  323. package/dist/npm/src/models/transactions/delegateSet.d.ts.map +1 -1
  324. package/dist/npm/src/models/transactions/delegateSet.js +1 -0
  325. package/dist/npm/src/models/transactions/delegateSet.js.map +1 -1
  326. package/dist/npm/src/models/transactions/depositPreauth.d.ts.map +1 -1
  327. package/dist/npm/src/models/transactions/depositPreauth.js.map +1 -1
  328. package/dist/npm/src/models/transactions/escrowFinish.d.ts.map +1 -1
  329. package/dist/npm/src/models/transactions/escrowFinish.js.map +1 -1
  330. package/dist/npm/src/models/transactions/index.d.ts +9 -2
  331. package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
  332. package/dist/npm/src/models/transactions/index.js +4 -1
  333. package/dist/npm/src/models/transactions/index.js.map +1 -1
  334. package/dist/npm/src/models/transactions/metadata.d.ts +1 -0
  335. package/dist/npm/src/models/transactions/metadata.d.ts.map +1 -1
  336. package/dist/npm/src/models/transactions/offerCreate.d.ts +2 -2
  337. package/dist/npm/src/models/transactions/offerCreate.d.ts.map +1 -1
  338. package/dist/npm/src/models/transactions/oracleSet.d.ts.map +1 -1
  339. package/dist/npm/src/models/transactions/oracleSet.js +22 -21
  340. package/dist/npm/src/models/transactions/oracleSet.js.map +1 -1
  341. package/dist/npm/src/models/transactions/payment.d.ts +3 -2
  342. package/dist/npm/src/models/transactions/payment.d.ts.map +1 -1
  343. package/dist/npm/src/models/transactions/payment.js +9 -4
  344. package/dist/npm/src/models/transactions/payment.js.map +1 -1
  345. package/dist/npm/src/models/transactions/paymentChannelClaim.d.ts +2 -2
  346. package/dist/npm/src/models/transactions/paymentChannelClaim.d.ts.map +1 -1
  347. package/dist/npm/src/models/transactions/paymentChannelClaim.js.map +1 -1
  348. package/dist/npm/src/models/transactions/permissionedDomainSet.d.ts.map +1 -1
  349. package/dist/npm/src/models/transactions/permissionedDomainSet.js +1 -1
  350. package/dist/npm/src/models/transactions/permissionedDomainSet.js.map +1 -1
  351. package/dist/npm/src/models/transactions/signerListSet.d.ts.map +1 -1
  352. package/dist/npm/src/models/transactions/signerListSet.js +10 -16
  353. package/dist/npm/src/models/transactions/signerListSet.js.map +1 -1
  354. package/dist/npm/src/models/transactions/transaction.d.ts +8 -1
  355. package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
  356. package/dist/npm/src/models/transactions/transaction.js +35 -35
  357. package/dist/npm/src/models/transactions/transaction.js.map +1 -1
  358. package/dist/npm/src/models/transactions/trustSet.d.ts +2 -2
  359. package/dist/npm/src/models/transactions/trustSet.d.ts.map +1 -1
  360. package/dist/npm/src/models/transactions/vaultClawback.d.ts +10 -0
  361. package/dist/npm/src/models/transactions/vaultClawback.d.ts.map +1 -0
  362. package/dist/npm/src/models/transactions/vaultClawback.js +12 -0
  363. package/dist/npm/src/models/transactions/vaultClawback.js.map +1 -0
  364. package/dist/npm/src/models/transactions/vaultCreate.d.ts +24 -0
  365. package/dist/npm/src/models/transactions/vaultCreate.d.ts.map +1 -0
  366. package/dist/npm/src/models/transactions/vaultCreate.js +51 -0
  367. package/dist/npm/src/models/transactions/vaultCreate.js.map +1 -0
  368. package/dist/npm/src/models/transactions/vaultDelete.d.ts +7 -0
  369. package/dist/npm/src/models/transactions/vaultDelete.d.ts.map +1 -0
  370. package/dist/npm/src/models/transactions/vaultDelete.js +10 -0
  371. package/dist/npm/src/models/transactions/vaultDelete.js.map +1 -0
  372. package/dist/npm/src/models/transactions/vaultDeposit.d.ts +9 -0
  373. package/dist/npm/src/models/transactions/vaultDeposit.d.ts.map +1 -0
  374. package/dist/npm/src/models/transactions/vaultDeposit.js +11 -0
  375. package/dist/npm/src/models/transactions/vaultDeposit.js.map +1 -0
  376. package/dist/npm/src/models/transactions/vaultSet.d.ts +10 -0
  377. package/dist/npm/src/models/transactions/vaultSet.d.ts.map +1 -0
  378. package/dist/npm/src/models/transactions/vaultSet.js +25 -0
  379. package/dist/npm/src/models/transactions/vaultSet.js.map +1 -0
  380. package/dist/npm/src/models/transactions/vaultWithdraw.d.ts +10 -0
  381. package/dist/npm/src/models/transactions/vaultWithdraw.d.ts.map +1 -0
  382. package/dist/npm/src/models/transactions/vaultWithdraw.js +12 -0
  383. package/dist/npm/src/models/transactions/vaultWithdraw.js.map +1 -0
  384. package/dist/npm/src/models/utils/flags.d.ts.map +1 -1
  385. package/dist/npm/src/models/utils/flags.js +26 -9
  386. package/dist/npm/src/models/utils/flags.js.map +1 -1
  387. package/dist/npm/src/models/utils/index.d.ts +2 -0
  388. package/dist/npm/src/models/utils/index.d.ts.map +1 -1
  389. package/dist/npm/src/models/utils/index.js +11 -1
  390. package/dist/npm/src/models/utils/index.js.map +1 -1
  391. package/dist/npm/src/sugar/autofill.d.ts +4 -2
  392. package/dist/npm/src/sugar/autofill.d.ts.map +1 -1
  393. package/dist/npm/src/sugar/autofill.js +109 -16
  394. package/dist/npm/src/sugar/autofill.js.map +1 -1
  395. package/dist/npm/src/sugar/submit.d.ts.map +1 -1
  396. package/dist/npm/src/sugar/submit.js.map +1 -1
  397. package/dist/npm/src/utils/hashes/hashLedger.d.ts.map +1 -1
  398. package/dist/npm/src/utils/hashes/hashLedger.js +4 -1
  399. package/dist/npm/src/utils/hashes/hashLedger.js.map +1 -1
  400. package/dist/npm/sugar/autofill.d.ts +4 -2
  401. package/dist/npm/sugar/autofill.d.ts.map +1 -1
  402. package/dist/npm/sugar/autofill.js +109 -16
  403. package/dist/npm/sugar/autofill.js.map +1 -1
  404. package/dist/npm/sugar/submit.d.ts.map +1 -1
  405. package/dist/npm/sugar/submit.js.map +1 -1
  406. package/dist/npm/utils/hashes/hashLedger.d.ts.map +1 -1
  407. package/dist/npm/utils/hashes/hashLedger.js +4 -1
  408. package/dist/npm/utils/hashes/hashLedger.js.map +1 -1
  409. package/package.json +7 -6
  410. package/src/Wallet/batchSigner.ts +198 -0
  411. package/src/Wallet/defaultFaucets.ts +20 -18
  412. package/src/Wallet/fundWallet.ts +17 -28
  413. package/src/Wallet/index.ts +9 -3
  414. package/src/Wallet/signer.ts +4 -39
  415. package/src/Wallet/utils.ts +58 -0
  416. package/src/client/RequestManager.ts +4 -1
  417. package/src/client/connection.ts +0 -1
  418. package/src/client/index.ts +50 -66
  419. package/src/client/partialPayment.ts +2 -4
  420. package/src/models/common/index.ts +2 -0
  421. package/src/models/ledger/AccountRoot.ts +1 -1
  422. package/src/models/ledger/Credential.ts +2 -2
  423. package/src/models/ledger/LedgerEntry.ts +3 -0
  424. package/src/models/ledger/Vault.ts +83 -0
  425. package/src/models/ledger/XChainOwnedClaimID.ts +1 -3
  426. package/src/models/ledger/index.ts +3 -1
  427. package/src/models/methods/baseMethod.ts +1 -0
  428. package/src/models/methods/index.ts +10 -0
  429. package/src/models/methods/vaultInfo.ts +193 -0
  430. package/src/models/transactions/AMMBid.ts +12 -21
  431. package/src/models/transactions/AMMClawback.ts +10 -13
  432. package/src/models/transactions/AMMDelete.ts +7 -3
  433. package/src/models/transactions/AMMDeposit.ts +6 -6
  434. package/src/models/transactions/AMMVote.ts +7 -3
  435. package/src/models/transactions/AMMWithdraw.ts +6 -6
  436. package/src/models/transactions/MPTokenAuthorize.ts +2 -2
  437. package/src/models/transactions/MPTokenIssuanceCreate.ts +6 -3
  438. package/src/models/transactions/MPTokenIssuanceSet.ts +3 -3
  439. package/src/models/transactions/NFTokenCancelOffer.ts +2 -2
  440. package/src/models/transactions/NFTokenCreateOffer.ts +10 -6
  441. package/src/models/transactions/NFTokenMint.ts +2 -2
  442. package/src/models/transactions/XChainAddAccountCreateAttestation.ts +2 -2
  443. package/src/models/transactions/XChainAddClaimAttestation.ts +2 -2
  444. package/src/models/transactions/XChainClaim.ts +1 -1
  445. package/src/models/transactions/XChainCommit.ts +1 -1
  446. package/src/models/transactions/XChainModifyBridge.ts +2 -2
  447. package/src/models/transactions/accountDelete.ts +1 -2
  448. package/src/models/transactions/accountSet.ts +2 -1
  449. package/src/models/transactions/batch.ts +151 -0
  450. package/src/models/transactions/checkCreate.ts +2 -6
  451. package/src/models/transactions/clawback.ts +9 -10
  452. package/src/models/transactions/common.ts +194 -69
  453. package/src/models/transactions/delegateSet.ts +1 -0
  454. package/src/models/transactions/depositPreauth.ts +2 -4
  455. package/src/models/transactions/escrowFinish.ts +1 -2
  456. package/src/models/transactions/index.ts +14 -3
  457. package/src/models/transactions/metadata.ts +2 -0
  458. package/src/models/transactions/offerCreate.ts +2 -2
  459. package/src/models/transactions/oracleSet.ts +88 -91
  460. package/src/models/transactions/payment.ts +21 -13
  461. package/src/models/transactions/paymentChannelClaim.ts +4 -4
  462. package/src/models/transactions/permissionedDomainSet.ts +3 -7
  463. package/src/models/transactions/signerListSet.ts +21 -21
  464. package/src/models/transactions/transaction.ts +61 -43
  465. package/src/models/transactions/trustSet.ts +2 -2
  466. package/src/models/transactions/vaultClawback.ts +55 -0
  467. package/src/models/transactions/vaultCreate.ts +142 -0
  468. package/src/models/transactions/vaultDelete.ts +32 -0
  469. package/src/models/transactions/vaultDeposit.ts +41 -0
  470. package/src/models/transactions/vaultSet.ts +71 -0
  471. package/src/models/transactions/vaultWithdraw.ts +50 -0
  472. package/src/models/utils/flags.ts +30 -10
  473. package/src/models/utils/index.ts +24 -0
  474. package/src/sugar/autofill.ts +165 -35
  475. package/src/sugar/submit.ts +1 -2
  476. package/src/utils/hashes/hashLedger.ts +5 -2
@@ -4,10 +4,10 @@ import { Currency, IssuedCurrency, IssuedCurrencyAmount } from '../common'
4
4
  import {
5
5
  Account,
6
6
  BaseTransaction,
7
- GlobalFlags,
7
+ GlobalFlagsInterface,
8
8
  isAccount,
9
- isAmount,
10
- isCurrency,
9
+ isIssuedCurrency,
10
+ isIssuedCurrencyAmount,
11
11
  validateBaseTransaction,
12
12
  validateOptionalField,
13
13
  validateRequiredField,
@@ -28,7 +28,7 @@ export enum AMMClawbackFlags {
28
28
  *
29
29
  * @category Transaction Flags
30
30
  */
31
- export interface AMMClawbackFlagsInterface extends GlobalFlags {
31
+ export interface AMMClawbackFlagsInterface extends GlobalFlagsInterface {
32
32
  tfClawTwoAssets?: boolean
33
33
  }
34
34
 
@@ -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
  }
@@ -3,10 +3,10 @@ import { Amount, Currency, IssuedCurrencyAmount } from '../common'
3
3
 
4
4
  import {
5
5
  BaseTransaction,
6
- GlobalFlags,
6
+ GlobalFlagsInterface,
7
7
  isAmount,
8
- isCurrency,
9
8
  isIssuedCurrency,
9
+ isIssuedCurrencyAmount,
10
10
  validateBaseTransaction,
11
11
  } from './common'
12
12
 
@@ -24,7 +24,7 @@ export enum AMMDepositFlags {
24
24
  tfTwoAssetIfEmpty = 0x00800000,
25
25
  }
26
26
 
27
- export interface AMMDepositFlagsInterface extends GlobalFlags {
27
+ export interface AMMDepositFlagsInterface extends GlobalFlagsInterface {
28
28
  tfLPToken?: boolean
29
29
  tfSingleAsset?: boolean
30
30
  tfTwoAsset?: boolean
@@ -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
 
@@ -3,10 +3,10 @@ import { Amount, Currency, IssuedCurrencyAmount } from '../common'
3
3
 
4
4
  import {
5
5
  BaseTransaction,
6
- GlobalFlags,
6
+ GlobalFlagsInterface,
7
7
  isAmount,
8
- isCurrency,
9
8
  isIssuedCurrency,
9
+ isIssuedCurrencyAmount,
10
10
  validateBaseTransaction,
11
11
  } from './common'
12
12
 
@@ -25,7 +25,7 @@ export enum AMMWithdrawFlags {
25
25
  tfLimitLPToken = 0x00400000,
26
26
  }
27
27
 
28
- export interface AMMWithdrawFlagsInterface extends GlobalFlags {
28
+ export interface AMMWithdrawFlagsInterface extends GlobalFlagsInterface {
29
29
  tfLPToken?: boolean
30
30
  tfWithdrawAll?: boolean
31
31
  tfOneAssetWithdrawAll?: boolean
@@ -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
  )
@@ -6,7 +6,7 @@ import {
6
6
  Account,
7
7
  validateOptionalField,
8
8
  isAccount,
9
- GlobalFlags,
9
+ GlobalFlagsInterface,
10
10
  } from './common'
11
11
 
12
12
  /**
@@ -32,7 +32,7 @@ export enum MPTokenAuthorizeFlags {
32
32
  *
33
33
  * @category Transaction Flags
34
34
  */
35
- export interface MPTokenAuthorizeFlagsInterface extends GlobalFlags {
35
+ export interface MPTokenAuthorizeFlagsInterface extends GlobalFlagsInterface {
36
36
  tfMPTUnauthorize?: boolean
37
37
  }
38
38
 
@@ -3,7 +3,7 @@ import { isHex, INTEGER_SANITY_CHECK, isFlagEnabled } from '../utils'
3
3
 
4
4
  import {
5
5
  BaseTransaction,
6
- GlobalFlags,
6
+ GlobalFlagsInterface,
7
7
  validateBaseTransaction,
8
8
  validateOptionalField,
9
9
  isString,
@@ -58,7 +58,8 @@ export enum MPTokenIssuanceCreateFlags {
58
58
  *
59
59
  * @category Transaction Flags
60
60
  */
61
- export interface MPTokenIssuanceCreateFlagsInterface extends GlobalFlags {
61
+ export interface MPTokenIssuanceCreateFlagsInterface
62
+ extends GlobalFlagsInterface {
62
63
  tfMPTCanLock?: boolean
63
64
  tfMPTRequireAuth?: boolean
64
65
  tfMPTCanEscrow?: boolean
@@ -157,7 +158,9 @@ export function validateMPTokenIssuanceCreate(
157
158
 
158
159
  if (typeof tx.TransferFee === 'number') {
159
160
  // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- Not necessary
160
- const flags = tx.Flags as number | MPTokenIssuanceCreateFlagsInterface
161
+ const flags = (tx.Flags ?? 0) as
162
+ | number
163
+ | MPTokenIssuanceCreateFlagsInterface
161
164
  const isTfMPTCanTransfer =
162
165
  typeof flags === 'number'
163
166
  ? isFlagEnabled(flags, MPTokenIssuanceCreateFlags.tfMPTCanTransfer)
@@ -9,7 +9,7 @@ import {
9
9
  Account,
10
10
  validateOptionalField,
11
11
  isAccount,
12
- GlobalFlags,
12
+ GlobalFlagsInterface,
13
13
  } from './common'
14
14
 
15
15
  /**
@@ -34,7 +34,7 @@ export enum MPTokenIssuanceSetFlags {
34
34
  *
35
35
  * @category Transaction Flags
36
36
  */
37
- export interface MPTokenIssuanceSetFlagsInterface extends GlobalFlags {
37
+ export interface MPTokenIssuanceSetFlagsInterface extends GlobalFlagsInterface {
38
38
  tfMPTLock?: boolean
39
39
  tfMPTUnlock?: boolean
40
40
  }
@@ -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
 
@@ -4,7 +4,7 @@ import { isFlagEnabled } from '../utils'
4
4
 
5
5
  import {
6
6
  BaseTransaction,
7
- GlobalFlags,
7
+ GlobalFlagsInterface,
8
8
  validateBaseTransaction,
9
9
  isAmount,
10
10
  parseAmountValue,
@@ -33,7 +33,7 @@ export enum NFTokenCreateOfferFlags {
33
33
  *
34
34
  * @category Transaction Flags
35
35
  */
36
- export interface NFTokenCreateOfferFlagsInterface extends GlobalFlags {
36
+ export interface NFTokenCreateOfferFlagsInterface extends GlobalFlagsInterface {
37
37
  tfSellNFToken?: boolean
38
38
  }
39
39
 
@@ -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)
@@ -5,7 +5,7 @@ import { isHex } from '../utils'
5
5
  import {
6
6
  Account,
7
7
  BaseTransaction,
8
- GlobalFlags,
8
+ GlobalFlagsInterface,
9
9
  isAccount,
10
10
  isAmount,
11
11
  isNumber,
@@ -53,7 +53,7 @@ export enum NFTokenMintFlags {
53
53
  *
54
54
  * @category Transaction Flags
55
55
  */
56
- export interface NFTokenMintFlagsInterface extends GlobalFlags {
56
+ export interface NFTokenMintFlagsInterface extends GlobalFlagsInterface {
57
57
  tfBurnable?: boolean
58
58
  tfOnlyXRP?: boolean
59
59
  tfTrustLine?: boolean
@@ -110,13 +110,13 @@ export function validateXChainAddAccountCreateAttestation(
110
110
  validateRequiredField(
111
111
  tx,
112
112
  'WasLockingChainSend',
113
- (inp) => inp === 0 || inp === 1,
113
+ (inp: unknown): inp is 0 | 1 => inp === 0 || inp === 1,
114
114
  )
115
115
 
116
116
  validateRequiredField(
117
117
  tx,
118
118
  'XChainAccountCreateCount',
119
- (inp) => isNumber(inp) || isString(inp),
119
+ (inp: unknown): inp is number | string => isNumber(inp) || isString(inp),
120
120
  )
121
121
 
122
122
  validateRequiredField(tx, 'XChainBridge', isXChainBridge)
@@ -104,7 +104,7 @@ export function validateXChainAddClaimAttestation(
104
104
  validateRequiredField(
105
105
  tx,
106
106
  'WasLockingChainSend',
107
- (inp) => inp === 0 || inp === 1,
107
+ (inp: unknown): inp is 0 | 1 => inp === 0 || inp === 1,
108
108
  )
109
109
 
110
110
  validateRequiredField(tx, 'XChainBridge', isXChainBridge)
@@ -112,6 +112,6 @@ export function validateXChainAddClaimAttestation(
112
112
  validateRequiredField(
113
113
  tx,
114
114
  'XChainClaimID',
115
- (inp) => isNumber(inp) || isString(inp),
115
+ (inp: unknown): inp is number | string => isNumber(inp) || isString(inp),
116
116
  )
117
117
  }
@@ -68,7 +68,7 @@ export function validateXChainClaim(tx: Record<string, unknown>): void {
68
68
  validateRequiredField(
69
69
  tx,
70
70
  'XChainClaimID',
71
- (inp) => isNumber(inp) || isString(inp),
71
+ (inp: unknown): inp is number | string => isNumber(inp) || isString(inp),
72
72
  )
73
73
 
74
74
  validateRequiredField(tx, 'Destination', isAccount)
@@ -67,7 +67,7 @@ export function validateXChainCommit(tx: Record<string, unknown>): void {
67
67
  validateRequiredField(
68
68
  tx,
69
69
  'XChainClaimID',
70
- (inp) => isNumber(inp) || isString(inp),
70
+ (inp: unknown): inp is number | string => isNumber(inp) || isString(inp),
71
71
  )
72
72
 
73
73
  validateOptionalField(tx, 'OtherChainDestination', isAccount)
@@ -2,7 +2,7 @@ import { Amount, XChainBridge } from '../common'
2
2
 
3
3
  import {
4
4
  BaseTransaction,
5
- GlobalFlags,
5
+ GlobalFlagsInterface,
6
6
  isAmount,
7
7
  isXChainBridge,
8
8
  validateBaseTransaction,
@@ -26,7 +26,7 @@ export enum XChainModifyBridgeFlags {
26
26
  *
27
27
  * @category Transaction Flags
28
28
  */
29
- export interface XChainModifyBridgeFlagsInterface extends GlobalFlags {
29
+ export interface XChainModifyBridgeFlagsInterface extends GlobalFlagsInterface {
30
30
  /** Clears the MinAccountCreateAmount of the bridge. */
31
31
  tfClearAccountCreateAmount?: boolean
32
32
  }
@@ -52,8 +52,7 @@ export function validateAccountDelete(tx: Record<string, unknown>): void {
52
52
 
53
53
  validateCredentialsList(
54
54
  tx.CredentialIDs,
55
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- known from base check
56
- tx.TransactionType as string,
55
+ tx.TransactionType,
57
56
  true,
58
57
  MAX_AUTHORIZED_CREDENTIALS,
59
58
  )
@@ -3,6 +3,7 @@ import { ValidationError } from '../../errors'
3
3
  import {
4
4
  Account,
5
5
  BaseTransaction,
6
+ GlobalFlagsInterface,
6
7
  isAccount,
7
8
  validateBaseTransaction,
8
9
  validateOptionalField,
@@ -112,7 +113,7 @@ export enum AccountSetTfFlags {
112
113
  * // }
113
114
  * ```
114
115
  */
115
- export interface AccountSetFlagsInterface {
116
+ export interface AccountSetFlagsInterface extends GlobalFlagsInterface {
116
117
  tfRequireDestTag?: boolean
117
118
  tfOptionalDestTag?: boolean
118
119
  tfRequireAuth?: boolean
@@ -0,0 +1,151 @@
1
+ import { ValidationError } from '../../errors'
2
+ import { Signer } from '../common'
3
+ import { hasFlag } from '../utils'
4
+
5
+ import {
6
+ BaseTransaction,
7
+ GlobalFlags,
8
+ GlobalFlagsInterface,
9
+ isArray,
10
+ isRecord,
11
+ isString,
12
+ validateBaseTransaction,
13
+ validateOptionalField,
14
+ validateRequiredField,
15
+ } from './common'
16
+ import type { SubmittableTransaction } from './transaction'
17
+
18
+ /**
19
+ * Enum representing values of {@link Batch} transaction flags.
20
+ *
21
+ * @category Transaction Flags
22
+ */
23
+ export enum BatchFlags {
24
+ tfAllOrNothing = 0x00010000,
25
+ tfOnlyOne = 0x00020000,
26
+ tfUntilFailure = 0x00040000,
27
+ tfIndependent = 0x00080000,
28
+ }
29
+
30
+ /**
31
+ * Map of flags to boolean values representing {@link Batch} transaction
32
+ * flags.
33
+ *
34
+ * @category Transaction Flags
35
+ */
36
+ export interface BatchFlagsInterface extends GlobalFlagsInterface {
37
+ tfAllOrNothing?: boolean
38
+ tfOnlyOne?: boolean
39
+ tfUntilFailure?: boolean
40
+ tfIndependent?: boolean
41
+ }
42
+
43
+ export type BatchInnerTransaction = SubmittableTransaction & {
44
+ Fee?: '0'
45
+
46
+ SigningPubKey?: ''
47
+
48
+ TxnSignature?: never
49
+
50
+ Signers?: never
51
+
52
+ LastLedgerSequence?: never
53
+ }
54
+
55
+ export interface BatchSigner {
56
+ BatchSigner: {
57
+ Account: string
58
+
59
+ SigningPubKey?: string
60
+
61
+ TxnSignature?: string
62
+
63
+ Signers?: Signer[]
64
+ }
65
+ }
66
+
67
+ /**
68
+ * @category Transaction Models
69
+ */
70
+ export interface Batch extends BaseTransaction {
71
+ TransactionType: 'Batch'
72
+
73
+ BatchSigners?: BatchSigner[]
74
+
75
+ RawTransactions: Array<{
76
+ RawTransaction: BatchInnerTransaction
77
+ }>
78
+ }
79
+
80
+ /**
81
+ * Verify the form and type of a Batch at runtime.
82
+ *
83
+ * @param tx - A Batch Transaction.
84
+ * @throws When the Batch is malformed.
85
+ */
86
+ // eslint-disable-next-line max-lines-per-function -- needed here due to the complexity
87
+ export function validateBatch(tx: Record<string, unknown>): void {
88
+ validateBaseTransaction(tx)
89
+
90
+ validateRequiredField(tx, 'RawTransactions', isArray)
91
+
92
+ tx.RawTransactions.forEach((rawTxObj, index) => {
93
+ if (!isRecord(rawTxObj)) {
94
+ throw new ValidationError(
95
+ `Batch: RawTransactions[${index}] is not object.`,
96
+ )
97
+ }
98
+ validateRequiredField(rawTxObj, 'RawTransaction', isRecord, {
99
+ paramName: `RawTransactions[${index}].RawTransaction`,
100
+ txType: 'Batch',
101
+ })
102
+
103
+ const rawTx = rawTxObj.RawTransaction
104
+ if (rawTx.TransactionType === 'Batch') {
105
+ throw new ValidationError(
106
+ `Batch: RawTransactions[${index}] is a Batch transaction. Cannot nest Batch transactions.`,
107
+ )
108
+ }
109
+
110
+ // Check for the `tfInnerBatchTxn` flag in the inner transactions
111
+ if (!hasFlag(rawTx, GlobalFlags.tfInnerBatchTxn, 'tfInnerBatchTxn')) {
112
+ throw new ValidationError(
113
+ `Batch: RawTransactions[${index}] must contain the \`tfInnerBatchTxn\` flag.`,
114
+ )
115
+ }
116
+
117
+ // Full validation of each `RawTransaction` object is done in `validate` to avoid dependency cycles
118
+ })
119
+
120
+ validateOptionalField(tx, 'BatchSigners', isArray)
121
+
122
+ tx.BatchSigners?.forEach((signerObj, index) => {
123
+ if (!isRecord(signerObj)) {
124
+ throw new ValidationError(`Batch: BatchSigners[${index}] is not object.`)
125
+ }
126
+
127
+ const signerRecord = signerObj
128
+ validateRequiredField(signerRecord, 'BatchSigner', isRecord, {
129
+ paramName: `BatchSigners[${index}].BatchSigner`,
130
+ txType: 'Batch',
131
+ })
132
+
133
+ const signer = signerRecord.BatchSigner
134
+ validateRequiredField(signer, 'Account', isString, {
135
+ paramName: `BatchSigners[${index}].Account`,
136
+ txType: 'Batch',
137
+ })
138
+ validateOptionalField(signer, 'SigningPubKey', isString, {
139
+ paramName: `BatchSigners[${index}].SigningPubKey`,
140
+ txType: 'Batch',
141
+ })
142
+ validateOptionalField(signer, 'TxnSignature', isString, {
143
+ paramName: `BatchSigners[${index}].TxnSignature`,
144
+ txType: 'Batch',
145
+ })
146
+ validateOptionalField(signer, 'Signers', isArray, {
147
+ paramName: `BatchSigners[${index}].Signers`,
148
+ txType: 'Batch',
149
+ })
150
+ })
151
+ }
@@ -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