in src/Custom/Chat/ChatMessageContentPart.Serialization.cs [15:48]
internal static void WriteCoreContentPart(ChatMessageContentPart instance, Utf8JsonWriter writer, ModelReaderWriterOptions options)
{
writer.WriteStartObject();
writer.WritePropertyName("type"u8);
writer.WriteStringValue(instance._kind.ToSerialString());
if (instance._kind == ChatMessageContentPartKind.Text)
{
writer.WritePropertyName("text"u8);
writer.WriteStringValue(instance._text);
}
else if (instance._kind == ChatMessageContentPartKind.Refusal)
{
writer.WritePropertyName("refusal"u8);
writer.WriteStringValue(instance._refusal);
}
else if (instance._kind == ChatMessageContentPartKind.Image)
{
writer.WritePropertyName("image_url"u8);
writer.WriteObjectValue(instance._imageUri, options);
}
else if (instance._kind == ChatMessageContentPartKind.InputAudio)
{
writer.WritePropertyName("input_audio"u8);
writer.WriteObjectValue(instance._inputAudio, options);
}
else if (instance._kind == ChatMessageContentPartKind.File)
{
writer.WritePropertyName("file"u8);
writer.WriteObjectValue(instance._fileFile, options);
}
writer.WriteSerializedAdditionalRawData(instance._additionalBinaryDataProperties, options);
writer.WriteEndObject();
}