using Luski.net.Enums; using Luski.net.Interfaces; using Luski.net.JsonTypes.BaseTypes; using System; using System.Linq; using System.Net.Http; using System.Text.Json; using System.Text.Json.Serialization; using System.Threading.Tasks; namespace Luski.net.JsonTypes; public class SocketRemoteUser : SocketUserBase { [JsonPropertyName("friend_status")] [JsonInclude] public FriendStatus FriendStatus { get; internal set; } = default!; [JsonIgnore] public SocketDMChannel Channel { get; internal set; } = default!; internal SocketRemoteUser Clone() { return (SocketRemoteUser)MemberwiseClone(); } } [JsonSerializable(typeof(SocketRemoteUser))] [JsonSourceGenerationOptions( GenerationMode = JsonSourceGenerationMode.Default, PropertyNamingPolicy = JsonKnownNamingPolicy.CamelCase, WriteIndented = false)] internal partial class SocketRemoteUserContext : JsonSerializerContext { }