// <auto-generated/>

#nullable disable

using System;
using System.Collections.Generic;

namespace UnbrandedTypeSpec.Models
{
    public partial class Thing
    {
        // Add Constructors

        /// <summary> name of the Thing. </summary>
        public string Name { get; set; }

        /// <summary> required Union. </summary>
        public System.BinaryData RequiredUnion { get; set; }

        /// <summary> required literal string. </summary>
        public string RequiredLiteralString { get; } = "accept";

        /// <summary> required literal int. </summary>
        public string RequiredLiteralInt { get; set; } = "123";

        /// <summary> required literal float. </summary>
        public string RequiredLiteralFloat { get; set; } = "1.23";

        /// <summary> required literal bool. </summary>
        public bool RequiredLiteralBool { get; } = false;

        /// <summary> optional literal string. </summary>
        public string OptionalLiteralString { get; set; }

        /// <summary> optional literal int. </summary>
        public string OptionalLiteralInt { get; set; }

        /// <summary> optional literal float. </summary>
        public string OptionalLiteralFloat { get; set; }

        /// <summary> optional literal bool. </summary>
        public bool OptionalLiteralBool { get; set; }

        /// <summary> description with xml <|endoftext|>. </summary>
        public string RequiredBadDescription { get; set; }

        /// <summary> optional nullable collection. </summary>
        public IList<int> OptionalNullableList { get; set; }

        /// <summary> required nullable collection. </summary>
        public IList<int> RequiredNullableList { get; set; }

        // Add Methods

        // Add Nested Type
    }
}
