xrp-tx 0.1.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 (229) hide show
  1. package/dist/errors.d.ts +20 -0
  2. package/dist/errors.d.ts.map +1 -0
  3. package/dist/errors.js +27 -0
  4. package/dist/errors.js.map +1 -0
  5. package/dist/groups/account.d.ts +15 -0
  6. package/dist/groups/account.d.ts.map +1 -0
  7. package/dist/groups/account.js +17 -0
  8. package/dist/groups/account.js.map +1 -0
  9. package/dist/groups/amm.d.ts +7 -0
  10. package/dist/groups/amm.d.ts.map +1 -0
  11. package/dist/groups/amm.js +7 -0
  12. package/dist/groups/amm.js.map +1 -0
  13. package/dist/groups/credential.d.ts +7 -0
  14. package/dist/groups/credential.d.ts.map +1 -0
  15. package/dist/groups/credential.js +7 -0
  16. package/dist/groups/credential.js.map +1 -0
  17. package/dist/groups/loan.d.ts +7 -0
  18. package/dist/groups/loan.d.ts.map +1 -0
  19. package/dist/groups/loan.js +7 -0
  20. package/dist/groups/loan.js.map +1 -0
  21. package/dist/groups/offer.d.ts +9 -0
  22. package/dist/groups/offer.d.ts.map +1 -0
  23. package/dist/groups/offer.js +9 -0
  24. package/dist/groups/offer.js.map +1 -0
  25. package/dist/groups/oracle.d.ts +7 -0
  26. package/dist/groups/oracle.d.ts.map +1 -0
  27. package/dist/groups/oracle.js +7 -0
  28. package/dist/groups/oracle.js.map +1 -0
  29. package/dist/groups/payment.d.ts +27 -0
  30. package/dist/groups/payment.d.ts.map +1 -0
  31. package/dist/groups/payment.js +23 -0
  32. package/dist/groups/payment.js.map +1 -0
  33. package/dist/groups/permissioned-domain.d.ts +7 -0
  34. package/dist/groups/permissioned-domain.d.ts.map +1 -0
  35. package/dist/groups/permissioned-domain.js +7 -0
  36. package/dist/groups/permissioned-domain.js.map +1 -0
  37. package/dist/groups/token.d.ts +15 -0
  38. package/dist/groups/token.d.ts.map +1 -0
  39. package/dist/groups/token.js +10 -0
  40. package/dist/groups/token.js.map +1 -0
  41. package/dist/groups/vault.d.ts +7 -0
  42. package/dist/groups/vault.d.ts.map +1 -0
  43. package/dist/groups/vault.js +7 -0
  44. package/dist/groups/vault.js.map +1 -0
  45. package/dist/groups/xchain.d.ts +7 -0
  46. package/dist/groups/xchain.d.ts.map +1 -0
  47. package/dist/groups/xchain.js +7 -0
  48. package/dist/groups/xchain.js.map +1 -0
  49. package/dist/index.d.ts +86 -0
  50. package/dist/index.d.ts.map +1 -0
  51. package/dist/index.js +63 -0
  52. package/dist/index.js.map +1 -0
  53. package/dist/registry.d.ts +17 -0
  54. package/dist/registry.d.ts.map +1 -0
  55. package/dist/registry.js +95 -0
  56. package/dist/registry.js.map +1 -0
  57. package/dist/transaction.d.ts +179 -0
  58. package/dist/transaction.d.ts.map +1 -0
  59. package/dist/transaction.js +205 -0
  60. package/dist/transaction.js.map +1 -0
  61. package/dist/transactions/account-delete.d.ts +20 -0
  62. package/dist/transactions/account-delete.d.ts.map +1 -0
  63. package/dist/transactions/account-delete.js +24 -0
  64. package/dist/transactions/account-delete.js.map +1 -0
  65. package/dist/transactions/account-set.d.ts +34 -0
  66. package/dist/transactions/account-set.d.ts.map +1 -0
  67. package/dist/transactions/account-set.js +59 -0
  68. package/dist/transactions/account-set.js.map +1 -0
  69. package/dist/transactions/check-cancel.d.ts +16 -0
  70. package/dist/transactions/check-cancel.d.ts.map +1 -0
  71. package/dist/transactions/check-cancel.js +18 -0
  72. package/dist/transactions/check-cancel.js.map +1 -0
  73. package/dist/transactions/check-cash.d.ts +21 -0
  74. package/dist/transactions/check-cash.d.ts.map +1 -0
  75. package/dist/transactions/check-cash.js +29 -0
  76. package/dist/transactions/check-cash.js.map +1 -0
  77. package/dist/transactions/check-create.d.ts +27 -0
  78. package/dist/transactions/check-create.d.ts.map +1 -0
  79. package/dist/transactions/check-create.js +35 -0
  80. package/dist/transactions/check-create.js.map +1 -0
  81. package/dist/transactions/clawback.d.ts +20 -0
  82. package/dist/transactions/clawback.d.ts.map +1 -0
  83. package/dist/transactions/clawback.js +20 -0
  84. package/dist/transactions/clawback.js.map +1 -0
  85. package/dist/transactions/delegate-set.d.ts +18 -0
  86. package/dist/transactions/delegate-set.d.ts.map +1 -0
  87. package/dist/transactions/delegate-set.js +22 -0
  88. package/dist/transactions/delegate-set.js.map +1 -0
  89. package/dist/transactions/deposit-preauth.d.ts +18 -0
  90. package/dist/transactions/deposit-preauth.d.ts.map +1 -0
  91. package/dist/transactions/deposit-preauth.js +26 -0
  92. package/dist/transactions/deposit-preauth.js.map +1 -0
  93. package/dist/transactions/did-delete.d.ts +13 -0
  94. package/dist/transactions/did-delete.d.ts.map +1 -0
  95. package/dist/transactions/did-delete.js +9 -0
  96. package/dist/transactions/did-delete.js.map +1 -0
  97. package/dist/transactions/did-set.d.ts +20 -0
  98. package/dist/transactions/did-set.d.ts.map +1 -0
  99. package/dist/transactions/did-set.js +24 -0
  100. package/dist/transactions/did-set.js.map +1 -0
  101. package/dist/transactions/escrow-cancel.d.ts +18 -0
  102. package/dist/transactions/escrow-cancel.d.ts.map +1 -0
  103. package/dist/transactions/escrow-cancel.js +22 -0
  104. package/dist/transactions/escrow-cancel.js.map +1 -0
  105. package/dist/transactions/escrow-create.d.ts +29 -0
  106. package/dist/transactions/escrow-create.d.ts.map +1 -0
  107. package/dist/transactions/escrow-create.js +40 -0
  108. package/dist/transactions/escrow-create.js.map +1 -0
  109. package/dist/transactions/escrow-finish.d.ts +22 -0
  110. package/dist/transactions/escrow-finish.d.ts.map +1 -0
  111. package/dist/transactions/escrow-finish.js +29 -0
  112. package/dist/transactions/escrow-finish.js.map +1 -0
  113. package/dist/transactions/mptoken-authorize.d.ts +22 -0
  114. package/dist/transactions/mptoken-authorize.d.ts.map +1 -0
  115. package/dist/transactions/mptoken-authorize.js +24 -0
  116. package/dist/transactions/mptoken-authorize.js.map +1 -0
  117. package/dist/transactions/mptoken-issuance-create.d.ts +23 -0
  118. package/dist/transactions/mptoken-issuance-create.d.ts.map +1 -0
  119. package/dist/transactions/mptoken-issuance-create.js +29 -0
  120. package/dist/transactions/mptoken-issuance-create.js.map +1 -0
  121. package/dist/transactions/mptoken-issuance-destroy.d.ts +17 -0
  122. package/dist/transactions/mptoken-issuance-destroy.d.ts.map +1 -0
  123. package/dist/transactions/mptoken-issuance-destroy.js +19 -0
  124. package/dist/transactions/mptoken-issuance-destroy.js.map +1 -0
  125. package/dist/transactions/mptoken-issuance-set.d.ts +19 -0
  126. package/dist/transactions/mptoken-issuance-set.d.ts.map +1 -0
  127. package/dist/transactions/mptoken-issuance-set.js +24 -0
  128. package/dist/transactions/mptoken-issuance-set.js.map +1 -0
  129. package/dist/transactions/nftoken-accept-offer.d.ts +22 -0
  130. package/dist/transactions/nftoken-accept-offer.d.ts.map +1 -0
  131. package/dist/transactions/nftoken-accept-offer.js +28 -0
  132. package/dist/transactions/nftoken-accept-offer.js.map +1 -0
  133. package/dist/transactions/nftoken-burn.d.ts +19 -0
  134. package/dist/transactions/nftoken-burn.d.ts.map +1 -0
  135. package/dist/transactions/nftoken-burn.js +24 -0
  136. package/dist/transactions/nftoken-burn.js.map +1 -0
  137. package/dist/transactions/nftoken-cancel-offer.d.ts +17 -0
  138. package/dist/transactions/nftoken-cancel-offer.d.ts.map +1 -0
  139. package/dist/transactions/nftoken-cancel-offer.js +21 -0
  140. package/dist/transactions/nftoken-cancel-offer.js.map +1 -0
  141. package/dist/transactions/nftoken-create-offer.d.ts +29 -0
  142. package/dist/transactions/nftoken-create-offer.d.ts.map +1 -0
  143. package/dist/transactions/nftoken-create-offer.js +34 -0
  144. package/dist/transactions/nftoken-create-offer.js.map +1 -0
  145. package/dist/transactions/nftoken-mint.d.ts +26 -0
  146. package/dist/transactions/nftoken-mint.d.ts.map +1 -0
  147. package/dist/transactions/nftoken-mint.js +34 -0
  148. package/dist/transactions/nftoken-mint.js.map +1 -0
  149. package/dist/transactions/nftoken-modify.d.ts +21 -0
  150. package/dist/transactions/nftoken-modify.d.ts.map +1 -0
  151. package/dist/transactions/nftoken-modify.js +27 -0
  152. package/dist/transactions/nftoken-modify.js.map +1 -0
  153. package/dist/transactions/offer-cancel.d.ts +16 -0
  154. package/dist/transactions/offer-cancel.d.ts.map +1 -0
  155. package/dist/transactions/offer-cancel.js +19 -0
  156. package/dist/transactions/offer-cancel.js.map +1 -0
  157. package/dist/transactions/offer-create.d.ts +29 -0
  158. package/dist/transactions/offer-create.d.ts.map +1 -0
  159. package/dist/transactions/offer-create.js +47 -0
  160. package/dist/transactions/offer-create.js.map +1 -0
  161. package/dist/transactions/payment-channel-claim.d.ts +28 -0
  162. package/dist/transactions/payment-channel-claim.d.ts.map +1 -0
  163. package/dist/transactions/payment-channel-claim.js +31 -0
  164. package/dist/transactions/payment-channel-claim.js.map +1 -0
  165. package/dist/transactions/payment-channel-create.d.ts +29 -0
  166. package/dist/transactions/payment-channel-create.d.ts.map +1 -0
  167. package/dist/transactions/payment-channel-create.js +40 -0
  168. package/dist/transactions/payment-channel-create.js.map +1 -0
  169. package/dist/transactions/payment-channel-fund.d.ts +21 -0
  170. package/dist/transactions/payment-channel-fund.d.ts.map +1 -0
  171. package/dist/transactions/payment-channel-fund.js +26 -0
  172. package/dist/transactions/payment-channel-fund.js.map +1 -0
  173. package/dist/transactions/payment.d.ts +42 -0
  174. package/dist/transactions/payment.d.ts.map +1 -0
  175. package/dist/transactions/payment.js +66 -0
  176. package/dist/transactions/payment.js.map +1 -0
  177. package/dist/transactions/set-regular-key.d.ts +16 -0
  178. package/dist/transactions/set-regular-key.d.ts.map +1 -0
  179. package/dist/transactions/set-regular-key.js +19 -0
  180. package/dist/transactions/set-regular-key.js.map +1 -0
  181. package/dist/transactions/signer-list-set.d.ts +19 -0
  182. package/dist/transactions/signer-list-set.d.ts.map +1 -0
  183. package/dist/transactions/signer-list-set.js +35 -0
  184. package/dist/transactions/signer-list-set.js.map +1 -0
  185. package/dist/transactions/ticket-create.d.ts +16 -0
  186. package/dist/transactions/ticket-create.d.ts.map +1 -0
  187. package/dist/transactions/ticket-create.js +18 -0
  188. package/dist/transactions/ticket-create.js.map +1 -0
  189. package/dist/transactions/trust-set.d.ts +25 -0
  190. package/dist/transactions/trust-set.d.ts.map +1 -0
  191. package/dist/transactions/trust-set.js +29 -0
  192. package/dist/transactions/trust-set.js.map +1 -0
  193. package/dist/types/amounts.d.ts +49 -0
  194. package/dist/types/amounts.d.ts.map +1 -0
  195. package/dist/types/amounts.js +8 -0
  196. package/dist/types/amounts.js.map +1 -0
  197. package/dist/types/base.d.ts +96 -0
  198. package/dist/types/base.d.ts.map +1 -0
  199. package/dist/types/base.js +2 -0
  200. package/dist/types/base.js.map +1 -0
  201. package/dist/types/common.d.ts +81 -0
  202. package/dist/types/common.d.ts.map +1 -0
  203. package/dist/types/common.js +5 -0
  204. package/dist/types/common.js.map +1 -0
  205. package/dist/types/flags.d.ts +180 -0
  206. package/dist/types/flags.d.ts.map +1 -0
  207. package/dist/types/flags.js +132 -0
  208. package/dist/types/flags.js.map +1 -0
  209. package/dist/types/index.d.ts +10 -0
  210. package/dist/types/index.d.ts.map +1 -0
  211. package/dist/types/index.js +2 -0
  212. package/dist/types/index.js.map +1 -0
  213. package/dist/types/transaction-types.d.ts +7 -0
  214. package/dist/types/transaction-types.d.ts.map +1 -0
  215. package/dist/types/transaction-types.js +2 -0
  216. package/dist/types/transaction-types.js.map +1 -0
  217. package/dist/validation/base.d.ts +8 -0
  218. package/dist/validation/base.d.ts.map +1 -0
  219. package/dist/validation/base.js +79 -0
  220. package/dist/validation/base.js.map +1 -0
  221. package/dist/validation/helpers.d.ts +42 -0
  222. package/dist/validation/helpers.d.ts.map +1 -0
  223. package/dist/validation/helpers.js +154 -0
  224. package/dist/validation/helpers.js.map +1 -0
  225. package/dist/validation/index.d.ts +3 -0
  226. package/dist/validation/index.d.ts.map +1 -0
  227. package/dist/validation/index.js +3 -0
  228. package/dist/validation/index.js.map +1 -0
  229. package/package.json +54 -0
