/// <reference types="node" />

import * as ExcelJS from 'exceljs';

/**
 * @public
 */
declare type ExcelTemplateValue = ExcelJS.CellValue | Record<string, ExcelJS.CellValue>[];

/**
 * @public
 */
declare class JsExcelTemplate extends JsExcelTemplateBase {
    static fromFile(filepath: string): Promise<JsExcelTemplate>;
    toBuffer(): Promise<Buffer>;
    saveAs(filepath: string): Promise<void>;
}
export default JsExcelTemplate;

declare class JsExcelTemplateBase {
    protected workbook: ExcelJS.Workbook;
    set(name: string, value: ExcelTemplateValue, options?: Partial<{
        duplicateCellIfArray: boolean;
    }>): void;
    toArrayBuffer(): Promise<ExcelJS.Buffer>;
    private getFieldNames;
    private setCell;
}

export { }