using System;
using System.Collections.Generic;
using System.Diagnostics;
namespace LC.Newtonsoft.Json.Serialization
{
///
/// Represents a trace writer.
///
public interface ITraceWriter
{
///
/// Gets the that will be used to filter the trace messages passed to the writer.
/// For example a filter level of will exclude messages and include ,
/// and messages.
///
/// The that will be used to filter the trace messages passed to the writer.
TraceLevel LevelFilter { get; }
///
/// Writes the specified trace level, message and optional exception.
///
/// The at which to write this trace.
/// The trace message.
/// The trace exception. This parameter is optional.
void Trace(TraceLevel level, string message, Exception? ex);
}
}