declare class PingError extends Error {
    host: string;
    port: number;
    constructor(message: string, host: string, port: number);
}
declare function ping(host: string, port: number, options?: ping.Options): Promise<ping.Result>;
declare namespace ping {
    type Error = PingError;
    const Error: typeof PingError;
    interface Options {
        timeout?: number;
    }
    interface Result {
        version: Result.Version;
        players: Result.Players;
        description: Result.Description;
        favicon: string;
        modinfo: Result.ModInfo;
    }
    namespace Result {
        interface Version {
            name: string;
            protocol: number;
        }
        interface Players {
            max: number;
            online: number;
        }
        interface Description {
            text: string;
            extra: Description.Extra[];
        }
        namespace Description {
            interface Extra {
                text: string;
                color: string;
                bold: boolean;
                obfuscated: boolean;
            }
        }
        interface ModInfo {
            type: string;
            modList: [];
        }
    }
}
export = ping;
