UNPKG

diggy

Version:

Multi-backend DNS resolver for Node.js/Browser — supports dig, DNS over HTTPS, and native Node.js DNS.

36 lines (35 loc) 1.4 kB
import type { DNSResolver } from "./resolvers/DNSResolver"; /** * Represents the built-in DNS resolvers available in the library. * @enum {string} * @property {string} nodejs - Uses Node.js's built-in DNS resolver. * @property {string} dig - Uses the `dig` command-line tool for DNS resolution. * @property {string} google - Uses Google's DNS over HTTPS (DoH) resolver. * @property {string} cloudflare - Uses Cloudflare's DNS over HTTPS (DoH) resolver. * @group Resolvers */ export declare enum BuildInDNSResolver { nodejs = "nodejs", dig = "dig", google = "google", cloudflare = "cloudflare" } /** * Returns a DNS resolver function based on the provided resolver name or function. * * If a `string` is provided, it must match one of the built-in resolvers. * If a `function` is provided, it will be returned as is. * If no resolver is provided, the default resolver (Google's DoH) will be used * * @example * ```ts * import { getResolver } from "diggy"; * const resolver = getResolver("google"); // Returns the Google DoH resolver * ``` * * * @param {string | BuildInDNSResolver | DNSResolver} [resolver] - The name of the built-in resolver or a custom resolver function. * @return {DNSResolver} The DNS resolver function. * @group Main Functions */ export declare function getResolver(resolver?: string | BuildInDNSResolver | DNSResolver): DNSResolver;