import { DataSourceSchemaPropertyType } from "igniteui-webcomponents-core";
import { IgcGridFilterDialogViewModelGroupingLevelCollection } from "./igc-grid-filter-dialog-view-model-grouping-level-collection";
import { IgcGridFilterDialogViewModelRowCollection } from "./igc-grid-filter-dialog-view-model-row-collection";
import { GridFilterDialogViewModel as GridFilterDialogViewModel_internal } from "./GridFilterDialogViewModel";
export declare class IgcGridFilterDialogViewModel {
    protected createImplementation(): GridFilterDialogViewModel_internal;
    protected _implementation: any;
    /**
     * @hidden
     */
    readonly i: GridFilterDialogViewModel_internal;
    private onImplementationCreated;
    constructor();
    protected _provideImplementation(i: any): void;
    propertyType: DataSourceSchemaPropertyType;
    private _groupingLevels;
    groupingLevels: IgcGridFilterDialogViewModelGroupingLevelCollection;
    isTopLevelOr: boolean;
    maxGroupingLevels: number;
    private _rows;
    rows: IgcGridFilterDialogViewModelRowCollection;
    findByName(name: string): any;
    addNewRow(): void;
    canGroupRange(startIndex: number, endIndex: number): boolean;
    ungroupRange(startIndex: number, endIndex: number): void;
    targetingRange(startIndex: number, endIndex: number): boolean;
    toggleRange(startIndex: number, endIndex: number): void;
    groupRange(startIndex: number, endIndex: number, isOrGrouping: boolean): void;
}
