using System; namespace Amazon.JSII.Runtime.Deputy { /// /// Flags a property as optional. /// /// This is used by the Amazon.Jsii.Analyzers Roslyn analyzer to emit errors on required properties that are missing. /// /// /// Annotated properties have a setter with a default implementation that throws /// System.NotSupportedException when invoked. In a similar way that they have to in TypeScript, /// implementors need to actively opt into supporting the functionality by providing a custom implementation /// for the member. /// [AttributeUsage(AttributeTargets.Property)] public sealed class JsiiOptionalAttribute : Attribute { } }