// <auto-generated/>

#nullable disable

using System.ClientModel.Primitives;
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using System.Text.Json.Serialization;

namespace Sample.Models
{
    public abstract partial class Pet
    {
        [global::System.Diagnostics.CodeAnalysis.ExperimentalAttribute("SCME0001")]
        private global::System.ClientModel.Primitives.JsonPatch _patch;

        private protected Pet(string kind)
        {
            Kind = kind;
        }

#pragma warning disable SCME0001 // Type is for evaluation purposes only and is subject to change or removal in future updates.
        internal Pet(string kind, in global::System.ClientModel.Primitives.JsonPatch patch)
        {
            Kind = kind;
            _patch = patch;
        }
#pragma warning restore SCME0001 // Type is for evaluation purposes only and is subject to change or removal in future updates.

        [global::System.Text.Json.Serialization.JsonIgnoreAttribute]
        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
        [global::System.Diagnostics.CodeAnalysis.ExperimentalAttribute("SCME0001")]
        public ref global::System.ClientModel.Primitives.JsonPatch Patch => ref _patch;

        internal string Kind { get; set; }
    }
}
