fbonds-core
Version:
Banx protocol sdk
281 lines (280 loc) • 9.52 kB
TypeScript
import { web3 } from '@coral-xyz/anchor';
import { LayoutObject } from '@solana/buffer-layout';
import { PublicKey } from '@solana/web3.js';
export interface BondingCurveRaw {
delta: bigint;
bondingType: number;
}
export declare const BondingCurveRawLayout: import("@solana/buffer-layout").Structure<BondingCurveRaw>;
export interface BondOfferValidationRaw {
loanToValueFilter: bigint;
durationFilter: bigint;
maxReturnAmountFilter: bigint;
bondFeatures: number;
}
export declare const BondOfferValidationLayout: import("@solana/buffer-layout").Structure<BondOfferValidationRaw>;
export interface WhitelistEntryRaw {
fraktMarket: web3.PublicKey;
whitelistType: number;
whitelistedAddress: web3.PublicKey;
}
export declare const WhitelistEntryLayout: import("@solana/buffer-layout").Structure<WhitelistEntryRaw>;
export interface BondOfferV2Raw {
hadoMarket: web3.PublicKey;
pairState: number;
bondingCurve: LayoutObject;
baseSpotPrice: bigint;
mathCounter: bigint;
currentSpotPrice: bigint;
concentrationIndex: bigint;
bidCap: bigint;
bidSettlement: bigint;
edgeSettlement: bigint;
fundsSolOrTokenBalance: bigint;
buyOrdersQuantity: bigint;
lastTransactedAt: bigint;
assetReceiver: web3.PublicKey;
validation: LayoutObject;
}
export declare const BondOfferV2Layout: import("@solana/buffer-layout").Structure<BondOfferV2Raw>;
interface FraktBondRaw {
fraktBondState: number;
bondTradeTransactionsCounter: number;
borrowedAmount: bigint;
banxStake: web3.PublicKey;
fraktMarket: web3.PublicKey;
amountToReturn: bigint;
actualReturnedAmount: bigint;
terminatedCounter: number;
fbondTokenMint: web3.PublicKey;
fbondTokenSupply: bigint;
activatedAt: bigint;
liquidatingAt: bigint;
fbondIssuer: web3.PublicKey;
repaidOrLiquidatedAt: bigint;
currentPerpetualBorrowed: bigint;
lastTransactedAt: bigint;
refinanceAuctionStartedAt: bigint;
}
export declare const FraktBondLayout: import("@solana/buffer-layout").Structure<FraktBondRaw>;
interface BondTradeTransactionV2Raw {
bondTradeTransactionState: number;
bondOffer: web3.PublicKey;
user: web3.PublicKey;
amountOfBonds: bigint;
solAmount: bigint;
feeAmount: bigint;
bondTradeTransactionType: number;
fbondTokenMint: web3.PublicKey;
soldAt: bigint;
redeemedAt: bigint;
redeemResult: number;
seller: web3.PublicKey;
isDirectSell: boolean;
}
export declare const BondTradeTransactionV2Layout: import("@solana/buffer-layout").Structure<BondTradeTransactionV2Raw>;
export interface RoundRaw {
roundState: number;
roundValue: bigint;
startedAt: bigint;
solAmount: bigint;
feeAmount: bigint;
participants: bigint;
roundEndsAt: bigint;
lastTransactedAt: bigint;
winner: web3.PublicKey;
roundNumber: bigint;
contractBid: bigint;
placeholdeOne: bigint;
placeholdeTwo: bigint;
placeholdeThree: bigint;
publicKey: web3.PublicKey;
}
export declare const RoundRawLayout: import("@solana/buffer-layout").Structure<RoundRaw>;
export interface UserRoundRaw {
round: web3.PublicKey;
startSolPosition: bigint;
solDeposited: bigint;
user: web3.PublicKey;
lastTransactedAt: bigint;
depositedAt: bigint;
nftMint: web3.PublicKey;
jackpotSolAmount: bigint;
jackpotClaimedAt: bigint;
jackpotClaimed: boolean;
placeholderOne: bigint;
placeholderTwo: number;
placeholderThree: boolean;
placeholderFour: boolean;
placeholderFive: boolean;
}
export declare const UserRoundRawLayout: import("@solana/buffer-layout").Structure<UserRoundRaw>;
export interface RoundSettingsRaw {
completedRounds: bigint;
totalSolDeposited: bigint;
totalFeeCollected: bigint;
totalParticipants: bigint;
roundDuration: bigint;
minSolToDeposit: bigint;
feePercent: bigint;
canInitializeNextRound: boolean;
lastRoundEndsAt: bigint;
lastTransactedAt: bigint;
rakebackHadesForSol: bigint;
contractBid: bigint;
placeholdeOne: bigint;
placeholdeTwo: bigint;
}
export declare const RoundSettingsRawLayout: import("@solana/buffer-layout").Structure<RoundSettingsRaw>;
export interface HadespinLeaderboardEntryRaw {
user: web3.PublicKey;
totalSolDeposited: bigint;
totalSolInNftDeposited: bigint;
totalNftDeposited: bigint;
totalFeePayed: bigint;
totalSolWon: bigint;
lastTransactedAt: bigint;
placeholderOne: web3.PublicKey;
placeholderTwo: web3.PublicKey;
}
export declare const HadespinLeaderboardEntryLayout: import("@solana/buffer-layout").Structure<HadespinLeaderboardEntryRaw>;
export interface HadespinLeaderboardWeekEntryRaw {
user: web3.PublicKey;
week: bigint;
totalSolDeposited: bigint;
totalSolInNftDeposited: bigint;
totalNftDeposited: bigint;
totalFeePayed: bigint;
totalSolWon: bigint;
lastTransactedAt: bigint;
placeholderOne: web3.PublicKey;
placeholderTwo: web3.PublicKey;
}
export declare const HadespinLeaderboardWeekEntryLayout: import("@solana/buffer-layout").Structure<HadespinLeaderboardEntryRaw>;
export interface HadespinRakebackRaw {
user: web3.PublicKey;
hadesToClaimAmount: bigint;
claimTimestamp: bigint;
claimedAt: bigint;
claimed: boolean;
lastTransactedAt: bigint;
placeholderOne: web3.PublicKey;
}
export declare const HadespinRakebackLayout: import("@solana/buffer-layout").Structure<HadespinRakebackRaw>;
export interface HadoMarketRaw {
marketAuthority: web3.PublicKey;
marketState: number;
marketTrustType: number;
pairValidationType: number;
fraktMarket: web3.PublicKey;
minBidCap: bigint;
minMarketFee: bigint;
whitelistType: number;
whitelistedAddress: web3.PublicKey;
}
export declare const HadoMarketLayout: import("@solana/buffer-layout").Structure<HadoMarketRaw>;
export interface LenderLeaderboardRaw {
user: web3.PublicKey;
leaderboardState: number;
lastClaimedAt: bigint;
totalClaimedAmount: bigint;
totalInterestRewards: bigint;
totalLent: bigint;
totalRepaid: bigint;
placeholderOne: bigint;
}
export declare const LenderLeaderboardLayout: import("@solana/buffer-layout").Structure<LenderLeaderboardRaw>;
export interface LenderWeeklyLeaderboardRaw {
user: web3.PublicKey;
leaderboardState: number;
lastWeeklyClaimedAt: bigint;
totalWeeklyClaimedAmount: bigint;
week: bigint;
totalInterestRewards: bigint;
totalLent: bigint;
totalRepaid: bigint;
placeholderOne: bigint;
}
export declare const LenderWeeklyLeaderboardLayout: import("@solana/buffer-layout").Structure<LenderWeeklyLeaderboardRaw>;
export interface RepaymentCallRaw {
callState: number;
user: web3.PublicKey;
bond: web3.PublicKey;
bondTradeTransaction: web3.PublicKey;
callAmount: bigint;
lastUpdatedAt: bigint;
lastCallAt: bigint;
lastRepaidAt: bigint;
placeholderOne: web3.PublicKey;
publicKey: string;
}
export declare const RepaymentCallLayout: import("@solana/buffer-layout").Structure<RepaymentCallRaw>;
export interface BanxStakingSettingsRaw {
banxStakingSettingsState: number;
maxTokenStakeAmount: bigint;
tokensPerPartnerPoints: bigint;
tokensStaked: bigint;
banxStaked: bigint;
tokensPerWeek: bigint;
rewardsHarvested: bigint;
placeholderOne: web3.PublicKey;
}
export declare const BanxStakingSettingsLayout: import("@solana/buffer-layout").Structure<BanxStakingSettingsRaw>;
export interface tokenAccoutnLayoutRaw {
address: PublicKey;
mint: PublicKey;
owner: PublicKey;
amount: bigint;
delegate: null | PublicKey;
delegatedAmount: bigint;
isInitialized: boolean;
isFrozen: boolean;
isNative: boolean;
rentExemptReserve: null | bigint;
closeAuthority: null | PublicKey;
}
export declare const tokenAccoutnLayout: import("@solana/buffer-layout").Structure<tokenAccoutnLayoutRaw>;
export type SwapExactInInstructionData = {
discriminator: number;
srcLstValueCalcAccs: number;
dstLstValueCalcAccs: number;
srcLstIndex: number;
dstLstIndex: number;
minAmountOut: bigint;
amount: bigint;
};
export declare const SwapExactInInstructionDataLayout: import("@solana/buffer-layout").Structure<SwapExactInInstructionData>;
export interface BanxAdventureRaw {
adventureState: number;
tokensPerPoints: bigint;
week: bigint;
periodStartedAt: bigint;
periodEndingAt: bigint;
rewardsToBeDistributed: bigint;
totalPartnerPoints: bigint;
totalPlayerPoints: bigint;
totalTokensStaked: bigint;
totalBanxSubscribed: bigint;
amountOfTokensHarvested: bigint;
placeholderOne: PublicKey;
}
export declare const BanxAdventureLayout: import("@solana/buffer-layout").Structure<BanxAdventureRaw>;
export interface BanxAdventureSubscriptionRaw {
adventureSubscriptionState: number;
user: PublicKey;
adventure: PublicKey;
banxTokenStake: PublicKey;
stakeTokensAmount: bigint;
stakeNftAmount: bigint;
stakePartnerPointsAmount: bigint;
stakePlayerPointsAmount: bigint;
subscribedAt: bigint;
unsubscribedAt: bigint;
harvestedAt: bigint;
amountOfTokensHarvested: bigint;
placeholderOne: bigint;
placeholderTwo: bigint;
placeholderThree: PublicKey;
}
export declare const BanxAdventureSubscriptionLayout: import("@solana/buffer-layout").Structure<BanxAdventureSubscriptionRaw>;
export {};