@kamino-finance/klend-sdk 5.0.2 → 5.0.4

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 (54) hide show
  1. package/dist/classes/obligation.d.ts.map +1 -1
  2. package/dist/classes/obligation.js +1 -2
  3. package/dist/classes/obligation.js.map +1 -1
  4. package/dist/classes/reserve.d.ts +0 -1
  5. package/dist/classes/reserve.d.ts.map +1 -1
  6. package/dist/classes/reserve.js +3 -7
  7. package/dist/classes/reserve.js.map +1 -1
  8. package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -1
  9. package/dist/lending_operations/repay_with_collateral_operations.js +6 -0
  10. package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
  11. package/dist/leverage/calcs.d.ts +28 -1
  12. package/dist/leverage/calcs.d.ts.map +1 -1
  13. package/dist/leverage/calcs.js +204 -8
  14. package/dist/leverage/calcs.js.map +1 -1
  15. package/dist/leverage/index.d.ts +1 -0
  16. package/dist/leverage/index.d.ts.map +1 -1
  17. package/dist/leverage/index.js +1 -0
  18. package/dist/leverage/index.js.map +1 -1
  19. package/dist/leverage/operations.d.ts +14 -241
  20. package/dist/leverage/operations.d.ts.map +1 -1
  21. package/dist/leverage/operations.js +508 -776
  22. package/dist/leverage/operations.js.map +1 -1
  23. package/dist/leverage/types.d.ts +173 -0
  24. package/dist/leverage/types.d.ts.map +1 -0
  25. package/dist/leverage/types.js +3 -0
  26. package/dist/leverage/types.js.map +1 -0
  27. package/dist/leverage/utils.d.ts +5 -5
  28. package/dist/leverage/utils.d.ts.map +1 -1
  29. package/dist/leverage/utils.js +68 -33
  30. package/dist/leverage/utils.js.map +1 -1
  31. package/dist/utils/constants.d.ts +1 -0
  32. package/dist/utils/constants.d.ts.map +1 -1
  33. package/dist/utils/constants.js +2 -1
  34. package/dist/utils/constants.js.map +1 -1
  35. package/dist/utils/fuzz.d.ts +3 -0
  36. package/dist/utils/fuzz.d.ts.map +1 -0
  37. package/dist/utils/fuzz.js +11 -0
  38. package/dist/utils/fuzz.js.map +1 -0
  39. package/dist/utils/index.d.ts +1 -0
  40. package/dist/utils/index.d.ts.map +1 -1
  41. package/dist/utils/index.js +1 -0
  42. package/dist/utils/index.js.map +1 -1
  43. package/package.json +1 -1
  44. package/src/classes/obligation.ts +1 -2
  45. package/src/classes/reserve.ts +3 -16
  46. package/src/lending_operations/repay_with_collateral_operations.ts +2 -0
  47. package/src/leverage/calcs.ts +315 -8
  48. package/src/leverage/index.ts +1 -0
  49. package/src/leverage/operations.ts +1079 -1331
  50. package/src/leverage/types.ts +211 -0
  51. package/src/leverage/utils.ts +103 -64
  52. package/src/utils/constants.ts +2 -0
  53. package/src/utils/fuzz.ts +5 -0
  54. package/src/utils/index.ts +1 -0
