| File: ITemplateMetadata.cs | Web Access |
| Project: src\sdk\src\TemplateEngine\Microsoft.TemplateEngine.Abstractions\Microsoft.TemplateEngine.Abstractions.csproj (Microsoft.TemplateEngine.Abstractions) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using Microsoft.TemplateEngine.Abstractions.Constraints; using Microsoft.TemplateEngine.Abstractions.Parameters; namespace Microsoft.TemplateEngine.Abstractions { /// <summary> /// Common template metadata. /// </summary> public interface ITemplateMetadata { /// <summary> /// Gets template author. /// </summary> string? Author { get; } /// <summary> /// Gets template description. /// </summary> string? Description { get; } /// <summary> /// Gets template classifications. /// </summary> /// <example>"Common", "Library", "Windows", "Tests", "Web".</example> IReadOnlyList<string> Classifications { get; } /// <summary> /// Gets default name. /// </summary> /// <remarks> /// It is used as source name, in case name and fallback name passed to TemplateCreator is null. /// </remarks> string? DefaultName { get; } /// <summary> /// Gets template identity. /// </summary> string Identity { get; } /// <summary> /// Gets template group identity. /// </summary> string? GroupIdentity { get; } /// <summary> /// Gets template precedence. /// The precedence is used to prioritized templates inside template groups: the template with the higher value will be prioritized over the template with lower value. /// </summary> int Precedence { get; } /// <summary> /// Gets template name. /// </summary> string Name { get; } /// <summary> /// Gets template tags. /// </summary> IReadOnlyDictionary<string, string> TagsCollection { get; } /// <summary> /// Gets the list of template parameters. /// </summary> IParameterDefinitionSet ParameterDefinitions { get; } /// <summary> /// Gets third party notices. /// </summary> string? ThirdPartyNotices { get; } /// <summary> /// Gets the collection of baselines defined in the template. /// </summary> IReadOnlyDictionary<string, IBaselineInfo> BaselineInfo { get; } /// <summary> /// Gets the list of short names defined for the template. /// </summary> IReadOnlyList<string> ShortNameList { get; } /// <summary> /// Gets the list of post actions IDs defined in the template. /// </summary> IReadOnlyList<Guid> PostActions { get; } /// <summary> /// Gets the information about constraints defined in the template. /// </summary> IReadOnlyList<TemplateConstraintInfo> Constraints { get; } /// <summary> /// Gets template's preference for using the default name on creation. /// </summary> bool PreferDefaultName { get; } } }