import { BaseEntity } from '../database/base.entity';
import { BookingEntity } from './booking.entity';
import { CurrencyEntity } from './currency.entity';
import { PaymentSettlementEntity } from './payment-settlement.entity';
export declare enum CustomerSettlementStatus {
    PENDING = "PENDING",
    PARTIAL = "PARTIAL",
    PAID = "PAID",
    REFUND_DUE = "REFUND_DUE"
}
export declare enum SupplierSettlementStatus {
    PENDING = "PENDING",
    PARTIAL = "PARTIAL",
    PAID = "PAID"
}
export declare enum OverallSettlementStatus {
    PENDING = "PENDING",
    IN_PROGRESS = "IN_PROGRESS",
    COMPLETED = "COMPLETED",
    HOLD = "HOLD",
    REFUND_DUE = "REFUND_DUE"
}
export declare class BookingSettlementMasterEntity extends BaseEntity {
    booking: BookingEntity;
    booking_id: string;
    currency: CurrencyEntity;
    currency_id: string;
    customer_expected: number;
    customer_received: number;
    customer_refund_due: number;
    customer_status: CustomerSettlementStatus;
    supplier_expected: number;
    supplier_paid: number;
    supplier_status: SupplierSettlementStatus;
    planned_margin: number;
    realised_margin: number;
    cost_expected: number;
    cost_margin: number;
    overall_status: OverallSettlementStatus;
    hold_reason: string | null;
    hold_set_by: string | null;
    hold_set_at: Date | null;
    last_activity_at: Date;
    children: PaymentSettlementEntity[];
}
