/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { OnDestroy, QueryList, NgZone } from '@angular/core';
import { ColumnBase, CellOptions } from '@progress/kendo-angular-excel-export';
import { TreeListComponent } from '../treelist.component';
import { ExcelService } from './excel.service';
import { LocalizationService } from '@progress/kendo-angular-l10n';
import { ExcelExportData } from './excel-export-data.interface';
import * as i0 from "@angular/core";
/**
* Configures the settings for exporting the TreeList to Excel. [See example]({% slug excelexport_treelist %}).
*
* @example
* ```html
*
*
*
* ```
*/
export declare class ExcelComponent implements OnDestroy {
private excelService;
private localization;
private zone;
/**
* Specifies the file name of the exported Excel file.
* @default "Export.xlsx"
*/
fileName: string;
/**
* Enables or disables column filtering in the Excel file. This is different from the TreeList filtering feature.
*/
filterable: boolean;
/**
* Sets the author of the workbook.
*/
creator?: string;
/**
* Sets the date the workbook was created. Defaults to `new Date()`.
*/
date?: Date;
/**
* If set to `true`, forwards the content to `proxyURL` even if the browser supports saving files locally.
*/
forceProxy: boolean;
/**
* The URL of the server-side proxy that streams the file to the user.
* Use a proxy if the browser cannot save files locally.
*
* Optionally, set up a proxy to reduce memory usage. This avoids copying the file contents into memory,
* but transmits it over the network instead. For this use case, set [forceProxy](#toc-forceproxy) to `true`
* to skip client-side saving even in browsers that support it.
*
* The proxy receives a POST request with specific parameters in the request body. [See example](slug:server_proxy#toc-implementations).
* The proxy returns the decoded file with the `"Content-Disposition"` header set to `attachment; filename=""`.
*
* For details on server-side proxy usage and implementation, see the [File Saver]({% slug overview_filesaver %}) documentation.
*/
proxyURL: string;
/**
* The function used to get the exported data options. By default, uses the current TreeList data.
* To export data different from the current TreeList data, provide a custom function.
*/
fetchData: (component: TreeListComponent) => ExcelExportData;
/**
* Specifies if item levels in the Excel file are collapsible. Applies only if the TreeList has footers.
*/
collapsible: boolean;
/**
* Specifies if export should include all pages.
* @default true
*/
allPages: boolean;
/**
* Specifies if the export should expand all items or use the current TreeList state.
* @default true
*/
expandAll: boolean;
/**
* The options for the cells inserted before the data to indicate the hierarchy.
*/
paddingCellOptions: CellOptions;
/**
* @hidden
*/
columns: QueryList;
private saveSubscription;
private dataSubscription;
constructor(excelService: ExcelService, localization: LocalizationService, zone: NgZone);
ngOnDestroy(): void;
protected save(component: TreeListComponent): void;
protected exportData(component: any, result?: ExcelExportData): void;
protected saveFile(options: any): void;
protected componentViewOptions(component: any): any;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}