@kamino-finance/klend-sdk 5.4.3 → 5.5.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.
- package/dist/classes/index.d.ts +1 -0
- package/dist/classes/index.d.ts.map +1 -1
- package/dist/classes/index.js +1 -0
- package/dist/classes/index.js.map +1 -1
- package/dist/classes/reserve.d.ts.map +1 -1
- package/dist/classes/reserve.js +7 -7
- package/dist/classes/reserve.js.map +1 -1
- package/dist/client_kamino_manager.js +2 -2
- package/dist/client_kamino_manager.js.map +1 -1
- package/dist/idl.json +3 -4
- package/dist/idl_codegen/types/ReserveConfig.d.ts +8 -11
- package/dist/idl_codegen/types/ReserveConfig.d.ts.map +1 -1
- package/dist/idl_codegen/types/ReserveConfig.js +9 -10
- package/dist/idl_codegen/types/ReserveConfig.js.map +1 -1
- package/dist/idl_codegen/types/UpdateConfigMode.d.ts +7 -7
- package/dist/idl_codegen/types/UpdateConfigMode.d.ts.map +1 -1
- package/dist/idl_codegen/types/UpdateConfigMode.js +12 -12
- package/dist/idl_codegen/types/UpdateConfigMode.js.map +1 -1
- package/dist/idl_codegen/types/index.d.ts +2 -2
- package/dist/idl_codegen/types/index.d.ts.map +1 -1
- package/dist/idl_codegen_kamino_vault/accounts/VaultState.js +1 -1
- package/dist/idl_codegen_kamino_vault/accounts/VaultState.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/ReserveConfig.d.ts +8 -11
- package/dist/idl_codegen_kamino_vault/types/ReserveConfig.d.ts.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/ReserveConfig.js +9 -10
- package/dist/idl_codegen_kamino_vault/types/ReserveConfig.js.map +1 -1
- package/dist/utils/managerTypes.js +1 -1
- package/dist/utils/managerTypes.js.map +1 -1
- package/package.json +83 -1
- package/src/classes/index.ts +1 -0
- package/src/classes/reserve.ts +11 -9
- package/src/classes/vault.ts +1 -1
- package/src/client_kamino_manager.ts +2 -2
- package/src/idl_codegen/types/ReserveConfig.ts +17 -18
- package/src/idl_codegen/types/UpdateConfigMode.ts +13 -13
- package/src/idl_codegen/types/index.ts +2 -2
- package/src/idl_codegen_kamino_vault/accounts/VaultState.ts +1 -1
- package/src/idl_codegen_kamino_vault/types/ReserveConfig.ts +17 -18
- package/src/utils/managerTypes.ts +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kamino-finance/klend-sdk",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.5.1",
|
|
4
4
|
"description": "Typescript SDK for interacting with the Kamino Lending (klend) protocol",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,6 +24,88 @@
|
|
|
24
24
|
"dist",
|
|
25
25
|
"src/**/*.ts"
|
|
26
26
|
],
|
|
27
|
+
"exports": {
|
|
28
|
+
".": {
|
|
29
|
+
"require": "./dist/index.js",
|
|
30
|
+
"import": "./src/index.ts"
|
|
31
|
+
},
|
|
32
|
+
"./dist": {
|
|
33
|
+
"require": "./dist/index.js",
|
|
34
|
+
"import": "./src/index.ts"
|
|
35
|
+
},
|
|
36
|
+
"./dist/idl_codegen/accounts": {
|
|
37
|
+
"require": "./dist/idl_codegen/accounts/index.js",
|
|
38
|
+
"import": "./src/idl_codegen/accounts/index.ts"
|
|
39
|
+
},
|
|
40
|
+
"./dist/idl_codegen/errors": {
|
|
41
|
+
"require": "./dist/idl_codegen/errors/index.js",
|
|
42
|
+
"import": "./src/idl_codegen/errors/index.ts"
|
|
43
|
+
},
|
|
44
|
+
"./dist/idl_codegen/instructions": {
|
|
45
|
+
"require": "./dist/idl_codegen/instructions/index.js",
|
|
46
|
+
"import": "./src/idl_codegen/instructions/index.ts"
|
|
47
|
+
},
|
|
48
|
+
"./dist/idl_codegen/types": {
|
|
49
|
+
"require": "./dist/idl_codegen/types/index.js",
|
|
50
|
+
"import": "./src/idl_codegen/types/index.ts"
|
|
51
|
+
},
|
|
52
|
+
"./dist/idl_codegen/zero_padding": {
|
|
53
|
+
"require": "./dist/idl_codegen/zero_padding/index.js",
|
|
54
|
+
"import": "./src/idl_codegen/zero_padding/index.ts"
|
|
55
|
+
},
|
|
56
|
+
"./dist/idl_codegen/errors/custom": {
|
|
57
|
+
"require": "./dist/idl_codegen/errors/custom.js",
|
|
58
|
+
"import": "./src/idl_codegen/errors/custom.ts"
|
|
59
|
+
},
|
|
60
|
+
"./dist/idl_codegen/errors/anchor": {
|
|
61
|
+
"require": "./dist/idl_codegen/errors/anchor.js",
|
|
62
|
+
"import": "./src/idl_codegen/errors/anchor.ts"
|
|
63
|
+
},
|
|
64
|
+
"./dist/lending_operations": {
|
|
65
|
+
"require": "./dist/lending_operations/index.js",
|
|
66
|
+
"import": "./src/lending_operations/index.ts"
|
|
67
|
+
},
|
|
68
|
+
"./dist/leverage": {
|
|
69
|
+
"require": "./dist/leverage/index.js",
|
|
70
|
+
"import": "./src/leverage/index.ts"
|
|
71
|
+
},
|
|
72
|
+
"./dist/pyth/accounts": {
|
|
73
|
+
"require": "./dist/pyth/accounts/index.js",
|
|
74
|
+
"import": "./src/pyth/accounts/index.ts"
|
|
75
|
+
},
|
|
76
|
+
"./dist/pyth/types": {
|
|
77
|
+
"require": "./dist/pyth/types/index.js",
|
|
78
|
+
"import": "./src/pyth/types/index.ts"
|
|
79
|
+
},
|
|
80
|
+
"./dist/referrals": {
|
|
81
|
+
"require": "./dist/referrals/index.js",
|
|
82
|
+
"import": "./src/referrals/index.ts"
|
|
83
|
+
},
|
|
84
|
+
"./dist/utils": {
|
|
85
|
+
"require": "./dist/utils/index.js",
|
|
86
|
+
"import": "./src/utils/index.ts"
|
|
87
|
+
},
|
|
88
|
+
"./dist/utils/rpc": {
|
|
89
|
+
"require": "./dist/utils/rpc.js",
|
|
90
|
+
"import": "./src/utils/rpc.ts"
|
|
91
|
+
},
|
|
92
|
+
"./dist/utils/api": {
|
|
93
|
+
"require": "./dist/utils/api.js",
|
|
94
|
+
"import": "./src/utils/api.ts"
|
|
95
|
+
},
|
|
96
|
+
"./dist/utils/oracle": {
|
|
97
|
+
"require": "./dist/utils/oracle.js",
|
|
98
|
+
"import": "./src/utils/oracle.ts"
|
|
99
|
+
},
|
|
100
|
+
"./dist/utils/ObligationType": {
|
|
101
|
+
"require": "./dist/utils/ObligationType.js",
|
|
102
|
+
"import": "./src/utils/ObligationType.ts"
|
|
103
|
+
},
|
|
104
|
+
"./dist/classes": {
|
|
105
|
+
"require": "./dist/classes/index.js",
|
|
106
|
+
"import": "./src/classes/index.ts"
|
|
107
|
+
}
|
|
108
|
+
},
|
|
27
109
|
"license": "MIT",
|
|
28
110
|
"scripts": {
|
|
29
111
|
"docs": "typedoc",
|
package/src/classes/index.ts
CHANGED
package/src/classes/reserve.ts
CHANGED
|
@@ -1478,21 +1478,23 @@ export function parseForChangesReserveConfigAndGetIxs(
|
|
|
1478
1478
|
),
|
|
1479
1479
|
});
|
|
1480
1480
|
}
|
|
1481
|
-
} else if (key === '
|
|
1481
|
+
} else if (key === 'deleveragingThresholdDecreaseBpsPerDay') {
|
|
1482
1482
|
if (reserve === undefined) {
|
|
1483
1483
|
updateReserveIxnsArgs.push({
|
|
1484
|
-
mode: UpdateConfigMode.
|
|
1484
|
+
mode: UpdateConfigMode.UpdateDeleveragingThresholdDecreaseBpsPerDay.discriminator,
|
|
1485
1485
|
value: updateReserveConfigEncodedValue(
|
|
1486
|
-
UpdateConfigMode.
|
|
1487
|
-
reserveConfig.
|
|
1486
|
+
UpdateConfigMode.UpdateDeleveragingThresholdDecreaseBpsPerDay.discriminator,
|
|
1487
|
+
reserveConfig.deleveragingThresholdDecreaseBpsPerDay.toNumber()
|
|
1488
1488
|
),
|
|
1489
1489
|
});
|
|
1490
|
-
} else if (
|
|
1490
|
+
} else if (
|
|
1491
|
+
!reserve.config.deleveragingThresholdDecreaseBpsPerDay.eq(reserveConfig.deleveragingThresholdDecreaseBpsPerDay)
|
|
1492
|
+
) {
|
|
1491
1493
|
updateReserveIxnsArgs.push({
|
|
1492
|
-
mode: UpdateConfigMode.
|
|
1494
|
+
mode: UpdateConfigMode.UpdateDeleveragingThresholdDecreaseBpsPerDay.discriminator,
|
|
1493
1495
|
value: updateReserveConfigEncodedValue(
|
|
1494
|
-
UpdateConfigMode.
|
|
1495
|
-
reserveConfig.
|
|
1496
|
+
UpdateConfigMode.UpdateDeleveragingThresholdDecreaseBpsPerDay.discriminator,
|
|
1497
|
+
reserveConfig.deleveragingThresholdDecreaseBpsPerDay.toNumber()
|
|
1496
1498
|
),
|
|
1497
1499
|
});
|
|
1498
1500
|
}
|
|
@@ -1981,7 +1983,7 @@ export function updateReserveConfigEncodedValue(
|
|
|
1981
1983
|
case UpdateConfigMode.UpdateDepositWithdrawalCapCurrentTotal.discriminator:
|
|
1982
1984
|
case UpdateConfigMode.UpdateDeleveragingMarginCallPeriod.discriminator:
|
|
1983
1985
|
case UpdateConfigMode.UpdateBorrowFactor.discriminator:
|
|
1984
|
-
case UpdateConfigMode.
|
|
1986
|
+
case UpdateConfigMode.UpdateDeleveragingThresholdDecreaseBpsPerDay.discriminator:
|
|
1985
1987
|
case UpdateConfigMode.UpdateBorrowLimitOutsideElevationGroup.discriminator:
|
|
1986
1988
|
value = value as number;
|
|
1987
1989
|
buffer = Buffer.alloc(8);
|
package/src/classes/vault.ts
CHANGED
|
@@ -1315,7 +1315,7 @@ function parseReserveConfigFromFile(farmConfigFromFile: any): ReserveConfig {
|
|
|
1315
1315
|
deleveragingMarginCallPeriodSecs: new BN(farmConfigFromFile.deleveragingMarginCallPeriodSecs),
|
|
1316
1316
|
borrowFactorPct: new BN(farmConfigFromFile.borrowFactorPct),
|
|
1317
1317
|
elevationGroups: farmConfigFromFile.elevationGroups,
|
|
1318
|
-
|
|
1318
|
+
deleveragingThresholdDecreaseBpsPerDay: new BN(farmConfigFromFile.deleveragingThresholdDecreaseBpsPerDay),
|
|
1319
1319
|
disableUsageAsCollOutsideEmode: farmConfigFromFile.disableUsageAsCollOutsideEmode,
|
|
1320
1320
|
utilizationLimitBlockBorrowingAbove: farmConfigFromFile.utilizationLimitBlockBorrowingAbove,
|
|
1321
1321
|
hostFixedInterestRateBps: farmConfigFromFile.hostFixedInterestRateBps,
|
|
@@ -1435,7 +1435,7 @@ function parseReserveConfigToFile(reserveConfig: ReserveConfig) {
|
|
|
1435
1435
|
deleveragingMarginCallPeriodSecs: reserveConfig.deleveragingMarginCallPeriodSecs.toString(),
|
|
1436
1436
|
borrowFactorPct: reserveConfig.borrowFactorPct.toString(),
|
|
1437
1437
|
elevationGroups: reserveConfig.elevationGroups,
|
|
1438
|
-
|
|
1438
|
+
deleveragingThresholdDecreaseBpsPerDay: reserveConfig.deleveragingThresholdDecreaseBpsPerDay.toString(),
|
|
1439
1439
|
disableUsageAsCollOutsideEmode: reserveConfig.disableUsageAsCollOutsideEmode,
|
|
1440
1440
|
utilizationLimitBlockBorrowingAbove: reserveConfig.utilizationLimitBlockBorrowingAbove,
|
|
1441
1441
|
hostFixedInterestRateBps: reserveConfig.hostFixedInterestRateBps,
|
|
@@ -38,11 +38,10 @@ export interface ReserveConfigFields {
|
|
|
38
38
|
*/
|
|
39
39
|
deleveragingMarginCallPeriodSecs: BN
|
|
40
40
|
/**
|
|
41
|
-
* The rate at which the deleveraging threshold decreases in
|
|
42
|
-
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
41
|
+
* The rate at which the deleveraging threshold decreases, in bps per day.
|
|
43
42
|
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
44
43
|
*/
|
|
45
|
-
|
|
44
|
+
deleveragingThresholdDecreaseBpsPerDay: BN
|
|
46
45
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
47
46
|
fees: types.ReserveFeesFields
|
|
48
47
|
/** Borrow rate curve based on utilization */
|
|
@@ -126,11 +125,10 @@ export interface ReserveConfigJSON {
|
|
|
126
125
|
*/
|
|
127
126
|
deleveragingMarginCallPeriodSecs: string
|
|
128
127
|
/**
|
|
129
|
-
* The rate at which the deleveraging threshold decreases in
|
|
130
|
-
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
128
|
+
* The rate at which the deleveraging threshold decreases, in bps per day.
|
|
131
129
|
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
132
130
|
*/
|
|
133
|
-
|
|
131
|
+
deleveragingThresholdDecreaseBpsPerDay: string
|
|
134
132
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
135
133
|
fees: types.ReserveFeesJSON
|
|
136
134
|
/** Borrow rate curve based on utilization */
|
|
@@ -215,11 +213,10 @@ export class ReserveConfig {
|
|
|
215
213
|
*/
|
|
216
214
|
readonly deleveragingMarginCallPeriodSecs: BN
|
|
217
215
|
/**
|
|
218
|
-
* The rate at which the deleveraging threshold decreases in
|
|
219
|
-
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
216
|
+
* The rate at which the deleveraging threshold decreases, in bps per day.
|
|
220
217
|
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
221
218
|
*/
|
|
222
|
-
readonly
|
|
219
|
+
readonly deleveragingThresholdDecreaseBpsPerDay: BN
|
|
223
220
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
224
221
|
readonly fees: types.ReserveFees
|
|
225
222
|
/** Borrow rate curve based on utilization */
|
|
@@ -282,8 +279,8 @@ export class ReserveConfig {
|
|
|
282
279
|
this.badDebtLiquidationBonusBps = fields.badDebtLiquidationBonusBps
|
|
283
280
|
this.deleveragingMarginCallPeriodSecs =
|
|
284
281
|
fields.deleveragingMarginCallPeriodSecs
|
|
285
|
-
this.
|
|
286
|
-
fields.
|
|
282
|
+
this.deleveragingThresholdDecreaseBpsPerDay =
|
|
283
|
+
fields.deleveragingThresholdDecreaseBpsPerDay
|
|
287
284
|
this.fees = new types.ReserveFees({ ...fields.fees })
|
|
288
285
|
this.borrowRateCurve = new types.BorrowRateCurve({
|
|
289
286
|
...fields.borrowRateCurve,
|
|
@@ -328,7 +325,7 @@ export class ReserveConfig {
|
|
|
328
325
|
borsh.u16("maxLiquidationBonusBps"),
|
|
329
326
|
borsh.u16("badDebtLiquidationBonusBps"),
|
|
330
327
|
borsh.u64("deleveragingMarginCallPeriodSecs"),
|
|
331
|
-
borsh.u64("
|
|
328
|
+
borsh.u64("deleveragingThresholdDecreaseBpsPerDay"),
|
|
332
329
|
types.ReserveFees.layout("fees"),
|
|
333
330
|
types.BorrowRateCurve.layout("borrowRateCurve"),
|
|
334
331
|
borsh.u64("borrowFactorPct"),
|
|
@@ -370,7 +367,8 @@ export class ReserveConfig {
|
|
|
370
367
|
maxLiquidationBonusBps: obj.maxLiquidationBonusBps,
|
|
371
368
|
badDebtLiquidationBonusBps: obj.badDebtLiquidationBonusBps,
|
|
372
369
|
deleveragingMarginCallPeriodSecs: obj.deleveragingMarginCallPeriodSecs,
|
|
373
|
-
|
|
370
|
+
deleveragingThresholdDecreaseBpsPerDay:
|
|
371
|
+
obj.deleveragingThresholdDecreaseBpsPerDay,
|
|
374
372
|
fees: types.ReserveFees.fromDecoded(obj.fees),
|
|
375
373
|
borrowRateCurve: types.BorrowRateCurve.fromDecoded(obj.borrowRateCurve),
|
|
376
374
|
borrowFactorPct: obj.borrowFactorPct,
|
|
@@ -412,7 +410,8 @@ export class ReserveConfig {
|
|
|
412
410
|
maxLiquidationBonusBps: fields.maxLiquidationBonusBps,
|
|
413
411
|
badDebtLiquidationBonusBps: fields.badDebtLiquidationBonusBps,
|
|
414
412
|
deleveragingMarginCallPeriodSecs: fields.deleveragingMarginCallPeriodSecs,
|
|
415
|
-
|
|
413
|
+
deleveragingThresholdDecreaseBpsPerDay:
|
|
414
|
+
fields.deleveragingThresholdDecreaseBpsPerDay,
|
|
416
415
|
fees: types.ReserveFees.toEncodable(fields.fees),
|
|
417
416
|
borrowRateCurve: types.BorrowRateCurve.toEncodable(
|
|
418
417
|
fields.borrowRateCurve
|
|
@@ -457,8 +456,8 @@ export class ReserveConfig {
|
|
|
457
456
|
badDebtLiquidationBonusBps: this.badDebtLiquidationBonusBps,
|
|
458
457
|
deleveragingMarginCallPeriodSecs:
|
|
459
458
|
this.deleveragingMarginCallPeriodSecs.toString(),
|
|
460
|
-
|
|
461
|
-
this.
|
|
459
|
+
deleveragingThresholdDecreaseBpsPerDay:
|
|
460
|
+
this.deleveragingThresholdDecreaseBpsPerDay.toString(),
|
|
462
461
|
fees: this.fees.toJSON(),
|
|
463
462
|
borrowRateCurve: this.borrowRateCurve.toJSON(),
|
|
464
463
|
borrowFactorPct: this.borrowFactorPct.toString(),
|
|
@@ -501,8 +500,8 @@ export class ReserveConfig {
|
|
|
501
500
|
deleveragingMarginCallPeriodSecs: new BN(
|
|
502
501
|
obj.deleveragingMarginCallPeriodSecs
|
|
503
502
|
),
|
|
504
|
-
|
|
505
|
-
obj.
|
|
503
|
+
deleveragingThresholdDecreaseBpsPerDay: new BN(
|
|
504
|
+
obj.deleveragingThresholdDecreaseBpsPerDay
|
|
506
505
|
),
|
|
507
506
|
fees: types.ReserveFees.fromJSON(obj.fees),
|
|
508
507
|
borrowRateCurve: types.BorrowRateCurve.fromJSON(obj.borrowRateCurve),
|
|
@@ -808,25 +808,25 @@ export class UpdateElevationGroup {
|
|
|
808
808
|
}
|
|
809
809
|
}
|
|
810
810
|
|
|
811
|
-
export interface
|
|
812
|
-
kind: "
|
|
811
|
+
export interface UpdateDeleveragingThresholdDecreaseBpsPerDayJSON {
|
|
812
|
+
kind: "UpdateDeleveragingThresholdDecreaseBpsPerDay"
|
|
813
813
|
}
|
|
814
814
|
|
|
815
|
-
export class
|
|
815
|
+
export class UpdateDeleveragingThresholdDecreaseBpsPerDay {
|
|
816
816
|
static readonly discriminator = 35
|
|
817
|
-
static readonly kind = "
|
|
817
|
+
static readonly kind = "UpdateDeleveragingThresholdDecreaseBpsPerDay"
|
|
818
818
|
readonly discriminator = 35
|
|
819
|
-
readonly kind = "
|
|
819
|
+
readonly kind = "UpdateDeleveragingThresholdDecreaseBpsPerDay"
|
|
820
820
|
|
|
821
|
-
toJSON():
|
|
821
|
+
toJSON(): UpdateDeleveragingThresholdDecreaseBpsPerDayJSON {
|
|
822
822
|
return {
|
|
823
|
-
kind: "
|
|
823
|
+
kind: "UpdateDeleveragingThresholdDecreaseBpsPerDay",
|
|
824
824
|
}
|
|
825
825
|
}
|
|
826
826
|
|
|
827
827
|
toEncodable() {
|
|
828
828
|
return {
|
|
829
|
-
|
|
829
|
+
UpdateDeleveragingThresholdDecreaseBpsPerDay: {},
|
|
830
830
|
}
|
|
831
831
|
}
|
|
832
832
|
}
|
|
@@ -1241,8 +1241,8 @@ export function fromDecoded(obj: any): types.UpdateConfigModeKind {
|
|
|
1241
1241
|
if ("UpdateElevationGroup" in obj) {
|
|
1242
1242
|
return new UpdateElevationGroup()
|
|
1243
1243
|
}
|
|
1244
|
-
if ("
|
|
1245
|
-
return new
|
|
1244
|
+
if ("UpdateDeleveragingThresholdDecreaseBpsPerDay" in obj) {
|
|
1245
|
+
return new UpdateDeleveragingThresholdDecreaseBpsPerDay()
|
|
1246
1246
|
}
|
|
1247
1247
|
if ("DeprecatedUpdateMultiplierSideBoost" in obj) {
|
|
1248
1248
|
return new DeprecatedUpdateMultiplierSideBoost()
|
|
@@ -1396,8 +1396,8 @@ export function fromJSON(
|
|
|
1396
1396
|
case "UpdateElevationGroup": {
|
|
1397
1397
|
return new UpdateElevationGroup()
|
|
1398
1398
|
}
|
|
1399
|
-
case "
|
|
1400
|
-
return new
|
|
1399
|
+
case "UpdateDeleveragingThresholdDecreaseBpsPerDay": {
|
|
1400
|
+
return new UpdateDeleveragingThresholdDecreaseBpsPerDay()
|
|
1401
1401
|
}
|
|
1402
1402
|
case "DeprecatedUpdateMultiplierSideBoost": {
|
|
1403
1403
|
return new DeprecatedUpdateMultiplierSideBoost()
|
|
@@ -1478,7 +1478,7 @@ export function layout(property?: string) {
|
|
|
1478
1478
|
borsh.struct([], "UpdateBorrowFactor"),
|
|
1479
1479
|
borsh.struct([], "UpdateAssetTier"),
|
|
1480
1480
|
borsh.struct([], "UpdateElevationGroup"),
|
|
1481
|
-
borsh.struct([], "
|
|
1481
|
+
borsh.struct([], "UpdateDeleveragingThresholdDecreaseBpsPerDay"),
|
|
1482
1482
|
borsh.struct([], "DeprecatedUpdateMultiplierSideBoost"),
|
|
1483
1483
|
borsh.struct([], "DeprecatedUpdateMultiplierTagBoost"),
|
|
1484
1484
|
borsh.struct([], "UpdateReserveStatus"),
|
|
@@ -44,7 +44,7 @@ export type UpdateConfigModeKind =
|
|
|
44
44
|
| UpdateConfigMode.UpdateBorrowFactor
|
|
45
45
|
| UpdateConfigMode.UpdateAssetTier
|
|
46
46
|
| UpdateConfigMode.UpdateElevationGroup
|
|
47
|
-
| UpdateConfigMode.
|
|
47
|
+
| UpdateConfigMode.UpdateDeleveragingThresholdDecreaseBpsPerDay
|
|
48
48
|
| UpdateConfigMode.DeprecatedUpdateMultiplierSideBoost
|
|
49
49
|
| UpdateConfigMode.DeprecatedUpdateMultiplierTagBoost
|
|
50
50
|
| UpdateConfigMode.UpdateReserveStatus
|
|
@@ -94,7 +94,7 @@ export type UpdateConfigModeJSON =
|
|
|
94
94
|
| UpdateConfigMode.UpdateBorrowFactorJSON
|
|
95
95
|
| UpdateConfigMode.UpdateAssetTierJSON
|
|
96
96
|
| UpdateConfigMode.UpdateElevationGroupJSON
|
|
97
|
-
| UpdateConfigMode.
|
|
97
|
+
| UpdateConfigMode.UpdateDeleveragingThresholdDecreaseBpsPerDayJSON
|
|
98
98
|
| UpdateConfigMode.DeprecatedUpdateMultiplierSideBoostJSON
|
|
99
99
|
| UpdateConfigMode.DeprecatedUpdateMultiplierTagBoostJSON
|
|
100
100
|
| UpdateConfigMode.UpdateReserveStatusJSON
|
|
@@ -231,7 +231,7 @@ export class VaultState {
|
|
|
231
231
|
}
|
|
232
232
|
|
|
233
233
|
static decode(data: Buffer): VaultState {
|
|
234
|
-
if (!
|
|
234
|
+
if (!data.slice(0, 8).equals(VaultState.discriminator)) {
|
|
235
235
|
throw new Error("invalid account discriminator")
|
|
236
236
|
}
|
|
237
237
|
|
|
@@ -38,11 +38,10 @@ export interface ReserveConfigFields {
|
|
|
38
38
|
*/
|
|
39
39
|
deleveragingMarginCallPeriodSecs: BN
|
|
40
40
|
/**
|
|
41
|
-
* The rate at which the deleveraging threshold decreases in
|
|
42
|
-
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
41
|
+
* The rate at which the deleveraging threshold decreases, in bps per day.
|
|
43
42
|
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
44
43
|
*/
|
|
45
|
-
|
|
44
|
+
deleveragingThresholdDecreaseBpsPerDay: BN
|
|
46
45
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
47
46
|
fees: types.ReserveFeesFields
|
|
48
47
|
/** Borrow rate curve based on utilization */
|
|
@@ -126,11 +125,10 @@ export interface ReserveConfigJSON {
|
|
|
126
125
|
*/
|
|
127
126
|
deleveragingMarginCallPeriodSecs: string
|
|
128
127
|
/**
|
|
129
|
-
* The rate at which the deleveraging threshold decreases in
|
|
130
|
-
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
128
|
+
* The rate at which the deleveraging threshold decreases, in bps per day.
|
|
131
129
|
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
132
130
|
*/
|
|
133
|
-
|
|
131
|
+
deleveragingThresholdDecreaseBpsPerDay: string
|
|
134
132
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
135
133
|
fees: types.ReserveFeesJSON
|
|
136
134
|
/** Borrow rate curve based on utilization */
|
|
@@ -215,11 +213,10 @@ export class ReserveConfig {
|
|
|
215
213
|
*/
|
|
216
214
|
readonly deleveragingMarginCallPeriodSecs: BN
|
|
217
215
|
/**
|
|
218
|
-
* The rate at which the deleveraging threshold decreases in
|
|
219
|
-
* e.g. 1 bps per hour would be denoted by `3600` here.
|
|
216
|
+
* The rate at which the deleveraging threshold decreases, in bps per day.
|
|
220
217
|
* Only relevant when `autodeleverage_enabled == 1`, and must not be 0 in such case.
|
|
221
218
|
*/
|
|
222
|
-
readonly
|
|
219
|
+
readonly deleveragingThresholdDecreaseBpsPerDay: BN
|
|
223
220
|
/** Program owner fees assessed, separate from gains due to interest accrual */
|
|
224
221
|
readonly fees: types.ReserveFees
|
|
225
222
|
/** Borrow rate curve based on utilization */
|
|
@@ -282,8 +279,8 @@ export class ReserveConfig {
|
|
|
282
279
|
this.badDebtLiquidationBonusBps = fields.badDebtLiquidationBonusBps
|
|
283
280
|
this.deleveragingMarginCallPeriodSecs =
|
|
284
281
|
fields.deleveragingMarginCallPeriodSecs
|
|
285
|
-
this.
|
|
286
|
-
fields.
|
|
282
|
+
this.deleveragingThresholdDecreaseBpsPerDay =
|
|
283
|
+
fields.deleveragingThresholdDecreaseBpsPerDay
|
|
287
284
|
this.fees = new types.ReserveFees({ ...fields.fees })
|
|
288
285
|
this.borrowRateCurve = new types.BorrowRateCurve({
|
|
289
286
|
...fields.borrowRateCurve,
|
|
@@ -328,7 +325,7 @@ export class ReserveConfig {
|
|
|
328
325
|
borsh.u16("maxLiquidationBonusBps"),
|
|
329
326
|
borsh.u16("badDebtLiquidationBonusBps"),
|
|
330
327
|
borsh.u64("deleveragingMarginCallPeriodSecs"),
|
|
331
|
-
borsh.u64("
|
|
328
|
+
borsh.u64("deleveragingThresholdDecreaseBpsPerDay"),
|
|
332
329
|
types.ReserveFees.layout("fees"),
|
|
333
330
|
types.BorrowRateCurve.layout("borrowRateCurve"),
|
|
334
331
|
borsh.u64("borrowFactorPct"),
|
|
@@ -370,7 +367,8 @@ export class ReserveConfig {
|
|
|
370
367
|
maxLiquidationBonusBps: obj.maxLiquidationBonusBps,
|
|
371
368
|
badDebtLiquidationBonusBps: obj.badDebtLiquidationBonusBps,
|
|
372
369
|
deleveragingMarginCallPeriodSecs: obj.deleveragingMarginCallPeriodSecs,
|
|
373
|
-
|
|
370
|
+
deleveragingThresholdDecreaseBpsPerDay:
|
|
371
|
+
obj.deleveragingThresholdDecreaseBpsPerDay,
|
|
374
372
|
fees: types.ReserveFees.fromDecoded(obj.fees),
|
|
375
373
|
borrowRateCurve: types.BorrowRateCurve.fromDecoded(obj.borrowRateCurve),
|
|
376
374
|
borrowFactorPct: obj.borrowFactorPct,
|
|
@@ -412,7 +410,8 @@ export class ReserveConfig {
|
|
|
412
410
|
maxLiquidationBonusBps: fields.maxLiquidationBonusBps,
|
|
413
411
|
badDebtLiquidationBonusBps: fields.badDebtLiquidationBonusBps,
|
|
414
412
|
deleveragingMarginCallPeriodSecs: fields.deleveragingMarginCallPeriodSecs,
|
|
415
|
-
|
|
413
|
+
deleveragingThresholdDecreaseBpsPerDay:
|
|
414
|
+
fields.deleveragingThresholdDecreaseBpsPerDay,
|
|
416
415
|
fees: types.ReserveFees.toEncodable(fields.fees),
|
|
417
416
|
borrowRateCurve: types.BorrowRateCurve.toEncodable(
|
|
418
417
|
fields.borrowRateCurve
|
|
@@ -457,8 +456,8 @@ export class ReserveConfig {
|
|
|
457
456
|
badDebtLiquidationBonusBps: this.badDebtLiquidationBonusBps,
|
|
458
457
|
deleveragingMarginCallPeriodSecs:
|
|
459
458
|
this.deleveragingMarginCallPeriodSecs.toString(),
|
|
460
|
-
|
|
461
|
-
this.
|
|
459
|
+
deleveragingThresholdDecreaseBpsPerDay:
|
|
460
|
+
this.deleveragingThresholdDecreaseBpsPerDay.toString(),
|
|
462
461
|
fees: this.fees.toJSON(),
|
|
463
462
|
borrowRateCurve: this.borrowRateCurve.toJSON(),
|
|
464
463
|
borrowFactorPct: this.borrowFactorPct.toString(),
|
|
@@ -501,8 +500,8 @@ export class ReserveConfig {
|
|
|
501
500
|
deleveragingMarginCallPeriodSecs: new BN(
|
|
502
501
|
obj.deleveragingMarginCallPeriodSecs
|
|
503
502
|
),
|
|
504
|
-
|
|
505
|
-
obj.
|
|
503
|
+
deleveragingThresholdDecreaseBpsPerDay: new BN(
|
|
504
|
+
obj.deleveragingThresholdDecreaseBpsPerDay
|
|
506
505
|
),
|
|
507
506
|
fees: types.ReserveFees.fromJSON(obj.fees),
|
|
508
507
|
borrowRateCurve: types.BorrowRateCurve.fromJSON(obj.borrowRateCurve),
|
|
@@ -335,7 +335,7 @@ function buildReserveConfig(fields: {
|
|
|
335
335
|
deleveragingMarginCallPeriodSecs: new BN(0),
|
|
336
336
|
borrowFactorPct: new BN(100),
|
|
337
337
|
elevationGroups: fields.configParams.elevationGroups,
|
|
338
|
-
|
|
338
|
+
deleveragingThresholdDecreaseBpsPerDay: new BN(24),
|
|
339
339
|
disableUsageAsCollOutsideEmode: 0,
|
|
340
340
|
utilizationLimitBlockBorrowingAbove: 0,
|
|
341
341
|
hostFixedInterestRateBps: 0,
|