import type { Injector } from 'graphql-modules';
import { DecoratedLedgerRecord, getProfitLossReportAmounts } from './profit-and-loss.helper.js';
export declare function calculateTaxAmounts(injector: Injector, year: number, decoratedLedgerRecords: DecoratedLedgerRecord[], yearlyResearchAndDevelopmentExpensesAmount: number, threeYearsResearchAndDevelopmentExpensesForTax: number, profitBeforeTaxAmount: number): Promise<{
    researchAndDevelopmentExpensesForTax: number;
    fines: import("../types.js").CommentaryProto;
    untaxableGifts: import("../types.js").CommentaryProto;
    businessTripsExcessExpensesAmount: number;
    salaryExcessExpensesAmount: number;
    reserves: import("../types.js").CommentaryProto;
    nontaxableLinkage: import("../types.js").CommentaryProto;
    taxableIncomeAmount: number;
    taxRate: number;
    specialTaxableIncome: import("../types.js").CommentaryProto;
    specialTaxRate: number;
    annualTaxExpenseAmount: number;
}>;
export declare function calculateCumulativeRnDExpenses(year: number, decoratedLedgerByYear: Map<number, DecoratedLedgerRecord[]>, profitLossByYear?: Map<number, ReturnType<typeof getProfitLossReportAmounts>>): number;
