import { ModuleEndpointContext } from '../../types'; import { BaseEndpoint } from '../base_endpoint'; import { ValidatorAccountEndpoint } from './stores/validator'; import { ClaimableReward, GetPoSTokenIDResponse, GetLockedRewardResponse, GetUnlockHeightResponse, ModuleConfig, TokenMethod, StakerDataJSON, PunishmentLockingPeriods, GetConstantsResponse } from './types'; import { InternalMethod } from './internal_method'; export declare class PoSEndpoint extends BaseEndpoint { private _moduleConfig; private _moduleName; private _tokenMethod; private _internalMethod; private _punishmentLockingPeriods; init(moduleName: string, moduleConfig: ModuleConfig, internalMethod: InternalMethod, tokenMethod: TokenMethod, punishmentLockingPeriods: PunishmentLockingPeriods): void; getStaker(ctx: ModuleEndpointContext): Promise; getValidator(ctx: ModuleEndpointContext): Promise; getAllValidators(ctx: ModuleEndpointContext): Promise<{ validators: ValidatorAccountEndpoint[]; }>; getLockedStakedAmount(ctx: ModuleEndpointContext): Promise<{ amount: string; }>; getConstants(): Promise; getPendingUnlocks(ctx: ModuleEndpointContext): Promise; getPoSTokenID(_ctx: ModuleEndpointContext): Promise; getValidatorsByStake(ctx: ModuleEndpointContext): Promise<{ validators: ValidatorAccountEndpoint[]; }>; getLockedReward(ctx: ModuleEndpointContext): Promise; getClaimableRewards(context: ModuleEndpointContext): Promise<{ rewards: ClaimableReward[]; }>; getRegistrationFee(): { fee: string; }; getExpectedSharedRewards(ctx: ModuleEndpointContext): Promise<{ reward: string; }>; private _getExpectedUnlockHeight; private _calculatePunishmentPeriods; }