@exponent-labs/kamino-reserve-deserializer 0.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.
Files changed (71) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/build/fraction.d.ts +23 -0
  3. package/build/fraction.js +61 -0
  4. package/build/fraction.js.map +1 -0
  5. package/build/index.d.ts +102 -0
  6. package/build/index.js +214 -0
  7. package/build/index.js.map +1 -0
  8. package/build/types/BigFractionBytes.d.ts +26 -0
  9. package/build/types/BigFractionBytes.js +72 -0
  10. package/build/types/BigFractionBytes.js.map +1 -0
  11. package/build/types/BorrowRateCurve.d.ts +27 -0
  12. package/build/types/BorrowRateCurve.js +63 -0
  13. package/build/types/BorrowRateCurve.js.map +1 -0
  14. package/build/types/CurvePoint.d.ts +25 -0
  15. package/build/types/CurvePoint.js +68 -0
  16. package/build/types/CurvePoint.js.map +1 -0
  17. package/build/types/LastUpdate.d.ts +46 -0
  18. package/build/types/LastUpdate.js +88 -0
  19. package/build/types/LastUpdate.js.map +1 -0
  20. package/build/types/PriceHeuristic.d.ts +40 -0
  21. package/build/types/PriceHeuristic.js +81 -0
  22. package/build/types/PriceHeuristic.js.map +1 -0
  23. package/build/types/PythConfiguration.d.ts +24 -0
  24. package/build/types/PythConfiguration.js +64 -0
  25. package/build/types/PythConfiguration.js.map +1 -0
  26. package/build/types/ReserveCollateral.d.ts +52 -0
  27. package/build/types/ReserveCollateral.js +101 -0
  28. package/build/types/ReserveCollateral.js.map +1 -0
  29. package/build/types/ReserveConfig.d.ts +366 -0
  30. package/build/types/ReserveConfig.js +307 -0
  31. package/build/types/ReserveConfig.js.map +1 -0
  32. package/build/types/ReserveFees.d.ts +77 -0
  33. package/build/types/ReserveFees.js +98 -0
  34. package/build/types/ReserveFees.js.map +1 -0
  35. package/build/types/ReserveLiquidity.d.ts +181 -0
  36. package/build/types/ReserveLiquidity.js +214 -0
  37. package/build/types/ReserveLiquidity.js.map +1 -0
  38. package/build/types/ScopeConfiguration.d.ts +40 -0
  39. package/build/types/ScopeConfiguration.js +82 -0
  40. package/build/types/ScopeConfiguration.js.map +1 -0
  41. package/build/types/SwitchboardConfiguration.d.ts +29 -0
  42. package/build/types/SwitchboardConfiguration.js +70 -0
  43. package/build/types/SwitchboardConfiguration.js.map +1 -0
  44. package/build/types/TokenInfo.d.ts +121 -0
  45. package/build/types/TokenInfo.js +154 -0
  46. package/build/types/TokenInfo.js.map +1 -0
  47. package/build/types/WithdrawalCaps.d.ts +37 -0
  48. package/build/types/WithdrawalCaps.js +90 -0
  49. package/build/types/WithdrawalCaps.js.map +1 -0
  50. package/build/types/index.d.ts +46 -0
  51. package/build/types/index.js +88 -0
  52. package/build/types/index.js.map +1 -0
  53. package/package.json +20 -0
  54. package/src/fraction.ts +70 -0
  55. package/src/index.ts +269 -0
  56. package/src/types/BigFractionBytes.ts +59 -0
  57. package/src/types/BorrowRateCurve.ts +53 -0
  58. package/src/types/CurvePoint.ts +58 -0
  59. package/src/types/LastUpdate.ts +88 -0
  60. package/src/types/PriceHeuristic.ts +76 -0
  61. package/src/types/PythConfiguration.ts +54 -0
  62. package/src/types/ReserveCollateral.ts +103 -0
  63. package/src/types/ReserveConfig.ts +431 -0
  64. package/src/types/ReserveFees.ts +116 -0
  65. package/src/types/ReserveLiquidity.ts +280 -0
  66. package/src/types/ScopeConfiguration.ts +83 -0
  67. package/src/types/SwitchboardConfiguration.ts +62 -0
  68. package/src/types/TokenInfo.ts +178 -0
  69. package/src/types/WithdrawalCaps.ts +84 -0
  70. package/src/types/index.ts +88 -0
  71. package/tsconfig.json +18 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReserveConfig.js","sourceRoot":"","sources":["../../src/types/ReserveConfig.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ import BN from "bn.js";
