xrpl 2.14.1 → 2.14.2

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.

Potentially problematic release.


This version of xrpl might be problematic. Click here for more details.

Files changed (821) hide show
  1. package/README.md +3 -3
  2. package/build/xrpl-latest-min.js +24471 -3
  3. package/build/xrpl-latest-min.js.map +1 -1
  4. package/build/xrpl-latest.js +17934 -75049
  5. package/build/xrpl-latest.js.map +1 -1
  6. package/dist/npm/Wallet/authorizeChannel.d.ts +3 -0
  7. package/dist/npm/Wallet/authorizeChannel.d.ts.map +1 -0
  8. package/dist/npm/Wallet/authorizeChannel.js +14 -0
  9. package/dist/npm/Wallet/authorizeChannel.js.map +1 -0
  10. package/dist/npm/Wallet/defaultFaucets.d.ts +1 -2
  11. package/dist/npm/Wallet/defaultFaucets.d.ts.map +1 -1
  12. package/dist/npm/Wallet/defaultFaucets.js +1 -6
  13. package/dist/npm/Wallet/defaultFaucets.js.map +1 -1
  14. package/dist/npm/Wallet/fundWallet.d.ts +17 -3
  15. package/dist/npm/Wallet/fundWallet.d.ts.map +1 -1
  16. package/dist/npm/Wallet/fundWallet.js +49 -78
  17. package/dist/npm/Wallet/fundWallet.js.map +1 -1
  18. package/dist/npm/Wallet/index.d.ts.map +1 -1
  19. package/dist/npm/Wallet/index.js +32 -23
  20. package/dist/npm/Wallet/index.js.map +1 -1
  21. package/dist/npm/Wallet/rfc1751.d.ts +1 -2
  22. package/dist/npm/Wallet/rfc1751.d.ts.map +1 -1
  23. package/dist/npm/Wallet/rfc1751.js +21 -5
  24. package/dist/npm/Wallet/rfc1751.js.map +1 -1
  25. package/dist/npm/Wallet/signer.d.ts +2 -4
  26. package/dist/npm/Wallet/signer.d.ts.map +1 -1
  27. package/dist/npm/Wallet/signer.js +19 -14
  28. package/dist/npm/Wallet/signer.js.map +1 -1
  29. package/dist/npm/Wallet/walletFromSecretNumbers.js +2 -2
  30. package/dist/npm/Wallet/walletFromSecretNumbers.js.map +1 -1
  31. package/dist/npm/client/RequestManager.d.ts +6 -4
  32. package/dist/npm/client/RequestManager.d.ts.map +1 -1
  33. package/dist/npm/client/RequestManager.js +25 -1
  34. package/dist/npm/client/RequestManager.js.map +1 -1
  35. package/dist/npm/client/connection.d.ts +8 -11
  36. package/dist/npm/client/connection.d.ts.map +1 -1
  37. package/dist/npm/client/connection.js +11 -57
  38. package/dist/npm/client/connection.js.map +1 -1
  39. package/dist/npm/client/index.d.ts +61 -79
  40. package/dist/npm/client/index.d.ts.map +1 -1
  41. package/dist/npm/client/index.js +180 -50
  42. package/dist/npm/client/index.js.map +1 -1
  43. package/dist/npm/client/partialPayment.d.ts +6 -3
  44. package/dist/npm/client/partialPayment.d.ts.map +1 -1
  45. package/dist/npm/client/partialPayment.js +21 -6
  46. package/dist/npm/client/partialPayment.js.map +1 -1
  47. package/dist/npm/errors.d.ts.map +1 -1
  48. package/dist/npm/errors.js +1 -2
  49. package/dist/npm/errors.js.map +1 -1
  50. package/dist/npm/index.d.ts +2 -1
  51. package/dist/npm/index.d.ts.map +1 -1
  52. package/dist/npm/index.js +9 -3
  53. package/dist/npm/index.js.map +1 -1
  54. package/dist/npm/models/common/index.d.ts +23 -0
  55. package/dist/npm/models/common/index.d.ts.map +1 -1
  56. package/dist/npm/models/common/index.js +4 -0
  57. package/dist/npm/models/common/index.js.map +1 -1
  58. package/dist/npm/models/index.d.ts +1 -1
  59. package/dist/npm/models/index.d.ts.map +1 -1
  60. package/dist/npm/models/index.js +4 -2
  61. package/dist/npm/models/index.js.map +1 -1
  62. package/dist/npm/models/ledger/AMM.d.ts +2 -2
  63. package/dist/npm/models/ledger/AMM.d.ts.map +1 -1
  64. package/dist/npm/models/ledger/AccountRoot.js +1 -1
  65. package/dist/npm/models/ledger/AccountRoot.js.map +1 -1
  66. package/dist/npm/models/ledger/Amendments.d.ts +2 -2
  67. package/dist/npm/models/ledger/Amendments.d.ts.map +1 -1
  68. package/dist/npm/models/ledger/BaseLedgerEntry.d.ts +3 -3
  69. package/dist/npm/models/ledger/BaseLedgerEntry.d.ts.map +1 -1
  70. package/dist/npm/models/ledger/Credential.d.ts +17 -0
  71. package/dist/npm/models/ledger/Credential.d.ts.map +1 -0
  72. package/dist/npm/models/ledger/Credential.js +3 -0
  73. package/dist/npm/models/ledger/Credential.js.map +1 -0
  74. package/dist/npm/models/ledger/DepositPreauth.d.ts +3 -1
  75. package/dist/npm/models/ledger/DepositPreauth.d.ts.map +1 -1
  76. package/dist/npm/models/ledger/DirectoryNode.d.ts +2 -2
  77. package/dist/npm/models/ledger/DirectoryNode.d.ts.map +1 -1
  78. package/dist/npm/models/ledger/FeeSettings.d.ts +2 -2
  79. package/dist/npm/models/ledger/FeeSettings.d.ts.map +1 -1
  80. package/dist/npm/models/ledger/Ledger.d.ts +14 -4
  81. package/dist/npm/models/ledger/Ledger.d.ts.map +1 -1
  82. package/dist/npm/models/ledger/LedgerEntry.d.ts +5 -2
  83. package/dist/npm/models/ledger/LedgerEntry.d.ts.map +1 -1
  84. package/dist/npm/models/ledger/LedgerHashes.d.ts +2 -2
  85. package/dist/npm/models/ledger/LedgerHashes.d.ts.map +1 -1
  86. package/dist/npm/models/ledger/MPToken.d.ts +10 -0
  87. package/dist/npm/models/ledger/MPToken.d.ts.map +1 -0
  88. package/dist/npm/models/ledger/MPToken.js +3 -0
  89. package/dist/npm/models/ledger/MPToken.js.map +1 -0
  90. package/dist/npm/models/ledger/MPTokenIssuance.d.ts +13 -0
  91. package/dist/npm/models/ledger/MPTokenIssuance.d.ts.map +1 -0
  92. package/dist/npm/models/ledger/MPTokenIssuance.js +3 -0
  93. package/dist/npm/models/ledger/MPTokenIssuance.js.map +1 -0
  94. package/dist/npm/models/ledger/NegativeUNL.d.ts +2 -2
  95. package/dist/npm/models/ledger/NegativeUNL.d.ts.map +1 -1
  96. package/dist/npm/models/ledger/Offer.js +1 -1
  97. package/dist/npm/models/ledger/Offer.js.map +1 -1
  98. package/dist/npm/models/ledger/Oracle.d.ts +12 -0
  99. package/dist/npm/models/ledger/Oracle.d.ts.map +1 -0
  100. package/dist/npm/models/ledger/Oracle.js +3 -0
  101. package/dist/npm/models/ledger/Oracle.js.map +1 -0
  102. package/dist/npm/models/ledger/PermissionedDomain.d.ts +11 -0
  103. package/dist/npm/models/ledger/PermissionedDomain.d.ts.map +1 -0
  104. package/dist/npm/models/ledger/PermissionedDomain.js +3 -0
  105. package/dist/npm/models/ledger/PermissionedDomain.js.map +1 -0
  106. package/dist/npm/models/ledger/RippleState.d.ts +4 -1
  107. package/dist/npm/models/ledger/RippleState.d.ts.map +1 -1
  108. package/dist/npm/models/ledger/RippleState.js +4 -1
  109. package/dist/npm/models/ledger/RippleState.js.map +1 -1
  110. package/dist/npm/models/ledger/SignerList.js +1 -1
  111. package/dist/npm/models/ledger/SignerList.js.map +1 -1
  112. package/dist/npm/models/ledger/index.d.ts +6 -2
  113. package/dist/npm/models/ledger/index.d.ts.map +1 -1
  114. package/dist/npm/models/ledger/index.js.map +1 -1
  115. package/dist/npm/models/methods/accountChannels.d.ts +1 -1
  116. package/dist/npm/models/methods/accountChannels.d.ts.map +1 -1
  117. package/dist/npm/models/methods/accountInfo.d.ts +17 -4
  118. package/dist/npm/models/methods/accountInfo.d.ts.map +1 -1
  119. package/dist/npm/models/methods/accountTx.d.ts +11 -5
  120. package/dist/npm/models/methods/accountTx.d.ts.map +1 -1
  121. package/dist/npm/models/methods/depositAuthorized.d.ts +2 -0
  122. package/dist/npm/models/methods/depositAuthorized.d.ts.map +1 -1
  123. package/dist/npm/models/methods/feature.d.ts +28 -0
  124. package/dist/npm/models/methods/feature.d.ts.map +1 -0
  125. package/dist/npm/models/methods/feature.js +3 -0
  126. package/dist/npm/models/methods/feature.js.map +1 -0
  127. package/dist/npm/models/methods/getAggregatePrice.d.ts +31 -0
  128. package/dist/npm/models/methods/getAggregatePrice.d.ts.map +1 -0
  129. package/dist/npm/models/methods/getAggregatePrice.js +3 -0
  130. package/dist/npm/models/methods/getAggregatePrice.js.map +1 -0
  131. package/dist/npm/models/methods/index.d.ts +25 -9
  132. package/dist/npm/models/methods/index.d.ts.map +1 -1
  133. package/dist/npm/models/methods/ledger.d.ts +49 -9
  134. package/dist/npm/models/methods/ledger.d.ts.map +1 -1
  135. package/dist/npm/models/methods/ledgerEntry.d.ts +12 -0
  136. package/dist/npm/models/methods/ledgerEntry.d.ts.map +1 -1
  137. package/dist/npm/models/methods/nftsByIssuer.d.ts +19 -0
  138. package/dist/npm/models/methods/nftsByIssuer.d.ts.map +1 -0
  139. package/dist/npm/models/methods/nftsByIssuer.js +3 -0
  140. package/dist/npm/models/methods/nftsByIssuer.js.map +1 -0
  141. package/dist/npm/models/methods/serverState.d.ts +1 -0
  142. package/dist/npm/models/methods/serverState.d.ts.map +1 -1
  143. package/dist/npm/models/methods/simulate.d.ts +42 -0
  144. package/dist/npm/models/methods/simulate.d.ts.map +1 -0
  145. package/dist/npm/models/methods/simulate.js +3 -0
  146. package/dist/npm/models/methods/simulate.js.map +1 -0
  147. package/dist/npm/models/methods/submit.d.ts +2 -2
  148. package/dist/npm/models/methods/submit.d.ts.map +1 -1
  149. package/dist/npm/models/methods/submitMultisigned.d.ts +16 -5
  150. package/dist/npm/models/methods/submitMultisigned.d.ts.map +1 -1
  151. package/dist/npm/models/methods/subscribe.d.ts +10 -3
  152. package/dist/npm/models/methods/subscribe.d.ts.map +1 -1
  153. package/dist/npm/models/methods/tx.d.ts +21 -10
  154. package/dist/npm/models/methods/tx.d.ts.map +1 -1
  155. package/dist/npm/models/transactions/AMMClawback.d.ts +17 -0
  156. package/dist/npm/models/transactions/AMMClawback.d.ts.map +1 -0
  157. package/dist/npm/models/transactions/AMMClawback.js +34 -0
  158. package/dist/npm/models/transactions/AMMClawback.js.map +1 -0
  159. package/dist/npm/models/transactions/AMMDeposit.d.ts +3 -1
  160. package/dist/npm/models/transactions/AMMDeposit.d.ts.map +1 -1
  161. package/dist/npm/models/transactions/AMMDeposit.js +2 -1
  162. package/dist/npm/models/transactions/AMMDeposit.js.map +1 -1
  163. package/dist/npm/models/transactions/AMMWithdraw.js +1 -1
  164. package/dist/npm/models/transactions/AMMWithdraw.js.map +1 -1
  165. package/dist/npm/models/transactions/CredentialAccept.d.ts +9 -0
  166. package/dist/npm/models/transactions/CredentialAccept.d.ts.map +1 -0
  167. package/dist/npm/models/transactions/CredentialAccept.js +12 -0
  168. package/dist/npm/models/transactions/CredentialAccept.js.map +1 -0
  169. package/dist/npm/models/transactions/CredentialCreate.d.ts +11 -0
  170. package/dist/npm/models/transactions/CredentialCreate.d.ts.map +1 -0
  171. package/dist/npm/models/transactions/CredentialCreate.js +34 -0
  172. package/dist/npm/models/transactions/CredentialCreate.js.map +1 -0
  173. package/dist/npm/models/transactions/CredentialDelete.d.ts +10 -0
  174. package/dist/npm/models/transactions/CredentialDelete.d.ts.map +1 -0
  175. package/dist/npm/models/transactions/CredentialDelete.js +17 -0
  176. package/dist/npm/models/transactions/CredentialDelete.js.map +1 -0
  177. package/dist/npm/models/transactions/MPTokenAuthorize.d.ts +15 -0
  178. package/dist/npm/models/transactions/MPTokenAuthorize.d.ts.map +1 -0
  179. package/dist/npm/models/transactions/MPTokenAuthorize.js +15 -0
  180. package/dist/npm/models/transactions/MPTokenAuthorize.js.map +1 -0
  181. package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts +31 -0
  182. package/dist/npm/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -0
  183. package/dist/npm/models/transactions/MPTokenIssuanceCreate.js +54 -0
  184. package/dist/npm/models/transactions/MPTokenIssuanceCreate.js.map +1 -0
  185. package/dist/npm/models/transactions/MPTokenIssuanceDestroy.d.ts +7 -0
  186. package/dist/npm/models/transactions/MPTokenIssuanceDestroy.d.ts.map +1 -0
  187. package/dist/npm/models/transactions/MPTokenIssuanceDestroy.js +10 -0
  188. package/dist/npm/models/transactions/MPTokenIssuanceDestroy.js.map +1 -0
  189. package/dist/npm/models/transactions/MPTokenIssuanceSet.d.ts +17 -0
  190. package/dist/npm/models/transactions/MPTokenIssuanceSet.d.ts.map +1 -0
  191. package/dist/npm/models/transactions/MPTokenIssuanceSet.js +29 -0
  192. package/dist/npm/models/transactions/MPTokenIssuanceSet.js.map +1 -0
  193. package/dist/npm/models/transactions/NFTokenAcceptOffer.d.ts +4 -0
  194. package/dist/npm/models/transactions/NFTokenAcceptOffer.d.ts.map +1 -1
  195. package/dist/npm/models/transactions/NFTokenAcceptOffer.js.map +1 -1
  196. package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts +4 -0
  197. package/dist/npm/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  198. package/dist/npm/models/transactions/NFTokenCancelOffer.js.map +1 -1
  199. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts +4 -0
  200. package/dist/npm/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  201. package/dist/npm/models/transactions/NFTokenCreateOffer.js +1 -1
  202. package/dist/npm/models/transactions/NFTokenCreateOffer.js.map +1 -1
  203. package/dist/npm/models/transactions/NFTokenMint.d.ts +7 -1
  204. package/dist/npm/models/transactions/NFTokenMint.d.ts.map +1 -1
  205. package/dist/npm/models/transactions/NFTokenMint.js +2 -1
  206. package/dist/npm/models/transactions/NFTokenMint.js.map +1 -1
  207. package/dist/npm/models/transactions/NFTokenModify.d.ts +9 -0
  208. package/dist/npm/models/transactions/NFTokenModify.d.ts.map +1 -0
  209. package/dist/npm/models/transactions/NFTokenModify.js +22 -0
  210. package/dist/npm/models/transactions/NFTokenModify.js.map +1 -0
  211. package/dist/npm/models/transactions/XChainModifyBridge.js +1 -1
  212. package/dist/npm/models/transactions/XChainModifyBridge.js.map +1 -1
  213. package/dist/npm/models/transactions/accountDelete.d.ts +1 -0
  214. package/dist/npm/models/transactions/accountDelete.d.ts.map +1 -1
  215. package/dist/npm/models/transactions/accountDelete.js +1 -0
  216. package/dist/npm/models/transactions/accountDelete.js.map +1 -1
  217. package/dist/npm/models/transactions/accountSet.js +2 -2
  218. package/dist/npm/models/transactions/accountSet.js.map +1 -1
  219. package/dist/npm/models/transactions/clawback.d.ts +3 -2
  220. package/dist/npm/models/transactions/clawback.d.ts.map +1 -1
  221. package/dist/npm/models/transactions/clawback.js +11 -1
  222. package/dist/npm/models/transactions/clawback.js.map +1 -1
  223. package/dist/npm/models/transactions/common.d.ts +7 -1
  224. package/dist/npm/models/transactions/common.d.ts.map +1 -1
  225. package/dist/npm/models/transactions/common.js +97 -4
  226. package/dist/npm/models/transactions/common.js.map +1 -1
  227. package/dist/npm/models/transactions/depositPreauth.d.ts +3 -0
  228. package/dist/npm/models/transactions/depositPreauth.d.ts.map +1 -1
  229. package/dist/npm/models/transactions/depositPreauth.js +20 -7
  230. package/dist/npm/models/transactions/depositPreauth.js.map +1 -1
  231. package/dist/npm/models/transactions/enableAmendment.js +1 -1
  232. package/dist/npm/models/transactions/enableAmendment.js.map +1 -1
  233. package/dist/npm/models/transactions/escrowFinish.d.ts +1 -0
  234. package/dist/npm/models/transactions/escrowFinish.d.ts.map +1 -1
  235. package/dist/npm/models/transactions/escrowFinish.js +1 -0
  236. package/dist/npm/models/transactions/escrowFinish.js.map +1 -1
  237. package/dist/npm/models/transactions/index.d.ts +16 -3
  238. package/dist/npm/models/transactions/index.d.ts.map +1 -1
  239. package/dist/npm/models/transactions/index.js +13 -1
  240. package/dist/npm/models/transactions/index.js.map +1 -1
  241. package/dist/npm/models/transactions/metadata.d.ts +16 -4
  242. package/dist/npm/models/transactions/metadata.d.ts.map +1 -1
  243. package/dist/npm/models/transactions/metadata.js.map +1 -1
  244. package/dist/npm/models/transactions/offerCreate.js +1 -1
  245. package/dist/npm/models/transactions/offerCreate.js.map +1 -1
  246. package/dist/npm/models/transactions/oracleDelete.d.ts +7 -0
  247. package/dist/npm/models/transactions/oracleDelete.d.ts.map +1 -0
  248. package/dist/npm/models/transactions/oracleDelete.js +10 -0
  249. package/dist/npm/models/transactions/oracleDelete.js.map +1 -0
  250. package/dist/npm/models/transactions/oracleSet.d.ts +13 -0
  251. package/dist/npm/models/transactions/oracleSet.d.ts.map +1 -0
  252. package/dist/npm/models/transactions/oracleSet.js +59 -0
  253. package/dist/npm/models/transactions/oracleSet.js.map +1 -0
  254. package/dist/npm/models/transactions/payment.d.ts +12 -6
  255. package/dist/npm/models/transactions/payment.d.ts.map +1 -1
  256. package/dist/npm/models/transactions/payment.js +3 -2
  257. package/dist/npm/models/transactions/payment.js.map +1 -1
  258. package/dist/npm/models/transactions/paymentChannelClaim.d.ts +1 -0
  259. package/dist/npm/models/transactions/paymentChannelClaim.d.ts.map +1 -1
  260. package/dist/npm/models/transactions/paymentChannelClaim.js +2 -1
  261. package/dist/npm/models/transactions/paymentChannelClaim.js.map +1 -1
  262. package/dist/npm/models/transactions/permissionedDomainDelete.d.ts +7 -0
  263. package/dist/npm/models/transactions/permissionedDomainDelete.d.ts.map +1 -0
  264. package/dist/npm/models/transactions/permissionedDomainDelete.js +10 -0
  265. package/dist/npm/models/transactions/permissionedDomainDelete.js.map +1 -0
  266. package/dist/npm/models/transactions/permissionedDomainSet.d.ts +9 -0
  267. package/dist/npm/models/transactions/permissionedDomainSet.d.ts.map +1 -0
  268. package/dist/npm/models/transactions/permissionedDomainSet.js +13 -0
  269. package/dist/npm/models/transactions/permissionedDomainSet.js.map +1 -0
  270. package/dist/npm/models/transactions/transaction.d.ts +19 -4
  271. package/dist/npm/models/transactions/transaction.d.ts.map +1 -1
  272. package/dist/npm/models/transactions/transaction.js +53 -1
  273. package/dist/npm/models/transactions/transaction.js.map +1 -1
  274. package/dist/npm/models/transactions/trustSet.d.ts +5 -1
  275. package/dist/npm/models/transactions/trustSet.d.ts.map +1 -1
  276. package/dist/npm/models/transactions/trustSet.js +3 -1
  277. package/dist/npm/models/transactions/trustSet.js.map +1 -1
  278. package/dist/npm/models/utils/flags.d.ts +2 -0
  279. package/dist/npm/models/utils/flags.d.ts.map +1 -1
  280. package/dist/npm/models/utils/flags.js +51 -16
  281. package/dist/npm/models/utils/flags.js.map +1 -1
  282. package/dist/npm/models/utils/index.d.ts +1 -0
  283. package/dist/npm/models/utils/index.d.ts.map +1 -1
  284. package/dist/npm/models/utils/index.js +2 -1
  285. package/dist/npm/models/utils/index.js.map +1 -1
  286. package/dist/npm/snippets/src/claimPayChannel.js +1 -1
  287. package/dist/npm/snippets/src/claimPayChannel.js.map +1 -1
  288. package/dist/npm/snippets/src/getTransaction.js +1 -1
  289. package/dist/npm/snippets/src/getTransaction.js.map +1 -1
  290. package/dist/npm/snippets/src/paths.js +7 -12
  291. package/dist/npm/snippets/src/paths.js.map +1 -1
  292. package/dist/npm/snippets/src/sendEscrow.js +1 -1
  293. package/dist/npm/snippets/src/sendEscrow.js.map +1 -1
  294. package/dist/npm/snippets/tsconfig.tsbuildinfo +1 -1
  295. package/dist/npm/src/Wallet/authorizeChannel.d.ts +3 -0
  296. package/dist/npm/src/Wallet/authorizeChannel.d.ts.map +1 -0
  297. package/dist/npm/src/Wallet/authorizeChannel.js +14 -0
  298. package/dist/npm/src/Wallet/authorizeChannel.js.map +1 -0
  299. package/dist/npm/src/Wallet/defaultFaucets.d.ts +1 -2
  300. package/dist/npm/src/Wallet/defaultFaucets.d.ts.map +1 -1
  301. package/dist/npm/src/Wallet/defaultFaucets.js +1 -6
  302. package/dist/npm/src/Wallet/defaultFaucets.js.map +1 -1
  303. package/dist/npm/src/Wallet/fundWallet.d.ts +17 -3
  304. package/dist/npm/src/Wallet/fundWallet.d.ts.map +1 -1
  305. package/dist/npm/src/Wallet/fundWallet.js +49 -78
  306. package/dist/npm/src/Wallet/fundWallet.js.map +1 -1
  307. package/dist/npm/src/Wallet/index.d.ts.map +1 -1
  308. package/dist/npm/src/Wallet/index.js +32 -23
  309. package/dist/npm/src/Wallet/index.js.map +1 -1
  310. package/dist/npm/src/Wallet/rfc1751.d.ts +1 -2
  311. package/dist/npm/src/Wallet/rfc1751.d.ts.map +1 -1
  312. package/dist/npm/src/Wallet/rfc1751.js +21 -5
  313. package/dist/npm/src/Wallet/rfc1751.js.map +1 -1
  314. package/dist/npm/src/Wallet/signer.d.ts +2 -4
  315. package/dist/npm/src/Wallet/signer.d.ts.map +1 -1
  316. package/dist/npm/src/Wallet/signer.js +19 -14
  317. package/dist/npm/src/Wallet/signer.js.map +1 -1
  318. package/dist/npm/src/Wallet/walletFromSecretNumbers.js +2 -2
  319. package/dist/npm/src/Wallet/walletFromSecretNumbers.js.map +1 -1
  320. package/dist/npm/src/client/RequestManager.d.ts +6 -4
  321. package/dist/npm/src/client/RequestManager.d.ts.map +1 -1
  322. package/dist/npm/src/client/RequestManager.js +25 -1
  323. package/dist/npm/src/client/RequestManager.js.map +1 -1
  324. package/dist/npm/src/client/connection.d.ts +8 -11
  325. package/dist/npm/src/client/connection.d.ts.map +1 -1
  326. package/dist/npm/src/client/connection.js +11 -57
  327. package/dist/npm/src/client/connection.js.map +1 -1
  328. package/dist/npm/src/client/index.d.ts +61 -79
  329. package/dist/npm/src/client/index.d.ts.map +1 -1
  330. package/dist/npm/src/client/index.js +180 -50
  331. package/dist/npm/src/client/index.js.map +1 -1
  332. package/dist/npm/src/client/partialPayment.d.ts +6 -3
  333. package/dist/npm/src/client/partialPayment.d.ts.map +1 -1
  334. package/dist/npm/src/client/partialPayment.js +21 -6
  335. package/dist/npm/src/client/partialPayment.js.map +1 -1
  336. package/dist/npm/src/errors.d.ts.map +1 -1
  337. package/dist/npm/src/errors.js +1 -2
  338. package/dist/npm/src/errors.js.map +1 -1
  339. package/dist/npm/src/index.d.ts +2 -1
  340. package/dist/npm/src/index.d.ts.map +1 -1
  341. package/dist/npm/src/index.js +9 -3
  342. package/dist/npm/src/index.js.map +1 -1
  343. package/dist/npm/src/models/common/index.d.ts +23 -0
  344. package/dist/npm/src/models/common/index.d.ts.map +1 -1
  345. package/dist/npm/src/models/common/index.js +4 -0
  346. package/dist/npm/src/models/common/index.js.map +1 -1
  347. package/dist/npm/src/models/index.d.ts +1 -1
  348. package/dist/npm/src/models/index.d.ts.map +1 -1
  349. package/dist/npm/src/models/index.js +4 -2
  350. package/dist/npm/src/models/index.js.map +1 -1
  351. package/dist/npm/src/models/ledger/AMM.d.ts +2 -2
  352. package/dist/npm/src/models/ledger/AMM.d.ts.map +1 -1
  353. package/dist/npm/src/models/ledger/AccountRoot.js +1 -1
  354. package/dist/npm/src/models/ledger/AccountRoot.js.map +1 -1
  355. package/dist/npm/src/models/ledger/Amendments.d.ts +2 -2
  356. package/dist/npm/src/models/ledger/Amendments.d.ts.map +1 -1
  357. package/dist/npm/src/models/ledger/BaseLedgerEntry.d.ts +3 -3
  358. package/dist/npm/src/models/ledger/BaseLedgerEntry.d.ts.map +1 -1
  359. package/dist/npm/src/models/ledger/Credential.d.ts +17 -0
  360. package/dist/npm/src/models/ledger/Credential.d.ts.map +1 -0
  361. package/dist/npm/src/models/ledger/Credential.js +3 -0
  362. package/dist/npm/src/models/ledger/Credential.js.map +1 -0
  363. package/dist/npm/src/models/ledger/DepositPreauth.d.ts +3 -1
  364. package/dist/npm/src/models/ledger/DepositPreauth.d.ts.map +1 -1
  365. package/dist/npm/src/models/ledger/DirectoryNode.d.ts +2 -2
  366. package/dist/npm/src/models/ledger/DirectoryNode.d.ts.map +1 -1
  367. package/dist/npm/src/models/ledger/FeeSettings.d.ts +2 -2
  368. package/dist/npm/src/models/ledger/FeeSettings.d.ts.map +1 -1
  369. package/dist/npm/src/models/ledger/Ledger.d.ts +14 -4
  370. package/dist/npm/src/models/ledger/Ledger.d.ts.map +1 -1
  371. package/dist/npm/src/models/ledger/LedgerEntry.d.ts +5 -2
  372. package/dist/npm/src/models/ledger/LedgerEntry.d.ts.map +1 -1
  373. package/dist/npm/src/models/ledger/LedgerHashes.d.ts +2 -2
  374. package/dist/npm/src/models/ledger/LedgerHashes.d.ts.map +1 -1
  375. package/dist/npm/src/models/ledger/MPToken.d.ts +10 -0
  376. package/dist/npm/src/models/ledger/MPToken.d.ts.map +1 -0
  377. package/dist/npm/src/models/ledger/MPToken.js +3 -0
  378. package/dist/npm/src/models/ledger/MPToken.js.map +1 -0
  379. package/dist/npm/src/models/ledger/MPTokenIssuance.d.ts +13 -0
  380. package/dist/npm/src/models/ledger/MPTokenIssuance.d.ts.map +1 -0
  381. package/dist/npm/src/models/ledger/MPTokenIssuance.js +3 -0
  382. package/dist/npm/src/models/ledger/MPTokenIssuance.js.map +1 -0
  383. package/dist/npm/src/models/ledger/NegativeUNL.d.ts +2 -2
  384. package/dist/npm/src/models/ledger/NegativeUNL.d.ts.map +1 -1
  385. package/dist/npm/src/models/ledger/Offer.js +1 -1
  386. package/dist/npm/src/models/ledger/Offer.js.map +1 -1
  387. package/dist/npm/src/models/ledger/Oracle.d.ts +12 -0
  388. package/dist/npm/src/models/ledger/Oracle.d.ts.map +1 -0
  389. package/dist/npm/src/models/ledger/Oracle.js +3 -0
  390. package/dist/npm/src/models/ledger/Oracle.js.map +1 -0
  391. package/dist/npm/src/models/ledger/PermissionedDomain.d.ts +11 -0
  392. package/dist/npm/src/models/ledger/PermissionedDomain.d.ts.map +1 -0
  393. package/dist/npm/src/models/ledger/PermissionedDomain.js +3 -0
  394. package/dist/npm/src/models/ledger/PermissionedDomain.js.map +1 -0
  395. package/dist/npm/src/models/ledger/RippleState.d.ts +4 -1
  396. package/dist/npm/src/models/ledger/RippleState.d.ts.map +1 -1
  397. package/dist/npm/src/models/ledger/RippleState.js +4 -1
  398. package/dist/npm/src/models/ledger/RippleState.js.map +1 -1
  399. package/dist/npm/src/models/ledger/SignerList.js +1 -1
  400. package/dist/npm/src/models/ledger/SignerList.js.map +1 -1
  401. package/dist/npm/src/models/ledger/index.d.ts +6 -2
  402. package/dist/npm/src/models/ledger/index.d.ts.map +1 -1
  403. package/dist/npm/src/models/ledger/index.js.map +1 -1
  404. package/dist/npm/src/models/methods/accountChannels.d.ts +1 -1
  405. package/dist/npm/src/models/methods/accountChannels.d.ts.map +1 -1
  406. package/dist/npm/src/models/methods/accountInfo.d.ts +17 -4
  407. package/dist/npm/src/models/methods/accountInfo.d.ts.map +1 -1
  408. package/dist/npm/src/models/methods/accountTx.d.ts +11 -5
  409. package/dist/npm/src/models/methods/accountTx.d.ts.map +1 -1
  410. package/dist/npm/src/models/methods/depositAuthorized.d.ts +2 -0
  411. package/dist/npm/src/models/methods/depositAuthorized.d.ts.map +1 -1
  412. package/dist/npm/src/models/methods/feature.d.ts +28 -0
  413. package/dist/npm/src/models/methods/feature.d.ts.map +1 -0
  414. package/dist/npm/src/models/methods/feature.js +3 -0
  415. package/dist/npm/src/models/methods/feature.js.map +1 -0
  416. package/dist/npm/src/models/methods/getAggregatePrice.d.ts +31 -0
  417. package/dist/npm/src/models/methods/getAggregatePrice.d.ts.map +1 -0
  418. package/dist/npm/src/models/methods/getAggregatePrice.js +3 -0
  419. package/dist/npm/src/models/methods/getAggregatePrice.js.map +1 -0
  420. package/dist/npm/src/models/methods/index.d.ts +25 -9
  421. package/dist/npm/src/models/methods/index.d.ts.map +1 -1
  422. package/dist/npm/src/models/methods/ledger.d.ts +49 -9
  423. package/dist/npm/src/models/methods/ledger.d.ts.map +1 -1
  424. package/dist/npm/src/models/methods/ledgerEntry.d.ts +12 -0
  425. package/dist/npm/src/models/methods/ledgerEntry.d.ts.map +1 -1
  426. package/dist/npm/src/models/methods/nftsByIssuer.d.ts +19 -0
  427. package/dist/npm/src/models/methods/nftsByIssuer.d.ts.map +1 -0
  428. package/dist/npm/src/models/methods/nftsByIssuer.js +3 -0
  429. package/dist/npm/src/models/methods/nftsByIssuer.js.map +1 -0
  430. package/dist/npm/src/models/methods/serverState.d.ts +1 -0
  431. package/dist/npm/src/models/methods/serverState.d.ts.map +1 -1
  432. package/dist/npm/src/models/methods/simulate.d.ts +42 -0
  433. package/dist/npm/src/models/methods/simulate.d.ts.map +1 -0
  434. package/dist/npm/src/models/methods/simulate.js +3 -0
  435. package/dist/npm/src/models/methods/simulate.js.map +1 -0
  436. package/dist/npm/src/models/methods/submit.d.ts +2 -2
  437. package/dist/npm/src/models/methods/submit.d.ts.map +1 -1
  438. package/dist/npm/src/models/methods/submitMultisigned.d.ts +16 -5
  439. package/dist/npm/src/models/methods/submitMultisigned.d.ts.map +1 -1
  440. package/dist/npm/src/models/methods/subscribe.d.ts +10 -3
  441. package/dist/npm/src/models/methods/subscribe.d.ts.map +1 -1
  442. package/dist/npm/src/models/methods/tx.d.ts +21 -10
  443. package/dist/npm/src/models/methods/tx.d.ts.map +1 -1
  444. package/dist/npm/src/models/transactions/AMMClawback.d.ts +17 -0
  445. package/dist/npm/src/models/transactions/AMMClawback.d.ts.map +1 -0
  446. package/dist/npm/src/models/transactions/AMMClawback.js +34 -0
  447. package/dist/npm/src/models/transactions/AMMClawback.js.map +1 -0
  448. package/dist/npm/src/models/transactions/AMMDeposit.d.ts +3 -1
  449. package/dist/npm/src/models/transactions/AMMDeposit.d.ts.map +1 -1
  450. package/dist/npm/src/models/transactions/AMMDeposit.js +2 -1
  451. package/dist/npm/src/models/transactions/AMMDeposit.js.map +1 -1
  452. package/dist/npm/src/models/transactions/AMMWithdraw.js +1 -1
  453. package/dist/npm/src/models/transactions/AMMWithdraw.js.map +1 -1
  454. package/dist/npm/src/models/transactions/CredentialAccept.d.ts +9 -0
  455. package/dist/npm/src/models/transactions/CredentialAccept.d.ts.map +1 -0
  456. package/dist/npm/src/models/transactions/CredentialAccept.js +12 -0
  457. package/dist/npm/src/models/transactions/CredentialAccept.js.map +1 -0
  458. package/dist/npm/src/models/transactions/CredentialCreate.d.ts +11 -0
  459. package/dist/npm/src/models/transactions/CredentialCreate.d.ts.map +1 -0
  460. package/dist/npm/src/models/transactions/CredentialCreate.js +34 -0
  461. package/dist/npm/src/models/transactions/CredentialCreate.js.map +1 -0
  462. package/dist/npm/src/models/transactions/CredentialDelete.d.ts +10 -0
  463. package/dist/npm/src/models/transactions/CredentialDelete.d.ts.map +1 -0
  464. package/dist/npm/src/models/transactions/CredentialDelete.js +17 -0
  465. package/dist/npm/src/models/transactions/CredentialDelete.js.map +1 -0
  466. package/dist/npm/src/models/transactions/MPTokenAuthorize.d.ts +15 -0
  467. package/dist/npm/src/models/transactions/MPTokenAuthorize.d.ts.map +1 -0
  468. package/dist/npm/src/models/transactions/MPTokenAuthorize.js +15 -0
  469. package/dist/npm/src/models/transactions/MPTokenAuthorize.js.map +1 -0
  470. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts +31 -0
  471. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.d.ts.map +1 -0
  472. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js +54 -0
  473. package/dist/npm/src/models/transactions/MPTokenIssuanceCreate.js.map +1 -0
  474. package/dist/npm/src/models/transactions/MPTokenIssuanceDestroy.d.ts +7 -0
  475. package/dist/npm/src/models/transactions/MPTokenIssuanceDestroy.d.ts.map +1 -0
  476. package/dist/npm/src/models/transactions/MPTokenIssuanceDestroy.js +10 -0
  477. package/dist/npm/src/models/transactions/MPTokenIssuanceDestroy.js.map +1 -0
  478. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.d.ts +17 -0
  479. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.d.ts.map +1 -0
  480. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js +29 -0
  481. package/dist/npm/src/models/transactions/MPTokenIssuanceSet.js.map +1 -0
  482. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.d.ts +4 -0
  483. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.d.ts.map +1 -1
  484. package/dist/npm/src/models/transactions/NFTokenAcceptOffer.js.map +1 -1
  485. package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts +4 -0
  486. package/dist/npm/src/models/transactions/NFTokenCancelOffer.d.ts.map +1 -1
  487. package/dist/npm/src/models/transactions/NFTokenCancelOffer.js.map +1 -1
  488. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts +4 -0
  489. package/dist/npm/src/models/transactions/NFTokenCreateOffer.d.ts.map +1 -1
  490. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js +1 -1
  491. package/dist/npm/src/models/transactions/NFTokenCreateOffer.js.map +1 -1
  492. package/dist/npm/src/models/transactions/NFTokenMint.d.ts +7 -1
  493. package/dist/npm/src/models/transactions/NFTokenMint.d.ts.map +1 -1
  494. package/dist/npm/src/models/transactions/NFTokenMint.js +2 -1
  495. package/dist/npm/src/models/transactions/NFTokenMint.js.map +1 -1
  496. package/dist/npm/src/models/transactions/NFTokenModify.d.ts +9 -0
  497. package/dist/npm/src/models/transactions/NFTokenModify.d.ts.map +1 -0
  498. package/dist/npm/src/models/transactions/NFTokenModify.js +22 -0
  499. package/dist/npm/src/models/transactions/NFTokenModify.js.map +1 -0
  500. package/dist/npm/src/models/transactions/XChainModifyBridge.js +1 -1
  501. package/dist/npm/src/models/transactions/XChainModifyBridge.js.map +1 -1
  502. package/dist/npm/src/models/transactions/accountDelete.d.ts +1 -0
  503. package/dist/npm/src/models/transactions/accountDelete.d.ts.map +1 -1
  504. package/dist/npm/src/models/transactions/accountDelete.js +1 -0
  505. package/dist/npm/src/models/transactions/accountDelete.js.map +1 -1
  506. package/dist/npm/src/models/transactions/accountSet.js +2 -2
  507. package/dist/npm/src/models/transactions/accountSet.js.map +1 -1
  508. package/dist/npm/src/models/transactions/clawback.d.ts +3 -2
  509. package/dist/npm/src/models/transactions/clawback.d.ts.map +1 -1
  510. package/dist/npm/src/models/transactions/clawback.js +11 -1
  511. package/dist/npm/src/models/transactions/clawback.js.map +1 -1
  512. package/dist/npm/src/models/transactions/common.d.ts +7 -1
  513. package/dist/npm/src/models/transactions/common.d.ts.map +1 -1
  514. package/dist/npm/src/models/transactions/common.js +97 -4
  515. package/dist/npm/src/models/transactions/common.js.map +1 -1
  516. package/dist/npm/src/models/transactions/depositPreauth.d.ts +3 -0
  517. package/dist/npm/src/models/transactions/depositPreauth.d.ts.map +1 -1
  518. package/dist/npm/src/models/transactions/depositPreauth.js +20 -7
  519. package/dist/npm/src/models/transactions/depositPreauth.js.map +1 -1
  520. package/dist/npm/src/models/transactions/enableAmendment.js +1 -1
  521. package/dist/npm/src/models/transactions/enableAmendment.js.map +1 -1
  522. package/dist/npm/src/models/transactions/escrowFinish.d.ts +1 -0
  523. package/dist/npm/src/models/transactions/escrowFinish.d.ts.map +1 -1
  524. package/dist/npm/src/models/transactions/escrowFinish.js +1 -0
  525. package/dist/npm/src/models/transactions/escrowFinish.js.map +1 -1
  526. package/dist/npm/src/models/transactions/index.d.ts +16 -3
  527. package/dist/npm/src/models/transactions/index.d.ts.map +1 -1
  528. package/dist/npm/src/models/transactions/index.js +13 -1
  529. package/dist/npm/src/models/transactions/index.js.map +1 -1
  530. package/dist/npm/src/models/transactions/metadata.d.ts +16 -4
  531. package/dist/npm/src/models/transactions/metadata.d.ts.map +1 -1
  532. package/dist/npm/src/models/transactions/metadata.js.map +1 -1
  533. package/dist/npm/src/models/transactions/offerCreate.js +1 -1
  534. package/dist/npm/src/models/transactions/offerCreate.js.map +1 -1
  535. package/dist/npm/src/models/transactions/oracleDelete.d.ts +7 -0
  536. package/dist/npm/src/models/transactions/oracleDelete.d.ts.map +1 -0
  537. package/dist/npm/src/models/transactions/oracleDelete.js +10 -0
  538. package/dist/npm/src/models/transactions/oracleDelete.js.map +1 -0
  539. package/dist/npm/src/models/transactions/oracleSet.d.ts +13 -0
  540. package/dist/npm/src/models/transactions/oracleSet.d.ts.map +1 -0
  541. package/dist/npm/src/models/transactions/oracleSet.js +59 -0
  542. package/dist/npm/src/models/transactions/oracleSet.js.map +1 -0
  543. package/dist/npm/src/models/transactions/payment.d.ts +12 -6
  544. package/dist/npm/src/models/transactions/payment.d.ts.map +1 -1
  545. package/dist/npm/src/models/transactions/payment.js +3 -2
  546. package/dist/npm/src/models/transactions/payment.js.map +1 -1
  547. package/dist/npm/src/models/transactions/paymentChannelClaim.d.ts +1 -0
  548. package/dist/npm/src/models/transactions/paymentChannelClaim.d.ts.map +1 -1
  549. package/dist/npm/src/models/transactions/paymentChannelClaim.js +2 -1
  550. package/dist/npm/src/models/transactions/paymentChannelClaim.js.map +1 -1
  551. package/dist/npm/src/models/transactions/permissionedDomainDelete.d.ts +7 -0
  552. package/dist/npm/src/models/transactions/permissionedDomainDelete.d.ts.map +1 -0
  553. package/dist/npm/src/models/transactions/permissionedDomainDelete.js +10 -0
  554. package/dist/npm/src/models/transactions/permissionedDomainDelete.js.map +1 -0
  555. package/dist/npm/src/models/transactions/permissionedDomainSet.d.ts +9 -0
  556. package/dist/npm/src/models/transactions/permissionedDomainSet.d.ts.map +1 -0
  557. package/dist/npm/src/models/transactions/permissionedDomainSet.js +13 -0
  558. package/dist/npm/src/models/transactions/permissionedDomainSet.js.map +1 -0
  559. package/dist/npm/src/models/transactions/transaction.d.ts +19 -4
  560. package/dist/npm/src/models/transactions/transaction.d.ts.map +1 -1
  561. package/dist/npm/src/models/transactions/transaction.js +53 -1
  562. package/dist/npm/src/models/transactions/transaction.js.map +1 -1
  563. package/dist/npm/src/models/transactions/trustSet.d.ts +5 -1
  564. package/dist/npm/src/models/transactions/trustSet.d.ts.map +1 -1
  565. package/dist/npm/src/models/transactions/trustSet.js +3 -1
  566. package/dist/npm/src/models/transactions/trustSet.js.map +1 -1
  567. package/dist/npm/src/models/utils/flags.d.ts +2 -0
  568. package/dist/npm/src/models/utils/flags.d.ts.map +1 -1
  569. package/dist/npm/src/models/utils/flags.js +51 -16
  570. package/dist/npm/src/models/utils/flags.js.map +1 -1
  571. package/dist/npm/src/models/utils/index.d.ts +1 -0
  572. package/dist/npm/src/models/utils/index.d.ts.map +1 -1
  573. package/dist/npm/src/models/utils/index.js +2 -1
  574. package/dist/npm/src/models/utils/index.js.map +1 -1
  575. package/dist/npm/src/sugar/autofill.d.ts +7 -3
  576. package/dist/npm/src/sugar/autofill.d.ts.map +1 -1
  577. package/dist/npm/src/sugar/autofill.js +11 -32
  578. package/dist/npm/src/sugar/autofill.js.map +1 -1
  579. package/dist/npm/src/sugar/balances.d.ts +2 -17
  580. package/dist/npm/src/sugar/balances.d.ts.map +1 -1
  581. package/dist/npm/src/sugar/balances.js +2 -60
  582. package/dist/npm/src/sugar/balances.js.map +1 -1
  583. package/dist/npm/src/sugar/getFeeXrp.d.ts +1 -1
  584. package/dist/npm/src/sugar/getFeeXrp.d.ts.map +1 -1
  585. package/dist/npm/src/sugar/getFeeXrp.js +3 -2
  586. package/dist/npm/src/sugar/getFeeXrp.js.map +1 -1
  587. package/dist/npm/src/sugar/getOrderbook.d.ts +19 -5
  588. package/dist/npm/src/sugar/getOrderbook.d.ts.map +1 -1
  589. package/dist/npm/src/sugar/getOrderbook.js +72 -53
  590. package/dist/npm/src/sugar/getOrderbook.js.map +1 -1
  591. package/dist/npm/src/sugar/index.d.ts +0 -4
  592. package/dist/npm/src/sugar/index.d.ts.map +1 -1
  593. package/dist/npm/src/sugar/index.js +0 -13
  594. package/dist/npm/src/sugar/index.js.map +1 -1
  595. package/dist/npm/src/sugar/submit.d.ts +7 -11
  596. package/dist/npm/src/sugar/submit.d.ts.map +1 -1
  597. package/dist/npm/src/sugar/submit.js +11 -28
  598. package/dist/npm/src/sugar/submit.js.map +1 -1
  599. package/dist/npm/src/utils/collections.d.ts +5 -0
  600. package/dist/npm/src/utils/collections.d.ts.map +1 -0
  601. package/dist/npm/src/utils/collections.js +24 -0
  602. package/dist/npm/src/utils/collections.js.map +1 -0
  603. package/dist/npm/src/utils/getBalanceChanges.d.ts.map +1 -1
  604. package/dist/npm/src/utils/getBalanceChanges.js +3 -4
  605. package/dist/npm/src/utils/getBalanceChanges.js.map +1 -1
  606. package/dist/npm/src/utils/getNFTokenID.d.ts.map +1 -1
  607. package/dist/npm/src/utils/getNFTokenID.js +8 -8
  608. package/dist/npm/src/utils/getNFTokenID.js.map +1 -1
  609. package/dist/npm/src/utils/hashes/SHAMap/node.js +1 -1
  610. package/dist/npm/src/utils/hashes/SHAMap/node.js.map +1 -1
  611. package/dist/npm/src/utils/hashes/hashLedger.d.ts +5 -5
  612. package/dist/npm/src/utils/hashes/hashLedger.d.ts.map +1 -1
  613. package/dist/npm/src/utils/hashes/hashLedger.js +7 -7
  614. package/dist/npm/src/utils/hashes/hashLedger.js.map +1 -1
  615. package/dist/npm/src/utils/hashes/index.d.ts.map +1 -1
  616. package/dist/npm/src/utils/hashes/index.js +3 -2
  617. package/dist/npm/src/utils/hashes/index.js.map +1 -1
  618. package/dist/npm/src/utils/hashes/sha512Half.d.ts.map +1 -1
  619. package/dist/npm/src/utils/hashes/sha512Half.js +4 -7
  620. package/dist/npm/src/utils/hashes/sha512Half.js.map +1 -1
  621. package/dist/npm/src/utils/index.d.ts +2 -1
  622. package/dist/npm/src/utils/index.d.ts.map +1 -1
  623. package/dist/npm/src/utils/index.js +6 -29
  624. package/dist/npm/src/utils/index.js.map +1 -1
  625. package/dist/npm/src/utils/parseNFTokenID.d.ts.map +1 -1
  626. package/dist/npm/src/utils/parseNFTokenID.js +2 -1
  627. package/dist/npm/src/utils/parseNFTokenID.js.map +1 -1
  628. package/dist/npm/src/utils/stringConversion.d.ts +1 -2
  629. package/dist/npm/src/utils/stringConversion.d.ts.map +1 -1
  630. package/dist/npm/src/utils/stringConversion.js +3 -2
  631. package/dist/npm/src/utils/stringConversion.js.map +1 -1
  632. package/dist/npm/src/utils/xrpConversion.d.ts +1 -1
  633. package/dist/npm/src/utils/xrpConversion.js +1 -1
  634. package/dist/npm/src/utils/xrpConversion.js.map +1 -1
  635. package/dist/npm/sugar/autofill.d.ts +7 -3
  636. package/dist/npm/sugar/autofill.d.ts.map +1 -1
  637. package/dist/npm/sugar/autofill.js +11 -32
  638. package/dist/npm/sugar/autofill.js.map +1 -1
  639. package/dist/npm/sugar/balances.d.ts +2 -17
  640. package/dist/npm/sugar/balances.d.ts.map +1 -1
  641. package/dist/npm/sugar/balances.js +2 -60
  642. package/dist/npm/sugar/balances.js.map +1 -1
  643. package/dist/npm/sugar/getFeeXrp.d.ts +1 -1
  644. package/dist/npm/sugar/getFeeXrp.d.ts.map +1 -1
  645. package/dist/npm/sugar/getFeeXrp.js +3 -2
  646. package/dist/npm/sugar/getFeeXrp.js.map +1 -1
  647. package/dist/npm/sugar/getOrderbook.d.ts +19 -5
  648. package/dist/npm/sugar/getOrderbook.d.ts.map +1 -1
  649. package/dist/npm/sugar/getOrderbook.js +72 -53
  650. package/dist/npm/sugar/getOrderbook.js.map +1 -1
  651. package/dist/npm/sugar/index.d.ts +0 -4
  652. package/dist/npm/sugar/index.d.ts.map +1 -1
  653. package/dist/npm/sugar/index.js +0 -13
  654. package/dist/npm/sugar/index.js.map +1 -1
  655. package/dist/npm/sugar/submit.d.ts +7 -11
  656. package/dist/npm/sugar/submit.d.ts.map +1 -1
  657. package/dist/npm/sugar/submit.js +11 -28
  658. package/dist/npm/sugar/submit.js.map +1 -1
  659. package/dist/npm/utils/collections.d.ts +5 -0
  660. package/dist/npm/utils/collections.d.ts.map +1 -0
  661. package/dist/npm/utils/collections.js +24 -0
  662. package/dist/npm/utils/collections.js.map +1 -0
  663. package/dist/npm/utils/getBalanceChanges.d.ts.map +1 -1
  664. package/dist/npm/utils/getBalanceChanges.js +3 -4
  665. package/dist/npm/utils/getBalanceChanges.js.map +1 -1
  666. package/dist/npm/utils/getNFTokenID.d.ts.map +1 -1
  667. package/dist/npm/utils/getNFTokenID.js +8 -8
  668. package/dist/npm/utils/getNFTokenID.js.map +1 -1
  669. package/dist/npm/utils/hashes/SHAMap/node.js +1 -1
  670. package/dist/npm/utils/hashes/SHAMap/node.js.map +1 -1
  671. package/dist/npm/utils/hashes/hashLedger.d.ts +5 -5
  672. package/dist/npm/utils/hashes/hashLedger.d.ts.map +1 -1
  673. package/dist/npm/utils/hashes/hashLedger.js +7 -7
  674. package/dist/npm/utils/hashes/hashLedger.js.map +1 -1
  675. package/dist/npm/utils/hashes/index.d.ts.map +1 -1
  676. package/dist/npm/utils/hashes/index.js +3 -2
  677. package/dist/npm/utils/hashes/index.js.map +1 -1
  678. package/dist/npm/utils/hashes/sha512Half.d.ts.map +1 -1
  679. package/dist/npm/utils/hashes/sha512Half.js +4 -7
  680. package/dist/npm/utils/hashes/sha512Half.js.map +1 -1
  681. package/dist/npm/utils/index.d.ts +2 -1
  682. package/dist/npm/utils/index.d.ts.map +1 -1
  683. package/dist/npm/utils/index.js +6 -29
  684. package/dist/npm/utils/index.js.map +1 -1
  685. package/dist/npm/utils/parseNFTokenID.d.ts.map +1 -1
  686. package/dist/npm/utils/parseNFTokenID.js +2 -1
  687. package/dist/npm/utils/parseNFTokenID.js.map +1 -1
  688. package/dist/npm/utils/stringConversion.d.ts +1 -2
  689. package/dist/npm/utils/stringConversion.d.ts.map +1 -1
  690. package/dist/npm/utils/stringConversion.js +3 -2
  691. package/dist/npm/utils/stringConversion.js.map +1 -1
  692. package/dist/npm/utils/xrpConversion.d.ts +1 -1
  693. package/dist/npm/utils/xrpConversion.js +1 -1
  694. package/dist/npm/utils/xrpConversion.js.map +1 -1
  695. package/package.json +20 -47
  696. package/src/Wallet/authorizeChannel.ts +26 -0
  697. package/src/Wallet/defaultFaucets.ts +0 -6
  698. package/src/Wallet/fundWallet.ts +152 -214
  699. package/src/Wallet/index.ts +38 -25
  700. package/src/Wallet/rfc1751.ts +45 -16
  701. package/src/Wallet/signer.ts +34 -44
  702. package/src/Wallet/walletFromSecretNumbers.ts +1 -1
  703. package/src/client/RequestManager.ts +50 -19
  704. package/src/client/connection.ts +29 -94
  705. package/src/client/index.ts +816 -286
  706. package/src/client/partialPayment.ts +79 -26
  707. package/src/errors.ts +1 -3
  708. package/src/index.ts +8 -3
  709. package/src/models/common/index.ts +56 -0
  710. package/src/models/index.ts +3 -1
  711. package/src/models/ledger/AMM.ts +2 -2
  712. package/src/models/ledger/Amendments.ts +2 -2
  713. package/src/models/ledger/BaseLedgerEntry.ts +9 -5
  714. package/src/models/ledger/Credential.ts +47 -0
  715. package/src/models/ledger/DepositPreauth.ts +6 -2
  716. package/src/models/ledger/DirectoryNode.ts +2 -2
  717. package/src/models/ledger/FeeSettings.ts +4 -2
  718. package/src/models/ledger/Ledger.ts +51 -15
  719. package/src/models/ledger/LedgerEntry.ts +11 -0
  720. package/src/models/ledger/LedgerHashes.ts +2 -4
  721. package/src/models/ledger/MPToken.ts +11 -0
  722. package/src/models/ledger/MPTokenIssuance.ts +13 -0
  723. package/src/models/ledger/NegativeUNL.ts +2 -2
  724. package/src/models/ledger/Oracle.ts +43 -0
  725. package/src/models/ledger/PermissionedDomain.ts +29 -0
  726. package/src/models/ledger/RippleState.ts +6 -0
  727. package/src/models/ledger/index.ts +10 -1
  728. package/src/models/methods/accountChannels.ts +64 -1
  729. package/src/models/methods/accountInfo.ts +58 -12
  730. package/src/models/methods/accountTx.ts +49 -8
  731. package/src/models/methods/depositAuthorized.ts +10 -0
  732. package/src/models/methods/feature.ts +68 -0
  733. package/src/models/methods/getAggregatePrice.ts +119 -0
  734. package/src/models/methods/index.ts +259 -6
  735. package/src/models/methods/ledger.ts +187 -22
  736. package/src/models/methods/ledgerEntry.ts +45 -1
  737. package/src/models/methods/nftsByIssuer.ts +68 -0
  738. package/src/models/methods/serverState.ts +1 -0
  739. package/src/models/methods/simulate.ts +88 -0
  740. package/src/models/methods/submit.ts +2 -2
  741. package/src/models/methods/submitMultisigned.ts +48 -16
  742. package/src/models/methods/subscribe.ts +70 -3
  743. package/src/models/methods/tx.ts +76 -26
  744. package/src/models/transactions/AMMClawback.ts +120 -0
  745. package/src/models/transactions/AMMDeposit.ts +2 -0
  746. package/src/models/transactions/CredentialAccept.ts +44 -0
  747. package/src/models/transactions/CredentialCreate.ts +81 -0
  748. package/src/models/transactions/CredentialDelete.ts +55 -0
  749. package/src/models/transactions/MPTokenAuthorize.ts +67 -0
  750. package/src/models/transactions/MPTokenIssuanceCreate.ts +179 -0
  751. package/src/models/transactions/MPTokenIssuanceDestroy.ts +34 -0
  752. package/src/models/transactions/MPTokenIssuanceSet.ts +86 -0
  753. package/src/models/transactions/NFTokenAcceptOffer.ts +6 -0
  754. package/src/models/transactions/NFTokenCancelOffer.ts +6 -0
  755. package/src/models/transactions/NFTokenCreateOffer.ts +6 -0
  756. package/src/models/transactions/NFTokenMint.ts +11 -0
  757. package/src/models/transactions/NFTokenModify.ts +67 -0
  758. package/src/models/transactions/accountDelete.ts +16 -0
  759. package/src/models/transactions/clawback.ts +27 -6
  760. package/src/models/transactions/common.ts +179 -1
  761. package/src/models/transactions/depositPreauth.ts +54 -15
  762. package/src/models/transactions/escrowFinish.ts +14 -0
  763. package/src/models/transactions/index.ts +33 -2
  764. package/src/models/transactions/metadata.ts +41 -4
  765. package/src/models/transactions/oracleDelete.ts +32 -0
  766. package/src/models/transactions/oracleSet.ts +176 -0
  767. package/src/models/transactions/payment.ts +27 -6
  768. package/src/models/transactions/paymentChannelClaim.ts +20 -1
  769. package/src/models/transactions/permissionedDomainDelete.ts +28 -0
  770. package/src/models/transactions/permissionedDomainSet.ts +54 -0
  771. package/src/models/transactions/transaction.ts +116 -7
  772. package/src/models/transactions/trustSet.ts +10 -0
  773. package/src/models/utils/flags.ts +80 -22
  774. package/src/models/utils/index.ts +1 -0
  775. package/src/sugar/autofill.ts +88 -98
  776. package/src/sugar/balances.ts +8 -116
  777. package/src/sugar/getFeeXrp.ts +6 -3
  778. package/src/sugar/getOrderbook.ts +138 -61
  779. package/src/sugar/index.ts +0 -8
  780. package/src/sugar/submit.ts +135 -146
  781. package/src/utils/collections.ts +57 -0
  782. package/src/utils/getBalanceChanges.ts +2 -3
  783. package/src/utils/getNFTokenID.ts +18 -16
  784. package/src/utils/hashes/hashLedger.ts +15 -14
  785. package/src/utils/hashes/index.ts +3 -2
  786. package/src/utils/hashes/sha512Half.ts +4 -7
  787. package/src/utils/index.ts +14 -7
  788. package/src/utils/parseNFTokenID.ts +2 -1
  789. package/src/utils/stringConversion.ts +11 -6
  790. package/src/utils/xrpConversion.ts +2 -2
  791. package/dist/npm/client/BroadcastClient.d.ts +0 -7
  792. package/dist/npm/client/BroadcastClient.d.ts.map +0 -1
  793. package/dist/npm/client/BroadcastClient.js +0 -49
  794. package/dist/npm/client/BroadcastClient.js.map +0 -1
  795. package/dist/npm/client/WSWrapper.d.ts +0 -25
  796. package/dist/npm/client/WSWrapper.d.ts.map +0 -1
  797. package/dist/npm/client/WSWrapper.js +0 -44
  798. package/dist/npm/client/WSWrapper.js.map +0 -1
  799. package/dist/npm/snippets/src/bridgeTransfer.d.ts +0 -2
  800. package/dist/npm/snippets/src/bridgeTransfer.d.ts.map +0 -1
  801. package/dist/npm/snippets/src/bridgeTransfer.js +0 -126
  802. package/dist/npm/snippets/src/bridgeTransfer.js.map +0 -1
  803. package/dist/npm/src/client/BroadcastClient.d.ts +0 -7
  804. package/dist/npm/src/client/BroadcastClient.d.ts.map +0 -1
  805. package/dist/npm/src/client/BroadcastClient.js +0 -49
  806. package/dist/npm/src/client/BroadcastClient.js.map +0 -1
  807. package/dist/npm/src/client/WSWrapper.d.ts +0 -25
  808. package/dist/npm/src/client/WSWrapper.d.ts.map +0 -1
  809. package/dist/npm/src/client/WSWrapper.js +0 -44
  810. package/dist/npm/src/client/WSWrapper.js.map +0 -1
  811. package/dist/npm/src/sugar/getLedgerIndex.d.ts +0 -3
  812. package/dist/npm/src/sugar/getLedgerIndex.d.ts.map +0 -1
  813. package/dist/npm/src/sugar/getLedgerIndex.js +0 -22
  814. package/dist/npm/src/sugar/getLedgerIndex.js.map +0 -1
  815. package/dist/npm/sugar/getLedgerIndex.d.ts +0 -3
  816. package/dist/npm/sugar/getLedgerIndex.d.ts.map +0 -1
  817. package/dist/npm/sugar/getLedgerIndex.js +0 -22
  818. package/dist/npm/sugar/getLedgerIndex.js.map +0 -1
  819. package/src/client/BroadcastClient.ts +0 -84
  820. package/src/client/WSWrapper.ts +0 -106
  821. package/src/sugar/getLedgerIndex.ts +0 -15
