@suilend/sdk 2.0.3 → 3.0.1

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 (73) hide show
  1. package/_generated/_dependencies/source/0x1/ascii/structs.d.ts +7 -11
  2. package/_generated/_dependencies/source/0x1/ascii/structs.js +6 -63
  3. package/_generated/_dependencies/source/0x1/option/structs.d.ts +3 -9
  4. package/_generated/_dependencies/source/0x1/option/structs.js +4 -42
  5. package/_generated/_dependencies/source/0x1/type-name/structs.d.ts +5 -7
  6. package/_generated/_dependencies/source/0x1/type-name/structs.js +3 -32
  7. package/_generated/_dependencies/source/0x2/bag/structs.d.ts +7 -9
  8. package/_generated/_dependencies/source/0x2/bag/structs.js +3 -31
  9. package/_generated/_dependencies/source/0x2/balance/structs.d.ts +7 -11
  10. package/_generated/_dependencies/source/0x2/balance/structs.js +7 -82
  11. package/_generated/_dependencies/source/0x2/object/structs.d.ts +8 -12
  12. package/_generated/_dependencies/source/0x2/object/structs.js +7 -61
  13. package/_generated/_dependencies/source/0x2/object-table/structs.d.ts +7 -9
  14. package/_generated/_dependencies/source/0x2/object-table/structs.js +4 -44
  15. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.d.ts +5 -7
  16. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.js +3 -31
  17. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.d.ts +11 -13
  18. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.js +3 -32
  19. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.d.ts +23 -25
  20. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.js +3 -32
  21. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.d.ts +4 -6
  22. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.js +3 -33
  23. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.d.ts +55 -59
  24. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.js +6 -64
  25. package/_generated/_framework/reified.d.ts +2 -4
  26. package/_generated/_framework/vector.d.ts +2 -12
  27. package/_generated/suilend/cell/structs.d.ts +4 -10
  28. package/_generated/suilend/cell/structs.js +4 -42
  29. package/_generated/suilend/decimal/structs.d.ts +4 -6
  30. package/_generated/suilend/decimal/structs.js +3 -32
  31. package/_generated/suilend/lending-market/structs.d.ts +152 -392
  32. package/_generated/suilend/lending-market/structs.js +50 -548
  33. package/_generated/suilend/liquidity-mining/structs.d.ts +50 -158
  34. package/_generated/suilend/liquidity-mining/structs.js +16 -169
  35. package/_generated/suilend/obligation/structs.d.ts +108 -148
  36. package/_generated/suilend/obligation/structs.js +23 -232
  37. package/_generated/suilend/rate-limiter/structs.d.ts +15 -19
  38. package/_generated/suilend/rate-limiter/structs.js +6 -64
  39. package/_generated/suilend/reserve/structs.d.ts +138 -362
  40. package/_generated/suilend/reserve/structs.js +29 -327
  41. package/_generated/suilend/reserve-config/structs.d.ts +33 -37
  42. package/_generated/suilend/reserve-config/structs.js +6 -65
  43. package/client.d.ts +8 -8
  44. package/client.js +55 -88
  45. package/lib/initialize.d.ts +29 -28
  46. package/lib/initialize.js +16 -12
  47. package/lib/liquidityMining.d.ts +3 -3
  48. package/lib/pythAdapter.d.ts +9 -0
  49. package/lib/pythAdapter.js +121 -0
  50. package/lib/strategyOwnerCap.d.ts +12 -7
  51. package/lib/strategyOwnerCap.js +159 -156
  52. package/margin/margin/admin_cap.d.ts +2 -2
  53. package/margin/margin/deps/std/type_name.d.ts +1 -1
  54. package/margin/margin/deps/sui/vec_set.d.ts +3 -5
  55. package/margin/margin/deps/suilend/lending_market.d.ts +2 -2
  56. package/margin/margin/market.d.ts +21 -38
  57. package/margin/margin/position.d.ts +47 -47
  58. package/margin/margin/router.d.ts +5 -5
  59. package/margin/margin/version.d.ts +1 -1
  60. package/package.json +1 -1
  61. package/parsers/lendingMarket.d.ts +6 -6
  62. package/parsers/obligation.d.ts +8 -8
  63. package/parsers/reserve.d.ts +8 -8
  64. package/strategies.d.ts +38 -21
  65. package/strategies.js +239 -79
  66. package/swap/quote.d.ts +1 -9
  67. package/swap/quote.js +1 -52
  68. package/swap/transaction.d.ts +2 -4
  69. package/swap/transaction.js +9 -25
  70. package/utils/events.d.ts +6 -5
  71. package/utils/events.js +11 -8
  72. package/utils/obligation.d.ts +6 -5
  73. package/utils/obligation.js +118 -117
