using Luski.net.JsonTypes.BaseTypes; using System.Linq; using System.Text.Json.Serialization; namespace Luski.net.JsonTypes; public class SocketDMChannel : SocketTextChannel { public SocketRemoteUser User { get { if (_user is null) { var list = MemberIdList.ToList(); list.Remove(Server._user!.Id); _user = SocketUserBase.GetUser(list.FirstOrDefault(), SocketRemoteUserContext.Default.SocketRemoteUser).Result; } return _user; } } public SocketRemoteUser _user = null!; } [JsonSerializable(typeof(SocketDMChannel))] [JsonSourceGenerationOptions( GenerationMode = JsonSourceGenerationMode.Default, PropertyNamingPolicy = JsonKnownNamingPolicy.CamelCase, WriteIndented = false)] internal partial class SocketDMChannelContext : JsonSerializerContext { }