@kamino-finance/klend-sdk 5.14.0 → 5.14.1-beta.0

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 (140) hide show
  1. package/dist/classes/configItems.d.ts +166 -0
  2. package/dist/classes/configItems.d.ts.map +1 -0
  3. package/dist/classes/configItems.js +202 -0
  4. package/dist/classes/configItems.js.map +1 -0
  5. package/dist/classes/farm_utils.d.ts.map +1 -1
  6. package/dist/classes/farm_utils.js +3 -10
  7. package/dist/classes/farm_utils.js.map +1 -1
  8. package/dist/classes/manager.d.ts +6 -21
  9. package/dist/classes/manager.d.ts.map +1 -1
  10. package/dist/classes/manager.js +40 -311
  11. package/dist/classes/manager.js.map +1 -1
  12. package/dist/classes/obligation.d.ts.map +1 -1
  13. package/dist/classes/obligation.js +14 -0
  14. package/dist/classes/obligation.js.map +1 -1
  15. package/dist/classes/reserve.d.ts +5 -14
  16. package/dist/classes/reserve.d.ts.map +1 -1
  17. package/dist/classes/reserve.js +91 -463
  18. package/dist/classes/reserve.js.map +1 -1
  19. package/dist/classes/shared.d.ts +0 -1
  20. package/dist/classes/shared.d.ts.map +1 -1
  21. package/dist/classes/shared.js.map +1 -1
  22. package/dist/classes/utils.d.ts +1 -0
  23. package/dist/classes/utils.d.ts.map +1 -1
  24. package/dist/classes/utils.js +12 -0
  25. package/dist/classes/utils.js.map +1 -1
  26. package/dist/classes/vault.d.ts +1 -11
  27. package/dist/classes/vault.d.ts.map +1 -1
  28. package/dist/classes/vault.js +6 -54
  29. package/dist/classes/vault.js.map +1 -1
  30. package/dist/client_kamino_manager.d.ts.map +1 -1
  31. package/dist/client_kamino_manager.js +27 -26
  32. package/dist/client_kamino_manager.js.map +1 -1
  33. package/dist/idl.json +186 -9
  34. package/dist/idl_codegen/accounts/GlobalConfig.d.ts +40 -0
  35. package/dist/idl_codegen/accounts/GlobalConfig.d.ts.map +1 -0
  36. package/dist/idl_codegen/accounts/GlobalConfig.js +116 -0
  37. package/dist/idl_codegen/accounts/GlobalConfig.js.map +1 -0
  38. package/dist/idl_codegen/accounts/LendingMarket.d.ts +24 -3
  39. package/dist/idl_codegen/accounts/LendingMarket.d.ts.map +1 -1
  40. package/dist/idl_codegen/accounts/LendingMarket.js +25 -7
  41. package/dist/idl_codegen/accounts/LendingMarket.js.map +1 -1
  42. package/dist/idl_codegen/accounts/index.d.ts +2 -0
  43. package/dist/idl_codegen/accounts/index.d.ts.map +1 -1
  44. package/dist/idl_codegen/accounts/index.js +3 -1
  45. package/dist/idl_codegen/accounts/index.js.map +1 -1
  46. package/dist/idl_codegen/errors/custom.d.ts +25 -1
  47. package/dist/idl_codegen/errors/custom.d.ts.map +1 -1
  48. package/dist/idl_codegen/errors/custom.js +43 -1
  49. package/dist/idl_codegen/errors/custom.js.map +1 -1
  50. package/dist/idl_codegen/instructions/idlMissingTypes.d.ts +2 -1
  51. package/dist/idl_codegen/instructions/idlMissingTypes.d.ts.map +1 -1
  52. package/dist/idl_codegen/instructions/idlMissingTypes.js +2 -1
  53. package/dist/idl_codegen/instructions/idlMissingTypes.js.map +1 -1
  54. package/dist/idl_codegen/instructions/index.d.ts +6 -0
  55. package/dist/idl_codegen/instructions/index.d.ts.map +1 -1
  56. package/dist/idl_codegen/instructions/index.js +7 -1
  57. package/dist/idl_codegen/instructions/index.js.map +1 -1
  58. package/dist/idl_codegen/instructions/initGlobalConfig.d.ts +10 -0
  59. package/dist/idl_codegen/instructions/initGlobalConfig.d.ts.map +1 -0
  60. package/dist/idl_codegen/instructions/initGlobalConfig.js +19 -0
  61. package/dist/idl_codegen/instructions/initGlobalConfig.js.map +1 -0
  62. package/dist/idl_codegen/instructions/updateGlobalConfig.d.ts +13 -0
  63. package/dist/idl_codegen/instructions/updateGlobalConfig.d.ts.map +1 -0
  64. package/dist/idl_codegen/instructions/updateGlobalConfig.js +61 -0
  65. package/dist/idl_codegen/instructions/updateGlobalConfig.js.map +1 -0
  66. package/dist/idl_codegen/instructions/updateGlobalConfigAdmin.d.ts +7 -0
  67. package/dist/idl_codegen/instructions/updateGlobalConfigAdmin.d.ts.map +1 -0
  68. package/dist/idl_codegen/instructions/updateGlobalConfigAdmin.js +16 -0
  69. package/dist/idl_codegen/instructions/updateGlobalConfigAdmin.js.map +1 -0
  70. package/dist/idl_codegen/instructions/updateReserveConfig.d.ts +4 -3
  71. package/dist/idl_codegen/instructions/updateReserveConfig.d.ts.map +1 -1
  72. package/dist/idl_codegen/instructions/updateReserveConfig.js +5 -3
  73. package/dist/idl_codegen/instructions/updateReserveConfig.js.map +1 -1
  74. package/dist/idl_codegen/instructions/withdrawProtocolFee.d.ts +2 -2
  75. package/dist/idl_codegen/instructions/withdrawProtocolFee.d.ts.map +1 -1
  76. package/dist/idl_codegen/instructions/withdrawProtocolFee.js +2 -6
  77. package/dist/idl_codegen/instructions/withdrawProtocolFee.js.map +1 -1
  78. package/dist/idl_codegen/types/UpdateGlobalConfigMode.d.ts +32 -0
  79. package/dist/idl_codegen/types/UpdateGlobalConfigMode.d.ts.map +1 -0
  80. package/dist/idl_codegen/types/UpdateGlobalConfigMode.js +108 -0
  81. package/dist/idl_codegen/types/UpdateGlobalConfigMode.js.map +1 -0
  82. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts +33 -7
  83. package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts.map +1 -1
  84. package/dist/idl_codegen/types/UpdateLendingMarketMode.js +60 -12
  85. package/dist/idl_codegen/types/UpdateLendingMarketMode.js.map +1 -1
  86. package/dist/idl_codegen/types/index.d.ts +6 -2
  87. package/dist/idl_codegen/types/index.d.ts.map +1 -1
  88. package/dist/idl_codegen/types/index.js +3 -1
  89. package/dist/idl_codegen/types/index.js.map +1 -1
  90. package/dist/utils/accountListing.d.ts +1 -1
  91. package/dist/utils/accountListing.d.ts.map +1 -1
  92. package/dist/utils/accountListing.js +2 -2
  93. package/dist/utils/accountListing.js.map +1 -1
  94. package/dist/utils/api.d.ts +1 -5
  95. package/dist/utils/api.d.ts.map +1 -1
  96. package/dist/utils/api.js +6 -15
  97. package/dist/utils/api.js.map +1 -1
  98. package/dist/utils/constants.d.ts +1 -1
  99. package/dist/utils/constants.js +1 -1
  100. package/dist/utils/lookupTable.d.ts.map +1 -1
  101. package/dist/utils/lookupTable.js +1 -6
  102. package/dist/utils/lookupTable.js.map +1 -1
  103. package/dist/utils/managerTypes.d.ts.map +1 -1
  104. package/dist/utils/managerTypes.js +10 -4
  105. package/dist/utils/managerTypes.js.map +1 -1
  106. package/dist/utils/seeds.d.ts +16 -0
  107. package/dist/utils/seeds.d.ts.map +1 -1
  108. package/dist/utils/seeds.js +23 -1
  109. package/dist/utils/seeds.js.map +1 -1
  110. package/package.json +1 -1
  111. package/src/classes/configItems.ts +295 -0
  112. package/src/classes/farm_utils.ts +3 -11
  113. package/src/classes/manager.ts +52 -417
  114. package/src/classes/obligation.ts +16 -0
  115. package/src/classes/reserve.ts +119 -783
  116. package/src/classes/shared.ts +0 -1
  117. package/src/classes/utils.ts +12 -0
  118. package/src/classes/vault.ts +7 -75
  119. package/src/client_kamino_manager.ts +42 -34
  120. package/src/idl.json +186 -9
  121. package/src/idl_codegen/accounts/GlobalConfig.ts +125 -0
  122. package/src/idl_codegen/accounts/LendingMarket.ts +41 -9
  123. package/src/idl_codegen/accounts/index.ts +2 -0
  124. package/src/idl_codegen/errors/custom.ts +45 -0
  125. package/src/idl_codegen/instructions/idlMissingTypes.ts +4 -2
  126. package/src/idl_codegen/instructions/index.ts +9 -0
  127. package/src/idl_codegen/instructions/initGlobalConfig.ts +30 -0
  128. package/src/idl_codegen/instructions/updateGlobalConfig.ts +47 -0
  129. package/src/idl_codegen/instructions/updateGlobalConfigAdmin.ts +24 -0
  130. package/src/idl_codegen/instructions/updateReserveConfig.ts +7 -5
  131. package/src/idl_codegen/instructions/withdrawProtocolFee.ts +4 -8
  132. package/src/idl_codegen/types/UpdateGlobalConfigMode.ts +90 -0
  133. package/src/idl_codegen/types/UpdateLendingMarketMode.ts +73 -13
  134. package/src/idl_codegen/types/index.ts +16 -2
  135. package/src/utils/accountListing.ts +2 -3
  136. package/src/utils/api.ts +6 -20
  137. package/src/utils/constants.ts +1 -1
  138. package/src/utils/lookupTable.ts +1 -7
  139. package/src/utils/managerTypes.ts +10 -4
  140. package/src/utils/seeds.ts +25 -0
