using Microsoft.AspNetCore.Http;
using System;
using System.Collections.Generic;
using System.Security.Claims;
using System.Text;

namespace GreenTree.Maschinenbestellungen.Services.Authentication
{
    public interface IAuthenticationService
    {
        /// <summary>
        /// Authenticate and sign user in
        /// </summary>
        /// <param name="httpContext"></param>
        /// <param name="username">The username.</param>
        /// <param name="isPersistent">The login persistence.</param>
        public void SignIn(string username, bool isPersistent = false);

        /// <summary>
        /// Authenticate and sign user in
        /// </summary>
        /// <param name="httpContext"></param>
        /// <param name="username">The username.</param>
        /// <param name="isPersistent">The login persistence.</param>
        public void SignInAdmin(bool isPersistent = false);

        /// <summary>
        /// Sign user out
        /// </summary>
        /// <param name="httpContext"></param>
        public void SignOut();
    }
}
