import { CustomerRepository } from "../repositories/CustomerRepository.js";
import { PurchaseRepository } from "../repositories/PurchaseRepository.js";
import { SupplierRepository } from "../repositories/SupplierRepository.js";
import { SaleRepository } from "../repositories/SaleRepository.js";
import { ExpenseRepository } from "../repositories/ExpenseRepository.js";
import { RetailSaleService } from "./RetailSaleService.js";
import { AttendanceRepository } from "../repositories/AttendanceRepository.js";
export declare class DashboardService {
    private readonly customerRepository;
    private readonly purchaseRepository;
    private readonly supplierRepository;
    private readonly saleRepository;
    private readonly expenseRepository;
    private readonly retailSaleService;
    private readonly attendanceRepository;
    constructor(customerRepository?: CustomerRepository, purchaseRepository?: PurchaseRepository, supplierRepository?: SupplierRepository, saleRepository?: SaleRepository, expenseRepository?: ExpenseRepository, retailSaleService?: RetailSaleService, attendanceRepository?: AttendanceRepository);
    getTodaysAttendance(): Promise<{
        date: string;
        totalEmployees: number;
        present: number;
        absent: number;
        halfDay: number;
        attendanceRate: number;
    }>;
    getTotalCustomers(): Promise<number>;
    getTotalSellers(): Promise<number>;
    getTodaysPurchaseAmount(): Promise<number>;
    getTodaysSalesAmount(): Promise<number>;
    getTodaysExpensesAmount(): Promise<number>;
    getTodaysRetailSalesAmount(): Promise<number>;
    getTodaysProfit(): Promise<number>;
    getSalesProfitChart(): Promise<{
        day: string;
        sales: number;
        profit: number;
    }[]>;
    getPendingVendorPayments(): Promise<number>;
    getPendingCustomerReceipts(): Promise<number>;
    getVendorPaymentsBreakdown(): Promise<{
        active: number;
        inactive: number;
        total: number;
    }>;
    getCustomerReceiptsBreakdown(): Promise<{
        active: number;
        inactive: number;
        total: number;
    }>;
    getVegetableStock(): Promise<{
        id: number;
        vegetable: string;
        remaining: number;
        remainingBags: number;
    }[]>;
    getTopDemandedVegetables(): Promise<{
        vegetable: string;
        sold: number;
        bags: number;
    }[]>;
    getRecentSales(): Promise<{
        invoiceNo: string;
        customer: string;
        amount: number;
        status: string;
        date: string;
    }[]>;
}
//# sourceMappingURL=DashboardService.d.ts.map