@@ -0,0 +1,166 @@
1
+ import { Layout } from '@coral-xyz/borsh';
2
+ /**
3
+ * An object literal specifying *all* "update mode" enum values (of type {@code M}) and their corresponding config items
4
+ * (belonging to a top-level config struct {@code C}).
5
+ *
6
+ * An instance of this type is needed to construct a {@link ConfigUpdater}, as shown below.
7
+ *
8
+ * @example
9
+ * ```
10
+ * // Define the updater using a "map" - the line below would NOT compile if you forgot about any `StarWarsUpdateMode`:
11
+ * const STAR_WARS_UPDATER = new ConfigUpdater(StarWarsUpdateMode.fromDecoded, StarWars, (config) => ({
12
+ * [StarWarsUpdateMode.ANewHope.kind]: config.aNewHope,
13
+ * [StarWarsUpdateMode.TheEmpireStrikesBack.kind]: config.theEmpireStrikesBack,
14
+ * [StarWarsUpdateMode.ReturnOfTheJedi.kind]: config.returnOfTheJedi,
15
+ * }));
16
+ * ```
17
+ */
18
+ export type ConfigItemMap<M extends BorshEnum, C> = BorshEnumMap<M, SingleOrArray<ConfigItem<C, any>>>;
19
+ /**
20
+ * As advertised.
21
+ */
22
+ export type SingleOrArray<T> = T | T[];
23
+ /**
24
+ * A set of everything required to create an update ix for a single config item of type {@code A} belonging to a
25
+ * config object of type {@code C}.
26
+ */
27
+ export type ConfigItem<C, A> = {
28
+ readonly __layout: Layout<A>;
29
+ readonly __getter: Getter<C, A>;
30
+ };
31
+ /**
32
+ * A {@link ConfigItem} representing a borsh structure.
33
+ *
34
+ * Such structure may be used:
35
+ * - either directly (i.e. a borsh-serialized "fat" config item, e.g. `ReserveConfig.borrowRateCurve`),
36
+ * - or just to access its fields (e.g. `ReserveConfig.tokenInfo.pythConfiguration.price`).
37
+ */
38
+ export type StructConfigItem<C, A extends Record<string, any>> = ConfigItem<C, A> & {
39
+ [K in keyof A]: A[K] extends object ? StructConfigItem<C, A[K]> : ConfigItem<C, A>;
40
+ };
41
+ /**
42
+ * A syntactic sugar allowing for auto-completion of values within {@link ConfigItemMap}.
43
+ */
44
+ export type AnyConfigItem<C, A> = A extends Record<string, any> ? StructConfigItem<C, A> : ConfigItem<C, A>;
45
+ /**
46
+ * A composite {@link ConfigItem}, allowing to encode multiple fields together.
47
+ *
48
+ * @example
49
+ * ```
50
+ * ...
51
+ * [CartoonsUpdateMode.UpdateTomAndJerry.discriminator]: new CompositeConfigItem(
52
+ * CARTOONS.value().characters.cats.tom,
53
+ * CARTOONS.value().characters.rodents.jerry
54
+ * ),
55
+ * ...
56
+ * ```
57
+ */
58
+ export declare class CompositeConfigItem<C> implements ConfigItem<C, Record<string, any>> {
59
+ readonly __layout: Layout<Record<string, any>>;
60
+ readonly __getter: Getter<C, Record<string, any>>;
61
+ constructor(...components: AnyConfigItem<C, any>[]);
62
+ }
63
+ /**
64
+ * Creates an array of config items - one per each element of the given array.
65
+ *
66
+ * An example use-case is `LendingMarket.elevationGroups[]`: to update all of them, we need N ixs:
67
+ * - `updateLendingMarket(mode = ElevationGroup, value = elevationGroups[0])`
68
+ * - `updateLendingMarket(mode = ElevationGroup, value = elevationGroups[1])`
69
+ * - `updateLendingMarket(mode = ElevationGroup, value = elevationGroups[2])`
70
+ * ...
71
+ *
72
+ * So: conceptually, the *array* is not "a config item". Each *slot* in that array is its own config item.
73
+ */
74
+ export declare function arrayElementConfigItems<C, A>(arrayConfigItem: ConfigItem<C, A[]>): ConfigItem<C, A>[];
75
+ /**
76
+ * A constructor reference of a borsh structure.
77
+ */
78
+ export interface BorshStructClass<C> {
79
+ new (...args: any[]): C;
80
+ layout: any;
81
+ }
82
+ /**
83
+ * A missing common type for borsh enums, which borsh should really have provided itself.
84
+ */
85
+ export interface BorshEnum {
86
+ kind: string;
87
+ }
88
+ /**
89
+ * A part of a {@link ConfigUpdater} responsible for a single config item.
90
+ */
91
+ export declare class ConfigItemUpdater<C, A> {
92
+ private readonly item;
93
+ constructor(item: ConfigItem<C, A>);
94
+ /**
95
+ * Returns a serialized value of the specific config item extracted from the given top-level {@code newConfig}, or
96
+ * `undefined` if the value has not changed from the given {@code currentConfig}.
97
+ */
98
+ encodeUpdatedItemFrom(currentConfig: C | undefined, newConfig: C): Uint8Array | undefined;
99
+ /**
100
+ * Borsh-serializes the given value.
101
+ *
102
+ * Only exposed for some legacy callers which still construct the update ixs manually (in tests).
103
+ */
104
+ encodeItem(item: A): Uint8Array;
105
+ }
106
+ /**
107
+ * A resolver of config item changes.
108
+ */
109
+ export declare class ConfigUpdater<M extends BorshEnum, C> {
110
+ private readonly itemUpdaters;
111
+ /**
112
+ * A resolving constructor.
113
+ *
114
+ * The inputs:
115
+ * - `fromDecoded`: a reference to the codegen'ed enum-decoding function, e.g. `UpdateConfigMode.fromDecoded`. Needed
116
+ * to turn the `<enumClass>.kind` strings into enums (i.e. instances of `M`).
117
+ * - `configClass`: a reference to the codegen'ed top-level config class, e.g. `ReserveConfig`. Need to create a
118
+ * completion helper for the `itemMapBuilder`.
119
+ * - `itemMapBuilder`: a function building a {@link ConfigItemMap} using the completion helper provided as its
120
+ * argument, e.g. `(config) => ({[UpdateLendingMarketMode.UpdateImmutableFlag.kind]: config.immutable, ...})`.
121
+ *
122
+ * See the usage example at {@link ConfigItemMap}.
123
+ */
124
+ constructor(fromDecoded: (mode: any) => M, configClass: BorshStructClass<C>, itemMapBuilder: (config: AnyConfigItem<C, C>) => ConfigItemMap<M, C>);
125
+ /**
126
+ * Returns all changes between the given current and new configs - in particular, this will be *all* supported fields'
127
+ * changes if the previous config does not exist.
128
+ *
129
+ * Please note that more than one {@link EncodedConfigUpdate}s can be associated with a single `M` enum value (in
130
+ * cases where e.g. an array property is updated by individual updates of its elements).
131
+ */
132
+ encodeAllUpdates(currentConfig: C | undefined, newConfig: C): EncodedConfigUpdate<M>[];
133
+ /**
134
+ * Gets the single updater of the given config item.
135
+ *
136
+ * Throws an error if the updates are not supported (e.g. for deprecated modes) or if the given item is handled by
137
+ * multiple updaters (e.g. for an array property) - to handle these cases, use {@link allForMode()}.
138
+ */
139
+ forMode(mode: M): ConfigItemUpdater<C, any>;
140
+ /**
141
+ * Gets all the updaters of the given config item.
142
+ *
143
+ * This may be an empty array (e.g. for deprecated modes), or multiple elements (e.g. if an array property is updated
144
+ * by individual updates of its elements). If you expect a single updater, use {@link forMode()}.
145
+ */
146
+ allForMode(mode: M): ConfigItemUpdater<C, any>[];
147
+ }
148
+ /**
149
+ * The update mode discriminator and the serialized value needed to construct an update ix.
150
+ */
151
+ export type EncodedConfigUpdate<M extends BorshEnum> = {
152
+ mode: M;
153
+ value: Uint8Array;
154
+ };
155
+ /**
156
+ * Borsh-serializes the given value according to the given layout.
157
+ *
158
+ * Only exposed for some legacy callers which still construct the update ixs manually (in tests).
159
+ */
160
+ export declare function encodeUsingLayout<T>(layout: Layout<T>, value: T): Uint8Array;
161
+ type BorshEnumMap<M extends BorshEnum, T> = {
162
+ [Key in M['kind']]: T;
163
+ };
164
+ type Getter<C, A> = (config: C) => A;
165
+ export {};
166
+ //# sourceMappingURL=configItems.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configItems.d.ts","sourceRoot":"","sources":["../../src/classes/configItems.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConfigUpdater = exports.ConfigItemUpdater = exports.CompositeConfigItem = void 0;
4
+ exports.arrayElementConfigItems = arrayElementConfigItems;
5
+ exports.encodeUsingLayout = encodeUsingLayout;
6
+ const borsh_1 = require("@coral-xyz/borsh");
7
+ const utils_1 = require("./utils");
8
+ const buffer_1 = require("buffer");
9
+ /**
10
+ * A composite {@link ConfigItem}, allowing to encode multiple fields together.
11
+ *
12
+ * @example
13
+ * ```
14
+ * ...
15
+ * [CartoonsUpdateMode.UpdateTomAndJerry.discriminator]: new CompositeConfigItem(
16
+ * CARTOONS.value().characters.cats.tom,
17
+ * CARTOONS.value().characters.rodents.jerry
18
+ * ),
19
+ * ...
20
+ * ```
21
+ */
22
+ class CompositeConfigItem {
23
+ __layout;
24
+ __getter;
25
+ constructor(...components) {
26
+ this.__layout = (0, borsh_1.struct)(components.map((component, index) => component.__layout.replicate(index.toString())));
27
+ this.__getter = (config) => Object.fromEntries(components.map((component, index) => [index.toString(), component.__getter(config)]));
28
+ }
29
+ }
30
+ exports.CompositeConfigItem = CompositeConfigItem;
31
+ /**
32
+ * Creates an array of config items - one per each element of the given array.
33
+ *
34
+ * An example use-case is `LendingMarket.elevationGroups[]`: to update all of them, we need N ixs:
35
+ * - `updateLendingMarket(mode = ElevationGroup, value = elevationGroups[0])`
36
+ * - `updateLendingMarket(mode = ElevationGroup, value = elevationGroups[1])`
37
+ * - `updateLendingMarket(mode = ElevationGroup, value = elevationGroups[2])`
38
+ * ...
39
+ *
40
+ * So: conceptually, the *array* is not "a config item". Each *slot* in that array is its own config item.
41
+ */
42
+ function arrayElementConfigItems(arrayConfigItem) {
43
+ const arrayGetter = arrayConfigItem.__getter;
44
+ const wrappedSequenceLayout = arrayConfigItem.__layout;
45
+ const sequenceLayout = wrappedSequenceLayout.layout?.fields?.[0];
46
+ if (sequenceLayout === undefined) {
47
+ throw new Error(`unexpected layout of the input array config item: ${(0, utils_1.toJson)(wrappedSequenceLayout, true)}`);
48
+ }
49
+ return new Array(sequenceLayout.count)
50
+ .fill(sequenceLayout.elementLayout)
51
+ .map((elementLayout, index) => ({
52
+ __layout: elementLayout,
53
+ __getter: (config) => arrayGetter(config)[index],
54
+ }));
55
+ }
56
+ /**
57
+ * A part of a {@link ConfigUpdater} responsible for a single config item.
58
+ */
59
+ class ConfigItemUpdater {
60
+ item;
61
+ constructor(item) {
62
+ this.item = item;
63
+ }
64
+ /**
65
+ * Returns a serialized value of the specific config item extracted from the given top-level {@code newConfig}, or
66
+ * `undefined` if the value has not changed from the given {@code currentConfig}.
67
+ */
68
+ encodeUpdatedItemFrom(currentConfig, newConfig) {
69
+ const getter = this.item.__getter;
70
+ const newItemValue = this.encodeItem(getter(newConfig));
71
+ if (currentConfig === undefined) {
72
+ return newItemValue;
73
+ }
74
+ if ((0, utils_1.blobEquals)(newItemValue, this.encodeItem(getter(currentConfig)))) {
75
+ return undefined;
76
+ }
77
+ return newItemValue;
78
+ }
79
+ /**
80
+ * Borsh-serializes the given value.
81
+ *
82
+ * Only exposed for some legacy callers which still construct the update ixs manually (in tests).
83
+ */
84
+ encodeItem(item) {
85
+ return encodeUsingLayout(this.item.__layout, item);
86
+ }
87
+ }
88
+ exports.ConfigItemUpdater = ConfigItemUpdater;
89
+ /**
90
+ * A resolver of config item changes.
91
+ */
92
+ class ConfigUpdater {
93
+ itemUpdaters;
94
+ /**
95
+ * A resolving constructor.
96
+ *
97
+ * The inputs:
98
+ * - `fromDecoded`: a reference to the codegen'ed enum-decoding function, e.g. `UpdateConfigMode.fromDecoded`. Needed
99
+ * to turn the `<enumClass>.kind` strings into enums (i.e. instances of `M`).
100
+ * - `configClass`: a reference to the codegen'ed top-level config class, e.g. `ReserveConfig`. Need to create a
101
+ * completion helper for the `itemMapBuilder`.
102
+ * - `itemMapBuilder`: a function building a {@link ConfigItemMap} using the completion helper provided as its
103
+ * argument, e.g. `(config) => ({[UpdateLendingMarketMode.UpdateImmutableFlag.kind]: config.immutable, ...})`.
104
+ *
105
+ * See the usage example at {@link ConfigItemMap}.
106
+ */
107
+ constructor(fromDecoded, configClass, itemMapBuilder) {
108
+ this.itemUpdaters = new Map(Object.entries(itemMapBuilder(wrap(configClass))).map(([kind, itemOrArray]) => [
109
+ kind,
110
+ [
111
+ fromDecoded({ [kind]: {} }),
112
+ toArray(itemOrArray).map((item) => new ConfigItemUpdater(item)),
113
+ ],
114
+ ]));
115
+ }
116
+ /**
117
+ * Returns all changes between the given current and new configs - in particular, this will be *all* supported fields'
118
+ * changes if the previous config does not exist.
119
+ *
120
+ * Please note that more than one {@link EncodedConfigUpdate}s can be associated with a single `M` enum value (in
121
+ * cases where e.g. an array property is updated by individual updates of its elements).
122
+ */
123
+ encodeAllUpdates(currentConfig, newConfig) {
124
+ const updates = [];
125
+ for (const [mode, itemUpdaters] of this.itemUpdaters.values()) {
126
+ for (const itemUpdater of itemUpdaters) {
127
+ const value = itemUpdater.encodeUpdatedItemFrom(currentConfig, newConfig);
128
+ if (value === undefined) {
129
+ continue;
130
+ }
131
+ updates.push({ mode, value });
132
+ }
133
+ }
134
+ return updates;
135
+ }
136
+ /**
137
+ * Gets the single updater of the given config item.
138
+ *
139
+ * Throws an error if the updates are not supported (e.g. for deprecated modes) or if the given item is handled by
140
+ * multiple updaters (e.g. for an array property) - to handle these cases, use {@link allForMode()}.
141
+ */
142
+ forMode(mode) {
143
+ const itemUpdaters = this.allForMode(mode);
144
+ switch (itemUpdaters.length) {
145
+ case 0:
146
+ throw new Error(`updates not supported (updaters for ${mode.kind} were explicitly set to [])`);
147
+ case 1:
148
+ return itemUpdaters[0];
149
+ default:
150
+ throw new Error(`${mode.kind} defines multiple (${itemUpdaters.length}) updaters`);
151
+ }
152
+ }
153
+ /**
154
+ * Gets all the updaters of the given config item.
155
+ *
156
+ * This may be an empty array (e.g. for deprecated modes), or multiple elements (e.g. if an array property is updated
157
+ * by individual updates of its elements). If you expect a single updater, use {@link forMode()}.
158
+ */
159
+ allForMode(mode) {
160
+ const [_mode, itemUpdaters] = this.itemUpdaters.get(mode.kind) ??
161
+ (0, utils_1.orThrow)(`updaters for ${mode.kind} were not set (should not be possible, due to type-safety)`);
162
+ return itemUpdaters;
163
+ }
164
+ }
165
+ exports.ConfigUpdater = ConfigUpdater;
166
+ /**
167
+ * Borsh-serializes the given value according to the given layout.
168
+ *
169
+ * Only exposed for some legacy callers which still construct the update ixs manually (in tests).
170
+ */
171
+ function encodeUsingLayout(layout, value) {
172
+ const buffer = buffer_1.Buffer.alloc(layout.span);
173
+ const length = layout.encode(value, buffer, 0);
174
+ if (length !== layout.span) {
175
+ throw new Error(`layout span declared incorrect length ${layout.span}; got ${length}`);
176
+ }
177
+ return Uint8Array.from(buffer);
178
+ }
179
+ // Only internals below:
180
+ function wrap(configClass) {
181
+ return withPotentialChildren({
182
+ __layout: typeof configClass.layout === 'function' ? configClass.layout() : configClass.layout,
183
+ __getter: (config) => config,
184
+ });
185
+ }
186
+ function wrapChild(layout, parent) {
187
+ return withPotentialChildren({
188
+ __layout: layout,
189
+ __getter: (config) => parent.__getter(config)[layout.property],
190
+ });
191
+ }
192
+ function withPotentialChildren(item) {
193
+ for (const fieldLayout of item.__layout.fields ?? []) {
194
+ const structItem = item;
195
+ structItem[fieldLayout.property] = wrapChild(fieldLayout, structItem);
196
+ }
197
+ return item;
198
+ }
199
+ function toArray(singleOrArray) {
200
+ return Array.isArray(singleOrArray) ? singleOrArray : [singleOrArray];
201
+ }
202
+ //# sourceMappingURL=configItems.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configItems.js","sourceRoot":"","sources":["../../src/classes/configItems.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"farm_utils.d.ts","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,SAAS,EAET,SAAS,EAKV,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAEzC,eAAO,MAAM,2BAA2B,EAAE,SAAyE,CAAC;AAEpH,wBAAsB,eAAe,CACnC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,OAAO,EACxB,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAuBnC;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAiBjC;AAGD,wBAAsB,gCAAgC,CACpD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,SAAS,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAKjC;AAED,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,6BAA6B,CAAC,CASxC;AAED,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,OAAO,EAClB,aAAa,EAAE,SAAS,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAK/B;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,sBAAsB,CAAC,CAGjC;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAEhG;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,sBAAsB,EAAE,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,sBAAsB,CAAC;IAClC,UAAU,EAAE,sBAAsB,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"farm_utils.d.ts","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EAET,SAAS,EAKV,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAEzC,eAAO,MAAM,2BAA2B,EAAE,SAAyE,CAAC;AAEpH,wBAAsB,eAAe,CACnC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,OAAO,EACxB,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAuBnC;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,SAAS,CAAC,CAGpB;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAkBjC;AAGD,wBAAsB,gCAAgC,CACpD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,SAAS,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAKjC;AAED,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,OAAO,EAC1B,WAAW,EAAE,SAAS,EACtB,gBAAgB,CAAC,EAAE,SAAS,GAC3B,OAAO,CAAC,6BAA6B,CAAC,CASxC;AAED,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,OAAO,EAClB,aAAa,EAAE,SAAS,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAK/B;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,EACf,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,sBAAsB,CAAC,CAGjC;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAEhG;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,sBAAsB,EAAE,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,sBAAsB,CAAC;IAClC,UAAU,EAAE,sBAAsB,CAAC;CACpC,CAAC"}
@@ -13,7 +13,6 @@ exports.getSetupFarmIxsWithFarm = getSetupFarmIxsWithFarm;
13
13
  exports.getUserSharesInFarm = getUserSharesInFarm;
