2022-02-27 23:01:57 +00:00
|
|
|
using VoidCat.Model;
|
|
|
|
|
|
|
|
namespace VoidCat.Services.Abstractions;
|
|
|
|
|
2022-06-10 20:42:36 +00:00
|
|
|
/// <summary>
|
|
|
|
/// Mapping store to associate files to users
|
|
|
|
/// </summary>
|
2022-02-27 23:01:57 +00:00
|
|
|
public interface IUserUploadsStore
|
|
|
|
{
|
2022-06-10 20:42:36 +00:00
|
|
|
/// <summary>
|
|
|
|
/// List all files for the user
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="user"></param>
|
|
|
|
/// <param name="request"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
ValueTask<PagedResult<Guid>> ListFiles(Guid user, PagedRequest request);
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Assign a file upload to a user
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="user"></param>
|
2022-06-13 15:11:58 +00:00
|
|
|
/// <param name="file"></param>
|
2022-06-10 20:42:36 +00:00
|
|
|
/// <returns></returns>
|
2022-06-13 15:11:58 +00:00
|
|
|
ValueTask AddFile(Guid user, Guid file);
|
2022-06-10 20:42:36 +00:00
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Get the uploader of a single file
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="file"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
ValueTask<Guid?> Uploader(Guid file);
|
2022-02-27 23:01:57 +00:00
|
|
|
}
|