using ZB.MOM.WW.OtOpcUa.Commons.Messages.Logging;
namespace ZB.MOM.WW.OtOpcUa.Core.Scripting;
///
/// Abstraction over the mechanism that publishes records
/// to a downstream consumer (e.g. an Akka DPS script-logs topic). The concrete
/// implementation is DpsScriptLogPublisher (Runtime project), wired via DI; the
/// sink depends only on this interface so the Core.Scripting layer has no Akka dependency.
///
public interface IScriptLogPublisher
{
///
/// Publish a single . Implementations must be
/// thread-safe — Serilog sinks may be called from any thread.
///
/// The entry to publish. Must not be null.
void Publish(ScriptLogEntry entry);
}