import { Repository } from 'typeorm';
import { TaxSlabEntity } from '../../entities/tax-slab.entity';
import { TaxTypeEntity } from '../../entities/tax-type.entity';
import { TaxComponentEntity } from '../../entities/tax-component.entity';
import { DestinationEntity } from '../../entities/destination.entity';
import { TransportServiceEntity } from '../../entities/transport-service.entity';
import { ActivityEntity } from '../../entities/activity.entity';
import { SupplierEntity } from '../../entities/supplier.entity';
import type { TaxSlabSnapshotInput } from './tax-bifurcation.helper';
export declare class TaxSlabResolverService {
    private readonly slabRepo;
    private readonly typeRepo;
    private readonly compRepo;
    private readonly destRepo;
    private readonly transportRepo;
    private readonly activityRepo;
    private readonly supplierRepo;
    constructor(slabRepo: Repository<TaxSlabEntity>, typeRepo: Repository<TaxTypeEntity>, compRepo: Repository<TaxComponentEntity>, destRepo: Repository<DestinationEntity>, transportRepo: Repository<TransportServiceEntity>, activityRepo: Repository<ActivityEntity>, supplierRepo: Repository<SupplierEntity>);
    loadSnapshot(slabId: string | null | undefined): Promise<TaxSlabSnapshotInput | null>;
    resolveForHotelOrSpecial(destinationId: string): Promise<TaxSlabSnapshotInput | null>;
    private rollupActiveDestinationSlabs;
    resolveForTransport(transportServiceId: string | null, destinationId: string): Promise<TaxSlabSnapshotInput | null>;
    resolveForActivity(activityId: string | null, destinationId: string): Promise<TaxSlabSnapshotInput | null>;
    resolveForSupplier(supplierId: string | null, destinationId: string): Promise<TaxSlabSnapshotInput | null>;
}
