import { BaseDataSource } from "./BaseDataSource";
import { IPageCandidatesSink } from "./IPageCandidatesSink";
import { PagePredictionEngine } from "./PagePredictionEngine";
import { IDataSourceDataProvider } from "./IDataSourceDataProvider";
import { IDataSourceVirtualDataProvider } from "./IDataSourceVirtualDataProvider";
import { IExternalVirtualDataSource } from "./IExternalVirtualDataSource";
import { Type } from "./type";
import { DataSourcePageRequestPriority } from "./DataSourcePageRequestPriority";
import { DataSourceRowType } from "./DataSourceRowType";
/**
 * @hidden
 */
export declare class VirtualDataSource extends BaseDataSource implements IPageCandidatesSink {
    static $t: Type;
    constructor();
    private b6;
    private cn;
    protected ch: PagePredictionEngine;
    protected get_actualBaseDataProvider(): IDataSourceDataProvider;
    protected get actualBaseDataProvider(): IDataSourceDataProvider;
    private ca;
    get dataProvider(): IDataSourceVirtualDataProvider;
    set dataProvider(a: IDataSourceVirtualDataProvider);
    private b9;
    get actualDataProvider(): IDataSourceVirtualDataProvider;
    set actualDataProvider(a: IDataSourceVirtualDataProvider);
    private c3;
    get pageSizeRequested(): number;
    set pageSizeRequested(a: number);
    protected resetCache(): void;
    protected resetCacheOverride(): void;
    private c2;
    get maxCachedPages(): number;
    set maxCachedPages(a: number);
    protected actualPageSizePopulated: boolean;
    private ct;
    get actualPageSize(): number;
    set actualPageSize(a: number);
    private cl;
    protected get_isSortingSupported(): boolean;
    protected get_isFilteringSupported(): boolean;
    protected get_isGroupingSupported(): boolean;
    private ce;
    get cf(): IExternalVirtualDataSource;
    set cf(a: IExternalVirtualDataSource);
    protected resolveDataProvider(): IDataSourceVirtualDataProvider;
    protected propertyUpdatedOverride(a: string, b: any, c: any): void;
    private c6;
    private dj;
    private dq;
    protected resolveFullCount(a: number): number;
    private dp;
    private dn;
    private c5;
    private dl;
    protected get_isVirtual(): boolean;
    private ck;
    private cr;
    private cs;
    private cm;
    private b4;
    private b7;
    isPlaceholderItem(a: number): boolean;
    getItemAtIndex(a: number): any;
    private da;
    private b8;
    private cj;
    private ci;
    getItemPropertyAtIndex(a: number, b: string): any;
    private db;
    private dm;
    private dk;
    addCandidate(a: number, b: DataSourcePageRequestPriority): boolean;
    removeCandidate(a: number): void;
    transformPage(a: number): number[];
    getUnrealizedCount(): number;
    onSetItemOverride(a: number, b: any, c: any): void;
    protected refreshInternalOverride(): void;
    private dr;
    onClearItemsOverride(): void;
    onInsertItemOverride(a: number, b: any): void;
    onRemoveItemOverride(a: number, b: any): void;
    protected get_isItemIndexLookupSupported(): boolean;
    protected get_isKeyIndexLookupSupported(): boolean;
    indexOfItem(a: any): number;
    private cp;
    indexOfKey(a: any[]): number;
    private cg;
    getStickyRowPriority(a: number): number;
    unpinRow(a: any[]): void;
    pinRow(a: any[]): void;
    isRowPinned(a: number): boolean;
    private b5;
    private cy;
    private cu;
    private c0;
    private cw;
    private c1;
    private cx;
    private cz;
    private cv;
    getStickyRowsInRange(a: number, b: number): number[];
    isExclusivelySticky(a: number): boolean;
    getRowType(a: number): DataSourceRowType;
    private cq;
    getIsRowExpandedAtIndex(a: number): boolean;
    setIsRowExpandedAtIndex(a: number, b: boolean): void;
    getRowLevel(a: number): number;
    private de;
    private df;
}
