import { VirtualDataSource } from "./VirtualDataSource";
import { IExternalDataSource } from "./IExternalDataSource";
import { GenericInternalVirtualDataProvider } from "./GenericInternalVirtualDataProvider";
import { Type } from "./type";
import { PageRequestedEventArgs } from "./PageRequestedEventArgs";
import { IDataSourceVirtualDataProvider } from "./IDataSourceVirtualDataProvider";
import { GenericDataSourceSchemaPropertyType } from "./GenericDataSourceSchemaPropertyType";
import { DataSourceSummaryOperand } from "./DataSourceSummaryOperand";
import { IDataSource } from "./IDataSource";
/**
 * @hidden
 */
export declare class GenericInternalVirtualDataSource extends VirtualDataSource implements IExternalDataSource {
    static $t: Type;
    get isSortingSupportedOverride(): boolean;
    get isFilteringSupportedOverride(): boolean;
    get isGroupingSupportedOverride(): boolean;
    private _isAggregationSupported;
    get isAggregationSupported(): boolean;
    set isAggregationSupported(a: boolean);
    protected get e4(): GenericInternalVirtualDataProvider;
    pageRequested: (sender: any, args: PageRequestedEventArgs) => void;
    constructor();
    private _isClone;
    get isClone(): boolean;
    set isClone(a: boolean);
    protected resolveDataProvider(): IDataSourceVirtualDataProvider;
    private fr;
    fillPageStart(a: number): void;
    fillPageEnd(): void;
    fillCount(a: number): void;
    fillColumnBool(a: string, b: boolean[]): void;
    fillColumnInt(a: string, b: number[]): void;
    fillColumnDouble(a: string, b: number[]): void;
    fillColumnString(a: string, b: string[]): void;
    fillColumnDate(a: string, b: Date[]): void;
    addSchemaProperty(a: string, b: GenericDataSourceSchemaPropertyType): void;
    fillGroupStart(a: number, b: number): void;
    fillGroupEnd(): void;
    fillGroupValueInt(a: string, b: number): void;
    fillGroupValueDouble(a: string, b: number): void;
    fillGroupValueString(a: string, b: string): void;
    fillGroupValueDate(a: string, b: Date): void;
    addSummaryInt(a: string, b: DataSourceSummaryOperand, c: number): void;
    addSummaryDouble(a: string, b: DataSourceSummaryOperand, c: number): void;
    addSummaryString(a: string, b: DataSourceSummaryOperand, c: string): void;
    addSummaryDate(a: string, b: DataSourceSummaryOperand, c: Date): void;
    clone(): IDataSource;
}