@@ -1,248 +1,21 @@
1
- import { AddressLookupTableAccount, Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
2
- import Decimal from 'decimal.js';
3
- import { KaminoMarket, KaminoObligation } from '../classes';
4
- import { ObligationTypeTag } from '../utils';
5
- import { Kamino, InstructionsWithLookupTables, StrategyWithAddress, TokenAmounts } from '@kamino-finance/kliquidity-sdk';
6
- export type SwapIxnsProvider = (amountInLamports: number, inputMint: PublicKey, outputMint: PublicKey, slippagePct: number, amountDebtAtaBalance?: Decimal) => Promise<[TransactionInstruction[], PublicKey[]]>;
7
- export type SwapQuoteProvider<QuoteResponse> = (inputs: SwapInputs, klendAccounts: Array<PublicKey>) => Promise<SwapQuote<QuoteResponse>>;
8
- export type SwapQuoteIxsProvider<QuoteResponse> = (inputs: SwapInputs, klendAccounts: Array<PublicKey>, quote: SwapQuote<QuoteResponse>) => Promise<SwapQuoteIxs>;
9
- export type SwapQuote<QuoteResponse> = {
10
- priceAInB: Decimal;
11
- quoteResponse?: QuoteResponse;
12
- };
13
- export type SwapQuoteIxs = {
14
- preActionIxs: TransactionInstruction[];
15
- swapIxs: TransactionInstruction[];
16
- lookupTables: AddressLookupTableAccount[];
17
- };
18
- export type PriceAinBProvider = (mintA: PublicKey, mintB: PublicKey) => Promise<Decimal>;
19
- export type IsKtokenProvider = (token: PublicKey | string) => Promise<boolean>;
20
- export type SwapInputs = {
21
- inputAmountLamports: Decimal;
22
- inputMint: PublicKey;
23
- outputMint: PublicKey;
24
- };
25
- export type KaminoDepositSwapOverride = (kaminoMarket: KaminoMarket, kamino: Kamino, depositor: PublicKey, amountInMint: PublicKey, amountOutMint: PublicKey, amountIn: Decimal, slippageFactor: Decimal, amountDebtAtaBalance: Decimal) => Promise<InstructionsWithLookupTables>;
26
- export declare const depositLeverageCalcs: (props: {
27
- depositAmount: Decimal;
28
- depositTokenIsCollToken: boolean;
29
- depositTokenIsSol: boolean;
30
- priceDebtToColl: Decimal;
31
- targetLeverage: Decimal;
32
- slippagePct: Decimal;
33
- flashLoanFee: Decimal;
34
- }) => {
35
- flashBorrowInCollToken: Decimal;
36
- initDepositInSol: Decimal;
37
- debtTokenToBorrow: Decimal;
38
- collTokenToDeposit: Decimal;
39
- swapDebtTokenIn: Decimal;
40
- swapCollTokenExpectedOut: Decimal;
41
- };
42
- export declare const depositLeverageKtokenCalcs: (props: {
43
- kamino: Kamino;
44
- strategy: StrategyWithAddress;
45
- debtTokenMint: PublicKey;
46
- depositAmount: Decimal;
47
- depositTokenIsCollToken: boolean;
48
- depositTokenIsSol: boolean;
49
- priceDebtToColl: Decimal;
50
- targetLeverage: Decimal;
51
- slippagePct: Decimal;
52
- flashLoanFee: Decimal;
53
- priceAinB: PriceAinBProvider;
54
- strategyHoldings?: TokenAmounts;
55
- }) => Promise<{
56
- flashBorrowInDebtToken: Decimal;
57
- initDepositInSol: Decimal;
58
- collTokenToDeposit: Decimal;
59
- debtTokenToBorrow: Decimal;
60
- requiredCollateral: Decimal;
61
- singleSidedDeposit: Decimal;
62
- }>;
63
- export declare const getDepositWithLeverageSwapInputs: (props: {
64
- depositAmount: Decimal;
65
- priceDebtToColl: Decimal;
66
- slippagePct: Decimal;
67
- targetLeverage: Decimal;
68
- kaminoMarket: KaminoMarket;
69
- selectedTokenMint: PublicKey;
70
- debtTokenMint: PublicKey;
71
- collTokenMint: PublicKey;
72
- }) => {
73
- swapInputs: SwapInputs;
74
- };
75
- export declare const getDepositWithLeverageIxns: (props: {
76
- connection: Connection;
77
- budgetAndPriorityFeeIxns?: TransactionInstruction[];
78
- user: PublicKey;
79
- amount: Decimal;
80
- selectedTokenMint: PublicKey;
81
- collTokenMint: PublicKey;
82
- debtTokenMint: PublicKey;
83
- targetLeverage: Decimal;
84
- kaminoMarket: KaminoMarket;
85
- slippagePct: Decimal;
86
- priceDebtToColl: Decimal;
87
- swapper: SwapIxnsProvider;
88
- referrer: PublicKey;
89
- isKtoken: IsKtokenProvider;
90
- priceAinB: PriceAinBProvider;
91
- kamino: Kamino | undefined;
92
- obligationTypeTagOverride: ObligationTypeTag;
93
- obligation: KaminoObligation | null;
94
- currentSlot: number;
95
- getTotalKlendAccountsOnly: boolean;
96
- scopeFeed?: string;
97
- }) => Promise<{
98
- ixns: TransactionInstruction[];
99
- lookupTablesAddresses: PublicKey[];
100
- swapInputs: SwapInputs;
101
- totalKlendAccounts: number;
102
- }>;
103
- export declare const getWithdrawWithLeverageSwapInputs: (props: {
104
- amount: Decimal;
105
- deposited: Decimal;
106
- borrowed: Decimal;
107
- priceCollToDebt: Decimal;
108
- slippagePct: number;
109
- isClosingPosition: boolean;
110
- kaminoMarket: KaminoMarket;
111
- selectedTokenMint: PublicKey;
112
- debtTokenMint: PublicKey;
113
- collTokenMint: PublicKey;
114
- userObligation: KaminoObligation;
115
- currentSlot: number;
116
- }) => {
117
- swapInputs: SwapInputs;
118
- };
119
- export declare const getWithdrawWithLeverageIxns: (props: {
120
- connection: Connection;
121
- budgetAndPriorityFeeIxns: TransactionInstruction[];
122
- user: PublicKey;
123
- amount: Decimal;
124
- deposited: Decimal;
125
- borrowed: Decimal;
126
- collTokenMint: PublicKey;
127
- debtTokenMint: PublicKey;
128
- priceCollToDebt: Decimal;
129
- selectedTokenMint: PublicKey;
130
- isClosingPosition: boolean;
131
- kaminoMarket: KaminoMarket;
132
- slippagePct: number;
133
- swapper: SwapIxnsProvider;
134
- referrer: PublicKey;
135
- isKtoken: IsKtokenProvider;
136
- kamino: Kamino | undefined;
137
- obligationTypeTagOverride: ObligationTypeTag;
138
- obligation: KaminoObligation | null;
139
- currentSlot: number;
140
- getTotalKlendAccountsOnly: boolean;
141
- scopeFeed?: string;
142
- }) => Promise<{
143
- ixns: TransactionInstruction[];
144
- lookupTablesAddresses: PublicKey[];
145
- swapInputs: SwapInputs;
146
- totalKlendAccounts: number;
147
- }>;
148
- export declare const getAdjustLeverageSwapInputs: (props: {
149
- deposited: Decimal;
150
- borrowed: Decimal;
151
- priceCollToDebt: Decimal;
152
- priceDebtToColl: Decimal;
153
- slippagePct: number;
154
- targetLeverage: Decimal;
155
- kaminoMarket: KaminoMarket;
156
- debtTokenMint: PublicKey;
157
- collTokenMint: PublicKey;
158
- }) => {
159
- swapInputs: SwapInputs;
160
- };
161
- export declare const getAdjustLeverageIxns: (props: {
162
- connection: Connection;
163
- budgetAndPriorityFeeIxns: TransactionInstruction[];
164
- user: PublicKey;
165
- kaminoMarket: KaminoMarket;
166
- priceDebtToColl: Decimal;
167
- priceCollToDebt: Decimal;
168
- targetLeverage: Decimal;
169
- slippagePct: number;
170
- depositedLamports: Decimal;
171
- borrowedLamports: Decimal;
172
- collTokenMint: PublicKey;
173
- debtTokenMint: PublicKey;
174
- swapper: SwapIxnsProvider;
175
- referrer: PublicKey;
176
- isKtoken: IsKtokenProvider;
177
- priceAinB: PriceAinBProvider;
178
- kamino: Kamino | undefined;
179
- obligationTypeTagOverride: ObligationTypeTag;
180
- obligation: KaminoObligation | null;
181
- currentSlot: number;
182
- getTotalKlendAccountsOnly: boolean;
183
- scopeFeed: string | undefined;
184
- }) => Promise<{
185
- ixns: TransactionInstruction[];
186
- lookupTablesAddresses: PublicKey[];
1
+ import { PublicKey, TransactionInstruction } from '@solana/web3.js';
2
+ import { KaminoMarket, KaminoObligation, KaminoReserve } from '../classes';
3
+ import { StrategyWithAddress } from '@kamino-finance/kliquidity-sdk';
4
+ import { AdjustLeverageInitialInputs, AdjustLeverageIxsResponse, AdjustLeverageProps, AdjustLeverageSwapInputsProps, DepositLeverageInitialInputs, DepositWithLeverageProps, DepositWithLeverageSwapInputsProps, DepsoitLeverageIxsResponse, SwapInputs, SwapQuoteIxs, WithdrawLeverageCalcsResult, WithdrawLeverageInitialInputs, WithdrawLeverageIxsResponse, WithdrawWithLeverageProps, WithdrawWithLeverageSwapInputsProps } from './types';
5
+ export declare function getDepositWithLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, kamino, obligationTypeTagOverride, scopeFeed, budgetAndPriorityFeeIxs, quoteBufferBps, priceAinB, isKtoken, quoter, }: DepositWithLeverageSwapInputsProps<QuoteResponse>): Promise<{
187
6
  swapInputs: SwapInputs;
188
- totalKlendAccounts: number;
7
+ initialInputs: DepositLeverageInitialInputs<QuoteResponse>;
189
8
  }>;
