namespace CashLineERP.Application.IslamicFinance.Shariah;

public interface IShariahReviewRepository
{
    IReadOnlyCollection<IslamicFinanceShariahReviewDetailView> GetReviewCases(
        string? statusCode = null,
        long? financingRequestId = null,
        long? productProfileId = null);

    IslamicFinanceShariahReviewDetailView? GetReviewCase(long shariahReviewCaseId);
    IslamicFinanceShariahReviewDetailView Create(CreateIslamicFinanceShariahReviewCommand command);
    IslamicFinanceShariahReviewDetailView Submit(long shariahReviewCaseId, long actorUserId);
    IslamicFinanceShariahReviewDetailView RecommendOutcome(long shariahReviewCaseId, RecommendIslamicFinanceShariahOutcomeCommand command);
    IslamicFinanceShariahReviewDetailView ApproveOutcome(long shariahReviewCaseId, long actorUserId);
}
