import { ServerName } from '../value-objects/ServerName.js'; import { ServerType } from '../value-objects/ServerType.js'; import { McVersion } from '../value-objects/McVersion.js'; import { Memory } from '../value-objects/Memory.js'; import { WorldOptions } from '../value-objects/WorldOptions.js'; import { ModpackOptions } from '../value-objects/ModpackOptions.js'; /** * Server status enumeration */ export declare enum ServerStatus { RUNNING = "running", STOPPED = "stopped", STARTING = "starting", STOPPING = "stopping", ERROR = "error", UNKNOWN = "unknown" } /** * Server configuration interface */ export interface ServerConfig { name: ServerName; type: ServerType; version: McVersion; memory: Memory; worldOptions: WorldOptions; rconPassword?: string; autoStart?: boolean; modpackOptions?: ModpackOptions; } /** * Server entity * Represents a Minecraft server instance */ export declare class Server { private readonly _config; private _status; private _playerCount; constructor(config: ServerConfig); get name(): ServerName; get type(): ServerType; get version(): McVersion; get memory(): Memory; get worldOptions(): WorldOptions; get rconPassword(): string | undefined; get autoStart(): boolean; get modpackOptions(): ModpackOptions | undefined; get status(): ServerStatus; get playerCount(): number; get isRunning(): boolean; get isStopped(): boolean; get hasPlayers(): boolean; setStatus(status: ServerStatus): void; setPlayerCount(count: number): void; /** * Convert to environment variables for config.env */ toEnvVars(): Record; /** * Create a new server with the given configuration */ static create(config: ServerConfig): Server; /** * Create a minimal server configuration (for listing/status) */ static fromStatus(name: string, type: string, version: string, status: ServerStatus, playerCount: number): Server; } //# sourceMappingURL=Server.d.ts.map