blub-sdk
Version:
A modular SDK for interacting with the BLUB ecosystem on the Sui blockchain.
26 lines (25 loc) • 1.52 kB
TypeScript
import type { StakePosition, PendingReward, PreCalculatePendingRewardParams, RewardInfo, RewardManager } from "../../types";
import { SuiClient } from "@mysten/sui/client";
/**
* Fetches all stake position IDs registered for the given user.
*/
export declare function _queryUserPositionIds(client: SuiClient, userPositionRecordId: string, wallet: string): Promise<string[]>;
/**
* Fetches and parses all stake positions for the given IDs.
*/
export declare function _getPositions(positionIds: string[], client?: SuiClient): Promise<StakePosition[]>;
/**
* Parses a single stake position object into a StakePosition structure.
*/
export declare function parseUserPosition(client: SuiClient, fields: any): Promise<StakePosition>;
/**
* Calculates the total staked amount across all user positions.
*/
export declare function _getUserTotalStaked(client: SuiClient, userPositionRecordId: string, wallet: string): Promise<bigint>;
/**
* Simulates a reward calculation for a position using `devInspectTransactionBlock`,
* without executing a real on-chain transaction.
*/
export declare function _calculatePendingReward(owner: string, { position, coinType }: PreCalculatePendingRewardParams, packageId: string, client?: SuiClient): Promise<PendingReward[]>;
export declare function queryRewardManager(client: SuiClient, rewardManagerId: string): Promise<RewardManager | null>;
export declare function queryRewardInfo(client: SuiClient, rewardManagerId: string, rewardCoinType: string): Promise<RewardInfo | null>;