using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
namespace gehGassi.Pwned
{
///
/// Haveibeenpwned.com password service.
///
public interface IPwnedPasswordService
{
///
/// Instance of that was created by DI.
///
HttpClient Client { get; }
///
/// Returns true if password was compromised and number of times it has been compromised.
///
/// Does not store password anywhere simply hashes it and sends to the Resful Api.
///
///
Task<(bool pwned, long count)> IsPasswordPwnedAsync(string password, CancellationToken token = default);
}
}