@kamino-finance/klend-sdk
Version:
Typescript SDK for interacting with the Kamino Lending (klend) protocol
23 lines • 2.67 kB
TypeScript
import { Kamino, StrategyWithAddress } from '@kamino-finance/kliquidity-sdk';
import { KaminoMarket, KaminoReserve } from '../classes';
import { Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
import Decimal from 'decimal.js';
import { PriceAinBProvider, SwapQuote, SwapIxsProvider } from './types';
export interface KaminoSwapperIxBuilder {
(input: DepositAmountsForSwap, tokenAMint: PublicKey, tokenBMint: PublicKey, owner: PublicKey, slippage: Decimal, allKeys: PublicKey[]): Promise<[TransactionInstruction[], PublicKey[]]>;
}
export interface DepositAmountsForSwap {
requiredAAmountToDeposit: Decimal;
requiredBAmountToDeposit: Decimal;
tokenAToSwapAmount: Decimal;
tokenBToSwapAmount: Decimal;
}
export declare function getTokenToKtokenSwapper<QuoteResponse>(kaminoMarket: KaminoMarket, kamino: Kamino, depositor: PublicKey, slippagePct: Decimal, swapper: SwapIxsProvider<QuoteResponse>, priceAinB: PriceAinBProvider, includeAtaIxs?: boolean): Promise<SwapIxsProvider<QuoteResponse>>;
export declare function getKtokenDepositIxs<QuoteResponse>(connection: Connection, kamino: Kamino, depositor: PublicKey, depositTokenMint: PublicKey, ktokenMint: PublicKey, amountToDeposit: Decimal, slippageBps: Decimal, amountExpectedDepositAtaBalance: Decimal, swapper: SwapIxsProvider<QuoteResponse>, priceAinB: PriceAinBProvider, includeAtaIxs: boolean | undefined, klendAccounts: Array<PublicKey>, quote: SwapQuote<QuoteResponse>): Promise<import("@kamino-finance/kliquidity-sdk").InstructionsWithLookupTables>;
export declare function getKtokenToTokenSwapper<QuoteResponse>(kaminoMarket: KaminoMarket, kamino: Kamino, depositor: PublicKey, swapper: SwapIxsProvider<QuoteResponse>): Promise<SwapIxsProvider<QuoteResponse>>;
export declare function getKtokenWithdrawIxs(kamino: Kamino, withdrawer: PublicKey, kaminoStrategy: StrategyWithAddress, amountToWithdraw: Decimal): Promise<import("@kamino-finance/kliquidity-sdk").WithdrawShares>;
export declare function getKtokenWithdrawEstimatesAndPrice(kamino: Kamino, kaminoStrategy: StrategyWithAddress, amountToWithdraw: Decimal): Promise<Decimal[]>;
export declare function swapProviderToKaminoSwapProvider<QuoteResponse>(swapper: SwapIxsProvider<QuoteResponse>, klendAccounts: Array<PublicKey>, swapQuote: SwapQuote<QuoteResponse>): KaminoSwapperIxBuilder;
export declare const getExpectedTokenBalanceAfterBorrow: (connection: Connection, mint: PublicKey, owner: PublicKey, amountToBorrowLamports: Decimal, amountToBorrowMintDecimals: number) => Promise<Decimal>;
export declare const isBorrowingEnabled: (reserve: KaminoReserve) => boolean;
//# sourceMappingURL=utils.d.ts.map