import { ISupportsDataChangeNotifications } from "./ISupportsDataChangeNotifications";
import { IDataSourceSupportsCount } from "./IDataSourceSupportsCount";
import { IDataSourceSchema } from "./IDataSourceSchema";
import { IDataSourceExecutionContext } from "./IDataSourceExecutionContext";
import { IDataSourceDataProviderUpdateNotifier } from "./IDataSourceDataProviderUpdateNotifier";
import { SortDescriptionCollection } from "./SortDescriptionCollection";
import { DataSourceSummaryScope } from "./DataSourceSummaryScope";
import { Base, Type, IList$1, PropertyChangedEventArgs } from "./type";
import { DataSourceDataProviderSchemaChangedEventArgs } from "./DataSourceDataProviderSchemaChangedEventArgs";
import { DataSourceSchemaPropertyType } from "./DataSourceSchemaPropertyType";
import { IFilterExpressionEnvironment } from "./IFilterExpressionEnvironment";
import { SyncableObservableCollection$1 } from "./SyncableObservableCollection$1";
import { NotifyCollectionChangedEventArgs } from "./NotifyCollectionChangedEventArgs";
import { IDataSourceSupportsIndexedAccess } from "./IDataSourceSupportsIndexedAccess";
import { IDataSourceUpdateNotifier } from "./IDataSourceUpdateNotifier";
import { DataSourceSectionHeaderDisplayMode } from "./DataSourceSectionHeaderDisplayMode";
import { DataSourceSchemaChangedEventArgs } from "./DataSourceSchemaChangedEventArgs";
import { DataSourceRowExpansionChangedEventArgs } from "./DataSourceRowExpansionChangedEventArgs";
import { DataSourceRootSummariesChangedEventArgs } from "./DataSourceRootSummariesChangedEventArgs";
import { DataSourcePropertiesRequestedChangedEventArgs } from "./DataSourcePropertiesRequestedChangedEventArgs";
import { DataSourceRowType } from "./DataSourceRowType";
import { ISummaryResult } from "./ISummaryResult";
import { DataSourceSummaryOperand } from "./DataSourceSummaryOperand";
import { IEditableDataSource } from "./IEditableDataSource";
import { TransactionService } from "./TransactionService";
import { IExternalDataSource } from "./IExternalDataSource";
import { TransactionEvent } from "./TransactionEvent";
import { DataSourceSpecialRow } from "./DataSourceSpecialRow";
import { DataSourceAggregatedResult } from "./DataSourceAggregatedResult";
import { DataSourceDataCommittedEventArgs } from "./DataSourceDataCommittedEventArgs";
/**
 * @hidden
 */
export interface IDataSourceDataProvider extends ISupportsDataChangeNotifications, IDataSourceSupportsCount {
    getItemValue(a: any, b: string): any;
    setItemValue(a: any, b: string, c: any): void;
    removeItem(a: any): void;
    addItem(a: any): void;
    schemaChanged: (sender: any, args: DataSourceDataProviderSchemaChangedEventArgs) => void;
    readonly actualSchema: IDataSourceSchema;
    executionContext: IDataSourceExecutionContext;
    updateNotifier: IDataSourceDataProviderUpdateNotifier;
    queueAutoRefresh(): void;
    deferAutoRefresh: boolean;
    flushAutoRefresh(): void;
    refresh(): void;
    readonly isSortingSupported: boolean;
    readonly isGroupingSupported: boolean;
    readonly sortDescriptions: SortDescriptionCollection;
    readonly groupDescriptions: SortDescriptionCollection;
    readonly summaryDescriptions: SummaryDescriptionCollection;
    summaryScope: DataSourceSummaryScope;
    readonly isFilteringSupported: boolean;
    readonly filterExpressions: FilterExpressionCollection;
    propertiesRequested: string[];
    schemaIncludedProperties: string[];
    readonly notifyUsingSourceIndexes: boolean;
    indexOfItem(a: any): number;
    indexOfKey(a: any[]): number;
    readonly isItemIndexLookupSupported: boolean;
    readonly isKeyIndexLookupSupported: boolean;
    resolveSchemaPropertyType(a: string): DataSourceSchemaPropertyType;
}
/**
 * @hidden
 */
