using General_Ledger_Service.DTOs.Reports; using General_Ledger_Service.Models; namespace General_Ledger_Service.Interfaces.Repositories { public interface ITaxRepository { Task GetTaxTypeByCodeAsync(string code); Task> GetAllTaxTypesAsync(); Task GetEffectiveTaxCodeByCodeAsync(string code, DateOnly txnDate); Task GetByCodeAsync(string code); Task AddTaxCodeAsync(TaxCode taxCode); Task> GetAllTaxCodesAsync(); // Accounting_System_Design_LKAS.md Section 11.7 - Income Tax Computation. Task GetNonDeductibleExpensesAsync(DateOnly periodStart, DateOnly periodEnd); Task GetAccountCreditActivityAsync(long accountId, DateOnly periodStart, DateOnly periodEnd); } }