import { CachePolicy } from './NitroDns.nitro'; export { CachePolicy }; export interface LookupOptions { family?: number; hints?: number; all?: boolean; verbatim?: boolean; order?: 'ipv4first' | 'ipv6first' | 'verbatim'; } export interface LookupAddress { address: string; family: number; } export type LookupServiceCallback = (err: Error | null, hostname: string, service: string) => void; export type LookupCallback = (err: Error | null, address: string | LookupAddress[], family?: number) => void; export type ResolveCallback = (err: Error | null, records: any) => void; export declare const ADDRCONFIG = 1; export declare const V4MAPPED = 2; export declare const ALL = 4; export declare const HINTS: { ADDRCONFIG: number; V4MAPPED: number; ALL: number; }; /** * Sets the default value of the `order` parameter used in `dns.lookup()`. */ export declare function setDefaultResultOrder(order: 'ipv4first' | 'ipv6first' | 'verbatim'): void; /** * Returns the default value of `order` parameter used in `dns.lookup()`. */ export declare function getDefaultResultOrder(): string; export declare function lookup(hostname: string, options?: number | LookupOptions | LookupCallback, callback?: LookupCallback): void; export declare function lookupService(address: string, port: number, callback: (err: Error | null, hostname: string, service: string) => void): void; export declare class Resolver { private _nitroResolver; constructor(options?: { servers?: string[]; timeout?: number; tries?: number; maxTimeout?: number; cacheSize?: number; }); cancel(): void; getServers(): string[]; setServers(servers: string[]): void; setLocalAddress(ipv4?: string, ipv6?: string): void; clearCache(): void; resolve(hostname: string, rrtype: string | undefined, callback: ResolveCallback): void; resolve4(hostname: string, options?: any, callback?: ResolveCallback): void; resolve6(hostname: string, options?: any, callback?: ResolveCallback): void; resolveAny(hostname: string, callback: ResolveCallback): void; resolveCname(hostname: string, callback: ResolveCallback): void; resolveMx(hostname: string, callback: ResolveCallback): void; resolveNaptr(hostname: string, callback: ResolveCallback): void; resolveNs(hostname: string, callback: ResolveCallback): void; resolvePtr(hostname: string, callback: ResolveCallback): void; resolveSoa(hostname: string, callback: ResolveCallback): void; resolveSrv(hostname: string, callback: ResolveCallback): void; resolveCaa(hostname: string, callback: ResolveCallback): void; resolveTxt(hostname: string, callback: ResolveCallback): void; resolveTlsa(hostname: string, callback: ResolveCallback): void; reverse(ip: string, callback: ResolveCallback): void; } export declare function getServers(): string[]; export declare function setServers(servers: string[]): void; export declare function resolve(hostname: string, rrtype: string | undefined, callback: ResolveCallback): void; export declare function resolve4(hostname: string, options?: any, callback?: ResolveCallback): void; export declare function resolve6(hostname: string, options?: any, callback?: ResolveCallback): void; export declare function resolveAny(hostname: string, callback: ResolveCallback): void; export declare function resolveCname(hostname: string, callback: ResolveCallback): void; export declare function resolveMx(hostname: string, callback: ResolveCallback): void; export declare function resolveNaptr(hostname: string, callback: ResolveCallback): void; export declare function resolveNs(hostname: string, callback: ResolveCallback): void; export declare function resolvePtr(hostname: string, callback: ResolveCallback): void; export declare function resolveSoa(hostname: string, callback: ResolveCallback): void; export declare function resolveSrv(hostname: string, callback: ResolveCallback): void; export declare function resolveCaa(hostname: string, callback: ResolveCallback): void; export declare function resolveTxt(hostname: string, callback: ResolveCallback): void; export declare function resolveTlsa(hostname: string, callback: ResolveCallback): void; export declare function reverse(ip: string, callback: ResolveCallback): void; export declare function setNativeInterceptionEnabled(enabled: boolean): void; export declare function setVerbose(enabled: boolean): void; export declare function clearCache(): void; export declare function setCacheSize(size: number): void; export declare function setCachePolicy(policy: CachePolicy, staleTtl?: number): void; export declare class ResolverPromises { private _r; constructor(resolver: Resolver); getServers(): string[]; setServers(s: string[]): void; cancel(): void; clearCache(): void; resolve(hostname: string, rrtype?: string): Promise; resolve4(hostname: string, options?: any): Promise; resolve6(hostname: string, options?: any): Promise; resolveAny(hostname: string): Promise; resolveCname(hostname: string): Promise; resolveMx(hostname: string): Promise; resolveNaptr(hostname: string): Promise; resolveNs(hostname: string): Promise; resolvePtr(hostname: string): Promise; resolveSoa(hostname: string): Promise; resolveSrv(hostname: string): Promise; resolveCaa(hostname: string): Promise; resolveTxt(hostname: string): Promise; resolveTlsa(hostname: string): Promise; reverse(ip: string): Promise; } export declare const promises: { getServers: typeof getServers; setServers: typeof setServers; lookup: (hostname: string, options?: any) => Promise; lookupService: (address: string, port: number) => Promise; resolve: (hostname: string, rrtype?: string) => Promise; resolve4: (hostname: string, options?: any) => Promise; resolve6: (hostname: string, options?: any) => Promise; resolveAny: (hostname: string) => Promise; resolveCname: (hostname: string) => Promise; resolveMx: (hostname: string) => Promise; resolveNaptr: (hostname: string) => Promise; resolveNs: (hostname: string) => Promise; resolvePtr: (hostname: string) => Promise; resolveSoa: (hostname: string) => Promise; resolveSrv: (hostname: string) => Promise; resolveCaa: (hostname: string) => Promise; resolveTxt: (hostname: string) => Promise; resolveTlsa: (hostname: string) => Promise; reverse: (ip: string) => Promise; clearCache: () => Promise; setCacheSize: (size: number) => Promise; setCachePolicy: (policy: CachePolicy, staleTtl?: number) => Promise; Resolver: typeof ResolverPromises; }; declare const _default: { lookup: typeof lookup; lookupService: typeof lookupService; getServers: typeof getServers; setServers: typeof setServers; resolve: typeof resolve; resolve4: typeof resolve4; resolve6: typeof resolve6; resolveAny: typeof resolveAny; resolveCname: typeof resolveCname; resolveMx: typeof resolveMx; resolveNaptr: typeof resolveNaptr; resolveNs: typeof resolveNs; resolvePtr: typeof resolvePtr; resolveSoa: typeof resolveSoa; resolveSrv: typeof resolveSrv; resolveCaa: typeof resolveCaa; resolveTxt: typeof resolveTxt; resolveTlsa: typeof resolveTlsa; reverse: typeof reverse; setNativeInterceptionEnabled: typeof setNativeInterceptionEnabled; setVerbose: typeof setVerbose; clearCache: typeof clearCache; setCacheSize: typeof setCacheSize; setCachePolicy: typeof setCachePolicy; Resolver: typeof Resolver; promises: { getServers: typeof getServers; setServers: typeof setServers; lookup: (hostname: string, options?: any) => Promise; lookupService: (address: string, port: number) => Promise; resolve: (hostname: string, rrtype?: string) => Promise; resolve4: (hostname: string, options?: any) => Promise; resolve6: (hostname: string, options?: any) => Promise; resolveAny: (hostname: string) => Promise; resolveCname: (hostname: string) => Promise; resolveMx: (hostname: string) => Promise; resolveNaptr: (hostname: string) => Promise; resolveNs: (hostname: string) => Promise; resolvePtr: (hostname: string) => Promise; resolveSoa: (hostname: string) => Promise; resolveSrv: (hostname: string) => Promise; resolveCaa: (hostname: string) => Promise; resolveTxt: (hostname: string) => Promise; resolveTlsa: (hostname: string) => Promise; reverse: (ip: string) => Promise; clearCache: () => Promise; setCacheSize: (size: number) => Promise; setCachePolicy: (policy: CachePolicy, staleTtl?: number) => Promise; Resolver: typeof ResolverPromises; }; setDefaultResultOrder: typeof setDefaultResultOrder; getDefaultResultOrder: typeof getDefaultResultOrder; ADDRCONFIG: number; V4MAPPED: number; ALL: number; }; export default _default; //# sourceMappingURL=index.d.ts.map