fbonds-core
Version:
Banx protocol sdk
37 lines (36 loc) • 1.16 kB
TypeScript
import { LendingTokenType } from '../../../../types';
import { BN, web3 } from '@coral-xyz/anchor';
export interface borrowPerpetualParamsAndAccounts {
amountOfSolToGet: BN;
bondOfferV2: web3.PublicKey;
hadoMarket: web3.PublicKey;
tokenMint: web3.PublicKey;
lender: web3.PublicKey;
ruleSet?: web3.PublicKey;
}
type BorrowPerpetual = (params: {
programId: web3.PublicKey;
connection: web3.Connection;
args: {
perpetualBorrowParamsAndAccounts: borrowPerpetualParamsAndAccounts[];
optimizeIntoReserves: boolean;
aprRate: BN;
lendingTokenType: LendingTokenType;
};
accounts: {
userPubkey: web3.PublicKey;
protocolFeeReceiver: web3.PublicKey;
};
sendTxn: (transaction: web3.Transaction, signers: web3.Signer[]) => Promise<void>;
}) => Promise<{
accounts: {
fraktBond: web3.PublicKey;
bondOffer: web3.PublicKey;
bondTradeTransaction: web3.PublicKey;
lenderVault: web3.PublicKey;
};
instructions: web3.TransactionInstruction[];
signers: web3.Signer[];
}>;
export declare const borrowPerpetual: BorrowPerpetual;
export {};