import mongoose from 'mongoose';
export declare const dashboardRepository: {
    getLeadCounts(filters?: {
        fromDate?: Date;
        toDate?: Date;
    }): Promise<{
        total: number;
        byStatus: any[];
    }>;
    getLeadsByType(filters?: {
        fromDate?: Date;
        toDate?: Date;
    }): Promise<any[]>;
    getLeadsScheduledToday(): Promise<number>;
    getLeadsAssignedToday(): Promise<number>;
    getAssignmentCounts(filters?: {
        fromDate?: Date;
        toDate?: Date;
    }): Promise<{
        total: number;
        byStatus: any[];
    }>;
    getJobsInProgress(): Promise<number>;
    getJobsCompleted(filters?: {
        fromDate?: Date;
        toDate?: Date;
    }): Promise<number>;
    getAgentWorkloadCounts(): Promise<any[]>;
    getAgentStats(): Promise<{
        total: number;
        available: number;
        busy: number;
    }>;
    getLeadsByDay(days: number): Promise<any[]>;
    getJobTrends(days: number): Promise<any[]>;
    getSLACompliance(days: number): Promise<{
        completed: number;
        total: number;
        compliance: number;
    }>;
    getUserCounts(): Promise<{
        total: number;
        byRole: any[];
    }>;
    getAgentAssignmentStats(agentId: mongoose.Types.ObjectId, filters?: {
        fromDate?: Date;
        toDate?: Date;
    }): Promise<{
        total: number;
        byStatus: any[];
    }>;
    getAgentTaskTrends(agentId: mongoose.Types.ObjectId, days: number): Promise<{
        _id: string;
        assigned: number;
        completed: number;
        cancelled: number;
    }[]>;
    getAgentCompletionRate(agentId: mongoose.Types.ObjectId, filters?: {
        fromDate?: Date;
        toDate?: Date;
    }): Promise<{
        total: number;
        completed: number;
        completionRate: number;
    }>;
};
//# sourceMappingURL=dashboard.repository.d.ts.map