import { BaseEntity } from '../database/base.entity';
import { BookingEntity } from './booking.entity';
import { CurrencyEntity } from './currency.entity';
import { SupplierEntity } from './supplier.entity';
import { DriverEntity } from './driver.entity';
import { ActivityEntity } from './activity.entity';
import { UserEntity } from './user.entity';
import { BookingTransportItemEntity } from './booking-transport-item.entity';
import { BookingActivityItemEntity } from './booking-activity-item.entity';
import { BookingSpecialItemEntity } from './booking-special-item.entity';
import { BookingCashCollectionBatchEntity } from './booking-cash-collection-batch.entity';
export type CashCollectedByType = 'OWN' | 'SUPPLIER';
export type CashCollectionSourceKind = 'TRANSPORT' | 'ACTIVITY' | 'SPECIAL';
export type BookingCashCollectionStatus = 'PENDING' | 'COLLECTED' | 'CANCELLED';
export type MdCashCollectionStatus = 'PENDING' | 'COLLECTED';
export declare class BookingCashCollectionEntity extends BaseEntity {
    booking: BookingEntity;
    booking_id: string;
    collection_date: string;
    transport_item: BookingTransportItemEntity | null;
    transport_item_id: string | null;
    activity_item: BookingActivityItemEntity | null;
    activity_item_id: string | null;
    special_item: BookingSpecialItemEntity | null;
    special_item_id: string | null;
    currency: CurrencyEntity;
    currency_id: string;
    expense_collected_by_type: CashCollectedByType | null;
    expense_collector_name: string | null;
    expense_supplier: SupplierEntity | null;
    expense_supplier_id: string | null;
    expense_source_kind: CashCollectionSourceKind | null;
    expense_activity: ActivityEntity | null;
    expense_activity_id: string | null;
    expense_driver: DriverEntity | null;
    expense_driver_id: string | null;
    expense_expected_amount: number;
    expense_notes: string | null;
    expense_status: BookingCashCollectionStatus | null;
    expense_actual_amount: number | null;
    expense_collected_at: Date | null;
    expense_difference_reason: string | null;
    expense_collected_by_user: UserEntity | null;
    expense_collected_by: string | null;
    settlement_payment_id: string | null;
    cash_collected_by_type: CashCollectedByType | null;
    cash_collector_name: string | null;
    cash_supplier: SupplierEntity | null;
    cash_supplier_id: string | null;
    cash_source_kind: CashCollectionSourceKind | null;
    cash_activity: ActivityEntity | null;
    cash_activity_id: string | null;
    cash_driver: DriverEntity | null;
    cash_driver_id: string | null;
    cash_expected_amount: number;
    cash_notes: string | null;
    cash_status: MdCashCollectionStatus | null;
    cash_actual_amount: number | null;
    cash_collected_at: Date | null;
    cash_collected_by_user: UserEntity | null;
    cash_collected_by: string | null;
    driver_received_at: Date | null;
    driver_received_route_kind: CashCollectionSourceKind | null;
    driver_received_route_item_id: string | null;
    batches: BookingCashCollectionBatchEntity[];
}
