@suilend/sdk 1.1.2 → 1.1.3

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 (120) hide show
  1. package/{mainnet/_generated → _generated}/suilend/index.d.ts +2 -1
  2. package/{mainnet/_generated → _generated}/suilend/index.js +5 -1
  3. package/api/index.d.ts +1 -0
  4. package/{mainnet/utils.js → api/index.js} +1 -1
  5. package/client.d.ts +64 -0
  6. package/{core/client.js → client.js} +105 -98
  7. package/{core/constants.d.ts → constants.d.ts} +0 -4
  8. package/{core/constants.js → constants.js} +1 -6
  9. package/index.d.ts +7 -1
  10. package/index.js +7 -1
  11. package/package.json +1 -1
  12. package/{mainnet/parsers → parsers}/index.d.ts +1 -0
  13. package/{mainnet/parsers → parsers}/index.js +1 -0
  14. package/{core/parsers → parsers}/lendingMarket.d.ts +38 -37
  15. package/{core/parsers → parsers}/lendingMarket.js +14 -4
  16. package/{core/parsers → parsers}/obligation.d.ts +60 -60
  17. package/{core/parsers → parsers}/obligation.js +1 -1
  18. package/{mainnet/parsers → parsers}/rateLimiter.d.ts +10 -9
  19. package/{core/parsers → parsers}/rateLimiter.js +3 -3
  20. package/{core/parsers → parsers}/reserve.d.ts +47 -46
  21. package/{core/parsers → parsers}/reserve.js +32 -8
  22. package/types.d.ts +200 -0
  23. package/types.js +15 -0
  24. package/utils/simulate.js +316 -0
  25. package/core/client.d.ts +0 -117
  26. package/core/parsers/deps.d.ts +0 -15
  27. package/core/parsers/deps.js +0 -2
  28. package/core/parsers/rateLimiter.d.ts +0 -19
  29. package/core/types.d.ts +0 -882
  30. package/core/types.js +0 -132
  31. package/core/utils/simulate.d.ts +0 -56
  32. package/core/utils/simulate.js +0 -312
  33. package/mainnet/api/events.d.ts +0 -1
  34. package/mainnet/api/events.js +0 -17
  35. package/mainnet/client.d.ts +0 -18
  36. package/mainnet/client.js +0 -110
  37. package/mainnet/constants.d.ts +0 -3
  38. package/mainnet/constants.js +0 -20
  39. package/mainnet/index.d.ts +0 -6
  40. package/mainnet/index.js +0 -22
  41. package/mainnet/parsers/apiReserveAssetDataEvent.d.ts +0 -1
  42. package/mainnet/parsers/apiReserveAssetDataEvent.js +0 -17
  43. package/mainnet/parsers/lendingMarket.d.ts +0 -127
  44. package/mainnet/parsers/lendingMarket.js +0 -41
  45. package/mainnet/parsers/obligation.d.ts +0 -10
  46. package/mainnet/parsers/obligation.js +0 -30
  47. package/mainnet/parsers/rateLimiter.js +0 -32
  48. package/mainnet/parsers/reserve.d.ts +0 -166
  49. package/mainnet/parsers/reserve.js +0 -38
  50. package/mainnet/types.d.ts +0 -1
  51. package/mainnet/types.js +0 -17
  52. package/mainnet/utils/events.d.ts +0 -1
  53. package/mainnet/utils/events.js +0 -17
  54. package/mainnet/utils/simulate.js +0 -78
  55. package/mainnet/utils.d.ts +0 -1
  56. /package/{mainnet/_generated → _generated}/_dependencies/source/0x1/ascii/structs.d.ts +0 -0
  57. /package/{mainnet/_generated → _generated}/_dependencies/source/0x1/ascii/structs.js +0 -0
  58. /package/{mainnet/_generated → _generated}/_dependencies/source/0x1/index.d.ts +0 -0
  59. /package/{mainnet/_generated → _generated}/_dependencies/source/0x1/index.js +0 -0
  60. /package/{mainnet/_generated → _generated}/_dependencies/source/0x1/option/structs.d.ts +0 -0
  61. /package/{mainnet/_generated → _generated}/_dependencies/source/0x1/option/structs.js +0 -0
  62. /package/{mainnet/_generated → _generated}/_dependencies/source/0x1/type-name/structs.d.ts +0 -0
  63. /package/{mainnet/_generated → _generated}/_dependencies/source/0x1/type-name/structs.js +0 -0
  64. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/bag/structs.d.ts +0 -0
  65. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/bag/structs.js +0 -0
  66. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/balance/structs.d.ts +0 -0
  67. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/balance/structs.js +0 -0
  68. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/index.d.ts +0 -0
  69. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/index.js +0 -0
  70. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/object/structs.d.ts +0 -0
  71. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/object/structs.js +0 -0
  72. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/object-table/structs.d.ts +0 -0
  73. /package/{mainnet/_generated → _generated}/_dependencies/source/0x2/object-table/structs.js +0 -0
  74. /package/{mainnet/_generated → _generated}/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.d.ts +0 -0
  75. /package/{mainnet/_generated → _generated}/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.js +0 -0
  76. /package/{mainnet/_generated → _generated}/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.d.ts +0 -0
  77. /package/{mainnet/_generated → _generated}/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.js +0 -0
  78. /package/{mainnet/_generated → _generated}/_framework/reified.d.ts +0 -0
  79. /package/{mainnet/_generated → _generated}/_framework/reified.js +0 -0
  80. /package/{mainnet/_generated → _generated}/_framework/util.d.ts +0 -0
  81. /package/{mainnet/_generated → _generated}/_framework/util.js +0 -0
  82. /package/{mainnet/_generated → _generated}/_framework/vector.d.ts +0 -0
  83. /package/{mainnet/_generated → _generated}/_framework/vector.js +0 -0
  84. /package/{mainnet/_generated → _generated}/suilend/cell/structs.d.ts +0 -0
  85. /package/{mainnet/_generated → _generated}/suilend/cell/structs.js +0 -0
  86. /package/{mainnet/_generated → _generated}/suilend/decimal/structs.d.ts +0 -0
  87. /package/{mainnet/_generated → _generated}/suilend/decimal/structs.js +0 -0
  88. /package/{mainnet/_generated → _generated}/suilend/lending-market/functions.d.ts +0 -0
  89. /package/{mainnet/_generated → _generated}/suilend/lending-market/functions.js +0 -0
  90. /package/{mainnet/_generated → _generated}/suilend/lending-market/structs.d.ts +0 -0
  91. /package/{mainnet/_generated → _generated}/suilend/lending-market/structs.js +0 -0
  92. /package/{mainnet/_generated → _generated}/suilend/lending-market-registry/functions.d.ts +0 -0
  93. /package/{mainnet/_generated → _generated}/suilend/lending-market-registry/functions.js +0 -0
  94. /package/{mainnet/_generated → _generated}/suilend/liquidity-mining/structs.d.ts +0 -0
  95. /package/{mainnet/_generated → _generated}/suilend/liquidity-mining/structs.js +0 -0
  96. /package/{mainnet/_generated → _generated}/suilend/obligation/structs.d.ts +0 -0
  97. /package/{mainnet/_generated → _generated}/suilend/obligation/structs.js +0 -0
  98. /package/{mainnet/_generated → _generated}/suilend/rate-limiter/functions.d.ts +0 -0
  99. /package/{mainnet/_generated → _generated}/suilend/rate-limiter/functions.js +0 -0
  100. /package/{mainnet/_generated → _generated}/suilend/rate-limiter/structs.d.ts +0 -0
  101. /package/{mainnet/_generated → _generated}/suilend/rate-limiter/structs.js +0 -0
  102. /package/{mainnet/_generated → _generated}/suilend/reserve/structs.d.ts +0 -0
  103. /package/{mainnet/_generated → _generated}/suilend/reserve/structs.js +0 -0
  104. /package/{mainnet/_generated → _generated}/suilend/reserve-config/functions.d.ts +0 -0
  105. /package/{mainnet/_generated → _generated}/suilend/reserve-config/functions.js +0 -0
  106. /package/{mainnet/_generated → _generated}/suilend/reserve-config/structs.d.ts +0 -0
  107. /package/{mainnet/_generated → _generated}/suilend/reserve-config/structs.js +0 -0
  108. /package/{core/api → api}/events.d.ts +0 -0
  109. /package/{core/api → api}/events.js +0 -0
  110. /package/{core/parsers → parsers}/apiReserveAssetDataEvent.d.ts +0 -0
  111. /package/{core/parsers → parsers}/apiReserveAssetDataEvent.js +0 -0
  112. /package/{core/utils → utils}/events.d.ts +0 -0
  113. /package/{core/utils → utils}/events.js +0 -0
  114. /package/{mainnet/utils → utils}/index.d.ts +0 -0
  115. /package/{mainnet/utils → utils}/index.js +0 -0
  116. /package/{mainnet/utils → utils}/obligation.d.ts +0 -0
  117. /package/{mainnet/utils → utils}/obligation.js +0 -0
  118. /package/{mainnet/utils → utils}/simulate.d.ts +0 -0
  119. /package/{core/utils.d.ts → utils.d.ts} +0 -0
  120. /package/{core/utils.js → utils.js} +0 -0
