<filename>cadl-output/csharp/JsonPatch.cs<gh_stars>0// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

// <auto-generated/>

#nullable disable

using System;
using Azure.Core;

namespace NotificationHubs.Models
{
    /// <summary> Represents a JSON Patch operation. </summary>
    public partial class JsonPatch
    {
        /// <summary> Initializes a new instance of JsonPatch. </summary>
        /// <param name="op"></param>
        /// <param name="path"></param>
        /// <exception cref="ArgumentNullException"> <paramref name="path"/> is null. </exception>
        public JsonPatch(JsonPatchOperation op, string path)
        {
            Argument.AssertNotNull(path, nameof(path));

            Op = op;
            Path = path;
        }
        /// <summary> Initializes a new instance of JsonPatch. </summary>
        /// <param name="op"></param>
        /// <param name="path"></param>
        /// <param name="value"></param>
        internal JsonPatch(JsonPatchOperation op, string path, string value)
        {
            Op = op;
            Path = path;
            Value = value;
        }

        public JsonPatchOperation Op { get; set; }

        public string Path { get; set; }

        public string Value { get; set; }
    }
}
