using System;

namespace ZB.MOM.WW.OtOpcUa.Driver.Historian.Wonderware.Backend
{
    /// <summary>
    ///     SDK-free representation of a Historian event record. Prevents ArchestrA types from
    ///     leaking beyond <c>HistorianDataSource</c>.
    /// </summary>
    public sealed class HistorianEventDto
    {
        /// <summary>Gets or sets the unique identifier for the event.</summary>
        public Guid Id { get; set; }

        /// <summary>Gets or sets the source of the event.</summary>
        public string? Source { get; set; }

        /// <summary>Gets or sets the time when the event occurred.</summary>
        public DateTime EventTime { get; set; }

        /// <summary>Gets or sets the time when the event was received.</summary>
        public DateTime ReceivedTime { get; set; }

        /// <summary>Gets or sets the display text for the event.</summary>
        public string? DisplayText { get; set; }

        /// <summary>Gets or sets the severity level of the event.</summary>
        public ushort Severity { get; set; }
    }
}
