aftermath-ts-sdk 1.0.2-staking.13 → 1.0.2-staking.15

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 (44) hide show
  1. package/dist/general/dynamicGas/dynamicGasApi.d.ts.map +1 -1
  2. package/dist/general/dynamicGas/dynamicGasApi.js +1 -6
  3. package/dist/general/dynamicGas/dynamicGasTypes.d.ts +10 -1
  4. package/dist/general/dynamicGas/dynamicGasTypes.d.ts.map +1 -1
  5. package/dist/general/types/configTypes.d.ts +10 -0
  6. package/dist/general/types/configTypes.d.ts.map +1 -1
  7. package/dist/packages/router/api/routerApi.d.ts +24 -2
  8. package/dist/packages/router/api/routerApi.d.ts.map +1 -1
  9. package/dist/packages/router/api/routerApi.js +74 -18
  10. package/dist/packages/router/api/routerApiHelpers.d.ts +15 -2
  11. package/dist/packages/router/api/routerApiHelpers.d.ts.map +1 -1
  12. package/dist/packages/router/api/routerApiHelpers.js +7 -0
  13. package/dist/packages/router/api/routerSynchronousApiHelpers.d.ts +4 -1
  14. package/dist/packages/router/api/routerSynchronousApiHelpers.d.ts.map +1 -1
  15. package/dist/packages/router/api/routerSynchronousApiHelpers.js +21 -12
  16. package/dist/packages/router/router.d.ts +1 -1
  17. package/dist/packages/router/routerTypes.d.ts +14 -4
  18. package/dist/packages/router/routerTypes.d.ts.map +1 -1
  19. package/dist/packages/router/routerTypes.js +1 -0
  20. package/dist/packages/router/utils/synchronous/interfaces/routerPoolInterface.d.ts.map +1 -1
  21. package/dist/packages/router/utils/synchronous/interfaces/routerPoolInterface.js +6 -3
  22. package/dist/packages/router/utils/synchronous/routerGraph.d.ts +7 -0
  23. package/dist/packages/router/utils/synchronous/routerGraph.d.ts.map +1 -1
  24. package/dist/packages/router/utils/synchronous/routerGraph.js +4 -16
  25. package/dist/packages/router/utils/synchronous/routerPools/afSuiRouterPool.d.ts +60 -0
  26. package/dist/packages/router/utils/synchronous/routerPools/afSuiRouterPool.d.ts.map +1 -0
  27. package/dist/packages/router/utils/synchronous/routerPools/afSuiRouterPool.js +116 -0
  28. package/dist/packages/router/utils/synchronous/routerPools/baySwapRouterPool.d.ts.map +1 -1
  29. package/dist/packages/router/utils/synchronous/routerPools/baySwapRouterPool.js +2 -1
  30. package/dist/packages/router/utils/synchronous/routerPools/blueMoveRouterPool.d.ts.map +1 -1
  31. package/dist/packages/router/utils/synchronous/routerPools/blueMoveRouterPool.js +2 -1
  32. package/dist/packages/router/utils/synchronous/routerPools/interestRouterPool.d.ts.map +1 -1
  33. package/dist/packages/router/utils/synchronous/routerPools/interestRouterPool.js +2 -1
  34. package/dist/packages/router/utils/synchronous/routerPools/kriyaRouterPool.d.ts.map +1 -1
  35. package/dist/packages/router/utils/synchronous/routerPools/kriyaRouterPool.js +2 -1
  36. package/dist/packages/router/utils/synchronous/routerPools/suiswapRouterPool.d.ts.map +1 -1
  37. package/dist/packages/router/utils/synchronous/routerPools/suiswapRouterPool.js +2 -1
  38. package/dist/packages/staking/api/stakingApi.d.ts +43 -4
  39. package/dist/packages/staking/api/stakingApi.d.ts.map +1 -1
  40. package/dist/packages/staking/api/stakingApi.js +100 -33
  41. package/dist/packages/staking/stakingTypes.d.ts +7 -0
  42. package/dist/packages/staking/stakingTypes.d.ts.map +1 -1
  43. package/dist/packages/staking/stakingTypes.js +8 -1
  44. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dynamicGasApi.d.ts","sourceRoot":"","sources":["../../../src/general/dynamicGas/dynamicGasApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,qBAAqB,EAAY,UAAU,EAAE,MAAM,UAAU,CAAC;AAGvE,qBAAa,aAAa;IAKb,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,YAAY;IAQ5C,uBAAuB,WAAkB;QAC/C,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,UAAU,CAAC;QAC1B,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAG,QAAQ,qBAAqB,CAAC,CA2FhC;CACF"}
1
+ {"version":3,"file":"dynamicGasApi.d.ts","sourceRoot":"","sources":["../../../src/general/dynamicGas/dynamicGasApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EACN,qBAAqB,EAGrB,UAAU,EAEV,MAAM,UAAU,CAAC;AAGlB,qBAAa,aAAa;IAKb,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,YAAY;IAQ5C,uBAAuB,WAAkB;QAC/C,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,UAAU,CAAC;QAC1B,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAG,QAAQ,qBAAqB,CAAC,CAyFhC;CACF"}
@@ -53,18 +53,13 @@ class DynamicGasApi {
53
53
  : gasCoinArg.index;
54
54
  return { [gasCoinArg.kind]: gasCoinVal };
55
55
  }))();
56
- // TODO: use this type
57
- // type GasCoin =
58
- // | { Coin: ObjectId }
59
- // | { Input: number }
60
- // | { Result: number }
61
- // | { NestedResult: [number, number] };
62
56
  const txBytes = yield tx.build({
63
57
  client: this.Provider.provider,
64
58
  onlyTransactionKind: true,
65
59
  });
66
60
  const b64TxBytes = Buffer.from(txBytes).toString("base64");
