import { type IBackendCapabilities, type IExecutionFactory } from "@gooddata/sdk-backend-spi"; import { type IDimension, type IInsight, type IInsightDefinition, type ISettings } from "@gooddata/sdk-model"; import { type VisualizationEnvironment } from "@gooddata/sdk-ui"; import { type ColumnWidthItem, type IPivotTableConfig } from "@gooddata/sdk-ui-pivot"; import { type IBucketItem, type IBucketOfFun, type IDrillDownContext, type IExtendedReferencePoint, type IGdcConfig, type IReferencePoint, type IVisConstruct, type IVisProps, type IVisualizationProperties } from "../../../interfaces/Visualization.js"; import { AbstractPluggableVisualization } from "../AbstractPluggableVisualization.js"; export declare const getColumnAttributes: (buckets: IBucketOfFun[]) => IBucketItem[]; export declare const getRowAttributes: (buckets: IBucketOfFun[]) => IBucketItem[]; /** * PluggablePivotTable * * ## Buckets * * | Name | Id | Accepts | * |----------|------------|---------------------| * | Measures | measures | measures only | * | Rows | attributes | attributes or dates | * | Columns | columns | attributes or dates | * * ### Bucket axioms * * - |Measures| ≤ 20 * - |Rows| ≤ 20 * - |Columns| ≤ 20 * - |Measures| + |Rows| + |Columns| ≥ 1 * * ## Dimensions * * The PluggablePivotTable always creates two dimensional execution. * * - |Measures| ≥ 1 ⇒ [[...Rows], [...Columns, MeasureGroupIdentifier]] * - |Measures| = 0 ⇒ [[...Rows], [...Columns]] * * ## Sorts * * Unless the user specifies otherwise, the sorts used by default are: * * - |Rows| ≥ 1 ⇒ [attributeSort(Rows[0])] */ export declare class PluggablePivotTable extends AbstractPluggableVisualization { private environment; private renderFun; private unmountFun; private readonly settings; private backendCapabilities; constructor(props: IVisConstruct); unmount(): void; getExtendedReferencePoint(referencePoint: IReferencePoint, previousReferencePoint?: IReferencePoint): Promise; getInsightWithDrillDownApplied(sourceVisualization: IInsight, drillDownContext: IDrillDownContext, backendSupportsElementUris: boolean): IInsight; getExecution(options: IVisProps, insight: IInsightDefinition, executionFactory: IExecutionFactory): import("@gooddata/sdk-backend-spi").IPreparedExecution; protected initializeProperties(visualizationProperties: IVisualizationProperties): void; private createCorePivotTableProps; protected updateInstanceProperties(options: IVisProps, insight: IInsightDefinition, insightPropertiesMeta: any): void; protected renderVisualization(options: IVisProps, insight: IInsightDefinition, executionFactory: IExecutionFactory): void; protected renderConfigurationPanel(insight: IInsightDefinition, options: IVisProps): void; protected getDimensions(insight: IInsightDefinition, customVisualizationConfig?: any): IDimension[]; private adaptPropertiesToInsight; private sanitizeColumnWidths; private onColumnResized; private handlePushData; } /** * Given plug viz GDC config, current environment and platform settings, this creates pivot table config. * * @internal */ export declare function createPivotTableConfig(config: IGdcConfig, environment: VisualizationEnvironment, settings: ISettings, capabilities: IBackendCapabilities, columnWidths?: ColumnWidthItem[]): IPivotTableConfig; //# sourceMappingURL=PluggablePivotTable.d.ts.map