Code/SboxSuperuser/Engine/Audit/IAuditWriter.cs

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 );
}