mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-09-30 06:03:12 +00:00
25 lines
1.5 KiB
C#
25 lines
1.5 KiB
C#
using Data.SeaHavenIndustries;
|
|
using SeaHaven.DataServices.Dto;
|
|
|
|
namespace SeaHaven.DataServices.Interfaces
|
|
{
|
|
public interface IUserDataService
|
|
{
|
|
Task<ApplicationUser?> GetByIdAsync(string id);
|
|
Task<IEnumerable<ApplicationUser>> GetAllAsync();
|
|
Task<ApplicationUser?> GetByEmailAsync(string email);
|
|
Task<bool> ExistsAsync(string id);
|
|
|
|
Task<IReadOnlyList<UserListRowData>> GetAllForListAsync(CancellationToken cancellationToken);
|
|
Task<UserProfileData?> GetProfileAsync(string id, CancellationToken cancellationToken);
|
|
Task<bool> UpdateProfileAsync(string id, string? name, string? email, string? contact, CancellationToken cancellationToken);
|
|
Task<ApplicationUser?> GetForEditAsync(string id, CancellationToken cancellationToken);
|
|
Task<bool> IsAccountOwnerAsync(string userId, CancellationToken cancellationToken);
|
|
Task<ApplicationUser?> GetByEmailNormalizedAsync(string email, CancellationToken cancellationToken);
|
|
Task UpdateUserAsync(ApplicationUser user, CancellationToken cancellationToken);
|
|
Task DeleteUserWithCascadeAsync(ApplicationUser user, CancellationToken cancellationToken);
|
|
Task ExecuteTransactionalAsync(Func<CancellationToken, Task> callback, CancellationToken cancellationToken);
|
|
Task<string?> GetEmailByIdAsync(string userId, CancellationToken cancellationToken);
|
|
Task<IReadOnlyDictionary<string, string>> GetDisplayNamesByIdsAsync(IEnumerable<string> ids);
|
|
}
|
|
}
|