using System; using System.Collections.Generic; using System.Runtime.Serialization; using Umbraco.Core.Models.Entities; namespace Umbraco.Core.Models { /// /// Defines a Macro /// public interface IMacro : IEntity, IRememberBeingDirty { /// /// Gets or sets the alias of the Macro /// [DataMember] string Alias { get; set; } /// /// Gets or sets the name of the Macro /// [DataMember] string Name { get; set; } /// /// Gets or sets a boolean indicating whether the Macro can be used in an Editor /// [DataMember] bool UseInEditor { get; set; } /// /// Gets or sets the Cache Duration for the Macro /// [DataMember] int CacheDuration { get; set; } /// /// Gets or sets a boolean indicating whether the Macro should be Cached by Page /// [DataMember] bool CacheByPage { get; set; } /// /// Gets or sets a boolean indicating whether the Macro should be Cached Personally /// [DataMember] bool CacheByMember { get; set; } /// /// Gets or sets a boolean indicating whether the Macro should be rendered in an Editor /// [DataMember] bool DontRender { get; set; } /// /// Gets or set the path to the macro source to render /// [DataMember] string MacroSource { get; set; } /// /// Gets or set the macro type /// [DataMember] MacroTypes MacroType { get; set; } /// /// Gets or sets a list of Macro Properties /// [DataMember] MacroPropertyCollection Properties { get; } ///// ///// Returns an enum based on the properties on the Macro ///// ///// //MacroTypes MacroType(); } }