export declare class DriverIncentiveAggregation {
    matchDriverId(driver_id?: string, status?: string): Promise<{
        $match: any;
    }>;
    matchByMonth(month?: number, year?: number): Promise<{
        $match: any;
    }>;
    lookupDriver(): Promise<{
        $lookup: {
            from: string;
            localField: string;
            foreignField: string;
            as: string;
        };
    }>;
    unwindDriver(): Promise<{
        $unwind: {
            path: string;
            preserveNullAndEmptyArrays: boolean;
        };
    }>;
    projectDriverData(): Promise<{
        $project: {
            _id: number;
            driver_id: number;
            total_online_seconds: number;
            createdAt: number;
            total_online_hours: {
                $round: (number | {
                    $divide: (string | number)[];
                })[];
            };
            total_distance: number;
            driver_incentive_id: number;
            incentive: number;
            status: number;
            created_at: number;
            updated_at: number;
            driver: {
                _id: number;
                name: number;
                email: number;
                phone: number;
                profile_image: number;
                is_active: number;
                is_approved: number;
                is_block: number;
            };
        };
    }>;
    sortByCreatedAt(): Promise<{
        $sort: {
            createdAt: number;
        };
    }>;
    paginateData(skip: number, limit: number): Promise<{
        $facet: {
            metadata: {
                $count: string;
            }[];
            data: ({
                $skip: number;
                $limit?: undefined;
            } | {
                $limit: number;
                $skip?: undefined;
            })[];
        };
    }>;
}
