UNPKG

@divstake-nestjs/validators-registry

Version:

NestJS Validators registry Module for Lido Finance projects. Part of [DivStake NestJS Modules](https://github.com/skaibaLab/divstake-nestjs-modules/#readme)

30 lines (29 loc) 1.65 kB
/// <reference types="node" /> import { ConsensusService } from '@divstake-nestjs/consensus'; import { ValidatorsRegistryInterface, BlockId } from './interfaces'; import { BlockHeader, Validator, ConsensusMeta, ConsensusValidatorsAndMetadata } from './types'; import { FindOptions, FilterQuery, StorageServiceInterface } from './storage'; import { ConsensusValidatorEntity } from './storage/consensus-validator.entity'; export declare class ValidatorsRegistry implements ValidatorsRegistryInterface { protected readonly consensusService: ConsensusService; protected readonly storageService: StorageServiceInterface; constructor(consensusService: ConsensusService, storageService: StorageServiceInterface); /** * @inheritDoc */ getMeta(): Promise<ConsensusMeta | null>; /** * @inheritDoc */ getValidators(pubkeys?: string[], where?: FilterQuery<ConsensusValidatorEntity>, options?: FindOptions<ConsensusValidatorEntity>): Promise<ConsensusValidatorsAndMetadata>; protected isNewDataInConsensus(previousMeta: ConsensusMeta, currentBlockHeader: BlockHeader): boolean; /** * @inheritDoc */ update(blockId: BlockId): Promise<ConsensusMeta>; updateStream(blockId: BlockId): Promise<ConsensusMeta>; protected getValidatorsFromConsensusStream(slotRoot: string): Promise<NodeJS.ReadableStream>; protected getValidatorsFromConsensus(slotRoot: string): Promise<Validator[]>; protected getSlotHeaderFromConsensus(blockId: BlockId): Promise<BlockHeader>; protected getConsensusMetaFromConsensus(blockId: string): Promise<ConsensusMeta>; }