import { BaseContext } from '../../../types'; import { AdaptableColumn } from '../../types'; import { SelectedCellInfo } from '../Selection/SelectedCellInfo'; /** * Defines the Summary operations which AdapTable provides for Selected Numeric Cells */ export interface CellSummmaryInfo { Sum: number | undefined; Average: number | undefined; Median: number | undefined; Mode: number | undefined; Distinct: number | undefined; Max: number | undefined; Min: number | undefined; Count: number | undefined; Only: string | undefined; Std_Deviation: number | undefined; [key: string]: any; } /** * Defines a Custom Cell Summary operation provided by a user */ export interface CustomCellSummaryOperation { /** * Name of the Operation - will be displayed in the Cell Summary components */ operationName: string; /** * Function to run when a summary result is required */ operationFunction: (operationContext: CustomCellSummaryOperationContext) => any; } /** * Context provided to a custom Cell Summary Operation function */ export interface CustomCellSummaryOperationContext extends BaseContext { /** * Currently selected cells */ selectedCellInfo: SelectedCellInfo; /** * Currently selected Column */ selectedColumn: AdaptableColumn; }