observermc
Version:
A Node.js wrapper and API for multiple Minecraft Servers
72 lines (71 loc) • 2.65 kB
TypeScript
import { MinecraftServerWhitelist } from "./MinecraftServerWhitelist";
import { MinecraftServerOptions } from "./MinecraftServerOptions";
import { MinecraftServerProperties } from "./MinecraftServerProperties";
export declare enum Status {
Offline = "offline",
Starting = "starting",
Online = "online",
Stopping = "stopping"
}
export declare class MinecraftServer {
/** JServer Options */
private _config;
/** Checks if the stop timeout is enabled */
private _stopTimeoutEnabled;
/** Stop server timeout */
private _stopTimeout;
/** Checks if the timeout was arleady cleared */
private _stopTimeoutCleared;
/** Locks the start to prevent starting the server more than once */
private _startlock;
/** Events that the server emits */
private _events;
/** Script Server instance */
private _scriptServer;
/** Online player list */
private _online;
/** Server status */
private _status;
/** Server stop timeout in minutes */
private _timeout;
/** Event parser */
private _eventParser;
/** Server properties */
private _properties;
/** Whitelist */
private _whitelist;
constructor(options: MinecraftServerOptions);
/** Stars the stop timeout */
private _startTimeout;
/** Clears the stop timeout */
private _clearTimeout;
/** Event emitted everytime the server status changes */
onStatusChanged(callback: (code: Status) => void): void;
/** Event emitted everytime a user joins */
onUserJoined(callback: (username: String) => void): void;
/** Event emitted everytime a user leaves */
onUserLeaved(callback: (username: String) => void): void;
/** Event emitted for every line in the console output */
onConsoleLine(callback: (line: string) => void): void;
/** Event emitted when the rcon is running */
onRconRunning(callback: () => void): void;
/** Event emitted on any event */
onEvent(callback: (event: string, data: any) => void): void;
/** Starts the server */
start(): Promise<boolean>;
onConsole(line: string): void;
/** Send a console command */
console(command: string): boolean;
/** Stops the server */
stop(): boolean;
/** Server status */
get status(): Status;
/** Online player list */
get onlinePlayers(): string[];
/** Sets the server status */
private _setStatus;
get name(): string;
get config(): MinecraftServerOptions;
get whitelist(): MinecraftServerWhitelist;
get properties(): MinecraftServerProperties;
}