67
61
  const body = {
62
+ // TODO: make it so `as` doesn't have to be used here!
68
63
  gas_coin: gasCoin,
69
64
  gas_asset: gasCoinType,
70
65
  transaction_kind: b64TxBytes,
@@ -1,6 +1,15 @@
1
1
  import { SerializedSignature } from "@mysten/sui.js/cryptography";
2
2
  import { CoinType } from "../../types";
3
- import { SerializedTransaction, SuiAddress } from "../types";
3
+ import { ObjectId, SerializedTransaction, SuiAddress } from "../types";
4
+ export type DynamicGasCoinData = {
5
+ Coin: ObjectId;
6
+ } | {
7
+ Input: number;
8
+ } | {
9
+ Result: number;
10
+ } | {
11
+ NestedResult: [number, number];
12
+ };
4
13
  export interface ApiDynamicGasBody {
5
14
  serializedTx: SerializedTransaction;
6
15
  walletAddress: SuiAddress;
@@ -1 +1 @@
1
- {"version":3,"file":"dynamicGasTypes.d.ts","sourceRoot":"","sources":["../../../src/general/dynamicGas/dynamicGasTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAM7D,MAAM,WAAW,iBAAiB;IACjC,YAAY,EAAE,qBAAqB,CAAC;IACpC,aAAa,EAAE,UAAU,CAAC;IAC1B,WAAW,EAAE,QAAQ,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACrC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,kBAAkB,EAAE,mBAAmB,CAAC;CACxC"}
1
+ {"version":3,"file":"dynamicGasTypes.d.ts","sourceRoot":"","sources":["../../../src/general/dynamicGas/dynamicGasTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAMvE,MAAM,MAAM,kBAAkB,GAC3B;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GACjB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC;AAMtC,MAAM,WAAW,iBAAiB;IACjC,YAAY,EAAE,qBAAqB,CAAC;IACpC,aAAa,EAAE,UAAU,CAAC;IAC1B,WAAW,EAAE,QAAQ,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACrC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,kBAAkB,EAAE,mBAAmB,CAAC;CACxC"}
@@ -99,6 +99,7 @@ export interface RequiredRouterAddresses {
99
99
  }
100
100
  export interface OptionalRouterAddresses {
101
101
  aftermath: AftermathRouterWrapperAddresses;
102
+ afSui: AfSuiRouterWrapperAddresses;
102
103
  deepBook: DeepBookAddresses;
103
104
  cetus: CetusAddresses;
104
105
  turbos: TurbosAddresses;
@@ -117,6 +118,15 @@ export interface AftermathRouterWrapperAddresses {
117
118
  wrapperApp: ObjectId;
118
119
  };
119
120
  }
121
+ export interface AfSuiRouterWrapperAddresses {
122
+ packages: {
123
+ wrapper: SuiAddress;
124
+ };
125
+ objects: {
126
+ wrapperApp: ObjectId;
127
+ aftermathValidator: ObjectId;
128
+ };
129
+ }
120
130
  export interface DeepBookAddresses {
121
131
  packages: {
122
132
  clob: SuiAddress;
@@ -1 +1 @@
1
- {"version":3,"file":"configTypes.d.ts","sourceRoot":"","sources":["../../../src/general/types/configTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configTypes.d.ts","sourceRoot":"","sources":["../../../src/general/types/configTypes.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { AftermathApi } from "../../../general/providers/aftermathApi";
2
- import { Balance, CoinType, RouterExternalFee, RouterCompleteTradeRoute, Slippage, SuiNetwork, Url, RouterSerializableCompleteGraph, RouterProtocolName, UserEventsInputs, RouterAsyncSerializablePool, SynchronousProtocolsToPoolObjectIds, RouterSynchronousOptions, PartialRouterOptions, SuiAddress } from "../../../types";
3
- import { TransactionBlock } from "@mysten/sui.js/transactions";
2
+ import { Balance, CoinType, RouterExternalFee, RouterCompleteTradeRoute, Slippage, SuiNetwork, Url, RouterSerializableCompleteGraph, RouterProtocolName, UserEventsInputs, RouterAsyncSerializablePool, SynchronousProtocolsToPoolObjectIds, RouterSynchronousOptions, PartialRouterOptions, SuiAddress, TxBytes, ApiRouterDynamicGasBody } from "../../../types";
3
+ import { TransactionArgument, TransactionBlock } from "@mysten/sui.js/transactions";
4
4
  import { DeepBookApi } from "../../external/deepBook/deepBookApi";
5
5
  import { PoolsApi } from "../../pools/api/poolsApi";
6
6
  import { CetusApi } from "../../external/cetus/cetusApi";
@@ -50,12 +50,34 @@ export declare class RouterApi {
50
50
  referrer?: SuiAddress;
51
51
  externalFee?: RouterExternalFee;
52
52
  }) => Promise<RouterCompleteTradeRoute>;
53
+ fetchCompleteTradeRouteGivenAmountOut: (inputs: {
54
+ network: SuiNetwork | Url;
55
+ graph: RouterSerializableCompleteGraph;
56
+ coinInType: CoinType;
57
+ coinOutAmount: Balance;
58
+ coinOutType: CoinType;
59
+ referrer?: SuiAddress;
60
+ externalFee?: RouterExternalFee;
61
+ }) => Promise<RouterCompleteTradeRoute>;
53
62
  fetchTransactionForCompleteTradeRoute(inputs: {
54
63
  walletAddress: SuiAddress;
55
64
  completeRoute: RouterCompleteTradeRoute;
56
65
  slippage: Slippage;
57
66
  isSponsoredTx?: boolean;
58
67
  }): Promise<TransactionBlock>;
68
+ fetchAddTransactionForCompleteTradeRoute(inputs: {
69
+ tx: TransactionBlock;
70
+ walletAddress: SuiAddress;
71
+ completeRoute: RouterCompleteTradeRoute;
72
+ slippage: Slippage;
73
+ coinInId?: TransactionArgument;
74
+ isSponsoredTx?: boolean;
75
+ }): Promise<TransactionArgument | undefined>;
76
+ fetchAddDynamicGasRouteToTxKind(inputs: Omit<ApiRouterDynamicGasBody, "coinOutAmount"> & {
77
+ coinOutAmount: Balance;
78
+ network: SuiNetwork | Url;
79
+ graph: RouterSerializableCompleteGraph;
80
+ }): Promise<TxBytes>;
59
81
  fetchTradeEvents(inputs: UserEventsInputs): Promise<import("../../../types").EventsWithCursor<import("../routerTypes").RouterTradeEvent>>;
60
82
  }
61
83
  //# sourceMappingURL=routerApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routerApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routerApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApi.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.RouterApi = void 0;
13
13
  const routerGraph_1 = require("../utils/synchronous/routerGraph");
14
14
  const types_1 = require("../../../types");
15
+ const transactions_1 = require("@mysten/sui.js/transactions");
15
16
  const deepBookApi_1 = require("../../external/deepBook/deepBookApi");
16
17
  const poolsApi_1 = require("../../pools/api/poolsApi");
17
18
  const cetusApi_1 = require("../../external/cetus/cetusApi");
@@ -23,11 +24,15 @@ const baySwapApi_1 = require("../../external/baySwap/baySwapApi");
23
24
  const suiswapApi_1 = require("../../external/suiswap/suiswapApi");
24
25
  const blueMoveApi_1 = require("../../external/blueMove/blueMoveApi");
25
26
  const flowXApi_1 = require("../../external/flowX/flowXApi");
27
+ const __1 = require("../..");
26
28
  class RouterApi {
27
29
  // =========================================================================
28
30
  // Constructor
29
31
  // =========================================================================
30
- constructor(Provider, protocols = ["Aftermath"], regularOptions, preAsyncOptions) {
32
+ constructor(Provider, protocols = [
33
+ "Aftermath",
34
+ "afSUI",
35
+ ], regularOptions, preAsyncOptions) {
31
36
  this.Provider = Provider;
32
37
  this.protocols = protocols;
33
38
  // =========================================================================
@@ -78,6 +83,9 @@ class RouterApi {
78
83
  this.fetchCompleteTradeRouteGivenAmountIn = (inputs) => __awaiter(this, void 0, void 0, function* () {
79
84
  return this.Helpers.fetchCompleteTradeRouteGivenAmountIn(Object.assign(Object.assign({}, inputs), { protocols: this.protocols }));
80
85
  });
86
+ this.fetchCompleteTradeRouteGivenAmountOut = (inputs) => __awaiter(this, void 0, void 0, function* () {
87
+ return this.Helpers.fetchCompleteTradeRouteGivenAmountOut(Object.assign(Object.assign({}, inputs), { protocols: this.protocols }));
88
+ });
81
89
  const optionsToSet = {
82
90
  regular: {
83
91
  synchronous: Object.assign(Object.assign({}, RouterApi.defaultRouterOptions.regular.synchronous), regularOptions === null || regularOptions === void 0 ? void 0 : regularOptions.synchronous),
@@ -89,32 +97,80 @@ class RouterApi {
89
97
  this.Provider = Provider;
90
98
  this.Helpers = new routerApiHelpers_1.RouterApiHelpers(Provider, optionsToSet);
91
99
  }
92
- // public fetchCompleteTradeRouteGivenAmountOut = async (
93
- // network: SuiNetwork | Url,
94
- // graph: RouterSerializableCompleteGraph,
95
- // coinIn: CoinType,
96
- // coinOut: CoinType,
97
- // coinOutAmount: Balance,
98
- // referrer?: SuiAddress,
99
- // externalFee?: RouterExternalFee
100
- // ): Promise<RouterCompleteTradeRoute> => {
101
- // return new RouterGraph(network, graph).getCompleteRouteGivenAmountOut(
102
- // coinIn,
103
- // coinOut,
104
- // coinOutAmount,
105
- // referrer,
106
- // externalFee
107
- // );
108
- // };
109
100
  // =========================================================================
110
101
  // Transactions
111
102
  // =========================================================================
112
103
  fetchTransactionForCompleteTradeRoute(inputs) {
104
+ return __awaiter(this, void 0, void 0, function* () {
105
+ const tx = new transactions_1.TransactionBlock();
106
+ yield this.Helpers.fetchTransactionForCompleteTradeRoute(Object.assign(Object.assign({}, inputs), { tx, withTransfer: true }));
107
+ return tx;
108
+ });
109
+ }
110
+ fetchAddTransactionForCompleteTradeRoute(inputs) {
113
111
  return __awaiter(this, void 0, void 0, function* () {
114
112
  return this.Helpers.fetchTransactionForCompleteTradeRoute(inputs);
115
113
  });
116
114
  }
117
115
  // =========================================================================
116
+ // Dynamic Gas Helper
117
+ // =========================================================================
118
+ fetchAddDynamicGasRouteToTxKind(inputs) {
119
+ return __awaiter(this, void 0, void 0, function* () {
120
+ const { gasCoinData } = inputs;
121
+ const tx = transactions_1.TransactionBlock.fromKind(inputs.txKindBytes);
122
+ const completeRoute = yield this.fetchCompleteTradeRouteGivenAmountOut(Object.assign(Object.assign({}, inputs), { coinInType: inputs.gasCoinType, coinOutType: __1.Coin.constants.suiCoinType }));
123
+ let coinInId;
124
+ if ("Coin" in gasCoinData) {
125
+ // coin object has NOT been used previously in tx
126
+ coinInId = tx.object(gasCoinData.Coin);
127
+ }
128
+ else {
129
+ // coin object has been used previously in tx
130
+ const txArgs = tx.blockData.transactions.reduce((acc, aTx) => [
131
+ ...acc,
132
+ ...("objects" in aTx
133
+ ? [aTx.objects]
134
+ : "arguments" in aTx
135
+ ? [aTx.arguments]
136
+ : []),
137
+ ], []);
138
+ coinInId = txArgs.find((arg) => {
139
+ if (!arg)
140
+ return false;
141
+ // this is here because TS having troubles inferring type for some reason
142
+ // (still being weird)
143
+ const txArg = arg;
144
+ return (("Input" in gasCoinData &&
145
+ txArg.kind === "Input" &&
146
+ txArg.index === gasCoinData.Input) ||
147
+ ("Result" in gasCoinData &&
148
+ txArg.kind === "Result" &&
149
+ txArg.index === gasCoinData.Result) ||
150
+ ("NestedResult" in gasCoinData &&
151
+ txArg.kind === "NestedResult" &&
152
+ txArg.index === gasCoinData.NestedResult[0] &&
153
+ txArg.resultIndex === gasCoinData.NestedResult[1]));
154
+ });
155
+ }
156
+ const coinOutId = yield this.fetchAddTransactionForCompleteTradeRoute({
157
+ tx,
158
+ completeRoute,
159
+ coinInId,
160
+ // TODO: set this elsewhere
161
+ slippage: 0.01,
162
+ walletAddress: inputs.senderAddress,
163
+ });
164
+ tx.transferObjects([coinOutId], tx.pure(inputs.sponsorAddress, "address"));
165
+ const txBytes = yield tx.build({
166
+ client: this.Provider.provider,
167
+ onlyTransactionKind: true,
168
+ });
169
+ const b64TxBytes = Buffer.from(txBytes).toString("base64");
170
+ return b64TxBytes;
171
+ });
172
+ }
173
+ // =========================================================================
118
174
  // Events
119
175
  // =========================================================================
120
176
  fetchTradeEvents(inputs) {
@@ -2,7 +2,7 @@ import { AftermathApi } from "../../../general/providers/aftermathApi";
2
2
  import { Balance, CoinType, RouterAsyncSerializablePool, RouterCompleteTradeRoute, RouterExternalFee, RouterProtocolName, RouterSerializableCompleteGraph, Slippage, SuiNetwork, SynchronousProtocolsToPoolObjectIds, Url, AllRouterOptions, SuiAddress } from "../../../types";
3
3
  import { RouterAsyncApiHelpers } from "./routerAsyncApiHelpers";
4
4
  import { RouterSynchronousApiHelpers } from "./routerSynchronousApiHelpers";
5
- import { TransactionBlock } from "@mysten/sui.js/transactions";
5
+ import { TransactionArgument, TransactionBlock } from "@mysten/sui.js/transactions";
6
6
  export declare class RouterApiHelpers {
7
7
  private readonly options;
8
8
  readonly SynchronousHelpers: RouterSynchronousApiHelpers;
@@ -22,13 +22,26 @@ export declare class RouterApiHelpers {
22
22
  referrer?: SuiAddress;
23
23
  externalFee?: RouterExternalFee;
24
24
  }) => Promise<RouterCompleteTradeRoute>;
25
+ fetchCompleteTradeRouteGivenAmountOut: (inputs: {
26
+ protocols: RouterProtocolName[];
27
+ network: SuiNetwork | Url;
28
+ graph: RouterSerializableCompleteGraph;
29
+ coinInType: CoinType;
30
+ coinOutAmount: Balance;
31
+ coinOutType: CoinType;
32
+ referrer?: SuiAddress;
33
+ externalFee?: RouterExternalFee;
34
+ }) => Promise<RouterCompleteTradeRoute>;
25
35
  private fetchCompleteTradeRoutesForLastRouteAsyncPool;
26
36
  fetchTransactionForCompleteTradeRoute(inputs: {
37
+ tx: TransactionBlock;
27
38
  walletAddress: SuiAddress;
28
39
  completeRoute: RouterCompleteTradeRoute;
29
40
  slippage: Slippage;
41
+ coinInId?: TransactionArgument;
30
42
  isSponsoredTx?: boolean;
31
- }): Promise<TransactionBlock>;
43
+ withTransfer?: boolean;
44
+ }): Promise<TransactionArgument | undefined>;
32
45
  amountsInForRouterTrade: (inputs: {
33
46
  coinInAmount: Balance;
34
47
  }) => Balance[];
@@ -1 +1 @@
1
- {"version":3,"file":"routerApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,OAAO,EACP,QAAQ,EACR,2BAA2B,EAC3B,wBAAwB,EACxB,iBAAiB,EACjB,kBAAkB,EAClB,+BAA+B,EAC/B,QAAQ,EACR,UAAU,EACV,mCAAmC,EACnC,GAAG,EAGH,gBAAgB,EAChB,UAAU,EACV,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,qBAAa,gBAAgB;IAc3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IATzB,SAAgB,kBAAkB,8BAAC;IACnC,SAAgB,YAAY,wBAAC;gBAO5B,QAAQ,EAAE,YAAY,EACL,OAAO,EAAE,gBAAgB;IAiBpC,4BAA4B,WAAkB;QACpD,UAAU,EAAE,2BAA2B,EAAE,CAAC;QAC1C,mCAAmC,EAAE,mCAAmC,CAAC;KACzE,8CAOC;IAMK,oCAAoC,WAAkB;QAC5D,SAAS,EAAE,kBAAkB,EAAE,CAAC;QAChC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;QAC1B,KAAK,EAAE,+BAA+B,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;KAGhC,KAAG,QAAQ,wBAAwB,CAAC,CAkFnC;IAEF,OAAO,CAAC,6CAA6C,CAwDnD;IAmDW,qCAAqC,CAAC,MAAM,EAAE;QAC1D,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,wBAAwB,CAAC;QACxC,QAAQ,EAAE,QAAQ,CAAC;QACnB,aAAa,CAAC,EAAE,OAAO,CAAC;KACxB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IActB,uBAAuB,WAAY;QACzC,YAAY,EAAE,OAAO,CAAC;KACtB,KAAG,OAAO,EAAE,CAmBX;IAUF,OAAO,CAAC,MAAM,CAAC,uCAAuC,CA2CpD;CACF"}
1
+ {"version":3,"file":"routerApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,OAAO,EACP,QAAQ,EACR,2BAA2B,EAC3B,wBAAwB,EACxB,iBAAiB,EACjB,kBAAkB,EAClB,+BAA+B,EAC/B,QAAQ,EACR,UAAU,EACV,mCAAmC,EACnC,GAAG,EAGH,gBAAgB,EAChB,UAAU,EACV,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AAErC,qBAAa,gBAAgB;IAc3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IATzB,SAAgB,kBAAkB,8BAAC;IACnC,SAAgB,YAAY,wBAAC;gBAO5B,QAAQ,EAAE,YAAY,EACL,OAAO,EAAE,gBAAgB;IAiBpC,4BAA4B,WAAkB;QACpD,UAAU,EAAE,2BAA2B,EAAE,CAAC;QAC1C,mCAAmC,EAAE,mCAAmC,CAAC;KACzE,8CAOC;IAMK,oCAAoC,WAAkB;QAC5D,SAAS,EAAE,kBAAkB,EAAE,CAAC;QAChC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;QAC1B,KAAK,EAAE,+BAA+B,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;KAChC,KAAG,QAAQ,wBAAwB,CAAC,CAkFnC;IAEK,qCAAqC,WAAkB;QAC7D,SAAS,EAAE,kBAAkB,EAAE,CAAC;QAChC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;QAC1B,KAAK,EAAE,+BAA+B,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;KAChC,KAAG,QAAQ,wBAAwB,CAAC,CAYnC;IAEF,OAAO,CAAC,6CAA6C,CAwDnD;IAmDW,qCAAqC,CAAC,MAAM,EAAE;QAC1D,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,wBAAwB,CAAC;QACxC,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;QAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,YAAY,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAcrC,uBAAuB,WAAY;QACzC,YAAY,EAAE,OAAO,CAAC;KACtB,KAAG,OAAO,EAAE,CAmBX;IAUF,OAAO,CAAC,MAAM,CAAC,uCAAuC,CA2CpD;CACF"}
@@ -69,6 +69,13 @@ class RouterApiHelpers {
69
69
  });
70
70
  return Object.assign(Object.assign({}, result), { coinIn: Object.assign(Object.assign({}, result.coinIn), { amount: coinInAmount }), referrer: inputs.referrer });
71
71
  });
72
+ this.fetchCompleteTradeRouteGivenAmountOut = (inputs) => __awaiter(this, void 0, void 0, function* () {
73
+ if (inputs.protocols.length === 0)
74
+ throw new Error("no protocols set in constructor");
75
+ const { network, graph } = inputs;
76
+ const routerGraph = new routerGraph_1.RouterGraph(network, graph, this.options.regular.synchronous);
77
+ return routerGraph.getCompleteRouteGivenAmountOut(inputs);
78
+ });
72
79
  this.fetchCompleteTradeRoutesForLastRouteAsyncPool = (inputs) => __awaiter(this, void 0, void 0, function* () {
73
80
  const { routerGraph } = inputs;
74
81
  const asyncApi = this.AsyncHelpers.protocolNamesToApi[this.AsyncHelpers.protocolNameFromPool({
@@ -56,11 +56,14 @@ export declare class RouterSynchronousApiHelpers {
56
56
  routerSwapCapCoinType: CoinType;
57
57
  }) => any;
58
58
  fetchBuildTransactionForCompleteTradeRoute(inputs: {
59
+ tx: TransactionBlock;
59
60
  walletAddress: SuiAddress;
60
61
  completeRoute: RouterCompleteTradeRoute;
61
62
  slippage: Slippage;
63
+ coinInId?: TransactionArgument;
62
64
  isSponsoredTx?: boolean;
63
- }): Promise<TransactionBlock>;
65
+ withTransfer?: boolean;
66
+ }): Promise<TransactionArgument | undefined>;
64
67
  fetchTradeEvents: (inputs: {
65
68
  walletAddress: SuiAddress;
66
69
  } & EventsInputs) => Promise<import("../../../types").EventsWithCursor<RouterTradeEvent>>;
@@ -1 +1 @@
1
- {"version":3,"file":"routerSynchronousApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerSynchronousApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,wBAAwB,EACxB,iBAAiB,EACjB,6BAA6B,EAC7B,iCAAiC,EACjC,gBAAgB,EAEhB,mCAAmC,EACnC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,aAAa,EACb,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACvB,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,MAAM,gBAAgB,CAAC;AAgBxB,qBAAa,2BAA2B;IA2C3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAtCrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAUjC;IAEF,gBAAuB,SAAS;;;;;;;MAO9B;IAMF,SAAgB,SAAS,EAAE;QAC1B,MAAM,EAAE,uBAAuB,CAAC;QAChC,KAAK,EAAE,cAAc,CAAC;QACtB,aAAa,EAAE,sBAAsB,CAAC;KACtC,CAAC;IACF,SAAgB,UAAU,EAAE;QAC3B,WAAW,EAAE,aAAa,CAAC;KAC3B,CAAC;gBAM2B,QAAQ,EAAE,YAAY;IAwB5C,iBAAiB,WAAkB;QACzC,mCAAmC,EAAE,mCAAmC,CAAC;KACzE,KAAG,QAAQ,iCAAiC,EAAE,CAAC,CAuB9C;IAEK,eAAe,WAAkB;QACvC,SAAS,EAAE,6BAA6B,EAAE,CAAC;KAC3C,KAAG,QAAQ,mCAAmC,CAAC,CAe9C;IAMK,iBAAiB,WAAY;QACnC,EAAE,EAAE,gBAAgB,CAAC;QACrB,QAAQ,EAAE,QAAQ,GAAG,mBAAmB,CAAC;QACzC,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;KAChC,SA2CC;IAEK,cAAc,WAAY;QAChC,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,mBAAmB,CAAC;QACnC,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;KACrB,SAeC;IAEK,iBAAiB,WAAY;QACnC,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,mBAAmB,CAAC;QACnC,SAAS,EAAE,QAAQ,GAAG,mBAAmB,CAAC;QAC1C,qBAAqB,EAAE,QAAQ,CAAC;QAChC,WAAW,EAAE,QAAQ,CAAC;KACtB,SA6BC;IAEK,gCAAgC,WAAY;QAClD,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,mBAAmB,CAAC;QACnC,qBAAqB,EAAE,QAAQ,CAAC;KAChC,SAcC;IAMW,0CAA0C,CAAC,MAAM,EAAE;QAC/D,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,wBAAwB,CAAC;QACxC,QAAQ,EAAE,QAAQ,CAAC;QACnB,aAAa,CAAC,EAAE,OAAO,CAAC;KACxB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA2ItB,gBAAgB,WACd;QACP,aAAa,EAAE,UAAU,CAAC;KAC1B,GAAG,YAAY,0EAmBf;IAUF,OAAO,CAAC,qBAAqB,CAK3B;IAMF,OAAO,CAAC,oBAAoB,CAKzB;IAUH,OAAO,CAAC,MAAM,CAAC,6BAA6B,CA2B1C;CACF"}
1
+ {"version":3,"file":"routerSynchronousApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerSynchronousApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,wBAAwB,EACxB,iBAAiB,EACjB,6BAA6B,EAC7B,iCAAiC,EACjC,gBAAgB,EAEhB,mCAAmC,EACnC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,aAAa,EACb,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACvB,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,MAAM,gBAAgB,CAAC;AAiBxB,qBAAa,2BAA2B;IA4C3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAvCrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAWjC;IAEF,gBAAuB,SAAS;;;;;;;MAO9B;IAMF,SAAgB,SAAS,EAAE;QAC1B,MAAM,EAAE,uBAAuB,CAAC;QAChC,KAAK,EAAE,cAAc,CAAC;QACtB,aAAa,EAAE,sBAAsB,CAAC;KACtC,CAAC;IACF,SAAgB,UAAU,EAAE;QAC3B,WAAW,EAAE,aAAa,CAAC;KAC3B,CAAC;gBAM2B,QAAQ,EAAE,YAAY;IAwB5C,iBAAiB,WAAkB;QACzC,mCAAmC,EAAE,mCAAmC,CAAC;KACzE,KAAG,QAAQ,iCAAiC,EAAE,CAAC,CAuB9C;IAEK,eAAe,WAAkB;QACvC,SAAS,EAAE,6BAA6B,EAAE,CAAC;KAC3C,KAAG,QAAQ,mCAAmC,CAAC,CAe9C;IAMK,iBAAiB,WAAY;QACnC,EAAE,EAAE,gBAAgB,CAAC;QACrB,QAAQ,EAAE,QAAQ,GAAG,mBAAmB,CAAC;QACzC,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;KAChC,SA2CC;IAEK,cAAc,WAAY;QAChC,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,mBAAmB,CAAC;QACnC,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;KACrB,SAeC;IAEK,iBAAiB,WAAY;QACnC,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,mBAAmB,CAAC;QACnC,SAAS,EAAE,QAAQ,GAAG,mBAAmB,CAAC;QAC1C,qBAAqB,EAAE,QAAQ,CAAC;QAChC,WAAW,EAAE,QAAQ,CAAC;KACtB,SA6BC;IAEK,gCAAgC,WAAY;QAClD,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,mBAAmB,CAAC;QACnC,qBAAqB,EAAE,QAAQ,CAAC;KAChC,SAcC;IAMW,0CAA0C,CAAC,MAAM,EAAE;QAC/D,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,wBAAwB,CAAC;QACxC,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;QAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,YAAY,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IA6JrC,gBAAgB,WACd;QACP,aAAa,EAAE,UAAU,CAAC;KAC1B,GAAG,YAAY,0EAmBf;IAUF,OAAO,CAAC,qBAAqB,CAK3B;IAMF,OAAO,CAAC,oBAAoB,CAKzB;IAUH,OAAO,CAAC,MAAM,CAAC,6BAA6B,CA2B1C;CACF"}
@@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.RouterSynchronousApiHelpers = void 0;
13
- const transactions_1 = require("@mysten/sui.js/transactions");
14
13
  const routerPoolInterface_1 = require("../utils/synchronous/interfaces/routerPoolInterface");
15
14
  const router_1 = require("../router");
16
15
  const poolsApi_1 = require("../../pools/api/poolsApi");
@@ -23,6 +22,7 @@ const kriyaApi_1 = require("../../external/kriya/kriyaApi");
23
22
  const baySwapApi_1 = require("../../external/baySwap/baySwapApi");
24
23
  const suiswapApi_1 = require("../../external/suiswap/suiswapApi");
25
24
  const blueMoveApi_1 = require("../../external/blueMove/blueMoveApi");
25
+ const stakingApi_1 = require("../../staking/api/stakingApi");
26
26
  class RouterSynchronousApiHelpers {
27
27
  // =========================================================================
28
28
  // Constructor
@@ -39,6 +39,7 @@ class RouterSynchronousApiHelpers {
39
39
  BaySwap: () => new baySwapApi_1.BaySwapApi(this.Provider),
40
40
  Suiswap: () => new suiswapApi_1.SuiswapApi(this.Provider),
41
41
  BlueMove: () => new blueMoveApi_1.BlueMoveApi(this.Provider),
42
+ afSUI: () => new stakingApi_1.StakingApi(this.Provider),
42
43
  };
43
44
  // =========================================================================
44
45
  // Objects
@@ -164,27 +165,32 @@ class RouterSynchronousApiHelpers {
164
165
  // =========================================================================
165
166
  fetchBuildTransactionForCompleteTradeRoute(inputs) {
166
167
  return __awaiter(this, void 0, void 0, function* () {
167
- const { walletAddress, completeRoute, slippage, isSponsoredTx } = inputs;
168
+ const { walletAddress, completeRoute, slippage, isSponsoredTx, tx, withTransfer, } = inputs;
168
169
  const referrer = completeRoute.referrer;
169
170
  const externalFee = completeRoute.externalFee;
170
171
  if (externalFee &&
171
172
  externalFee.feePercentage >=
172
173
  router_1.Router.constants.maxExternalFeePercentage)
173
174
  throw new Error(`external fee percentage exceeds max of ${router_1.Router.constants.maxExternalFeePercentage}`);
174
- const tx = new transactions_1.TransactionBlock();
175
175
  tx.setSender(walletAddress);
176
176
  if (referrer)
177
177
  this.Provider.ReferralVault().updateReferrerTx({
178
178
  tx,
179
179
  referrer,
180
180
  });
181
- const startCoinInId = yield this.Provider.Coin().fetchCoinWithAmountTx({
182
- tx,
183
- walletAddress,
184
- coinType: completeRoute.coinIn.type,
185
- coinAmount: completeRoute.coinIn.amount,
186
- isSponsoredTx,
187
- });
181
+ let startCoinInId;
182
+ if (inputs.coinInId) {
183
+ startCoinInId = inputs.coinInId;
184
+ }
185
+ else {
186
+ startCoinInId = yield this.Provider.Coin().fetchCoinWithAmountTx({
187
+ tx,
188
+ walletAddress,
189
+ coinType: completeRoute.coinIn.type,
190
+ coinAmount: completeRoute.coinIn.amount,
191
+ isSponsoredTx,
192
+ });
193
+ }
188
194
  const minAmountOut = RouterSynchronousApiHelpers.calcCompleteRouteMinAmountOut({
189
195
  completeRoute,
190
196
  slippage,
@@ -255,7 +261,10 @@ class RouterSynchronousApiHelpers {
255
261
  coinOutType: completeRoute.coinOut.type,
256
262
  coinOutId,
257
263
  });
258
- tx.transferObjects([coinOutId], tx.pure(walletAddress, "address"));
264
+ if (withTransfer) {
265
+ tx.transferObjects([coinOutId], tx.pure(walletAddress, "address"));
266
+ }
267
+ return coinOutId;
259
268
  }
260
269
  else {
261
270
  this.returnRouterCapAlreadyPayedFeeTx({
@@ -263,8 +272,8 @@ class RouterSynchronousApiHelpers {
263
272
  routerSwapCap,
264
273
  routerSwapCapCoinType,
265
274
  });
275
+ return undefined;
266
276
  }
267
- return tx;
268
277
  });
269
278
  }
270
279
  }
@@ -40,7 +40,7 @@ export declare class Router extends Caller {
40
40
  */
41
41
  getGraph(): Promise<RouterSerializableCompleteGraph>;
42
42
  getAsyncPools(): Promise<RouterAsyncSerializablePool[]>;
43
- getSynchronousPoolIds(): Promise<Record<"Aftermath" | "Interest" | "Kriya" | "BaySwap" | "Suiswap" | "BlueMove", string[]>>;
43
+ getSynchronousPoolIds(): Promise<Record<"Aftermath" | "Interest" | "Kriya" | "BaySwap" | "Suiswap" | "BlueMove" | "afSUI", string[]>>;
44
44
  /**
45
45
  * Creates route across multiple pools and protocols for best trade execution price
46
46
  *
@@ -1,4 +1,4 @@
1
- import { AnyObjectType, Balance, Percentage, Event, Slippage, ApiEventsBody, ObjectId, SuiAddress } from "../../general/types/generalTypes";
1
+ import { AnyObjectType, Balance, Percentage, Event, Slippage, ApiEventsBody, ObjectId, SuiAddress, TxBytes, BigIntAsString } from "../../general/types/generalTypes";
2
2
  import { CoinType } from "../coin/coinTypes";
3
3
  import { PoolObject, PoolTradeFee } from "../pools/poolsTypes";
4
4
  import { DeepBookPoolObject } from "../external/deepBook/deepBookTypes";
@@ -11,6 +11,7 @@ import { BaySwapPoolObject } from "../external/baySwap/baySwapTypes";
11
11
  import { SuiswapPoolObject } from "../external/suiswap/suiswapTypes";
12
12
  import { BlueMovePoolObject } from "../external/blueMove/blueMoveTypes";
13
13
  import { FlowXPoolObject } from "../external/flowX/flowXTypes";
14
+ import { AfSuiRouterPoolObject, DynamicGasCoinData } from "../..";
14
15
  export type UniqueId = string;
15
16
  /**
16
17
  * Fee info for third party packages wanting to fee route transactions
@@ -29,11 +30,11 @@ export interface RouterExternalFee {
29
30
  }
30
31
  export type RouterSerializablePool = RouterSynchronousSerializablePool | RouterAsyncSerializablePool;
31
32
  export type RouterProtocolName = RouterSynchronousProtocolName | RouterAsyncProtocolName;
32
- export type RouterSynchronousSerializablePool = PoolObject | InterestPoolObject | KriyaPoolObject | BaySwapPoolObject | SuiswapPoolObject | BlueMovePoolObject;
33
+ export type RouterSynchronousSerializablePool = PoolObject | InterestPoolObject | KriyaPoolObject | BaySwapPoolObject | SuiswapPoolObject | BlueMovePoolObject | AfSuiRouterPoolObject;
33
34
  export declare const isRouterSynchronousSerializablePool: (pool: RouterSerializablePool) => pool is RouterSynchronousSerializablePool;
34
- declare const RouterSynchronousProtocolNames: readonly ["Aftermath", "Interest", "Kriya", "BaySwap", "Suiswap", "BlueMove"];
35
+ declare const RouterSynchronousProtocolNames: readonly ["Aftermath", "Interest", "Kriya", "BaySwap", "Suiswap", "BlueMove", "afSUI"];
35
36
  export type RouterSynchronousProtocolName = (typeof RouterSynchronousProtocolNames)[number];
36
- export declare const isRouterSynchronousProtocolName: (protocolName: RouterProtocolName) => protocolName is "Aftermath" | "Interest" | "Kriya" | "BaySwap" | "Suiswap" | "BlueMove";
37
+ export declare const isRouterSynchronousProtocolName: (protocolName: RouterProtocolName) => protocolName is "Aftermath" | "Interest" | "Kriya" | "BaySwap" | "Suiswap" | "BlueMove" | "afSUI";
37
38
  export type SynchronousProtocolsToPoolObjectIds = Record<Partial<RouterSynchronousProtocolName>, ObjectId[]>;
38
39
  export type RouterAsyncSerializablePool = CetusPoolObject | TurbosPoolObject | DeepBookPoolObject | FlowXPoolObject;
39
40
  export declare const isRouterAsyncSerializablePool: (pool: RouterSerializablePool) => pool is RouterAsyncSerializablePool;
@@ -166,5 +167,14 @@ export interface ApiRouterTransactionForCompleteTradeRouteBody {
166
167
  export type ApiRouterTradeEventsBody = ApiEventsBody & {
167
168
  walletAddress: SuiAddress;
168
169
  };
170
+ export interface ApiRouterDynamicGasBody {
171
+ txKindBytes: TxBytes;
172
+ gasCoinType: CoinType;
173
+ gasCoinData: DynamicGasCoinData;
174
+ coinOutAmount: BigIntAsString;
175
+ senderAddress: SuiAddress;
176
+ sponsorAddress: SuiAddress;
177
+ referrer?: SuiAddress;
178
+ }
169
179
  export {};
170
180
  //# sourceMappingURL=routerTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routerTypes.d.ts","sourceRoot":"","sources":["../../../src/packages/router/routerTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EACb,OAAO,EACP,UAAU,EACV,KAAK,EACL,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,UAAU,EACV,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EACN,kBAAkB,EAElB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AACzF,OAAO,EACN,eAAe,EAEf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACN,gBAAgB,EAEhB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EACN,eAAe,EAEf,MAAM,8BAA8B,CAAC;AAMtC,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAM9B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;;;OAIG;IACH,aAAa,EAAE,UAAU,CAAC;CAC1B;AAMD,MAAM,MAAM,sBAAsB,GAC/B,iCAAiC,GACjC,2BAA2B,CAAC;AAE/B,MAAM,MAAM,kBAAkB,GAC3B,6BAA6B,GAC7B,uBAAuB,CAAC;AAM3B,MAAM,MAAM,iCAAiC,GAC1C,UAAU,GACV,kBAAkB,GAClB,eAAe,GACf,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,CAAC;AAEtB,eAAO,MAAM,mCAAmC,SACzC,sBAAsB,8CAG5B,CAAC;AAEF,QAAA,MAAM,8BAA8B,+EAO1B,CAAC;AAEX,MAAM,MAAM,6BAA6B,GACxC,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjD,eAAO,MAAM,+BAA+B,iBAC7B,kBAAkB,4FAIhC,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG,MAAM,CACvD,OAAO,CAAC,6BAA6B,CAAC,EACtC,QAAQ,EAAE,CACV,CAAC;AAMF,MAAM,MAAM,2BAA2B,GACpC,eAAe,GACf,gBAAgB,GAChB,kBAAkB,GAClB,eAAe,CAAC;AAEnB,eAAO,MAAM,6BAA6B,SACnC,sBAAsB,wCAQ5B,CAAC;AAEF,QAAA,MAAM,wBAAwB,mDAKpB,CAAC;AACX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhF,eAAO,MAAM,yBAAyB,iBACvB,kBAAkB,8DAIhC,CAAC;AAMF,MAAM,MAAM,wBAAwB,GAAG,eAAe,GAAG;IACxD,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;CAEhC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG;IAChD,KAAK,EAAE,eAAe,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG;IAC/C,YAAY,EAAE,kBAAkB,CAAC;IACjC,IAAI,EAAE,sBAAsB,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,eAAe,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,YAAY,CAAC;CACvB;AAMD,MAAM,WAAW,mBAAmB;IACnC,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,+BAA+B;IAC/C,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,2BAA2B,CAAC;CACnC;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAEpE,MAAM,WAAW,wBAAwB;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IAClC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,wBAAwB,EAAE,MAAM,CAAC;CACjC;AAED,UAAU,aAAa;IACtB,WAAW,EAAE,wBAAwB,CAAC;IACtC,KAAK,EAAE,kBAAkB,CAAC;CAC1B;AACD,MAAM,WAAW,oBAAoB;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAChD,KAAK,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,wBAAwB,CAAC;CACnC;AAED,MAAM,MAAM,2BAA2B,GAAG,MAAM,CAC/C,QAAQ,EACR,sBAAsB,CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;AACpE,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;AAEpE,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,uBAAuB,EAAE,6BAA6B,CAAC;CACvD;AAED,MAAM,MAAM,6BAA6B,GAAG,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAMzE,MAAM,WAAW,uBAAuB;IACvC,UAAU,EAAE,QAAQ,CAAC;IACrB,WAAW,EAAE,QAAQ,CAAC;IACtB,aAAa,EAAE,OAAO,EAAE,CAAC;IACzB,OAAO,EAAE,sBAAsB,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IACtC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,IAAI,EAAE,2BAA2B,CAAC;IAClC,UAAU,EAAE,OAAO,EAAE,CAAC;CACtB;AAMD,MAAM,WAAW,gBAAiB,SAAQ,KAAK;IAC9C,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,aAAa,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,aAAa,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;CAGvB;AAMD;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC7C;;OAEG;IACH,UAAU,EAAE,QAAQ,CAAC;IACrB;;OAEG;IACH,WAAW,EAAE,QAAQ,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAC;CAChC,GAAG;IACH;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;CACtB,CAAC;AAQF;;GAEG;AACH,MAAM,WAAW,6CAA6C;IAC7D;;OAEG;IACH,aAAa,EAAE,UAAU,CAAC;IAC1B;;OAEG;IACH,aAAa,EAAE,wBAAwB,CAAC;IACxC;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,wBAAwB,GAAG,aAAa,GAAG;IACtD,aAAa,EAAE,UAAU,CAAC;CAC1B,CAAC"}
1
+ {"version":3,"file":"routerTypes.d.ts","sourceRoot":"","sources":["../../../src/packages/router/routerTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EACb,OAAO,EACP,UAAU,EACV,KAAK,EACL,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,UAAU,EACV,OAAO,EACP,cAAc,EACd,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EACN,kBAAkB,EAElB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AACzF,OAAO,EACN,eAAe,EAEf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACN,gBAAgB,EAEhB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EACN,eAAe,EAEf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAMlE,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAM9B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;;;OAIG;IACH,aAAa,EAAE,UAAU,CAAC;CAC1B;AAMD,MAAM,MAAM,sBAAsB,GAC/B,iCAAiC,GACjC,2BAA2B,CAAC;AAE/B,MAAM,MAAM,kBAAkB,GAC3B,6BAA6B,GAC7B,uBAAuB,CAAC;AAM3B,MAAM,MAAM,iCAAiC,GAC1C,UAAU,GACV,kBAAkB,GAClB,eAAe,GACf,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,qBAAqB,CAAC;AAEzB,eAAO,MAAM,mCAAmC,SACzC,sBAAsB,8CAG5B,CAAC;AAEF,QAAA,MAAM,8BAA8B,wFAQ1B,CAAC;AAEX,MAAM,MAAM,6BAA6B,GACxC,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjD,eAAO,MAAM,+BAA+B,iBAC7B,kBAAkB,sGAIhC,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG,MAAM,CACvD,OAAO,CAAC,6BAA6B,CAAC,EACtC,QAAQ,EAAE,CACV,CAAC;AAMF,MAAM,MAAM,2BAA2B,GACpC,eAAe,GACf,gBAAgB,GAChB,kBAAkB,GAClB,eAAe,CAAC;AAEnB,eAAO,MAAM,6BAA6B,SACnC,sBAAsB,wCAQ5B,CAAC;AAEF,QAAA,MAAM,wBAAwB,mDAKpB,CAAC;AACX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhF,eAAO,MAAM,yBAAyB,iBACvB,kBAAkB,8DAIhC,CAAC;AAMF,MAAM,MAAM,wBAAwB,GAAG,eAAe,GAAG;IACxD,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;CAEhC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG;IAChD,KAAK,EAAE,eAAe,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG;IAC/C,YAAY,EAAE,kBAAkB,CAAC;IACjC,IAAI,EAAE,sBAAsB,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,eAAe,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,YAAY,CAAC;CACvB;AAMD,MAAM,WAAW,mBAAmB;IACnC,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,+BAA+B;IAC/C,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,2BAA2B,CAAC;CACnC;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAEpE,MAAM,WAAW,wBAAwB;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IAClC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,wBAAwB,EAAE,MAAM,CAAC;CACjC;AAED,UAAU,aAAa;IACtB,WAAW,EAAE,wBAAwB,CAAC;IACtC,KAAK,EAAE,kBAAkB,CAAC;CAC1B;AACD,MAAM,WAAW,oBAAoB;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAChD,KAAK,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,wBAAwB,CAAC;CACnC;AAED,MAAM,MAAM,2BAA2B,GAAG,MAAM,CAC/C,QAAQ,EACR,sBAAsB,CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;AACpE,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;AAEpE,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,uBAAuB,EAAE,6BAA6B,CAAC;CACvD;AAED,MAAM,MAAM,6BAA6B,GAAG,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAMzE,MAAM,WAAW,uBAAuB;IACvC,UAAU,EAAE,QAAQ,CAAC;IACrB,WAAW,EAAE,QAAQ,CAAC;IACtB,aAAa,EAAE,OAAO,EAAE,CAAC;IACzB,OAAO,EAAE,sBAAsB,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IACtC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,IAAI,EAAE,2BAA2B,CAAC;IAClC,UAAU,EAAE,OAAO,EAAE,CAAC;CACtB;AAMD,MAAM,WAAW,gBAAiB,SAAQ,KAAK;IAC9C,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,aAAa,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,aAAa,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;CAGvB;AAMD;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC7C;;OAEG;IACH,UAAU,EAAE,QAAQ,CAAC;IACrB;;OAEG;IACH,WAAW,EAAE,QAAQ,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAC;CAChC,GAAG;IACH;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;CACtB,CAAC;AAQF;;GAEG;AACH,MAAM,WAAW,6CAA6C;IAC7D;;OAEG;IACH,aAAa,EAAE,UAAU,CAAC;IAC1B;;OAEG;IACH,aAAa,EAAE,wBAAwB,CAAC;IACxC;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,wBAAwB,GAAG,aAAa,GAAG;IACtD,aAAa,EAAE,UAAU,CAAC;CAC1B,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACvC,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,QAAQ,CAAC;IACtB,WAAW,EAAE,kBAAkB,CAAC;IAChC,aAAa,EAAE,cAAc,CAAC;IAC9B,aAAa,EAAE,UAAU,CAAC;IAC1B,cAAc,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,EAAE,UAAU,CAAC;CACtB"}
@@ -16,6 +16,7 @@ const RouterSynchronousProtocolNames = [
16
16
  "BaySwap",
17
17
  "Suiswap",
18
18
  "BlueMove",
19
+ "afSUI",
19
20
  ];
20
21
  const isRouterSynchronousProtocolName = (protocolName) => {
21
22
  // @ts-ignore
@@ -1 +1 @@
1
- {"version":3,"file":"routerPoolInterface.d.ts","sourceRoot":"","sources":["../../../../../../src/packages/router/utils/synchronous/interfaces/routerPoolInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,OAAO,EAEP,kBAAkB,EAClB,sBAAsB,EAEtB,UAAU,EACV,QAAQ,EACR,GAAG,EAEH,QAAQ,EACR,UAAU,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAwBhE,MAAM,WAAW,uBAAuB;IACvC,QAAQ,EAAE,YAAY,CAAC;IACvB,EAAE,EAAE,gBAAgB,CAAC;IACrB,QAAQ,EAAE,QAAQ,GAAG,mBAAmB,CAAC;IACzC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC;IACrB,WAAW,EAAE,QAAQ,CAAC;IACtB,aAAa,EAAE,mBAAmB,CAAC;IACnC,qBAAqB,EAAE,QAAQ,CAAC;CAChC;AAMD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACxC,IAAI,EAAE,sBAAsB,CAAC;IAE7B,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;CAC1B,GAAG,mBAAmB,CA+BtB;AAmBD,MAAM,WAAW,mBAAmB;IASnC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAOhC,YAAY,EAAE,CAAC,MAAM,EAAE;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAK,MAAM,CAAC;IAEb,iBAAiB,EAAE,CAAC,MAAM,EAAE;QAC3B,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAK,OAAO,CAAC;IAEd,OAAO,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,mBAAmB,CAAC;IAYlE,gBAAgB,EAAE,CAAC,MAAM,EAAE;QAC1B,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAK,OAAO,CAAC;IAEd,yBAAyB,EAAE,CAAC,MAAM,EAAE;QACnC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;KACvB,KAAK,mBAAmB,CAAC;IAE1B,wBAAwB,EAAE,CAAC,MAAM,EAAE;QAClC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;KACvB,KAAK,mBAAmB,CAAC;CAC1B"}
1
+ {"version":3,"file":"routerPoolInterface.d.ts","sourceRoot":"","sources":["../../../../../../src/packages/router/utils/synchronous/interfaces/routerPoolInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,OAAO,EAEP,kBAAkB,EAClB,sBAAsB,EAEtB,UAAU,EACV,QAAQ,EACR,GAAG,EAEH,QAAQ,EACR,UAAU,EAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAyBhE,MAAM,WAAW,uBAAuB;IACvC,QAAQ,EAAE,YAAY,CAAC;IACvB,EAAE,EAAE,gBAAgB,CAAC;IACrB,QAAQ,EAAE,QAAQ,GAAG,mBAAmB,CAAC;IACzC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC;IACrB,WAAW,EAAE,QAAQ,CAAC;IACtB,aAAa,EAAE,mBAAmB,CAAC;IACnC,qBAAqB,EAAE,QAAQ,CAAC;CAChC;AAMD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACxC,IAAI,EAAE,sBAAsB,CAAC;IAE7B,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;CAC1B,GAAG,mBAAmB,CAiCtB;AAmBD,MAAM,WAAW,mBAAmB;IASnC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAOhC,YAAY,EAAE,CAAC,MAAM,EAAE;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAK,MAAM,CAAC;IAEb,iBAAiB,EAAE,CAAC,MAAM,EAAE;QAC3B,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAK,OAAO,CAAC;IAEd,OAAO,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,mBAAmB,CAAC;IAYlE,gBAAgB,EAAE,CAAC,MAAM,EAAE;QAC1B,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAK,OAAO,CAAC;IAEd,yBAAyB,EAAE,CAAC,MAAM,EAAE;QACnC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;KACvB,KAAK,mBAAmB,CAAC;IAE1B,wBAAwB,EAAE,CAAC,MAAM,EAAE;QAClC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;KACvB,KAAK,mBAAmB,CAAC;CAC1B"}
@@ -24,6 +24,7 @@ const blueMoveTypes_1 = require("../../../../external/blueMove/blueMoveTypes");
24
24
  const blueMoveRouterPool_1 = __importDefault(require("../routerPools/blueMoveRouterPool"));
25
25
  const flowXTypes_1 = require("../../../../external/flowX/flowXTypes");
26
26
  const flowXRouterPool_1 = __importDefault(require("../routerPools/flowXRouterPool"));
27
+ const afSuiRouterPool_1 = __importDefault(require("../routerPools/afSuiRouterPool"));
27
28
  // =========================================================================
28
29
  // Creation
29
30
  // =========================================================================
@@ -47,9 +48,11 @@ function createRouterPool(inputs) {
47
48
  ? new suiswapRouterPool_1.default(pool, network)
48
49
  : (0, blueMoveTypes_1.isBlueMovePoolObject)(pool)
49
50
  ? new blueMoveRouterPool_1.default(pool, network)
50
- : (0, types_1.isPoolObject)(pool)
51
- ? new aftermathRouterPool_1.default(pool, network)
52
- : undefined;
51
+ : (0, types_1.isAfSuiRouterPoolObject)(pool)
52
+ ? new afSuiRouterPool_1.default(pool, network)
53
+ : (0, types_1.isPoolObject)(pool)
54
+ ? new aftermathRouterPool_1.default(pool, network)
55
+ : undefined;
53
56
  if (!constructedPool)
54
57
  throw new Error(`Could not create router pool: ${JSON.stringify(pool)}`);
55
58
  return constructedPool;
@@ -24,6 +24,13 @@ export declare class RouterGraph {
24
24
  referrer?: SuiAddress;
25
25
  externalFee?: RouterExternalFee;
26
26
  }): RouterCompleteTradeRoute;
27
+ getCompleteRouteGivenAmountOut(inputs: {
28
+ coinInType: CoinType;
29
+ coinOutAmount: Balance;
30
+ coinOutType: CoinType;
31
+ referrer?: SuiAddress;
32
+ externalFee?: RouterExternalFee;
33
+ }): RouterCompleteTradeRoute;
27
34
  getCompleteRoutesGivenAmountIns(inputs: {
28
35
  coinInType: CoinType;
29
36
  coinInAmounts: Balance[];