xedoc.js
Version:
A wrapper for Rust Console Edition (RCE) that allows you to use the websocket and API from G-Portal.
107 lines (106 loc) • 2.64 kB
TypeScript
export interface ServerOptions {
identifier: string;
serverId: number | number[];
region: "EU" | "US";
state?: any[];
playerRefreshing?: boolean;
radioRefreshing?: boolean;
extendedEventRefreshing?: boolean;
intents: string[];
silent?: boolean;
}
export interface FetchedServer {
rawName: string;
name: string;
region: "EU" | "US";
sid: number[];
}
export interface RustServer {
identifier: string;
serverId: number[];
region: "EU" | "US";
intervals: RustServerIntervals;
flags: string[];
state: any[];
status: "STOPPING" | "MAINTENANCE" | "UPDATING" | "STOPPED" | "STARTING" | "RUNNING" | "SUSPENDED" | "UNKNOWN";
players: string[];
frequencies: number[];
intents: string[];
silent: boolean;
}
interface RustServerIntervals {
playerRefreshing?: {
enabled: boolean;
interval?: NodeJS.Timeout;
};
radioRefreshing?: {
enabled: boolean;
interval?: NodeJS.Timeout;
};
extendedEventRefreshing?: {
enabled: boolean;
interval?: NodeJS.Timeout;
};
}
export interface CommandRequest {
identifier: string;
command: string;
timestamp?: string;
resolve: (value: CommandResponse) => void;
reject: (reason: any) => void;
timeout?: ReturnType<typeof setTimeout>;
}
export interface CommandResponse {
ok: boolean;
response?: string;
error?: string;
}
export interface RustServerInformation {
Hostname: string;
MaxPlayers: number;
Players: number;
Queued: number;
Joining: number;
EntityCount: number;
GameTime: string;
Uptime: number;
Map: "Procedural Map";
Framerate: number;
Memory: number;
Collections: number;
NetworkIn: number;
NetworkOut: number;
Restarting: boolean;
SaveCreatedTime: string;
}
export interface RustServerAdvancedInformation {
name: string;
platforms: string[];
ipPort: string;
permissions: RustServerAdvancedInformationPermissions;
backups: RustServerAdvancedInformationBackups[];
restarts: RustServerAdvancedInformationRestarts[];
}
interface RustServerAdvancedInformationPermissions {
username: string;
created: Date;
owner: boolean;
}
interface RustServerAdvancedInformationBackups {
id: number;
size: number;
created: Date;
auto: boolean;
}
interface RustServerAdvancedInformationRestarts {
id: number;
schedule: {
type: "weekly" | "monthly" | "daily";
timezone: string;
day?: string;
dayOfMonth?: number;
time: string;
};
nextRun: Date;
}
export {};