using System;

namespace EventsAppQuest.Domain.Models
{
    /// <summary>
    /// Preset de layout / cenário base reutilizável por categoria ou template.
    /// Define uma configuração-base coerente para a proposta (itens e slots preferidos).
    /// </summary>
    [Serializable]
    public class EventLayoutPreset
    {
        /// <summary>Identificador único.</summary>
        public string Id { get; set; }

        /// <summary>Nome do preset (ex.: Casamento clássico).</summary>
        public string Name { get; set; }

        /// <summary>Id da categoria de evento (opcional; se null, aplica a qualquer categoria do template).</summary>
        public string EventCategoryId { get; set; }

        /// <summary>Id do template de evento ao qual o preset se aplica (opcional).</summary>
        public string EventTemplateId { get; set; }

        /// <summary>Descrição do cenário base.</summary>
        public string Description { get; set; }

        /// <summary>Se true, é o preset padrão para o contexto (categoria/template).</summary>
        public bool IsDefault { get; set; }

        /// <summary>Ordem de exibição (menor = antes).</summary>
        public int DisplayOrder { get; set; }
    }
}
