alterdot-lib
Version:
A pure and powerful JavaScript Alterdot library.
86 lines (77 loc) • 2.33 kB
TypeScript
import { SimplifiedMNListEntry } from './SimplifiedMNListEntry';
import { PartialMerkleTree } from '../block/PartialMerkleTree';
import { Transaction } from '../transaction/Transaction';
/**
* Note that this property contains ALL masternodes, including banned ones.
* Use getValidMasternodesList() method to get the list of only valid nodes.
* This in needed for merkleRootNMList calculation
* @type {SimplifiedMNListEntry[]}
*/
export var mnList: SimplifiedMNListEntry[];
/**
* This property contains only valid, not PoSe-banned nodes.
* @type {SimplifiedMNListEntry[]}
*/
export var validMNs: SimplifiedMNListEntry[];
/**
* @param {Buffer|Object|string} [arg] - A Buffer, JSON string, or Object representing a MnListDiff
* @param {string} [network]
* @class SimplifiedMNListDiff
* @property {string} baseBlockHash - sha256
* @property {string} blockHash - sha256
* @property {PartialMerkleTree} cbTxMerkleTree
* @property {Transaction} cbTx
* @property {Array<string>} deletedMNs - sha256 hashes of deleted MNs
* @property {Array<SimplifiedMNListEntry>} mnList
* @property {string} merkleRootMNList - merkle root of the whole mn list
*/
export class SimplifiedMNListDiff {
constructor(arg?: Buffer | any | string, network?: string);
/**
* Creates MnListDiff from a Buffer.
* @param {Buffer} buffer
* @param {string} [network]
* @return {SimplifiedMNListDiff}
*/
static fromBuffer(buffer: Buffer, network?: string): SimplifiedMNListDiff;
/**
* @param {string} hexString
* @param {string} [network]
* @return {SimplifiedMNListDiff}
*/
static fromHexString(
hexString: string,
network?: string
): SimplifiedMNListDiff;
/**
* Serializes mnlist diff to a Buffer
* @return {Buffer}
*/
toBuffer(): Buffer;
/**
* Creates MNListDiff from object
* @param obj
* @param {string} [network]
* @return {SimplifiedMNListDiff}
*/
static fromObject(obj: any, network?: string): SimplifiedMNListDiff;
/**
* sha256
*/
baseBlockHash: string;
/**
* sha256
*/
blockHash: string;
cbTxMerkleTree: PartialMerkleTree;
cbTx: Transaction;
/**
* sha256 hashes of deleted MNs
*/
deletedMNs: string[];
mnList: SimplifiedMNListEntry[];
/**
* merkle root of the whole mn list
*/
merkleRootMNList: string;
}