OverviewFilesCommitsIssuesDocsReleasesPeers

mirall-cli / node_modules / bare-dns / index.d.ts

56 lines · typescript ref:
type IPFamily = 4 | 6

interface LookupOptions {
  family?: `IPv${IPFamily}` | IPFamily | 0
  hints?: number
  all?: boolean
}

declare class DNSResolver {
  resolveTxt(
    hostname: string,
    cb: (err: Error | null, records: string[][]) => void
  ): void

  destroy(): void
}

declare namespace dns {
  export function lookup(
    hostname: string,
    cb: (
      err: Error | null,
      address: string | null,
      family: IPFamily | 0
    ) => void
  ): void

  export function lookup(
    hostname: string,
    opts: LookupOptions & { all?: false },
    cb: (
      err: Error | null,
      address: string | null,
      family: IPFamily | 0
    ) => void
  ): void

  export function lookup(
    hostname: string,
    opts: LookupOptions & { all: true },
    cb: (
      err: Error | null,
      addresses: { address: string; family: IPFamily }[] | null
    ) => void
  ): void

  export function resolveTxt(
    hostname: string,
    cb: (err: Error | null, records: string[][]) => void
  ): void

  export { type IPFamily, type LookupOptions, DNSResolver as Resolver }
}

export = dns