internal static void WriteCoreContentPart()

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();
    }