declare module 'ethereumjs-util' { import { Buffer } from 'buffer'; import BN from 'bn.js'; export import rlp = require('rlp'); interface Signature { v: number; r: Buffer; s: Buffer; } export const MAX_INTEGER: BN; export const TWO_POW256: BN; export const SHA3_NULL_S: string; export const SHA3_NULL: Buffer; export const SHA3_RLP_ARRAY_S: string; export const SHA3_RLP_ARRAY: Buffer; export const SHA3_RLP_S: string; export const SHA3_RLP: Buffer; export function zeros(bytes: number): Buffer; export function setLength(msg: Buffer, length: number, right: boolean): Buffer; export function setLength(msg: number[], length: number, right: boolean): number[]; export function setLengthLeft(msg: Buffer, length: number, right: boolean): Buffer; export function setLengthLeft(msg: number[], length: number, right: boolean): number[]; export function setLengthRight(msg: Buffer, length: number): Buffer; export function setLengthRight(msg: number[], length: number): number[]; export function unpad(a: Buffer): Buffer; export function unpad(a: number[]): number[]; export function unpad(a: string): string; export function toBuffer(v: any): Buffer; export function bufferToInt(buf: Buffer | BN): number; export function bufferToHex(buf: Buffer | BN): string; export function fromSigned(num: Buffer | BN): BN; export function toUnsigned(num: BN): Buffer; export function sha3(a: Buffer | string | number | number[], bits?: number): Buffer; export function sha256(a: Buffer | string | number | number[]): Buffer; export function ripemd160(a: Buffer | string | number | number[], padded?: boolean): Buffer; export function rlphash(a: Buffer | string | number | number[]): Buffer; export function isValidPrivate(privateKey: Buffer): boolean; export function isValidPublic(publicKey: Buffer, sanitize?: boolean): boolean; export function pubToAddress(publicKey: Buffer, sanitize?: boolean): Buffer; export function publicToAddress(publicKey: Buffer, sanitize?: boolean): Buffer; export function privateToPublic(privateKey: Buffer): Buffer; export function importPublic(publicKey: Buffer): Buffer; export function ecsign(message: Buffer, privateKey: Buffer): Signature; export function hashPersonalMessage(message: Buffer | string): Buffer; export function ecrecover(msgHash: Buffer, v: number, r: Buffer, s: Buffer): Buffer; export function toRpcSig(v: number, r: Buffer, s: Buffer): string; export function fromRpcSig(sig: string): Signature; export function privateToAddress(privateKey: Buffer): Buffer; export function isValidAddress(address: string): boolean; export function toChecksumAddress(address: string): string; export function isValidChecksumAddress(address: string): boolean; export function generateAddress( from: Buffer | string, nonce: number | string | number[] | Buffer ): Buffer; export function isPrecompiled(address: Buffer | string): boolean; export function addHexPrefix(str: string): string; export function isValidSignature( v: number, r: Buffer | string, s: Buffer | string, homestead?: boolean ): boolean; export function padToEven(str: string): string; export function baToJSON(ba: Buffer): string; export function baToJSON(ba: any[]): string[]; }