using adas_core.Domain.Enums;

namespace adas_core.Domain.Models.MongoModels;

/// <summary>
/// Represents the configuration settings for an alarm.
/// </summary>
public class AlarmConfig
{
    public string? Name { get; set; }
    public bool Enabled { get; set; }
    public int EndAfter { get; set; } //seconds
    public AlarmItem? Recording { get; set; }
    public AlarmItem? Beacon { get; set; }
    public AlarmItem? OpenDoor { get; set; }
    public int? Priority { get; set; }
    public string? Color { get; set; }
    public AudioConfig? AudioConfig { get; set; }
}

/// <summary>
/// Represents the configuration settings for audio processing or playback.
/// </summary>
public class AudioConfig
{
    public AlarmEnum.AudioAlarmType Type { get; set; } = AlarmEnum.AudioAlarmType.Off;
    public string? Path { get; set; }
    public int? EndAfter { get; set; }
}