// <auto-generated/>

#nullable disable

using System;
using System.Collections.Generic;
using System.Linq;
using OpenAI;

namespace OpenAI.Responses
{
    internal partial class InternalResponsesUserMessage : MessageResponseItem
    {
        internal InternalResponsesUserMessage(string id, MessageStatus? status, IEnumerable<ResponseContentPart> internalContent) : base(id, InternalResponsesMessageRole.User, status)
        {
            InternalContent = internalContent.ToList();
        }

        internal InternalResponsesUserMessage(InternalItemType kind, string id, IDictionary<string, BinaryData> additionalBinaryDataProperties, InternalResponsesMessageRole internalRole, MessageStatus? status, IList<ResponseContentPart> internalContent) : base(kind, id, additionalBinaryDataProperties, internalRole, status)
        {
            // Plugin customization: ensure initialization of collections
            InternalContent = internalContent ?? new ChangeTrackingList<ResponseContentPart>();
        }
    }
}
