using System.Collections.ObjectModel;
using PersonalToolBox.Models;

namespace PersonalToolBox.Services;

/// <summary>
/// 日志服务接口，管理底部日志打印栏的数据
/// </summary>
public interface ILogService
{
    /// <summary>
    /// 日志条目集合，绑定到 UI 的 ObservableCollection
    /// </summary>
    ObservableCollection<LogEntry> Logs { get; }

    /// <summary>
    /// 记录普通信息日志
    /// </summary>
    void Info(string message);

    /// <summary>
    /// 记录警告日志
    /// </summary>
    void Warning(string message);

    /// <summary>
    /// 记录错误日志
    /// </summary>
    void Error(string message);

    /// <summary>
    /// 清空所有日志
    /// </summary>
    void Clear();
}
