UNPKG

@broxus/js-core

Version:

MobX-based JavaScript Core library

286 lines (285 loc) 8.4 kB
import { type AddressUrlParam } from '../api/types'; import { Endpoint } from '../core'; import { type OrderingDirection } from '../types'; export interface QubeDaoMainPageResponse { averageLockTime: number; totalAmount: string; totalVeAmount: string; } export declare enum QubeDaoBalanceColumn { CreatedAt = "createdAt" } export interface QubeDaoBalanceOrdering { column: QubeDaoBalanceColumn; direction: OrderingDirection; } export interface QubeDaoBalancesRequestParams { amountGe?: string; amountLe?: string; limit: number; offset: number; ordering?: QubeDaoBalanceOrdering; userAddress?: string; veAmountGe?: string; veAmountLe?: string; } export interface QubeDaoBalanceResponse { amount: string; createdAt: number; updatedAt: number; userAddress: string; veAmount: string; } export interface QubeDaoBalancesResponse { balances: QubeDaoBalanceResponse[]; totalCount: number; } export declare enum QubeDaoBalancesStatsColumn { Day = "day" } export interface QubeDaoBalancesStatsOrdering { column: QubeDaoBalancesStatsColumn; direction: OrderingDirection; } export interface QubeDaoBalancesStatsRequestParams { dayGe?: number; dayLe?: number; limit: number; offset: number; ordering?: QubeDaoBalancesStatsOrdering; } export interface QubeDaoBalanceStatResponse { amount: string; day: number; veAmount: string; } export interface QubeDaoBalancesStatsResponse { balances: QubeDaoBalanceStatResponse[]; totalCount: number; } export declare enum QubeDaoDepositColumn { Amount = "amount", CreatedAt = "createdAt", LockTime = "lockTime", VeAmount = "veAmount" } export interface QubeDaoDepositsOrdering { column: QubeDaoDepositColumn; direction: OrderingDirection; } export interface QubeDaoDepositsRequestParams { isLocked?: boolean; key?: number; limit: number; offset: number; ordering?: QubeDaoDepositsOrdering; user?: string; } export interface QubeDaoDepositResponse { amount: string; callId: number; createdAt: number; isLocked: boolean; key: number; lockTime: number; transactionHash: string; transactionTime: number; user: string; veAmount: string; } export interface QubeDaoDepositsResponse { deposits: QubeDaoDepositResponse[]; totalCount: number; } export declare enum QubeDaoDepositsStatsColumn { Day = "day" } export interface QubeDaoDepositsStatsOrdering { column: QubeDaoDepositsStatsColumn; direction: OrderingDirection; } export interface QubeDaoDepositsStatsRequestParams { dayGe?: number; dayLe?: number; limit: number; offset: number; ordering?: QubeDaoDepositsStatsOrdering; } export interface QubeDaoDepositStatResponse { averageLockTime: number; day: number; } export interface QubeDaoDepositsStatsResponse { deposits: QubeDaoDepositStatResponse[]; totalCount: number; } export declare enum QubeDaoEpochColumn { CreatedAt = "createdAt" } export interface QubeDaoEpochsOrdering { column: QubeDaoEpochColumn; direction: OrderingDirection; } export interface QubeDaoEpochsRequestParams { epochNum?: number; epochStartGe?: number; epochStartLe?: number; limit: number; offset: number; ordering?: QubeDaoEpochsOrdering; } export interface QubeDaoEpochResponse { createdAt: number; epochEnd: number; epochNum: number; epochStart: number; totalDistribution: string; totalVeAmount: string; transactionTime: number; updatedAt: number; voteEnd: number | null; voteStart: number | null; } export interface QubeDaoEpochsResponse { epochs: QubeDaoEpochResponse[]; totalCount: number; } export declare enum QubeDaoEpochDistributionColumn { CreatedAt = "createdAt" } export interface QubeDaoEpochDistributionsOrdering { column: QubeDaoEpochDistributionColumn; direction: OrderingDirection; } export interface QubeDaoEpochDistributionsRequestParams { epochNum?: number; gauge?: string; ordering?: QubeDaoEpochDistributionsOrdering; } export interface QubeDaoEpochDistributionResponse { amount: string; createdAt: number; epochNum: number; gauge: string; } export interface QubeDaoEpochDistributionsResponse { epochDistributions: QubeDaoEpochDistributionResponse[]; totalCount: number; } export declare enum QubeDaoEpochVoteColumn { CreatedAt = "createdAt" } export interface QubeDaoEpochVotesOrdering { column: QubeDaoEpochVoteColumn; direction: OrderingDirection; } export interface QubeDaoEpochVotesRequestParams { epochNum?: number; gauge?: string; limit: number; offset: number; ordering?: QubeDaoEpochVotesOrdering; userAddress?: string; } export interface QubeDaoEpochVoteResponse { createdAt: number; epochNum: number; gauge: string; transactionTime: number; userAddress: string; veAmount: string; } export interface QubeDaoEpochVotesResponse { epochVotes: QubeDaoEpochVoteResponse[]; totalCount: number; } export interface QubeDaoEpochVotesSumResponse { distributedAmount?: string | null; gauge: string; normalizedAmount?: string | null; totalAmount: string; } export declare enum QubeDaoTransactionColumn { Amount = "amount", CreatedAt = "createdAt", VeAmount = "veAmount" } export declare enum QubeDaoTransactionKind { Burn = "Burn", Lock = "Lock", Unlock = "Unlock" } export interface QubeDaoTransactionsOrdering { column: QubeDaoTransactionColumn; direction: OrderingDirection; } export interface QubeDaoTransactionsRequestParams { kind?: QubeDaoTransactionKind; limit: number; offset: number; ordering?: QubeDaoTransactionsOrdering; transactionTimeGe?: number; transactionTimeLe?: number; userAddress?: string; } export interface QubeDaoTransactionResponse { amount: string; createdAt: number; kind: QubeDaoTransactionKind | null; transactionHash: string; transactionTime: number; userAddress: string; veAmount: string; } export interface QubeDaoTransactionsResponse { totalCount: number; transactions: QubeDaoTransactionResponse[]; } export declare enum QubeDaoWhitelistColumn { AverageAmount = "averageAmount", AveragePercentage = "averagePercentage", CreatedAt = "createdAt" } export interface QubeDaoWhitelistOrdering { column: QubeDaoWhitelistColumn; direction: OrderingDirection; } export interface QubeDaoWhitelistRequestParams { gaugeAddress?: string; isActive?: boolean; limit: number; offset: number; ordering?: QubeDaoWhitelistOrdering; } export interface QubeDaoWhitelistGaugeResponse { activeEpochs?: number | null; address: string; averageAmount: string; averagePercentage: string; daoApprove: boolean; isActive: boolean; lastEpochAmount: string; lastEpochPercentage: string; } export interface QubeDaoWhitelistResponse { gauges: QubeDaoWhitelistGaugeResponse[]; totalCount: number; } export type EpochNumUrlParam = { epochNum: string; }; export declare function useQubeDaoApi(baseUrl?: string): { balance: Endpoint<AddressUrlParam, never, QubeDaoBalanceResponse>; balancesSearch: Endpoint<never, QubeDaoBalancesRequestParams, QubeDaoBalancesResponse>; balancesStatsSearch: Endpoint<never, QubeDaoBalancesStatsRequestParams, QubeDaoBalancesStatsResponse>; depositsSearch: Endpoint<never, QubeDaoDepositsRequestParams, QubeDaoDepositsResponse>; depositsStatsSearch: Endpoint<never, QubeDaoDepositsStatsRequestParams, QubeDaoDepositsStatsResponse>; epochsDistributionsSearch: Endpoint<never, QubeDaoEpochDistributionsRequestParams, QubeDaoEpochDistributionsResponse>; epochsLast: Endpoint<never, never, QubeDaoEpochResponse>; epochsSearch: Endpoint<never, QubeDaoEpochsRequestParams, QubeDaoEpochsResponse>; epochsVotesSearch: Endpoint<never, QubeDaoEpochVotesRequestParams, QubeDaoEpochVotesResponse>; epochsVotesSum: Endpoint<EpochNumUrlParam, never, QubeDaoEpochVotesSumResponse[]>; mainPage: Endpoint<never, never, QubeDaoMainPageResponse>; transactionsSearch: Endpoint<never, QubeDaoTransactionsRequestParams, QubeDaoTransactionsResponse>; whitelistSearch: Endpoint<never, QubeDaoWhitelistRequestParams, QubeDaoWhitelistResponse>; };