Interface for an audit writer used by the engine. It declares async methods to begin, complete, and record audit actions with cancellation support and boolean success results.
namespace SboxSuperuser.Engine.Audit;
internal interface IAuditWriter
{
Task<bool> BeginAsync( AuditAction action, CancellationToken cancellation );
Task<bool> CompleteAsync( AuditAction action, CommandStatus outcome, CancellationToken cancellation );
Task<bool> RecordAsync( AuditAction action, CommandStatus outcome, CancellationToken cancellation );
}