@progress/kendo-angular-grid
Version:
Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.
87 lines (86 loc) • 4.61 kB
TypeScript
/**-----------------------------------------------------------------------------------------
* 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 { ExcelExportData, ColumnBase, CellOptions } from '@progress/kendo-angular-excel-export';
import { GridComponent } from '../grid.component';
import { ExcelService } from './excel.service';
import { FetchDataCallback } from '../common/fetch-data-callback';
import { ContextService } from '../common/provider.service';
import * as i0 from "@angular/core";
/**
* Configures the settings for the export of Grid in Excel ([see example]({% slug excelexport_grid %})).
*/
export declare class ExcelComponent implements OnDestroy {
private ctx;
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 behavior is different from the filtering feature of the Grid.
*/
filterable: boolean;
/**
* The author of the workbook.
*/
creator?: string;
/**
* The date on which the workbook was created. Defaults to `new Date()`.
*/
date?: Date;
/**
* If set to `true`, the content is forwarded to [proxyURL](#toc-proxyurl) even if the browser supports the saving of files locally.
*/
forceProxy: boolean;
/**
* The URL of the server-side proxy which streams the file to the end user.
*
* Using a proxy is required if the browser is not capable of saving files locally.
*
* Optionally, set up a proxy to reduce memory usage. This avoids copying the file contents in 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 browser that support it.
*
* In the request body, the proxy receives a POST request with the specific parameters. [See example](slug:server_proxy#toc-implementations).
* The proxy returns the decoded file with the `"Content-Disposition"` header set to `attachment; filename="<fileName.xslx>"`.
*
* For details on the server-side proxy usage and implementation, see the [File Saver]({% slug overview_filesaver %}) documentation.
*/
proxyURL: string;
/**
* The function that is used to get the exported data options. By default, uses the current data and group of the Grid.
* To export data that is different from the current Grid data, provide a custom function.
*/
fetchData: FetchDataCallback;
/**
* If the data is grouped, the options of the cells that are inserted before the data,
* group, and footer cells to indicate the group hierarchy.
*/
paddingCellOptions: CellOptions;
/**
* If the data is grouped, the options of the cells that are inserted before the
* header cells to align the headers and the column values.
*/
headerPaddingCellOptions: CellOptions;
/**
* Specifies if the groups in the Excel file are collapsible.
*/
collapsible: boolean;
/**
* @hidden
*/
columns: QueryList<ColumnBase>;
private saveSubscription;
private dataSubscription;
constructor(excelService: ExcelService, ctx: ContextService, zone: NgZone);
ngOnDestroy(): void;
protected save(component: GridComponent): void;
protected exportData(component: GridComponent, result: ExcelExportData): void;
protected saveFile(options: any): void;
static ɵfac: i0.ɵɵFactoryDeclaration<ExcelComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<ExcelComponent, "kendo-grid-excel", never, { "fileName": { "alias": "fileName"; "required": false; }; "filterable": { "alias": "filterable"; "required": false; }; "creator": { "alias": "creator"; "required": false; }; "date": { "alias": "date"; "required": false; }; "forceProxy": { "alias": "forceProxy"; "required": false; }; "proxyURL": { "alias": "proxyURL"; "required": false; }; "fetchData": { "alias": "fetchData"; "required": false; }; "paddingCellOptions": { "alias": "paddingCellOptions"; "required": false; }; "headerPaddingCellOptions": { "alias": "headerPaddingCellOptions"; "required": false; }; "collapsible": { "alias": "collapsible"; "required": false; }; }, {}, ["columns"], never, true, never>;
}