@@ -0,0 +1,67 @@
1
+ import { ValidationError } from '../../errors'
2
+ import { isHex } from '../utils'
3
+
4
+ import {
5
+ BaseTransaction,
6
+ validateBaseTransaction,
7
+ isAccount,
8
+ isString,
9
+ validateOptionalField,
10
+ Account,
11
+ validateRequiredField,
12
+ } from './common'
13
+
14
+ /**
15
+ * The NFTokenModify transaction modifies an NFToken's URI
16
+ * if its tfMutable is set to true.
17
+ */
18
+ export interface NFTokenModify extends BaseTransaction {
19
+ TransactionType: 'NFTokenModify'
20
+ /**
21
+ * Identifies the NFTokenID of the NFToken object that the
22
+ * offer references.
23
+ */
24
+ NFTokenID: string
25
+ /**
26
+ * Indicates the AccountID of the account that owns the corresponding NFToken.
27
+ * Can be omitted if the owner is the account submitting this transaction
28
+ */
29
+ Owner?: Account
30
+ /**
31
+ * URI that points to the data and/or metadata associated with the NFT.
32
+ * This field need not be an HTTP or HTTPS URL; it could be an IPFS URI, a
33
+ * magnet link, immediate data encoded as an RFC2379 "data" URL, or even an
34
+ * opaque issuer-specific encoding. The URI is NOT checked for validity, but
35
+ * the field is limited to a maximum length of 256 bytes.
36
+ *
37
+ * This field must be hex-encoded. You can use `convertStringToHex` to
38
+ * convert this field to the proper encoding.
39
+ *
40
+ * This field must not be an empty string. Omit it from the transaction or
41
+ * set to `null` if you do not use it.
42
+ */
43
+ URI?: string | null
44
+ }
45
+
46
+ /**
47
+ * Verify the form and type of an NFTokenModify at runtime.
48
+ *
49
+ * @param tx - An NFTokenModify Transaction.
50
+ * @throws When the NFTokenModify is Malformed.
51
+ */
52
+ export function validateNFTokenModify(tx: Record<string, unknown>): void {
53
+ validateBaseTransaction(tx)
54
+
55
+ validateRequiredField(tx, 'NFTokenID', isString)
56
+ validateOptionalField(tx, 'Owner', isAccount)
57
+ validateOptionalField(tx, 'URI', isString)
58
+
59
+ if (tx.URI !== undefined && typeof tx.URI === 'string') {
60
+ if (tx.URI === '') {
61
+ throw new ValidationError('NFTokenModify: URI must not be empty string')
62
+ }
63
+ if (!isHex(tx.URI)) {
64
+ throw new ValidationError('NFTokenModify: URI must be in hex format')
65
+ }
66
+ }
67
+ }
@@ -4,8 +4,10 @@ import {
4
4
  isAccount,
5
5
  isNumber,
6
6
  validateBaseTransaction,
7
+ validateCredentialsList,
7
8
  validateOptionalField,
8
9
  validateRequiredField,
10
+ MAX_AUTHORIZED_CREDENTIALS,
9
11
  } from './common'
