import { DbService } from 'src/db/db.service';
import { CreatePackageDto } from './dto/create-package.dto';
import { UpdatePackageDto } from './dto/update-package.dto';
import mongoose from 'mongoose';
export declare class PackagesService {
    private readonly db;
    constructor(db: DbService);
    create(createPackageDto: CreatePackageDto): Promise<{
        message: string;
        data: {
            pricing: any[];
            pickup_location: import("./schema/packages.schema").Location;
            drop_location: import("./schema/packages.schema").Location;
            name: string;
            description: string;
            image: string;
            is_delete: boolean;
            is_active: boolean;
            _id: mongoose.Types.ObjectId;
            __v: number;
        };
    }>;
    findAll(query?: any): Promise<{
        data: {
            pricing: (mongoose.FlattenMaps<{
                package_id: mongoose.Types.ObjectId;
                vehicle_id: mongoose.Types.ObjectId;
                price: number;
                ac_price: number;
                is_active: boolean;
            }> & {
                _id: mongoose.Types.ObjectId;
            } & {
                __v: number;
            })[];
            pricing_count: number;
            pickup_location: mongoose.FlattenMaps<{
                type: string;
                coordinates: [number, number];
                address: string;
                city: string;
                state: string;
                country: string;
            }>;
            drop_location: mongoose.FlattenMaps<{
                type: string;
                coordinates: [number, number];
                address: string;
                city: string;
                state: string;
                country: string;
            }>;
            name: string;
            description: string;
            image: string;
            is_delete: boolean;
            is_active: boolean;
            _id: mongoose.Types.ObjectId;
            __v: number;
        }[];
        total: number;
        page: number;
        limit: number;
        totalPages: number;
    }>;
    findOne(id: string): Promise<{
        data: {
            pricing: (mongoose.FlattenMaps<{
                package_id: mongoose.Types.ObjectId;
                vehicle_id: mongoose.Types.ObjectId;
                price: number;
                ac_price: number;
                is_active: boolean;
            }> & {
                _id: mongoose.Types.ObjectId;
            } & {
                __v: number;
            })[];
            pickup_location: mongoose.FlattenMaps<{
                type: string;
                coordinates: [number, number];
                address: string;
                city: string;
                state: string;
                country: string;
            }>;
            drop_location: mongoose.FlattenMaps<{
                type: string;
                coordinates: [number, number];
                address: string;
                city: string;
                state: string;
                country: string;
            }>;
            name: string;
            description: string;
            image: string;
            is_delete: boolean;
            is_active: boolean;
            _id: mongoose.Types.ObjectId;
            __v: number;
        };
    }>;
    update(id: string, updatePackageDto: UpdatePackageDto): Promise<{
        message: string;
        data: {
            pricing: (mongoose.FlattenMaps<{
                package_id: mongoose.Types.ObjectId;
                vehicle_id: mongoose.Types.ObjectId;
                price: number;
                ac_price: number;
                is_active: boolean;
            }> & {
                _id: mongoose.Types.ObjectId;
            } & {
                __v: number;
            })[];
            pickup_location: mongoose.FlattenMaps<{
                type: string;
                coordinates: [number, number];
                address: string;
                city: string;
                state: string;
                country: string;
            }>;
            drop_location: mongoose.FlattenMaps<{
                type: string;
                coordinates: [number, number];
                address: string;
                city: string;
                state: string;
                country: string;
            }>;
            name: string;
            description: string;
            image: string;
            is_delete: boolean;
            is_active: boolean;
            _id: mongoose.Types.ObjectId;
            __v: number;
        };
    }>;
    updateStatus(id: string, is_active: boolean): Promise<{
        message: string;
        data: mongoose.Document<unknown, {}, import("./schema/packages.schema").Packages, {}, {}> & import("./schema/packages.schema").Packages & {
            _id: mongoose.Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    remove(id: string): Promise<{
        message: string;
    }>;
    findPickupCities(): Promise<{
        data: string[];
    }>;
    findAllUser(city?: string): Promise<{
        data: {
            pricing: (mongoose.FlattenMaps<{
                package_id: mongoose.Types.ObjectId;
                vehicle_id: mongoose.Types.ObjectId;
                price: number;
                ac_price: number;
                is_active: boolean;
            }> & {
                _id: mongoose.Types.ObjectId;
            } & {
                __v: number;
            })[];
            pickup_location: mongoose.FlattenMaps<{
                type: string;
                coordinates: [number, number];
                address: string;
                city: string;
                state: string;
                country: string;
            }>;
            drop_location: mongoose.FlattenMaps<{
                type: string;
                coordinates: [number, number];
                address: string;
                city: string;
                state: string;
                country: string;
            }>;
            name: string;
            description: string;
            image: string;
            is_delete: boolean;
            is_active: boolean;
            _id: mongoose.Types.ObjectId;
            __v: number;
        }[];
    }>;
}