190
- /**
191
- * Deposit and borrow tokens if leverage increased
192
- */
193
- export declare const getIncreaseLeverageIxns: (props: {
194
- connection: Connection;
195
- budgetAndPriorityFeeIxns: TransactionInstruction[];
196
- user: PublicKey;
197
- kaminoMarket: KaminoMarket;
198
- depositAmount: Decimal;
199
- collTokenMint: PublicKey;
200
- debtTokenMint: PublicKey;
201
- slippagePct: number;
202
- priceDebtToColl: Decimal;
203
- priceCollToDebt: Decimal;
204
- swapper: SwapIxnsProvider;
205
- referrer: PublicKey;
206
- isKtoken: IsKtokenProvider;
207
- priceAinB: PriceAinBProvider;
208
- kamino: Kamino | undefined;
209
- obligationTypeTagOverride: ObligationTypeTag;
210
- obligation: KaminoObligation | null;
211
- currentSlot: number;
212
- getTotalKlendAccountsOnly: boolean;
213
- scopeFeed: string | undefined;
214
- }) => Promise<{
215
- ixns: TransactionInstruction[];
216
- lookupTablesAddresses: PublicKey[];
9
+ export declare function getDepositWithLeverageIxns<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, depositAmount, priceDebtToColl, slippagePct, obligation, referrer, currentSlot, targetLeverage, selectedTokenMint, kamino, obligationTypeTagOverride, scopeFeed, budgetAndPriorityFeeIxs, quoteBufferBps, priceAinB, isKtoken, quoter, swapper, }: DepositWithLeverageProps<QuoteResponse>): Promise<DepsoitLeverageIxsResponse<QuoteResponse>>;
10
+ export declare function getWithdrawWithLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, deposited, borrowed, obligation, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, kamino, scopeFeed, quoteBufferBps, isKtoken, quoter, }: WithdrawWithLeverageSwapInputsProps<QuoteResponse>): Promise<{
217
11
  swapInputs: SwapInputs;
218
- totalKlendAccounts: number;
12
+ initialInputs: WithdrawLeverageInitialInputs<QuoteResponse>;
219
13
  }>;
