@kamino-finance/klend-sdk 5.0.5 → 5.0.7
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/README_KAMINO_MANAGER.md +154 -17
- package/dist/classes/manager.d.ts +22 -0
- package/dist/classes/manager.d.ts.map +1 -1
- package/dist/classes/manager.js +29 -0
- package/dist/classes/manager.js.map +1 -1
- package/dist/classes/obligation.d.ts +3 -4
- package/dist/classes/obligation.d.ts.map +1 -1
- package/dist/classes/obligation.js +94 -26
- package/dist/classes/obligation.js.map +1 -1
- package/dist/classes/reserve.d.ts +1 -1
- package/dist/classes/reserve.d.ts.map +1 -1
- package/dist/classes/reserve.js +10 -2
- package/dist/classes/reserve.js.map +1 -1
- package/dist/classes/vault.d.ts +30 -0
- package/dist/classes/vault.d.ts.map +1 -1
- package/dist/classes/vault.js +177 -0
- package/dist/classes/vault.js.map +1 -1
- package/dist/client_kamino_manager.d.ts.map +1 -1
- package/dist/client_kamino_manager.js +113 -1
- package/dist/client_kamino_manager.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/VaultConfigField.d.ts +10 -10
- package/dist/idl_codegen_kamino_vault/types/VaultConfigField.d.ts.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/VaultConfigField.js +52 -51
- package/dist/idl_codegen_kamino_vault/types/VaultConfigField.js.map +1 -1
- package/package.json +1 -1
- package/src/classes/manager.ts +34 -0
- package/src/classes/obligation.ts +139 -29
- package/src/classes/reserve.ts +15 -2
- package/src/classes/vault.ts +250 -0
- package/src/client_kamino_manager.ts +174 -1
- package/src/idl_codegen_kamino_vault/types/VaultConfigField.ts +116 -117
|
@@ -1,270 +1,269 @@
|
|
|
1
|
-
import { PublicKey } from
|
|
2
|
-
import BN from
|
|
3
|
-
import * as types from
|
|
4
|
-
import * as borsh from
|
|
1
|
+
import { PublicKey } from '@solana/web3.js'; // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
2
|
+
import BN from 'bn.js'; // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
3
|
+
import * as types from '../types'; // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
4
|
+
import * as borsh from '@coral-xyz/borsh';
|
|
5
5
|
|
|
6
6
|
export interface PerformanceFeeBpsJSON {
|
|
7
|
-
kind:
|
|
7
|
+
kind: 'PerformanceFeeBps';
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
export class PerformanceFeeBps {
|
|
11
|
-
static readonly discriminator = 0
|
|
12
|
-
static readonly kind =
|
|
13
|
-
readonly discriminator = 0
|
|
14
|
-
readonly kind =
|
|
11
|
+
static readonly discriminator = 0;
|
|
12
|
+
static readonly kind = 'PerformanceFeeBps';
|
|
13
|
+
readonly discriminator = 0;
|
|
14
|
+
readonly kind = 'PerformanceFeeBps';
|
|
15
15
|
|
|
16
16
|
toJSON(): PerformanceFeeBpsJSON {
|
|
17
17
|
return {
|
|
18
|
-
kind:
|
|
19
|
-
}
|
|
18
|
+
kind: 'PerformanceFeeBps',
|
|
19
|
+
};
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
toEncodable() {
|
|
23
23
|
return {
|
|
24
24
|
PerformanceFeeBps: {},
|
|
25
|
-
}
|
|
25
|
+
};
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
export interface ManagementFeeBpsJSON {
|
|
30
|
-
kind:
|
|
30
|
+
kind: 'ManagementFeeBps';
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
export class ManagementFeeBps {
|
|
34
|
-
static readonly discriminator = 1
|
|
35
|
-
static readonly kind =
|
|
36
|
-
readonly discriminator = 1
|
|
37
|
-
readonly kind =
|
|
34
|
+
static readonly discriminator = 1;
|
|
35
|
+
static readonly kind = 'ManagementFeeBps';
|
|
36
|
+
readonly discriminator = 1;
|
|
37
|
+
readonly kind = 'ManagementFeeBps';
|
|
38
38
|
|
|
39
39
|
toJSON(): ManagementFeeBpsJSON {
|
|
40
40
|
return {
|
|
41
|
-
kind:
|
|
42
|
-
}
|
|
41
|
+
kind: 'ManagementFeeBps',
|
|
42
|
+
};
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
toEncodable() {
|
|
46
46
|
return {
|
|
47
47
|
ManagementFeeBps: {},
|
|
48
|
-
}
|
|
48
|
+
};
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
export interface MinDepositAmountJSON {
|
|
53
|
-
kind:
|
|
53
|
+
kind: 'MinDepositAmount';
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
export class MinDepositAmount {
|
|
57
|
-
static readonly discriminator = 2
|
|
58
|
-
static readonly kind =
|
|
59
|
-
readonly discriminator = 2
|
|
60
|
-
readonly kind =
|
|
57
|
+
static readonly discriminator = 2;
|
|
58
|
+
static readonly kind = 'MinDepositAmount';
|
|
59
|
+
readonly discriminator = 2;
|
|
60
|
+
readonly kind = 'MinDepositAmount';
|
|
61
61
|
|
|
62
62
|
toJSON(): MinDepositAmountJSON {
|
|
63
63
|
return {
|
|
64
|
-
kind:
|
|
65
|
-
}
|
|
64
|
+
kind: 'MinDepositAmount',
|
|
65
|
+
};
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
toEncodable() {
|
|
69
69
|
return {
|
|
70
70
|
MinDepositAmount: {},
|
|
71
|
-
}
|
|
71
|
+
};
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
export interface MinWithdrawAmountJSON {
|
|
76
|
-
kind:
|
|
76
|
+
kind: 'MinWithdrawAmount';
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
export class MinWithdrawAmount {
|
|
80
|
-
static readonly discriminator = 3
|
|
81
|
-
static readonly kind =
|
|
82
|
-
readonly discriminator = 3
|
|
83
|
-
readonly kind =
|
|
80
|
+
static readonly discriminator = 3;
|
|
81
|
+
static readonly kind = 'MinWithdrawAmount';
|
|
82
|
+
readonly discriminator = 3;
|
|
83
|
+
readonly kind = 'MinWithdrawAmount';
|
|
84
84
|
|
|
85
85
|
toJSON(): MinWithdrawAmountJSON {
|
|
86
86
|
return {
|
|
87
|
-
kind:
|
|
88
|
-
}
|
|
87
|
+
kind: 'MinWithdrawAmount',
|
|
88
|
+
};
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
toEncodable() {
|
|
92
92
|
return {
|
|
93
93
|
MinWithdrawAmount: {},
|
|
94
|
-
}
|
|
94
|
+
};
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
export interface MintInvestAmountJSON {
|
|
99
|
-
kind:
|
|
99
|
+
kind: 'MintInvestAmount';
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
export class MintInvestAmount {
|
|
103
|
-
static readonly discriminator = 4
|
|
104
|
-
static readonly kind =
|
|
105
|
-
readonly discriminator = 4
|
|
106
|
-
readonly kind =
|
|
103
|
+
static readonly discriminator = 4;
|
|
104
|
+
static readonly kind = 'MintInvestAmount';
|
|
105
|
+
readonly discriminator = 4;
|
|
106
|
+
readonly kind = 'MintInvestAmount';
|
|
107
107
|
|
|
108
108
|
toJSON(): MintInvestAmountJSON {
|
|
109
109
|
return {
|
|
110
|
-
kind:
|
|
111
|
-
}
|
|
110
|
+
kind: 'MintInvestAmount',
|
|
111
|
+
};
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
toEncodable() {
|
|
115
115
|
return {
|
|
116
116
|
MintInvestAmount: {},
|
|
117
|
-
}
|
|
117
|
+
};
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
120
|
|
|
121
121
|
export interface MinInvestDelaySlotsJSON {
|
|
122
|
-
kind:
|
|
122
|
+
kind: 'MinInvestDelaySlots';
|
|
123
123
|
}
|
|
124
124
|
|
|
125
125
|
export class MinInvestDelaySlots {
|
|
126
|
-
static readonly discriminator = 5
|
|
127
|
-
static readonly kind =
|
|
128
|
-
readonly discriminator = 5
|
|
129
|
-
readonly kind =
|
|
126
|
+
static readonly discriminator = 5;
|
|
127
|
+
static readonly kind = 'MinInvestDelaySlots';
|
|
128
|
+
readonly discriminator = 5;
|
|
129
|
+
readonly kind = 'MinInvestDelaySlots';
|
|
130
130
|
|
|
131
131
|
toJSON(): MinInvestDelaySlotsJSON {
|
|
132
132
|
return {
|
|
133
|
-
kind:
|
|
134
|
-
}
|
|
133
|
+
kind: 'MinInvestDelaySlots',
|
|
134
|
+
};
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
toEncodable() {
|
|
138
138
|
return {
|
|
139
139
|
MinInvestDelaySlots: {},
|
|
140
|
-
}
|
|
140
|
+
};
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
export interface CrankFundFeePerReserveJSON {
|
|
145
|
-
kind:
|
|
145
|
+
kind: 'CrankFundFeePerReserve';
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
export class CrankFundFeePerReserve {
|
|
149
|
-
static readonly discriminator = 6
|
|
150
|
-
static readonly kind =
|
|
151
|
-
readonly discriminator = 6
|
|
152
|
-
readonly kind =
|
|
149
|
+
static readonly discriminator = 6;
|
|
150
|
+
static readonly kind = 'CrankFundFeePerReserve';
|
|
151
|
+
readonly discriminator = 6;
|
|
152
|
+
readonly kind = 'CrankFundFeePerReserve';
|
|
153
153
|
|
|
154
154
|
toJSON(): CrankFundFeePerReserveJSON {
|
|
155
155
|
return {
|
|
156
|
-
kind:
|
|
157
|
-
}
|
|
156
|
+
kind: 'CrankFundFeePerReserve',
|
|
157
|
+
};
|
|
158
158
|
}
|
|
159
159
|
|
|
160
160
|
toEncodable() {
|
|
161
161
|
return {
|
|
162
162
|
CrankFundFeePerReserve: {},
|
|
163
|
-
}
|
|
163
|
+
};
|
|
164
164
|
}
|
|
165
165
|
}
|
|
166
166
|
|
|
167
167
|
export interface PendingVaultAdminJSON {
|
|
168
|
-
kind:
|
|
168
|
+
kind: 'PendingVaultAdmin';
|
|
169
169
|
}
|
|
170
170
|
|
|
171
171
|
export class PendingVaultAdmin {
|
|
172
|
-
static readonly discriminator = 7
|
|
173
|
-
static readonly kind =
|
|
174
|
-
readonly discriminator = 7
|
|
175
|
-
readonly kind =
|
|
172
|
+
static readonly discriminator = 7;
|
|
173
|
+
static readonly kind = 'PendingVaultAdmin';
|
|
174
|
+
readonly discriminator = 7;
|
|
175
|
+
readonly kind = 'PendingVaultAdmin';
|
|
176
176
|
|
|
177
177
|
toJSON(): PendingVaultAdminJSON {
|
|
178
178
|
return {
|
|
179
|
-
kind:
|
|
180
|
-
}
|
|
179
|
+
kind: 'PendingVaultAdmin',
|
|
180
|
+
};
|
|
181
181
|
}
|
|
182
182
|
|
|
183
183
|
toEncodable() {
|
|
184
184
|
return {
|
|
185
185
|
PendingVaultAdmin: {},
|
|
186
|
-
}
|
|
186
|
+
};
|
|
187
187
|
}
|
|
188
188
|
}
|
|
189
189
|
|
|
190
190
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
191
191
|
export function fromDecoded(obj: any): types.VaultConfigFieldKind {
|
|
192
|
-
if (typeof obj !==
|
|
193
|
-
throw new Error(
|
|
192
|
+
if (typeof obj !== 'object') {
|
|
193
|
+
throw new Error('Invalid enum object');
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
|
|
197
|
-
|
|
196
|
+
console.log('');
|
|
197
|
+
if ('PerformanceFeeBps' in obj) {
|
|
198
|
+
return new PerformanceFeeBps();
|
|
198
199
|
}
|
|
199
|
-
if (
|
|
200
|
-
return new ManagementFeeBps()
|
|
200
|
+
if ('ManagementFeeBps' in obj) {
|
|
201
|
+
return new ManagementFeeBps();
|
|
201
202
|
}
|
|
202
|
-
if (
|
|
203
|
-
return new MinDepositAmount()
|
|
203
|
+
if ('MinDepositAmount' in obj) {
|
|
204
|
+
return new MinDepositAmount();
|
|
204
205
|
}
|
|
205
|
-
if (
|
|
206
|
-
return new MinWithdrawAmount()
|
|
206
|
+
if ('MinWithdrawAmount' in obj) {
|
|
207
|
+
return new MinWithdrawAmount();
|
|
207
208
|
}
|
|
208
|
-
if (
|
|
209
|
-
return new MintInvestAmount()
|
|
209
|
+
if ('MintInvestAmount' in obj) {
|
|
210
|
+
return new MintInvestAmount();
|
|
210
211
|
}
|
|
211
|
-
if (
|
|
212
|
-
return new MinInvestDelaySlots()
|
|
212
|
+
if ('MinInvestDelaySlots' in obj) {
|
|
213
|
+
return new MinInvestDelaySlots();
|
|
213
214
|
}
|
|
214
|
-
if (
|
|
215
|
-
return new CrankFundFeePerReserve()
|
|
215
|
+
if ('CrankFundFeePerReserve' in obj) {
|
|
216
|
+
return new CrankFundFeePerReserve();
|
|
216
217
|
}
|
|
217
|
-
if (
|
|
218
|
-
return new PendingVaultAdmin()
|
|
218
|
+
if ('PendingVaultAdmin' in obj) {
|
|
219
|
+
return new PendingVaultAdmin();
|
|
219
220
|
}
|
|
220
221
|
|
|
221
|
-
throw new Error(
|
|
222
|
+
throw new Error('Invalid enum object');
|
|
222
223
|
}
|
|
223
224
|
|
|
224
|
-
export function fromJSON(
|
|
225
|
-
obj: types.VaultConfigFieldJSON
|
|
226
|
-
): types.VaultConfigFieldKind {
|
|
225
|
+
export function fromJSON(obj: types.VaultConfigFieldJSON): types.VaultConfigFieldKind {
|
|
227
226
|
switch (obj.kind) {
|
|
228
|
-
case
|
|
229
|
-
return new PerformanceFeeBps()
|
|
227
|
+
case 'PerformanceFeeBps': {
|
|
228
|
+
return new PerformanceFeeBps();
|
|
230
229
|
}
|
|
231
|
-
case
|
|
232
|
-
return new ManagementFeeBps()
|
|
230
|
+
case 'ManagementFeeBps': {
|
|
231
|
+
return new ManagementFeeBps();
|
|
233
232
|
}
|
|
234
|
-
case
|
|
235
|
-
return new MinDepositAmount()
|
|
233
|
+
case 'MinDepositAmount': {
|
|
234
|
+
return new MinDepositAmount();
|
|
236
235
|
}
|
|
237
|
-
case
|
|
238
|
-
return new MinWithdrawAmount()
|
|
236
|
+
case 'MinWithdrawAmount': {
|
|
237
|
+
return new MinWithdrawAmount();
|
|
239
238
|
}
|
|
240
|
-
case
|
|
241
|
-
return new MintInvestAmount()
|
|
239
|
+
case 'MintInvestAmount': {
|
|
240
|
+
return new MintInvestAmount();
|
|
242
241
|
}
|
|
243
|
-
case
|
|
244
|
-
return new MinInvestDelaySlots()
|
|
242
|
+
case 'MinInvestDelaySlots': {
|
|
243
|
+
return new MinInvestDelaySlots();
|
|
245
244
|
}
|
|
246
|
-
case
|
|
247
|
-
return new CrankFundFeePerReserve()
|
|
245
|
+
case 'CrankFundFeePerReserve': {
|
|
246
|
+
return new CrankFundFeePerReserve();
|
|
248
247
|
}
|
|
249
|
-
case
|
|
250
|
-
return new PendingVaultAdmin()
|
|
248
|
+
case 'PendingVaultAdmin': {
|
|
249
|
+
return new PendingVaultAdmin();
|
|
251
250
|
}
|
|
252
251
|
}
|
|
253
252
|
}
|
|
254
253
|
|
|
255
254
|
export function layout(property?: string) {
|
|
256
255
|
const ret = borsh.rustEnum([
|
|
257
|
-
borsh.struct([],
|
|
258
|
-
borsh.struct([],
|
|
259
|
-
borsh.struct([],
|
|
260
|
-
borsh.struct([],
|
|
261
|
-
borsh.struct([],
|
|
262
|
-
borsh.struct([],
|
|
263
|
-
borsh.struct([],
|
|
264
|
-
borsh.struct([],
|
|
265
|
-
])
|
|
256
|
+
borsh.struct([], 'PerformanceFeeBps'),
|
|
257
|
+
borsh.struct([], 'ManagementFeeBps'),
|
|
258
|
+
borsh.struct([], 'MinDepositAmount'),
|
|
259
|
+
borsh.struct([], 'MinWithdrawAmount'),
|
|
260
|
+
borsh.struct([], 'MintInvestAmount'),
|
|
261
|
+
borsh.struct([], 'MinInvestDelaySlots'),
|
|
262
|
+
borsh.struct([], 'CrankFundFeePerReserve'),
|
|
263
|
+
borsh.struct([], 'PendingVaultAdmin'),
|
|
264
|
+
]);
|
|
266
265
|
if (property !== undefined) {
|
|
267
|
-
return ret.replicate(property)
|
|
266
|
+
return ret.replicate(property);
|
|
268
267
|
}
|
|
269
|
-
return ret
|
|
268
|
+
return ret;
|
|
270
269
|
}
|