import { HydratedDocument, Types } from 'mongoose';
export declare enum BillingCycle {
    MONTHLY = "MONTHLY",
    ANNUAL = "ANNUAL",
    BOTH = "BOTH"
}
export declare class Plans {
    name: string;
    description: string;
    billing_cycles: BillingCycle;
    min_vehicle_count: number;
    max_vehicle_count: number;
    base_vehicle_limit: number;
    base_monthly_price: number;
    base_annual_price: number;
    additional_vehicle_monthly_price: number;
    additional_vehicle_annual_price: number;
    razorpay_monthly_plan_id: string;
    razorpay_annual_plan_id: string;
    is_active: boolean;
    is_deleted: boolean;
    created_by: Types.ObjectId;
    deleted_at: number;
}
export type PlansDocument = HydratedDocument<Plans>;
export declare const PlansSchema: import("mongoose").Schema<Plans, import("mongoose").Model<Plans, any, any, any, import("mongoose").Document<unknown, any, Plans, any> & Plans & {
    _id: Types.ObjectId;
} & {
    __v: number;
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, Plans, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<Plans>, {}> & import("mongoose").FlatRecord<Plans> & {
    _id: Types.ObjectId;
} & {
    __v: number;
}>;