14
14
  exports.setVaultIdForFarmIx = setVaultIdForFarmIx;
15
15
  exports.getSharesInFarmUserPosition = getSharesInFarmUserPosition;
16
- const anchor_1 = require("@coral-xyz/anchor");
17
16
  const farms_sdk_1 = require("@kamino-finance/farms-sdk");
18
17
  const web3_js_1 = require("@solana/web3.js");
19
18
  const decimal_1 = __importDefault(require("decimal.js/decimal"));
@@ -55,8 +54,9 @@ async function getFarmUnstakeIx(connection, user, lamportsToUnstake, farmAddress
55
54
  if (!userState) {
56
55
  throw new Error(`User state not found for ${user}`);
57
56
  }
58
- const scaledLamportsToUnstake = new anchor_1.BN(lamportsToUnstake.floor().toString()).mul(new anchor_1.BN(farms_sdk_1.WAD.toString()));
59
- return farmClient.unstakeIx(user, farmAddress, scaledLamportsToUnstake.toString(), scopePricesArg);
57
+ const x = new decimal_1.default(lamportsToUnstake.toString()).mul(farms_sdk_1.WAD);
58
+ console.log('lamportsToUnstake', lamportsToUnstake.toString());
59
+ return farmClient.unstakeIx(user, farmAddress, x.toString(), scopePricesArg);
60
60
  }
