import { Repository } from 'typeorm';
import { ClsService } from 'nestjs-cls';
import { TenantAwareRepository } from '../../../common/repositories/tenant-aware.repository';
import { AgentCostEntity } from '../../../entities/agent-cost.entity';
export interface AssignedTripSource {
    id: string;
    name: string;
    agent_cost_id: string;
}
export declare class AgentCostRepository extends TenantAwareRepository<AgentCostEntity> {
    constructor(repo: Repository<AgentCostEntity>, cls: ClsService);
    findByName(name: string): Promise<AgentCostEntity | null>;
    findActiveById(id: string): Promise<AgentCostEntity | null>;
    countAssigned(agentCostId: string): Promise<number>;
    listAssigned(agentCostIds: string[]): Promise<AssignedTripSource[]>;
    listUnassigned(): Promise<Array<{
        id: string;
        name: string;
    }>>;
    assignUnassigned(agentCostId: string, tripSourceIds: string[]): Promise<void>;
    unassign(agentCostId: string, tripSourceId: string): Promise<boolean>;
}
