import { PublicKey } from "@solana/web3.js";
import Decimal from "decimal.js";

export type UserFarm = {
  farm: PublicKey;
  stakedToken: PublicKey;
  activeStakeByDelegatee: Map<string, Decimal>; // key is the delegate address
  pendingDepositStakeByDelegatee: Map<string, Decimal>; // key is the delegate address
  pendingWithdrawalUnstakeByDelegatee: Map<string, Decimal>; // key is the delegate address
  pendingRewards: PendingReward[];
};

export type PendingReward = {
  rewardTokenMint: PublicKey;
  cumulatedPendingRewards: Decimal;
  pendingRewardsByDelegatee: Map<string, Decimal>;
};
