import { HttpClient } from '@angular/common/http';
import { FileExplorerService } from '../components/file-explorer/services/file-explorer.service';
import { ModuleConfig } from '../configs/module-config';
import { ExportManyModel, ExportModel } from '../models/export-file-info';
import { ExportWithoutTemplateModel } from '../models/export-without-template';
import { ResponseResult } from '../models/response-result';
import { CommonService } from './common.service';
import { CrudService } from './crud.service';
import { ModuleConfigService } from './module-config.service';
import { NotifierService } from './notifier.service';
import { PrintService } from './print.service';
export declare class TemplateService {
    private _httpClient;
    private _printService;
    protected _fileService: FileExplorerService;
    protected _notifierService: NotifierService;
    protected _crudService: CrudService;
    protected _commonService: CommonService;
    readonly environment: any;
    readonly _moduleConfig: ModuleConfig;
    readonly serviceUri: string;
    constructor(_moduleConfigService: ModuleConfigService, _httpClient: HttpClient, _printService: PrintService, _fileService: FileExplorerService, _notifierService: NotifierService, _crudService: CrudService, _commonService: CommonService);
    laTexToBase64Image(laTex: string, font?: number): Promise<ResponseResult>;
    /**
     * Description: Xuất file sử dụng thư viện CX, xuất xong tự động mở popup để lưu file.
     */
    exportCxExcelByCode(model: ExportModel): Promise<void>;
    exportManyCxExcelByCode(model: ExportManyModel): Promise<void>;
    getFullFileName(fileName: any, extension?: string): string;
    /**
     * Description: Export sử dung ClosedXml.Report (Cx) với signalR, sử dụng cho file dữ liệu lớn.
     * Param: model chứa
     *  - code :  code của template cấu hình bên Quản trị > Biểu mẫu > Biểu mẫu excel.
     *  - data : object chứa dữ liệu đã chuyền thành dạng json.
     *  - fileName: tên file sau khi export.
     *  - topic: guid dùng để subscribe.
     */
    ExportCxExcelByCodeWithSignalR(model: any): Promise<ResponseResult>;
    /**
     * Description: Export sử dung ClosedXml.Report (Cx) với HighPerformanceService, sử dụng cho file dữ liệu lớn.
     * Param: model chứa
     *  - code :  code của template cấu hình bên Quản trị > Biểu mẫu > Biểu mẫu excel.
     *  - data : object chứa dữ liệu đã chuyền thành dạng json.
     *  - fileName: tên file sau khi export.
     *  - queueName: queue của topic.
     *  - uniqueKey: unique key cho task.
     */
    ExportCxExcelByCodeWithHPS(model: any): Promise<ResponseResult>;
    exportCxExcelByCodePromise(model: any): Promise<Object>;
    fillTemplateByCodeAndGetPdf(templateCode: string, data: any, onLoadingDataPdf?: any, onEndLoadingDataPdf?: any): Promise<void>;
    fillWordByTemplateCodeMultiData(templateCode: string, data: any[], onLoadingDataPdf?: any, onEndLoadingDataPdf?: any): Promise<void>;
    setFileInfo(model: ExportModel): void;
    setManyFileInfo(manyModel: ExportManyModel): void;
    /**
     * Export dữ liệu không dùng template.
     */
    exportCxExcel(model: ExportWithoutTemplateModel): Promise<void>;
    exportCxExcelPromise(model: ExportWithoutTemplateModel): Promise<Object>;
}
//# sourceMappingURL=template.service.d.ts.map