frost-api-wrapper
Version:
A wrapper that allows you to use the websocket and API from G-Portal.
42 lines (41 loc) • 1.35 kB
TypeScript
import { AuthOptions, RustServer, ServerOptions, LoggerOptions } from "../types";
import { RCEEvents } from "../types";
export default class RCEManager extends RCEEvents {
private email;
private password;
private logger;
private auth?;
private tokenRefreshing;
private servers;
private socket?;
private requests;
private commands;
private queue;
private kaInterval?;
private connectionAttempt;
constructor(auth: AuthOptions, logger?: LoggerOptions);
init(timeout?: number): Promise<void>;
close(): Promise<void>;
private authenticate;
private login;
private refreshToken;
private logError;
private clean;
private connectWebsocket;
private authenticateWebsocket;
private fetchServiceState;
private handleServiceState;
private handleWebsocketMessage;
private resolveServerId;
private markServerAsUnready;
private markServerAsReady;
private processQueue;
private sendCommandInternal;
sendCommand(identifier: string, command: string, response?: boolean): Promise<string | undefined | null>;
addServer(opts: ServerOptions): Promise<boolean>;
private comparePopulation;
getServer(identifier: string): RustServer;
removeServer(identifier: string): void;
getServers(): Map<string, RustServer>;
private sleep;
}