2
+ export interface ReserveFeesFields {
3
+ /**
4
+ * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)
5
+ * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for
6
+ * clarity:
7
+ * 1% = (1 << 60) / 100 = 11529215046068470
8
+ * 0.01% (1 basis point) = 115292150460685
9
+ * 0.00001% (Aave borrow fee) = 115292150461
10
+ */
11
+ borrowFeeSf: BN;
12
+ /**
13
+ * Fee for flash loan, expressed as scaled fraction.
14
+ * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541
15
+ */
16
+ flashLoanFeeSf: BN;
17
+ /** Used for allignment */
18
+ padding: Array<number>;
19
+ }
20
+ export interface ReserveFeesJSON {
21
+ /**
22
+ * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)
23
+ * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for
24
+ * clarity:
25
+ * 1% = (1 << 60) / 100 = 11529215046068470
26
+ * 0.01% (1 basis point) = 115292150460685
27
+ * 0.00001% (Aave borrow fee) = 115292150461
28
+ */
29
+ borrowFeeSf: string;
30
+ /**
31
+ * Fee for flash loan, expressed as scaled fraction.
32
+ * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541
33
+ */
34
+ flashLoanFeeSf: string;
35
+ /** Used for allignment */
36
+ padding: Array<number>;
37
+ }
38
+ /**
39
+ * Additional fee information on a reserve
40
+ *
41
+ * These exist separately from interest accrual fees, and are specifically for the program owner
42
+ * and referral fee. The fees are paid out as a percentage of liquidity token amounts during
43
+ * repayments and liquidations.
44
+ */
45
+ export declare class ReserveFees {
46
+ /**
47
+ * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)
48
+ * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for
49
+ * clarity:
50
+ * 1% = (1 << 60) / 100 = 11529215046068470
51
+ * 0.01% (1 basis point) = 115292150460685
52
+ * 0.00001% (Aave borrow fee) = 115292150461
53
+ */
54
+ readonly borrowFeeSf: BN;
55
+ /**
56
+ * Fee for flash loan, expressed as scaled fraction.
57
+ * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541
58
+ */
59
+ readonly flashLoanFeeSf: BN;
60
+ /** Used for allignment */
61
+ readonly padding: Array<number>;
62
+ constructor(fields: ReserveFeesFields);
63
+ static layout(property?: string): any;
64
+ static fromDecoded(obj: any): ReserveFees;
65
+ static toEncodable(fields: ReserveFeesFields): {
66
+ borrowFeeSf: BN;
67
+ flashLoanFeeSf: BN;
68
+ padding: number[];
69
+ };
70
+ toJSON(): ReserveFeesJSON;
71
+ static fromJSON(obj: ReserveFeesJSON): ReserveFees;
72
+ toEncodable(): {
73
+ borrowFeeSf: BN;
74
+ flashLoanFeeSf: BN;
75
+ padding: number[];
76
+ };
77
+ }
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.ReserveFees = void 0;
30
+ const bn_js_1 = __importDefault(require("bn.js")); // eslint-disable-line @typescript-eslint/no-unused-vars
31
+ const borsh = __importStar(require("@coral-xyz/borsh"));
32
+ /**
33
+ * Additional fee information on a reserve
34
+ *
35
+ * These exist separately from interest accrual fees, and are specifically for the program owner
36
+ * and referral fee. The fees are paid out as a percentage of liquidity token amounts during
37
+ * repayments and liquidations.
38
+ */
39
+ class ReserveFees {
40
+ /**
41
+ * Fee assessed on `BorrowObligationLiquidity`, as scaled fraction (60 bits fractional part)
42
+ * Must be between `0` and `2^60`, such that `2^60 = 1`. A few examples for
43
+ * clarity:
44
+ * 1% = (1 << 60) / 100 = 11529215046068470
45
+ * 0.01% (1 basis point) = 115292150460685
46
+ * 0.00001% (Aave borrow fee) = 115292150461
47
+ */
48
+ borrowFeeSf;
49
+ /**
50
+ * Fee for flash loan, expressed as scaled fraction.
51
+ * 0.3% (Aave flash loan fee) = 0.003 * 2^60 = 3458764513820541
52
+ */
53
+ flashLoanFeeSf;
54
+ /** Used for allignment */
55
+ padding;
56
+ constructor(fields) {
57
+ this.borrowFeeSf = fields.borrowFeeSf;
58
+ this.flashLoanFeeSf = fields.flashLoanFeeSf;
59
+ this.padding = fields.padding;
60
+ }
61
+ static layout(property) {
62
+ return borsh.struct([borsh.u64("borrowFeeSf"), borsh.u64("flashLoanFeeSf"), borsh.array(borsh.u8(), 8, "padding")], property);
63
+ }
64
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
65
+ static fromDecoded(obj) {
66
+ return new ReserveFees({
67
+ borrowFeeSf: obj.borrowFeeSf,
68
+ flashLoanFeeSf: obj.flashLoanFeeSf,
69
+ padding: obj.padding,
70
+ });
71
+ }
72
+ static toEncodable(fields) {
73
+ return {
74
+ borrowFeeSf: fields.borrowFeeSf,
75
+ flashLoanFeeSf: fields.flashLoanFeeSf,
76
+ padding: fields.padding,
77
+ };
78
+ }
79
+ toJSON() {
80
+ return {
81
+ borrowFeeSf: this.borrowFeeSf.toString(),
82
+ flashLoanFeeSf: this.flashLoanFeeSf.toString(),
83
+ padding: this.padding,
84
+ };
85
+ }
86
+ static fromJSON(obj) {
87
+ return new ReserveFees({
88
+ borrowFeeSf: new bn_js_1.default(obj.borrowFeeSf),
89
+ flashLoanFeeSf: new bn_js_1.default(obj.flashLoanFeeSf),
90
+ padding: obj.padding,
91
+ });
92
+ }
93
+ toEncodable() {
94
+ return ReserveFees.toEncodable(this);
95
+ }
96
+ }
97
+ exports.ReserveFees = ReserveFees;
98
+ //# sourceMappingURL=ReserveFees.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReserveFees.js","sourceRoot":"","sources":["../../src/types/ReserveFees.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAsB,CAAC,wDAAwD;AAC/E,wDAAyC;AAwCzC;;;;;;GAMG;AACH,MAAa,WAAW;IACtB;;;;;;;OAOG;IACM,WAAW,CAAI;IACxB;;;OAGG;IACM,cAAc,CAAI;IAC3B,0BAA0B;IACjB,OAAO,CAAe;IAE/B,YAAY,MAAyB;QACnC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QACrC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAA;QAC3C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,QAAiB;QAC7B,OAAO,KAAK,CAAC,MAAM,CACjB,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,EAC9F,QAAQ,CACT,CAAA;IACH,CAAC;IAED,8DAA8D;IAC9D,MAAM,CAAC,WAAW,CAAC,GAAQ;QACzB,OAAO,IAAI,WAAW,CAAC;YACrB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAAyB;QAC1C,OAAO;YACL,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;YACxC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE;YAC9C,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAoB;QAClC,OAAO,IAAI,WAAW,CAAC;YACrB,WAAW,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,WAAW,CAAC;YACpC,cAAc,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,cAAc,CAAC;YAC1C,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAA;IACJ,CAAC;IAED,WAAW;QACT,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;CACF;AAnED,kCAmEC"}
@@ -0,0 +1,181 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ import BN from "bn.js";
3
+ import { BigFractionBytes, BigFractionBytesFields, BigFractionBytesJSON } from "./BigFractionBytes";
4
+ export interface ReserveLiquidityFields {
5
+ /** Reserve liquidity mint address */
6
+ mintPubkey: PublicKey;
7
+ /** Reserve liquidity supply address */
8
+ supplyVault: PublicKey;
9
+ /** Reserve liquidity fee collection address */
10
+ feeVault: PublicKey;
11
+ /** Reserve liquidity available */
12
+ availableAmount: BN;
13
+ /** Reserve liquidity borrowed (scaled fraction) */
14
+ borrowedAmountSf: BN;
15
+ /** Reserve liquidity market price in quote currency (scaled fraction) */
16
+ marketPriceSf: BN;
17
+ /** Unix timestamp of the market price (from the oracle) */
18
+ marketPriceLastUpdatedTs: BN;
19
+ /** Reserve liquidity mint decimals */
20
+ mintDecimals: BN;
21
+ /**
22
+ * Timestamp in slots when the last refresh reserve detected that the liquidity amount is above the deposit cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
23
+ * If the threshold is not crossed, then the timestamp is set to 0
24
+ */
25
+ depositLimitCrossedSlot: BN;
26
+ /**
27
+ * Timestamp in slots when the last refresh reserve detected that the borrowed amount is above the borrow cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
28
+ * If the threshold is not crossed, then the timestamp is set to 0
29
+ */
30
+ borrowLimitCrossedSlot: BN;
31
+ /** Reserve liquidity cumulative borrow rate (scaled fraction) */
32
+ cumulativeBorrowRateBsf: BigFractionBytesFields;
33
+ /** Reserve cumulative protocol fees (scaled fraction) */
34
+ accumulatedProtocolFeesSf: BN;
35
+ /** Reserve cumulative referrer fees (scaled fraction) */
36
+ accumulatedReferrerFeesSf: BN;
37
+ /** Reserve pending referrer fees, to be claimed in refresh_obligation by referrer or protocol (scaled fraction) */
38
+ pendingReferrerFeesSf: BN;
39
+ /** Reserve referrer fee absolute rate calculated at each refresh_reserve operation (scaled fraction) */
40
+ absoluteReferralRateSf: BN;
41
+ /** Token program of the liquidity mint */
42
+ tokenProgram: PublicKey;
43
+ padding2: Array<BN>;
44
+ padding3: Array<BN>;
45
+ }
46
+ export interface ReserveLiquidityJSON {
47
+ /** Reserve liquidity mint address */
48
+ mintPubkey: string;
49
+ /** Reserve liquidity supply address */
50
+ supplyVault: string;
51
+ /** Reserve liquidity fee collection address */
52
+ feeVault: string;
53
+ /** Reserve liquidity available */
54
+ availableAmount: string;
55
+ /** Reserve liquidity borrowed (scaled fraction) */
56
+ borrowedAmountSf: string;
57
+ /** Reserve liquidity market price in quote currency (scaled fraction) */
58
+ marketPriceSf: string;
59
+ /** Unix timestamp of the market price (from the oracle) */
60
+ marketPriceLastUpdatedTs: string;
61
+ /** Reserve liquidity mint decimals */
62
+ mintDecimals: string;
63
+ /**
64
+ * Timestamp in slots when the last refresh reserve detected that the liquidity amount is above the deposit cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
65
+ * If the threshold is not crossed, then the timestamp is set to 0
66
+ */
67
+ depositLimitCrossedSlot: string;
68
+ /**
69
+ * Timestamp in slots when the last refresh reserve detected that the borrowed amount is above the borrow cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
70
+ * If the threshold is not crossed, then the timestamp is set to 0
71
+ */
72
+ borrowLimitCrossedSlot: string;
73
+ /** Reserve liquidity cumulative borrow rate (scaled fraction) */
74
+ cumulativeBorrowRateBsf: BigFractionBytesJSON;
75
+ /** Reserve cumulative protocol fees (scaled fraction) */
76
+ accumulatedProtocolFeesSf: string;
77
+ /** Reserve cumulative referrer fees (scaled fraction) */
78
+ accumulatedReferrerFeesSf: string;
79
+ /** Reserve pending referrer fees, to be claimed in refresh_obligation by referrer or protocol (scaled fraction) */
80
+ pendingReferrerFeesSf: string;
81
+ /** Reserve referrer fee absolute rate calculated at each refresh_reserve operation (scaled fraction) */
82
+ absoluteReferralRateSf: string;
83
+ /** Token program of the liquidity mint */
84
+ tokenProgram: string;
85
+ padding2: Array<string>;
86
+ padding3: Array<string>;
87
+ }
88
+ /** Reserve liquidity */
89
+ export declare class ReserveLiquidity {
90
+ /** Reserve liquidity mint address */
91
+ readonly mintPubkey: PublicKey;
92
+ /** Reserve liquidity supply address */
93
+ readonly supplyVault: PublicKey;
94
+ /** Reserve liquidity fee collection address */
95
+ readonly feeVault: PublicKey;
96
+ /** Reserve liquidity available */
97
+ readonly availableAmount: BN;
98
+ /** Reserve liquidity borrowed (scaled fraction) */
99
+ readonly borrowedAmountSf: BN;
100
+ /** Reserve liquidity market price in quote currency (scaled fraction) */
101
+ readonly marketPriceSf: BN;
102
+ /** Unix timestamp of the market price (from the oracle) */
103
+ readonly marketPriceLastUpdatedTs: BN;
104
+ /** Reserve liquidity mint decimals */
105
+ readonly mintDecimals: BN;
106
+ /**
107
+ * Timestamp in slots when the last refresh reserve detected that the liquidity amount is above the deposit cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
108
+ * If the threshold is not crossed, then the timestamp is set to 0
109
+ */
110
+ readonly depositLimitCrossedSlot: BN;
111
+ /**
112
+ * Timestamp in slots when the last refresh reserve detected that the borrowed amount is above the borrow cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
113
+ * If the threshold is not crossed, then the timestamp is set to 0
114
+ */
115
+ readonly borrowLimitCrossedSlot: BN;
116
+ /** Reserve liquidity cumulative borrow rate (scaled fraction) */
117
+ readonly cumulativeBorrowRateBsf: BigFractionBytes;
118
+ /** Reserve cumulative protocol fees (scaled fraction) */
119
+ readonly accumulatedProtocolFeesSf: BN;
120
+ /** Reserve cumulative referrer fees (scaled fraction) */
121
+ readonly accumulatedReferrerFeesSf: BN;
122
+ /** Reserve pending referrer fees, to be claimed in refresh_obligation by referrer or protocol (scaled fraction) */
123
+ readonly pendingReferrerFeesSf: BN;
124
+ /** Reserve referrer fee absolute rate calculated at each refresh_reserve operation (scaled fraction) */
125
+ readonly absoluteReferralRateSf: BN;
126
+ /** Token program of the liquidity mint */
127
+ readonly tokenProgram: PublicKey;
128
+ readonly padding2: Array<BN>;
129
+ readonly padding3: Array<BN>;
130
+ constructor(fields: ReserveLiquidityFields);
131
+ static layout(property?: string): any;
132
+ static fromDecoded(obj: any): ReserveLiquidity;
133
+ static toEncodable(fields: ReserveLiquidityFields): {
134
+ mintPubkey: PublicKey;
135
+ supplyVault: PublicKey;
136
+ feeVault: PublicKey;
137
+ availableAmount: BN;
138
+ borrowedAmountSf: BN;
139
+ marketPriceSf: BN;
140
+ marketPriceLastUpdatedTs: BN;
141
+ mintDecimals: BN;
142
+ depositLimitCrossedSlot: BN;
143
+ borrowLimitCrossedSlot: BN;
144
+ cumulativeBorrowRateBsf: {
145
+ value: BN[]; /** Reserve liquidity mint decimals */
146
+ padding: BN[];
147
+ };
148
+ accumulatedProtocolFeesSf: BN;
149
+ accumulatedReferrerFeesSf: BN;
150
+ pendingReferrerFeesSf: BN;
151
+ absoluteReferralRateSf: BN;
152
+ tokenProgram: PublicKey;
153
+ padding2: BN[];
154
+ padding3: BN[];
155
+ };
156
+ toJSON(): ReserveLiquidityJSON;
157
+ static fromJSON(obj: ReserveLiquidityJSON): ReserveLiquidity;
158
+ toEncodable(): {
159
+ mintPubkey: PublicKey;
160
+ supplyVault: PublicKey;
161
+ feeVault: PublicKey;
162
+ availableAmount: BN;
163
+ borrowedAmountSf: BN;
164
+ marketPriceSf: BN;
165
+ marketPriceLastUpdatedTs: BN;
166
+ mintDecimals: BN;
167
+ depositLimitCrossedSlot: BN;
168
+ borrowLimitCrossedSlot: BN;
169
+ cumulativeBorrowRateBsf: {
170
+ value: BN[]; /** Reserve liquidity mint decimals */
171
+ padding: BN[];
172
+ };
173
+ accumulatedProtocolFeesSf: BN;
174
+ accumulatedReferrerFeesSf: BN;
175
+ pendingReferrerFeesSf: BN;
176
+ absoluteReferralRateSf: BN;
177
+ tokenProgram: PublicKey;
178
+ padding2: BN[];
179
+ padding3: BN[];
180
+ };
181
+ }
@@ -0,0 +1,214 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.ReserveLiquidity = void 0;
30
+ const web3_js_1 = require("@solana/web3.js"); // eslint-disable-line @typescript-eslint/no-unused-vars
31
+ const bn_js_1 = __importDefault(require("bn.js")); // eslint-disable-line @typescript-eslint/no-unused-vars
32
+ const borsh = __importStar(require("@coral-xyz/borsh"));
33
+ const BigFractionBytes_1 = require("./BigFractionBytes");
34
+ /** Reserve liquidity */
35
+ class ReserveLiquidity {
36
+ /** Reserve liquidity mint address */
37
+ mintPubkey;
38
+ /** Reserve liquidity supply address */
39
+ supplyVault;
40
+ /** Reserve liquidity fee collection address */
41
+ feeVault;
42
+ /** Reserve liquidity available */
43
+ availableAmount;
44
+ /** Reserve liquidity borrowed (scaled fraction) */
45
+ borrowedAmountSf;
46
+ /** Reserve liquidity market price in quote currency (scaled fraction) */
47
+ marketPriceSf;
48
+ /** Unix timestamp of the market price (from the oracle) */
49
+ marketPriceLastUpdatedTs;
50
+ /** Reserve liquidity mint decimals */
51
+ mintDecimals;
52
+ /**
53
+ * Timestamp in slots when the last refresh reserve detected that the liquidity amount is above the deposit cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
54
+ * If the threshold is not crossed, then the timestamp is set to 0
55
+ */
56
+ depositLimitCrossedSlot;
57
+ /**
58
+ * Timestamp in slots when the last refresh reserve detected that the borrowed amount is above the borrow cap. When this threshold is crossed, then redemptions (auto-deleverage) are enabled.
59
+ * If the threshold is not crossed, then the timestamp is set to 0
60
+ */
61
+ borrowLimitCrossedSlot;
62
+ /** Reserve liquidity cumulative borrow rate (scaled fraction) */
63
+ cumulativeBorrowRateBsf;
64
+ /** Reserve cumulative protocol fees (scaled fraction) */
65
+ accumulatedProtocolFeesSf;
66
+ /** Reserve cumulative referrer fees (scaled fraction) */
67
+ accumulatedReferrerFeesSf;
68
+ /** Reserve pending referrer fees, to be claimed in refresh_obligation by referrer or protocol (scaled fraction) */
69
+ pendingReferrerFeesSf;
70
+ /** Reserve referrer fee absolute rate calculated at each refresh_reserve operation (scaled fraction) */
71
+ absoluteReferralRateSf;
72
+ /** Token program of the liquidity mint */
73
+ tokenProgram;
74
+ padding2;
75
+ padding3;
76
+ constructor(fields) {
77
+ this.mintPubkey = fields.mintPubkey;
78
+ this.supplyVault = fields.supplyVault;
79
+ this.feeVault = fields.feeVault;
80
+ this.availableAmount = fields.availableAmount;
81
+ this.borrowedAmountSf = fields.borrowedAmountSf;
82
+ this.marketPriceSf = fields.marketPriceSf;
83
+ this.marketPriceLastUpdatedTs = fields.marketPriceLastUpdatedTs;
84
+ this.mintDecimals = fields.mintDecimals;
85
+ this.depositLimitCrossedSlot = fields.depositLimitCrossedSlot;
86
+ this.borrowLimitCrossedSlot = fields.borrowLimitCrossedSlot;
87
+ this.cumulativeBorrowRateBsf = new BigFractionBytes_1.BigFractionBytes({
88
+ ...fields.cumulativeBorrowRateBsf,
89
+ });
90
+ this.accumulatedProtocolFeesSf = fields.accumulatedProtocolFeesSf;
91
+ this.accumulatedReferrerFeesSf = fields.accumulatedReferrerFeesSf;
92
+ this.pendingReferrerFeesSf = fields.pendingReferrerFeesSf;
93
+ this.absoluteReferralRateSf = fields.absoluteReferralRateSf;
94
+ this.tokenProgram = fields.tokenProgram;
95
+ this.padding2 = fields.padding2;
96
+ this.padding3 = fields.padding3;
97
+ }
98
+ static layout(property) {
99
+ return borsh.struct([
100
+ borsh.publicKey("mintPubkey"),
101
+ borsh.publicKey("supplyVault"),
102
+ borsh.publicKey("feeVault"),
103
+ borsh.u64("availableAmount"),
104
+ borsh.u128("borrowedAmountSf"),
105
+ borsh.u128("marketPriceSf"),
106
+ borsh.u64("marketPriceLastUpdatedTs"),
107
+ borsh.u64("mintDecimals"),
108
+ borsh.u64("depositLimitCrossedSlot"),
109
+ borsh.u64("borrowLimitCrossedSlot"),
110
+ BigFractionBytes_1.BigFractionBytes.layout("cumulativeBorrowRateBsf"),
111
+ borsh.u128("accumulatedProtocolFeesSf"),
112
+ borsh.u128("accumulatedReferrerFeesSf"),
113
+ borsh.u128("pendingReferrerFeesSf"),
114
+ borsh.u128("absoluteReferralRateSf"),
115
+ borsh.publicKey("tokenProgram"),
116
+ borsh.array(borsh.u64(), 51, "padding2"),
117
+ borsh.array(borsh.u128(), 32, "padding3"),
118
+ ], property);
119
+ }
120
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
121
+ static fromDecoded(obj) {
122
+ return new ReserveLiquidity({
123
+ mintPubkey: obj.mintPubkey,
124
+ supplyVault: obj.supplyVault,
125
+ feeVault: obj.feeVault,
126
+ availableAmount: obj.availableAmount,
127
+ borrowedAmountSf: obj.borrowedAmountSf,
128
+ marketPriceSf: obj.marketPriceSf,
129
+ marketPriceLastUpdatedTs: obj.marketPriceLastUpdatedTs,
130
+ mintDecimals: obj.mintDecimals,
131
+ depositLimitCrossedSlot: obj.depositLimitCrossedSlot,
132
+ borrowLimitCrossedSlot: obj.borrowLimitCrossedSlot,
133
+ cumulativeBorrowRateBsf: BigFractionBytes_1.BigFractionBytes.fromDecoded(obj.cumulativeBorrowRateBsf),
134
+ accumulatedProtocolFeesSf: obj.accumulatedProtocolFeesSf,
135
+ accumulatedReferrerFeesSf: obj.accumulatedReferrerFeesSf,
136
+ pendingReferrerFeesSf: obj.pendingReferrerFeesSf,
137
+ absoluteReferralRateSf: obj.absoluteReferralRateSf,
138
+ tokenProgram: obj.tokenProgram,
139
+ padding2: obj.padding2,
140
+ padding3: obj.padding3,
141
+ });
142
+ }
143
+ static toEncodable(fields) {
144
+ return {
145
+ mintPubkey: fields.mintPubkey,
146
+ supplyVault: fields.supplyVault,
147
+ feeVault: fields.feeVault,
148
+ availableAmount: fields.availableAmount,
149
+ borrowedAmountSf: fields.borrowedAmountSf,
150
+ marketPriceSf: fields.marketPriceSf,
151
+ marketPriceLastUpdatedTs: fields.marketPriceLastUpdatedTs,
152
+ mintDecimals: fields.mintDecimals,
153
+ depositLimitCrossedSlot: fields.depositLimitCrossedSlot,
154
+ borrowLimitCrossedSlot: fields.borrowLimitCrossedSlot,
155
+ cumulativeBorrowRateBsf: BigFractionBytes_1.BigFractionBytes.toEncodable(fields.cumulativeBorrowRateBsf),
156
+ accumulatedProtocolFeesSf: fields.accumulatedProtocolFeesSf,
157
+ accumulatedReferrerFeesSf: fields.accumulatedReferrerFeesSf,
158
+ pendingReferrerFeesSf: fields.pendingReferrerFeesSf,
159
+ absoluteReferralRateSf: fields.absoluteReferralRateSf,
160
+ tokenProgram: fields.tokenProgram,
161
+ padding2: fields.padding2,
162
+ padding3: fields.padding3,
163
+ };
164
+ }
165
+ toJSON() {
166
+ return {
167
+ mintPubkey: this.mintPubkey.toString(),
168
+ supplyVault: this.supplyVault.toString(),
169
+ feeVault: this.feeVault.toString(),
170
+ availableAmount: this.availableAmount.toString(),
171
+ borrowedAmountSf: this.borrowedAmountSf.toString(),
172
+ marketPriceSf: this.marketPriceSf.toString(),
173
+ marketPriceLastUpdatedTs: this.marketPriceLastUpdatedTs.toString(),
174
+ mintDecimals: this.mintDecimals.toString(),
175
+ depositLimitCrossedSlot: this.depositLimitCrossedSlot.toString(),
176
+ borrowLimitCrossedSlot: this.borrowLimitCrossedSlot.toString(),
177
+ cumulativeBorrowRateBsf: this.cumulativeBorrowRateBsf.toJSON(),
178
+ accumulatedProtocolFeesSf: this.accumulatedProtocolFeesSf.toString(),
179
+ accumulatedReferrerFeesSf: this.accumulatedReferrerFeesSf.toString(),
180
+ pendingReferrerFeesSf: this.pendingReferrerFeesSf.toString(),
181
+ absoluteReferralRateSf: this.absoluteReferralRateSf.toString(),
182
+ tokenProgram: this.tokenProgram.toString(),
183
+ padding2: this.padding2.map((item) => item.toString()),
184
+ padding3: this.padding3.map((item) => item.toString()),
185
+ };
186
+ }
187
+ static fromJSON(obj) {
188
+ return new ReserveLiquidity({
189
+ mintPubkey: new web3_js_1.PublicKey(obj.mintPubkey),
190
+ supplyVault: new web3_js_1.PublicKey(obj.supplyVault),
191
+ feeVault: new web3_js_1.PublicKey(obj.feeVault),
192
+ availableAmount: new bn_js_1.default(obj.availableAmount),
193
+ borrowedAmountSf: new bn_js_1.default(obj.borrowedAmountSf),
194
+ marketPriceSf: new bn_js_1.default(obj.marketPriceSf),
195
+ marketPriceLastUpdatedTs: new bn_js_1.default(obj.marketPriceLastUpdatedTs),
196
+ mintDecimals: new bn_js_1.default(obj.mintDecimals),
197
+ depositLimitCrossedSlot: new bn_js_1.default(obj.depositLimitCrossedSlot),
198
+ borrowLimitCrossedSlot: new bn_js_1.default(obj.borrowLimitCrossedSlot),
199
+ cumulativeBorrowRateBsf: BigFractionBytes_1.BigFractionBytes.fromJSON(obj.cumulativeBorrowRateBsf),
200
+ accumulatedProtocolFeesSf: new bn_js_1.default(obj.accumulatedProtocolFeesSf),
201
+ accumulatedReferrerFeesSf: new bn_js_1.default(obj.accumulatedReferrerFeesSf),
202
+ pendingReferrerFeesSf: new bn_js_1.default(obj.pendingReferrerFeesSf),
203
+ absoluteReferralRateSf: new bn_js_1.default(obj.absoluteReferralRateSf),
204
+ tokenProgram: new web3_js_1.PublicKey(obj.tokenProgram),
205
+ padding2: obj.padding2.map((item) => new bn_js_1.default(item)),
206
+ padding3: obj.padding3.map((item) => new bn_js_1.default(item)),
207
+ });
208
+ }
209
+ toEncodable() {
210
+ return ReserveLiquidity.toEncodable(this);
211
+ }
212
+ }
213
+ exports.ReserveLiquidity = ReserveLiquidity;
214
+ //# sourceMappingURL=ReserveLiquidity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReserveLiquidity.js","sourceRoot":"","sources":["../../src/types/ReserveLiquidity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ export interface ScopeConfigurationFields {
3
+ /** Pubkey of the scope price feed (disabled if `null` or `default`) */
4
+ priceFeed: PublicKey;
5
+ /** This is the scope_id price chain that results in a price for the token */
6
+ priceChain: Array<number>;
7
+ /** This is the scope_id price chain for the twap */
8
+ twapChain: Array<number>;
9
+ }
10
+ export interface ScopeConfigurationJSON {
11
+ /** Pubkey of the scope price feed (disabled if `null` or `default`) */
12
+ priceFeed: string;
13
+ /** This is the scope_id price chain that results in a price for the token */
14
+ priceChain: Array<number>;
15
+ /** This is the scope_id price chain for the twap */
16
+ twapChain: Array<number>;
17
+ }
18
+ export declare class ScopeConfiguration {
19
+ /** Pubkey of the scope price feed (disabled if `null` or `default`) */
20
+ readonly priceFeed: PublicKey;
21
+ /** This is the scope_id price chain that results in a price for the token */
22
+ readonly priceChain: Array<number>;
23
+ /** This is the scope_id price chain for the twap */
24
+ readonly twapChain: Array<number>;
25
+ constructor(fields: ScopeConfigurationFields);
26
+ static layout(property?: string): any;
27
+ static fromDecoded(obj: any): ScopeConfiguration;
28
+ static toEncodable(fields: ScopeConfigurationFields): {
29
+ priceFeed: PublicKey;
30
+ priceChain: number[];
31
+ twapChain: number[];
32
+ };
33
+ toJSON(): ScopeConfigurationJSON;
34
+ static fromJSON(obj: ScopeConfigurationJSON): ScopeConfiguration;
35
+ toEncodable(): {
36
+ priceFeed: PublicKey;
37
+ priceChain: number[];
38
+ twapChain: number[];
39
+ };
40
+ }