import { BaseDataSource } from "./BaseDataSource";
import { IDataSourceDataProvider } from "./IDataSourceDataProvider";
import { IDataSourceLocalDataProvider } from "./IDataSourceLocalDataProvider";
import { Base, Type } from "./type";
import { IExternalLocalDataSource } from "./IExternalLocalDataSource";
import { ISupportsDataChangeNotifications } from "./ISupportsDataChangeNotifications";
import { DataSourceRowType } from "./DataSourceRowType";
import { ISummaryResult } from "./ISummaryResult";
import { IDataSource } from "./IDataSource";
import { TransactionEvent } from "./TransactionEvent";
import { ISupportsExpansionChangeNotifications } from "./ISupportsExpansionChangeNotifications";
/**
 * @hidden
 */
export declare class LocalDataSource extends BaseDataSource {
    static $t: Type;
    protected get_actualBaseDataProvider(): IDataSourceDataProvider;
    protected get actualBaseDataProvider(): IDataSourceDataProvider;
    private c2;
    private df;
    get dataProvider(): IDataSourceLocalDataProvider;
    set dataProvider(a: IDataSourceLocalDataProvider);
    private c1;
    get actualDataProvider(): IDataSourceLocalDataProvider;
    set actualDataProvider(a: IDataSourceLocalDataProvider);
    private d3;
    get dataSource(): any;
    set dataSource(a: any);
    protected canInitialize(): boolean;
    private c7;
    get c8(): IExternalLocalDataSource;
    set c8(a: IExternalLocalDataSource);
    constructor();
    protected resolveDataProvider(): IDataSourceLocalDataProvider;
    protected propertyUpdatedOverride(a: string, b: any, c: any): void;
    getItemAtIndex(a: number): any;
    getItemFromKey(a: any[]): any;
    getItemPropertyAtIndex(a: number, b: string): any;
    private db;
    private dd;
    private c6;
    private dh;
    d7: string;
    protected refreshInternalOverride(): void;
    private d9;
    protected get_isItemIndexLookupSupported(): boolean;
    protected get_isKeyIndexLookupSupported(): boolean;
    indexOfItem(a: any): number;
    private dg;
    indexOfKey(a: any[]): number;
    protected onActualPrimaryKeyChangedOverrride(a: string[], b: string[]): void;
    private c9;
    private da;
    private dc;
    private dn;
    private dm;
    private dj;
    private dk;
    private di;
    private dl;
    onClearItemsOverride(): void;
    onSetItemOverride(a: number, b: any, c: any): void;
    onInsertItemOverride(a: number, b: any): void;
    onRemoveItemOverride(a: number, b: any): void;
    ea(): void;
    ed(a: number, b: any, c: any): void;
    eb(a: number, b: any): void;
    ec(a: number, b: any): void;
    private dp;
    pinRow(a: any[]): void;
    unpinRow(a: any[]): void;
    clearPinnedRows(): void;
    isRowPinned(a: number): boolean;
    private de;
    protected get_isSortingSupported(): boolean;
    protected get_isFilteringSupported(): boolean;
    protected get_isGroupingSupported(): boolean;
    getStickyRowPriority(a: number): number;
    private c0;
    private dx;
    private dq;
    private dz;
    private ds;
    private d0;
    private dt;
    private dy;
    private dr;
    private d2;
    private d1;
    private dv;
    private du;
    private dw;
    getStickyRowsInRange(a: number, b: number): number[];
    isExclusivelySticky(a: number): boolean;
    getRowType(a: number): DataSourceRowType;
    setIsRowExpandedAtIndex(a: number, b: boolean): void;
    getIsRowExpandedAtIndex(a: number): boolean;
    getRowLevel(a: number): number;
    getRootSummaryRowCount(): number;
    getRootSummaryResults(): ISummaryResult[];
    getSectionSummaryResults(a: number): ISummaryResult[][];
    clone(): IDataSource;
    protected ar(): boolean;
    protected ct(a: TransactionEvent, b: any): void;
}
/**
 * @hidden
 */
export declare class LocalDataSourceViewUpdateNotifier extends Base implements ISupportsDataChangeNotifications {
    static $t: Type;
    private a;
    notifyClearItems(): void;
    notifyInsertItem(a: number, b: any): void;
    notifyRemoveItem(a: number, b: any): void;
    notifySetItem(a: number, b: any, c: any): void;
    constructor(a: LocalDataSource);
}
/**
 * @hidden
 */
export declare class LocalDataSourceViewExpansionNotifier extends Base implements ISupportsExpansionChangeNotifications {
    static $t: Type;
    private a;
    notifyRowExpansionChanged(a: number, b: boolean, c: boolean): void;
    constructor(a: LocalDataSource);
}
