<PackageReference Include="Newtonsoft.Json" Version="5.0.6" />

JsonSerializerInternalReader

public object CreateNewObject(JsonReader reader, JsonObjectContract objectContract, JsonProperty containerMember, JsonProperty containerProperty, string id, out bool createdFromNonDefaultConstructor)

public object Deserialize(JsonReader reader, Type objectType, bool checkAdditionalContent)

public void Populate(JsonReader reader, object target)