@kamino-finance/klend-sdk
Version:
Typescript SDK for interacting with the Kamino Lending (klend) protocol
21 lines • 1.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.repay = repay;
const utils_1 = require("../../utils");
const market_1 = require("../services/market");
const classes_1 = require("../../classes");
const scope_sdk_1 = require("@kamino-finance/scope-sdk");
const processor_1 = require("../tx/processor");
async function repay(env, mode, token, borrowAmount) {
const signer = await env.getSigner();
const programId = (0, utils_1.getProgramId)('staging');
const kaminoMarket = await (0, market_1.getMarket)(env.c.rpc, programId);
const scope = new scope_sdk_1.Scope('mainnet-beta', env.c.rpc);
const kaminoAction = await classes_1.KaminoAction.buildRepayTxns(kaminoMarket, borrowAmount, kaminoMarket.getReserveBySymbol(token).getLiquidityMint(), signer, new utils_1.VanillaObligation(market_1.STAGING_LENDING_MARKET), true, { scope, scopeConfigurations: await scope.getAllConfigurations() }, await env.c.rpc.getSlot().send());
console.log('User obligation', await kaminoAction.getObligationPda());
console.log('Repay SetupIxs:', kaminoAction.setupIxsLabels);
console.log('Repay LendingIxs:', kaminoAction.lendingIxsLabels);
console.log('Repay CleanupIxs:', kaminoAction.cleanupIxsLabels);
await (0, processor_1.processTx)(env.c, signer, classes_1.KaminoAction.actionToIxs(kaminoAction), mode);
}
//# sourceMappingURL=repay.js.map