#nullable enable
using Jellyfin.Data.Entities;
using MediaBrowser.Model.Services;
using Microsoft.AspNetCore.Http;
namespace MediaBrowser.Controller.Net
{
///
/// IAuthService.
///
public interface IAuthService
{
///
/// Authenticate and authorize request.
///
/// Request.
/// Authorization attributes.
void Authenticate(IRequest request, IAuthenticationAttributes authAttribtutes);
///
/// Authenticate and authorize request.
///
/// Request.
/// Authorization attributes.
/// Authenticated user.
User? Authenticate(HttpRequest request, IAuthenticationAttributes authAttribtutes);
///
/// Authenticate request.
///
/// The request.
/// Authorization information. Null if unauthenticated.
AuthorizationInfo Authenticate(HttpRequest request);
}
}