aftermath-ts-sdk 1.2.51 → 1.2.52-perps.4

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 (214) hide show
  1. package/README.md +62 -28
  2. package/dist/general/apiHelpers/eventsApiHelpers.d.ts +1 -1
  3. package/dist/general/apiHelpers/eventsApiHelpers.d.ts.map +1 -1
  4. package/dist/general/apiHelpers/eventsApiHelpers.js +4 -1
  5. package/dist/general/apiHelpers/transactionsApiHelpers.d.ts +6 -0
  6. package/dist/general/apiHelpers/transactionsApiHelpers.d.ts.map +1 -1
  7. package/dist/general/apiHelpers/transactionsApiHelpers.js +46 -0
  8. package/dist/general/dynamicGas/dynamicGas.d.ts +34 -0
  9. package/dist/general/dynamicGas/dynamicGas.d.ts.map +1 -1
  10. package/dist/general/dynamicGas/dynamicGas.js +34 -0
  11. package/dist/general/dynamicGas/dynamicGasTypes.d.ts +25 -0
  12. package/dist/general/dynamicGas/dynamicGasTypes.d.ts.map +1 -1
  13. package/dist/general/prices/coinGeckoTypes.d.ts +2 -0
  14. package/dist/general/prices/coinGeckoTypes.d.ts.map +1 -1
  15. package/dist/general/prices/prices.d.ts +73 -0
  16. package/dist/general/prices/prices.d.ts.map +1 -1
  17. package/dist/general/prices/prices.js +73 -0
  18. package/dist/general/providers/aftermath.d.ts +107 -27
  19. package/dist/general/providers/aftermath.d.ts.map +1 -1
  20. package/dist/general/providers/aftermath.js +110 -30
  21. package/dist/general/providers/aftermathApi.d.ts +128 -10
  22. package/dist/general/providers/aftermathApi.d.ts.map +1 -1
  23. package/dist/general/providers/aftermathApi.js +133 -14
  24. package/dist/general/types/castingTypes.d.ts +15 -7
  25. package/dist/general/types/castingTypes.d.ts.map +1 -1
  26. package/dist/general/types/castingTypes.js +6 -0
  27. package/dist/general/types/configTypes.d.ts +14 -8
  28. package/dist/general/types/configTypes.d.ts.map +1 -1
  29. package/dist/general/types/generalTypes.d.ts +229 -7
  30. package/dist/general/types/generalTypes.d.ts.map +1 -1
  31. package/dist/general/types/moveErrorsInterface.d.ts +1 -1
  32. package/dist/general/types/moveErrorsInterface.d.ts.map +1 -1
  33. package/dist/general/types/suiTypes.d.ts +0 -16
  34. package/dist/general/types/suiTypes.d.ts.map +1 -1
  35. package/dist/general/types/suiTypes.js +3 -25
  36. package/dist/general/utils/caller.d.ts +6 -3
  37. package/dist/general/utils/caller.d.ts.map +1 -1
  38. package/dist/general/utils/caller.js +22 -4
  39. package/dist/general/utils/casting.d.ts +156 -5
  40. package/dist/general/utils/casting.d.ts.map +1 -1
  41. package/dist/general/utils/casting.js +159 -18
  42. package/dist/general/utils/fixedUtils.d.ts +89 -2
  43. package/dist/general/utils/fixedUtils.d.ts.map +1 -1
  44. package/dist/general/utils/fixedUtils.js +81 -4
  45. package/dist/general/utils/helpers.d.ts +327 -10
  46. package/dist/general/utils/helpers.d.ts.map +1 -1
  47. package/dist/general/utils/helpers.js +409 -91
  48. package/dist/general/utils/iFixedUtils.d.ts +64 -0
  49. package/dist/general/utils/iFixedUtils.d.ts.map +1 -1
  50. package/dist/general/utils/iFixedUtils.js +64 -0
  51. package/dist/general/wallet/wallet.d.ts +76 -1
  52. package/dist/general/wallet/wallet.d.ts.map +1 -1
  53. package/dist/general/wallet/wallet.js +75 -5
  54. package/dist/packages/auth/auth.d.ts +113 -4
  55. package/dist/packages/auth/auth.d.ts.map +1 -1
  56. package/dist/packages/auth/auth.js +190 -59
  57. package/dist/packages/auth/authTypes.d.ts +66 -0
  58. package/dist/packages/auth/authTypes.d.ts.map +1 -1
  59. package/dist/packages/coin/api/coinApi.d.ts.map +1 -1
  60. package/dist/packages/coin/api/coinApi.js +29 -20
  61. package/dist/packages/coin/coin.d.ts +256 -1
  62. package/dist/packages/coin/coin.d.ts.map +1 -1
  63. package/dist/packages/coin/coin.js +246 -15
  64. package/dist/packages/coin/coinTypes.d.ts +95 -0
  65. package/dist/packages/coin/coinTypes.d.ts.map +1 -1
  66. package/dist/packages/dca/api/dcaApi.d.ts +2 -0
  67. package/dist/packages/dca/api/dcaApi.d.ts.map +1 -1
  68. package/dist/packages/dca/api/dcaApi.js +6 -3
  69. package/dist/packages/dca/dca.d.ts +125 -35
  70. package/dist/packages/dca/dca.d.ts.map +1 -1
  71. package/dist/packages/dca/dca.js +135 -43
  72. package/dist/packages/dca/dcaTypes.d.ts +217 -42
  73. package/dist/packages/dca/dcaTypes.d.ts.map +1 -1
  74. package/dist/packages/farms/api/farmsApi.d.ts +725 -58
  75. package/dist/packages/farms/api/farmsApi.d.ts.map +1 -1
  76. package/dist/packages/farms/api/farmsApi.js +1149 -153
  77. package/dist/packages/farms/api/farmsApiCasting.d.ts +34 -18
  78. package/dist/packages/farms/api/farmsApiCasting.d.ts.map +1 -1
  79. package/dist/packages/farms/api/farmsApiCasting.js +218 -17
  80. package/dist/packages/farms/api/farmsApiCastingTypes.d.ts +117 -21
  81. package/dist/packages/farms/api/farmsApiCastingTypes.d.ts.map +1 -1
  82. package/dist/packages/farms/farms.d.ts +200 -12
  83. package/dist/packages/farms/farms.d.ts.map +1 -1
  84. package/dist/packages/farms/farms.js +204 -50
  85. package/dist/packages/farms/farmsStakedPosition.d.ts +143 -8
  86. package/dist/packages/farms/farmsStakedPosition.d.ts.map +1 -1
  87. package/dist/packages/farms/farmsStakedPosition.js +243 -137
  88. package/dist/packages/farms/farmsStakingPool.d.ts +171 -3
  89. package/dist/packages/farms/farmsStakingPool.d.ts.map +1 -1
  90. package/dist/packages/farms/farmsStakingPool.js +233 -73
  91. package/dist/packages/farms/farmsTypes.d.ts +310 -2
  92. package/dist/packages/farms/farmsTypes.d.ts.map +1 -1
  93. package/dist/packages/farms/farmsTypes.js +47 -0
  94. package/dist/packages/faucet/api/faucetApi.d.ts +9 -17
  95. package/dist/packages/faucet/api/faucetApi.d.ts.map +1 -1
  96. package/dist/packages/faucet/api/faucetApi.js +44 -49
  97. package/dist/packages/faucet/api/faucetApiCasting.d.ts.map +1 -1
  98. package/dist/packages/faucet/api/faucetApiCasting.js +8 -5
  99. package/dist/packages/faucet/api/faucetApiCastingTypes.d.ts +1 -4
  100. package/dist/packages/faucet/api/faucetApiCastingTypes.d.ts.map +1 -1
  101. package/dist/packages/faucet/faucet.d.ts +1 -1
  102. package/dist/packages/faucet/faucet.d.ts.map +1 -1
  103. package/dist/packages/faucet/faucet.js +1 -1
  104. package/dist/packages/faucet/faucetTypes.d.ts +2 -3
  105. package/dist/packages/faucet/faucetTypes.d.ts.map +1 -1
  106. package/dist/packages/limitOrders/api/limitOrdersApi.d.ts +12 -0
  107. package/dist/packages/limitOrders/api/limitOrdersApi.d.ts.map +1 -0
  108. package/dist/packages/limitOrders/api/limitOrdersApi.js +25 -0
  109. package/dist/packages/limitOrders/index.d.ts +2 -0
  110. package/dist/packages/limitOrders/index.d.ts.map +1 -0
  111. package/dist/packages/limitOrders/index.js +17 -0
  112. package/dist/packages/limitOrders/limitOrders.d.ts +143 -0
  113. package/dist/packages/limitOrders/limitOrders.d.ts.map +1 -0
  114. package/dist/packages/limitOrders/limitOrders.js +190 -0
  115. package/dist/packages/limitOrders/limitOrdersTypes.d.ts +211 -0
  116. package/dist/packages/limitOrders/limitOrdersTypes.d.ts.map +1 -0
  117. package/dist/packages/multisig/multisig.d.ts +34 -5
  118. package/dist/packages/multisig/multisig.d.ts.map +1 -1
  119. package/dist/packages/multisig/multisig.js +33 -4
  120. package/dist/packages/multisig/multisigTypes.d.ts +17 -0
  121. package/dist/packages/multisig/multisigTypes.d.ts.map +1 -1
  122. package/dist/packages/nftAmm/nftAmm.d.ts +1 -1
  123. package/dist/packages/nftAmm/nftAmm.d.ts.map +1 -1
  124. package/dist/packages/perpetuals/api/perpetualsApi.d.ts +38 -23
  125. package/dist/packages/perpetuals/api/perpetualsApi.d.ts.map +1 -1
  126. package/dist/packages/perpetuals/api/perpetualsApi.js +740 -299
  127. package/dist/packages/perpetuals/api/perpetualsApiCasting.d.ts +10 -6
  128. package/dist/packages/perpetuals/api/perpetualsApiCasting.d.ts.map +1 -1
  129. package/dist/packages/perpetuals/api/perpetualsApiCasting.js +112 -42
  130. package/dist/packages/perpetuals/perpetuals.d.ts +33 -4
  131. package/dist/packages/perpetuals/perpetuals.d.ts.map +1 -1
  132. package/dist/packages/perpetuals/perpetuals.js +105 -18
  133. package/dist/packages/perpetuals/perpetualsAccount.d.ts +107 -33
  134. package/dist/packages/perpetuals/perpetualsAccount.d.ts.map +1 -1
  135. package/dist/packages/perpetuals/perpetualsAccount.js +569 -68
  136. package/dist/packages/perpetuals/perpetualsCastingTypes.d.ts +104 -25
  137. package/dist/packages/perpetuals/perpetualsCastingTypes.d.ts.map +1 -1
  138. package/dist/packages/perpetuals/perpetualsMarket.d.ts +31 -9
  139. package/dist/packages/perpetuals/perpetualsMarket.d.ts.map +1 -1
  140. package/dist/packages/perpetuals/perpetualsMarket.js +85 -77
  141. package/dist/packages/perpetuals/perpetualsTypes.d.ts +349 -379
  142. package/dist/packages/perpetuals/perpetualsTypes.d.ts.map +1 -1
  143. package/dist/packages/perpetuals/perpetualsTypes.js +43 -113
  144. package/dist/packages/pools/api/poolsApiCasting.d.ts.map +1 -1
  145. package/dist/packages/pools/api/poolsApiCasting.js +0 -1
  146. package/dist/packages/pools/pool.d.ts +333 -106
  147. package/dist/packages/pools/pool.d.ts.map +1 -1
  148. package/dist/packages/pools/pool.js +347 -119
  149. package/dist/packages/pools/pools.d.ts +307 -39
  150. package/dist/packages/pools/pools.d.ts.map +1 -1
  151. package/dist/packages/pools/pools.js +323 -54
  152. package/dist/packages/pools/poolsTypes.d.ts +267 -2
  153. package/dist/packages/pools/poolsTypes.d.ts.map +1 -1
  154. package/dist/packages/referralVault/referralVault.d.ts +38 -1
  155. package/dist/packages/referralVault/referralVault.d.ts.map +1 -1
  156. package/dist/packages/referralVault/referralVault.js +37 -0
  157. package/dist/packages/router/api/routerApi.d.ts +2 -2
  158. package/dist/packages/router/api/routerApi.d.ts.map +1 -1
  159. package/dist/packages/router/api/routerApi.js +19 -11
  160. package/dist/packages/router/router.d.ts +214 -18
  161. package/dist/packages/router/router.d.ts.map +1 -1
  162. package/dist/packages/router/router.js +216 -20
  163. package/dist/packages/router/routerTypes.d.ts +202 -17
  164. package/dist/packages/router/routerTypes.d.ts.map +1 -1
  165. package/dist/packages/staking/staking.d.ts +306 -45
  166. package/dist/packages/staking/staking.d.ts.map +1 -1
  167. package/dist/packages/staking/staking.js +313 -51
  168. package/dist/packages/staking/stakingTypes.d.ts +431 -6
  169. package/dist/packages/staking/stakingTypes.d.ts.map +1 -1
  170. package/dist/packages/staking/stakingTypes.js +19 -0
  171. package/dist/packages/sui/sui.d.ts +40 -1
  172. package/dist/packages/sui/sui.d.ts.map +1 -1
  173. package/dist/packages/sui/sui.js +39 -0
  174. package/dist/packages/suiFrens/stakedSuiFren.d.ts +1 -1
  175. package/dist/packages/suiFrens/stakedSuiFren.d.ts.map +1 -1
  176. package/dist/packages/suiFrens/suiFren.d.ts +1 -1
  177. package/dist/packages/suiFrens/suiFren.d.ts.map +1 -1
  178. package/dist/packages/suiFrens/suiFrens.d.ts +1 -1
  179. package/dist/packages/suiFrens/suiFrens.d.ts.map +1 -1
  180. package/dist/packages/userData/api/userDataApi.d.ts +6 -0
  181. package/dist/packages/userData/api/userDataApi.d.ts.map +1 -0
  182. package/dist/packages/userData/api/userDataApi.js +12 -0
  183. package/dist/packages/userData/index.d.ts +2 -0
  184. package/dist/packages/userData/index.d.ts.map +1 -0
  185. package/dist/packages/userData/index.js +17 -0
  186. package/dist/packages/userData/userData.d.ts +89 -0
  187. package/dist/packages/userData/userData.d.ts.map +1 -0
  188. package/dist/packages/userData/userData.js +119 -0
  189. package/dist/packages/userData/userDataTypes.d.ts +29 -0
  190. package/dist/packages/userData/userDataTypes.d.ts.map +1 -0
  191. package/dist/types.d.ts.map +1 -1
  192. package/dist/types.js +0 -1
  193. package/package.json +1 -1
  194. package/dist/general/historicalData/historicalData.d.ts +0 -15
  195. package/dist/general/historicalData/historicalData.d.ts.map +0 -1
  196. package/dist/general/historicalData/historicalData.js +0 -45
  197. package/dist/general/historicalData/historicalDataTypes.d.ts +0 -10
  198. package/dist/general/historicalData/historicalDataTypes.d.ts.map +0 -1
  199. package/dist/packages/dca/api/dcaApiCasting.d.ts +0 -11
  200. package/dist/packages/dca/api/dcaApiCasting.d.ts.map +0 -1
  201. package/dist/packages/dca/api/dcaApiCasting.js +0 -186
  202. package/dist/packages/dca/api/dcaApiCastingTypes.d.ts +0 -142
  203. package/dist/packages/dca/api/dcaApiCastingTypes.d.ts.map +0 -1
  204. package/dist/packages/oracle/api/oracleApi.d.ts +0 -13
  205. package/dist/packages/oracle/api/oracleApi.d.ts.map +0 -1
  206. package/dist/packages/oracle/api/oracleApi.js +0 -35
  207. package/dist/packages/oracle/oracle.d.ts +0 -15
  208. package/dist/packages/oracle/oracle.d.ts.map +0 -1
  209. package/dist/packages/oracle/oracle.js +0 -46
  210. package/dist/packages/oracle/oracleTypes.d.ts +0 -2
  211. package/dist/packages/oracle/oracleTypes.d.ts.map +0 -1
  212. package/dist/packages/oracle/oracleTypes.js +0 -2
  213. /package/dist/{general/historicalData/historicalDataTypes.js → packages/limitOrders/limitOrdersTypes.js} +0 -0
  214. /package/dist/packages/{dca/api/dcaApiCastingTypes.js → userData/userDataTypes.js} +0 -0
