import ServerPlayers from './ServerPlayers.js'; import { PlayerIdentity } from '../player/Player.js'; declare class Server { #private; get host(): string; get port(): number; get icon(): string; get version(): string; get protocol(): number | NameVersion[]; get players(): ServerPlayers; get title(): string; get motd(): ServerMotd; get online(): boolean; constructor(data: OnlineServer, host?: string, port?: number); refresh: () => Promise; } export type ServerMotd = { raw: string; formatted: string; }; export type TcpPingedServer = { version: { name: string; protocol: number; }; protocol: string; favicon: string; players: ServerPlayerData; description: { text: string; }; enforcesSecureChat: boolean; previewsChat: boolean; }; export type NamesRaw = { names: string[]; raw: string[]; }; type NameVersion = { name: string; version: string; }; export type RawCleanHtml = { raw: string[]; clean: string[]; html: string[]; }; export type PingedServer = { online: boolean; ip: string; port: number; hostname?: string; debug: { ping: boolean; query: boolean; srv: boolean; queryMismatch: boolean; ipInSrv: boolean; cnameInSrv: boolean; animatedMotd: boolean; cacheHit: boolean; cacheTime: number; cacheExpire: number; apiVersion: number; }; }; export type OnlineServer = PingedServer & ServerOptionals & { version: string; protocol: number | NameVersion[]; icon?: string; map: string; gamemode?: string; serverId?: string; eulaBlocked?: boolean; motd: RawCleanHtml; players: ServerPlayerData; }; type ServerOptionals = Partial<{ software: string; plugins: NamesRaw | NameVersion[]; mods: NamesRaw | NameVersion[]; info: RawCleanHtml; }>; export type ServerPlayerData = { online: number; max: number; list?: PlayerIdentity[]; uuid?: { [key: string]: string; }; }; export { Server, Server as default }; //# sourceMappingURL=Server.d.ts.map