@progress/kendo-angular-pivotgrid
Version:
PivotGrid package for Angular
75 lines (74 loc) • 3.77 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 { EventEmitter, NgZone, OnDestroy, OnInit } from '@angular/core';
import { PivotGridDataService } from './pivotgrid-data.service';
import { DataState, PivotGridAxis } from '@progress/kendo-pivotgrid-common';
import { PivotGridState } from '../models/configurator-settings';
import { ExpandChangeEvent } from '../models/expanded-change-event';
import { ConfigurationChangeEvent } from '../models/configuration-change-event';
import { PivotDataRowItem } from '../models/data-row-item';
import { FilterDescriptor, SortDescriptor } from '@progress/kendo-data-query';
import * as i0 from "@angular/core";
/**
* @hidden
* A directive which binds the PivotGrid to an array of objects.
*/
export declare abstract class PivotBaseBindingDirective implements OnInit, OnDestroy {
protected dataService: PivotGridDataService;
private zone;
protected abstract loadData(state: PivotGridState): void;
protected abstract loadFields(): void;
abstract fetchChildren(state: any, fields: any): Promise<any>;
abstract type: 'local' | 'olap';
/**
* Defines the column axes configuration of the PivotGrid.
*/
columnAxes: PivotGridAxis[];
/**
* Defines the row axes configuration of the PivotGrid.
*/
rowAxes: PivotGridAxis[];
/**
* Defines the measure axes configuration of the PivotGrid.
*/
measureAxes: PivotGridAxis[];
/**
* Sets the initial sorted state of the PivotGrid.
*/
sort: SortDescriptor[];
/**
* Sets the initial filtered state of the PivotGrid.
*/
filter: FilterDescriptor[];
/**
* Fires each time a row or column header gets expanded or collapsed by the user.
*
* The event is preventable. If you prevent the event, the PivotGrid will not rerender with the new state that results from the user interaction.
*/
expandChange: EventEmitter<ExpandChangeEvent>;
/**
* Fires when the Configurator **Apply** button is pressed.
*
* The event is preventable. If you prevent the event, the PivotGrid will not rerender with the new state that results from the configuration changes.
*/
configurationChange: EventEmitter<ConfigurationChangeEvent>;
/**
* Fires each time new data is loaded and transformed to show aggregated values.
*
* The event fires upon initialization and on user interaction that changes the state of the PivotGrid.
*/
dataLoaded: EventEmitter<PivotDataRowItem[]>;
protected dataState: DataState;
protected configuratorFields: any;
private subs;
constructor(dataService: PivotGridDataService, zone: NgZone);
ngOnInit(): void;
ngOnDestroy(): void;
protected updateDataServiceFields(): void;
protected updateConfiguratorFields(): void;
private updateHeaders;
static ɵfac: i0.ɵɵFactoryDeclaration<PivotBaseBindingDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<PivotBaseBindingDirective, "kendo-base-binding-directive", never, { "columnAxes": { "alias": "columnAxes"; "required": false; }; "rowAxes": { "alias": "rowAxes"; "required": false; }; "measureAxes": { "alias": "measureAxes"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; }, { "expandChange": "expandChange"; "configurationChange": "configurationChange"; "dataLoaded": "dataLoaded"; }, never, never, false, never>;
}