using System.Diagnostics.CodeAnalysis; using System.Threading; using System.Threading.Tasks; using Content.Shared.Preferences; using Robust.Server.Player; using Robust.Shared.Network; namespace Content.Server.Preferences.Managers { public interface IServerPreferencesManager { void Init(); Task LoadData(IPlayerSession session, CancellationToken cancel); void OnClientDisconnected(IPlayerSession session); bool TryGetCachedPreferences(NetUserId userId, [NotNullWhen(true)] out PlayerPreferences? playerPreferences); PlayerPreferences GetPreferences(NetUserId userId); IEnumerable> GetSelectedProfilesForPlayers(List userIds); } }