namespace CashLineERP.Application.IslamicFinance.ContractTemplates;

public interface IIslamicFinanceContractTemplateRepository
{
    IReadOnlyCollection<IslamicFinanceContractTemplateDetailView> GetContractTemplates(
        bool activeOnly = false,
        long? productProfileId = null,
        string? languageCode = null);

    IslamicFinanceContractTemplateDetailView? GetContractTemplate(long contractTemplateId);
    IslamicFinanceContractTemplateDetailView Create(CreateIslamicFinanceContractTemplateCommand command);
    IslamicFinanceContractTemplateDetailView Submit(long contractTemplateId, long actorUserId);
    IslamicFinanceContractTemplateDetailView Approve(long contractTemplateId, long actorUserId);
    IslamicFinanceContractTemplateDetailView Activate(long contractTemplateId, long actorUserId);
}
