@ensdomains/ensjs

    2.0.1 • Public • Published

    ENS.js V2

    This is the rewrite of ensjs. If you are looking for the previous version, look for ethereum-ens

    Overview of the API

    Setup

    import ENS, { getEnsAddress } from '@ensdomains/ensjs'
    
    
    
    const ens = new ENS({ provider, ensAddress: getEnsAddress('1') })
    
    ens.name('resolver.eth').getAddress() // 0x123
    

    exports

    default - ENS
    getEnsAddress
    getResolverContract
    getENSContract
    namehash
    labelhash
    

    ENS Interface

    name(name: String) => Name
    

    Returns a Name Object, that allows you to make record queries.

    resolver(address: EthereumAddress) => Resolver
    

    Returns a Resolver Object, allowing you to query names from this specific resolver. Most useful when querying a different resolver that is different than is currently recorded on the registry. E.g. migrating to a new resolver

    async getName(address: EthereumAddress) => Promise<Name>
    

    Returns the reverse record for a particular Ethereum address.

    async setReverseRecord(name: Name) => Promise<EthersTxObject>
    

    Sets the reverse record for the current Ethereum address

    Name Interface

    async getOwner() => Promise<EthereumAddress>

    Returns the owner/controller for the current ENS name.

    async setOwner(address: EthereumAddress) => Promise<Ethers>

    Sets the owner/controller for the current ENS name.

    async getResolver() => Promise<EthereumAddress>

    Returns the resolver for the current ENS name.

    async setResolver(address: EthereumAddress) => Promise<EthereumAddress>

    Sets the resolver for the current ENS name.

    async getTTL() => Promise<Number>

    Returns the TTL for the current ENS name.

    async getAddress(coinId: String) => Promise<EthereumAddress>

    Returns the address for the current ENS name for the coinId provided.

    async setAddress(coinId: String, address: EthereumAddress) => Promise<EthersTxObject>

    Sets the address for the current ENS name for the coinId provided.

    async getContent() => Promise<ContentHash>

    Returns the contentHash for the current ENS name.

    async setContenthash(content: ContentHash) => Promise<EthersTxObject>

    Sets the contentHash for the current ENS name.

    async getText(key: String) => Promise<String>

    Returns the text record for a given key for the current ENS name.

    async setText(key: String, recordValue: String) => Promise<EthersTxObject>

    Sets the text record for a given key for the current ENS name.

    async setSubnodeOwner(label: String, newOwner: EthereumAddress) => Promise<EthersTxObject>

    Sets the subnode owner for a subdomain of the current ENS name.

    async setSubnodeRecord(label: String, newOwner: EthereumAddress, resolver: EthereumAddress, ttl: ?Number) => Promise<EthersTxObject>

    Sets the subnode owner, resolver, ttl for a subdomain of the current ENS name in one transaction.

     async createSubdomain(label: String) => Promise<EthersTxObject>

    Creates a subdomain for the current ENS name. Automatically sets the owner to the signing account.

    async deleteSubdomain(label: String) => Promise<EthersTxObject>

    Deletes a subdomain for the current ENS name. Automatically sets the owner to "0x0..."

    Resolver Interface

    address

    Static property that returns current resolver address

    name(name) => Name

    Returns a Name Object that hardcodes the resolver

    NOTE

    The previous version of ensjs can be found at https://github.com/ensdomains/ensjs/tree/v1

    Keywords

    none

    Install

    npm i @ensdomains/ensjs

    DownloadsWeekly Downloads

    30,529

    Version

    2.0.1

    License

    ISC

    Unpacked Size

    53.5 kB

    Total Files

    13

    Last publish

    Collaborators

    • leeondamiky
    • mdt.
    • makoto_inoue
    • decanus
    • nickjohnson
    • jefflau