// Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System.Threading; using System.Threading.Tasks; namespace Microsoft.AspNet.Identity { /// /// Provides an abstraction for user validation. /// /// The type encapsulating a user. public interface IUserValidator where TUser : class { /// /// Validates the specified as an asynchronous operation. /// /// The that can be used to retrieve user properties. /// The user to validate. /// The that represents the asynchronous operation, containing the of the validation operation. Task ValidateAsync(UserManager manager, TUser user); } }