mirror of
https://github.com/Sea-Haven-Industries/shoc-backend.git
synced 2026-09-30 03:43:11 +00:00
23 lines
862 B
C#
23 lines
862 B
C#
using System.Security.Claims;
|
|
using SeaHaven.Services.DTOs;
|
|
|
|
namespace SeaHaven.Services.Interfaces;
|
|
|
|
public interface ITeamMemberInviteService
|
|
{
|
|
/// <summary>Persists a new invite for a pending member and returns its raw token.</summary>
|
|
Task<IssuedTeamMemberInvite> CreateAsync(string userId, CancellationToken cancellationToken);
|
|
|
|
/// <summary>Emails the invite link. Returns false when the email could not be handed off.</summary>
|
|
Task<bool> SendAsync(
|
|
IssuedTeamMemberInvite invite,
|
|
string email,
|
|
string name,
|
|
CancellationToken cancellationToken);
|
|
|
|
/// <summary>Admin-only: revokes a pending member's open invites and emails a new one.</summary>
|
|
Task<TeamMemberInviteResendOutcomeDTO> ResendAsync(
|
|
string userId,
|
|
ClaimsPrincipal caller,
|
|
CancellationToken cancellationToken);
|
|
}
|