UNPKG

ag-grid-community

Version:

Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue

40 lines (39 loc) 1.95 kB
import type { ColumnModel } from '../columns/columnModel'; import type { AgColumn } from '../entities/agColumn'; import type { RowNode } from '../entities/rowNode'; import type { GridOptionsService } from '../gridOptionsService'; import type { ProcessCellForExportParams, ProcessGroupHeaderForExportParams, ProcessHeaderForExportParams, ProcessRowGroupForExportParams } from '../interfaces/exportParams'; import type { IColsService } from '../interfaces/iColsService'; import type { ValueService } from '../valueService/valueService'; import type { GridSerializingParams, GridSerializingSession, RowAccumulator, RowSpanningAccumulator } from './iGridSerializer'; export declare abstract class BaseGridSerializingSession<T> implements GridSerializingSession<T> { colModel: ColumnModel; private readonly colNames; rowGroupColsSvc?: IColsService; valueSvc: ValueService; gos: GridOptionsService; processCellCallback?: (params: ProcessCellForExportParams) => string; processHeaderCallback?: (params: ProcessHeaderForExportParams) => string; processGroupHeaderCallback?: (params: ProcessGroupHeaderForExportParams) => string; processRowGroupCallback?: (params: ProcessRowGroupForExportParams) => string; constructor(config: GridSerializingParams); abstract addCustomContent(customContent: T): void; abstract onNewHeaderGroupingRow(): RowSpanningAccumulator; abstract onNewHeaderRow(): RowAccumulator; abstract onNewBodyRow(node?: RowNode): RowAccumulator; abstract parse(): string; prepare(_columnsToExport: AgColumn[]): void; extractHeaderValue(column: AgColumn): string; extractRowCellValue(params: { column: AgColumn; node: RowNode; currentColumnIndex: number; accumulatedRowIndex: number; type: string; useRawFormula: boolean; }): { value: any; valueFormatted?: string | null; }; private getHeaderName; }