UNPKG

@broxus/js-core

Version:

MobX-based JavaScript Core library

150 lines (149 loc) 5.07 kB
import { type AddressUrlParam, type CommonGraphRequestParams } from '../api/types'; import { Endpoint } from '../core'; export declare enum StakingDaoStakeholdersOrdering { VoteWeightAscending = "voteweightascending", VoteWeightDescending = "voteweightdescending", VotesAscending = "votesascending", VotesDescending = "votesdescending" } export interface StakingDaoStakeholdersSearchRequestParams { limit: number; offset: number; ordering: StakingDaoStakeholdersOrdering; } export interface StakingDaoStakeholderResponse { proposalVotesCount: number; userAddress: string; voteWeight: string; votes: string; } export interface StakingDaoStakeholdersResponse { stakeholders: StakingDaoStakeholderResponse[]; totalCount: number; } export declare enum StakingStakeholdersOrdering { UpdateAtAscending = "updateatascending", UpdateAtDescending = "updateatdescending", stakeAscending = "stakeascending", stakeDescending = "stakedescending", FrozenStakeAscending = "frozenstakeascending", FrozenStakeDescending = "frozenstakedescending", LastRewardAscending = "lastrewardascending", LastRewardDescending = "lastrewarddescending", TotalRewardAscending = "totalrewardascending", TotalRewardDescending = "totalrewarddescending", CreatedAtAscending = "createdatascending", CreatedAtDescending = "createdatdescending", RelayCreatedAtAscending = "relaycreatedatascending", RelayCreatedAtDescending = "relaycreatedatdescending", VotesAscending = "votesascending", VotesDescending = "votesdescending" } export declare enum StakingStakeholderKind { Ordinary = "ordinary", Relay = "relay" } export interface StakingStakeholdersSearchRequestParams { createdAtGe?: number; createdAtLe?: number; frozenStakeGe?: string; frozenStakeLe?: string; lastRewardGe?: string; lastRewardLe?: string; limit: number; offset: number; ordering?: StakingStakeholdersOrdering; relayCreatedAtGe?: number; relayCreatedAtLe?: number; stakeholderKind?: StakingStakeholderKind; totalRewardGe?: string; totalRewardLe?: string; untilFrozenGe?: string; untilFrozenLe?: string; userBalanceGe?: string; userBalanceLe?: string; } export interface StakingStakeholderResponse { createdAt: number; frozenStakeBalance: string; lastReward: string; stakeBalance: string; totalReward: string; userAddress: string; userType: string; } export interface StakingStakeholdersResponse { stakeholders: StakingStakeholderResponse[]; totalCount: number; } export declare enum StakingTransactionsOrdering { AmountAscending = "amountascending", AmountDescending = "amountdescending", TimestampBlockAscending = "timestampblockascending", TimestampBlockAtDescending = "timestampblockatdescending" } export declare enum StakingTransactionKind { Deposit = "deposit", Withdraw = "withdraw", Claim = "claim", Freeze = "freeze" } export interface StakingTransactionsRequestParams { amountGe?: string; amountLe?: string; limit: number; offset: number; ordering: StakingTransactionsOrdering; timestampBlockGe?: number; timestampBlockLe?: number; transactionKind?: StakingTransactionKind; userAddress?: string; } export interface StakingTransactionResponse { amountExec: string; timestampBlock: number; transactionHash: string; transactionKind: StakingTransactionKind; usdtExec: string; } export interface StakingTransactionsResponse { transactions: StakingTransactionResponse[]; totalCount: number; } export interface StakingAprGraphResponse { data: string; timestamp: number; } export interface StakingTvlGraphResponse { data: string; timestamp: number; } export interface StakingMainResponse { averageApr: string; reward30d: string; reward30dChange: string; stakeholders: number; tvl: string; tvlChange: string; } export interface StakingRequestParams { userAddress: string; } export interface StakingResponse { averageApr: string; user30dReward: string; user30dRewardChange: string; userFrozenStake: string; userTvl: string; userTvlChange: string; } export declare function useStakingApi(baseUrl?: string): { daoStakeholdersSearch: Endpoint<never, StakingDaoStakeholdersSearchRequestParams, StakingDaoStakeholdersResponse>; daoUser: Endpoint<AddressUrlParam, never, StakingDaoStakeholderResponse>; stakingStakeholdersSearch: Endpoint<never, StakingStakeholdersSearchRequestParams, StakingStakeholdersResponse>; stakingTransactions: Endpoint<never, StakingTransactionsRequestParams, StakingTransactionsResponse>; stakingTvlGraph: Endpoint<never, CommonGraphRequestParams, StakingTvlGraphResponse[]>; stakingAprGraph: Endpoint<never, CommonGraphRequestParams, StakingAprGraphResponse[]>; stakingMain: Endpoint<never, never, StakingMainResponse>; staking: Endpoint<never, StakingRequestParams, StakingResponse>; };