// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.

namespace Microsoft.AspNetCore.Razor.Language
{
	/// <summary>
	/// The structure the element should be written in.
	/// </summary>
	public enum TagStructure
	{
		/// <summary>
		/// If no other tag helper applies to the same element and specifies a <see cref="TagStructure"/>,
		/// <see cref="NormalOrSelfClosing"/> will be used.
		/// </summary>
		Unspecified,

		/// <summary>
		/// Element can be written as &lt;my-tag-helper&gt;&lt;/my-tag-helper&gt; or &lt;my-tag-helper /&gt;.
		/// </summary>
		NormalOrSelfClosing,

		/// <summary>
		/// Element can be written as &lt;my-tag-helper&gt; or &lt;my-tag-helper /&gt;.
		/// </summary>
		/// <remarks>Elements with a <see cref="WithoutEndTag"/> structure will never have any content.</remarks>
		WithoutEndTag
	}
}
