web3x
Version:
Typescript port of web3.js
70 lines (69 loc) • 2.55 kB
TypeScript
import BN from "bn.js";
import { Address } from "../../address";
import { EventLog, TransactionReceipt } from "../../formatters";
import { Contract, ContractOptions, TxCall, TxSend, EventSubscriptionFactory } from "../../contract";
import { Eth } from "../../eth";
export declare type TransferEvent = {
node: string;
owner: Address;
};
export declare type NewOwnerEvent = {
node: string;
label: string;
owner: Address;
};
export declare type NewResolverEvent = {
node: string;
resolver: Address;
};
export declare type NewTTLEvent = {
node: string;
ttl: string;
};
export interface TransferEventLog extends EventLog<TransferEvent, "Transfer"> {
}
export interface NewOwnerEventLog extends EventLog<NewOwnerEvent, "NewOwner"> {
}
export interface NewResolverEventLog extends EventLog<NewResolverEvent, "NewResolver"> {
}
export interface NewTTLEventLog extends EventLog<NewTTLEvent, "NewTTL"> {
}
interface EnsRegistryEvents {
Transfer: EventSubscriptionFactory<TransferEventLog>;
NewOwner: EventSubscriptionFactory<NewOwnerEventLog>;
NewResolver: EventSubscriptionFactory<NewResolverEventLog>;
NewTTL: EventSubscriptionFactory<NewTTLEventLog>;
}
interface EnsRegistryEventLogs {
Transfer: TransferEventLog;
NewOwner: NewOwnerEventLog;
NewResolver: NewResolverEventLog;
NewTTL: NewTTLEventLog;
}
interface EnsRegistryTxEventLogs {
Transfer: TransferEventLog[];
NewOwner: NewOwnerEventLog[];
NewResolver: NewResolverEventLog[];
NewTTL: NewTTLEventLog[];
}
export interface EnsRegistryTransactionReceipt extends TransactionReceipt<EnsRegistryTxEventLogs> {
}
interface EnsRegistryMethods {
resolver(node: string): TxCall<Address>;
owner(node: string): TxCall<Address>;
setSubnodeOwner(node: string, label: string, owner: Address): TxSend<EnsRegistryTransactionReceipt>;
setTTL(node: string, ttl: number | string | BN): TxSend<EnsRegistryTransactionReceipt>;
ttl(node: string): TxCall<string>;
setResolver(node: string, resolver: Address): TxSend<EnsRegistryTransactionReceipt>;
setOwner(node: string, owner: Address): TxSend<EnsRegistryTransactionReceipt>;
}
export interface EnsRegistryDefinition {
methods: EnsRegistryMethods;
events: EnsRegistryEvents;
eventLogs: EnsRegistryEventLogs;
}
export declare class EnsRegistry extends Contract<EnsRegistryDefinition> {
constructor(eth: Eth, address?: Address, options?: ContractOptions);
}
export declare var EnsRegistryAbi: import("../../contract").ContractAbi;
export {};