namespace CashLineERP.Application.Finance;

public interface ITreasuryTransferRepository
{
    IReadOnlyCollection<TreasuryTransferDetailView> GetTreasuryTransfers();

    TreasuryTransferDetailView? GetTreasuryTransfer(long treasuryTransferId);

    TreasuryTransferDetailView Create(CreateTreasuryTransferCommand command);

    TreasuryTransferDetailView Submit(long treasuryTransferId, long actorUserId);

    TreasuryTransferDetailView Approve(long treasuryTransferId, long actorUserId);

    TreasuryTransferDetailView Post(long treasuryTransferId, long actorUserId);
}
