import { Repository } from 'typeorm';
import { NewCertificate } from './entities/new-certificate.entity';
import { ExcelService } from '../excel/excel.service';
export interface BulkScanMatched {
    filename: string;
    certificate_no: string;
    certificate_id: number;
    scan_pdf_url: string;
}
export interface BulkScanReview {
    filename: string;
    certificate_no: string;
    reason: string;
}
export interface BulkScanUnmatched {
    filename: string;
    reason: string;
}
export interface BulkScanResult {
    matched: BulkScanMatched[];
    review: BulkScanReview[];
    unmatched: BulkScanUnmatched[];
    summary: {
        total: number;
        matched: number;
        review: number;
        unmatched: number;
    };
}
export declare class BulkScanService {
    private readonly certRepo;
    private readonly excelService;
    private readonly logger;
    private readonly UPLOAD_DIR;
    private readonly BASE_URL;
    private static readonly CERT_NUMBER_PATTERNS;
    constructor(certRepo: Repository<NewCertificate>, excelService: ExcelService);
    private extractCertNo;
    processBulkUpload(files: Express.Multer.File[], userId?: number): Promise<BulkScanResult>;
    private processSingleFile;
    private findSimilarCerts;
}
