///
import Web3 from 'web3';
import { ChainId, Resolutions, Options } from './types';
import Composer from './composer';
import { TransactionOptions } from './types/options';
import ContenthashHelper from './contenthash-helper';
import { DecodedContenthash } from './types/resolutions';
export default class extends Composer implements Resolutions {
blockchainApi: Web3 | any;
_contenthashHelper: ContenthashHelper;
constructor(blockchainApi: Web3 | any, options?: Options);
private _createResolver;
private _validateAddress;
_getCoinTypeFromChainId(chainId: ChainId): number;
_decodeAddressByCoinType(addr: string, coinType: number): "" | Buffer;
_encodeAddressByCoinType(decodedAddr: string, coinType: number): string;
addr(domain: string): Promise;
chainAddr(domain: string, chainId: ChainId): Promise;
setAddr(domain: string, addr: string, options?: TransactionOptions, parentNode?: string): Promise;
setChainAddr(domain: string, addr: string, chainId: ChainId, options?: TransactionOptions): Promise;
contenthash(domain: string): Promise;
setContenthash(domain: string, content: string, options?: TransactionOptions): Promise;
setResolver(domain: string, resolver: string, options?: TransactionOptions): Promise;
setName(name: string, options?: TransactionOptions): Promise;
name(address: string): Promise;
}