import { ModelsService } from 'src/models/models.service';
import { CommonService } from 'src/common/common.service';
import { TranslationService } from 'src/common/services/translation.service';
import { AddLeadNoteDto, AssigneesDto, CreateLeadDto, LeadBoardDto, LeadListDto, MoveLeadStageDto, UpdateLeadDto } from './dto/lead.dto';
export declare class LeadService {
    private readonly models;
    private readonly common;
    private readonly translationService;
    constructor(models: ModelsService, common: CommonService, translationService: TranslationService);
    private t;
    private fail;
    private selfScoped;
    private scope;
    private populated;
    private entry;
    private push;
    private toDto;
    private findLead;
    private buildDetail;
    private resolveAssignee;
    private activeCategory;
    private listFilter;
    create(dto: CreateLeadDto, actor: any, lang: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    list(query: LeadListDto, actor: any, lang: string): Promise<{
        status: string;
        message: string;
        data: any[];
        pagination: {
            total: number;
            page: number;
            limit: number;
            totalPages: number;
            hasNextPage: boolean;
            hasPrevPage: boolean;
        };
    }>;
    board(query: LeadBoardDto, actor: any, lang: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    assignees(query: AssigneesDto, actor: any, lang: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    getById(id: string, actor: any, lang: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    update(id: string, dto: UpdateLeadDto, actor: any, lang: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    moveStage(id: string, dto: MoveLeadStageDto, actor: any, lang: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    addNote(id: string, dto: AddLeadNoteDto, actor: any, lang: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
}
