using System;
using System.Collections.Generic;

namespace LevelCode.License.Security
{
    [Serializable]
    public class LicensePayload
    {
        // 🔑 ESSENCIAL – ligação com o banco
        public string Key { get; set; }          // LicenseKey do banco
        public int LicencaId { get; set; }

        // Cliente
        public string Cliente { get; set; }

        // Tipo / validade
        public int CodigoTipoLicenca { get; set; }
        public DateTime? ExpiraEm { get; set; }

        // Regras
        public int LimiteMaquinas { get; set; }
        public List<string> Modulos { get; set; } = new List<string>();

        // Auditoria (opcional)
        public DateTime DataGeracao { get; set; } = DateTime.Now;
    }
}
