using System.Threading.Tasks; using Knoks.Core.Entities; namespace Knoks.Core.Logic.Interfaces { public interface IAccountTransactionManager { //Task ActivateFreeCredit(User targetUser, Account userAccount); //Task ExecutePublishKnokTransaction(User knokerUser, Account knokerAccount, long knokId, decimal amount, decimal? amountUsd = null); //Task ExecuteUserBuyKnokTransaction(User user, Account account, long knokId, decimal amount, decimal? amountUsd = null); Task GetLatestDepositEvent(); //Task Deposit(User targetUser, Account targetUserAccount, decimal amount, decimal amountUsd, // string externalReferenceId, string walletAddress, ulong blockNumber, int? operatorId = null); Task Transfer(User fromUser, Account fromUserAccount, User toUser, Account toUserAccount, decimal amount, decimal? amountUsd, string externalReferenceId, ulong blockNumber); } }