UNPKG

lisk-framework

Version:

Lisk blockchain application platform

57 lines (56 loc) 2.27 kB
import { BaseModule, ModuleInitArgs, ModuleMetadata } from '../base_module'; import { PoSMethod, RandomMethod, TokenMethod, ValidatorsMethod } from './types'; import { BlockAfterExecuteContext, BlockHeader, ImmutableMethodContext } from '../../state_machine'; import { DynamicRewardMethod } from './method'; import { DynamicRewardEndpoint } from './endpoint'; import { BlockAssets, BlockExecuteContext, GenesisBlockExecuteContext } from '../../state_machine/types'; export declare class DynamicRewardModule extends BaseModule { method: DynamicRewardMethod; configSchema: { $id: string; type: string; properties: { factorMinimumRewardActiveValidators: { type: string; minimum: number; }; tokenID: { type: string; format: string; minLength: number; maxLength: number; }; offset: { type: string; minimum: number; }; distance: { type: string; minimum: number; }; brackets: { type: string; items: { type: string; format: string; }; }; }; required: string[]; }; endpoint: DynamicRewardEndpoint; private _tokenMethod; private _randomMethod; private _validatorMethod; private _posMethod; private _moduleConfig; constructor(); addDependencies(tokenMethod: TokenMethod, randomMethod: RandomMethod, validatorMethod: ValidatorsMethod, posMethod: PoSMethod): void; metadata(): ModuleMetadata; init(args: ModuleInitArgs): Promise<void>; initGenesisState(context: GenesisBlockExecuteContext): Promise<void>; beforeTransactionsExecute(context: BlockExecuteContext): Promise<void>; afterTransactionsExecute(context: BlockAfterExecuteContext): Promise<void>; _getBlockRewardDeduction(context: ImmutableMethodContext, header: BlockHeader, assets: BlockAssets, defaultReward: bigint): Promise<[bigint, number]>; _getDefaultBlockReward(context: ImmutableMethodContext, header: BlockHeader): Promise<bigint>; }