@neo-one/node-blockchain-esnext-esm
Version:
NEO•ONE NEO blockchain implementation.
24 lines (23 loc) • 1.29 kB
TypeScript
import { ECPoint, UInt160, UInt256 } from '@neo-one/client-common-esnext-esm';
import { Account, Validator, ValidatorsCount, ValidatorsCountUpdate, ValidatorUpdate } from '@neo-one/node-core-esnext-esm';
import BN from 'bn.js';
import { Blockchain } from './Blockchain';
export declare class ValidatorCache {
private readonly blockchain;
private readonly mutableAccounts;
private readonly mutableValidators;
private mutableValidatorsCount;
constructor(blockchain: Blockchain);
getAccount(hash: UInt160): Promise<Account>;
updateAccountBalance(hash: UInt160, asset: UInt256, value: BN): Promise<void>;
getValidator(publicKey: ECPoint): Promise<Validator>;
addValidator(validator: Validator): Promise<void>;
deleteValidator(publicKey: ECPoint): Promise<void>;
updateValidatorVotes(publicKey: ECPoint, value: BN): Promise<void>;
updateValidator(publicKey: ECPoint, update: ValidatorUpdate): Promise<Validator>;
getAllValidators(): Promise<readonly Validator[]>;
getValidatorsCount(): Promise<ValidatorsCount>;
updateValidatorsCountVotes(index: number, value: BN): Promise<void>;
addValidatorsCount(validatorsCount: ValidatorsCount): Promise<void>;
updateValidatorsCount(update: ValidatorsCountUpdate): Promise<ValidatorsCount>;
}