@unstoppabledomains/resolution
Version:
Domain Resolution for blockchain domains
116 lines (115 loc) • 3.52 kB
TypeScript
import { Provider } from './publicTypes';
export declare type Dictionary<T> = {
[k: string]: T;
};
export declare type EnsNetworkIdMap = {
[key: number]: string;
};
export interface ProxyReaderMap {
[key: string]: string;
}
export declare type ProviderParams = unknown[] | object;
export interface RequestArguments {
method: string;
params?: ProviderParams;
apiKey?: string;
}
export declare type TransactionRequest = {
to?: unknown;
from?: unknown;
nonce?: unknown;
gasLimit?: unknown;
gasPrice?: unknown;
data?: unknown;
value?: unknown;
chainId?: unknown;
};
export interface EventData {
address: string;
blockHash?: string;
blockNumber?: string;
data: string;
logIndex?: string;
removed?: boolean;
topics: string[];
transactionHash?: string;
transactionIndex: string;
}
export interface EventFilter {
address?: string;
topics?: Array<string>;
fromBlock?: string;
toBlock?: string;
}
export declare type RpcProviderTestCase = {
name?: string;
request: RpcProviderRequestBody;
response: string | RpcProviderLogEntry[];
}[];
export interface RpcProviderRequestBody {
data?: string;
to?: string;
fromBlock?: string | number;
toBlock?: string;
address?: string;
topics?: string[];
}
export interface RpcProviderLogEntry {
blockNumber?: number;
blockHash?: string;
transactionIndex?: number;
removed?: boolean;
address: string;
data: string;
topics: string[];
transactionHash?: string;
logIndex?: number;
}
/**
* Default structure of ZnsResolution records
* @typedef {object} ZnsResolution
*/
export declare type ZnsResolution = {
crypto?: Dictionary<{
address?: string;
[key: string]: any;
}>;
ttl?: string;
[key: string]: any;
};
export declare type Bip44Constants = [number, string, string];
export declare type owner = string;
export declare type ttl = string;
export declare type nodeHash = string;
export declare const NullAddress = "0x0000000000000000000000000000000000000000";
export declare enum NullAddresses {
'0x' = 0,
'0x0000000000000000000000000000000000000000' = 1,
'0x0000000000000000000000000000000000000000000000000000000000000000' = 2
}
export declare const EthCoinIndex = "60";
export declare const UnsSupportedNetwork: Readonly<{
guard: (value: string) => value is "mainnet" | "sepolia" | "polygon-mainnet" | "polygon-amoy" | "base-mainnet" | "base-sepolia";
check: (value: string) => "mainnet" | "sepolia" | "polygon-mainnet" | "polygon-amoy" | "base-mainnet" | "base-sepolia";
values: ("mainnet" | "sepolia" | "polygon-mainnet" | "polygon-amoy" | "base-mainnet" | "base-sepolia")[];
} & {
type: "mainnet" | "sepolia" | "polygon-mainnet" | "polygon-amoy" | "base-mainnet" | "base-sepolia";
}>;
export declare type UnsSupportedNetwork = typeof UnsSupportedNetwork.type;
export declare const EnsSupportedNetwork: Readonly<{
guard: (value: string) => value is "mainnet" | "sepolia";
check: (value: string) => "mainnet" | "sepolia";
values: ("mainnet" | "sepolia")[];
} & {
type: "mainnet" | "sepolia";
}>;
export declare const ZnsSupportedNetwork: Readonly<{
guard: (value: string) => value is "mainnet" | "testnet";
check: (value: string) => "mainnet" | "testnet";
values: ("mainnet" | "testnet")[];
} & {
type: "mainnet" | "testnet";
}>;
export declare function hasProvider(obj: any): obj is {
provider: Provider;
};