import { Types } from 'mongoose';
import { HydratedDocument } from 'mongoose';
import { BillingDuration } from './company.schema';
export declare enum InvoiceStatus {
    PAID = "PAID",
    UNPAID = "UNPAID"
}
export declare class Invoice {
    company_id: Types.ObjectId;
    invoiceId: string;
    amount: number;
    rides_count: number;
    adjusted_from_wallet: number;
    due_amount: number;
    total_base_fare: number;
    commission_gst_amount: number;
    payout_gst_amount: number;
    total_tollCharge: number;
    status: string;
    payout: BillingDuration;
    start_date: Date;
    end_date: Date;
    invoice_url: string;
}
export type InvoiceDocment = HydratedDocument<Invoice>;
export declare const InvoiceSchema: import("mongoose").Schema<Invoice, import("mongoose").Model<Invoice, any, any, any, import("mongoose").Document<unknown, any, Invoice, any, {}> & Invoice & {
    _id: Types.ObjectId;
} & {
    __v: number;
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, Invoice, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<Invoice>, {}, import("mongoose").ResolveSchemaOptions<import("mongoose").DefaultSchemaOptions>> & import("mongoose").FlatRecord<Invoice> & {
    _id: Types.ObjectId;
} & {
    __v: number;
}>;
