import { Ping, PingOptions, PingTarget, PingResult } from './ping.js'; interface PingICMPOptions extends PingOptions { ttl: 128 | number; bytes: 32 | number; } interface PingICMPTarget extends PingTarget { } interface PingICMPResult extends PingResult { ttl: number; bytes: number; hops?: any; reply?: any; } declare class PingICMP extends Ping { options: PingICMPOptions; target: PingICMPTarget; result: PingICMPResult; private id; private addressFamily; private protocol; constructor(options: PingICMPOptions); send(): void; private parseBuffer; private parseTypeCode; private createBuffer; private randomString; static sendAsync(options: PingICMPOptions, callback?: (error: any, result: PingICMPResult) => void): Promise; traceroute(ttln?: number, ttlx?: number, timeoutx?: number): Promise; static tracerouteAsync(options: PingICMPOptions, callback?: (error: any, result: PingICMPResult) => void): Promise; } export default PingICMP; export { PingICMP, PingICMPOptions, PingICMPResult };