@@ -1,3 +1,4 @@
1
1
  export declare const PACKAGE_ID = "0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf";
2
- export declare const PUBLISHED_AT = "0xa5239cfdb84856fa466b7cec4da42954fc9901b2a48dd5320d670a1b21028207";
2
+ export declare var PUBLISHED_AT: string;
3
+ export declare function setPublishedAt(publishedAt: string): void;
3
4
  export declare const PKG_V1 = "0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf";
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PKG_V1 = exports.PUBLISHED_AT = exports.PACKAGE_ID = void 0;
3
+ exports.PKG_V1 = exports.setPublishedAt = exports.PUBLISHED_AT = exports.PACKAGE_ID = void 0;
4
4
  exports.PACKAGE_ID = "0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf";
5
5
  exports.PUBLISHED_AT = "0xa5239cfdb84856fa466b7cec4da42954fc9901b2a48dd5320d670a1b21028207";
6
+ function setPublishedAt(publishedAt) {
7
+ exports.PUBLISHED_AT = publishedAt;
8
+ }
9
+ exports.setPublishedAt = setPublishedAt;
6
10
  exports.PKG_V1 = "0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf";
package/api/index.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from "./events";
@@ -14,4 +14,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("../core/utils"), exports);
17
+ __exportStar(require("./events"), exports);
package/client.d.ts ADDED
@@ -0,0 +1,64 @@
1
+ import { SuiClient } from "@mysten/sui/client";
2
+ import { Transaction, TransactionObjectInput } from "@mysten/sui/transactions";
3
+ import { SuiPriceServiceConnection, SuiPythClient } from "@pythnetwork/pyth-sui-js";
4
+ import { LendingMarket, ObligationOwnerCap } from "./_generated/suilend/lending-market/structs";
5
+ import { Obligation } from "./_generated/suilend/obligation/structs";
6
+ import { NewConfigArgs as CreateRateLimiterConfigArgs } from "./_generated/suilend/rate-limiter/functions";
7
+ import { CreateReserveConfigArgs } from "./_generated/suilend/reserve-config/functions";
8
+ import { Side } from "./types";
9
+ export declare const LENDING_MARKET_ID = "0x84030d26d85eaa7035084a057f2f11f701b7e2e4eda87551becbc7c97505ece1";
10
+ export declare const LENDING_MARKET_TYPE = "0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf::suilend::MAIN_POOL";
11
+ export declare class SuilendClient {
12
+ lendingMarket: LendingMarket<string>;
13
+ client: SuiClient;
14
+ pythClient: SuiPythClient;
15
+ pythConnection: SuiPriceServiceConnection;
16
+ constructor(lendingMarket: LendingMarket<string>, client: SuiClient);
17
+ static initialize(lendingMarketId: string, lendingMarketType: string, client: SuiClient): Promise<SuilendClient>;
18
+ static initializeWithLendingMarket(lendingMarket: LendingMarket<string>, client: SuiClient): Promise<SuilendClient>;
19
+ static hasBetaPass(ownerId: string, client: SuiClient): Promise<boolean>;
20
+ static createNewLendingMarket(registryId: string, lendingMarketType: string, transaction: Transaction): Promise<{
21
+ $kind: "NestedResult";
22
+ NestedResult: [number, number];
23
+ }>;
24
+ static getObligationOwnerCaps(ownerId: string, lendingMarketTypeArgs: string[], client: SuiClient): Promise<ObligationOwnerCap<string>[]>;
25
+ static getObligation(obligationId: string, lendingMarketTypeArgs: string[], client: SuiClient): Promise<Obligation<string>>;
26
+ getObligation(obligationId: string): Promise<Obligation<string>>;
27
+ static getLendingMarketOwnerCapId(ownerId: string, lendingMarketTypeArgs: string[], client: SuiClient): Promise<string | null>;
28
+ getLendingMarketOwnerCapId(ownerId: string): Promise<string | null>;
29
+ createReserve(lendingMarketOwnerCapId: string, transaction: Transaction, pythPriceId: string, coinType: string, createReserveConfigArgs: CreateReserveConfigArgs): Promise<import("@mysten/sui/transactions").TransactionResult>;
30
+ addReward(ownerId: string, lendingMarketOwnerCapId: string, reserveArrayIndex: bigint, isDepositReward: boolean, rewardCoinType: string, rewardValue: string, startTimeMs: bigint, endTimeMs: bigint, transaction: Transaction): Promise<import("@mysten/sui/transactions").TransactionResult>;
31
+ cancelReward(lendingMarketOwnerCapId: string, reserveArrayIndex: bigint, isDepositReward: boolean, rewardIndex: bigint, rewardCoinType: string, transaction: Transaction): import("@mysten/sui/transactions").TransactionResult;
32
+ closeReward(lendingMarketOwnerCapId: string, reserveArrayIndex: bigint, isDepositReward: boolean, rewardIndex: bigint, rewardCoinType: string, transaction: Transaction): import("@mysten/sui/transactions").TransactionResult;
33
+ claimReward(obligationOwnerCapId: string, reserveArrayIndex: bigint, rewardIndex: bigint, rewardType: string, side: Side, transaction: Transaction): import("@mysten/sui/transactions").TransactionResult;
34
+ claimRewardsAndDeposit(obligationId: string, rewardReserveArrayIndex: bigint, rewardIndex: bigint, rewardType: string, side: Side, depositReserveArrayIndex: bigint, transaction: Transaction): import("@mysten/sui/transactions").TransactionResult;
35
+ claimRewardsToObligation(ownerId: string, rewards: Array<{
36
+ obligationOwnerCapId: string;
37
+ reserveArrayIndex: bigint;
38
+ rewardIndex: bigint;
39
+ rewardType: string;
40
+ side: Side;
41
+ }>, transaction: Transaction): Promise<void>;
42
+ findReserveArrayIndex(coinType: string): bigint;
43
+ updateReserveConfig(ownerId: string, lendingMarketOwnerCapId: string, transaction: Transaction, coinType: string, createReserveConfigArgs: CreateReserveConfigArgs): Promise<import("@mysten/sui/transactions").TransactionResult>;
44
+ updateRateLimiterConfig(lendingMarketOwnerCapId: string, transaction: Transaction, newRateLimiterConfigArgs: CreateRateLimiterConfigArgs): Promise<import("@mysten/sui/transactions").TransactionResult>;
45
+ changeReservePriceFeed(lendingMarketOwnerCapId: string, coinType: string, pythPriceId: string, transaction: Transaction): Promise<import("@mysten/sui/transactions").TransactionResult>;
46
+ createObligation(transaction: Transaction): import("@mysten/sui/transactions").TransactionResult;
47
+ refreshAll(transaction: Transaction, obligation: Obligation<string>, extraReserveArrayIndex?: bigint): Promise<void>;
48
+ refreshReservePrices(transaction: Transaction, priceInfoObjectId: string, reserveArrayIndex: bigint): Promise<void>;
49
+ deposit(sendCoin: TransactionObjectInput, coinType: string, obligationOwnerCap: TransactionObjectInput, transaction: Transaction): Promise<void>;
50
+ depositCoin(ownerId: string, sendCoin: TransactionObjectInput, coinType: string, transaction: Transaction, obligationOwnerCapId?: string): Promise<void>;
51
+ depositIntoObligation(ownerId: string, coinType: string, value: string, transaction: Transaction, obligationOwnerCapId?: string): Promise<void>;
52
+ depositLiquidityAndGetCTokens(ownerId: string, coinType: string, value: string, transaction: Transaction): Promise<void>;
53
+ withdraw(obligationOwnerCapId: string, obligationId: string, coinType: string, value: string, transaction: Transaction): Promise<import("@mysten/sui/transactions").TransactionResult>;
54
+ withdrawFromObligation(ownerId: string, obligationOwnerCapId: string, obligationId: string, coinType: string, value: string, transaction: Transaction): Promise<void>;
55
+ borrow(obligationOwnerCapId: string, obligationId: string, coinType: string, value: string, transaction: Transaction): Promise<import("@mysten/sui/transactions").TransactionResult>;
56
+ borrowFromObligation(ownerId: string, obligationOwnerCapId: string, obligationId: string, coinType: string, value: string, transaction: Transaction): Promise<void>;
57
+ repay(obligationId: string, coinType: string, coin: TransactionObjectInput, transaction: Transaction): import("@mysten/sui/transactions").TransactionResult;
58
+ repayIntoObligation(ownerId: string, obligationId: string, coinType: string, value: string, transaction: Transaction): Promise<import("@mysten/sui/transactions").TransactionResult>;
59
+ liquidateAndRedeem(transaction: Transaction, obligation: Obligation<string>, repayCoinType: string, withdrawCoinType: string, repayCoinId: TransactionObjectInput): Promise<import("@mysten/sui/transactions").TransactionResult>;
60
+ liquidate(transaction: Transaction, obligation: Obligation<string>, repayCoinType: string, withdrawCoinType: string, repayCoinId: TransactionObjectInput): Promise<import("@mysten/sui/transactions").TransactionResult>;
61
+ migrate(transaction: Transaction, lendingMarketOwnerCapId: string): import("@mysten/sui/transactions").TransactionResult;
62
+ claimFees(transaction: Transaction, coinType: string): import("@mysten/sui/transactions").TransactionResult;
63
+ redeemCtokensAndWithdrawLiquidity(ownerId: string, ctokenCoinTypes: string[], transaction: Transaction): Promise<void>;
64
+ }
@@ -9,60 +9,57 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.SuilendClient = void 0;
12
+ exports.SuilendClient = exports.LENDING_MARKET_TYPE = exports.LENDING_MARKET_ID = void 0;
13
+ const transactions_1 = require("@mysten/sui/transactions");
13
14
  const utils_1 = require("@mysten/sui/utils");
