@suilend/sdk 2.0.2 → 2.0.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.
- package/api/events.js +2 -1
- package/client.d.ts +1 -0
- package/lib/initialize.js +4 -2
- package/lib/liquidityMining.d.ts +2 -2
- package/lib/liquidityMining.js +7 -5
- package/margin/index.d.ts +6 -0
- package/margin/index.js +6 -0
- package/margin/margin/admin_cap.d.ts +10 -0
- package/margin/margin/admin_cap.js +12 -0
- package/margin/margin/deps/std/type_name.d.ts +17 -0
- package/margin/margin/deps/std/type_name.js +19 -0
- package/margin/margin/deps/sui/vec_set.d.ts +20 -0
- package/margin/margin/deps/sui/vec_set.js +19 -0
- package/margin/margin/deps/suilend/lending_market.d.ts +8 -0
- package/margin/margin/deps/suilend/lending_market.js +10 -0
- package/margin/margin/market.d.ts +248 -0
- package/margin/margin/market.js +220 -0
- package/margin/margin/permissions.d.ts +56 -0
- package/margin/margin/permissions.js +77 -0
- package/margin/margin/position.d.ts +153 -0
- package/margin/margin/position.js +149 -0
- package/margin/margin/router.d.ts +204 -0
- package/margin/margin/router.js +176 -0
- package/margin/margin/version.d.ts +5 -0
- package/margin/margin/version.js +7 -0
- package/margin/utils/index.d.ts +30 -0
- package/margin/utils/index.js +171 -0
- package/package.json +1 -1
- package/strategies.js +1 -0
package/api/events.js
CHANGED
|
@@ -7,11 +7,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
|
+
import { API_URL } from "@suilend/sui-fe";
|
|
10
11
|
/**
|
|
11
12
|
* Note: This SDK function is experimental and may change or require authentication in the future.
|
|
12
13
|
*/
|
|
13
14
|
export const fetchDownsampledApiReserveAssetDataEvents = (reserveId, days, sampleIntervalS) => __awaiter(void 0, void 0, void 0, function* () {
|
|
14
|
-
const url =
|
|
15
|
+
const url = `${API_URL}/events/downsampled-reserve-asset-data?reserveId=${reserveId}&days=${days}&sampleIntervalS=${sampleIntervalS}`;
|
|
15
16
|
const res = yield fetch(url);
|
|
16
17
|
const json = yield res.json();
|
|
17
18
|
return json;
|
package/client.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export declare const LENDING_MARKET_ID: string, LENDING_MARKET_TYPE: string;
|
|
|
12
12
|
export declare const STEAMM_LM_LENDING_MARKET_ID: string, STEAMM_LM_LENDING_MARKET_TYPE: string;
|
|
13
13
|
export type ObligationWithUnclaimedRewards = {
|
|
14
14
|
id: string;
|
|
15
|
+
lendingMarketId?: string;
|
|
15
16
|
unclaimedRewards: {
|
|
16
17
|
rewardReserveArrayIndex: bigint;
|
|
17
18
|
rewardIndex: bigint;
|
package/lib/initialize.js
CHANGED
|
@@ -10,7 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import { normalizeStructTag } from "@mysten/sui/utils";
|
|
11
11
|
import { SuiPriceServiceConnection } from "@pythnetwork/pyth-sui-js";
|
|
12
12
|
import BigNumber from "bignumber.js";
|
|
13
|
-
import { NORMALIZED_ALKIMI_COINTYPE, NORMALIZED_AUSD_COINTYPE, NORMALIZED_BLUE_COINTYPE, NORMALIZED_BUCK_COINTYPE, NORMALIZED_DEEP_COINTYPE, NORMALIZED_DMC_COINTYPE, NORMALIZED_FUD_COINTYPE, NORMALIZED_HAEDAL_COINTYPE, NORMALIZED_HIPPO_COINTYPE, NORMALIZED_IKA_COINTYPE, NORMALIZED_KOBAN_COINTYPE, NORMALIZED_LBTC_COINTYPE, NORMALIZED_NS_COINTYPE, NORMALIZED_SEND_COINTYPE, NORMALIZED_SEND_POINTS_S1_COINTYPE, NORMALIZED_SEND_POINTS_S2_COINTYPE, NORMALIZED_SOL_COINTYPE, NORMALIZED_SUI_COINTYPE, NORMALIZED_UP_COINTYPE, NORMALIZED_USDB_COINTYPE, NORMALIZED_USDC_COINTYPE, NORMALIZED_WAL_COINTYPE, NORMALIZED_WBTC_COINTYPE, NORMALIZED_WETH_COINTYPE, NORMALIZED_XAUm_COINTYPE, NORMALIZED_eTHIRD_COINTYPE, NORMALIZED_flSUI_COINTYPE, NORMALIZED_fpSUI_COINTYPE, NORMALIZED_fudSUI_COINTYPE, NORMALIZED_iSUI_COINTYPE, NORMALIZED_jugSUI_COINTYPE, NORMALIZED_kSUI_COINTYPE, NORMALIZED_mSUI_COINTYPE, NORMALIZED_mUSD_COINTYPE, NORMALIZED_oshiSUI_COINTYPE, NORMALIZED_sSUI_COINTYPE, NORMALIZED_sdeUSD_COINTYPE, NORMALIZED_stratSUI_COINTYPE, NORMALIZED_suiETH_COINTYPE, NORMALIZED_suiUSDT_COINTYPE, NORMALIZED_suiUSDe_COINTYPE, NORMALIZED_suiWBTC_COINTYPE, NORMALIZED_trevinSUI_COINTYPE, NORMALIZED_upSUI_COINTYPE, NORMALIZED_wUSDC_COINTYPE, NORMALIZED_wUSDT_COINTYPE, NORMALIZED_xBTC_COINTYPE, NORMALIZED_yapSUI_COINTYPE, TEMPORARY_PYTH_PRICE_FEED_COINTYPES, getAllOwnedObjects, getCoinMetadataMap, getPrice, isSendPoints, isSteammPoints, } from "@suilend/sui-fe";
|
|
13
|
+
import { NORMALIZED_ALKIMI_COINTYPE, NORMALIZED_AUSD_COINTYPE, NORMALIZED_BLUE_COINTYPE, NORMALIZED_BUCK_COINTYPE, NORMALIZED_DEEP_COINTYPE, NORMALIZED_DMC_COINTYPE, NORMALIZED_FUD_COINTYPE, NORMALIZED_HAEDAL_COINTYPE, NORMALIZED_HIPPO_COINTYPE, NORMALIZED_IKA_COINTYPE, NORMALIZED_KOBAN_COINTYPE, NORMALIZED_LBTC_COINTYPE, NORMALIZED_NS_COINTYPE, NORMALIZED_SEND_COINTYPE, NORMALIZED_SEND_POINTS_S1_COINTYPE, NORMALIZED_SEND_POINTS_S2_COINTYPE, NORMALIZED_SOL_COINTYPE, NORMALIZED_SUI_COINTYPE, NORMALIZED_UP_COINTYPE, NORMALIZED_USDB_COINTYPE, NORMALIZED_USDC_COINTYPE, NORMALIZED_USDsui_COINTYPE, NORMALIZED_WAL_COINTYPE, NORMALIZED_WBTC_COINTYPE, NORMALIZED_WETH_COINTYPE, NORMALIZED_XAUm_COINTYPE, NORMALIZED_eEARN_COINTYPE, NORMALIZED_eTHIRD_COINTYPE, NORMALIZED_flSUI_COINTYPE, NORMALIZED_fpSUI_COINTYPE, NORMALIZED_fudSUI_COINTYPE, NORMALIZED_iSUI_COINTYPE, NORMALIZED_jugSUI_COINTYPE, NORMALIZED_kSUI_COINTYPE, NORMALIZED_mSUI_COINTYPE, NORMALIZED_mUSD_COINTYPE, NORMALIZED_oshiSUI_COINTYPE, NORMALIZED_sSUI_COINTYPE, NORMALIZED_sdeUSD_COINTYPE, NORMALIZED_stratSUI_COINTYPE, NORMALIZED_suiETH_COINTYPE, NORMALIZED_suiUSDT_COINTYPE, NORMALIZED_suiUSDe_COINTYPE, NORMALIZED_suiWBTC_COINTYPE, NORMALIZED_trevinSUI_COINTYPE, NORMALIZED_upSUI_COINTYPE, NORMALIZED_wUSDC_COINTYPE, NORMALIZED_wUSDT_COINTYPE, NORMALIZED_xBTC_COINTYPE, NORMALIZED_yapSUI_COINTYPE, TEMPORARY_PYTH_PRICE_FEED_COINTYPES, getAllOwnedObjects, getCoinMetadataMap, getPrice, isSendPoints, isSteammPoints, } from "@suilend/sui-fe";
|
|
14
14
|
import { LENDING_MARKET_ID, SuilendClient } from "../client";
|
|
15
15
|
import { parseLendingMarket, parseObligation } from "../parsers";
|
|
16
16
|
import * as simulate from "../utils/simulate";
|
|
@@ -39,8 +39,9 @@ export const RESERVES_CUSTOM_ORDER = {
|
|
|
39
39
|
NORMALIZED_wUSDC_COINTYPE,
|
|
40
40
|
NORMALIZED_suiUSDT_COINTYPE,
|
|
41
41
|
NORMALIZED_wUSDT_COINTYPE,
|
|
42
|
-
|
|
42
|
+
NORMALIZED_USDsui_COINTYPE,
|
|
43
43
|
NORMALIZED_AUSD_COINTYPE,
|
|
44
|
+
NORMALIZED_suiUSDe_COINTYPE,
|
|
44
45
|
NORMALIZED_LBTC_COINTYPE,
|
|
45
46
|
NORMALIZED_suiWBTC_COINTYPE,
|
|
46
47
|
NORMALIZED_WBTC_COINTYPE,
|
|
@@ -67,6 +68,7 @@ export const RESERVES_CUSTOM_ORDER = {
|
|
|
67
68
|
],
|
|
68
69
|
"0x74d92cb095b618f344486f77bcce87fbffc0fe0b46584bb1828bb291a222dda8": [
|
|
69
70
|
NORMALIZED_eTHIRD_COINTYPE,
|
|
71
|
+
NORMALIZED_eEARN_COINTYPE,
|
|
70
72
|
NORMALIZED_USDC_COINTYPE,
|
|
71
73
|
],
|
|
72
74
|
"0x8a8d8e138a28de1c637d0b0955e621b017da7010de388db5a18493eca99c5e82": [
|
package/lib/liquidityMining.d.ts
CHANGED
|
@@ -51,10 +51,10 @@ export declare const getDedupedPerDayRewards: (filteredRewards: RewardSummary[])
|
|
|
51
51
|
export declare const getRewardsAprPercent: (side: Side, filteredRewards: RewardSummary[]) => BigNumber;
|
|
52
52
|
export declare const getStakingYieldAprPercent: (side: Side, coinType: string, lstStatsMap: Record<string, {
|
|
53
53
|
aprPercent: BigNumber;
|
|
54
|
-
}>, sdeUsdAprPercent: BigNumber | undefined, eThirdAprPercent: BigNumber | undefined) => BigNumber | undefined;
|
|
54
|
+
}>, sdeUsdAprPercent: BigNumber | undefined, eThirdAprPercent: BigNumber | undefined, eEarnAprPercent: BigNumber | undefined) => BigNumber | undefined;
|
|
55
55
|
export declare const getTotalAprPercent: (side: Side, aprPercent: BigNumber, filteredRewards: RewardSummary[], stakingYieldAprPercent?: BigNumber) => BigNumber;
|
|
56
56
|
export declare const getNetAprPercent: (obligation: ParsedObligation, rewardMap: RewardMap, lstStatsMap: Record<string, {
|
|
57
57
|
aprPercent: BigNumber;
|
|
58
|
-
}>, sdeUsdAprPercent: BigNumber | undefined, eThirdAprPercent: BigNumber | undefined, noShares?: boolean) => BigNumber;
|
|
58
|
+
}>, sdeUsdAprPercent: BigNumber | undefined, eThirdAprPercent: BigNumber | undefined, eEarnAprPercent: BigNumber | undefined, noShares?: boolean) => BigNumber;
|
|
59
59
|
export declare const getRewardsMap: (obligation: ParsedObligation | undefined, rewardMap: RewardMap, coinMetadataMap: Record<string, CoinMetadata>) => RewardsMap;
|
|
60
60
|
export {};
|
package/lib/liquidityMining.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import BigNumber from "bignumber.js";
|
|
2
2
|
import { cloneDeep } from "lodash";
|
|
3
|
-
import { MS_PER_YEAR, NORMALIZED_eTHIRD_COINTYPE, NORMALIZED_sdeUSD_COINTYPE, isSendPoints, } from "@suilend/sui-fe";
|
|
3
|
+
import { MS_PER_YEAR, NORMALIZED_eEARN_COINTYPE, NORMALIZED_eTHIRD_COINTYPE, NORMALIZED_sdeUSD_COINTYPE, isSendPoints, } from "@suilend/sui-fe";
|
|
4
4
|
import { WAD } from "./constants";
|
|
5
5
|
import { Side } from "./types";
|
|
6
6
|
export const getDepositShare = (reserve, share) => share.div(10 ** reserve.mintDecimals).times(reserve.cTokenExchangeRate);
|
|
@@ -132,24 +132,26 @@ export const getDedupedPerDayRewards = (filteredRewards) => {
|
|
|
132
132
|
return result;
|
|
133
133
|
};
|
|
134
134
|
export const getRewardsAprPercent = (side, filteredRewards) => getDedupedAprRewards(filteredRewards).reduce((acc, reward) => acc.plus(reward.stats.aprPercent.times(side === Side.DEPOSIT ? 1 : -1)), new BigNumber(0));
|
|
135
|
-
export const getStakingYieldAprPercent = (side, coinType, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent) => {
|
|
135
|
+
export const getStakingYieldAprPercent = (side, coinType, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent, eEarnAprPercent) => {
|
|
136
136
|
var _a;
|
|
137
137
|
return side === Side.DEPOSIT
|
|
138
138
|
? coinType === NORMALIZED_sdeUSD_COINTYPE
|
|
139
139
|
? sdeUsdAprPercent
|
|
140
140
|
: coinType === NORMALIZED_eTHIRD_COINTYPE
|
|
141
141
|
? eThirdAprPercent
|
|
142
|
-
:
|
|
142
|
+
: coinType === NORMALIZED_eEARN_COINTYPE
|
|
143
|
+
? eEarnAprPercent
|
|
144
|
+
: (_a = lstStatsMap[coinType]) === null || _a === void 0 ? void 0 : _a.aprPercent
|
|
143
145
|
: undefined;
|
|
144
146
|
};
|
|
145
147
|
export const getTotalAprPercent = (side, aprPercent, filteredRewards, stakingYieldAprPercent) => aprPercent
|
|
146
148
|
.plus(getRewardsAprPercent(side, filteredRewards))
|
|
147
149
|
.plus(stakingYieldAprPercent !== null && stakingYieldAprPercent !== void 0 ? stakingYieldAprPercent : 0);
|
|
148
|
-
export const getNetAprPercent = (obligation, rewardMap, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent, noShares) => {
|
|
150
|
+
export const getNetAprPercent = (obligation, rewardMap, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent, eEarnAprPercent, noShares) => {
|
|
149
151
|
const weightedDepositedAmountUsd_aprPercent = obligation.deposits.reduce((acc, deposit) => {
|
|
150
152
|
var _a;
|
|
151
153
|
const weightedDepositedAmountUsd_baseAprPercent = deposit.reserve.depositAprPercent.times(deposit.depositedAmountUsd);
|
|
152
|
-
const weightedDepositedAmountUsd_stakingYieldAprPercent = new BigNumber((_a = getStakingYieldAprPercent(Side.DEPOSIT, deposit.reserve.coinType, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent)) !== null && _a !== void 0 ? _a : 0).times(deposit.depositedAmountUsd);
|
|
154
|
+
const weightedDepositedAmountUsd_stakingYieldAprPercent = new BigNumber((_a = getStakingYieldAprPercent(Side.DEPOSIT, deposit.reserve.coinType, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent, eEarnAprPercent)) !== null && _a !== void 0 ? _a : 0).times(deposit.depositedAmountUsd);
|
|
153
155
|
const weightedDepositedAmountUsd_rewardsAprPercent = getRewardsAprPercent(Side.DEPOSIT, getFilteredRewards(rewardMap[deposit.reserve.coinType].deposit)).times(!noShares
|
|
154
156
|
? getDepositShareUsd(deposit.reserve, new BigNumber(deposit.userRewardManager.share.toString()))
|
|
155
157
|
: deposit.depositedAmountUsd);
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * as adminCap from "./margin/admin_cap.js";
|
|
2
|
+
export * as market from "./margin/market.js";
|
|
3
|
+
export * as permissions from "./margin/permissions.js";
|
|
4
|
+
export * as position from "./margin/position.js";
|
|
5
|
+
export * as router from "./margin/router.js";
|
|
6
|
+
export * as version from "./margin/version.js";
|
package/margin/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * as adminCap from "./margin/admin_cap.js";
|
|
2
|
+
export * as market from "./margin/market.js";
|
|
3
|
+
export * as permissions from "./margin/permissions.js";
|
|
4
|
+
export * as position from "./margin/position.js";
|
|
5
|
+
export * as router from "./margin/router.js";
|
|
6
|
+
export * as version from "./margin/version.js";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
import { MoveStruct } from '../utils/index.js';
|
|
5
|
+
export declare const AdminCap: MoveStruct<{
|
|
6
|
+
id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
7
|
+
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::admin_cap::AdminCap">;
|
|
8
|
+
export declare const InitEvent: MoveStruct<{
|
|
9
|
+
admin_cap_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
10
|
+
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::admin_cap::InitEvent">;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
import { MoveStruct } from '../utils/index.js';
|
|
5
|
+
import { bcs } from '@mysten/sui/bcs';
|
|
6
|
+
const $moduleName = '0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::admin_cap';
|
|
7
|
+
export const AdminCap = new MoveStruct({ name: `${$moduleName}::AdminCap`, fields: {
|
|
8
|
+
id: bcs.Address
|
|
9
|
+
} });
|
|
10
|
+
export const InitEvent = new MoveStruct({ name: `${$moduleName}::InitEvent`, fields: {
|
|
11
|
+
admin_cap_id: bcs.Address
|
|
12
|
+
} });
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
/** Functionality for converting Move types into values. Use with care! */
|
|
5
|
+
import { MoveStruct } from '../../../utils/index.js';
|
|
6
|
+
export declare const TypeName: MoveStruct<{
|
|
7
|
+
/**
|
|
8
|
+
* String representation of the type. All types are represented using their source
|
|
9
|
+
* syntax: "u8", "u64", "bool", "address", "vector", and so on for primitive types.
|
|
10
|
+
* Struct types are represented as fully qualified type names; e.g.
|
|
11
|
+
* `00000000000000000000000000000001::string::String` or
|
|
12
|
+
* `0000000000000000000000000000000a::module_name1::type_name1<0000000000000000000000000000000a::module_name2::type_name2<u64>>`
|
|
13
|
+
* Addresses are hex-encoded lowercase values of length ADDRESS_LENGTH (16, 20, or
|
|
14
|
+
* 32 depending on the Move platform)
|
|
15
|
+
*/
|
|
16
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
17
|
+
}, "std::type_name::TypeName">;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
/** Functionality for converting Move types into values. Use with care! */
|
|
5
|
+
import { MoveStruct } from '../../../utils/index.js';
|
|
6
|
+
import { bcs } from '@mysten/sui/bcs';
|
|
7
|
+
const $moduleName = 'std::type_name';
|
|
8
|
+
export const TypeName = new MoveStruct({ name: `${$moduleName}::TypeName`, fields: {
|
|
9
|
+
/**
|
|
10
|
+
* String representation of the type. All types are represented using their source
|
|
11
|
+
* syntax: "u8", "u64", "bool", "address", "vector", and so on for primitive types.
|
|
12
|
+
* Struct types are represented as fully qualified type names; e.g.
|
|
13
|
+
* `00000000000000000000000000000001::string::String` or
|
|
14
|
+
* `0000000000000000000000000000000a::module_name1::type_name1<0000000000000000000000000000000a::module_name2::type_name2<u64>>`
|
|
15
|
+
* Addresses are hex-encoded lowercase values of length ADDRESS_LENGTH (16, 20, or
|
|
16
|
+
* 32 depending on the Move platform)
|
|
17
|
+
*/
|
|
18
|
+
name: bcs.string()
|
|
19
|
+
} });
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
import { type BcsType } from '@mysten/sui/bcs';
|
|
5
|
+
import { MoveStruct } from '../../../utils/index.js';
|
|
6
|
+
/**
|
|
7
|
+
* A set data structure backed by a vector. The set is guaranteed not to contain
|
|
8
|
+
* duplicate keys. All operations are O(N) in the size of the set
|
|
9
|
+
*
|
|
10
|
+
* - the intention of this data structure is only to provide the convenience of
|
|
11
|
+
* programming against a set API. Sets that need sorted iteration rather than
|
|
12
|
+
* insertion order iteration should be handwritten.
|
|
13
|
+
*/
|
|
14
|
+
export declare function VecSet<K extends BcsType<any>>(...typeParameters: [
|
|
15
|
+
K
|
|
16
|
+
]): MoveStruct<{
|
|
17
|
+
contents: BcsType<import("@mysten/bcs").InferBcsType<K>[], Iterable<import("@mysten/bcs").InferBcsInput<K>> & {
|
|
18
|
+
length: number;
|
|
19
|
+
}, string>;
|
|
20
|
+
}, `0x2::vec_set::VecSet<${K["name"]}>`>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
import { bcs } from '@mysten/sui/bcs';
|
|
5
|
+
import { MoveStruct } from '../../../utils/index.js';
|
|
6
|
+
const $moduleName = '0x2::vec_set';
|
|
7
|
+
/**
|
|
8
|
+
* A set data structure backed by a vector. The set is guaranteed not to contain
|
|
9
|
+
* duplicate keys. All operations are O(N) in the size of the set
|
|
10
|
+
*
|
|
11
|
+
* - the intention of this data structure is only to provide the convenience of
|
|
12
|
+
* programming against a set API. Sets that need sorted iteration rather than
|
|
13
|
+
* insertion order iteration should be handwritten.
|
|
14
|
+
*/
|
|
15
|
+
export function VecSet(...typeParameters) {
|
|
16
|
+
return new MoveStruct({ name: `${$moduleName}::VecSet<${typeParameters[0].name}>`, fields: {
|
|
17
|
+
contents: bcs.vector(typeParameters[0])
|
|
18
|
+
} });
|
|
19
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
import { MoveStruct } from '../../../utils/index.js';
|
|
5
|
+
export declare const ObligationOwnerCap: MoveStruct<{
|
|
6
|
+
id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
7
|
+
obligation_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
8
|
+
}, "suilend::lending_market::ObligationOwnerCap<phantom P>">;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
import { MoveStruct } from '../../../utils/index.js';
|
|
5
|
+
import { bcs } from '@mysten/sui/bcs';
|
|
6
|
+
const $moduleName = 'suilend::lending_market';
|
|
7
|
+
export const ObligationOwnerCap = new MoveStruct({ name: `${$moduleName}::ObligationOwnerCap<phantom P>`, fields: {
|
|
8
|
+
id: bcs.Address,
|
|
9
|
+
obligation_id: bcs.Address
|
|
10
|
+
} });
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
/**************************************************************
|
|
2
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
3
|
+
**************************************************************/
|
|
4
|
+
import { MoveStruct, type RawTransactionArgument } from '../utils/index.js';
|
|
5
|
+
import { type Transaction } from '@mysten/sui/transactions';
|
|
6
|
+
export declare const Market: MoveStruct<{
|
|
7
|
+
id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
8
|
+
version: import("../utils/index.js").MoveTuple<readonly [import("@mysten/bcs").BcsType<number, number, "u16">], "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::version::Version">;
|
|
9
|
+
fee_recipient: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
10
|
+
open_fee_rate: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
11
|
+
close_fee_rate: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
12
|
+
permissions: MoveStruct<{
|
|
13
|
+
contents: import("@mysten/bcs").BcsType<import("@mysten/bcs").EnumOutputShapeWithKeys<{
|
|
14
|
+
OpenPosition: true;
|
|
15
|
+
ClosePosition: true;
|
|
16
|
+
Deposit: true;
|
|
17
|
+
Borrow: true;
|
|
18
|
+
Withdraw: true;
|
|
19
|
+
Repay: true;
|
|
20
|
+
ClaimReward: true;
|
|
21
|
+
}, "Borrow" | "Deposit" | "Withdraw" | "Repay" | "OpenPosition" | "ClosePosition" | "ClaimReward">[], Iterable<import("@mysten/bcs").EnumInputShape<{
|
|
22
|
+
OpenPosition: boolean | object | null;
|
|
23
|
+
ClosePosition: boolean | object | null;
|
|
24
|
+
Deposit: boolean | object | null;
|
|
25
|
+
Borrow: boolean | object | null;
|
|
26
|
+
Withdraw: boolean | object | null;
|
|
27
|
+
Repay: boolean | object | null;
|
|
28
|
+
ClaimReward: boolean | object | null;
|
|
29
|
+
}>> & {
|
|
30
|
+
length: number;
|
|
31
|
+
}, string>;
|
|
32
|
+
}, "0x2::vec_set::VecSet<0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::permissions::Permission>">;
|
|
33
|
+
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::market::Market<phantom BASE, phantom QUOTE>">;
|
|
34
|
+
export declare const CreateMarketEvent: MoveStruct<{
|
|
35
|
+
market_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
36
|
+
base_token: MoveStruct<{
|
|
37
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
38
|
+
}, "std::type_name::TypeName">;
|
|
39
|
+
quote_token: MoveStruct<{
|
|
40
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
41
|
+
}, "std::type_name::TypeName">;
|
|
42
|
+
open_fee_rate: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
43
|
+
close_fee_rate: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
44
|
+
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::market::CreateMarketEvent">;
|
|
45
|
+
export declare const MarketUpdatedEvent: MoveStruct<{
|
|
46
|
+
market_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
47
|
+
open_fee_rate: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
48
|
+
close_fee_rate: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
49
|
+
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::market::MarketUpdatedEvent">;
|
|
50
|
+
export declare const UpdateMarketPermissionEvent: MoveStruct<{
|
|
51
|
+
market_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
52
|
+
permission: import("../utils/index.js").MoveEnum<{
|
|
53
|
+
OpenPosition: null;
|
|
54
|
+
ClosePosition: null;
|
|
55
|
+
Deposit: null;
|
|
56
|
+
Borrow: null;
|
|
57
|
+
Withdraw: null;
|
|
58
|
+
Repay: null;
|
|
59
|
+
ClaimReward: null;
|
|
60
|
+
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::permissions::Permission">;
|
|
61
|
+
is_pause: import("@mysten/bcs").BcsType<boolean, boolean, "bool">;
|
|
62
|
+
sender: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
63
|
+
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::market::UpdateMarketPermissionEvent">;
|
|
64
|
+
export interface CheckVersionArguments {
|
|
65
|
+
market: RawTransactionArgument<string>;
|
|
66
|
+
}
|
|
67
|
+
export interface CheckVersionOptions {
|
|
68
|
+
package?: string;
|
|
69
|
+
arguments: CheckVersionArguments | [
|
|
70
|
+
market: RawTransactionArgument<string>
|
|
71
|
+
];
|
|
72
|
+
typeArguments: [
|
|
73
|
+
string,
|
|
74
|
+
string
|
|
75
|
+
];
|
|
76
|
+
}
|
|
77
|
+
export declare function checkVersion(options: CheckVersionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
78
|
+
export interface UpgradeVersionArguments {
|
|
79
|
+
_: RawTransactionArgument<string>;
|
|
80
|
+
market: RawTransactionArgument<string>;
|
|
81
|
+
}
|
|
82
|
+
export interface UpgradeVersionOptions {
|
|
83
|
+
package?: string;
|
|
84
|
+
arguments: UpgradeVersionArguments | [
|
|
85
|
+
_: RawTransactionArgument<string>,
|
|
86
|
+
market: RawTransactionArgument<string>
|
|
87
|
+
];
|
|
88
|
+
typeArguments: [
|
|
89
|
+
string,
|
|
90
|
+
string
|
|
91
|
+
];
|
|
92
|
+
}
|
|
93
|
+
export declare function upgradeVersion(options: UpgradeVersionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
94
|
+
export interface CreateMarketArguments {
|
|
95
|
+
_: RawTransactionArgument<string>;
|
|
96
|
+
feeRecipient: RawTransactionArgument<string>;
|
|
97
|
+
openFeeRate: RawTransactionArgument<number | bigint>;
|
|
98
|
+
closeFeeRate: RawTransactionArgument<number | bigint>;
|
|
99
|
+
}
|
|
100
|
+
export interface CreateMarketOptions {
|
|
101
|
+
package?: string;
|
|
102
|
+
arguments: CreateMarketArguments | [
|
|
103
|
+
_: RawTransactionArgument<string>,
|
|
104
|
+
feeRecipient: RawTransactionArgument<string>,
|
|
105
|
+
openFeeRate: RawTransactionArgument<number | bigint>,
|
|
106
|
+
closeFeeRate: RawTransactionArgument<number | bigint>
|
|
107
|
+
];
|
|
108
|
+
typeArguments: [
|
|
109
|
+
string,
|
|
110
|
+
string
|
|
111
|
+
];
|
|
112
|
+
}
|
|
113
|
+
export declare function createMarket(options: CreateMarketOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
114
|
+
export interface UpdateMarketPermissionArguments {
|
|
115
|
+
_: RawTransactionArgument<string>;
|
|
116
|
+
market: RawTransactionArgument<string>;
|
|
117
|
+
permission: RawTransactionArgument<string>;
|
|
118
|
+
pause: RawTransactionArgument<boolean>;
|
|
119
|
+
}
|
|
120
|
+
export interface UpdateMarketPermissionOptions {
|
|
121
|
+
package?: string;
|
|
122
|
+
arguments: UpdateMarketPermissionArguments | [
|
|
123
|
+
_: RawTransactionArgument<string>,
|
|
124
|
+
market: RawTransactionArgument<string>,
|
|
125
|
+
permission: RawTransactionArgument<string>,
|
|
126
|
+
pause: RawTransactionArgument<boolean>
|
|
127
|
+
];
|
|
128
|
+
typeArguments: [
|
|
129
|
+
string,
|
|
130
|
+
string
|
|
131
|
+
];
|
|
132
|
+
}
|
|
133
|
+
/** Update a market permission */
|
|
134
|
+
export declare function updateMarketPermission(options: UpdateMarketPermissionOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
135
|
+
export interface SetFeeRateArguments {
|
|
136
|
+
_: RawTransactionArgument<string>;
|
|
137
|
+
market: RawTransactionArgument<string>;
|
|
138
|
+
openFee: RawTransactionArgument<number | bigint>;
|
|
139
|
+
closeFee: RawTransactionArgument<number | bigint>;
|
|
140
|
+
}
|
|
141
|
+
export interface SetFeeRateOptions {
|
|
142
|
+
package?: string;
|
|
143
|
+
arguments: SetFeeRateArguments | [
|
|
144
|
+
_: RawTransactionArgument<string>,
|
|
145
|
+
market: RawTransactionArgument<string>,
|
|
146
|
+
openFee: RawTransactionArgument<number | bigint>,
|
|
147
|
+
closeFee: RawTransactionArgument<number | bigint>
|
|
148
|
+
];
|
|
149
|
+
typeArguments: [
|
|
150
|
+
string,
|
|
151
|
+
string
|
|
152
|
+
];
|
|
153
|
+
}
|
|
154
|
+
/** Set fee rates */
|
|
155
|
+
export declare function setFeeRate(options: SetFeeRateOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
156
|
+
export interface SetFeeRecipientArguments {
|
|
157
|
+
_: RawTransactionArgument<string>;
|
|
158
|
+
market: RawTransactionArgument<string>;
|
|
159
|
+
feeRecipient: RawTransactionArgument<string>;
|
|
160
|
+
}
|
|
161
|
+
export interface SetFeeRecipientOptions {
|
|
162
|
+
package?: string;
|
|
163
|
+
arguments: SetFeeRecipientArguments | [
|
|
164
|
+
_: RawTransactionArgument<string>,
|
|
165
|
+
market: RawTransactionArgument<string>,
|
|
166
|
+
feeRecipient: RawTransactionArgument<string>
|
|
167
|
+
];
|
|
168
|
+
typeArguments: [
|
|
169
|
+
string,
|
|
170
|
+
string
|
|
171
|
+
];
|
|
172
|
+
}
|
|
173
|
+
/** Set fee recipient address */
|
|
174
|
+
export declare function setFeeRecipient(options: SetFeeRecipientOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
175
|
+
export interface MarketIdArguments {
|
|
176
|
+
market: RawTransactionArgument<string>;
|
|
177
|
+
}
|
|
178
|
+
export interface MarketIdOptions {
|
|
179
|
+
package?: string;
|
|
180
|
+
arguments: MarketIdArguments | [
|
|
181
|
+
market: RawTransactionArgument<string>
|
|
182
|
+
];
|
|
183
|
+
typeArguments: [
|
|
184
|
+
string,
|
|
185
|
+
string
|
|
186
|
+
];
|
|
187
|
+
}
|
|
188
|
+
/** Get market ID */
|
|
189
|
+
export declare function marketId(options: MarketIdOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
190
|
+
export interface OpenFeeRateArguments {
|
|
191
|
+
market: RawTransactionArgument<string>;
|
|
192
|
+
}
|
|
193
|
+
export interface OpenFeeRateOptions {
|
|
194
|
+
package?: string;
|
|
195
|
+
arguments: OpenFeeRateArguments | [
|
|
196
|
+
market: RawTransactionArgument<string>
|
|
197
|
+
];
|
|
198
|
+
typeArguments: [
|
|
199
|
+
string,
|
|
200
|
+
string
|
|
201
|
+
];
|
|
202
|
+
}
|
|
203
|
+
/** Get open fee rate */
|
|
204
|
+
export declare function openFeeRate(options: OpenFeeRateOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
205
|
+
export interface CloseFeeRateArguments {
|
|
206
|
+
market: RawTransactionArgument<string>;
|
|
207
|
+
}
|
|
208
|
+
export interface CloseFeeRateOptions {
|
|
209
|
+
package?: string;
|
|
210
|
+
arguments: CloseFeeRateArguments | [
|
|
211
|
+
market: RawTransactionArgument<string>
|
|
212
|
+
];
|
|
213
|
+
typeArguments: [
|
|
214
|
+
string,
|
|
215
|
+
string
|
|
216
|
+
];
|
|
217
|
+
}
|
|
218
|
+
/** Get close fee rate */
|
|
219
|
+
export declare function closeFeeRate(options: CloseFeeRateOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
220
|
+
export interface FeeRecipientArguments {
|
|
221
|
+
market: RawTransactionArgument<string>;
|
|
222
|
+
}
|
|
223
|
+
export interface FeeRecipientOptions {
|
|
224
|
+
package?: string;
|
|
225
|
+
arguments: FeeRecipientArguments | [
|
|
226
|
+
market: RawTransactionArgument<string>
|
|
227
|
+
];
|
|
228
|
+
typeArguments: [
|
|
229
|
+
string,
|
|
230
|
+
string
|
|
231
|
+
];
|
|
232
|
+
}
|
|
233
|
+
/** Get fee recipient address */
|
|
234
|
+
export declare function feeRecipient(options: FeeRecipientOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|
|
235
|
+
export interface PermissionsArguments {
|
|
236
|
+
market: RawTransactionArgument<string>;
|
|
237
|
+
}
|
|
238
|
+
export interface PermissionsOptions {
|
|
239
|
+
package?: string;
|
|
240
|
+
arguments: PermissionsArguments | [
|
|
241
|
+
market: RawTransactionArgument<string>
|
|
242
|
+
];
|
|
243
|
+
typeArguments: [
|
|
244
|
+
string,
|
|
245
|
+
string
|
|
246
|
+
];
|
|
247
|
+
}
|
|
248
|
+
export declare function permissions(options: PermissionsOptions): (tx: Transaction) => import("@mysten/sui/transactions").TransactionResult;
|