import { Repository } from 'typeorm';
import { Expense } from '../../database/entities/expense.entity';
import { Settlement } from '../../database/entities/settlement.entity';
import { Group } from '../../database/entities/group.entity';
import { GroupMember } from '../../database/entities/group-member.entity';
import { MonthlyReportQueryDto, CategoryReportQueryDto } from './dto/report-query.dto';
import { MonthlyReportEntryDto, CategoryBreakdownEntryDto, GroupReportDto } from './dto/report-response.dto';
export declare class ReportsService {
    private readonly expenseRepo;
    private readonly settlementRepo;
    private readonly groupRepo;
    private readonly groupMemberRepo;
    constructor(expenseRepo: Repository<Expense>, settlementRepo: Repository<Settlement>, groupRepo: Repository<Group>, groupMemberRepo: Repository<GroupMember>);
    getMonthlyReport(userId: string, query: MonthlyReportQueryDto): Promise<MonthlyReportEntryDto[]>;
    getCategoryBreakdown(userId: string, query: CategoryReportQueryDto): Promise<CategoryBreakdownEntryDto[]>;
    getGroupReport(groupId: string, userId: string): Promise<GroupReportDto>;
    private sumConfirmedSettlements;
    private buildCategoryMap;
    private buildMonthlyTrend;
    private buildMonthBuckets;
    private toMonthKey;
    private round;
}