220
- /**
221
- * Withdraw and repay tokens if leverage decreased
222
- */
223
- export declare const getDecreaseLeverageIxns: (props: {
224
- connection: Connection;
225
- budgetAndPriorityFeeIxns: TransactionInstruction[];
226
- user: PublicKey;
227
- kaminoMarket: KaminoMarket;
228
- withdrawAmount: Decimal;
229
- repayAmount: Decimal;
230
- collTokenMint: PublicKey;
231
- debtTokenMint: PublicKey;
232
- slippagePct: number;
233
- swapper: SwapIxnsProvider;
234
- referrer: PublicKey;
235
- isKtoken: IsKtokenProvider;
236
- kamino: Kamino | undefined;
237
- obligationTypeTagOverride: ObligationTypeTag;
238
- obligation: KaminoObligation | null;
239
- currentSlot: number;
240
- getTotalKlendAccountsOnly: boolean;
241
- scopeFeed: string | undefined;
242
- }) => Promise<{
243
- ixns: TransactionInstruction[];
244
- lookupTablesAddresses: PublicKey[];
14
+ export declare function getWithdrawWithLeverageIxns<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, deposited, borrowed, referrer, currentSlot, withdrawAmount, priceCollToDebt, slippagePct, isClosingPosition, selectedTokenMint, budgetAndPriorityFeeIxs, kamino, scopeFeed, quoteBufferBps, isKtoken, quoter, swapper, }: WithdrawWithLeverageProps<QuoteResponse>): Promise<WithdrawLeverageIxsResponse<QuoteResponse>>;
15
+ export declare function buildWithdrawWithLeverageIxns(market: KaminoMarket, debtReserve: KaminoReserve, collReserve: KaminoReserve, owner: PublicKey, obligation: KaminoObligation, referrer: PublicKey, currentSlot: number, isClosingPosition: boolean, depositTokenIsSol: boolean, scopeFeed: string | undefined, calcs: WithdrawLeverageCalcsResult, budgetAndPriorityFeeIxs: TransactionInstruction[] | undefined, swapQuoteIxs: SwapQuoteIxs, strategy: StrategyWithAddress | undefined, collIsKtoken: boolean): Promise<TransactionInstruction[]>;
16
+ export declare function getAdjustLeverageSwapInputs<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, kamino, scopeFeed, quoteBufferBps, isKtoken, quoter, }: AdjustLeverageSwapInputsProps<QuoteResponse>): Promise<{
245
17
  swapInputs: SwapInputs;
246
- totalKlendAccounts: number;
18
+ initialInputs: AdjustLeverageInitialInputs<QuoteResponse>;
247
19
  }>;