@@ -16,6 +16,7 @@ const coin_1 = require("../../coin");
16
16
  const transactionsApiHelpers_1 = require("../../../general/apiHelpers/transactionsApiHelpers");
17
17
  const eventsApiHelpers_1 = require("../../../general/apiHelpers/eventsApiHelpers");
18
18
  const sui_1 = require("../../sui");
19
+ const utils_1 = require("../../../general/utils");
19
20
  class FaucetApi {
20
21
  // =========================================================================
21
22
  // Constructor
@@ -23,61 +24,39 @@ class FaucetApi {
23
24
  constructor(Provider) {
24
25
  this.Provider = Provider;
25
26
  // =========================================================================
26
- // Transaction Builders
27
+ // Inspections
27
28
  // =========================================================================
28
- this.fetchRequestCustomCoinAmountTx = (inputs) => __awaiter(this, void 0, void 0, function* () {
29
- const { walletAddress, coinType, amount } = inputs;
30
- const tx = new transactions_1.Transaction();
31
- tx.setSender(walletAddress);
32
- this.requestCoinAmountTx({
33
- tx,
34
- coinType,
35
- amount,
36
- });
37
- return tx;
38
- });
39
- this.fetchBuildMintSuiFrenTx = (inputs) => __awaiter(this, void 0, void 0, function* () {
40
- const { walletAddress, mintFee, suiFrenType } = inputs;
41
- const tx = new transactions_1.Transaction();
42
- tx.setSender(walletAddress);
43
- const suiPaymentCoinId = yield this.Provider.Coin().fetchCoinWithAmountTx({
44
- tx,
45
- walletAddress,
46
- coinType: coin_1.Coin.constants.suiCoinType,
47
- coinAmount: mintFee,
48
- });
49
- this.mintSuiFrenTx({ tx, suiPaymentCoinId, suiFrenType });
50
- return tx;
29
+ this.fetchSupportedCoins = () => __awaiter(this, void 0, void 0, function* () {
30
+ const addCoinEvents = yield this.fetchAddCoinEvents({});
31
+ const coins = addCoinEvents.events.map((event) => "0x" + event.coinType);
32
+ return coins;
51
33
  });
52
34
  // =========================================================================
53
- // Transcation Commands
35
+ // Transaction Commands
54
36
  // =========================================================================
55
- this.addCoinTx = (inputs) => {
56
- const { tx, treasuryCapId, treasuryCapType } = inputs;
57
- return tx.moveCall({
58
- target: transactionsApiHelpers_1.TransactionsApiHelpers.createTxTarget(this.addresses.packages.faucet, FaucetApi.constants.moduleNames.faucet, "add_coin"),
59
- typeArguments: [treasuryCapType],
60
- arguments: [
61
- tx.object(this.addresses.objects.faucet),
62
- tx.object(treasuryCapId),
63
- ],
64
- });
65
- };
66
- this.requestCoinAmountTx = (inputs) => {
67
- const { tx, coinType, amount } = inputs;
68
- return tx.moveCall({
69
- target: transactionsApiHelpers_1.TransactionsApiHelpers.createTxTarget(this.addresses.packages.faucet, FaucetApi.constants.moduleNames.faucet, "request_coin_amount"),
70
- typeArguments: [coinType],
71
- arguments: [
72
- tx.object(this.addresses.objects.faucet),
73
- tx.pure.u64(amount),
74
- ],
75
- });
76
- };
37
+ // public addCoinTx = (inputs: {
38
+ // tx: Transaction;
39
+ // treasuryCapId: ObjectId;
40
+ // treasuryCapType: AnyObjectType;
41
+ // }) => {
42
+ // const { tx, treasuryCapId, treasuryCapType } = inputs;
43
+ // return tx.moveCall({
44
+ // target: TransactionsApiHelpers.createTxTarget(
45
+ // this.addresses.packages.faucet,
46
+ // FaucetApi.constants.moduleNames.faucet,
47
+ // "add_coin"
48
+ // ),
49
+ // typeArguments: [treasuryCapType],
50
+ // arguments: [
51
+ // tx.object(this.addresses.objects.faucet),
52
+ // tx.object(treasuryCapId),
53
+ // ],
54
+ // });
55
+ // };
77
56
  this.requestCoinTx = (inputs) => {
78
57
  const { tx, coinType } = inputs;
79
58
  return tx.moveCall({
80
- target: transactionsApiHelpers_1.TransactionsApiHelpers.createTxTarget(this.addresses.packages.faucet, FaucetApi.constants.moduleNames.faucet, "request_coin"),
59
+ target: transactionsApiHelpers_1.TransactionsApiHelpers.createTxTarget(this.addresses.packages.faucet, FaucetApi.constants.moduleNames.faucet, "request_default_amount"),
81
60
  typeArguments: [coinType],
82
61
  arguments: [tx.object(this.addresses.objects.faucet)],
83
62
  });
@@ -97,6 +76,23 @@ class FaucetApi {
97
76
  });
98
77
  };
99
78
  // =========================================================================
79
+ // Transaction Builders
80
+ // =========================================================================
81
+ this.buildRequestCoinTx = utils_1.Helpers.transactions.createBuildTxFunc(this.requestCoinTx);
82
+ this.fetchBuildMintSuiFrenTx = (inputs) => __awaiter(this, void 0, void 0, function* () {
83
+ const { walletAddress, mintFee, suiFrenType } = inputs;
84
+ const tx = new transactions_1.Transaction();
85
+ tx.setSender(walletAddress);
86
+ const suiPaymentCoinId = yield this.Provider.Coin().fetchCoinWithAmountTx({
87
+ tx,
88
+ walletAddress,
89
+ coinType: coin_1.Coin.constants.suiCoinType,
90
+ coinAmount: mintFee,
91
+ });
92
+ this.mintSuiFrenTx({ tx, suiPaymentCoinId, suiFrenType });
93
+ return tx;
94
+ });
95
+ // =========================================================================
100
96
  // Events
101
97
  // =========================================================================
102
98
  // TODO: add to indexer
@@ -140,7 +136,6 @@ exports.FaucetApi = FaucetApi;
140
136
  FaucetApi.constants = {
141
137
  moduleNames: {
142
138
  faucet: "faucet",
143
- faucetRegistry: "faucet_registry",
144
139
  suiFrensGenesisWrapper: "genesis_wrapper",
145
140
  },
146
141
  eventNames: {
@@ -1 +1 @@
1
- {"version":3,"file":"faucetApiCasting.d.ts","sourceRoot":"","sources":["../../../../src/packages/faucet/api/faucetApiCasting.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,yBAAyB,EACzB,0BAA0B,EAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEzE,qBAAa,gBAAgB;IAK5B,OAAc,8BAA8B,gDAEzC,mBAAmB,CAUpB;IAEF,OAAc,6BAA6B,+CAExC,kBAAkB,CASnB;CACF"}
1
+ {"version":3,"file":"faucetApiCasting.d.ts","sourceRoot":"","sources":["../../../../src/packages/faucet/api/faucetApiCasting.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,yBAAyB,EACzB,0BAA0B,EAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAIzE,qBAAa,gBAAgB;IAK5B,OAAc,8BAA8B,gDAEzC,mBAAmB,CAapB;IAEF,OAAc,6BAA6B,+CAExC,kBAAkB,CAWnB;CACF"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FaucetApiCasting = void 0;
4
+ const utils_1 = require("../../../general/utils");
5
+ const coin_1 = require("../../coin");
4
6
  class FaucetApiCasting {
5
7
  }
6
8
  exports.FaucetApiCasting = FaucetApiCasting;
@@ -9,10 +11,11 @@ exports.FaucetApiCasting = FaucetApiCasting;
9
11
  // =========================================================================
10
12
  FaucetApiCasting.faucetMintCoinEventFromOnChain = (eventOnChain) => {
11
13
  const fields = eventOnChain.parsedJson;
14
+ const coinType = utils_1.Helpers.addLeadingZeroesToType(new coin_1.Coin(eventOnChain.type).innerCoinType);
12
15
  return {
13
- minter: fields.user,
14
- coinMinted: fields.type,
15
- balanceMinted: BigInt(fields.amount),
16
+ coinType,
17
+ minter: utils_1.Helpers.addLeadingZeroesToType(fields.user),
18
+ amount: BigInt(fields.amount),
16
19
  timestamp: eventOnChain.timestampMs,
17
20
  txnDigest: eventOnChain.id.txDigest,
18
21
  type: eventOnChain.type,
@@ -20,9 +23,9 @@ FaucetApiCasting.faucetMintCoinEventFromOnChain = (eventOnChain) => {
20
23
  };
21
24
  FaucetApiCasting.faucetAddCoinEventFromOnChain = (eventOnChain) => {
22
25
  const fields = eventOnChain.parsedJson;
26
+ const coinType = utils_1.Helpers.addLeadingZeroesToType(new coin_1.Coin(eventOnChain.type).innerCoinType);
23
27
  return {
24
- coinSymbol: fields.symbol,
25
- coinType: fields.type,
28
+ coinType,
26
29
  timestamp: eventOnChain.timestampMs,
27
30
  txnDigest: eventOnChain.id.txDigest,
28
31
  type: eventOnChain.type,
@@ -1,13 +1,10 @@
1
1
  import { BigIntAsString, SuiAddress } from "../../../general/types/generalTypes";
2
2
  import { EventOnChain } from "../../../general/types/castingTypes";
3
- import { CoinType } from "../../coin/coinTypes";
4
3
  export type FaucetMintCoinEventOnChain = EventOnChain<{
5
4
  amount: BigIntAsString;
6
- type: CoinType;
7
5
  user: SuiAddress;
8
6
  }>;
9
7
  export type FaucetAddCoinEventOnChain = EventOnChain<{
10
- symbol: string;
11
- type: CoinType;
8
+ default_mint_amount: BigIntAsString;
12
9
  }>;
13
10
  //# sourceMappingURL=faucetApiCastingTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"faucetApiCastingTypes.d.ts","sourceRoot":"","sources":["../../../../src/packages/faucet/api/faucetApiCastingTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,cAAc,EACd,UAAU,EACV,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMhD,MAAM,MAAM,0BAA0B,GAAG,YAAY,CAAC;IACrD,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,UAAU,CAAC;CACjB,CAAC,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;CACf,CAAC,CAAC"}
1
+ {"version":3,"file":"faucetApiCastingTypes.d.ts","sourceRoot":"","sources":["../../../../src/packages/faucet/api/faucetApiCastingTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,cAAc,EACd,UAAU,EACV,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAOnE,MAAM,MAAM,0BAA0B,GAAG,YAAY,CAAC;IACrD,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,UAAU,CAAC;CACjB,CAAC,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC;IACpD,mBAAmB,EAAE,cAAc,CAAC;CACpC,CAAC,CAAC"}
@@ -3,7 +3,7 @@ import { Caller } from "../../general/utils/caller";
3
3
  import { AftermathApi } from "../../general/providers";
4
4
  import { Transaction } from "@mysten/sui/transactions";
5
5
  export declare class Faucet extends Caller {
6
- private readonly Provider?;
6
+ readonly Provider?: AftermathApi | undefined;
7
7
  static readonly constants: {
8
8
  defaultRequestAmountUsd: number;
9
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"faucet.d.ts","sourceRoot":"","sources":["../../../src/packages/faucet/faucet.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,EACZ,QAAQ,EAGR,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,qBAAa,MAAO,SAAQ,MAAM;IAehC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAV3B,gBAAuB,SAAS;;MAE9B;gBAOD,MAAM,CAAC,EAAE,YAAY,EACJ,QAAQ,CAAC,0BAAc;IAS5B,iBAAiB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAcxC,yBAAyB,CACrC,MAAM,EAAE,oBAAoB,GAC1B,OAAO,CAAC,WAAW,CAAC;IAIV,yBAAyB,CAAC,MAAM,EAAE,wBAAwB;IAQvE,OAAO,CAAC,WAAW,CAIjB;CACF"}
1
+ {"version":3,"file":"faucet.d.ts","sourceRoot":"","sources":["../../../src/packages/faucet/faucet.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,EACZ,QAAQ,EAGR,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,qBAAa,MAAO,SAAQ,MAAM;aAehB,QAAQ,CAAC;IAV1B,gBAAuB,SAAS;;MAE9B;gBAOD,MAAM,CAAC,EAAE,YAAY,EACL,QAAQ,CAAC,0BAAc;IAS3B,iBAAiB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAcxC,yBAAyB,CAAC,MAAM,EAAE,oBAAoB;IAItD,yBAAyB,CAAC,MAAM,EAAE,wBAAwB;IAQvE,OAAO,CAAC,WAAW,CAIjB;CACF"}
@@ -46,7 +46,7 @@ class Faucet extends caller_1.Caller {
46
46
  // =========================================================================
47
47
  getRequestCoinTransaction(inputs) {
48
48
  return __awaiter(this, void 0, void 0, function* () {
49
- return this.fetchApiTransaction("request", inputs);
49
+ return this.useProvider().buildRequestCoinTx(inputs);
50
50
  });
51
51
  }
52
52
  getMintSuiFrenTransaction(inputs) {
@@ -2,11 +2,10 @@ import { AnyObjectType, Balance, Event, SuiAddress } from "../../general/types/g
2
2
  import { CoinType } from "../coin/coinTypes";
3
3
  export interface FaucetMintCoinEvent extends Event {
4
4
  minter: SuiAddress;
5
- coinMinted: CoinType;
6
- balanceMinted: BigInt;
5
+ coinType: CoinType;
6
+ amount: Balance;
7
7
  }
8
8
  export interface FaucetAddCoinEvent extends Event {
9
- coinSymbol: string;
10
9
  coinType: CoinType;
11
10
  }
12
11
  export interface ApiFaucetRequestBody {
@@ -1 +1 @@
1
- {"version":3,"file":"faucetTypes.d.ts","sourceRoot":"","sources":["../../../src/packages/faucet/faucetTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EACb,OAAO,EACP,KAAK,EACL,UAAU,EACV,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAM7C,MAAM,WAAW,mBAAoB,SAAQ,KAAK;IACjD,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,QAAQ,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAmB,SAAQ,KAAK;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;CACnB;AAMD,MAAM,WAAW,oBAAoB;IACpC,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,UAAU,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,aAAa,CAAC;IAC3B,aAAa,EAAE,UAAU,CAAC;CAC1B"}
1
+ {"version":3,"file":"faucetTypes.d.ts","sourceRoot":"","sources":["../../../src/packages/faucet/faucetTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EACb,OAAO,EACP,KAAK,EACL,UAAU,EACV,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAM7C,MAAM,WAAW,mBAAoB,SAAQ,KAAK;IACjD,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,kBAAmB,SAAQ,KAAK;IAChD,QAAQ,EAAE,QAAQ,CAAC;CACnB;AAMD,MAAM,WAAW,oBAAoB;IACpC,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,UAAU,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,aAAa,CAAC;IAC3B,aAAa,EAAE,UAAU,CAAC;CAC1B"}
@@ -0,0 +1,12 @@
1
+ import { AftermathApi } from "../../../general/providers";
2
+ import { AnyObjectType, LimitAddresses } from "../../../types";
3
+ export declare class LimitOrdersApi {
4
+ private readonly Provider;
5
+ readonly addresses: LimitAddresses;
6
+ readonly eventTypes: {
7
+ createdOrder: AnyObjectType;
8
+ };
9
+ constructor(Provider: AftermathApi);
10
+ private createdOrderEventType;
11
+ }
12
+ //# sourceMappingURL=limitOrdersApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limitOrdersApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/limitOrders/api/limitOrdersApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAG/D,qBAAa,cAAc;IAcd,OAAO,CAAC,QAAQ,CAAC,QAAQ;IATrC,SAAgB,SAAS,EAAE,cAAc,CAAC;IAC1C,SAAgB,UAAU,EAAE;QAC3B,YAAY,EAAE,aAAa,CAAC;KAC5B,CAAC;gBAM2B,QAAQ,EAAE,YAAY;IAkBnD,OAAO,CAAC,qBAAqB,CAK1B;CACH"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LimitOrdersApi = void 0;
4
+ const eventsApiHelpers_1 = require("../../../general/apiHelpers/eventsApiHelpers");
5
+ class LimitOrdersApi {
6
+ // =========================================================================
7
+ // Constructor
8
+ // =========================================================================
9
+ constructor(Provider) {
10
+ this.Provider = Provider;
11
+ // =========================================================================
12
+ // Events
13
+ // =========================================================================
14
+ this.createdOrderEventType = () => eventsApiHelpers_1.EventsApiHelpers.createEventType(this.addresses.packages.events, "events", "CreatedOrderEventV1");
15
+ const addresses = this.Provider.addresses.limitOrders;
16
+ if (!addresses) {
17
+ throw new Error("not all required addresses have been set in provider");
18
+ }
19
+ this.addresses = addresses;
20
+ this.eventTypes = {
21
+ createdOrder: this.createdOrderEventType(),
22
+ };
23
+ }
24
+ }
25
+ exports.LimitOrdersApi = LimitOrdersApi;
@@ -0,0 +1,2 @@
1
+ export * from "./limitOrders";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/packages/limitOrders/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./limitOrders"), exports);
@@ -0,0 +1,143 @@
1
+ import { CallerConfig, ObjectId, SuiAddress } from "../../types";
2
+ import { Caller } from "../../general/utils/caller";
3
+ import { ApiLimitOrdersCreateOrderTransactionBody, ApiLimitOrdersCancelOrderTransactionBody, LimitOrderObject, ApiLimitOrdersActiveOrdersOwnedBody } from "./limitOrdersTypes";
4
+ import { Transaction } from "@mysten/sui/transactions";
5
+ /**
6
+ * The `LimitOrders` class manages creation, cancellation, and querying of
7
+ * limit orders on the Aftermath platform. Limit orders allow you to buy or
8
+ * sell at a specified price, giving more control over your trades compared
9
+ * to market execution.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const afSdk = new Aftermath("MAINNET");
14
+ * await afSdk.init(); // initialize provider
15
+ *
16
+ * const limitOrders = afSdk.LimitOrders();
17
+ * ```
18
+ */
19
+ export declare class LimitOrders extends Caller {
20
+ /**
21
+ * Static configuration constants, including a default gas amount for
22
+ * limit order transactions (50 SUI).
23
+ */
24
+ static readonly constants: {
25
+ /**
26
+ * The default gas budget for limit orders. This may be subject to change.
27
+ */
28
+ gasAmount: bigint;
29
+ };
30
+ /**
31
+ * Creates a new `LimitOrders` instance for interacting with limit order functionality
32
+ * on Aftermath.
33
+ *
34
+ * @param config - Optional configuration, including network and access token.
35
+ */
36
+ constructor(config?: CallerConfig);
37
+ /**
38
+ * Fetches the list of **active** limit orders for a given user. The user must
39
+ * provide a signature for identification.
40
+ *
41
+ * @param inputs - Contains the `walletAddress`, as well as `bytes` and `signature` if needed for auth.
42
+ * @returns A promise resolving to an array of `LimitOrderObject`, representing the active orders.
43
+ *
44
+ * @example
45
+ * ```typescript
46
+ * const activeOrders = await limitOrders.getActiveLimitOrders({
47
+ * walletAddress: "0x<address>",
48
+ * bytes: "0x<signed_bytes>",
49
+ * signature: "0x<signature>"
50
+ * });
51
+ * ```
52
+ */
53
+ getActiveLimitOrders(inputs: ApiLimitOrdersActiveOrdersOwnedBody): Promise<LimitOrderObject[]>;
54
+ /**
55
+ * Fetches the list of **past** limit orders for a given user (e.g., completed, canceled, or expired).
56
+ *
57
+ * @param inputs - An object containing the `walletAddress`.
58
+ * @returns A promise resolving to an array of `LimitOrderObject` representing past orders.
59
+ *
60
+ * @example
61
+ * ```typescript
62
+ * const pastOrders = await limitOrders.getPastLimitOrders({
63
+ * walletAddress: "0x<address>",
64
+ * });
65
+ * ```
66
+ */
67
+ getPastLimitOrders(inputs: {
68
+ walletAddress: SuiAddress;
69
+ }): Promise<LimitOrderObject[]>;
70
+ /**
71
+ * Constructs a limit order creation transaction on the Aftermath API, returning a `Transaction`
72
+ * object that can be signed and submitted to the network.
73
+ *
74
+ * @param inputs - The limit order details, including coin types, amounts, expiry, etc.
75
+ * @returns A promise resolving to a `Transaction` that can be locally signed and executed.
76
+ *
77
+ * @example
78
+ * ```typescript
79
+ * const tx = await limitOrders.getCreateLimitOrderTx({
80
+ * walletAddress: "0x<address>",
81
+ * allocateCoinType: "0x<coin>",
82
+ * allocateCoinAmount: BigInt(1000),
83
+ * buyCoinType: "0x<other_coin>",
84
+ * expiryDurationMs: 3600000, // 1 hour
85
+ * outputToInputExchangeRate: 0.5,
86
+ * });
87
+ * // sign and execute the transaction
88
+ * ```
89
+ */
90
+ getCreateLimitOrderTx(inputs: ApiLimitOrdersCreateOrderTransactionBody): Promise<Transaction>;
91
+ /**
92
+ * Cancels an existing limit order by sending a request to the Aftermath API
93
+ * with the user's signed cancellation message.
94
+ *
95
+ * @param inputs - Contains the user's `walletAddress`, plus `bytes` and `signature`.
96
+ * @returns A boolean indicating whether the cancellation was successful.
97
+ *
98
+ * @example
99
+ * ```typescript
100
+ * const success = await limitOrders.cancelLimitOrder({
101
+ * walletAddress: "0x<address>",
102
+ * bytes: "0x<signed_bytes>",
103
+ * signature: "0x<signature>",
104
+ * });
105
+ * ```
106
+ */
107
+ cancelLimitOrder(inputs: ApiLimitOrdersCancelOrderTransactionBody): Promise<boolean>;
108
+ /**
109
+ * Generates the JSON message needed to cancel one or more limit orders. The user
110
+ * signs this message (converted to bytes), and the resulting signature is passed
111
+ * to `cancelLimitOrder`.
112
+ *
113
+ * @param inputs - Object with `orderIds`, an array of order object IDs to cancel.
114
+ * @returns A JSON structure with the action and order IDs to be canceled.
115
+ *
116
+ * @example
117
+ * ```typescript
118
+ * const msg = limitOrders.cancelLimitOrdersMessageToSign({
119
+ * orderIds: ["0x<order1>", "0x<order2>"]
120
+ * });
121
+ * // user signs this JSON
122
+ * ```
123
+ */
124
+ cancelLimitOrdersMessageToSign(inputs: {
125
+ orderIds: ObjectId[];
126
+ }): {
127
+ action: string;
128
+ order_object_ids: string[];
129
+ };
130
+ /**
131
+ * Retrieves the minimum allowable order size (in USD) for limit orders on Aftermath.
132
+ *
133
+ * @returns A promise resolving to a `number` (USD value) or `undefined` if not configured.
134
+ *
135
+ * @example
136
+ * ```typescript
137
+ * const minSize = await limitOrders.getMinOrderSizeUsd();
138
+ * console.log("Minimum order size in USD:", minSize);
139
+ * ```
140
+ */
141
+ getMinOrderSizeUsd(): Promise<number | undefined>;
142
+ }
143
+ //# sourceMappingURL=limitOrders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limitOrders.d.ts","sourceRoot":"","sources":["../../../src/packages/limitOrders/limitOrders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAY,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAEN,wCAAwC,EACxC,wCAAwC,EACxC,gBAAgB,EAChB,mCAAmC,EACnC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;;;;;;;;;;;;GAaG;AACH,qBAAa,WAAY,SAAQ,MAAM;IAKtC;;;OAGG;IACH,gBAAuB,SAAS;QAC/B;;WAEG;;MAEF;IAMF;;;;;OAKG;gBACS,MAAM,CAAC,EAAE,YAAY;IAQjC;;;;;;;;;;;;;;;OAeG;IACU,oBAAoB,CAChC,MAAM,EAAE,mCAAmC;IAQ5C;;;;;;;;;;;;OAYG;IACU,kBAAkB,CAAC,MAAM,EAAE;QAAE,aAAa,EAAE,UAAU,CAAA;KAAE;IAWrE;;;;;;;;;;;;;;;;;;;OAmBG;IACU,qBAAqB,CACjC,MAAM,EAAE,wCAAwC,GAC9C,OAAO,CAAC,WAAW,CAAC;IAOvB;;;;;;;;;;;;;;;OAeG;IACU,gBAAgB,CAC5B,MAAM,EAAE,wCAAwC,GAC9C,OAAO,CAAC,OAAO,CAAC;IAWnB;;;;;;;;;;;;;;;OAeG;IACI,8BAA8B,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;KAAE,GAAG;QACxE,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,MAAM,EAAE,CAAC;KAC3B;IAWD;;;;;;;;;;OAUG;IACU,kBAAkB;CAG/B"}
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.LimitOrders = void 0;
13
+ const caller_1 = require("../../general/utils/caller");
14
+ /**
15
+ * The `LimitOrders` class manages creation, cancellation, and querying of
16
+ * limit orders on the Aftermath platform. Limit orders allow you to buy or
17
+ * sell at a specified price, giving more control over your trades compared
18
+ * to market execution.
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * const afSdk = new Aftermath("MAINNET");
23
+ * await afSdk.init(); // initialize provider
24
+ *
25
+ * const limitOrders = afSdk.LimitOrders();
26
+ * ```
27
+ */
28
+ class LimitOrders extends caller_1.Caller {
29
+ // =========================================================================
30
+ // Constructor
31
+ // =========================================================================
32
+ /**
33
+ * Creates a new `LimitOrders` instance for interacting with limit order functionality
34
+ * on Aftermath.
35
+ *
36
+ * @param config - Optional configuration, including network and access token.
37
+ */
38
+ constructor(config) {
39
+ super(config, "limit-orders");
40
+ }
41
+ // =========================================================================
42
+ // Class Objects
43
+ // =========================================================================
44
+ /**
45
+ * Fetches the list of **active** limit orders for a given user. The user must
46
+ * provide a signature for identification.
47
+ *
48
+ * @param inputs - Contains the `walletAddress`, as well as `bytes` and `signature` if needed for auth.
49
+ * @returns A promise resolving to an array of `LimitOrderObject`, representing the active orders.
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * const activeOrders = await limitOrders.getActiveLimitOrders({
54
+ * walletAddress: "0x<address>",
55
+ * bytes: "0x<signed_bytes>",
56
+ * signature: "0x<signature>"
57
+ * });
58
+ * ```
59
+ */
60
+ getActiveLimitOrders(inputs) {
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ return this.fetchApi("active", inputs);
63
+ });
64
+ }
65
+ /**
66
+ * Fetches the list of **past** limit orders for a given user (e.g., completed, canceled, or expired).
67
+ *
68
+ * @param inputs - An object containing the `walletAddress`.
69
+ * @returns A promise resolving to an array of `LimitOrderObject` representing past orders.
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * const pastOrders = await limitOrders.getPastLimitOrders({
74
+ * walletAddress: "0x<address>",
75
+ * });
76
+ * ```
77
+ */
78
+ getPastLimitOrders(inputs) {
79
+ return __awaiter(this, void 0, void 0, function* () {
80
+ return this.fetchApi("past", inputs);
81
+ });
82
+ }
83
+ // =========================================================================
84
+ // Transactions
85
+ // =========================================================================
86
+ /**
87
+ * Constructs a limit order creation transaction on the Aftermath API, returning a `Transaction`
88
+ * object that can be signed and submitted to the network.
89
+ *
90
+ * @param inputs - The limit order details, including coin types, amounts, expiry, etc.
91
+ * @returns A promise resolving to a `Transaction` that can be locally signed and executed.
92
+ *
93
+ * @example
94
+ * ```typescript
95
+ * const tx = await limitOrders.getCreateLimitOrderTx({
96
+ * walletAddress: "0x<address>",
97
+ * allocateCoinType: "0x<coin>",
98
+ * allocateCoinAmount: BigInt(1000),
99
+ * buyCoinType: "0x<other_coin>",
100
+ * expiryDurationMs: 3600000, // 1 hour
101
+ * outputToInputExchangeRate: 0.5,
102
+ * });
103
+ * // sign and execute the transaction
104
+ * ```
105
+ */
106
+ getCreateLimitOrderTx(inputs) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ return this.fetchApiTransaction("transactions/create-order", inputs);
109
+ });
110
+ }
111
+ /**
112
+ * Cancels an existing limit order by sending a request to the Aftermath API
113
+ * with the user's signed cancellation message.
114
+ *
115
+ * @param inputs - Contains the user's `walletAddress`, plus `bytes` and `signature`.
116
+ * @returns A boolean indicating whether the cancellation was successful.
117
+ *
118
+ * @example
119
+ * ```typescript
120
+ * const success = await limitOrders.cancelLimitOrder({
121
+ * walletAddress: "0x<address>",
122
+ * bytes: "0x<signed_bytes>",
123
+ * signature: "0x<signature>",
124
+ * });
125
+ * ```
126
+ */
127
+ cancelLimitOrder(inputs) {
128
+ return __awaiter(this, void 0, void 0, function* () {
129
+ return this.fetchApi(`cancel`, inputs);
130
+ });
131
+ }
132
+ // =========================================================================
133
+ // Interactions
134
+ // =========================================================================
135
+ /**
136
+ * Generates the JSON message needed to cancel one or more limit orders. The user
137
+ * signs this message (converted to bytes), and the resulting signature is passed
138
+ * to `cancelLimitOrder`.
139
+ *
140
+ * @param inputs - Object with `orderIds`, an array of order object IDs to cancel.
141
+ * @returns A JSON structure with the action and order IDs to be canceled.
142
+ *
143
+ * @example
144
+ * ```typescript
145
+ * const msg = limitOrders.cancelLimitOrdersMessageToSign({
146
+ * orderIds: ["0x<order1>", "0x<order2>"]
147
+ * });
148
+ * // user signs this JSON
149
+ * ```
150
+ */
151
+ cancelLimitOrdersMessageToSign(inputs) {
152
+ return {
153
+ action: "CANCEL_LIMIT_ORDERS",
154
+ order_object_ids: inputs.orderIds,
155
+ };
156
+ }
157
+ // =========================================================================
158
+ // Configuration
159
+ // =========================================================================
160
+ /**
161
+ * Retrieves the minimum allowable order size (in USD) for limit orders on Aftermath.
162
+ *
163
+ * @returns A promise resolving to a `number` (USD value) or `undefined` if not configured.
164
+ *
165
+ * @example
166
+ * ```typescript
167
+ * const minSize = await limitOrders.getMinOrderSizeUsd();
168
+ * console.log("Minimum order size in USD:", minSize);
169
+ * ```
170
+ */
171
+ getMinOrderSizeUsd() {
172
+ return __awaiter(this, void 0, void 0, function* () {
173
+ return this.fetchApi("min-order-size-usd", {});
174
+ });
175
+ }
176
+ }
177
+ exports.LimitOrders = LimitOrders;
178
+ // =========================================================================
179
+ // Constants
180
+ // =========================================================================
181
+ /**
182
+ * Static configuration constants, including a default gas amount for
183
+ * limit order transactions (50 SUI).
184
+ */
185
+ LimitOrders.constants = {
186
+ /**
187
+ * The default gas budget for limit orders. This may be subject to change.
188
+ */
189
+ gasAmount: BigInt(50000000),
190
+ };