using System.Data;

namespace PlanTempus.Core.Database;

public interface IDatabaseOperations
{
    DatabaseScope CreateScope(string operationName);
    Task<T> ExecuteAsync<T>(Func<IDbConnection, Task<T>> operation, string operationName);
    Task ExecuteAsync(Func<IDbConnection, Task> operation, string operationName);
}