@@ -0,0 +1,16 @@
1
+ /**
2
+ * OfferCancel transaction — cancel an existing DEX offer.
3
+ */
4
+ import type { BaseTransactionFields } from '../types/base.js';
5
+ import { OfferTransaction } from '../groups/offer.js';
6
+ export interface OfferCancelTxFields extends BaseTransactionFields {
7
+ readonly TransactionType: 'OfferCancel';
8
+ readonly OfferSequence: number;
9
+ }
10
+ export declare class OfferCancelTx extends OfferTransaction {
11
+ readonly TransactionType: "OfferCancel";
12
+ readonly OfferSequence: number;
13
+ constructor(props: OfferCancelTxFields | Record<string, unknown>);
14
+ validate(): void;
15
+ }
16
+ //# sourceMappingURL=offer-cancel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-cancel.d.ts","sourceRoot":"","sources":["../../src/transactions/offer-cancel.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAItD,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,qBAAa,aAAc,SAAQ,gBAAgB;IACjD,SAAkB,eAAe,EAAG,aAAa,CAAU;IAC3D,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAEnB,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAMvD,QAAQ,IAAI,IAAI;CAM1B"}
@@ -0,0 +1,19 @@
1
+ import { OfferTransaction } from '../groups/offer.js';
2
+ import { ValidationError } from '../errors.js';
3
+ import { isNumber } from '../validation/helpers.js';
4
+ export class OfferCancelTx extends OfferTransaction {
5
+ TransactionType = 'OfferCancel';
6
+ OfferSequence;
7
+ constructor(props) {
8
+ const p = props;
9
+ super({ ...p, TransactionType: 'OfferCancel' });
10
+ this.OfferSequence = p['OfferSequence'];
11
+ }
12
+ validate() {
13
+ super.validate();
14
+ if (!isNumber(this.OfferSequence)) {
15
+ throw new ValidationError('OfferCancel: missing or invalid OfferSequence');
16
+ }
17
+ }
18
+ }
19
+ //# sourceMappingURL=offer-cancel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-cancel.js","sourceRoot":"","sources":["../../src/transactions/offer-cancel.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAOpD,MAAM,OAAO,aAAc,SAAQ,gBAAgB;IAC/B,eAAe,GAAG,aAAsB,CAAC;IAClD,aAAa,CAAS;IAE/B,YAAY,KAAoD;QAC9D,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,aAAa,EAA2B,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,eAAe,CAAW,CAAC;IACpD,CAAC;IAEQ,QAAQ;QACf,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,eAAe,CAAC,+CAA+C,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * OfferCreate transaction — create a DEX limit order.
3
+ */
4
+ import type { Amount } from '../types/amounts.js';
5
+ import type { BaseTransactionFields } from '../types/base.js';
6
+ import type { OfferCreateFlagsInterface } from '../types/flags.js';
7
+ import { OfferTransaction } from '../groups/offer.js';
8
+ export interface OfferCreateTxFields extends BaseTransactionFields {
9
+ readonly TransactionType: 'OfferCreate';
10
+ readonly TakerGets: Amount;
11
+ readonly TakerPays: Amount;
12
+ readonly Expiration?: number;
13
+ readonly OfferSequence?: number;
14
+ readonly DomainID?: string;
15
+ readonly Flags?: number | OfferCreateFlagsInterface;
16
+ }
17
+ export declare class OfferCreateTx extends OfferTransaction {
18
+ readonly TransactionType: "OfferCreate";
19
+ readonly TakerGets: Amount;
20
+ readonly TakerPays: Amount;
21
+ readonly Expiration?: number;
22
+ readonly OfferSequence?: number;
23
+ readonly DomainID?: string;
24
+ readonly Flags?: number | OfferCreateFlagsInterface;
25
+ constructor(props: OfferCreateTxFields | Record<string, unknown>);
26
+ validate(): void;
27
+ private hasHybridFlag;
28
+ }
29
+ //# sourceMappingURL=offer-create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-create.d.ts","sourceRoot":"","sources":["../../src/transactions/offer-create.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtD,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,yBAAyB,CAAC;CACrD;AAED,qBAAa,aAAc,SAAQ,gBAAgB;IACjD,SAAkB,eAAe,EAAG,aAAa,CAAU;IAC3D,QAAQ,CAAC,SAAS,EAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAiB,KAAK,CAAC,EAAE,MAAM,GAAG,yBAAyB,CAAC;gBAEhD,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAQvD,QAAQ,IAAI,IAAI;IAoBzB,OAAO,CAAC,aAAa;CAKtB"}
@@ -0,0 +1,47 @@
1
+ import { OfferCreateFlags } from '../types/flags.js';
2
+ import { OfferTransaction } from '../groups/offer.js';
3
+ import { assignDefined } from '../transaction.js';
4
+ import { ValidationError } from '../errors.js';
5
+ import { isAmount, isNumber, isDomainID, isFlagEnabled } from '../validation/helpers.js';
6
+ export class OfferCreateTx extends OfferTransaction {
7
+ TransactionType = 'OfferCreate';
8
+ TakerGets;
9
+ TakerPays;
10
+ Expiration;
11
+ OfferSequence;
12
+ DomainID;
13
+ constructor(props) {
14
+ const p = props;
15
+ super({ ...p, TransactionType: 'OfferCreate' });
16
+ this.TakerGets = p['TakerGets'];
17
+ this.TakerPays = p['TakerPays'];
18
+ assignDefined(this, p, ['Expiration', 'OfferSequence', 'DomainID', 'Flags']);
19
+ }
20
+ validate() {
21
+ super.validate();
22
+ if (this.TakerGets === undefined)
23
+ throw new ValidationError('OfferCreate: missing field TakerGets');
24
+ if (!isAmount(this.TakerGets))
25
+ throw new ValidationError('OfferCreate: invalid TakerGets');
26
+ if (this.TakerPays === undefined)
27
+ throw new ValidationError('OfferCreate: missing field TakerPays');
28
+ if (!isAmount(this.TakerPays))
29
+ throw new ValidationError('OfferCreate: invalid TakerPays');
30
+ if (this.Expiration !== undefined && !isNumber(this.Expiration))
31
+ throw new ValidationError('OfferCreate: invalid Expiration');
32
+ if (this.OfferSequence !== undefined && !isNumber(this.OfferSequence))
33
+ throw new ValidationError('OfferCreate: invalid OfferSequence');
34
+ if (this.DomainID !== undefined && !isDomainID(this.DomainID))
35
+ throw new ValidationError('OfferCreate: invalid DomainID');
36
+ if (this.DomainID == null && this.hasHybridFlag())
37
+ throw new ValidationError('OfferCreate: tfHybrid flag cannot be set if DomainID is not present');
38
+ }
39
+ hasHybridFlag() {
40
+ if (this.Flags == null)
41
+ return false;
42
+ if (typeof this.Flags === 'number')
43
+ return isFlagEnabled(this.Flags, OfferCreateFlags.tfHybrid);
44
+ return this.Flags.tfHybrid ?? false;
45
+ }
46
+ }
47
+ //# sourceMappingURL=offer-create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offer-create.js","sourceRoot":"","sources":["../../src/transactions/offer-create.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAYzF,MAAM,OAAO,aAAc,SAAQ,gBAAgB;IAC/B,eAAe,GAAG,aAAsB,CAAC;IAClD,SAAS,CAAU;IACnB,SAAS,CAAU;IACnB,UAAU,CAAU;IACpB,aAAa,CAAU;IACvB,QAAQ,CAAU;IAG3B,YAAY,KAAoD;QAC9D,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,aAAa,EAA2B,CAAC,CAAC;QACzE,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,WAAW,CAAW,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,WAAW,CAAW,CAAC;QAC1C,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/E,CAAC;IAEQ,QAAQ;QACf,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;YAC9B,MAAM,IAAI,eAAe,CAAC,sCAAsC,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3B,MAAM,IAAI,eAAe,CAAC,gCAAgC,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;YAC9B,MAAM,IAAI,eAAe,CAAC,sCAAsC,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3B,MAAM,IAAI,eAAe,CAAC,gCAAgC,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;YAC7D,MAAM,IAAI,eAAe,CAAC,iCAAiC,CAAC,CAAC;QAC/D,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;YACnE,MAAM,IAAI,eAAe,CAAC,oCAAoC,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC3D,MAAM,IAAI,eAAe,CAAC,+BAA+B,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE;YAC/C,MAAM,IAAI,eAAe,CAAC,qEAAqE,CAAC,CAAC;IACrG,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QACrC,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAChG,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC;IACtC,CAAC;CACF"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * PaymentChannelClaim transaction — claim XRP from a payment channel.
3
+ */
4
+ import type { Amount } from '../types/amounts.js';
5
+ import type { BaseTransactionFields } from '../types/base.js';
6
+ import type { PaymentChannelClaimFlagsInterface } from '../types/flags.js';
7
+ import { Transaction } from '../transaction.js';
8
+ export interface PaymentChannelClaimTxFields extends BaseTransactionFields {
9
+ readonly TransactionType: 'PaymentChannelClaim';
10
+ readonly Channel: string;
11
+ readonly Balance?: Amount;
12
+ readonly Amount?: Amount;
13
+ readonly Signature?: string;
14
+ readonly PublicKey?: string;
15
+ readonly Flags?: number | PaymentChannelClaimFlagsInterface;
16
+ }
17
+ export declare class PaymentChannelClaimTx extends Transaction {
18
+ readonly TransactionType: "PaymentChannelClaim";
19
+ readonly Channel: string;
20
+ readonly Balance?: Amount;
21
+ readonly Amount?: Amount;
22
+ readonly Signature?: string;
23
+ readonly PublicKey?: string;
24
+ readonly Flags?: number | PaymentChannelClaimFlagsInterface;
25
+ constructor(props: PaymentChannelClaimTxFields | Record<string, unknown>);
26
+ validate(): void;
27
+ }
28
+ //# sourceMappingURL=payment-channel-claim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-channel-claim.d.ts","sourceRoot":"","sources":["../../src/transactions/payment-channel-claim.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAiB,MAAM,mBAAmB,CAAC;AAI/D,MAAM,WAAW,2BAA4B,SAAQ,qBAAqB;IACxE,QAAQ,CAAC,eAAe,EAAE,qBAAqB,CAAC;IAChD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,iCAAiC,CAAC;CAC7D;AAED,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,SAAkB,eAAe,EAAG,qBAAqB,CAAU;IACnE,QAAQ,CAAC,OAAO,EAAG,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAiB,KAAK,CAAC,EAAE,MAAM,GAAG,iCAAiC,CAAC;gBAExD,KAAK,EAAE,2BAA2B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAO/D,QAAQ,IAAI,IAAI;CAY1B"}
@@ -0,0 +1,31 @@
1
+ import { Transaction, assignDefined } from '../transaction.js';
2
+ import { ValidationError } from '../errors.js';
3
+ import { isAmount, isString } from '../validation/helpers.js';
4
+ export class PaymentChannelClaimTx extends Transaction {
5
+ TransactionType = 'PaymentChannelClaim';
6
+ Channel;
7
+ Balance;
8
+ Amount;
9
+ Signature;
10
+ PublicKey;
11
+ constructor(props) {
12
+ const p = props;
13
+ super({ ...p, TransactionType: 'PaymentChannelClaim' });
14
+ this.Channel = p['Channel'];
15
+ assignDefined(this, p, ['Balance', 'Amount', 'Signature', 'PublicKey', 'Flags']);
16
+ }
17
+ validate() {
18
+ super.validate();
19
+ if (!isString(this.Channel))
20
+ throw new ValidationError('PaymentChannelClaim: missing Channel');
21
+ if (this.Balance !== undefined && !isAmount(this.Balance))
22
+ throw new ValidationError('PaymentChannelClaim: invalid Balance');
23
+ if (this.Amount !== undefined && !isAmount(this.Amount))
24
+ throw new ValidationError('PaymentChannelClaim: invalid Amount');
25
+ if (this.Signature !== undefined && !isString(this.Signature))
26
+ throw new ValidationError('PaymentChannelClaim: Signature must be a string');
27
+ if (this.PublicKey !== undefined && !isString(this.PublicKey))
28
+ throw new ValidationError('PaymentChannelClaim: PublicKey must be a string');
29
+ }
30
+ }
31
+ //# sourceMappingURL=payment-channel-claim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-channel-claim.js","sourceRoot":"","sources":["../../src/transactions/payment-channel-claim.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAY9D,MAAM,OAAO,qBAAsB,SAAQ,WAAW;IAClC,eAAe,GAAG,qBAA8B,CAAC;IAC1D,OAAO,CAAU;IACjB,OAAO,CAAU;IACjB,MAAM,CAAU;IAChB,SAAS,CAAU;IACnB,SAAS,CAAU;IAG5B,YAAY,KAA4D;QACtE,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,qBAAqB,EAA2B,CAAC,CAAC;QACjF,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,CAAW,CAAC;QACtC,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IACnF,CAAC;IAEQ,QAAQ;QACf,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,sCAAsC,CAAC,CAAC;QAC/F,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;YACvD,MAAM,IAAI,eAAe,CAAC,sCAAsC,CAAC,CAAC;QACpE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YACrD,MAAM,IAAI,eAAe,CAAC,qCAAqC,CAAC,CAAC;QACnE,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3D,MAAM,IAAI,eAAe,CAAC,iDAAiD,CAAC,CAAC;QAC/E,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3D,MAAM,IAAI,eAAe,CAAC,iDAAiD,CAAC,CAAC;IACjF,CAAC;CACF"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * PaymentChannelCreate transaction — create a payment channel.
3
+ */
4
+ import type { Amount } from '../types/amounts.js';
5
+ import type { BaseTransactionFields } from '../types/base.js';
6
+ import { PaymentTransaction } from '../groups/payment.js';
7
+ export interface PaymentChannelCreateTxFields extends BaseTransactionFields {
8
+ readonly TransactionType: 'PaymentChannelCreate';
9
+ readonly Amount: Amount;
10
+ readonly Destination: string;
11
+ readonly SettleDelay: number;
12
+ readonly PublicKey: string;
13
+ readonly CancelAfter?: number;
14
+ readonly DestinationTag?: number;
15
+ }
16
+ export declare class PaymentChannelCreateTx extends PaymentTransaction {
17
+ readonly TransactionType: "PaymentChannelCreate";
18
+ readonly Amount: Amount;
19
+ readonly Destination: string;
20
+ readonly SettleDelay: number;
21
+ readonly PublicKey: string;
22
+ readonly CancelAfter?: number;
23
+ readonly DestinationTag?: number;
24
+ constructor(props: PaymentChannelCreateTxFields | Record<string, unknown>);
25
+ getAmount(): Amount;
26
+ getDestination(): string;
27
+ validate(): void;
28
+ }
29
+ //# sourceMappingURL=payment-channel-create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-channel-create.d.ts","sourceRoot":"","sources":["../../src/transactions/payment-channel-create.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,MAAM,WAAW,4BAA6B,SAAQ,qBAAqB;IACzE,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,SAAkB,eAAe,EAAG,sBAAsB,CAAU;IACpE,QAAQ,CAAC,MAAM,EAAG,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;gBAErB,KAAK,EAAE,4BAA4B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAUhE,SAAS,IAAI,MAAM;IACnB,cAAc,IAAI,MAAM;IAExB,QAAQ,IAAI,IAAI;CAW1B"}
@@ -0,0 +1,40 @@
1
+ import { PaymentTransaction } from '../groups/payment.js';
2
+ import { assignDefined } from '../transaction.js';
3
+ import { ValidationError } from '../errors.js';
4
+ import { isAmount, isAccount, isNumber, isString } from '../validation/helpers.js';
5
+ export class PaymentChannelCreateTx extends PaymentTransaction {
6
+ TransactionType = 'PaymentChannelCreate';
7
+ Amount;
8
+ Destination;
9
+ SettleDelay;
10
+ PublicKey;
11
+ CancelAfter;
12
+ DestinationTag;
13
+ constructor(props) {
14
+ const p = props;
15
+ super({ ...p, TransactionType: 'PaymentChannelCreate' });
16
+ this.Amount = p['Amount'];
17
+ this.Destination = p['Destination'];
18
+ this.SettleDelay = p['SettleDelay'];
19
+ this.PublicKey = p['PublicKey'];
20
+ assignDefined(this, p, ['CancelAfter', 'DestinationTag']);
21
+ }
22
+ getAmount() { return this.Amount; }
23
+ getDestination() { return this.Destination; }
24
+ validate() {
25
+ super.validate();
26
+ if (!isAmount(this.Amount))
27
+ throw new ValidationError('PaymentChannelCreate: invalid Amount');
28
+ if (!isAccount(this.Destination))
29
+ throw new ValidationError('PaymentChannelCreate: invalid Destination');
30
+ if (!isNumber(this.SettleDelay))
31
+ throw new ValidationError('PaymentChannelCreate: missing SettleDelay');
32
+ if (!isString(this.PublicKey))
33
+ throw new ValidationError('PaymentChannelCreate: missing PublicKey');
34
+ if (this.CancelAfter !== undefined && !isNumber(this.CancelAfter))
35
+ throw new ValidationError('PaymentChannelCreate: CancelAfter must be a number');
36
+ if (this.DestinationTag !== undefined && !isNumber(this.DestinationTag))
37
+ throw new ValidationError('PaymentChannelCreate: DestinationTag must be a number');
38
+ }
39
+ }
40
+ //# sourceMappingURL=payment-channel-create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-channel-create.js","sourceRoot":"","sources":["../../src/transactions/payment-channel-create.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAYnF,MAAM,OAAO,sBAAuB,SAAQ,kBAAkB;IAC1C,eAAe,GAAG,sBAA+B,CAAC;IAC3D,MAAM,CAAU;IAChB,WAAW,CAAU;IACrB,WAAW,CAAU;IACrB,SAAS,CAAU;IACnB,WAAW,CAAU;IACrB,cAAc,CAAU;IAEjC,YAAY,KAA6D;QACvE,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,sBAAsB,EAA2B,CAAC,CAAC;QAClF,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAW,CAAC;QACpC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,aAAa,CAAW,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,aAAa,CAAW,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,WAAW,CAAW,CAAC;QAC1C,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAC5D,CAAC;IAEQ,SAAS,KAAa,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,cAAc,KAAa,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAErD,QAAQ;QACf,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,sCAAsC,CAAC,CAAC;QAC9F,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,2CAA2C,CAAC,CAAC;QACzG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,2CAA2C,CAAC,CAAC;QACxG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,yCAAyC,CAAC,CAAC;QACpG,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;YAC/D,MAAM,IAAI,eAAe,CAAC,oDAAoD,CAAC,CAAC;QAClF,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC;YACrE,MAAM,IAAI,eAAe,CAAC,uDAAuD,CAAC,CAAC;IACvF,CAAC;CACF"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * PaymentChannelFund transaction — add XRP to a payment channel.
3
+ */
4
+ import type { Amount } from '../types/amounts.js';
5
+ import type { BaseTransactionFields } from '../types/base.js';
6
+ import { Transaction } from '../transaction.js';
7
+ export interface PaymentChannelFundTxFields extends BaseTransactionFields {
8
+ readonly TransactionType: 'PaymentChannelFund';
9
+ readonly Channel: string;
10
+ readonly Amount: Amount;
11
+ readonly Expiration?: number;
12
+ }
13
+ export declare class PaymentChannelFundTx extends Transaction {
14
+ readonly TransactionType: "PaymentChannelFund";
15
+ readonly Channel: string;
16
+ readonly Amount: Amount;
17
+ readonly Expiration?: number;
18
+ constructor(props: PaymentChannelFundTxFields | Record<string, unknown>);
19
+ validate(): void;
20
+ }
21
+ //# sourceMappingURL=payment-channel-fund.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-channel-fund.d.ts","sourceRoot":"","sources":["../../src/transactions/payment-channel-fund.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAiB,MAAM,mBAAmB,CAAC;AAI/D,MAAM,WAAW,0BAA2B,SAAQ,qBAAqB;IACvE,QAAQ,CAAC,eAAe,EAAE,oBAAoB,CAAC;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,oBAAqB,SAAQ,WAAW;IACnD,SAAkB,eAAe,EAAG,oBAAoB,CAAU;IAClE,QAAQ,CAAC,OAAO,EAAG,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAG,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;gBAEjB,KAAK,EAAE,0BAA0B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAQ9D,QAAQ,IAAI,IAAI;CAO1B"}
@@ -0,0 +1,26 @@
1
+ import { Transaction, assignDefined } from '../transaction.js';
2
+ import { ValidationError } from '../errors.js';
3
+ import { isAmount, isString, isNumber } from '../validation/helpers.js';
4
+ export class PaymentChannelFundTx extends Transaction {
5
+ TransactionType = 'PaymentChannelFund';
6
+ Channel;
7
+ Amount;
8
+ Expiration;
9
+ constructor(props) {
10
+ const p = props;
11
+ super({ ...p, TransactionType: 'PaymentChannelFund' });
12
+ this.Channel = p['Channel'];
13
+ this.Amount = p['Amount'];
14
+ assignDefined(this, p, ['Expiration']);
15
+ }
16
+ validate() {
17
+ super.validate();
18
+ if (!isString(this.Channel))
19
+ throw new ValidationError('PaymentChannelFund: missing Channel');
20
+ if (!isAmount(this.Amount))
21
+ throw new ValidationError('PaymentChannelFund: invalid Amount');
22
+ if (this.Expiration !== undefined && !isNumber(this.Expiration))
23
+ throw new ValidationError('PaymentChannelFund: Expiration must be a number');
24
+ }
25
+ }
26
+ //# sourceMappingURL=payment-channel-fund.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-channel-fund.js","sourceRoot":"","sources":["../../src/transactions/payment-channel-fund.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AASxE,MAAM,OAAO,oBAAqB,SAAQ,WAAW;IACjC,eAAe,GAAG,oBAA6B,CAAC;IACzD,OAAO,CAAU;IACjB,MAAM,CAAU;IAChB,UAAU,CAAU;IAE7B,YAAY,KAA2D;QACrE,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,oBAAoB,EAA2B,CAAC,CAAC;QAChF,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,CAAW,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAW,CAAC;QACpC,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IACzC,CAAC;IAEQ,QAAQ;QACf,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,qCAAqC,CAAC,CAAC;QAC9F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,oCAAoC,CAAC,CAAC;QAC5F,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;YAC7D,MAAM,IAAI,eAAe,CAAC,iDAAiD,CAAC,CAAC;IACjF,CAAC;CACF"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Payment transaction — transfer value from one account to another.
3
+ */
4
+ import type { Amount } from '../types/amounts.js';
5
+ import type { Path } from '../types/common.js';
6
+ import type { BaseTransactionFields } from '../types/base.js';
7
+ import type { PaymentFlagsInterface } from '../types/flags.js';
8
+ import { PaymentTransaction } from '../groups/payment.js';
9
+ export interface PaymentTxFields extends BaseTransactionFields {
10
+ readonly TransactionType: 'Payment';
11
+ readonly Amount: Amount;
12
+ readonly DeliverMax?: Amount;
13
+ readonly Destination: string;
14
+ readonly DestinationTag?: number;
15
+ readonly InvoiceID?: string;
16
+ readonly Paths?: Path[];
17
+ readonly SendMax?: Amount;
18
+ readonly DeliverMin?: Amount;
19
+ readonly CredentialIDs?: string[];
20
+ readonly DomainID?: string;
21
+ readonly Flags?: number | PaymentFlagsInterface;
22
+ }
23
+ export declare class PaymentTx extends PaymentTransaction {
24
+ readonly TransactionType: "Payment";
25
+ readonly Amount: Amount;
26
+ readonly Destination: string;
27
+ readonly DeliverMax?: Amount;
28
+ readonly DestinationTag?: number;
29
+ readonly InvoiceID?: string;
30
+ readonly Paths?: Path[];
31
+ readonly SendMax?: Amount;
32
+ readonly DeliverMin?: Amount;
33
+ readonly CredentialIDs?: string[];
34
+ readonly DomainID?: string;
35
+ readonly Flags?: number | PaymentFlagsInterface;
36
+ constructor(props: PaymentTxFields | Record<string, unknown>);
37
+ getAmount(): Amount;
38
+ getDestination(): string;
39
+ validate(): void;
40
+ private validatePartialPayment;
41
+ }
42
+ //# sourceMappingURL=payment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../src/transactions/payment.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAa1D,MAAM,WAAW,eAAgB,SAAQ,qBAAqB;IAC5D,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,qBAAqB,CAAC;CACjD;AAOD,qBAAa,SAAU,SAAQ,kBAAkB;IAC/C,SAAkB,eAAe,EAAG,SAAS,CAAU;IACvD,QAAQ,CAAC,MAAM,EAAG,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAiB,KAAK,CAAC,EAAE,MAAM,GAAG,qBAAqB,CAAC;gBAE5C,KAAK,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAQnD,SAAS,IAAI,MAAM;IACnB,cAAc,IAAI,MAAM;IAExB,QAAQ,IAAI,IAAI;IAmBzB,OAAO,CAAC,sBAAsB;CAe/B"}
@@ -0,0 +1,66 @@
1
+ import { PaymentFlags } from '../types/flags.js';
2
+ import { PaymentTransaction } from '../groups/payment.js';
3
+ import { assignDefined } from '../transaction.js';
4
+ import { ValidationError } from '../errors.js';
5
+ import { isAmount, isAccount, isNumber, isString, isPaths, isDomainID, isFlagEnabled, } from '../validation/helpers.js';
6
+ const PAYMENT_OPTIONAL = [
7
+ 'DeliverMax', 'DestinationTag', 'InvoiceID', 'Paths',
8
+ 'SendMax', 'DeliverMin', 'CredentialIDs', 'DomainID', 'Flags',
9
+ ];
10
+ export class PaymentTx extends PaymentTransaction {
11
+ TransactionType = 'Payment';
12
+ Amount;
13
+ Destination;
14
+ DeliverMax;
15
+ DestinationTag;
16
+ InvoiceID;
17
+ Paths;
18
+ SendMax;
19
+ DeliverMin;
20
+ CredentialIDs;
21
+ DomainID;
22
+ constructor(props) {
23
+ const p = props;
24
+ super({ ...p, TransactionType: 'Payment' });
25
+ this.Amount = p['Amount'];
26
+ this.Destination = p['Destination'];
27
+ assignDefined(this, p, PAYMENT_OPTIONAL);
28
+ }
29
+ getAmount() { return this.Amount; }
30
+ getDestination() { return this.Destination; }
31
+ validate() {
32
+ super.validate();
33
+ if (!isAmount(this.Amount))
34
+ throw new ValidationError('Payment: invalid Amount');
35
+ if (!isAccount(this.Destination))
36
+ throw new ValidationError('Payment: invalid Destination');
37
+ if (this.DestinationTag !== undefined && !isNumber(this.DestinationTag))
38
+ throw new ValidationError('Payment: DestinationTag must be a number');
39
+ if (this.InvoiceID !== undefined && !isString(this.InvoiceID))
40
+ throw new ValidationError('Payment: InvoiceID must be a string');
41
+ if (this.Paths !== undefined && !isPaths(this.Paths))
42
+ throw new ValidationError('Payment: invalid Paths');
43
+ if (this.SendMax !== undefined && !isAmount(this.SendMax))
44
+ throw new ValidationError('Payment: invalid SendMax');
45
+ if (this.DomainID !== undefined && !isDomainID(this.DomainID))
46
+ throw new ValidationError('Payment: invalid DomainID');
47
+ this.validatePartialPayment();
48
+ }
49
+ validatePartialPayment() {
50
+ if (this.DeliverMin == null)
51
+ return;
52
+ if (this.Flags == null) {
53
+ throw new ValidationError('Payment: tfPartialPayment flag required with DeliverMin');
54
+ }
55
+ const flags = this.Flags;
56
+ const isPartial = typeof flags === 'number'
57
+ ? isFlagEnabled(flags, PaymentFlags.tfPartialPayment)
58
+ : (flags.tfPartialPayment ?? false);
59
+ if (!isPartial) {
60
+ throw new ValidationError('Payment: tfPartialPayment flag required with DeliverMin');
61
+ }
62
+ if (!isAmount(this.DeliverMin))
63
+ throw new ValidationError('Payment: invalid DeliverMin');
64
+ }
65
+ }
66
+ //# sourceMappingURL=payment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.js","sourceRoot":"","sources":["../../src/transactions/payment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * SetRegularKey transaction — assign or remove a regular key pair.
3
+ */
4
+ import type { BaseTransactionFields } from '../types/base.js';
5
+ import { AccountTransaction } from '../groups/account.js';
6
+ export interface SetRegularKeyTxFields extends BaseTransactionFields {
7
+ readonly TransactionType: 'SetRegularKey';
8
+ readonly RegularKey?: string;
9
+ }
10
+ export declare class SetRegularKeyTx extends AccountTransaction {
11
+ readonly TransactionType: "SetRegularKey";
12
+ readonly RegularKey?: string;
13
+ constructor(props: SetRegularKeyTxFields | Record<string, unknown>);
14
+ validate(): void;
15
+ }
16
+ //# sourceMappingURL=set-regular-key.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-regular-key.d.ts","sourceRoot":"","sources":["../../src/transactions/set-regular-key.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD,SAAkB,eAAe,EAAG,eAAe,CAAU;IAC7D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;gBAEjB,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAMzD,QAAQ,IAAI,IAAI;CAK1B"}
@@ -0,0 +1,19 @@
1
+ import { AccountTransaction } from '../groups/account.js';
2
+ import { assignDefined } from '../transaction.js';
3
+ import { ValidationError } from '../errors.js';
4
+ import { isAccount } from '../validation/helpers.js';
5
+ export class SetRegularKeyTx extends AccountTransaction {
6
+ TransactionType = 'SetRegularKey';
7
+ RegularKey;
8
+ constructor(props) {
9
+ const p = props;
10
+ super({ ...p, TransactionType: 'SetRegularKey' });
11
+ assignDefined(this, p, ['RegularKey']);
12
+ }
13
+ validate() {
14
+ super.validate();
15
+ if (this.RegularKey !== undefined && !isAccount(this.RegularKey))
16
+ throw new ValidationError('SetRegularKey: invalid RegularKey');
17
+ }
18
+ }
19
+ //# sourceMappingURL=set-regular-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-regular-key.js","sourceRoot":"","sources":["../../src/transactions/set-regular-key.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAOrD,MAAM,OAAO,eAAgB,SAAQ,kBAAkB;IACnC,eAAe,GAAG,eAAwB,CAAC;IACpD,UAAU,CAAU;IAE7B,YAAY,KAAsD;QAChE,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,eAAe,EAA2B,CAAC,CAAC;QAC3E,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IACzC,CAAC;IAEQ,QAAQ;QACf,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;YAC9D,MAAM,IAAI,eAAe,CAAC,mCAAmC,CAAC,CAAC;IACnE,CAAC;CACF"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * SignerListSet transaction — create, replace, or remove a signer list.
3
+ */
4
+ import type { BaseTransactionFields } from '../types/base.js';
5
+ import type { SignerEntry } from '../types/common.js';
6
+ import { AccountTransaction } from '../groups/account.js';
7
+ export interface SignerListSetTxFields extends BaseTransactionFields {
8
+ readonly TransactionType: 'SignerListSet';
9
+ readonly SignerQuorum: number;
10
+ readonly SignerEntries?: SignerEntry[];
11
+ }
12
+ export declare class SignerListSetTx extends AccountTransaction {
13
+ readonly TransactionType: "SignerListSet";
14
+ readonly SignerQuorum: number;
15
+ readonly SignerEntries?: SignerEntry[];
16
+ constructor(props: SignerListSetTxFields | Record<string, unknown>);
17
+ validate(): void;
18
+ }
19
+ //# sourceMappingURL=signer-list-set.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer-list-set.d.ts","sourceRoot":"","sources":["../../src/transactions/signer-list-set.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;CACxC;AASD,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD,SAAkB,eAAe,EAAG,eAAe,CAAU;IAC7D,QAAQ,CAAC,YAAY,EAAG,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;gBAE3B,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAOzD,QAAQ,IAAI,IAAI;CAW1B"}
@@ -0,0 +1,35 @@
1
+ import { AccountTransaction } from '../groups/account.js';
2
+ import { assignDefined } from '../transaction.js';
3
+ import { ValidationError } from '../errors.js';
4
+ import { isNumber, isRecord, isString, isArray } from '../validation/helpers.js';
5
+ function isSignerEntry(value) {
6
+ if (!isRecord(value))
7
+ return false;
8
+ const entry = value['SignerEntry'];
9
+ if (!isRecord(entry))
10
+ return false;
11
+ return isString(entry['Account']) && isNumber(entry['SignerWeight']);
12
+ }
13
+ export class SignerListSetTx extends AccountTransaction {
14
+ TransactionType = 'SignerListSet';
15
+ SignerQuorum;
16
+ SignerEntries;
17
+ constructor(props) {
18
+ const p = props;
19
+ super({ ...p, TransactionType: 'SignerListSet' });
20
+ this.SignerQuorum = p['SignerQuorum'];
21
+ assignDefined(this, p, ['SignerEntries']);
22
+ }
23
+ validate() {
24
+ super.validate();
25
+ if (!isNumber(this.SignerQuorum))
26
+ throw new ValidationError('SignerListSet: missing or invalid SignerQuorum');
27
+ if (this.SignerQuorum === 0 && this.SignerEntries != null && this.SignerEntries.length > 0)
28
+ throw new ValidationError('SignerListSet: SignerQuorum must be > 0 when SignerEntries are present');
29
+ if (this.SignerEntries !== undefined) {
30
+ if (!isArray(this.SignerEntries) || !this.SignerEntries.every(isSignerEntry))
31
+ throw new ValidationError('SignerListSet: invalid SignerEntries');
32
+ }
33
+ }
34
+ }
35
+ //# sourceMappingURL=signer-list-set.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer-list-set.js","sourceRoot":"","sources":["../../src/transactions/signer-list-set.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAQjF,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACnC,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;IACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACnC,OAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,OAAO,eAAgB,SAAQ,kBAAkB;IACnC,eAAe,GAAG,eAAwB,CAAC;IACpD,YAAY,CAAU;IACtB,aAAa,CAAiB;IAEvC,YAAY,KAAsD;QAChE,MAAM,CAAC,GAAG,KAAgC,CAAC;QAC3C,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,eAAe,EAA2B,CAAC,CAAC;QAC3E,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,cAAc,CAAW,CAAC;QAChD,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAC5C,CAAC;IAEQ,QAAQ;QACf,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;YAC9B,MAAM,IAAI,eAAe,CAAC,gDAAgD,CAAC,CAAC;QAC9E,IAAI,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;YACxF,MAAM,IAAI,eAAe,CAAC,wEAAwE,CAAC,CAAC;QACtG,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC;gBAC1E,MAAM,IAAI,eAAe,CAAC,sCAAsC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * TicketCreate transaction — set aside sequence numbers for future use.
3
+ */
4
+ import type { BaseTransactionFields } from '../types/base.js';
5
+ import { AccountTransaction } from '../groups/account.js';
6
+ export interface TicketCreateTxFields extends BaseTransactionFields {
7
+ readonly TransactionType: 'TicketCreate';
8
+ readonly TicketCount: number;
9
+ }
10
+ export declare class TicketCreateTx extends AccountTransaction {
11
+ readonly TransactionType: "TicketCreate";
12
+ readonly TicketCount: number;
13
+ constructor(props: TicketCreateTxFields | Record<string, unknown>);
14
+ validate(): void;
15
+ }
16
+ //# sourceMappingURL=ticket-create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticket-create.d.ts","sourceRoot":"","sources":["../../src/transactions/ticket-create.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAI1D,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,cAAe,SAAQ,kBAAkB;IACpD,SAAkB,eAAe,EAAG,cAAc,CAAU;IAC5D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAEjB,KAAK,EAAE,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAMxD,QAAQ,IAAI,IAAI;CAK1B"}
@@ -0,0 +1,18 @@
1
+ import { AccountTransaction } from '../groups/account.js';
2
+ import { ValidationError } from '../errors.js';
3
+ import { isNumber } from '../validation/helpers.js';
4
+ export class TicketCreateTx extends AccountTransaction {
5
+ TransactionType = 'TicketCreate';
6
+ TicketCount;
7
+ constructor(props) {
8
+ const p = props;
9
+ super({ ...p, TransactionType: 'TicketCreate' });
10
+ this.TicketCount = p['TicketCount'];
11
+ }
12
+ validate() {
13
+ super.validate();
14
+ if (!isNumber(this.TicketCount) || this.TicketCount < 1 || this.TicketCount > 250)
15
+ throw new ValidationError('TicketCreate: TicketCount must be 1-250');
16
+ }
17
+ }
18
+ //# sourceMappingURL=ticket-create.js.map