import { AdminService } from './admin.service';
import { AdminPasswordDto, AdminPayoutExportDto, AdminUpdateDriverDto, NotificationDto, SignInDto, UpdateTaxAmount } from './dto/admin.dto';
import { EditvehicleDetailDto, vehicleDetailDto } from 'src/fleet/dto/fleet.dto';
import { PaginationDto } from 'src/fleet-pass/dto/create-payout-subscription.dto';
export declare class AdminController {
    private readonly adminService;
    constructor(adminService: AdminService);
    create(signInDto: SignInDto): Promise<{
        token: string;
        data: {
            currency: string;
            currency_symbol: string;
            distance_unit: string;
            type: string;
            name: string;
            email: string;
            password: string;
            image: string;
            total_tax_pay: number;
            roles: string[];
            is_active: boolean;
            superAdmin: boolean;
            subAdmin: boolean;
            country_code: string;
            phone: string;
            timeZone: string;
            is_deleted: boolean;
            created_at: number;
            updated_at: number;
            deleted_at: number;
            _id: import("mongoose").Types.ObjectId;
            __v: number;
        };
    }>;
    assignVehicleToDriver(body: any): Promise<{
        message: string;
        data: import("mongoose").Document<unknown, {}, import("../vehicle/schema/vehicle-assignment.schema").VehicleAssignment, {}, {}> & import("../vehicle/schema/vehicle-assignment.schema").VehicleAssignment & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    updateVehicleAssignment(body: any, id: string): Promise<{
        message: string;
        data: import("mongoose").Document<unknown, {}, import("../vehicle/schema/vehicle-assignment.schema").VehicleAssignment, {}, {}> & import("../vehicle/schema/vehicle-assignment.schema").VehicleAssignment & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    unAssignVehicleFromDriver(id: string): Promise<{
        message: string;
        data: import("mongoose").FlattenMaps<{
            vehicle_detail_id: string;
            driver_id: string;
            owner: string;
            owner_id: string;
            weekdays: {
                day: string;
                time_slots: {
                    start_time: string;
                    end_time: string;
                }[];
            }[];
            start_time: string;
            end_time: string;
            start_date_time: string;
            end_date_time: string;
            isActive: boolean;
            isDeleted: boolean;
            assignment_type: import("../vehicle/schema/vehicle-assignment.schema").VehicleAssignmentType;
            created_at: number;
            updated_at: number;
        }> & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    getAssignedDriversForVehicle(id: string): Promise<{
        message: string;
        data: (import("mongoose").FlattenMaps<{
            vehicle_detail_id: string;
            driver_id: string;
            owner: string;
            owner_id: string;
            weekdays: {
                day: string;
                time_slots: {
                    start_time: string;
                    end_time: string;
                }[];
            }[];
            start_time: string;
            end_time: string;
            start_date_time: string;
            end_date_time: string;
            isActive: boolean;
            isDeleted: boolean;
            assignment_type: import("../vehicle/schema/vehicle-assignment.schema").VehicleAssignmentType;
            created_at: number;
            updated_at: number;
        }> & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        })[];
    }>;
    AddVehicle(body: vehicleDetailDto): Promise<{
        message: string;
    }>;
    getAllVehicles(dto: PaginationDto): Promise<{
        message: string;
        data: (import("mongoose").FlattenMaps<{
            driver_id: string;
            owner: import("../driver/schema/vehicle-detail.schema").VehicleDetailsOwner;
            fleet_id: string;
            vehicle_id: string;
            name: string;
            model: string;
            number: string;
            color: string;
            vin: string;
            child_seat_availabilty: boolean;
            wheel_chair_availabilty: boolean;
            vehicle_registration_image: string;
            vehicle_insurance_image: string;
            insurance_expiry_date: number;
            registration_expiry_date: number;
            status: string;
            approved_on: number;
            rejection_reason: string;
            created_at: number;
            updated_at: number;
        }> & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        })[];
        count: number;
    }>;
    getVehicleDetails(id: string): Promise<{
        message: string;
        data: import("mongoose").FlattenMaps<{
            driver_id: string;
            owner: import("../driver/schema/vehicle-detail.schema").VehicleDetailsOwner;
            fleet_id: string;
            vehicle_id: string;
            name: string;
            model: string;
            number: string;
            color: string;
            vin: string;
            child_seat_availabilty: boolean;
            wheel_chair_availabilty: boolean;
            vehicle_registration_image: string;
            vehicle_insurance_image: string;
            insurance_expiry_date: number;
            registration_expiry_date: number;
            status: string;
            approved_on: number;
            rejection_reason: string;
            created_at: number;
            updated_at: number;
        }> & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    EditVehicle(body: EditvehicleDetailDto): Promise<{
        message: string;
        data: import("mongoose").Document<unknown, {}, import("../driver/schema/vehicle-detail.schema").Vehicle_details, {}, {}> & import("../driver/schema/vehicle-detail.schema").Vehicle_details & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    getProfile(req: any): Promise<{
        data: {
            currency: string;
            currency_symbol: string;
            distance_unit: string;
            type: string;
            name: string;
            email: string;
            password: string;
            image: string;
            total_tax_pay: number;
            roles: string[];
            is_active: boolean;
            superAdmin: boolean;
            subAdmin: boolean;
            country_code: string;
            phone: string;
            timeZone: string;
            is_deleted: boolean;
            created_at: number;
            updated_at: number;
            deleted_at: number;
            _id: import("mongoose").Types.ObjectId;
            __v: number;
        };
    }>;
    dashboard(): Promise<{
        OverallBooking: any;
        TodayBooking: any;
        MonthlyBooking: any;
        WeeklyBooking: any;
        OverallCustomer: any;
        TodayCustomer: any;
        WeeklyCustomer: any;
        MonthlyCustomer: any;
        Overalldriver: any;
        Idledriver: any;
        OnRidedriver: any;
        Offlinedriver: any;
        driverRequestOverall: any;
        driverRequestMontly: any;
        driverRequestWeekly: any;
        docsUpdateRequest: any;
        TodaydocsUpdateRequest: any;
        WeekdocsUpdateRequest: any;
        MontlydocsUpdateRequest: any;
        driverRequestToday: any;
        overallEarning: number;
        todayEarning: number;
        weeklyEarning: number;
        monthlyEarning: number;
        Pendingcomplaints: any;
        repliedcomplaints: any;
        due_to_app_month: number;
        due_to_app_week: number;
        due_to_app_year: number;
        overall_payout_due: number;
        montly_tax: number;
        year_tax: number;
        overall_tax: number;
    }>;
    sent_notification(body: NotificationDto): Promise<void>;
    AdminChangePasword(req: any, body: AdminPasswordDto): Promise<{
        message: string;
    }>;
    AdminPayout(req: any, page: number, limit: number): Promise<{
        total_due_to_app: number;
        total_due_to_driver: number;
        total_tax_to_be_paid: number;
        total_balance_in_stripe: number;
        week_data: any[];
        meta: {};
    }>;
    UpdateTax(req: any, body: UpdateTaxAmount): Promise<{
        message: string;
    }>;
    TaxTransactionHistory(page: number, limit: number): Promise<{
        data: (import("mongoose").Document<unknown, {}, import("../payment/schema/tax.schema").Tax, {}, {}> & import("../payment/schema/tax.schema").Tax & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        })[];
        count: number;
    }>;
    taxDetail(req: any): Promise<{
        total_tax_collected: string;
        total_tax_paid: string;
        total_tax_to_be_paid: string;
    }>;
    pay_to_driver_list(req: any, page: number, limit: number): Promise<{
        data: any[];
    }>;
    AdminPayoutExport(req: any, body: AdminPayoutExportDto): Promise<{
        week_data: any[];
    }>;
    editDriver(id: string, body: AdminUpdateDriverDto): Promise<{
        success: boolean;
        message: string;
    }>;
    admin_vehicle_detail(vehicleDetailDto: vehicleDetailDto, req: any, id: string): Promise<{
        success: boolean;
        message: string;
    }>;
}
