import * as exceljs from 'exceljs';
import { ExcelTemplateManager } from '../common/core/Template.js';
import { SheetSection } from '../common/types/common-type.js';
import { CellImportOptions } from '../common/types/import-template.type.js';
import { TypeParser } from './parse-type.js';

type ConvertorRows2TableDataOpts = {
    chunkSize?: number;
    typeParser?: TypeParser;
    templateManager: ExcelTemplateManager<CellImportOptions>;
    onTrigger: (section: SheetSection, data: any | any[]) => Promise<void>;
    onErrors: (err: any[]) => Promise<void>;
};
declare class ConvertorRows2TableData {
    private chunkSize;
    private typeParser;
    private templateManager;
    private tableCols;
    private container;
    private section;
    private addresses;
    onTrigger: (section: SheetSection, data: any | any[]) => Promise<void>;
    onErrors: (err: any) => Promise<void>;
    constructor(opts: ConvertorRows2TableDataOpts);
    push(row: exceljs.Row | null): Promise<void>;
    private pop;
    private getSection;
    private isTrigger;
    private addContainer;
    private formatValue;
    private getKeyField;
    private complete;
}

export { ConvertorRows2TableData, type ConvertorRows2TableDataOpts };