20
+ export declare function getAdjustLeverageIxns<QuoteResponse>({ owner, kaminoMarket, debtTokenMint, collTokenMint, obligation, depositedLamports, borrowedLamports, referrer, currentSlot, targetLeverage, priceCollToDebt, priceDebtToColl, slippagePct, budgetAndPriorityFeeIxs, kamino, scopeFeed, quoteBufferBps, priceAinB, isKtoken, quoter, swapper, }: AdjustLeverageProps<QuoteResponse>): Promise<AdjustLeverageIxsResponse<QuoteResponse>>;
248
21
  //# sourceMappingURL=operations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/leverage/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,UAAU,EAEV,SAAS,EACT,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAgB,YAAY,EAAE,gBAAgB,EAA2C,MAAM,YAAY,CAAC;AAInH,OAAO,EAIL,iBAAiB,EAUlB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,MAAM,EACN,4BAA4B,EAC5B,mBAAmB,EACnB,YAAY,EACb,MAAM,gCAAgC,CAAC;AAGxC,MAAM,MAAM,gBAAgB,GAAG,CAC7B,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,SAAS,EACrB,WAAW,EAAE,MAAM,EACnB,oBAAoB,CAAC,EAAE,OAAO,KAC3B,OAAO,CAAC,CAAC,sBAAsB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAEtD,MAAM,MAAM,iBAAiB,CAAC,aAAa,IAAI,CAC7C,MAAM,EAAE,UAAU,EAClB,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,KAC5B,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;AAEvC,MAAM,MAAM,oBAAoB,CAAC,aAAa,IAAI,CAChD,MAAM,EAAE,UAAU,EAClB,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,EAC/B,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,KAC5B,OAAO,CAAC,YAAY,CAAC,CAAC;AAE3B,MAAM,MAAM,SAAS,CAAC,aAAa,IAAI;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,sBAAsB,EAAE,CAAC;IACvC,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAClC,YAAY,EAAE,yBAAyB,EAAE,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAEzF,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE/E,MAAM,MAAM,UAAU,GAAG;IACvB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,CACtC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,SAAS,EACvB,aAAa,EAAE,SAAS,EACxB,QAAQ,EAAE,OAAO,EACjB,cAAc,EAAE,OAAO,EACvB,oBAAoB,EAAE,OAAO,KAC1B,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAE3C,eAAO,MAAM,oBAAoB,UAAW;IAC1C,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,EAAE,OAAO,CAAC;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;CACvB,KAAG;IACF,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,OAAO,CAAC;IACzB,wBAAwB,EAAE,OAAO,CAAC;CAgDnC,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAAiB;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,EAAE,OAAO,CAAC;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,gBAAgB,CAAC,EAAE,YAAY,CAAC;CACjC,KAAG,OAAO,CAAC;IACV,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAkFA,CAAC;AAEF,eAAO,MAAM,gCAAgC,UAAW;IACtD,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,SAAS,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;CAC1B,KAAG;IACF,UAAU,EAAE,UAAU,CAAC;CAsCxB,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAAiB;IACtD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpD,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,iBAAiB,EAAE,SAAS,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,KAAG,OAAO,CAAC;IACV,IAAI,EAAE,sBAAsB,EAAE,CAAC;IAC/B,qBAAqB,EAAE,SAAS,EAAE,CAAC;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CA4VA,CAAC;AAEF,eAAO,MAAM,iCAAiC,UAAW;IACvD,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,SAAS,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,cAAc,EAAE,gBAAgB,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB,KAAG;IACF,UAAU,EAAE,UAAU,CAAC;CAwDxB,CAAC;AAEF,eAAO,MAAM,2BAA2B,UAAiB;IACvD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,EAAE,sBAAsB,EAAE,CAAC;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,SAAS,CAAC;IAC7B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,KAAG,OAAO,CAAC;IACV,IAAI,EAAE,sBAAsB,EAAE,CAAC;IAC/B,qBAAqB,EAAE,SAAS,EAAE,CAAC;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAySA,CAAC;AAEF,eAAO,MAAM,2BAA2B,UAAW;IACjD,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;CAC1B,KAAG;IACF,UAAU,EAAE,UAAU,CAAC;CAuDxB,CAAC;AAEF,eAAO,MAAM,qBAAqB,UAAiB;IACjD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,EAAE,sBAAsB,EAAE,CAAC;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;;;;;EAkIA,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,UAAiB;IACnD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,EAAE,sBAAsB,EAAE,CAAC;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,iBAAiB,CAAC;IAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;;;;;EA8RA,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,UAAiB;IACnD,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB,EAAE,sBAAsB,EAAE,CAAC;IACnD,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,SAAS,CAAC;IACzB,aAAa,EAAE,SAAS,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,yBAAyB,EAAE,iBAAiB,CAAC;IAC7C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;;;;;EAqQA,CAAC"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/leverage/operations.ts"],"names":[],"mappings":"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"}