@kba-tools/genesis-tool
Version:
A forked repo from ConsenSys which helps to generate genesis block for Besu Network with xemptyBlockPeriod field.
68 lines (63 loc) • 1.4 kB
text/typescript
export type Algorithm = {
blockperiodseconds?: number;
requesttimeoutseconds?: number;
emptyblockperiodseconds?: number;
xemptyblockperiodseconds?: number;
epochlength?: number;
epoch?: number;
policy?: number;
period?: number;
ceil2Nby3Block?: number;
testQBFTBlock?: number;
};
export type CodeSize = {
block?: number;
size?: number;
};
export type GenesisConfig = {
chainId: number;
homesteadBlock: number;
eip150Block: number;
eip150Hash: string;
eip155Block: number;
eip158Block: number;
byzantiumBlock: number;
constantinopleBlock: number;
petersburgBlock: number;
istanbulBlock: number;
muirglacierblock: number;
berlinBlock: number;
londonBlock: number;
zeroBaseFee?: boolean;
isQuorum?: boolean;
contractSizeLimit?: number;
txnSizeLimit?: number;
maxCodeSizeConfig?: [CodeSize];
ibft2?: Algorithm;
ibft?: Algorithm;
qbft?: Algorithm;
clique?: Algorithm;
ecCurve?: "secp256k1" | "secp256r1";
};
export type Alloc = {
balance: string;
comment?: string;
privateKey?: string;
};
export type Genesis = {
nonce: string;
timestamp: string;
extraData: string;
gasLimit: string;
gasUsed: string;
// eslint-disable-next-line id-blacklist
number: string;
difficulty: string;
coinbase: string;
mixHash: string;
parentHash: string;
alloc: {
[id: string]: Alloc;
};
config: GenesisConfig;
};