import DataLoader from 'dataloader';
import { TenantAwareDBClient } from '../../app-providers/tenant-db-client.js';
import { IInsertReportParams, IUpdateReportParams } from '../types.js';
export declare class VatReportProvider {
    private db;
    private context;
    constructor(db: TenantAwareDBClient, context: GraphQLModules.GlobalContext);
    private batchReportsByBusinessIdAndMonthDatesLoader;
    getReportByBusinessIdAndMonthDateLoader: DataLoader<[string, string], string | undefined, [string, string]>;
    updateReport(params: IUpdateReportParams): Promise<import("../types.js").IUpdateReportResult[]>;
    insertReport(params: IInsertReportParams): Promise<import("../types.js").IInsertReportResult[]>;
    invalidateByBusinessIdAndMonth(businessId: string, monthDate: string): Promise<void>;
    clearCache(): void;
}
