import { DataSourceSchemaPropertyType } from "igniteui-react-core";
import { IgrGridFilterDialogViewModelGroupingLevelCollection } from "./igr-grid-filter-dialog-view-model-grouping-level-collection";
import { IgrGridFilterDialogViewModelRowCollection } from "./igr-grid-filter-dialog-view-model-row-collection";
import { GridFilterDialogViewModel as GridFilterDialogViewModel_internal } from "./GridFilterDialogViewModel";
import { ContentChildrenManager } from "igniteui-react-core";
export declare class IgrGridFilterDialogViewModel {
    protected createImplementation(): GridFilterDialogViewModel_internal;
    protected _implementation: any;
    protected mounted: boolean;
    get nativeElement(): HTMLElement;
    /**
     * @hidden
     */
    get i(): GridFilterDialogViewModel_internal;
    protected onImplementationCreated(): void;
    protected _contentChildrenManager: ContentChildrenManager;
    constructor();
    protected _provideImplementation(i: any): void;
    get propertyType(): DataSourceSchemaPropertyType;
    set propertyType(v: DataSourceSchemaPropertyType);
    private _groupingLevels;
    get groupingLevels(): IgrGridFilterDialogViewModelGroupingLevelCollection;
    set groupingLevels(v: IgrGridFilterDialogViewModelGroupingLevelCollection);
    get isTopLevelOr(): boolean;
    set isTopLevelOr(v: boolean);
    get maxGroupingLevels(): number;
    set maxGroupingLevels(v: number);
    private _rows;
    get rows(): IgrGridFilterDialogViewModelRowCollection;
    set rows(v: IgrGridFilterDialogViewModelRowCollection);
    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;
}
