internal static DocumentKeyValuePair DeserializeDocumentKeyValuePair(JsonElement element) { DocumentKeyValueElement key = default; Optional <DocumentKeyValueElement> value = default; float confidence = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("key")) { key = DocumentKeyValueElement.DeserializeDocumentKeyValueElement(property.Value); continue; } if (property.NameEquals("value")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } value = DocumentKeyValueElement.DeserializeDocumentKeyValueElement(property.Value); continue; } if (property.NameEquals("confidence")) { confidence = property.Value.GetSingle(); continue; } } return(new DocumentKeyValuePair(key, value.Value, confidence)); }