whoisens-lib
Version:
Whois for ENS (Ethereum Name Service) lookup service
105 lines (104 loc) • 2.78 kB
TypeScript
import { EthAddressType, IENSParams, IResponseResponseInfo } from './types.js';
import BaseClass from './BaseClass.js';
export default class ENS extends BaseClass {
private readonly ENSRoot;
private Registrar;
private Resolver;
private ReverseResolver;
/**
* Store original requested Ethereum Name, as ethAddress could be transform to hex representation if needed
*/
private ethAddressOriginal;
private ethAddress;
private ethAddressType;
private resolveAddress;
/**
* @event
*/
static EVENT_ETH_ADDRESS: string;
/**
* @event
*/
static EVENT_ETH_ADDRESS_TYPE: string;
/**
* @event
*/
static EVENT_SET_RESPONSE: string;
constructor(params?: IENSParams);
getEthAddressType(): EthAddressType;
/**
* Init with eth address
*
* @fires ENS.EVENT_ETH_NAME
* @fires ENS.EVENT_ETH_NAME_TYPE
*/
init(ethAddress: string): void;
getInfo(): Promise<void>;
/**
* Get controller address.
*
* @fires ENS.EVENT_SET_RESPONSE
* @type {object}
* @property resultName {string} controllerResult
*
* @return Promise<Response>
*/
getController(): Promise<IResponseResponseInfo>;
/**
* Get Registrar owner.
*
* @fires ENS.EVENT_SET_RESPONSE
* @type {object}
* @property resultName {string} registrarOwnerResult
*
* @return Promise<Response>
*/
getOwner(): Promise<IResponseResponseInfo>;
/**
* Get name expiration date.
*
* @fires ENS.EVENT_SET_RESPONSE
* @type {object}
* @property resultName {string} nameExpires
*
* @return Promise<Response>
*/
getExpirationDate(): Promise<IResponseResponseInfo>;
/**
* Get address
*
* @fires ENS.EVENT_SET_RESPONSE
* @type {object}
* @property resultName {string} resolverAddress
*
* @return Promise<Response>
*/
getAddress(): Promise<IResponseResponseInfo>;
/**
* Get content hash
*
* @fires ENS.EVENT_SET_RESPONSE
* @type {object}
* @property resultName {string} resolverContentHash
*
* @return Promise<Response>
*/
getContentHash(): Promise<IResponseResponseInfo>;
/**
* Get reverse record, e.g. name from address
*
* @fires ENS.EVENT_SET_RESPONSE
* @type {object}
* @property resultName {string} revertResolverResult
*
* @return Promise<Response>
*/
getReverseRecord(): Promise<IResponseResponseInfo>;
resolve(): Promise<IResponseResponseInfo>;
private initRegistrar;
private initResolver;
private isNameRegistered;
private sendResponse;
private sendError;
private extendResultWithAdditionalInfo;
}