public T?ProcessActionResult(string responseJson, Enum theAction) { JsonElement statusJson = JsonDocument.Parse(responseJson).RootElement; Status status = ((StatusAction)theAction) switch { StatusAction.SingleStatus => new Status(statusJson), StatusAction.MediaUpload => status = new Status { Media = new Media(statusJson) }, _ => new Status() }; return(status.ItemCast(default(T))); } }