@bagsfm/bags-sdk
Version:
TypeScript SDK for Bags
79 lines • 2.5 kB
TypeScript
import { PositionState } from '@meteora-ag/cp-amm-sdk';
import { PublicKey } from '@solana/web3.js';
export interface GetClaimTransactionForTokenRequest {
feeClaimer: string;
tokenMint: string;
isCustomFeeVault: boolean;
claimVirtualPoolFees?: boolean;
claimDammV2Fees?: boolean;
virtualPoolAddress?: string;
dammV2Position?: string;
dammV2Pool?: string;
dammV2PositionNftAccount?: string;
tokenAMint?: string;
tokenBMint?: string;
tokenAVault?: string;
tokenBVault?: string;
customFeeVaultClaimerA?: string;
customFeeVaultClaimerB?: string;
customFeeVaultClaimerSide?: 'A' | 'B';
}
export interface CustomFeeVault {
claimerA: PublicKey;
claimerB: PublicKey;
claimerABps: number;
claimerBBps: number;
mint: PublicKey;
bump: number;
}
export type MeteoraDbcClaimPositionFeeParams = {
owner: PublicKey;
position: PublicKey;
pool: PublicKey;
positionNftAccount: PublicKey;
tokenAMint: PublicKey;
tokenBMint: PublicKey;
tokenAVault: PublicKey;
tokenBVault: PublicKey;
tokenAProgram: PublicKey;
tokenBProgram: PublicKey;
};
export type MeteoraDbcClaimablePositionWithOrWithoutCustomFeeVault = MeteoraDbcClaimablePosition | MeteoraDbcClaimablePositionWithCustomFeeVault;
type MeteoraDbcClaimablePosition = {
isCustomFeeVault: false;
virtualPool: string;
baseMint: string;
virtualPoolClaimableAmount: number;
dammPoolClaimableAmount?: number;
virtualPoolAddress: string;
isMigrated: boolean;
dammPoolAddress?: string;
dammPositionInfo?: MeteoraDbcClaimPositionFeeParams;
claimableDisplayAmount: number;
};
type MeteoraDbcClaimablePositionWithCustomFeeVault = {
isCustomFeeVault: true;
customFeeVault: PublicKey;
customFeeVaultBalance: number;
customFeeVaultBps: number;
customFeeVaultClaimOwner: PublicKey;
customFeeVaultClaimerA: PublicKey;
customFeeVaultClaimerB: PublicKey;
customFeeVaultClaimerSide: 'A' | 'B';
virtualPool: string;
baseMint: string;
virtualPoolClaimableAmount: number;
dammPoolClaimableAmount?: number;
virtualPoolAddress: string;
isMigrated: boolean;
dammPoolAddress?: string;
dammPositionInfo?: MeteoraDbcClaimPositionFeeParams;
claimableDisplayAmount: number;
};
export interface DammV2PositionByPool {
positionNftAccount: PublicKey;
position: PublicKey;
positionState: PositionState;
}
export {};
//# sourceMappingURL=meteora.d.ts.map