import { Paths } from '../../utils/index.js'; import { Player, PlayerStats, PlayerData } from '../../domain/index.js'; import type { IPlayerRepository, UserCacheEntry } from '../../application/ports/outbound/IPlayerRepository.js'; /** * PlayerRepository * * Filesystem implementation of IPlayerRepository. Reads a server's * `usercache.json` / `ops.json` / `whitelist.json` / `banned-players.json` * (under `servers//data/`) and its world's player `.dat` files * (`playerdata/` or 26.x `players/data/`, mtime as last-seen) to build the * union of every known player (#528, Phase 1). */ export declare class PlayerRepository implements IPlayerRepository { private readonly paths; constructor(paths?: Paths); private serverDataDir; readUserCache(serverName: string): Promise; listKnownPlayers(serverName: string): Promise; readStats(serverName: string, uuid: string): Promise; readPlayerData(serverName: string, uuid: string): Promise; /** Scan every player data dir's `*.dat`, using file mtime as last-seen. */ private scanPlayerDataMtimes; /** LEVEL > WORLD_NAME > 'world' (mirrors WorldManagementUseCase). */ private resolveWorldLevel; private readJsonArray; /** Parsed JSON, or `null` when the file is missing or not valid JSON. */ private readJsonFile; } //# sourceMappingURL=PlayerRepository.d.ts.map