export declare let IDataSourceDataProvider_$type: Type;
/**
 * @hidden
 */
export interface IFilterExpression {
    evaluate(a: any, b: IDataSourceDataProvider, c: IDataSourceSchema): any;
    evaluateWithEnvironment(a: any, b: IDataSourceDataProvider, c: IDataSourceSchema, d: IFilterExpressionEnvironment): any;
    readonly isPropertyReference: boolean;
    readonly isOperation: boolean;
    readonly isFunction: boolean;
    readonly isLiteral: boolean;
    readonly isNull: boolean;
    readonly isWrapper: boolean;
    match(a: any, b: IDataSourceDataProvider, c: IDataSourceSchema): boolean;
    matchWithEnvironment(a: any, b: IDataSourceDataProvider, c: IDataSourceSchema, d: IFilterExpressionEnvironment): boolean;
    readonly precedence: number;
    readonly isAutoGenerated: boolean;
    markAutoGenerated(): void;
}
/**
 * @hidden
 */
export declare let IFilterExpression_$type: Type;
/**
 * @hidden
 */
export declare class FilterExpressionCollection extends Base {
    static $t: Type;
    private a;
    get syncTarget(): FilterExpressionCollection;
    set syncTarget(a: FilterExpressionCollection);
    private f;
    get shouldDetachOnTargetChange(): boolean;
    set shouldDetachOnTargetChange(a: boolean);
    constructor();
    add(a: IFilterExpression): boolean;
    insert(a: number, b: IFilterExpression): void;
    clear(): void;
    get(a: number): IFilterExpression;
    indexOf(a: IFilterExpression): number;
    remove(a: IFilterExpression): boolean;
    removeAt(a: number): IFilterExpression;
    set(a: number, b: IFilterExpression): IFilterExpression;
    size(): number;
    get onChanged(): () => void;
    set onChanged(a: () => void);
    n(a: (sender: any, e: NotifyCollectionChangedEventArgs) => void): void;
    r(a: (sender: any, e: NotifyCollectionChangedEventArgs) => void): void;
    o(a: FilterExpressionCollection): void;
    s(a: FilterExpressionCollection): void;
    get k(): IList$1<IFilterExpression>;
}
/**
 * @hidden
 */
