A simple data transfer object for JSON serialization that represents an item on the network. It has four properties: Item (long), Location (long), Player (int), and Flags (int), each annotated with JsonPropertyName for specific JSON keys.
using System.Text.Json.Serialization;
namespace APLib.Protocol;
public sealed class NetworkItem
{
[JsonPropertyName( "item" )]
public long Item { get; set; }
[JsonPropertyName( "location" )]
public long Location { get; set; }
[JsonPropertyName( "player" )]
public int Player { get; set; }
[JsonPropertyName( "flags" )]
public int Flags { get; set; }
}