Files
Swarm/DysonNetwork.Pass/Features/Account/Interfaces/IMagicSpellService.cs

21 lines
628 B
C#

using NodaTime;
using DysonNetwork.Pass.Features.Account;
using DysonNetwork.Common.Models;
namespace DysonNetwork.Pass.Features.Account.Interfaces;
public interface IMagicSpellService
{
Task<MagicSpell> CreateMagicSpell(
Models.Account account,
MagicSpellType type,
Dictionary<string, object> meta,
Instant? expiredAt = null,
Instant? affectedAt = null,
bool preventRepeat = false
);
Task NotifyMagicSpell(MagicSpell spell, bool bypassVerify = false);
Task ApplyMagicSpell(MagicSpell spell);
Task ApplyPasswordReset(MagicSpell spell, string newPassword);
}