14
15
  const pyth_sui_js_1 = require("@pythnetwork/pyth-sui-js");
16
+ const reified_1 = require("./_generated/_framework/reified");
17
+ const suilend_1 = require("./_generated/suilend");
18
+ const suilend_2 = require("./_generated/suilend");
19
+ const functions_1 = require("./_generated/suilend/lending-market/functions");
20
+ const structs_1 = require("./_generated/suilend/lending-market/structs");
21
+ const functions_2 = require("./_generated/suilend/lending-market-registry/functions");
22
+ const structs_2 = require("./_generated/suilend/obligation/structs");
23
+ const functions_3 = require("./_generated/suilend/rate-limiter/functions");
24
+ const functions_4 = require("./_generated/suilend/reserve-config/functions");
15
25
  const types_1 = require("./types");
16
26
  const utils_2 = require("./utils");
17
27
  const WORMHOLE_STATE_ID = "0xaeab97f96cf9877fee2883315d459552b2b921edc16d7ceac6eab944dd88919c";
18
28
  const PYTH_STATE_ID = "0x1f9310238ee9298fb703c3419030b35b22bb1cc37113e3bb5007c99aec79e5b8";
29
+ const SUILEND_UPGRADE_CAP_ID = "0x3d4ef1859c3ee9fc72858f588b56a09da5466e64f8cc4e90a7b3b909fba8a7ae";
30
+ function getLatestPackageId(client, upgradeCapId) {
31
+ return __awaiter(this, void 0, void 0, function* () {
32
+ var _a;
33
+ const object = yield client.getObject({
34
+ id: upgradeCapId,
35
+ options: {
36
+ showContent: true,
37
+ },
38
+ });
39
+ return ((_a = object.data) === null || _a === void 0 ? void 0 : _a.content).fields.package;
40
+ });
41
+ }
19
42
  const SUI_COINTYPE = "0x2::sui::SUI";