package/lib/initialize.js CHANGED
@@ -16,7 +16,7 @@ import { parseLendingMarket, parseObligation } from "../parsers";
16
16
  import * as simulate from "../utils/simulate";
17
17
  import { WAD } from "./constants";
18
18
  import { getWorkingPythEndpoint } from "./pyth";
19
- import { STRATEGY_WRAPPER_PACKAGE_ID_V1, } from "./strategyOwnerCap";
19
+ import { STRATEGY_TYPE_INFO_MAP, STRATEGY_WRAPPER_PACKAGE_ID_V1, } from "./strategyOwnerCap";
20
20
  export const RESERVES_CUSTOM_ORDER = {
21
21
  [LENDING_MARKET_ID]: [
22
22
  // MAIN ASSETS
@@ -94,7 +94,7 @@ const TREATS_COINTYPE = "0x0dadb7fa2771c2952f96161fc1f0c105d1f22d53926b9ff2498a8
94
94
  export const NORMALIZED_MAYA_COINTYPE = normalizeStructTag(MAYA_COINTYPE);
95
95
  export const NORMALIZED_mPOINTS_COINTYPE = normalizeStructTag(mPOINTS_COINTYPE);
96
96
  export const NORMALIZED_TREATS_COINTYPE = normalizeStructTag(TREATS_COINTYPE);
97
- export const initializeSuilend = (suiClient, suilendClient, lendingMarketMetadata, fallbackPythEndpoint) => __awaiter(void 0, void 0, void 0, function* () {
97
+ export const initializeSuilend = (suiGrpcClient, suilendClient, lendingMarketMetadata, fallbackPythEndpoint) => __awaiter(void 0, void 0, void 0, function* () {
98
98
  const nowMs = Date.now();
99
99
  const nowS = Math.floor(nowMs / 1000);
100
100
  const interestCompoundedRawReserves = suilendClient.lendingMarket.reserves.map((r) => simulate.compoundReserveInterest(r, nowS));
@@ -222,7 +222,7 @@ export const initializeSuilendRewards = (reserveMap, activeRewardCoinTypes) => _
222
222
  }
223
223
  return { rewardPriceMap };
224
224
  });
225
- export const initializeObligations = (suiClient, suilendClient, refreshedRawReserves, reserveMap, address) => __awaiter(void 0, void 0, void 0, function* () {
225
+ export const initializeObligations = (suiGrpcClient, suilendClient, refreshedRawReserves, reserveMap, address) => __awaiter(void 0, void 0, void 0, function* () {
226
226
  if (!address)
227
227
  return {
228
228
  strategyOwnerCaps: [],
@@ -232,14 +232,18 @@ export const initializeObligations = (suiClient, suilendClient, refreshedRawRese
232
232
  };
233
233
  const [strategyOwnerCaps, obligationOwnerCaps] = yield Promise.all([
234
234
  (() => __awaiter(void 0, void 0, void 0, function* () {
235
- if (suilendClient.lendingMarket.id !== LENDING_MARKET_ID)
236
- return []; // Only main lending market has strategy owner caps
237
- const objects = yield getAllOwnedObjects(suiClient, address, {
238
- StructType: `${STRATEGY_WRAPPER_PACKAGE_ID_V1}::strategy_wrapper::StrategyOwnerCap<${suilendClient.lendingMarket.$typeArgs[0]}>`,
235
+ const hasStrategies = Object.values(STRATEGY_TYPE_INFO_MAP).some((info) => info.lendingMarketId === suilendClient.lendingMarket.id);
236
+ if (!hasStrategies)
237
+ return [];
238
+ const objects = yield getAllOwnedObjects(suiGrpcClient, address, `${STRATEGY_WRAPPER_PACKAGE_ID_V1}::strategy_wrapper::StrategyOwnerCap<${suilendClient.lendingMarket.$typeArgs[0]}>`);
239
+ const objectsWithJson = yield suiGrpcClient.getObjects({
240
+ objectIds: objects.map((o) => o.objectId),
241
+ include: { json: true },
239
242
  });
240
- return objects.map((obj) => {
241
- var _a;
242
- const fields = ((_a = obj.data) === null || _a === void 0 ? void 0 : _a.content).fields;
243
+ return objectsWithJson.objects
244
+ .filter((obj) => !(obj instanceof Error))
245
+ .map((obj) => {
246
+ const fields = obj.json.fields;
243
247
  const id = fields.id.id;
244
248
  const strategyType = fields.strategy_type;
245
249
  const obligationOwnerCapId = fields.inner_cap.fields.id.id;
@@ -253,12 +257,12 @@ export const initializeObligations = (suiClient, suilendClient, refreshedRawRese
253
257
  return result;
254
258
  });
255
259
  }))(),
256
- SuilendClient.getObligationOwnerCaps(address, suilendClient.lendingMarket.$typeArgs, suiClient),
260
+ SuilendClient.getObligationOwnerCaps(address, suilendClient.lendingMarket.$typeArgs, suiGrpcClient),
257
261
  ]);
258
262
  const obligations = (yield Promise.all([
259
263
  ...strategyOwnerCaps.map((soc) => soc.obligationId),
260
264
  ...obligationOwnerCaps.map((ownerCap) => ownerCap.obligationId),
261
- ].map((obligationId) => SuilendClient.getObligation(obligationId, suilendClient.lendingMarket.$typeArgs, suiClient))))
265
+ ].map((obligationId) => SuilendClient.getObligation(obligationId, suilendClient.lendingMarket.$typeArgs, suiGrpcClient))))
262
266
  .map((rawObligation) => simulate.refreshObligation(rawObligation, refreshedRawReserves))
263
267
  .map((refreshedObligation) => parseObligation(refreshedObligation, reserveMap, strategyOwnerCaps.some((soc) => soc.obligationId === refreshedObligation.id)))
264
268
  .sort((a, b) => +b.netValueUsd.minus(a.netValueUsd));
@@ -1,4 +1,4 @@
1
- import { CoinMetadata } from "@mysten/sui/jsonRpc";
1
+ import { SuiClientTypes } from "@mysten/sui/client";
2
2
  import BigNumber from "bignumber.js";
3
3
  import { ParsedObligation, ParsedReserve } from "../parsers";
4
4
  import { RewardsMap, Side } from "./types";
@@ -44,7 +44,7 @@ export type PerDayRewardSummary = Omit<RewardSummary, "stats"> & {
44
44
  };
45
45
  export declare const getDepositShare: (reserve: ParsedReserve, share: BigNumber) => BigNumber;
46
46
  export declare const getBorrowShare: (reserve: ParsedReserve, share: BigNumber) => BigNumber;
47
- export declare const formatRewards: (parsedReserveMap: Record<string, ParsedReserve>, coinMetadataMap: Record<string, CoinMetadata>, priceMap: Record<string, BigNumber | undefined>, obligations?: ParsedObligation[]) => RewardMap;
47
+ export declare const formatRewards: (parsedReserveMap: Record<string, ParsedReserve>, coinMetadataMap: Record<string, SuiClientTypes.CoinMetadata>, priceMap: Record<string, BigNumber | undefined>, obligations?: ParsedObligation[]) => RewardMap;
48
48
  export declare const getFilteredRewards: (rewards: RewardSummary[]) => RewardSummary[];
49
49
  export declare const getDedupedAprRewards: (filteredRewards: RewardSummary[]) => AprRewardSummary[];
50
50
  export declare const getDedupedPerDayRewards: (filteredRewards: RewardSummary[]) => PerDayRewardSummary[];
@@ -56,5 +56,5 @@ export declare const getTotalAprPercent: (side: Side, aprPercent: BigNumber, fil
56
56
  export declare const getNetAprPercent: (obligation: ParsedObligation, rewardMap: RewardMap, lstStatsMap: Record<string, {
57
57
  aprPercent: BigNumber;
58
58
  }>, sdeUsdAprPercent: BigNumber | undefined, eThirdAprPercent: BigNumber | undefined, eEarnAprPercent: BigNumber | undefined, noShares?: boolean) => BigNumber;
59
- export declare const getRewardsMap: (obligation: ParsedObligation | undefined, rewardMap: RewardMap, coinMetadataMap: Record<string, CoinMetadata>) => RewardsMap;
59
+ export declare const getRewardsMap: (obligation: ParsedObligation | undefined, rewardMap: RewardMap, coinMetadataMap: Record<string, SuiClientTypes.CoinMetadata>) => RewardsMap;
60
60
  export {};
@@ -0,0 +1,9 @@
1
+ import { SuiGrpcClient } from "@mysten/sui/grpc";
2
+ /**
3
+ * Adapter that wraps SuiGrpcClient to provide the legacy SuiClient (JSON-RPC)
4
+ * interface expected by third-party SDKs like @pythnetwork/pyth-sui-js and
5
+ * @flowx-finance/sdk.
6
+ *
7
+ * Maps old JSON-RPC method signatures to the new gRPC equivalents.
8
+ */
9
+ export declare function createJsonRpcAdapter(suiGrpcClient: SuiGrpcClient): any;
@@ -0,0 +1,121 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ /**
11
+ * Adapter that wraps SuiGrpcClient to provide the legacy SuiClient (JSON-RPC)
12
+ * interface expected by third-party SDKs like @pythnetwork/pyth-sui-js and
13
+ * @flowx-finance/sdk.
14
+ *
15
+ * Maps old JSON-RPC method signatures to the new gRPC equivalents.
16
+ */
17
+ export function createJsonRpcAdapter(suiGrpcClient) {
18
+ return {
19
+ getObject(_a) {
20
+ return __awaiter(this, arguments, void 0, function* ({ id }) {
21
+ var _b, _c;
22
+ const { object } = yield suiGrpcClient.getObject({
23
+ objectId: id,
24
+ include: { json: true },
25
+ });
26
+ return {
27
+ data: {
28
+ objectId: object.objectId,
29
+ type: object.type,
30
+ content: {
31
+ dataType: "moveObject",
32
+ fields: (_c = (_b = object.json) === null || _b === void 0 ? void 0 : _b.fields) !== null && _c !== void 0 ? _c : object.json,
33
+ type: object.type,
34
+ },
35
+ },
36
+ };
37
+ });
38
+ },
39
+ getCoins(_a) {
40
+ return __awaiter(this, arguments, void 0, function* ({ owner, coinType, cursor, }) {
41
+ const result = yield suiGrpcClient.listCoins({
42
+ owner,
43
+ coinType,
44
+ cursor,
45
+ });
46
+ return {
47
+ data: result.objects.map((coin) => ({
48
+ coinObjectId: coin.objectId,
49
+ version: coin.version,
50
+ digest: coin.digest,
51
+ balance: coin.balance,
52
+ coinType: coin.type,
53
+ })),
54
+ nextCursor: result.cursor,
55
+ hasNextPage: result.hasNextPage,
56
+ };
57
+ });
58
+ },
59
+ getDynamicFieldObject(_a) {
60
+ return __awaiter(this, arguments, void 0, function* ({ parentId, name, }) {
61
+ var _b, _c, _d, _e, _f, _g;
62
+ const { dynamicField } = yield suiGrpcClient.getDynamicField({
63
+ parentId,
64
+ name: {
65
+ type: name.type,
66
+ bcs: dynamicField_encodeName(name),
67
+ },
68
+ });
69
+ const childObject = dynamicField.$kind === "DynamicObject" && dynamicField.childId
70
+ ? yield suiGrpcClient
71
+ .getObject({
72
+ objectId: dynamicField.childId,
73
+ include: { json: true },
74
+ })
75
+ .then((r) => r.object)
76
+ : null;
77
+ const obj = childObject !== null && childObject !== void 0 ? childObject : dynamicField;
78
+ const type = (_c = (_b = childObject === null || childObject === void 0 ? void 0 : childObject.type) !== null && _b !== void 0 ? _b : dynamicField.valueType) !== null && _c !== void 0 ? _c : dynamicField.type;
79
+ const json = (_d = childObject === null || childObject === void 0 ? void 0 : childObject.json) !== null && _d !== void 0 ? _d : (_e = dynamicField.value) === null || _e === void 0 ? void 0 : _e.json;
80
+ return {
81
+ data: {
82
+ objectId: (_f = childObject === null || childObject === void 0 ? void 0 : childObject.objectId) !== null && _f !== void 0 ? _f : dynamicField.fieldId,
83
+ type,
84
+ content: {
85
+ dataType: "moveObject",
86
+ fields: (_g = json === null || json === void 0 ? void 0 : json.fields) !== null && _g !== void 0 ? _g : json,
87
+ type,
88
+ },
89
+ },
90
+ };
91
+ });
92
+ },
93
+ };
94
+ }
95
+ function dynamicField_encodeName(name) {
96
+ // The pyth client passes structured names like:
97
+ // { type: "vector<u8>", value: "price_info" }
98
+ // { type: "..::PriceIdentifier", value: { bytes: number[] } }
99
+ // The gRPC getDynamicField expects BCS-encoded name bytes.
100
+ // We use the bcs module to encode them.
101
+ const { bcs } = require("@mysten/sui/bcs");
102
+ if (name.type === "vector<u8>") {
103
+ const bytes = typeof name.value === "string"
104
+ ? new TextEncoder().encode(name.value)
105
+ : new Uint8Array(name.value);
106
+ return bcs.vector(bcs.u8()).serialize(Array.from(bytes)).toBytes();
107
+ }
108
+ if (name.value &&
109
+ typeof name.value === "object" &&
110
+ "bytes" in name.value &&
111
+ Array.isArray(name.value.bytes)) {
112
+ const struct = bcs.struct("PriceIdentifier", {
113
+ bytes: bcs.vector(bcs.u8()),
114
+ });
115
+ return struct.serialize(name.value).toBytes();
116
+ }
117
+ if (typeof name.value === "boolean") {
118
+ return bcs.bool().serialize(name.value).toBytes();
119
+ }
120
+ throw new Error(`jsonRpcAdapter: unsupported dynamic field name type "${name.type}"`);
121
+ }
@@ -1,22 +1,27 @@
1
1
  import { AggregatorClient as CetusSdk } from "@cetusprotocol/aggregator-sdk";
2
- import { Transaction, TransactionObjectInput, TransactionResult } from "@mysten/sui/transactions";
2
+ import { Transaction, TransactionObjectArgument, TransactionObjectInput, TransactionResult } from "@mysten/sui/transactions";
3
3
  import BigNumber from "bignumber.js";
4
4
  import { ParsedObligation, ParsedReserve } from "../parsers";
5
5
  import { RewardsMap, StrategyOwnerCap } from "./types";
6
6
  export declare const STRATEGY_WRAPPER_PACKAGE_ID_V1 = "0xba97dc73a07638d03d77ad2161484eb21db577edc9cadcd7035fef4b4f2f6fa1";
7
7
  export declare enum StrategyType {
8
8
  sSUI_SUI_LOOPING = "1",
9
- stratSUI_SUI_LOOPING = "2",
10
9
  USDC_sSUI_SUI_LOOPING = "3",
10
+ USDsui_USDC_LOOPING = "10",
11
+ eEARN_USDC_LOOPING = "11",
11
12
  AUSD_sSUI_SUI_LOOPING = "4",
12
13
  xBTC_sSUI_SUI_LOOPING = "100",// Used to be for Slush Strategies #0
13
14
  xBTC_suiWBTC_LOOPING = "101",// Used to be for Slush Strategies #1
14
15
  suiUSDT_sSUI_SUI_LOOPING = "5",
15
16
  AUSD_USDC_LOOPING = "6",
16
17
  AUSD_suiUSDT_LOOPING = "7",
17
- USDC_suiUSDT_LOOPING = "8"
18
+ USDC_suiUSDT_LOOPING = "8",
19
+ USDsui_sSUI_SUI_LOOPING = "9",
20
+ stratSUI_SUI_LOOPING = "2"
18
21
  }
19
22
  export declare const STRATEGY_TYPE_INFO_MAP: Record<StrategyType, {
23
+ lendingMarketId: string;
24
+ lendingMarketType: string;
20
25
  queryParam: string;
21
26
  header: {
22
27
  coinTypes: string[];
@@ -30,10 +35,10 @@ export declare const STRATEGY_TYPE_INFO_MAP: Record<StrategyType, {
30
35
  currencyCoinTypes: string[];
31
36
  defaultCurrencyCoinType: string;
32
37
  }>;
33
- export declare const strategyDeposit: (coin: TransactionObjectInput, coinType: string, strategyOwnerCap: TransactionObjectInput, reserveArrayIndex: bigint, transaction: Transaction) => TransactionResult;
34
- export declare const strategyBorrow: (coinType: string, strategyOwnerCap: TransactionObjectInput, reserveArrayIndex: bigint, value: bigint, transaction: Transaction) => TransactionResult;
35
- export declare const strategyWithdraw: (coinType: string, strategyOwnerCap: TransactionObjectInput, reserveArrayIndex: bigint, value: bigint, transaction: Transaction) => TransactionResult;
36
- export declare const strategyClaimRewardsAndSwapForCoinType: (address: string, cetusSdk: CetusSdk, cetusPartnerId: string, rewardsMap: RewardsMap, rewardPriceMap: Record<string, BigNumber | undefined>, depositReserve: ParsedReserve, strategyOwnerCap: TransactionObjectInput, isDepositing: boolean, transaction: Transaction) => Promise<void>;
38
+ export declare const strategyDeposit: (strategyType: StrategyType, coin: TransactionObjectInput, coinType: string, strategyOwnerCap: TransactionObjectInput, reserveArrayIndex: bigint, transaction: Transaction) => TransactionResult;
39
+ export declare const strategyBorrow: (strategyType: StrategyType, coinType: string, strategyOwnerCap: TransactionObjectInput, reserveArrayIndex: bigint, value: bigint, transaction: Transaction) => TransactionResult;
40
+ export declare const strategyWithdraw: (strategyType: StrategyType, coinType: string, strategyOwnerCap: TransactionObjectInput, reserveArrayIndex: bigint, value: bigint, transaction: Transaction) => TransactionResult;
41
+ export declare const strategyClaimRewardsAndMergeCoins: (strategyType: StrategyType, rewardsMap: RewardsMap, strategyOwnerCap: TransactionObjectInput, transaction: Transaction) => Record<string, TransactionObjectArgument>;
37
42
  export declare const strategySwapSomeDepositsForCoinType: (strategyType: StrategyType, cetusSdk: CetusSdk, cetusPartnerId: string, obligation: ParsedObligation, noSwapCoinTypes: string[], // coinTypes to not swap for depositReserve.coinType
38
43
  swapPercent: BigNumber, // percent of deposit to swap for depositReserve.coinType (0-100)
39
44
  depositReserve: ParsedReserve, strategyOwnerCap: TransactionObjectInput, transaction: Transaction) => Promise<void>;