using Microsoft.Data.SqlClient;
using System.Threading;
using System.Threading.Tasks;

namespace XLAB2.Infrastructure;

internal interface IDatabaseConnectionFactory
{
    string ConnectionString { get; }

    DatabaseOptions Options { get; }

    SqlConnection CreateConnection();

    Task<SqlConnection> OpenConnectionAsync(CancellationToken cancellationToken = default);
}
