feat: Project peready 2.0
This commit is contained in:
8
LctMonolith/Services/Contracts/IFileStorageService.cs
Normal file
8
LctMonolith/Services/Contracts/IFileStorageService.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
namespace LctMonolith.Services.Interfaces;
|
||||
|
||||
public interface IFileStorageService
|
||||
{
|
||||
Task<string> UploadAsync(Stream content, string contentType, string keyPrefix, CancellationToken ct = default);
|
||||
Task DeleteAsync(string key, CancellationToken ct = default);
|
||||
Task<string> GetPresignedUrlAsync(string key, TimeSpan? expires = null, CancellationToken ct = default);
|
||||
}
|
||||
11
LctMonolith/Services/Contracts/IProfileService.cs
Normal file
11
LctMonolith/Services/Contracts/IProfileService.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
namespace LctMonolith.Services.Interfaces;
|
||||
|
||||
using LctMonolith.Models.Database;
|
||||
|
||||
public interface IProfileService
|
||||
{
|
||||
Task<Profile?> GetByUserIdAsync(Guid userId, CancellationToken ct = default);
|
||||
Task<Profile> UpsertAsync(Guid userId, string? firstName, string? lastName, DateOnly? birthDate, string? about, string? location, CancellationToken ct = default);
|
||||
Task<Profile> UpdateAvatarAsync(Guid userId, Stream fileStream, string contentType, string? fileName, CancellationToken ct = default);
|
||||
Task<bool> DeleteAvatarAsync(Guid userId, CancellationToken ct = default);
|
||||
}
|
||||
Reference in New Issue
Block a user