Get User Earn Info
Copy
Ask AI
import { getUserStakingInfo } from '@avnu/avnu-sdk';
const STRK_ADDRESS = '0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d';
const info = await getUserStakingInfo(
STRK_ADDRESS, // Token address
account.address, // User address
{ avnuPublicKey: '...' } // Optional
);
console.log('Staked Amount:', info.amount);
console.log('Staked Amount (USD):', info.amountInUsd);
console.log('Unclaimed Rewards:', info.unclaimedRewards);
console.log('Unclaimed Rewards (USD):', info.unclaimedRewardsInUsd);
console.log('Pool Address:', info.poolAddress);
console.log('Expected Yearly STRK Rewards:', info.expectedYearlyStrkRewards);
UserStakingInfo Interface
Copy
Ask AI
interface UserStakingInfo {
tokenAddress: string;
tokenPriceInUsd: number;
poolAddress: string;
userAddress: string;
amount: bigint;
amountInUsd: number | undefined;
unclaimedRewards: bigint;
unclaimedRewardsInUsd: number | undefined;
unpoolAmount: bigint;
unpoolAmountInUsd: number | undefined;
unpoolTime: Date | undefined;
totalClaimedRewards: bigint;
totalClaimedRewardsHistoricalUsd?: number;
totalClaimedRewardsUsd: number;
userActions: Action[];
totalUserActionsCount: number;
expectedYearlyStrkRewards: bigint;
aprs: Apr[];
}
Get avnu Earn Info
Copy
Ask AI
import { getAvnuStakingInfo } from '@avnu/avnu-sdk';
const stats = await getAvnuStakingInfo({ avnuPublicKey: '...' }); // Optional options
console.log('Self Staked Amount:', stats.selfStakedAmount);
console.log('Commission:', stats.commission);
console.log('Delegation Pools:', stats.delegationPools);
// Access pool-specific data
stats.delegationPools.forEach(pool => {
console.log(`Pool ${pool.poolAddress}:`);
console.log(` Token: ${pool.tokenAddress}`);
console.log(` Staked: ${pool.stakedAmount}`);
console.log(` APR: ${pool.apr}%`);
});
StakingInfo Interface
Copy
Ask AI
interface StakingInfo {
selfStakedAmount: bigint;
selfStakedAmountInUsd: number | undefined;
operationalAddress: string;
rewardAddress: string;
stakerAddress: string;
commission: number;
delegationPools: DelegationPool[];
}
interface DelegationPool {
poolAddress: string;
tokenAddress: string;
stakedAmount: bigint;
stakedAmountInUsd: number | undefined;
apr: number;
}