export interface IDataSource extends ISupportsDataChangeNotifications, IDataSourceSupportsIndexedAccess {
    schemaChanged: (sender: any, args: DataSourceSchemaChangedEventArgs) => void;
    rowExpansionChanged: (sender: any, args: DataSourceRowExpansionChangedEventArgs) => void;
    rootSummariesChanged: (sender: any, args: DataSourceRootSummariesChangedEventArgs) => void;
    propertiesRequestedChanged: (sender: any, args: DataSourcePropertiesRequestedChangedEventArgs) => void;
    readonly resolvedDataProvider: IDataSourceDataProvider;
    isPlaceholderItem(a: number): boolean;
    getItemPropertyAtIndex(a: number, b: string): any;
    getItemProperty(a: any, b: string): any;
    updateNotifier: IDataSourceUpdateNotifier;
    readonly executionContext: IDataSourceExecutionContext;
    readonly actualSchema: IDataSourceSchema;
    firstVisibleIndexRequested: number;
    lastVisibleIndexRequested: number;
    readonly isVirtual: boolean;
    readonly isSortingSupported: boolean;
    readonly sortDescriptions: SortDescriptionCollection;
    readonly groupDescriptions: SortDescriptionCollection;
    readonly summaryDescriptions: SummaryDescriptionCollection;
    summaryScope: DataSourceSummaryScope;
    readonly isFilteringSupported: boolean;
    readonly notifyUsingSourceIndexes: boolean;
    readonly filterExpressions: FilterExpressionCollection;
    queueAutoRefresh(): void;
    deferAutoRefresh: boolean;
    flushAutoRefresh(): void;
    refresh(): void;
    primaryKey: string[];
    readonly actualPrimaryKey: string[];
    propertiesRequested: string[];
    schemaIncludedProperties: string[];
    indexOfItem(a: any): number;
    indexOfKey(a: any[]): number;
    readonly isItemIndexLookupSupported: boolean;
    readonly isKeyIndexLookupSupported: boolean;
    readonly isGroupingSupported: boolean;
    sectionHeaderDisplayMode: DataSourceSectionHeaderDisplayMode;
    isSectionCollapsable: boolean;
    isSectionExpandedDefault: boolean;
    includeSummaryRowsInSection: boolean;
    isSectionSummaryRowsAtBottom: boolean;
    isSectionHeaderNormalRow: boolean;
    isSectionContentVisible: boolean;
    getRowType(a: number): DataSourceRowType;
    getMainValuePath(a: DataSourceRowType): string;
    getStickyRows(): number[];
    getStickyRowsInRange(a: number, b: number): number[];
    getStickyRowPriority(a: number): number;
    isExclusivelySticky(a: number): boolean;
    isRowSpanning(a: DataSourceRowType): boolean;
    pinRow(a: any[]): void;
    unpinRow(a: any[]): void;
    clearPinnedRows(): void;
    isRowPinned(a: number): boolean;
    shouldEmitSectionHeaders: boolean;
    shouldEmitSectionFooters: boolean;
    shouldEmitShiftedRows: boolean;
    shouldEmitSummaryRows: boolean;
    resolveSchemaPropertyType(a: string): DataSourceSchemaPropertyType;
    setIsRowExpandedAtIndex(a: number, b: boolean): void;
    getIsRowExpandedAtIndex(a: number): boolean;
    getRowLevel(a: number): number;
    getRootSummaryRowCount(): number;
    getRootSummaryResults(): ISummaryResult[];
    getSectionSummaryResults(a: number): ISummaryResult[][];
    clone(): IDataSource;
}
/**
 * @hidden
 */
export declare let IDataSource_$type: Type;
/**
 * @hidden
 */
export declare abstract class SummaryCalculator extends Base {
    static $t: Type;
    private _propertyName;
    get propertyName(): string;
    set propertyName(a: string);
    private _propertyType;
    get propertyType(): DataSourceSchemaPropertyType;
    set propertyType(a: DataSourceSchemaPropertyType);
    private _dataSource;
    get dataSource(): IDataSource;
    set dataSource(a: IDataSource);
    abstract get displayName(): string;
    private _isSummaryDirty;
    get isSummaryDirty(): boolean;
    set isSummaryDirty(a: boolean);
    private b;
    protected get_operand(): DataSourceSummaryOperand;
    get operand(): DataSourceSummaryOperand;
    private _shouldDisplay;
    get shouldDisplay(): boolean;
    set shouldDisplay(a: boolean);
    beginCalculation(a: IDataSource, b: string): void;
    getResults(): ISummaryResult;
    endCalculation(): ISummaryResult;
    aggregate(a: any): void;
    itemAdded(a: any, b: ISummaryResult, c: number): ISummaryResult;
    itemRemoved(a: any, b: ISummaryResult, c: number): ISummaryResult;
    protected k(a: any): number;
    protected l(a: any): number;
    protected m(a: number): any;
}
/**
 * @hidden
 */
export declare class SumSummaryCalculator extends SummaryCalculator {
    static $t: Type;
    private r;
    protected get_displayName(): string;
    get displayName(): string;
    protected get_operand(): DataSourceSummaryOperand;
    beginCalculation(a: IDataSource, b: string): void;
    endCalculation(): ISummaryResult;
    aggregate(a: any): void;
    itemAdded(a: any, b: ISummaryResult, c: number): ISummaryResult;
    itemRemoved(a: any, b: ISummaryResult, c: number): ISummaryResult;
}
/**
 * @hidden
 */
export declare class CountSummaryCalculator extends SummaryCalculator {
    static $t: Type;
    private r;
    protected get_displayName(): string;
    get displayName(): string;
    protected get_operand(): DataSourceSummaryOperand;
    beginCalculation(a: IDataSource, b: string): void;
    endCalculation(): ISummaryResult;
    aggregate(a: any): void;
    itemAdded(a: any, b: ISummaryResult, c: number): ISummaryResult;
    itemRemoved(a: any, b: ISummaryResult, c: number): ISummaryResult;
}
/**
 * @hidden
 */