43
+ exports.LENDING_MARKET_ID = "0x84030d26d85eaa7035084a057f2f11f701b7e2e4eda87551becbc7c97505ece1";
44
+ exports.LENDING_MARKET_TYPE = "0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf::suilend::MAIN_POOL";
20
45
  class SuilendClient {
21
- constructor(lendingMarket, client, { phantom, PACKAGE_ID, PUBLISHED_AT, LendingMarket, Obligation, ObligationOwnerCap, createLendingMarket, createReserveConfig, updateReserveConfig, addReserve, addPoolReward, cancelPoolReward, closePoolReward, claimRewards, claimRewardsAndDeposit, createRateLimiterConfig, updateRateLimiterConfig, refreshReservePrice, depositLiquidityAndMintCtokens, depositCtokensIntoObligation, withdrawCtokens, borrow, repay, liquidate, migrate, claimFees, redeemCtokensAndWithdrawLiquidity, changeReservePriceFeed, }) {
46
+ constructor(lendingMarket, client) {
22
47
  this.lendingMarket = lendingMarket;
23
48
  this.client = client;
24
49
  this.pythClient = new pyth_sui_js_1.SuiPythClient(client, PYTH_STATE_ID, WORMHOLE_STATE_ID);
25
50
  this.pythConnection = new pyth_sui_js_1.SuiPriceServiceConnection("https://hermes.pyth.network");
26
- this.phantom = phantom;
27
- this.PACKAGE_ID = PACKAGE_ID;
28
- this.PUBLISHED_AT = PUBLISHED_AT;
29
- this.LendingMarket = LendingMarket;
30
- this.Obligation = Obligation;
31
- this.ObligationOwnerCap = ObligationOwnerCap;
32
- this.createLendingMarketFunction = createLendingMarket;
33
- this.createReserveConfigFunction = createReserveConfig;
34
- this.updateReserveConfigFunction = updateReserveConfig;
35
- this.addReserveFunction = addReserve;
36
- this.addPoolRewardFunction = addPoolReward;
37
- this.cancelPoolRewardFunction = cancelPoolReward;
38
- this.closePoolRewardFunction = closePoolReward;
39
- this.claimRewardsFunction = claimRewards;
40
- this.claimRewardsAndDepositFunction = claimRewardsAndDeposit;
41
- this.createRateLimiterConfigFunction = createRateLimiterConfig;
42
- this.updateRateLimiterConfigFunction = updateRateLimiterConfig;
43
- this.refreshReservePriceFunction = refreshReservePrice;
44
- this.depositLiquidityAndMintCtokensFunction =
45
- depositLiquidityAndMintCtokens;
46
- this.depositCtokensIntoObligationFunction = depositCtokensIntoObligation;
47
- this.withdrawCtokensFunction = withdrawCtokens;
48
- this.borrowFunction = borrow;
49
- this.repayFunction = repay;
50
- this.liquidateFunction = liquidate;
51
- this.migrateFunction = migrate;
52
- this.claimFeesFunction = claimFees;
53
- this.redeemCtokensAndWithdrawLiquidityFunction =
54
- redeemCtokensAndWithdrawLiquidity;
55
- this.changeReservePriceFeedFunction = changeReservePriceFeed;
56
- }
57
- static initialize(lendingMarketId, lendingMarketType, client, deps) {
51
+ }
52
+ static initialize(lendingMarketId, lendingMarketType, client) {
58
53
  return __awaiter(this, void 0, void 0, function* () {
59
- const lendingMarket = yield deps.LendingMarket.fetch(client, deps.phantom(lendingMarketType), lendingMarketId);
60
- return new SuilendClient(lendingMarket, client, deps);
54
+ const lendingMarket = yield structs_1.LendingMarket.fetch(client, (0, reified_1.phantom)(lendingMarketType), lendingMarketId);
55
+ const latestPackageId = yield getLatestPackageId(client, SUILEND_UPGRADE_CAP_ID);
56
+ (0, suilend_1.setPublishedAt)(latestPackageId);
57
+ return new SuilendClient(lendingMarket, client);
61
58
  });
62
59
  }
63
- static initializeWithLendingMarket(lendingMarket, client, deps) {
60
+ static initializeWithLendingMarket(lendingMarket, client) {
64
61
  return __awaiter(this, void 0, void 0, function* () {
65
- return new SuilendClient(lendingMarket, client, deps);
62
+ return new SuilendClient(lendingMarket, client);
66
63
  });
67
64
  }
68
65
  static hasBetaPass(ownerId, client) {
@@ -76,23 +73,23 @@ class SuilendClient {
76
73
  return objs.data.length > 0;
77
74
  });
78
75
  }
79
- static createNewLendingMarket(registryId_1, lendingMarketType_1, transaction_1, _a) {
80
- return __awaiter(this, arguments, void 0, function* (registryId, lendingMarketType, transaction, { LendingMarket, createLendingMarket, }) {
81
- const [ownerCap, lendingMarket] = createLendingMarket(transaction, lendingMarketType, transaction.object(registryId));
76
+ static createNewLendingMarket(registryId, lendingMarketType, transaction) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ const [ownerCap, lendingMarket] = (0, functions_2.createLendingMarket)(transaction, lendingMarketType, transaction.object(registryId));
82
79
  transaction.moveCall({
83
80
  target: `0x2::transfer::public_share_object`,
84
- typeArguments: [`${LendingMarket.$typeName}<${lendingMarketType}>}`],
81
+ typeArguments: [`${structs_1.LendingMarket.$typeName}<${lendingMarketType}>}`],
85
82
  arguments: [lendingMarket],
86
83
  });
87
84
  return ownerCap;
88
85
  });
89
86
  }
90
- static getObligationOwnerCaps(ownerId_1, lendingMarketTypeArgs_1, client_1, _a) {
91
- return __awaiter(this, arguments, void 0, function* (ownerId, lendingMarketTypeArgs, client, { phantom, PACKAGE_ID, ObligationOwnerCap, }) {
87
+ static getObligationOwnerCaps(ownerId, lendingMarketTypeArgs, client) {
88
+ return __awaiter(this, void 0, void 0, function* () {
92
89
  const objs = yield client.getOwnedObjects({
93
90
  owner: ownerId,
94
91
  filter: {
95
- StructType: `${PACKAGE_ID}::lending_market::ObligationOwnerCap<${lendingMarketTypeArgs[0]}>`,
92
+ StructType: `${suilend_2.PACKAGE_ID}::lending_market::ObligationOwnerCap<${lendingMarketTypeArgs[0]}>`,
96
93
  },
97
94
  });
98
95
  if (objs.data.length > 0) {
@@ -108,7 +105,7 @@ class SuilendClient {
108
105
  var _a, _b, _c, _d;
109
106
  if (((_b = (_a = obj.data) === null || _a === void 0 ? void 0 : _a.bcs) === null || _b === void 0 ? void 0 : _b.dataType) !== "moveObject")
110
107
  throw new Error("Error: invalid data type");
111
- obligationOwnerCaps.push(ObligationOwnerCap.fromBcs(phantom(lendingMarketTypeArgs[0]), (0, utils_1.fromBase64)((_d = (_c = obj.data) === null || _c === void 0 ? void 0 : _c.bcs) === null || _d === void 0 ? void 0 : _d.bcsBytes)));
108
+ obligationOwnerCaps.push(structs_1.ObligationOwnerCap.fromBcs((0, reified_1.phantom)(lendingMarketTypeArgs[0]), (0, utils_1.fromBase64)((_d = (_c = obj.data) === null || _c === void 0 ? void 0 : _c.bcs) === null || _d === void 0 ? void 0 : _d.bcsBytes)));
112
109
  });
113
110
  return obligationOwnerCaps;
114
111
  }
@@ -117,46 +114,46 @@ class SuilendClient {
117
114
  }
118
115
  });
119
116
  }
120
- static getObligation(obligationId_1, lendingMarketTypeArgs_1, client_1, _a) {
121
- return __awaiter(this, arguments, void 0, function* (obligationId, lendingMarketTypeArgs, client, { phantom, Obligation }) {
122
- var _b, _c;
117
+ static getObligation(obligationId, lendingMarketTypeArgs, client) {
118
+ return __awaiter(this, void 0, void 0, function* () {
119
+ var _a, _b;
123
120
  const obligationData = yield client.getObject({
124
121
  id: obligationId,
125
122
  options: { showBcs: true },
126
123
  });
127
- if (((_c = (_b = obligationData.data) === null || _b === void 0 ? void 0 : _b.bcs) === null || _c === void 0 ? void 0 : _c.dataType) !== "moveObject") {
124
+ if (((_b = (_a = obligationData.data) === null || _a === void 0 ? void 0 : _a.bcs) === null || _b === void 0 ? void 0 : _b.dataType) !== "moveObject") {
128
125
  throw new Error("Error: invalid data type");
129
126
  }
130
- const obligation = Obligation.fromBcs(phantom(lendingMarketTypeArgs[0]), (0, utils_1.fromBase64)(obligationData.data.bcs.bcsBytes));
127
+ const obligation = structs_2.Obligation.fromBcs((0, reified_1.phantom)(lendingMarketTypeArgs[0]), (0, utils_1.fromBase64)(obligationData.data.bcs.bcsBytes));
131
128
  return obligation;
132
129
  });
133
130
  }
134
131
  getObligation(obligationId) {
135
- return SuilendClient.getObligation(obligationId, this.lendingMarket.$typeArgs, this.client, { phantom: this.phantom, Obligation: this.Obligation });
132
+ return SuilendClient.getObligation(obligationId, this.lendingMarket.$typeArgs, this.client);
136
133
  }
137
- static getLendingMarketOwnerCapId(ownerId_1, lendingMarketTypeArgs_1, client_1, _a) {
138
- return __awaiter(this, arguments, void 0, function* (ownerId, lendingMarketTypeArgs, client, { PACKAGE_ID }) {
139
- var _b;
134
+ static getLendingMarketOwnerCapId(ownerId, lendingMarketTypeArgs, client) {
135
+ return __awaiter(this, void 0, void 0, function* () {
136
+ var _a;
140
137
  const objs = yield client.getOwnedObjects({
141
138
  owner: ownerId,
142
139
  filter: {
143
- StructType: `${PACKAGE_ID}::lending_market::LendingMarketOwnerCap<${lendingMarketTypeArgs[0]}>`,
140
+ StructType: `${suilend_2.PACKAGE_ID}::lending_market::LendingMarketOwnerCap<${lendingMarketTypeArgs[0]}>`,
144
141
  },
145
142
  });
146
143
  if (objs.data.length > 0)
147
- return (_b = objs.data[0].data) === null || _b === void 0 ? void 0 : _b.objectId;
144
+ return (_a = objs.data[0].data) === null || _a === void 0 ? void 0 : _a.objectId;
148
145
  else
149
146
  return null;
150
147
  });
151
148
  }
152
149
  getLendingMarketOwnerCapId(ownerId) {
153
150
  return __awaiter(this, void 0, void 0, function* () {
154
- return SuilendClient.getLendingMarketOwnerCapId(ownerId, this.lendingMarket.$typeArgs, this.client, { PACKAGE_ID: this.PACKAGE_ID });
151
+ return SuilendClient.getLendingMarketOwnerCapId(ownerId, this.lendingMarket.$typeArgs, this.client);
155
152
  });
156
153
  }
157
154
  createReserve(lendingMarketOwnerCapId, transaction, pythPriceId, coinType, createReserveConfigArgs) {
158
155
  return __awaiter(this, void 0, void 0, function* () {
159
- const [config] = this.createReserveConfigFunction(transaction, createReserveConfigArgs);
156
+ const [config] = (0, functions_4.createReserveConfig)(transaction, createReserveConfigArgs);
160
157
  const priceUpdateData = yield this.pythConnection.getPriceFeedsUpdateData([
161
158
  pythPriceId,
162
159
  ]);
@@ -167,7 +164,7 @@ class SuilendClient {
167
164
  if (coin_metadata === null) {
168
165
  throw new Error("Error: coin metadata not found");
169
166
  }
170
- return this.addReserveFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
167
+ return (0, functions_1.addReserve)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
171
168
  lendingMarketOwnerCap: lendingMarketOwnerCapId,
172
169
  lendingMarket: this.lendingMarket.id,
173
170
  priceInfo: priceInfoObjectIds[0],
@@ -189,20 +186,20 @@ class SuilendClient {
189
186
  transaction.mergeCoins(transaction.object(mergeCoin.coinObjectId), coins.map((c) => transaction.object(c.coinObjectId)).slice(1));
190
187
  }
191
188
  const [rewardCoin] = transaction.splitCoins(isSui ? transaction.gas : transaction.object(mergeCoin.coinObjectId), [rewardValue]);
192
- return this.addPoolRewardFunction(transaction, [this.lendingMarket.$typeArgs[0], rewardCoinType], {
193
- lendingMarketOwnerCap: lendingMarketOwnerCapId,
194
- lendingMarket: this.lendingMarket.id,
195
- reserveArrayIndex,
196
- isDepositReward,
197
- rewards: rewardCoin,
198
- startTimeMs,
199
- endTimeMs,
200
- clock: utils_1.SUI_CLOCK_OBJECT_ID,
189
+ return (0, functions_1.addPoolReward)(transaction, [this.lendingMarket.$typeArgs[0], rewardCoinType], {
190
+ lendingMarketOwnerCap: transaction.object(lendingMarketOwnerCapId),
191
+ lendingMarket: transaction.object(this.lendingMarket.id),
192
+ reserveArrayIndex: transaction.pure.u64(reserveArrayIndex),
193
+ isDepositReward: transaction.pure.bool(isDepositReward),
194
+ rewards: transaction.object(rewardCoin),
195
+ startTimeMs: transaction.pure.u64(startTimeMs),
196
+ endTimeMs: transaction.pure.u64(endTimeMs),
197
+ clock: transaction.object(utils_1.SUI_CLOCK_OBJECT_ID),
201
198
  });
202
199
  });
203
200
  }
204
201
  cancelReward(lendingMarketOwnerCapId, reserveArrayIndex, isDepositReward, rewardIndex, rewardCoinType, transaction) {
205
- return this.cancelPoolRewardFunction(transaction, [this.lendingMarket.$typeArgs[0], rewardCoinType], {
202
+ return (0, functions_1.cancelPoolReward)(transaction, [this.lendingMarket.$typeArgs[0], rewardCoinType], {
206
203
  lendingMarketOwnerCap: lendingMarketOwnerCapId,
207
204
  lendingMarket: this.lendingMarket.id,
208
205
  reserveArrayIndex,
@@ -212,7 +209,7 @@ class SuilendClient {
212
209
  });
213
210
  }
214
211
  closeReward(lendingMarketOwnerCapId, reserveArrayIndex, isDepositReward, rewardIndex, rewardCoinType, transaction) {
215
- return this.closePoolRewardFunction(transaction, [this.lendingMarket.$typeArgs[0], rewardCoinType], {
212
+ return (0, functions_1.closePoolReward)(transaction, [this.lendingMarket.$typeArgs[0], rewardCoinType], {
216
213
  lendingMarketOwnerCap: lendingMarketOwnerCapId,
217
214
  lendingMarket: this.lendingMarket.id,
218
215
  reserveArrayIndex,
@@ -222,7 +219,7 @@ class SuilendClient {
222
219
  });
223
220
  }
224
221
  claimReward(obligationOwnerCapId, reserveArrayIndex, rewardIndex, rewardType, side, transaction) {
225
- return this.claimRewardsFunction(transaction, [this.lendingMarket.$typeArgs[0], rewardType], {
222
+ return (0, functions_1.claimRewards)(transaction, [this.lendingMarket.$typeArgs[0], rewardType], {
226
223
  lendingMarket: transaction.object(this.lendingMarket.id),
227
224
  cap: transaction.object(obligationOwnerCapId),
228
225
  clock: utils_1.SUI_CLOCK_OBJECT_ID,
@@ -232,7 +229,7 @@ class SuilendClient {
232
229
  });
233
230
  }
234
231
  claimRewardsAndDeposit(obligationId, rewardReserveArrayIndex, rewardIndex, rewardType, side, depositReserveArrayIndex, transaction) {
235
- return this.claimRewardsAndDepositFunction(transaction, [this.lendingMarket.$typeArgs[0], rewardType], {
232
+ return (0, functions_1.claimRewardsAndDeposit)(transaction, [this.lendingMarket.$typeArgs[0], rewardType], {
236
233
  lendingMarket: transaction.object(this.lendingMarket.id),
237
234
  obligationId,
238
235
  clock: transaction.object(utils_1.SUI_CLOCK_OBJECT_ID),
@@ -267,8 +264,8 @@ class SuilendClient {
267
264
  }
268
265
  updateReserveConfig(ownerId, lendingMarketOwnerCapId, transaction, coinType, createReserveConfigArgs) {
269
266
  return __awaiter(this, void 0, void 0, function* () {
270
- const [config] = this.createReserveConfigFunction(transaction, createReserveConfigArgs);
271
- return this.updateReserveConfigFunction(transaction, [...this.lendingMarket.$typeArgs, coinType], {
267
+ const [config] = (0, functions_4.createReserveConfig)(transaction, createReserveConfigArgs);
268
+ return (0, functions_1.updateReserveConfig)(transaction, [...this.lendingMarket.$typeArgs, coinType], {
272
269
  lendingMarketOwnerCap: lendingMarketOwnerCapId,
273
270
  lendingMarket: this.lendingMarket.id,
274
271
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
@@ -278,8 +275,8 @@ class SuilendClient {
278
275
  }
279
276
  updateRateLimiterConfig(lendingMarketOwnerCapId, transaction, newRateLimiterConfigArgs) {
280
277
  return __awaiter(this, void 0, void 0, function* () {
281
- const [config] = this.createRateLimiterConfigFunction(transaction, newRateLimiterConfigArgs);
282
- return this.updateRateLimiterConfigFunction(transaction, this.lendingMarket.$typeArgs[0], {
278
+ const [config] = (0, functions_3.newConfig)(transaction, newRateLimiterConfigArgs);
279
+ return (0, functions_1.updateRateLimiterConfig)(transaction, this.lendingMarket.$typeArgs[0], {
283
280
  lendingMarketOwnerCap: lendingMarketOwnerCapId,
284
281
  lendingMarket: this.lendingMarket.id,
285
282
  clock: utils_1.SUI_CLOCK_OBJECT_ID,
@@ -293,7 +290,7 @@ class SuilendClient {
293
290
  pythPriceId,
294
291
  ]);
295
292
  const priceInfoObjectIds = yield this.pythClient.updatePriceFeeds(transaction, priceUpdateData, [pythPriceId]);
296
- return this.changeReservePriceFeedFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
293
+ return (0, functions_1.changeReservePriceFeed)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
297
294
  lendingMarketOwnerCap: lendingMarketOwnerCapId,
298
295
  lendingMarket: this.lendingMarket.id,
299
296
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
@@ -304,7 +301,7 @@ class SuilendClient {
304
301
  }
305
302
  createObligation(transaction) {
306
303
  return transaction.moveCall({
307
- target: `${this.PUBLISHED_AT}::lending_market::create_obligation`,
304
+ target: `${suilend_2.PUBLISHED_AT}::lending_market::create_obligation`,
308
305
  arguments: [transaction.object(this.lendingMarket.id)],
309
306
  typeArguments: this.lendingMarket.$typeArgs,
310
307
  });
@@ -313,23 +310,33 @@ class SuilendClient {
313
310
  return __awaiter(this, void 0, void 0, function* () {
314
311
  const reserveArrayIndexToPriceId = new Map();
315
312
  obligation.deposits.forEach((deposit) => {
316
- const reserve = this.lendingMarket.reserves[deposit.reserveArrayIndex];
313
+ const reserve = this.lendingMarket.reserves[Number(deposit.reserveArrayIndex)];
317
314
  reserveArrayIndexToPriceId.set(deposit.reserveArrayIndex, (0, utils_1.toHex)(new Uint8Array(reserve.priceIdentifier.bytes)));
318
315
  });
319
316
  obligation.borrows.forEach((borrow) => {
320
- const reserve = this.lendingMarket.reserves[borrow.reserveArrayIndex];
317
+ const reserve = this.lendingMarket.reserves[Number(borrow.reserveArrayIndex)];
321
318
  reserveArrayIndexToPriceId.set(borrow.reserveArrayIndex, (0, utils_1.toHex)(new Uint8Array(reserve.priceIdentifier.bytes)));
322
319
  });
323
320
  if (extraReserveArrayIndex != undefined &&
324
321
  extraReserveArrayIndex >= 0 &&
325
322
  extraReserveArrayIndex < this.lendingMarket.reserves.length) {
326
- const reserve = this.lendingMarket.reserves[extraReserveArrayIndex];
323
+ const reserve = this.lendingMarket.reserves[Number(extraReserveArrayIndex)];
327
324
  reserveArrayIndexToPriceId.set(extraReserveArrayIndex, (0, utils_1.toHex)(new Uint8Array(reserve.priceIdentifier.bytes)));
328
325
  }
329
326
  const tuples = Array.from(reserveArrayIndexToPriceId.entries()).sort();
330
327
  const priceIds = Array.from(tuples.map((tuple) => tuple[1]));
331
328
  const priceUpdateData = yield this.pythConnection.getPriceFeedsUpdateData(priceIds);
332
- const priceInfoObjectIds = yield this.pythClient.updatePriceFeeds(transaction, priceUpdateData, priceIds);
329
+ const numUniqueAssets = obligation.deposits.length +
330
+ obligation.borrows.length +
331
+ (extraReserveArrayIndex != null ? 1 : 0);
332
+ let priceInfoObjectIds = [];
333
+ if (numUniqueAssets >= 3) {
334
+ const tx = new transactions_1.Transaction(); // hack
335
+ priceInfoObjectIds = yield this.pythClient.updatePriceFeeds(tx, priceUpdateData, priceIds);
336
+ }
337
+ else {
338
+ priceInfoObjectIds = yield this.pythClient.updatePriceFeeds(transaction, priceUpdateData, priceIds);
339
+ }
333
340
  for (let i = 0; i < tuples.length; i++) {
334
341
  this.refreshReservePrices(transaction, priceInfoObjectIds[i], tuples[i][0]);
335
342
  }
@@ -340,7 +347,7 @@ class SuilendClient {
340
347
  if (priceInfoObjectId == null) {
341
348
  return;
342
349
  }
343
- this.refreshReservePriceFunction(transaction, this.lendingMarket.$typeArgs[0], {
350
+ (0, functions_1.refreshReservePrice)(transaction, this.lendingMarket.$typeArgs[0], {
344
351
  lendingMarket: this.lendingMarket.id,
345
352
  reserveArrayIndex,
346
353
  clock: utils_1.SUI_CLOCK_OBJECT_ID,
@@ -350,13 +357,13 @@ class SuilendClient {
350
357
  }
351
358
  deposit(sendCoin, coinType, obligationOwnerCap, transaction) {
352
359
  return __awaiter(this, void 0, void 0, function* () {
353
- const [ctokens] = this.depositLiquidityAndMintCtokensFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
360
+ const [ctokens] = (0, functions_1.depositLiquidityAndMintCtokens)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
354
361
  lendingMarket: this.lendingMarket.id,
355
362
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
356
363
  clock: utils_1.SUI_CLOCK_OBJECT_ID,
357
364
  deposit: sendCoin,
358
365
  });
359
- this.depositCtokensIntoObligationFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
366
+ (0, functions_1.depositCtokensIntoObligation)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
360
367
  lendingMarket: this.lendingMarket.id,
361
368
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
362
369
  obligationOwnerCap,
@@ -404,7 +411,7 @@ class SuilendClient {
404
411
  transaction.mergeCoins(transaction.object(mergeCoin.coinObjectId), coins.map((c) => transaction.object(c.coinObjectId)).slice(1));
405
412
  }
406
413
  const [sendCoin] = transaction.splitCoins(isSui ? transaction.gas : transaction.object(mergeCoin.coinObjectId), [value]);
407
- const [ctokens] = this.depositLiquidityAndMintCtokensFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
414
+ const [ctokens] = (0, functions_1.depositLiquidityAndMintCtokens)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
408
415
  lendingMarket: this.lendingMarket.id,
409
416
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
410
417
  clock: utils_1.SUI_CLOCK_OBJECT_ID,
@@ -419,7 +426,7 @@ class SuilendClient {
419
426
  if (!obligation)
420
427
  throw new Error("Error: no obligation");
421
428
  yield this.refreshAll(transaction, obligation);
422
- const [ctokens] = this.withdrawCtokensFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
429
+ const [ctokens] = (0, functions_1.withdrawCtokens)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
423
430
  lendingMarket: this.lendingMarket.id,
424
431
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
425
432
  obligationOwnerCap: obligationOwnerCapId,
@@ -429,12 +436,12 @@ class SuilendClient {
429
436
  const [exemption] = transaction.moveCall({
430
437
  target: `0x1::option::none`,
431
438
  typeArguments: [
432
- `${this.PACKAGE_ID}::lending_market::RateLimiterExemption<${this.lendingMarket.$typeArgs[0]}, ${coinType}>`,
439
+ `${suilend_2.PACKAGE_ID}::lending_market::RateLimiterExemption<${this.lendingMarket.$typeArgs[0]}, ${coinType}>`,
433
440
  ],
434
441
  arguments: [],
435
442
  });
436
443
  return transaction.moveCall({
437
- target: `${this.PUBLISHED_AT}::lending_market::redeem_ctokens_and_withdraw_liquidity`,
444
+ target: `${suilend_2.PUBLISHED_AT}::lending_market::redeem_ctokens_and_withdraw_liquidity`,
438
445
  typeArguments: [this.lendingMarket.$typeArgs[0], coinType],
439
446
  arguments: [
440
447
  transaction.object(this.lendingMarket.id),
@@ -458,7 +465,7 @@ class SuilendClient {
458
465
  if (!obligation)
459
466
  throw new Error("Error: no obligation");
460
467
  yield this.refreshAll(transaction, obligation, this.findReserveArrayIndex(coinType));
461
- const result = this.borrowFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
468
+ const result = (0, functions_1.borrow)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
462
469
  lendingMarket: this.lendingMarket.id,
463
470
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
464
471
  obligationOwnerCap: obligationOwnerCapId,
@@ -475,7 +482,7 @@ class SuilendClient {
475
482
  });
476
483
  }
477
484
  repay(obligationId, coinType, coin, transaction) {
478
- return this.repayFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
485
+ return (0, functions_1.repay)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
479
486
  lendingMarket: this.lendingMarket.id,
480
487
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
481
488
  obligationId: obligationId,
@@ -506,12 +513,12 @@ class SuilendClient {
506
513
  const [optionalExemption] = transaction.moveCall({
507
514
  target: `0x1::option::some`,
508
515
  typeArguments: [
509
- `${this.PUBLISHED_AT}::lending_market::RateLimiterExemption<${this.lendingMarket.$typeArgs[0]}, ${withdrawCoinType}>`,
516
+ `${suilend_2.PUBLISHED_AT}::lending_market::RateLimiterExemption<${this.lendingMarket.$typeArgs[0]}, ${withdrawCoinType}>`,
510
517
  ],
511
518
  arguments: [exemption],
512
519
  });
513
520
  return transaction.moveCall({
514
- target: `${this.PUBLISHED_AT}::lending_market::redeem_ctokens_and_withdraw_liquidity`,
521
+ target: `${suilend_2.PUBLISHED_AT}::lending_market::redeem_ctokens_and_withdraw_liquidity`,
515
522
  typeArguments: [this.lendingMarket.$typeArgs[0], withdrawCoinType],
516
523
  arguments: [
517
524
  transaction.object(this.lendingMarket.id),
@@ -526,7 +533,7 @@ class SuilendClient {
526
533
  liquidate(transaction, obligation, repayCoinType, withdrawCoinType, repayCoinId) {
527
534
  return __awaiter(this, void 0, void 0, function* () {
528
535
  yield this.refreshAll(transaction, obligation);
529
- return this.liquidateFunction(transaction, [this.lendingMarket.$typeArgs[0], repayCoinType, withdrawCoinType], {
536
+ return (0, functions_1.liquidate)(transaction, [this.lendingMarket.$typeArgs[0], repayCoinType, withdrawCoinType], {
530
537
  lendingMarket: this.lendingMarket.id,
531
538
  obligationId: obligation.id,
532
539
  repayReserveArrayIndex: this.findReserveArrayIndex(repayCoinType),
@@ -537,13 +544,13 @@ class SuilendClient {
537
544
  });
538
545
  }
539
546
  migrate(transaction, lendingMarketOwnerCapId) {
540
- return this.migrateFunction(transaction, this.lendingMarket.$typeArgs[0], {
547
+ return (0, functions_1.migrate)(transaction, this.lendingMarket.$typeArgs[0], {
541
548
  lendingMarketOwnerCap: lendingMarketOwnerCapId,
542
549
  lendingMarket: this.lendingMarket.id,
543
550
  });
544
551
  }
545
552
  claimFees(transaction, coinType) {
546
- return this.claimFeesFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
553
+ return (0, functions_1.claimFees)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
547
554
  lendingMarket: this.lendingMarket.id,
548
555
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
549
556
  });
@@ -568,7 +575,7 @@ class SuilendClient {
568
575
  transaction.mergeCoins(transaction.object(mergeCoin.coinObjectId), mergeCoins.map((mc) => transaction.object(mc.coinObjectId)).slice(1));
569
576
  }
570
577
  const coinType = (0, utils_2.extractCTokenCoinType)(ctokenCoinType);
571
- const [redeemCoin] = this.redeemCtokensAndWithdrawLiquidityFunction(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
578
+ const [redeemCoin] = (0, functions_1.redeemCtokensAndWithdrawLiquidity)(transaction, [this.lendingMarket.$typeArgs[0], coinType], {
572
579
  lendingMarket: this.lendingMarket.id,
573
580
  reserveArrayIndex: this.findReserveArrayIndex(coinType),
574
581
  clock: utils_1.SUI_CLOCK_OBJECT_ID,
@@ -1,7 +1,3 @@
1
1
  import BigNumber from "bignumber.js";
2
2
  export declare const maxU64: BigNumber;
3
3
  export declare const WAD: BigNumber;
4
- export declare enum SdkEnv {
5
- BETA = "beta",
6
- MAINNET = "mainnet"
7
- }
@@ -3,12 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SdkEnv = exports.WAD = exports.maxU64 = void 0;
6
+ exports.WAD = exports.maxU64 = void 0;
7
7
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
8
  exports.maxU64 = new bignumber_js_1.default(2).pow(64).minus(1);
9
9
  exports.WAD = new bignumber_js_1.default(10).pow(18);
10
- var SdkEnv;
11
- (function (SdkEnv) {
12
- SdkEnv["BETA"] = "beta";
13
- SdkEnv["MAINNET"] = "mainnet";
14
- })(SdkEnv || (exports.SdkEnv = SdkEnv = {}));
package/index.d.ts CHANGED
@@ -1 +1,7 @@
1
- export * from "./mainnet";
1
+ export * from "./api";
2
+ export * from "./parsers";
3
+ export * from "./utils/";
4
+ export * from "./client";
5
+ export * from "./constants";
6
+ export * from "./types";
7
+ export * from "./utils";
package/index.js CHANGED
@@ -14,4 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./mainnet"), exports);
17
+ __exportStar(require("./api"), exports);
18
+ __exportStar(require("./parsers"), exports);
19
+ __exportStar(require("./utils/"), exports);
20
+ __exportStar(require("./client"), exports);
21
+ __exportStar(require("./constants"), exports);
22
+ __exportStar(require("./types"), exports);
23
+ __exportStar(require("./utils"), exports);