UNPKG

7daystodie-api-wrapper

Version:
208 lines (189 loc) 4.92 kB
export interface GameTime { days: number, hours: number, minutes: number } export interface StatsResponse { gametime: GameTime, players: number, hostiles: number, animals: number } export interface Position { x: number, y: number, z: number } export interface OnlinePlayerResponse { steamid: string, userid: string, entityid: number, ip: string, name: string, online: boolean, position: Position, level: number, health: number, stamina: number, zombiekills: number, playerkills: number, playerdeaths: number, score: number, totalplaytime: number, lastonline: string, ping: number } export interface EntityLocation { id: number, name: string, position: Position } export interface LandClaimsResponse { claimsize: number, claimowners: Array<ClaimOwner> } export interface ClaimOwner { steamid: string, claimactive: boolean, playername: string, claims: Array<Position> } export interface CommandResponse { command: string, parameters: string, result: string } export interface AllowedCommands { commands: Array<CommandEntry> } export interface CommandEntry { command: string, description: string, help: string } export interface InventoryResponse { playername: string, userid: string, steamid: string, bag: Array<any>, // eslint-disable-line belt: Array<any>, // eslint-disable-line equipment: PlayerEquipment } // TODO: some generic interface for this perhaps? /* eslint-disable */ export interface PlayerEquipment { head: any, eyes: any, face: any, armor: any, jacket: any, shirt: any, legarmor: any, pants: any, boots: any, gloves: any } /* eslint-enable */ export interface PlayerListResponse { total: number, totalUnfiltered: number, firstResult: number, players: Array<PlayerNotOnline> } export interface PlayerNotOnline { steamid: string, entityid: number, ip: string, name: string, online: boolean, position: Position, totalplaytime: number, lastonline: string, ping: number, banned: boolean } export interface PlayerLocation { steamid: string, userid: string, name: string, online: boolean, position: Position } export interface GetServerInfo { GameType: GetServerInfoEntry, GameName: GetServerInfoEntry, GameHost: GetServerInfoEntry, ServerDescription: GetServerInfoEntry, ServerWebsiteURL: GetServerInfoEntry, LevelName: GetServerInfoEntry, GameMode: GetServerInfoEntry, Version: GetServerInfoEntry, IP: GetServerInfoEntry, CountryCode: GetServerInfoEntry, SteamID: GetServerInfoEntry, CompatibilityVersion: GetServerInfoEntry, Platform: GetServerInfoEntry, Port: GetServerInfoEntry, CurrentPlayers: GetServerInfoEntry, MaxPlayers: GetServerInfoEntry, GameDifficulty: GetServerInfoEntry, DayNightLength: GetServerInfoEntry, ZombiesRun: GetServerInfoEntry, DayCount: GetServerInfoEntry, Ping: GetServerInfoEntry, DropOnDeath: GetServerInfoEntry, DropOnQuit: GetServerInfoEntry, BloodMoonEnemyCount: GetServerInfoEntry, EnemyDifficulty: GetServerInfoEntry, PlayerKillingMode: GetServerInfoEntry, CurrentServerTime: GetServerInfoEntry, DayLightLength: GetServerInfoEntry, BlockDurabilityModifier: GetServerInfoEntry, AirDropFrequency: GetServerInfoEntry, LootAbundance: GetServerInfoEntry, LootRespawnDays: GetServerInfoEntry, MaxSpawnedZombies: GetServerInfoEntry, LandClaimSize: GetServerInfoEntry, LandClaimDeadZone: GetServerInfoEntry, LandClaimExpiryTime: GetServerInfoEntry, LandClaimDecayMode: GetServerInfoEntry, LandClaimOnlineDurabilityModifier: GetServerInfoEntry, LandClaimOfflineDurabilityModifier: GetServerInfoEntry, MaxSpawnedAnimals: GetServerInfoEntry, IsDedicated: GetServerInfoEntry, IsPasswordProtected: GetServerInfoEntry, ShowFriendPlayerOnMap: GetServerInfoEntry, BuildCreate: GetServerInfoEntry, EACEnabled: GetServerInfoEntry, Architecture64: GetServerInfoEntry, StockSettings: GetServerInfoEntry, StockFiles: GetServerInfoEntry, RequiresMod: GetServerInfoEntry, AirDropMarker: GetServerInfoEntry, EnemySpawnMode: GetServerInfoEntry, IsPublic: GetServerInfoEntry } export interface GetServerInfoEntry { type: string, value: any // eslint-disable-line } export interface GetWebUIUpdatesResponse { gametime: GameTime, players: number, hostiles: number, animals: number, newlogs: number } export interface LogLine { date: string, time: string, uptime: string, msg: string, trace: string, type: string } export interface GetLog { firstLine: number, lastLine: number, entries: Array<LogLine> }