export declare class AverageSummaryCalculator extends SummaryCalculator {
    static $t: Type;
    private r;
    private s;
    protected get_displayName(): string;
    get displayName(): string;
    protected get_operand(): DataSourceSummaryOperand;
    beginCalculation(a: IDataSource, b: string): void;
    endCalculation(): ISummaryResult;
    aggregate(a: any): void;
    itemAdded(a: any, b: ISummaryResult, c: number): ISummaryResult;
    itemRemoved(a: any, b: ISummaryResult, c: number): ISummaryResult;
}
/**
 * @hidden
 */
export declare class MaxSummaryCalculator extends SummaryCalculator {
    static $t: Type;
    private r;
    protected get_displayName(): string;
    get displayName(): string;
    protected get_operand(): DataSourceSummaryOperand;
    beginCalculation(a: IDataSource, b: string): void;
    endCalculation(): ISummaryResult;
    aggregate(a: any): void;
    itemAdded(a: any, b: ISummaryResult, c: number): ISummaryResult;
    itemRemoved(a: any, b: ISummaryResult, c: number): ISummaryResult;
    private s;
}
/**
 * @hidden
 */
export declare class MinSummaryCalculator extends SummaryCalculator {
    static $t: Type;
    private r;
    protected get_displayName(): string;
    get displayName(): string;
    protected get_operand(): DataSourceSummaryOperand;
    beginCalculation(a: IDataSource, b: string): void;
    endCalculation(): ISummaryResult;
    aggregate(a: any): void;
    itemAdded(a: any, b: ISummaryResult, c: number): ISummaryResult;
    itemRemoved(a: any, b: ISummaryResult, c: number): ISummaryResult;
    private s;
}
/**
 * @hidden
 */
export declare class SummaryDescription extends Base {
    static $t: Type;
    private h;
    constructor(a: number);
    constructor(a: number, b: string);
    constructor(a: number, b: string, c: DataSourceSummaryOperand);
    constructor(a: number, ..._rest: any[]);
    private m;
    get propertyName(): string;
    set propertyName(a: string);
    private i;
    get shouldDisplay(): boolean;
    set shouldDisplay(a: boolean);
    private a;
    get operand(): DataSourceSummaryOperand;
    set operand(a: DataSourceSummaryOperand);
    private _alias;
    get alias(): string;
    set alias(a: string);
    private d;
    get calculator(): SummaryCalculator;
    set calculator(a: SummaryCalculator);
    equals(a: any): boolean;
    getHashCode(): number;
    p(): void;
    provideCalculator: (sender: any, args: ProvideCalculatorEventArgs) => void;
    private g;
    f(): SummaryCalculator;
}
/**
 * @hidden
 */
export declare class SummaryDescriptionCollection extends Base {
    static $t: Type;
    g(): SyncableObservableCollection$1<SummaryDescription>;
    private d;
    get syncTarget(): SummaryDescriptionCollection;
    set syncTarget(a: SummaryDescriptionCollection);
    private f;
    constructor();
    add(a: SummaryDescription): boolean;
    insert(a: number, b: SummaryDescription): void;
    clear(): void;
    get(a: number): SummaryDescription;
    indexOf(a: SummaryDescription): number;
    remove(a: SummaryDescription): boolean;
    removeAt(a: number): SummaryDescription;
    set(a: number, b: SummaryDescription): SummaryDescription;
    size(): number;
    n(a: (sender: any, e: NotifyCollectionChangedEventArgs) => void): void;
    r(a: (sender: any, e: NotifyCollectionChangedEventArgs) => void): void;
    o(a: SummaryDescriptionCollection): void;
    s(a: SummaryDescriptionCollection): void;
    get onChanged(): () => void;
    set onChanged(a: () => void);
    get k(): IList$1<SummaryDescription>;
}
/**
 * @hidden
 */
export declare class ProvideCalculatorEventArgs extends Base {
    static $t: Type;
    a: SummaryCalculator;
}
/**
 * @hidden
 */
