import { Repository } from 'typeorm';
import { ClsService } from 'nestjs-cls';
import { TenantAwareRepository } from '../../../common/repositories/tenant-aware.repository';
import { BookingCashCollectionEntity } from '../../../entities/booking-cash-collection.entity';
export type CashCollectionLineKind = 'TRANSPORT' | 'ACTIVITY' | 'SPECIAL';
export interface CashCollectionLine {
    kind: CashCollectionLineKind;
    item_id: string;
}
export declare class BookingCashCollectionRepository extends TenantAwareRepository<BookingCashCollectionEntity> {
    constructor(repo: Repository<BookingCashCollectionEntity>, cls: ClsService);
    findWithRelations(id: string): Promise<BookingCashCollectionEntity | null>;
    findLiveByLine(line: CashCollectionLine): Promise<BookingCashCollectionEntity | null>;
    findLiveUnscopedByBooking(bookingId: string): Promise<BookingCashCollectionEntity | null>;
    findLiveUnscoped(bookingId: string, collectionDate: string): Promise<BookingCashCollectionEntity | null>;
    findLiveByBookingIds(bookingIds: string[]): Promise<BookingCashCollectionEntity[]>;
}
