using adas_core.Domain.Enums;
using MongoDB.Bson;

namespace adas_core.Domain.Models.MongoModels;

/// <summary>
/// Represents a display used to present or output information to the user.
/// </summary>
public class Display
{
    public ObjectId Id { get; set; }
    public ObjectId UnitId { get; set; }
    public ObjectId? DisplayConfigId { get; set; }
    public required string Name { get; set; }
    public List<ObjectId> PointOfCareIdList { get; set; } = [];

    public DisplayConfigEnums.DisplayType Type { get; set; } = DisplayConfigEnums.DisplayType.Unknown;

    #region Unmap

    public Unit? Unit { get; set; }
    public List<PointOfCare> PointOfCares { get; set; } = [];
    public DisplayConfig? DisplayConfig { get; set; }

    #endregion
}