banx-token-lending-sdk
Version:
Banx Token Lending sdk
64 lines (63 loc) • 3.01 kB
TypeScript
import { web3 } from '@coral-xyz/anchor';
import { BondOfferState, BondOfferStruct, BondOfferStructSerialized } from './BondOffer.types';
import { FetchBondOffersFilters } from './BondOffer.fetchers';
import { GetCreateOfferIxnsParams } from '../../../core/instructions/BondOffer/getCreateOfferIxns';
import { BanxMarket } from '../BanxMarket/BanxMarket';
import { GetUpdateOfferIxnsParams } from '../../../core/instructions/BondOffer/getUpdateOfferIxns';
import { GetBorrowIxnsParams } from '../../../core/instructions/BondOffer/getBorrowIxns';
import { AdjustBondOffersByMultipleVaultBalancesParams, AdjustBondOffersByVaultBalanceParams } from './BondOffer.utils';
export declare class BondOffer {
readonly struct: Readonly<BondOfferStruct>;
constructor(bondOffer: BondOfferStruct);
static fromSerialized(bondOfferSerialized: BondOfferStructSerialized): BondOffer;
serialize(): BondOfferStructSerialized;
static fetch(connection: web3.Connection, publicKey: web3.PublicKey): Promise<BondOffer | null>;
static fetchMultiple(connection: web3.Connection, publicKeys: web3.PublicKey[]): Promise<BondOffer[]>;
static fetchAll(connection: web3.Connection, filters?: FetchBondOffersFilters): Promise<BondOffer[]>;
getSize(): import("bn.js");
getState(): BondOfferState;
getMaxMultiplier(): void;
getMaxCollateralToReceive(): void;
static getCreateIxns(params: GetCreateOfferIxnsParams['args'] & {
banxMarket: BanxMarket;
walletPublicKey: web3.PublicKey;
}, connection: web3.Connection): Promise<{
mutatedAccounts: {
bondOffer: web3.PublicKey;
};
instructions: web3.TransactionInstruction[];
signers: web3.Signer[];
}>;
getRemoveIxns(params: {
walletPublicKey: web3.PublicKey;
}, connection: web3.Connection): Promise<{
mutatedAccounts: {
bondOffer: web3.PublicKey;
};
instructions: web3.TransactionInstruction[];
signers: web3.Signer[];
}>;
getUpdateIxns(params: GetUpdateOfferIxnsParams['args'] & {
walletPublicKey: web3.PublicKey;
banxMarket: BanxMarket;
}, connection: web3.Connection): Promise<{
mutatedAccounts: {
bondOffer: web3.PublicKey;
};
instructions: web3.TransactionInstruction[];
signers: web3.Signer[];
}>;
getBorrowIxns(params: GetBorrowIxnsParams['args'] & {
walletPublicKey: web3.PublicKey;
banxMarket: BanxMarket;
}, connection: web3.Connection): Promise<{
mutatedAccounts: {
bondOffer: web3.PublicKey;
bondLoan: web3.PublicKey;
};
instructions: web3.TransactionInstruction[];
signers: web3.Signer[];
}>;
static adjustOffersByVaultBalance({ bondOffers, userVault }: AdjustBondOffersByVaultBalanceParams): BondOffer[];
static adjustOffersByMultipleVaultBalances({ bondOffers, userVaults, }: AdjustBondOffersByMultipleVaultBalancesParams): BondOffer[];
}