#nullable disable namespace StardewModdingAPI { /// Encapsulates monitoring and logging for a given module. public interface IMonitor { /********* ** Accessors *********/ /// Whether verbose logging is enabled. This enables more detailed diagnostic messages than are normally needed. bool IsVerbose { get; } /********* ** Methods *********/ /// Log a message for the player or developer. /// The message to log. /// The log severity level. void Log(string message, LogLevel level = LogLevel.Trace); /// Log a message for the player or developer, but only if it hasn't already been logged since the last game launch. /// The message to log. /// The log severity level. void LogOnce(string message, LogLevel level = LogLevel.Trace); /// Log a message that only appears when is enabled. /// The message to log. void VerboseLog(string message); } }