import { Types } from 'mongoose';
import { Document, HydratedDocument } from 'mongoose';
export type DriverLedgerDocument = HydratedDocument<DriverLedger>;
export declare enum DriverLedgerAction {
    ADVANCE_GIVEN = "ADVANCE_GIVEN",
    ADVANCE_DEDUCTED = "ADVANCE_DEDUCTED",
    SALARY_PAID = "SALARY_PAID",
    PENALTY_LEVIED = "PENALTY_LEVIED",
    PENALTY_DEDUCTED = "PENALTY_DEDUCTED",
    ROUTE_ADVANCE_GIVEN = "ROUTE_ADVANCE_GIVEN",
    RESERVE_CREDIT = "RESERVE_CREDIT",
    RESERVE_JAMA = "RESERVE_JAMA",
    RESERVE_PAYOUT = "RESERVE_PAYOUT",
    DAILY_ALLOWANCE_TAKEN = "DAILY_ALLOWANCE_TAKEN",
    FINAL_SETTLEMENT = "FINAL_SETTLEMENT",
    INCENTIVE_GIVEN = "INCENTIVE_GIVEN"
}
export declare class DriverLedger extends Document {
    driver_id: Types.ObjectId;
    admin_id: Types.ObjectId;
    action_type: DriverLedgerAction;
    amount: number;
    advance_recovered_amount: number;
    penalty_recovered_amount: number;
    deducted_amount: number;
    net_paid_amount: number;
    description: string;
    advance_balance: number;
    penalty_balance: number;
    reserve_balance: number;
    transaction_date: number;
    trip_id: Types.ObjectId;
    route_advance_deducted: number;
    daily_allowance_remaining: number;
    daily_allowance_settled?: boolean;
    is_exit_settlement?: boolean;
    daily_allowance_settled_amount: number;
    unpaid_salary_settled_amount: number;
    leave_deducted_amount: number;
    leave_days_deducted: number;
    penalty_id: Types.ObjectId;
    date_of_incident: number;
    evidence_url: string;
    salary_month: string;
    is_demo: boolean;
    created_at: number;
    updated_at: number;
}
export declare const DriverLedgerSchema: import("mongoose").Schema<DriverLedger, import("mongoose").Model<DriverLedger, any, any, any, Document<unknown, any, DriverLedger, any> & DriverLedger & Required<{
    _id: unknown;
}> & {
    __v: number;
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, DriverLedger, Document<unknown, {}, import("mongoose").FlatRecord<DriverLedger>, {}> & import("mongoose").FlatRecord<DriverLedger> & Required<{
    _id: unknown;
}> & {
    __v: number;
}>;
