import { Repository } from "typeorm";
import { AuthService } from "../../auth/v1/auth.service";
import { ClientCompanyContract } from "../../client-contract/entities/client-contract.entity";
import { DriverAvailability } from "../../driver-availability/entities/driver-availability.entity";
import { NotificationService } from "../../notification/v1/notification.service";
import { TeamMember } from "../../team-member/entities/team_member.entity";
import { Trip } from "../../trips/entities/trip.entity";
import { FlightData } from "../flight-data";
import { VehicleMaintenance } from "../../vehicle-maintenance/entities/vehicle-maintenance.entity";
import { FleetManagement } from "../../fleet-management/entities/fleet-management.entity";
import { DriverFleetHistory } from "../../fleet-management/entities/driver-fleet-history.entity";
import { VehicleStatus } from "../../vehicle-status/entities/vehicle-status.entity";
import { ApiLog } from "../../api-log/entities/api-log.entity";
import { Auth } from "src/modules/auth/entities/auth.entity";
import { Role } from "src/modules/role/entities/role.entity";
import { Invoice } from "src/modules/invoices/entities/invoice.entity";
export declare class CronService {
    private readonly tripRepository;
    private readonly clientContactEntityRepository;
    private readonly driverAvailabilityRepository;
    private readonly invoiceRepository;
    private readonly vehicleMaintenanceRepository;
    private readonly fleetRepository;
    private readonly driverFleetHistoryRepository;
    private readonly vehicleStatusRepository;
    private readonly apiLogRepository;
    private readonly authRepository;
    private readonly roleRepository;
    private readonly teamMemberRepository;
    private readonly notificationService;
    private readonly authService;
    private readonly logger;
    constructor(tripRepository: Repository<Trip>, clientContactEntityRepository: Repository<ClientCompanyContract>, driverAvailabilityRepository: Repository<DriverAvailability>, invoiceRepository: Repository<Invoice>, vehicleMaintenanceRepository: Repository<VehicleMaintenance>, fleetRepository: Repository<FleetManagement>, driverFleetHistoryRepository: Repository<DriverFleetHistory>, vehicleStatusRepository: Repository<VehicleStatus>, apiLogRepository: Repository<ApiLog>, authRepository: Repository<Auth>, roleRepository: Repository<Role>, teamMemberRepository: Repository<TeamMember>, notificationService: NotificationService, authService: AuthService);
    everyMinuteCron(): Promise<void>;
    everyMidnightCron(): Promise<void>;
    everyDayAt13UTC(): Promise<void>;
    everyDayAt9UTC(): Promise<void>;
    sendFlightReminder(): Promise<void>;
    searchFlightByNumber(flightNumber: string, page: number, limit: number, token: any, flightDate?: string): Promise<FlightData>;
    handleTripReminderCron(): Promise<void>;
    handleTripOverdueCron(): Promise<void>;
    handleContractsCron(): Promise<void>;
    handleContractsReminderCron(): Promise<void>;
    weeklyDriverAvailabilityReset(): Promise<void>;
    handleInvoiceOverdueCron(): Promise<void>;
    updateMaintenances(): Promise<void>;
    removeOldApiLogs(): Promise<void>;
    checkFleetRegistrationExpiry(): Promise<void>;
}
