// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

// <auto-generated/>

#nullable disable

using System;

namespace Azure.Analytics.Synapse.Artifacts.Models
{
    /// <summary> Sql Script resource type. </summary>
    public partial class SqlScriptResource : SubResource
    {
        /// <summary> Initializes a new instance of SqlScriptResource. </summary>
        /// <param name="properties"> Properties of sql script. </param>
        /// <exception cref="ArgumentNullException"> <paramref name="properties"/> is null. </exception>
        public SqlScriptResource(SqlScript properties)
        {
            if (properties == null)
            {
                throw new ArgumentNullException(nameof(properties));
            }

            Properties = properties;
        }

        /// <summary> Initializes a new instance of SqlScriptResource. </summary>
        /// <param name="id"> The resource identifier. </param>
        /// <param name="name"> The resource name. </param>
        /// <param name="type"> The resource type. </param>
        /// <param name="etag"> Etag identifies change in the resource. </param>
        /// <param name="properties"> Properties of sql script. </param>
        internal SqlScriptResource(string id, string name, string type, string etag, SqlScript properties) : base(id, name, type, etag)
        {
            Properties = properties;
        }

        /// <summary> Properties of sql script. </summary>
        public SqlScript Properties { get; set; }
    }
}