61
61
  // withdrawing from a farm is a 2 step operation: first we unstake the tokens from the farm, then we withdraw them
62
62
  async function getFarmWithdrawUnstakedDepositIx(connection, user, farm, stakeTokenMint) {
@@ -81,13 +81,6 @@ async function getSetupFarmIxsWithFarm(connection, farmAdmin, farmTokenMint) {
81
81
  }
82
82
  async function getUserSharesInFarm(connection, user, farm, farmTokenDecimals) {
83
83
  const farmClient = new farms_sdk_1.Farms(connection);
84
- const userStatePDA = (0, farms_sdk_1.getUserStatePDA)(farmClient.getProgramID(), farm, user);
85
- // if the user state does not exist, return 0
86
- const userState = await connection.getAccountInfo(userStatePDA);
87
- if (!userState) {
88
- return new decimal_1.default(0);
89
- }
90
- // if the user state exists, return the user shares
91
84
  return farmClient.getUserTokensInUndelegatedFarm(user, farm, farmTokenDecimals);
92
85
  }
93
86
  async function setVaultIdForFarmIx(connection, farmAdmin, farm, vault) {
@@ -1 +1 @@
1
- {"version":3,"file":"farm_utils.js","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"farm_utils.js","sourceRoot":"","sources":["../../src/classes/farm_utils.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,14 @@
1
1
  import { AccountInfo, Connection, Keypair, ParsedAccountData, PublicKey, TransactionInstruction } from '@solana/web3.js';
2
2
  import { KaminoVault, KaminoVaultClient, KaminoVaultConfig, MarketOverview, ReserveAllocationConfig, ReserveOverview, SimulatedVaultHoldingsWithEarnedInterest, VaultFees, VaultFeesPct, VaultHolder, VaultHoldings, VaultHoldingsWithUSDValue, VaultOverview, VaultReserveTotalBorrowedAndInvested } from './vault';
3
- import { AddAssetToMarketParams, CreateKaminoMarketParams, ENV, KaminoMarket, KaminoReserve, LendingMarket, LendingMarketFields, MarketWithAddress, PubkeyHashMap, Reserve, ReserveWithAddress, ScopeOracleConfig } from '../lib';
4
- import { ReserveConfig } from '../idl_codegen/types';
3
+ import { AddAssetToMarketParams, CreateKaminoMarketParams, ENV, KaminoMarket, KaminoReserve, LendingMarket, MarketWithAddress, PubkeyHashMap, Reserve, ReserveWithAddress, ScopeOracleConfig } from '../lib';
4
+ import { ReserveConfig, UpdateLendingMarketModeKind } from '../idl_codegen/types';
5
5
  import Decimal from 'decimal.js';
6
6
  import { VaultState } from '../idl_codegen_kamino_vault/accounts';
7
7
  import { VaultConfigFieldKind } from '../idl_codegen_kamino_vault/types';
8
8
  import { AcceptVaultOwnershipIxs, APYs, DepositIxs, InitVaultIxs, ReserveAllocationOverview, SyncVaultLUTIxs, UpdateReserveAllocationIxs, UpdateVaultConfigIxs, UserSharesForVault, WithdrawAndBlockReserveIxs, WithdrawIxs } from './vault_types';
9
9
  import { FarmState } from '@kamino-finance/farms-sdk/dist';
10
10
  import { WalletType } from '../utils/multisig';
11
+ import { ConfigUpdater } from './configItems';
11
12
  /**
12
13
  * KaminoManager is a class that provides a high-level interface to interact with the Kamino Lend and Kamino Vault programs, in order to create and manage a market, as well as vaults
13
14
  */
@@ -257,7 +258,7 @@ export declare class KaminoManager {
257
258
  * Get all lending markets
258
259
  * @returns an array of all lending markets
259
260
  */
260
- getAllMarkets(programId?: PublicKey): Promise<KaminoMarket[]>;
261
+ getAllMarkets(): Promise<KaminoMarket[]>;
261
262
  /**
262
263
  * Get all vaults for owner
263
264
  * @param owner the pubkey of the vaults owner
@@ -320,7 +321,7 @@ export declare class KaminoManager {
320
321
  */
321
322
  getVaultHoldingsWithPrice(vault: VaultState, price: Decimal, slot?: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>, currentSlot?: number): Promise<VaultHoldingsWithUSDValue>;
322
323
  /**
323
- * This will return an VaultOverview object that encapsulates all the information about the vault, including the holdings, reserves details, theoretical APY, actual APY, utilization ratio and total borrowed amount
324
+ * This will return an VaultOverview object that encapsulates all the information about the vault, including the holdings, reserves details, theoretical APY, utilization ratio and total borrowed amount
324
325
  * @param vault - the kamino vault to get available liquidity to withdraw for
325
326
  * @param price - the price of the token in the vault (e.g. USDC)
326
327
  * @param [slot] - the slot for which to retrieve the vault overview for. Optional. If not provided the function will fetch the current slot
@@ -361,14 +362,6 @@ export declare class KaminoManager {
361
362
  * @returns a struct containing estimated gross APY and net APY (gross - vault fees) for the vault
362
363
  */
363
364
  getVaultTheoreticalAPY(vault: VaultState, slot: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<APYs>;
364
- /**
365
- * This will return the APY of the vault based on the current invested amounts; for percentage it needs multiplication by 100
366
- * @param vault - the kamino vault to get APY for
367
- * @param slot - current slot
368
- * @param [vaultReservesMap] - hashmap from each reserve pubkey to the reserve state. Optional. If provided the function will be significantly faster as it will not have to fetch the reserves
369
- * @returns a struct containing estimated gross APY and net APY (gross - vault fees) for the vault
370
- */
371
- getVaultActualAPY(vault: VaultState, slot: number, vaultReserves?: PubkeyHashMap<PublicKey, KaminoReserve>): Promise<APYs>;
372
365
  /**
373
366
  * Retrive the total amount of interest earned by the vault since its inception, up to the last interaction with the vault on chain, including what was charged as fees
374
367
  * @param vaultState the kamino vault state to get total net yield for
@@ -401,10 +394,6 @@ export declare class KaminoManager {
401
394
  * @returns a struct of simulated management and interest fees
402
395
  */
403
396
  calculateSimulatedFees(vaultState: VaultState, simulatedCurrentHoldingsWithInterest?: SimulatedVaultHoldingsWithEarnedInterest, currentTimestamp?: Date): Promise<VaultFees>;
404
- /**
405
- * This will compute the PDA that is used as delegatee in Farms program to compute the user state PDA
406
- */
407
- computeUserFarmStateForUserInVault(farmProgramID: PublicKey, vault: PublicKey, reserve: PublicKey, user: PublicKey): [PublicKey, number];
408
397
  /**
409
398
  * This will load the onchain state for all the reserves that the vault has allocations for
410
399
  * @param vaultState - the vault state to load reserves for
@@ -510,9 +499,5 @@ export declare class KaminoManager {
510
499
  */
511
500
  private static getWalletInfo;
512
501
  }
513
- export type BaseLendingMarketKey = keyof LendingMarketFields;
514
- declare const EXCLUDED_LENDING_MARKET_KEYS: readonly ["version", "bumpSeed", "reserved0", "reserved1", "padding1", "padding2", "elevationGroupPadding", "quoteCurrency"];
515
- export type ExcludedLendingMarketKey = (typeof EXCLUDED_LENDING_MARKET_KEYS)[number];
516
- export type LendingMarketKey = Exclude<BaseLendingMarketKey, ExcludedLendingMarketKey>;
517
- export {};
502
+ export declare const MARKET_UPDATER: ConfigUpdater<UpdateLendingMarketModeKind, LendingMarket>;
518
503
  //# sourceMappingURL=manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/classes/manager.ts"],"names":[],"mappings":"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"}