/// /// /// import { BeetStruct } from '@metaplex-foundation/beet'; import { PublicKey } from '@solana/web3.js'; import BigNumber from 'bignumber.js'; export type UserRewardInfo = { rewardPerTokenCompletesX: BigNumber; rewardPerTokenCompletesY: BigNumber; rewardPendingsX: BigNumber; rewardPendingsY: BigNumber; }; export declare const userRewardInfoStruct: BeetStruct>; export type FeeInfo = { feeXPerTokenComplete: BigNumber; feeYPerTokenComplete: BigNumber; feeXPending: BigNumber; feeYPending: BigNumber; }; export declare const feeInfoStruct: BeetStruct>; export type DLMMPosition = { buffer: Buffer; lbPair: PublicKey; owner: PublicKey; liquidityShares: BigNumber[]; rewardInfos: UserRewardInfo[]; feeInfos: FeeInfo[]; lowerBinId: number; upperBinId: number; lastUpdatedAt: BigNumber; totalClaimedFeeXAmount: BigNumber; totalClaimedFeeYAmount: BigNumber; totalClaimedRewards: BigNumber[]; operator?: PublicKey; lockReleasePoint?: BigNumber; padding0?: number; feeOwner?: PublicKey; reserved: number[]; }; export declare const dlmmPositionV1Struct: BeetStruct>; export declare const dlmmPositionV2Struct: BeetStruct>; export type RewardInfo = { mint: PublicKey; vault: PublicKey; funder: PublicKey; rewardDuration: BigNumber; rewardDurationEnd: BigNumber; rewardRate: BigNumber; lastUpdateTime: BigNumber; cumulativeSecondsWithEmptyLiquidityReward: BigNumber; }; export declare const rewardInfoStruct: BeetStruct>; export type ProtocolFee = { amountX: BigNumber; amountY: BigNumber; }; export declare const protocolFeeStruct: BeetStruct>; export type StaticParameters = { baseFactor: number; filterPeriod: number; decayPeriod: number; reductionFactor: number; variableFeeControl: number; maxVolatilityAccumulator: number; minBinId: number; maxBinId: number; protocolShare: number; padding: number[]; }; export declare const staticParametersStruct: BeetStruct>; export type VariableParameters = { volatilityAccumulator: number; volatilityReference: number; indexReference: number; padding: number[]; lastUpdateTimestamp: BigNumber; padding1: number[]; }; export declare const variableParametersStruct: BeetStruct>; export declare enum LbPairType { Permissionless = 0, Permission = 1, CustomizablePermissionless = 2, PermissionlessV2 = 3 } export type LbPair = { accountDiscriminator: number[]; parameters: StaticParameters; vParameters: VariableParameters; bumpSeed: number[]; binStepSeed: number[]; pairType: LbPairType; activeId: number; binStep: number; status: number; requireBaseFactorSeed: number; baseFactorSeed: number[]; activationType: number; padding1: number; tokenXMint: PublicKey; tokenYMint: PublicKey; reserveX: PublicKey; reserveY: PublicKey; protocolFee: ProtocolFee; padding2: number[]; rewardInfos: RewardInfo[]; oracle: PublicKey; binArrayBitmap: BigNumber[]; lastUpdatedAt: BigNumber; whitelistedWallet: number[]; preActivationSwapAddress: PublicKey; baseKey: PublicKey; activationPoint: BigNumber; preActivationDuration: BigNumber; padding3: number[]; padding4: BigNumber; creator: PublicKey; reserved: number[]; }; export declare const lbPairStruct: BeetStruct>; export type Bin = { amountX: BigNumber; amountY: BigNumber; price: BigNumber; liquiditySupply: BigNumber; rewardPerTokenXStored: BigNumber; rewardPerTokenYStored: BigNumber; feeAmountXPerTokenStored: BigNumber; feeAmountYPerTokenStored: BigNumber; amountXIn: BigNumber; amountYIn: BigNumber; }; export declare const binStruct: BeetStruct>; export type BinArray = { buffer: Buffer; index: BigNumber; version: number; padding: number[]; lbPair: PublicKey; bins: Bin[]; }; export declare const binArrayStruct: BeetStruct>; export type DlmmVault = { accountDiscriminator: number[]; lbPair: string; tokenVault: string; tokenOutVault: string; quoteMint: string; baseMint: string; base: string; owner: string; maxCap: string; totalDeposit: string; totalEscrow: string; swappedAmount: string; boughtToken: string; totalRefund: string; totalClaimedToken: string; startVestingTs: string; endVestingTs: string; bump: number; padding0: number[]; padding: Buffer; }; export declare const dlmmVaultStruct: BeetStruct>;