using System;
using System.Threading.Tasks;

namespace EonaCat.Logger.Managers;
// This file is part of the EonaCat project(s) which is released under the Apache License.
// See the LICENSE file or go to https://EonaCat.com/License for full license details.

public interface ILogManager
{
    Task WriteAsync(string message, ELogType logType = ELogType.INFO, bool? writeToConsole = null,
        string customSplunkSourceType = null, string grayLogFacility = null, string grayLogSource = null,
        string grayLogVersion = "1.1", bool disableSplunkSSL = false);

    Task WriteAsync(Exception exception, string module = null, string method = null, bool criticalException = false,
        bool? writeToConsole = null, string customSplunkSourceType = null, string grayLogFacility = null,
        string grayLogSource = null, string grayLogVersion = "1.1", bool disableSplunkSSL = false);
}