import { CommonService } from 'src/common/common.service';
import { LeadService } from './lead.service';
import { QuoteComparisonService } from './quote-comparison.service';
import { CreateQuoteComparisonDto, QuoteComparisonListDto } from './dto/quote-comparison.dto';
import { AddLeadNoteDto, CreateLeadDto, LeadBoardDto, LeadListDto, MoveLeadStageDto, UpdateLeadDto } from './dto/lead.dto';
export declare class LeadController {
    private readonly leadService;
    private readonly quoteComparisonService;
    private readonly common;
    constructor(leadService: LeadService, quoteComparisonService: QuoteComparisonService, common: CommonService);
    private lang;
    create(req: any, dto: CreateLeadDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    list(req: any, query: LeadListDto): Promise<{
        status: string;
        message: string;
        data: any[];
        pagination: {
            total: number;
            page: number;
            limit: number;
            totalPages: number;
            hasNextPage: boolean;
            hasPrevPage: boolean;
        };
    }>;
    board(req: any, query: LeadBoardDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    getById(req: any, id: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    update(req: any, id: string, dto: UpdateLeadDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    moveStage(req: any, id: string, dto: MoveLeadStageDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    addNote(req: any, id: string, dto: AddLeadNoteDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    extractQuote(req: any, file: any): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    createQuoteComparison(req: any, id: string, dto: CreateQuoteComparisonDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    listQuoteComparisons(req: any, id: string, query: QuoteComparisonListDto): Promise<{
        status: string;
        message: string;
        data: any[];
        pagination: {
            total: number;
            page: number;
            limit: number;
            totalPages: number;
            hasNextPage: boolean;
            hasPrevPage: boolean;
        };
    }>;
    getQuoteComparison(req: any, id: string, comparisonId: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    deleteQuoteComparison(req: any, id: string, comparisonId: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    createForAgent(req: any, dto: CreateLeadDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    listForAgent(req: any, query: LeadListDto): Promise<{
        status: string;
        message: string;
        data: any[];
        pagination: {
            total: number;
            page: number;
            limit: number;
            totalPages: number;
            hasNextPage: boolean;
            hasPrevPage: boolean;
        };
    }>;
    getByIdForAgent(req: any, id: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    moveStageForAgent(req: any, id: string, dto: MoveLeadStageDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    addNoteForAgent(req: any, id: string, dto: AddLeadNoteDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    extractQuoteForAgent(req: any, file: any): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    createQuoteComparisonForAgent(req: any, id: string, dto: CreateQuoteComparisonDto): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    listQuoteComparisonsForAgent(req: any, id: string, query: QuoteComparisonListDto): Promise<{
        status: string;
        message: string;
        data: any[];
        pagination: {
            total: number;
            page: number;
            limit: number;
            totalPages: number;
            hasNextPage: boolean;
            hasPrevPage: boolean;
        };
    }>;
    getQuoteComparisonForAgent(req: any, id: string, comparisonId: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
    deleteQuoteComparisonForAgent(req: any, id: string, comparisonId: string): Promise<{
        status: string;
        message: string;
        data: any;
    }>;
}
