using System.Collections.Generic;
using System.Threading.Tasks;
using Admin.Core.Model.Input;
using Admin.Core.Model.Output;
using Admin.Core.Model.Admin;
using Admin.Core.Service.Admin.User.Input;
using Admin.Core.Service.Admin.User.Output;
namespace Admin.Core.Service.Admin.User
{
    /// 
    /// Óû§·þÎñ
    /// 	
    public interface IUserService
	{
        Task> GetAsync(long id);
        Task PageAsync(PageInput input);
        Task AddAsync(UserAddInput input);
        Task UpdateAsync(UserUpdateInput input);
        Task DeleteAsync(long id);
        Task SoftDeleteAsync(long id);
        Task BatchSoftDeleteAsync(long[] ids);
        Task ChangePasswordAsync(UserChangePasswordInput input);
        Task UpdateBasicAsync(UserUpdateBasicInput input);
        Task GetBasicAsync();
        Task> GetPermissionsAsync();
    }
}