/// <reference types="node" />
/// <reference types="bn.js" />
import { Opaque } from 'ts-essentials';
import { BN } from 'ethereumjs-util';
/**
 * An hexadecimal string representing an ethereum address.
 * Always prefixed with 0x, always lowercase and of length 42.
 */
export declare type Address = Opaque<'Address', string>;
export declare function makeAddress(value: string): Address;
export declare function bufferToAddress(buffer: Buffer): Address;
export declare function bufferToMaybeAddress(buffer?: Buffer): Address | undefined;
export declare function bnToAddress(address: BN): Address;
