import { Repository } from 'typeorm';
import { TransportPricingRepository } from './repositories/transport-pricing.repository';
import { CreateTransportPricingDto, UpdateTransportPricingDto } from './dto';
import { TransportPricingEntity } from '../../entities/transport-pricing.entity';
import { CurrencyEntity } from '../../entities/currency.entity';
import { TaxSlabResolverService } from '../../common/services/tax-slab-resolver.service';
import { PermissionContextService } from '../../common/auth/permission-context.service';
export declare class TransportPricingService {
    private readonly repo;
    private readonly perms;
    private readonly resolver;
    private readonly currencyRepo;
    constructor(repo: TransportPricingRepository, perms: PermissionContextService, resolver: TaxSlabResolverService, currencyRepo: Repository<CurrencyEntity>);
    private bifurcatePricesForSave;
    private stripFloorFromPayload;
    findByDestination(destinationId: string, currencyId?: string): Promise<TransportPricingEntity[]>;
    findPaginated(query: {
        destinationId?: string;
        currencyId?: string;
        search?: string;
        page?: number;
        limit?: number;
    }): Promise<{
        items: TransportPricingEntity[];
        meta: {
            total: number;
            page: number;
            limit: number;
            totalPages: number;
        };
    }>;
    getVehicleTypes(destinationId: string): Promise<string[]>;
    findById(id: string): Promise<TransportPricingEntity>;
    private resolveIdentity;
    private static readonly PRICE_FIELDS;
    private pickPrices;
    create(dto: CreateTransportPricingDto): Promise<{
        id: string;
        message: string;
    }>;
    bulkSave(items: CreateTransportPricingDto[]): Promise<{
        results: {
            id: string;
            action: "created" | "updated" | "reactivated";
        }[];
        message: string;
    }>;
    update(id: string, dto: UpdateTransportPricingDto): Promise<{
        id: string;
        message: string;
    }>;
    generateSample(destinationId?: string): Promise<Buffer>;
    importFromExcel(buffer: Buffer): Promise<import("../../common/services/pricing-import.helper").PricingImportResult>;
    remove(id: string): Promise<{
        message: string;
    }>;
}
