import { ErrorService } from '../../error/error.service';
import { Repository } from 'typeorm';
import { ContactEntity } from './entities/contact.entity';
import { UpdateContactDto } from './dto/update-contact.dto';
import { ReplyContactDto } from './dto/reply-contact.dto';
import { SmsService } from '../../sms/sms.service';
import { MailService } from '../../mail/mail.service';
export declare class ContactService {
    private contactRepository;
    private error;
    private sms;
    private mail;
    constructor(contactRepository: Repository<ContactEntity>, error: ErrorService, sms: SmsService, mail: MailService);
    getAll(page: number, limit: number, filters: any, isAnswred: any, sorts?: any): Promise<{
        items: ContactEntity[];
        pagination: {
            itemsPerPage: number;
            totalItems: number;
            currentPage: number;
            totalPages: number;
        };
    }>;
    getById(id: number): Promise<ContactEntity>;
    getRelatedById(id: number): Promise<{
        items: ContactEntity[];
    }>;
    statistic(): Promise<{
        read: number;
        unRead: number;
        noAnswer: number;
        total: number;
    }>;
    updateById(id: number, dto: UpdateContactDto): Promise<import("typeorm").UpdateResult>;
    replyById(id: number, dto: ReplyContactDto): Promise<boolean>;
    private _update;
}
