/// import { BasePlugin } from '@opentelemetry/core'; import { Dns, DnsPluginConfig } from './types'; /** * Dns instrumentation plugin for Opentelemetry */ export declare class DnsPlugin extends BasePlugin { readonly moduleName: string; readonly version: string; readonly component: string; protected _config: DnsPluginConfig; constructor(moduleName: string, version: string); /** Patches DNS functions. */ protected patch(): typeof import("dns"); /** Unpatches all DNS patched function. */ protected unpatch(): void; /** * Get the patched lookup function */ private _getLookup; /** * Creates spans for lookup operations, restoring spans' context if applied. */ private _getPatchLookupFunction; /** * Start a new span with default attributes and kind */ private _startDnsSpan; /** * Wrap lookup callback function */ private _wrapLookupCallback; /** * Safely handle "execute" callback */ private _safeExecute; } export declare const plugin: DnsPlugin;