10
12
 
11
13
  /**
@@ -28,6 +30,12 @@ export interface AccountDelete extends BaseTransaction {
28
30
  * information for the recipient of the deleted account's leftover XRP.
29
31
  */
30
32
  DestinationTag?: number
33
+ /**
34
+ * Credentials associated with sender of this transaction. The credentials included
35
+ * must not be expired. The list must not be empty when specified and cannot contain
36
+ * more than 8 credentials.
37
+ */
38
+ CredentialIDs?: string[]
31
39
  }
32
40
 
33
41
  /**
@@ -41,4 +49,12 @@ export function validateAccountDelete(tx: Record<string, unknown>): void {
41
49
 
42
50
  validateRequiredField(tx, 'Destination', isAccount)
43
51
  validateOptionalField(tx, 'DestinationTag', isNumber)
52
+
53
+ validateCredentialsList(
54
+ tx.CredentialIDs,
55
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- known from base check
56
+ tx.TransactionType as string,
57
+ true,
58
+ MAX_AUTHORIZED_CREDENTIALS,
59
+ )
44
60
  }
@@ -1,10 +1,13 @@
1
1
  import { ValidationError } from '../../errors'
2
- import { IssuedCurrencyAmount } from '../common'
2
+ import { IssuedCurrencyAmount, MPTAmount } from '../common'
3
3
 
4
4
  import {
5
5
  BaseTransaction,
6
6
  validateBaseTransaction,
7
7
  isIssuedCurrency,
8
+ isMPTAmount,
9
+ isAccount,
10
+ validateOptionalField,
8
11
  } from './common'
9
12
 
10
13
  /**
@@ -15,15 +18,20 @@ export interface Clawback extends BaseTransaction {
15
18
  TransactionType: 'Clawback'
16
19
  /**
17
20
  * Indicates the AccountID that submitted this transaction. The account MUST
18
- * be the issuer of the currency.
21
+ * be the issuer of the currency or MPT.
19
22
  */
