import { Repository } from 'typeorm';
import type { Readable } from 'stream';
import { Company } from '../../companies/entities/company.entity';
import { CompanyBranch } from '../../companies/entities/company-branch.entity';
import { AuditRequest } from '../../audit-requests/entities/audit-request.entity';
import { NewCertificate } from '../../certificates/entities/new-certificate.entity';
import { AuditScheduleRow } from '../../audit-schedules/entities/audit-schedule-row.entity';
import { NcEntity } from '../../nc/entities/nc.entity';
export declare class ClientPortalService {
    private companyRepository;
    private branchRepository;
    private auditRequestRepository;
    private newCertificateRepository;
    private auditScheduleRowRepository;
    private ncRepository;
    private readonly logger;
    constructor(companyRepository: Repository<Company>, branchRepository: Repository<CompanyBranch>, auditRequestRepository: Repository<AuditRequest>, newCertificateRepository: Repository<NewCertificate>, auditScheduleRowRepository: Repository<AuditScheduleRow>, ncRepository: Repository<NcEntity>);
    getCompanyInfo(companyId: number): Promise<any>;
    getBranches(companyId: number): Promise<any[]>;
    getAudits(companyId: number, options: {
        status?: string;
        limit?: number;
        page?: number;
        sort_by?: string;
        sort_order?: 'ASC' | 'DESC';
    }): Promise<{
        data: any[];
        total: number;
        page: number;
        limit: number;
    }>;
    getAuditProgress(auditId: number, companyId: number): Promise<any>;
    getAuditReport(auditId: number, companyId: number): Promise<any>;
    getCertificates(companyId: number): Promise<any[]>;
    getNcs(companyId: number): Promise<any[]>;
    openAuditReportFile(auditId: number, companyId: number, stage: 1 | 2): Promise<{
        stream: Readable;
        size: number;
        mime: string;
        filename: string;
    }>;
    private getAuditRequestNumber;
}
