namespace ScadaLink.SiteEventLogging;
///
/// Interface for recording operational events to the local SQLite event log.
///
public interface ISiteEventLogger
{
///
/// Record an event asynchronously.
///
/// Category: script, alarm, deployment, connection, store_and_forward, instance_lifecycle
/// Info, Warning, or Error
/// Optional instance ID associated with the event
/// Source identifier, e.g., "ScriptActor:MonitorSpeed"
/// Human-readable event description
/// Optional JSON details (stack traces, compilation errors, etc.)
Task LogEventAsync(
string eventType,
string severity,
string? instanceId,
string source,
string message,
string? details = null);
}