20
23
  Account: string
21
24
  /**
22
- * The amount of currency to deliver, and it must be non-XRP. The nested field
23
- * names MUST be lower-case. The `issuer` field MUST be the holder's address,
25
+ * The amount of currency or MPT to clawback, and it must be non-XRP. The nested field
26
+ * names MUST be lower-case. If the amount is IOU, the `issuer` field MUST be the holder's address,
24
27
  * whom to be clawed back.
25
28
  */
26
- Amount: IssuedCurrencyAmount
29
+ Amount: IssuedCurrencyAmount | MPTAmount
30
+ /**
31
+ * Indicates the AccountID that the issuer wants to clawback. This field is only valid for clawing back
32
+ * MPTs.
33
+ */
34
+ Holder?: string
27
35
  }
28
36
 
29
37
  /**
@@ -34,16 +42,29 @@ export interface Clawback extends BaseTransaction {
34
42
  */
35
43
  export function validateClawback(tx: Record<string, unknown>): void {
36
44
  validateBaseTransaction(tx)
45
+ validateOptionalField(tx, 'Holder', isAccount)
37
46
 
38
47
  if (tx.Amount == null) {
39
48
  throw new ValidationError('Clawback: missing field Amount')
40
49
  }
41
50
 
42
- if (!isIssuedCurrency(tx.Amount)) {
51
+ if (!isIssuedCurrency(tx.Amount) && !isMPTAmount(tx.Amount)) {
43
52
  throw new ValidationError('Clawback: invalid Amount')
44
53
  }
45
54
 
46
55
  if (isIssuedCurrency(tx.Amount) && tx.Account === tx.Amount.issuer) {
47
56
  throw new ValidationError('Clawback: invalid holder Account')
48
57
  }
58
+
59
+ if (isMPTAmount(tx.Amount) && tx.Account === tx.Holder) {
60
+ throw new ValidationError('Clawback: invalid holder Account')
61
+ }
62
+
63
+ if (isIssuedCurrency(tx.Amount) && tx.Holder) {
64
+ throw new ValidationError('Clawback: cannot have Holder for currency')
65
+ }
66
+
67
+ if (isMPTAmount(tx.Amount) && !tx.Holder) {
68
+ throw new ValidationError('Clawback: missing Holder')
69
+ }
49
70
  }
@@ -1,11 +1,15 @@
1
+ /* eslint-disable max-lines -- common utility file */
2
+ import { HEX_REGEX } from '@xrplf/isomorphic/utils'
1
3
  import { isValidClassicAddress, isValidXAddress } from 'ripple-address-codec'
2
4
  import { TRANSACTION_TYPES } from 'ripple-binary-codec'
3
5
 
4
6
  import { ValidationError } from '../../errors'
5
7
  import {
6
8
  Amount,
9
+ AuthorizeCredential,
7
10
  Currency,
8
11
  IssuedCurrencyAmount,
12
+ MPTAmount,
9
13
  Memo,
10
14
  Signer,
11
15
  XChainBridge,
@@ -13,6 +17,9 @@ import {
13
17
  import { onlyHasFields } from '../utils'
14
18
 
15
19
  const MEMO_SIZE = 3
20
+ export const MAX_AUTHORIZED_CREDENTIALS = 8
21
+ const MAX_CREDENTIAL_BYTE_LENGTH = 64
22
+ const MAX_CREDENTIAL_TYPE_LENGTH = MAX_CREDENTIAL_BYTE_LENGTH * 2
16
23
 
17
24
  function isMemo(obj: { Memo?: unknown }): boolean {
18
25
  if (obj.Memo == null) {
@@ -59,6 +66,8 @@ const XRP_CURRENCY_SIZE = 1
59
66
  const ISSUE_SIZE = 2
60
67
  const ISSUED_CURRENCY_SIZE = 3
61
68
  const XCHAIN_BRIDGE_SIZE = 4
69
+ const MPTOKEN_SIZE = 2
70
+ const AUTHORIZE_CREDENTIAL_SIZE = 1
62
71
 
63
72
  function isRecord(value: unknown): value is Record<string, unknown> {
64
73
  return value !== null && typeof value === 'object'
@@ -119,6 +128,39 @@ export function isIssuedCurrency(
119
128
  )
120
129
  }
121
130
 
131
+ /**
132
+ * Verify the form and type of an AuthorizeCredential at runtime
133
+ *
134
+ * @param input - The input to check the form and type of
135
+ * @returns Whether the AuthorizeCredential is properly formed
136
+ */
137
+ export function isAuthorizeCredential(
138
+ input: unknown,
139
+ ): input is AuthorizeCredential {
140
+ return (
141
+ isRecord(input) &&
142
+ isRecord(input.Credential) &&
143
+ Object.keys(input).length === AUTHORIZE_CREDENTIAL_SIZE &&
144
+ typeof input.Credential.CredentialType === 'string' &&
145
+ typeof input.Credential.Issuer === 'string'
146
+ )
147
+ }
148
+
149
+ /**
150
+ * Verify the form and type of an MPT at runtime.
151
+ *
152
+ * @param input - The input to check the form and type of.
153
+ * @returns Whether the MPTAmount is properly formed.
154
+ */
155
+ export function isMPTAmount(input: unknown): input is MPTAmount {
156
+ return (
157
+ isRecord(input) &&
158
+ Object.keys(input).length === MPTOKEN_SIZE &&
159
+ typeof input.value === 'string' &&
160
+ typeof input.mpt_issuance_id === 'string'
161
+ )
162
+ }
163
+
122
164
  /**
123
165
  * Must be a valid account address
124
166
  */
@@ -144,7 +186,11 @@ export function isAccount(account: unknown): account is Account {
144
186
  * @returns Whether the Amount is properly formed.
145
187
  */
146
188
  export function isAmount(amount: unknown): amount is Amount {
147
- return typeof amount === 'string' || isIssuedCurrency(amount)
189
+ return (
190
+ typeof amount === 'string' ||
191
+ isIssuedCurrency(amount) ||
192
+ isMPTAmount(amount)
193
+ )
148
194
  }
149
195
 
150
196
  /**
@@ -366,3 +412,135 @@ export function parseAmountValue(amount: unknown): number {
366
412
  }
367
413
  return parseFloat(amount.value)
368
414
  }
415
+
416
+ /**
417
+ * Verify the form and type of a CredentialType at runtime.
418
+ *
419
+ * @param tx A CredentialType Transaction.
420
+ * @throws when the CredentialType is malformed.
421
+ */
422
+ export function validateCredentialType(tx: Record<string, unknown>): void {
423
+ if (typeof tx.TransactionType !== 'string') {
424
+ throw new ValidationError('Invalid TransactionType')
425
+ }
426
+ if (tx.CredentialType === undefined) {
427
+ throw new ValidationError(
428
+ `${tx.TransactionType}: missing field CredentialType`,
429
+ )
430
+ }
431
+
432
+ if (!isString(tx.CredentialType)) {
433
+ throw new ValidationError(
434
+ `${tx.TransactionType}: CredentialType must be a string`,
435
+ )
436
+ }
437
+ if (tx.CredentialType.length === 0) {
438
+ throw new ValidationError(
439
+ `${tx.TransactionType}: CredentialType cannot be an empty string`,
440
+ )
441
+ } else if (tx.CredentialType.length > MAX_CREDENTIAL_TYPE_LENGTH) {
442
+ throw new ValidationError(
443
+ `${tx.TransactionType}: CredentialType length cannot be > ${MAX_CREDENTIAL_TYPE_LENGTH}`,
444
+ )
445
+ }
446
+
447
+ if (!HEX_REGEX.test(tx.CredentialType)) {
448
+ throw new ValidationError(
449
+ `${tx.TransactionType}: CredentialType must be encoded in hex`,
450
+ )
451
+ }
452
+ }
453
+
454
+ /**
455
+ * Check a CredentialAuthorize array for parameter errors
456
+ *
457
+ * @param credentials An array of credential IDs to check for errors
458
+ * @param transactionType The transaction type to include in error messages
459
+ * @param isStringID Toggle for if array contains IDs instead of AuthorizeCredential objects
460
+ * @param maxCredentials The maximum length of the credentials array.
461
+ * PermissionedDomainSet transaction uses 10, other transactions use 8.
462
+ * @throws Validation Error if the formatting is incorrect
463
+ */
464
+ // eslint-disable-next-line max-lines-per-function, max-params -- separating logic further will add unnecessary complexity
465
+ export function validateCredentialsList(
466
+ credentials: unknown,
467
+ transactionType: string,
468
+ isStringID: boolean,
469
+ maxCredentials: number,
470
+ ): void {
471
+ if (credentials == null) {
472
+ return
473
+ }
474
+ if (!Array.isArray(credentials)) {
475
+ throw new ValidationError(
476
+ `${transactionType}: Credentials must be an array`,
477
+ )
478
+ }
479
+ if (credentials.length > maxCredentials) {
480
+ throw new ValidationError(
481
+ `${transactionType}: Credentials length cannot exceed ${maxCredentials} elements`,
482
+ )
483
+ } else if (credentials.length === 0) {
484
+ throw new ValidationError(
485
+ `${transactionType}: Credentials cannot be an empty array`,
486
+ )
487
+ }
488
+ credentials.forEach((credential) => {
489
+ if (isStringID) {
490
+ if (!isString(credential)) {
491
+ throw new ValidationError(
492
+ `${transactionType}: Invalid Credentials ID list format`,
493
+ )
494
+ }
495
+ } else if (!isAuthorizeCredential(credential)) {
496
+ throw new ValidationError(
497
+ `${transactionType}: Invalid Credentials format`,
498
+ )
499
+ }
500
+ })
501
+ if (containsDuplicates(credentials)) {
502
+ throw new ValidationError(
503
+ `${transactionType}: Credentials cannot contain duplicate elements`,
504
+ )
505
+ }
506
+ }
507
+
508
+ // Type guard to ensure we're working with AuthorizeCredential[]
509
+ // Note: This is not a rigorous type-guard. A more thorough solution would be to iterate over the array and check each item.
510
+ function isAuthorizeCredentialArray(
511
+ list: AuthorizeCredential[] | string[],
512
+ ): list is AuthorizeCredential[] {
513
+ return typeof list[0] !== 'string'
514
+ }
515
+
516
+ /**
517
+ * Check if an array of objects contains any duplicates.
518
+ *
519
+ * @param objectList - Array of objects to check for duplicates
520
+ * @returns True if duplicates exist, false otherwise
521
+ */
522
+ export function containsDuplicates(
523
+ objectList: AuthorizeCredential[] | string[],
524
+ ): boolean {
525
+ // Case-1: Process a list of string-IDs
526
+ if (typeof objectList[0] === 'string') {
527
+ const objSet = new Set(objectList.map((obj) => JSON.stringify(obj)))
528
+ return objSet.size !== objectList.length
529
+ }
530
+
531
+ // Case-2: Process a list of nested objects
532
+ const seen = new Set<string>()
533
+
534
+ if (isAuthorizeCredentialArray(objectList)) {
535
+ for (const item of objectList) {
536
+ const key = `${item.Credential.Issuer}-${item.Credential.CredentialType}`
537
+ // eslint-disable-next-line max-depth -- necessary to check for type-guards
538
+ if (seen.has(key)) {
539
+ return true
540
+ }
541
+ seen.add(key)
542
+ }
543
+ }
544
+
545
+ return false
546
+ }
@@ -1,6 +1,12 @@
1
1
  import { ValidationError } from '../../errors'
2
+ import { AuthorizeCredential } from '../common'
2
3
 
3
- import { BaseTransaction, validateBaseTransaction } from './common'
4
+ import {
5
+ BaseTransaction,
6
+ validateBaseTransaction,
7
+ validateCredentialsList,
8
+ MAX_AUTHORIZED_CREDENTIALS,
9
+ } from './common'
4
10
 
5
11
  /**
6
12
  * A DepositPreauth transaction gives another account pre-approval to deliver
@@ -18,6 +24,16 @@ export interface DepositPreauth extends BaseTransaction {
18
24
  * revoked.
19
25
  */
20
26
  Unauthorize?: string
27
+
28
+ /**
29
+ * The credential(s) to preauthorize.
30
+ */
31
+ AuthorizeCredentials?: AuthorizeCredential[]
32
+
33
+ /**
34
+ * The credential(s) whose preauthorization should be revoked.
35
+ */
36
+ UnauthorizeCredentials?: AuthorizeCredential[]
21
37
  }
22
38
 
23
39
  /**
@@ -29,17 +45,7 @@ export interface DepositPreauth extends BaseTransaction {
29
45
  export function validateDepositPreauth(tx: Record<string, unknown>): void {
30
46
  validateBaseTransaction(tx)
31
47
 
32
- if (tx.Authorize !== undefined && tx.Unauthorize !== undefined) {
33
- throw new ValidationError(
34
- "DepositPreauth: can't provide both Authorize and Unauthorize fields",
35
- )
36
- }
37
-
38
- if (tx.Authorize === undefined && tx.Unauthorize === undefined) {
39
- throw new ValidationError(
40
- 'DepositPreauth: must provide either Authorize or Unauthorize field',
41
- )
42
- }
48
+ validateSingleAuthorizationFieldProvided(tx)
43
49
 
44
50
  if (tx.Authorize !== undefined) {
45
51
  if (typeof tx.Authorize !== 'string') {
@@ -51,9 +57,7 @@ export function validateDepositPreauth(tx: Record<string, unknown>): void {
51
57
  "DepositPreauth: Account can't preauthorize its own address",
52
58
  )
53
59
  }
54
- }
55
-
56
- if (tx.Unauthorize !== undefined) {
60
+ } else if (tx.Unauthorize !== undefined) {
57
61
  if (typeof tx.Unauthorize !== 'string') {
58
62
  throw new ValidationError('DepositPreauth: Unauthorize must be a string')
59
63
  }
@@ -63,5 +67,40 @@ export function validateDepositPreauth(tx: Record<string, unknown>): void {
63
67
  "DepositPreauth: Account can't unauthorize its own address",
64
68
  )
65
69
  }
70
+ } else if (tx.AuthorizeCredentials !== undefined) {
71
+ validateCredentialsList(
72
+ tx.AuthorizeCredentials,
73
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- confirmed in base transaction check
74
+ tx.TransactionType as string,
75
+ false,
76
+ MAX_AUTHORIZED_CREDENTIALS,
77
+ )
78
+ } else if (tx.UnauthorizeCredentials !== undefined) {
79
+ validateCredentialsList(
80
+ tx.UnauthorizeCredentials,
81
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- confirmed in base transaction check
82
+ tx.TransactionType as string,
83
+ false,
84
+ MAX_AUTHORIZED_CREDENTIALS,
85
+ )
86
+ }
87
+ }
88
+
89
+ // Boolean logic to ensure exactly one of 4 inputs was provided
90
+ function validateSingleAuthorizationFieldProvided(
91
+ tx: Record<string, unknown>,
92
+ ): void {
93
+ const fields = [
94
+ 'Authorize',
95
+ 'Unauthorize',
96
+ 'AuthorizeCredentials',
97
+ 'UnauthorizeCredentials',
98
+ ]
99
+ const countProvided = fields.filter((key) => tx[key] !== undefined).length
100
+
101
+ if (countProvided !== 1) {
102
+ throw new ValidationError(
103
+ 'DepositPreauth: Requires exactly one field of the following: Authorize, Unauthorize, AuthorizeCredentials, UnauthorizeCredentials.',
104
+ )
66
105
  }
67
106
  }
@@ -5,7 +5,9 @@ import {
5
5
  BaseTransaction,
6
6
  isAccount,
7
7
  validateBaseTransaction,
8
+ validateCredentialsList,
8
9
  validateRequiredField,
10
+ MAX_AUTHORIZED_CREDENTIALS,
9
11
  } from './common'
10
12
 
11
13
  /**
@@ -32,6 +34,10 @@ export interface EscrowFinish extends BaseTransaction {
32
34
  * the held payment's Condition.
33
35
  */
34
36
  Fulfillment?: string
37
+ /** Credentials associated with the sender of this transaction.
38
+ * The credentials included must not be expired.
39
+ */
40
+ CredentialIDs?: string[]
35
41
  }
36
42
 
37
43
  /**
@@ -45,6 +51,14 @@ export function validateEscrowFinish(tx: Record<string, unknown>): void {
45
51
 
46
52
  validateRequiredField(tx, 'Owner', isAccount)
47
53
 
54
+ validateCredentialsList(
55
+ tx.CredentialIDs,
56
+ // eslint-disable-next-line @typescript-eslint/consistent-type-assertions -- known from base check
57
+ tx.TransactionType as string,
58
+ true,
59
+ MAX_AUTHORIZED_CREDENTIALS,
60
+ )
61
+
48
62
  if (tx.OfferSequence == null) {
49
63
  throw new ValidationError('EscrowFinish: missing field OfferSequence')
50
64
  }
@@ -1,7 +1,8 @@
1
- export { BaseTransaction } from './common'
1
+ export { BaseTransaction, isMPTAmount } from './common'
2
2
  export {
3
3
  validate,
4
4
  PseudoTransaction,
5
+ SubmittableTransaction,
5
6
  TransactionAndMetadata,
6
7
  Transaction,
7
8
  } from './transaction'
@@ -14,13 +15,18 @@ export {
14
15
  } from './accountSet'
15
16
  export { AccountDelete } from './accountDelete'
16
17
  export { AMMBid } from './AMMBid'
18
+ export {
19
+ AMMClawbackFlags,
20
+ AMMClawbackFlagsInterface,
21
+ AMMClawback,
22
+ } from './AMMClawback'
23
+ export { AMMCreate } from './AMMCreate'
17
24
  export { AMMDelete } from './AMMDelete'
18
25
  export {
19
26
  AMMDepositFlags,
20
27
  AMMDepositFlagsInterface,
21
28
  AMMDeposit,
22
29
  } from './AMMDeposit'
23
- export { AMMCreate } from './AMMCreate'
24
30
  export { AMMVote } from './AMMVote'
25
31
  export {
26
32
  AMMWithdrawFlags,
@@ -31,6 +37,9 @@ export { CheckCancel } from './checkCancel'
31
37
  export { CheckCash } from './checkCash'
32
38
  export { CheckCreate } from './checkCreate'
33
39
  export { Clawback } from './clawback'
40
+ export { CredentialAccept } from './CredentialAccept'
41
+ export { CredentialCreate } from './CredentialCreate'
42
+ export { CredentialDelete } from './CredentialDelete'
34
43
  export { DIDDelete } from './DIDDelete'
35
44
  export { DIDSet } from './DIDSet'
36
45
  export { DepositPreauth } from './depositPreauth'
@@ -38,6 +47,22 @@ export { EscrowCancel } from './escrowCancel'
38
47
  export { EscrowCreate } from './escrowCreate'
39
48
  export { EscrowFinish } from './escrowFinish'
40
49
  export { EnableAmendment, EnableAmendmentFlags } from './enableAmendment'
50
+ export {
51
+ MPTokenAuthorize,
52
+ MPTokenAuthorizeFlags,
53
+ MPTokenAuthorizeFlagsInterface,
54
+ } from './MPTokenAuthorize'
55
+ export {
56
+ MPTokenIssuanceCreate,
57
+ MPTokenIssuanceCreateFlags,
58
+ MPTokenIssuanceCreateFlagsInterface,
59
+ } from './MPTokenIssuanceCreate'
60
+ export { MPTokenIssuanceDestroy } from './MPTokenIssuanceDestroy'
61
+ export {
62
+ MPTokenIssuanceSet,
63
+ MPTokenIssuanceSetFlags,
64
+ MPTokenIssuanceSetFlagsInterface,
65
+ } from './MPTokenIssuanceSet'
41
66
  export { NFTokenAcceptOffer } from './NFTokenAcceptOffer'
42
67
  export { NFTokenBurn } from './NFTokenBurn'
43
68
  export { NFTokenCancelOffer } from './NFTokenCancelOffer'
@@ -51,12 +76,15 @@ export {
51
76
  NFTokenMintFlags,
52
77
  NFTokenMintFlagsInterface,
53
78
  } from './NFTokenMint'
79
+ export { NFTokenModify, validateNFTokenModify } from './NFTokenModify'
54
80
  export { OfferCancel } from './offerCancel'
55
81
  export {
56
82
  OfferCreateFlags,
57
83
  OfferCreateFlagsInterface,
58
84
  OfferCreate,
59
85
  } from './offerCreate'
86
+ export { OracleDelete } from './oracleDelete'
87
+ export { OracleSet } from './oracleSet'
60
88
  export { PaymentFlags, PaymentFlagsInterface, Payment } from './payment'
61
89
  export {
62
90
  PaymentChannelClaimFlags,
@@ -83,3 +111,6 @@ export {
83
111
  XChainModifyBridgeFlags,
84
112
  XChainModifyBridgeFlagsInterface,
85
113
  } from './XChainModifyBridge'
114
+
115
+ export { PermissionedDomainSet } from './permissionedDomainSet'
116
+ export { PermissionedDomainDelete } from './permissionedDomainDelete'
@@ -1,4 +1,25 @@
1
- import { Amount } from '../common'
1
+ import { Amount, MPTAmount } from '../common'
2
+
3
+ import { BaseTransaction } from './common'
4
+ import {
5
+ MPTokenIssuanceCreate,
6
+ MPTokenIssuanceCreateMetadata,
7
+ } from './MPTokenIssuanceCreate'
8
+ import {
9
+ NFTokenAcceptOffer,
10
+ NFTokenAcceptOfferMetadata,
11
+ } from './NFTokenAcceptOffer'
12
+ import {
13
+ NFTokenCancelOffer,
14
+ NFTokenCancelOfferMetadata,
15
+ } from './NFTokenCancelOffer'
16
+ import {
17
+ NFTokenCreateOffer,
18
+ NFTokenCreateOfferMetadata,
19
+ } from './NFTokenCreateOffer'
20
+ import { NFTokenMint, NFTokenMintMetadata } from './NFTokenMint'
21
+ import { Payment, PaymentMetadata } from './payment'
22
+ import type { Transaction } from './transaction'
2
23
 
3
24
  export interface CreatedNode {
4
25
  CreatedNode: {
@@ -23,6 +44,7 @@ export interface DeletedNode {
23
44
  DeletedNode: {
24
45
  LedgerEntryType: string
25
46
  LedgerIndex: string
47
+ PreviousFields?: { [field: string]: unknown }
26
48
  FinalFields: { [field: string]: unknown }
27
49
  }
28
50
  }
@@ -59,11 +81,26 @@ export function isDeletedNode(node: Node): node is DeletedNode {
59
81
  return Object.prototype.hasOwnProperty.call(node, `DeletedNode`)
60
82
  }
61
83
 
62
- export interface TransactionMetadata {
84
+ export interface TransactionMetadataBase {
63
85
  AffectedNodes: Node[]
64
- DeliveredAmount?: Amount
86
+ DeliveredAmount?: Amount | MPTAmount
65
87
  // "unavailable" possible for transactions before 2014-01-20
66
- delivered_amount?: Amount | 'unavailable'
88
+ delivered_amount?: Amount | MPTAmount | 'unavailable'
67
89
  TransactionIndex: number
68
90
  TransactionResult: string
69
91
  }
92
+
93
+ export type TransactionMetadata<T extends BaseTransaction = Transaction> =
94
+ T extends Payment
95
+ ? PaymentMetadata
96
+ : T extends NFTokenMint
97
+ ? NFTokenMintMetadata
98
+ : T extends NFTokenCreateOffer
99
+ ? NFTokenCreateOfferMetadata
100
+ : T extends NFTokenAcceptOffer
101
+ ? NFTokenAcceptOfferMetadata
102
+ : T extends NFTokenCancelOffer
103
+ ? NFTokenCancelOfferMetadata
104
+ : T extends MPTokenIssuanceCreate
105
+ ? MPTokenIssuanceCreateMetadata
106
+ : TransactionMetadataBase