export declare abstract class BaseDataSource extends Base implements IDataSource, IEditableDataSource {
    static $t: Type;
    constructor();
    protected v: TransactionService;
    private cu;
    protected ct(a: TransactionEvent, b: any): void;
    protected ar(): boolean;
    private b1;
    private clone1;
    private _isReadOnly;
    get isReadOnly(): boolean;
    set isReadOnly(a: boolean);
    private aa;
    protected get_isBatchingEnabled(): boolean;
    protected set_isBatchingEnabled(a: boolean): void;
    get isBatchingEnabled(): boolean;
    set isBatchingEnabled(a: boolean);
    get canUndo(): boolean;
    get canRedo(): boolean;
    get canCommit(): boolean;
    updatePropertyAtKey(a: any[], b: string, c: any, d?: boolean): number;
    removeItemByKey(a: any[]): void;
    removeItem(a: any): void;
    addItem(a: any): void;
    acceptPendingTransaction(a: number): void;
    rejectPendingTransaction(a: number): void;
    commitEdits(a: boolean): number;
    cancelEdits(): void;
    acceptPendingCommit(a: number): void;
    rejectPendingCommit(a: number): void;
    undo(): void;
    redo(): void;
    hasEdit(a: any[], b: string): boolean;
    hasDelete(a: any[]): boolean;
    hasAdd(a: any): boolean;
    getAggregatedChanges(a: number): DataSourceAggregatedResult[];
    isPendingTransaction(a: number): boolean;
    isPendingCommit(a: number): boolean;
    setTransactionError(a: number, b: string): void;
    getTransactionErrorByKey(a: any[], b: string): string;
    getTransactionErrorByID(a: number): string;
    getTransactionID(a: any[], b: string): number;
    private g;
    dataCommitted: (sender: any, e: DataSourceDataCommittedEventArgs) => void;
    protected b2(a: number, b: DataSourceAggregatedResult[]): void;
    static bb(a: string): string;
    private cy;
    private bz;
    private cz;
    private bx;
    protected onSortDescriptionsChanged(a: NotifyCollectionChangedEventArgs): void;
    protected onGroupDescriptionsChanged(a: NotifyCollectionChangedEventArgs): void;
    protected onSummaryDescriptionsChanged(a: NotifyCollectionChangedEventArgs): void;
    protected aq: boolean;
    protected onFilterExpressionsChanged(a: NotifyCollectionChangedEventArgs): void;
    onRowExpansionChanged(a: number, b: boolean, c: boolean): void;
    isPlaceholderItem(a: number): boolean;
    a0: any;
    private _externalDataSource;
    get externalDataSource(): IExternalDataSource;
    set externalDataSource(a: IExternalDataSource);
    private t;
    private s;
    private j;
    private u;
    private k;
    protected abstract get actualBaseDataProvider(): IDataSourceDataProvider;
    get resolvedDataProvider(): IDataSourceDataProvider;
    private p;
    get actualSchema(): IDataSourceSchema;
    set actualSchema(a: IDataSourceSchema);
    private au;
    get actualCount(): number;
    set actualCount(a: number);
    private av;
    get firstVisibleIndexRequested(): number;
    set firstVisibleIndexRequested(a: number);
    private aw;
    get lastVisibleIndexRequested(): number;
    set lastVisibleIndexRequested(a: number);
    private q;
    get updateNotifier(): IDataSourceUpdateNotifier;
    set updateNotifier(a: IDataSourceUpdateNotifier);
    getItemAtIndex(a: number): any;
    getItemFromKey(a: any[]): any;
    getItemProperty(a: any, b: string): any;
    getSpecialRowItemValue(a: DataSourceSpecialRow, b: string): any;
    protected a2(a: any, b: string): any;
    protected ao(a: any, b: string): boolean;
    getItemPropertyAtIndex(a: number, b: string): any;
    protected get_fullSectionInformationWillForceLoad(): boolean;
    get fullSectionInformationWillForceLoad(): boolean;
    propertyChanged: (sender: any, e: PropertyChangedEventArgs) => void;
    protected onPropertyUpdated(a: string, b: any, c: any): void;
    protected propertyUpdatedOverride(a: string, b: any, c: any): void;
    protected onActualPrimaryKeyChanged(a: string[], b: string[]): void;
    protected onActualPrimaryKeyChangedOverrride(a: string[], b: string[]): void;
    protected get_isVirtual(): boolean;
    get isVirtual(): boolean;
    private m;
    protected get dataProviderUpdateNotifier(): IDataSourceDataProviderUpdateNotifier;
    protected onActualDataProviderChanged(a: any, b: any): void;
    protected onRequestedVisibleRangeChanged(): void;
    private o;
    get executionContext(): IDataSourceExecutionContext;
    set executionContext(a: IDataSourceExecutionContext);
    schemaChanged: (sender: any, args: DataSourceSchemaChangedEventArgs) => void;
    rowExpansionChanged: (sender: any, args: DataSourceRowExpansionChangedEventArgs) => void;
    rootSummariesChanged: (sender: any, args: DataSourceRootSummariesChangedEventArgs) => void;
    protected cn(): void;
    propertiesRequestedChanged: (sender: any, args: DataSourcePropertiesRequestedChangedEventArgs) => void;
    protected ci(): void;
    protected canInitialize(): boolean;
    private ab;
    protected get isInitializing(): boolean;
    protected get_isSortingSupported(): boolean;
    get isSortingSupported(): boolean;
    protected get_isFilteringSupported(): boolean;
    get isFilteringSupported(): boolean;
    get sortDescriptions(): SortDescriptionCollection;
    get groupDescriptions(): SortDescriptionCollection;
    get filterExpressions(): FilterExpressionCollection;
    get summaryDescriptions(): SummaryDescriptionCollection;
    private i;
    get summaryScope(): DataSourceSummaryScope;
    set summaryScope(a: DataSourceSummaryScope);
    private y;
    get deferAutoRefresh(): boolean;
    set deferAutoRefresh(a: boolean);
    private b;
    get primaryKey(): string[];
    set primaryKey(a: string[]);
    private a;
    get actualPrimaryKey(): string[];
    set actualPrimaryKey(a: string[]);
    private c;
    get propertiesRequested(): string[];
    set propertiesRequested(a: string[]);
    private e;
    get schemaIncludedProperties(): string[];
    set schemaIncludedProperties(a: string[]);
    private ah;
    get notifyUsingSourceIndexes(): boolean;
    set notifyUsingSourceIndexes(a: boolean);
    protected get_isItemIndexLookupSupported(): boolean;
    get isItemIndexLookupSupported(): boolean;
    protected get_isKeyIndexLookupSupported(): boolean;
    get isKeyIndexLookupSupported(): boolean;
    protected initializeOverride(): void;
    private ai;
    protected resolveFullCount(a: number): number;
    private bt;
    private b4;
    private b3;
    onSetItem(a: number, b: any, c: any): void;
    onBroadcastSetItem(a: number, b: any, c: any): void;
    onSetItemOverride(a: number, b: any, c: any): void;
    onClearItems(): void;
    onBroadcastClearItems(): void;
    onClearItemsOverride(): void;
    onInsertItem(a: number, b: any): void;
    onBroadcastInsertItem(a: number, b: any): void;
    onInsertItemOverride(a: number, b: any): void;
    onRemoveItem(a: number, b: any): void;
    onBroadcastRemoveItem(a: number, b: any): void;
    onRemoveItemOverride(a: number, b: any): void;
    notifySetItem(a: number, b: any, c: any): void;
    notifyClearItems(): void;
    notifyInsertItem(a: number, b: any): void;
    notifyRemoveItem(a: number, b: any): void;
    w: boolean;
    queueAutoRefresh(): void;
    bv(): void;
    cw(): void;
    protected refreshInternalOverride(): void;
    flushAutoRefresh(): void;
    refresh(): void;
    indexOfItem(a: any): number;
    indexOfKey(a: any[]): number;
    protected getPrimaryKeyValue(a: any, b: any[]): void;
    getRowType(a: number): DataSourceRowType;
    getMainValuePath(a: DataSourceRowType): string;
    getStickyRows(): number[];
    getStickyRowsInRange(a: number, b: number): number[];
    isRowSpanning(a: DataSourceRowType): boolean;
    getStickyRowPriority(a: number): number;
    isExclusivelySticky(a: number): boolean;
    pinRow(a: any[]): void;
    unpinRow(a: any[]): void;
    clearPinnedRows(): void;
    isRowPinned(a: number): boolean;
    protected get_isGroupingSupported(): boolean;
    get isGroupingSupported(): boolean;
    private h;
    protected get_sectionHeaderDisplayMode(): DataSourceSectionHeaderDisplayMode;
    protected set_sectionHeaderDisplayMode(a: DataSourceSectionHeaderDisplayMode): void;
    get sectionHeaderDisplayMode(): DataSourceSectionHeaderDisplayMode;
    set sectionHeaderDisplayMode(a: DataSourceSectionHeaderDisplayMode);
    private ac;
    protected get_isSectionCollapsable(): boolean;
    protected set_isSectionCollapsable(a: boolean): void;
    get isSectionCollapsable(): boolean;
    set isSectionCollapsable(a: boolean);
    private ae;
    protected get_isSectionExpandedDefault(): boolean;
    protected set_isSectionExpandedDefault(a: boolean): void;
    get isSectionExpandedDefault(): boolean;
    set isSectionExpandedDefault(a: boolean);
    private z;
    protected get_includeSummaryRowsInSection(): boolean;
    protected set_includeSummaryRowsInSection(a: boolean): void;
    get includeSummaryRowsInSection(): boolean;
    set includeSummaryRowsInSection(a: boolean);
    private ag;
    protected get_isSectionSummaryRowsAtBottom(): boolean;
    protected set_isSectionSummaryRowsAtBottom(a: boolean): void;
    get isSectionSummaryRowsAtBottom(): boolean;
    set isSectionSummaryRowsAtBottom(a: boolean);
    private af;
    protected get_isSectionHeaderNormalRow(): boolean;
    protected set_isSectionHeaderNormalRow(a: boolean): void;
    get isSectionHeaderNormalRow(): boolean;
    set isSectionHeaderNormalRow(a: boolean);
    private ad;
    protected get_isSectionContentVisible(): boolean;
    protected set_isSectionContentVisible(a: boolean): void;
    get isSectionContentVisible(): boolean;
    set isSectionContentVisible(a: boolean);
    private ak;
    get shouldEmitSectionHeaders(): boolean;
    set shouldEmitSectionHeaders(a: boolean);
    private aj;
    get shouldEmitSectionFooters(): boolean;
    set shouldEmitSectionFooters(a: boolean);
    private al;
    get shouldEmitShiftedRows(): boolean;
    set shouldEmitShiftedRows(a: boolean);
    private am;
    get shouldEmitSummaryRows(): boolean;
    set shouldEmitSummaryRows(a: boolean);
    protected x: boolean;
    protected d: boolean[];
    protected ensureComparables(a: IDataSourceSchema): void;
    protected f(a: IDataSourceSchema, b: any): boolean[];
    resolveSchemaPropertyType(a: string): DataSourceSchemaPropertyType;
    setIsRowExpandedAtIndex(a: number, b: boolean): void;
    getIsRowExpandedAtIndex(a: number): boolean;
    getRowLevel(a: number): number;
    getRootSummaryRowCount(): number;
    getRootSummaryResults(): ISummaryResult[];
    getSectionSummaryResults(a: number): ISummaryResult[][];
    clone(): IDataSource;
    cloneProperties(a: IDataSource): void;
    getRowCount(): number;
}
/**
 * @hidden
 */
export declare class DefaultDataSourceDataProviderUpdateNotifier extends Base implements IDataSourceDataProviderUpdateNotifier {
    static $t: Type;
    private a;
    constructor(a: BaseDataSource);
    notifySetItem(a: number, b: any, c: any): void;
    notifyClearItems(): void;
    notifyInsertItem(a: number, b: any): void;
    notifyRemoveItem(a: number, b: any): void;
}
