using CashLineERP.Contracts.IslamicFinance;

namespace CashLineERP.Application.IslamicFinance.Facilities;

public interface IIslamicFinanceFacilityService
{
    IReadOnlyCollection<IslamicFinanceFacilityResponse> GetFacilities(
        bool activeOnly = false,
        long? customerPartyId = null,
        long? partnerLenderId = null);

    IslamicFinanceFacilityResponse? GetFacility(long facilityId);
    IslamicFinanceFacilityResponse CreateFacility(CreateIslamicFinanceFacilityRequest request);
    IslamicFinanceFacilityResponse SubmitFacility(long facilityId, long actorUserId);
    IslamicFinanceFacilityResponse ApproveFacility(long facilityId, long actorUserId);
    IslamicFinanceFacilityResponse ActivateFacility(long facilityId, long actorUserId);
}
