:drunk: Write shit code trying to split up the Auth (WIP)

This commit is contained in:
2025-07-06 12:58:18 +08:00
parent 5757526ea5
commit 6a3d04af3d
224 changed files with 1889 additions and 36885 deletions

View File

@ -0,0 +1,28 @@
using DysonNetwork.Common.Models;
using NodaTime;
namespace DysonNetwork.Pass.Features.Account.Interfaces;
public interface IRelationshipService
{
Task<bool> HasExistingRelationship(Guid accountId, Guid relatedId);
Task<Relationship?> GetRelationship(
Guid accountId,
Guid relatedId,
RelationshipStatus? status = null,
bool ignoreExpired = false
);
Task<Relationship> CreateRelationship(Models.Account sender, Models.Account target, RelationshipStatus status);
Task<Relationship> BlockAccount(Models.Account sender, Models.Account target);
Task<Relationship> UnblockAccount(Models.Account sender, Models.Account target);
Task<Relationship> SendFriendRequest(Models.Account sender, Models.Account target);
Task DeleteFriendRequest(Guid accountId, Guid relatedId);
Task<Relationship> AcceptFriendRelationship(
Relationship relationship,
RelationshipStatus status = RelationshipStatus.Friends
);
Task<Relationship> UpdateRelationship(Guid accountId, Guid relatedId, RelationshipStatus status);
Task<List<Guid>> ListAccountFriends(Models.Account account);
Task<List<Guid>> ListAccountBlocked(Models.Account account);
Task<bool> HasRelationshipWithStatus(Guid accountId, Guid relatedId, RelationshipStatus status = RelationshipStatus.Friends);
}