import { QueryList, ChangeDetectorRef, DoCheck, ElementRef } from '@angular/core';
import { IgxColumnComponent } from '../columns/column.component';
import { IgxFilteringService } from '../filtering/grid-filtering.service';
import { GridBaseAPIService } from '../api.service';
import { IgxGridBaseDirective } from '../grid-base.directive';
import { IgxColumnResizingService } from '../resizing/resizing.service';
import { IgxGridHeaderComponent } from './grid-header.component';
import { IgxGridFilteringCellComponent } from '../filtering/base/grid-filtering-cell.component';
import { GridType } from '../common/grid.interface';
/**
 * @hidden
 */
export declare class IgxGridHeaderGroupComponent implements DoCheck {
    private cdr;
    gridAPI: GridBaseAPIService<IgxGridBaseDirective & GridType>;
    element: ElementRef;
    colResizingService: IgxColumnResizingService;
    filteringService: IgxFilteringService;
    get gridRowSpan(): number;
    get gridColumnSpan(): number;
    get rowEnd(): number;
    get colEnd(): number;
    get rowStart(): number;
    get colStart(): number;
    get headerID(): string;
    /**
     * Gets the column of the header group.
     * @memberof IgxGridHeaderGroupComponent
     */
    column: IgxColumnComponent;
    /**
     * Gets the `id` of the grid in which the header group is stored.
     * @memberof IgxGridHeaderGroupComponent
     */
    gridID: string;
    get active(): boolean;
    get activeGroup(): boolean;
    /**
     * @hidden
     */
    headerCell: IgxGridHeaderComponent;
    /**
     * @hidden
     */
    filterCell: IgxGridFilteringCellComponent;
    /**
     * @hidden
     */
    children: QueryList<IgxGridHeaderGroupComponent>;
    /**
     * Gets the width of the header group.
     * @memberof IgxGridHeaderGroupComponent
     */
    get width(): any;
    /**
     * Gets the style classes of the header group.
     * @memberof IgxGridHeaderGroupComponent
     */
    get styleClasses(): string;
    /**
     * @hidden
     */
    get zIndex(): number;
    /**
     * Gets the grid of the header group.
     * @memberof IgxGridHeaderGroupComponent
     */
    get grid(): any;
    /**
     * Gets whether the header group belongs to a column that is filtered.
     * @memberof IgxGridHeaderGroupComponent
     */
    get isFiltered(): boolean;
    /**
     * Gets whether the header group is stored in the last column in the pinned area.
     * @memberof IgxGridHeaderGroupComponent
     */
    get isLastPinned(): boolean;
    /**
     * Gets whether the header group is stored in the first column of the right pinned area.
     */
    get isFirstPinned(): boolean;
    get groupDisplayStyle(): string;
    /**
     * Gets whether the header group is stored in a pinned column.
     * @memberof IgxGridHeaderGroupComponent
     */
    get isPinned(): boolean;
    /**
     * Gets whether the header group belongs to a column that is moved.
     * @memberof IgxGridHeaderGroupComponent
     */
    get isHeaderDragged(): boolean;
    /**
     * @hidden
     */
    get hasLastPinnedChildColumn(): boolean;
    /**
     * @hidden
     */
    get hasFirstPinnedChildColumn(): boolean;
    /**
     * @hidden
     */
    get selectable(): boolean;
    /**
     * @hidden
     */
    get selected(): boolean;
    /**
     * @hidden
     */
    get height(): any;
    /**
     * @hidden
     */
    get columnTitle(): string;
    /**
     * @hidden
     */
    groupClicked(event: any): void;
    /**
     * @hidden
     */
    toggleExpandState(event: any): void;
    /**
     * @hidden
     */
    onMouseDown(event: any): void;
    /**
     * @hidden
     */
    pointerdown(event: any): void;
    activate(): void;
    ngDoCheck(): void;
    /**
     * @hidden
     */
    onPinterEnter(): void;
    /**
     * @hidden
     */
    onPointerLeave(): void;
    private get activeNode();
    constructor(cdr: ChangeDetectorRef, gridAPI: GridBaseAPIService<IgxGridBaseDirective & GridType>, element: ElementRef, colResizingService: IgxColumnResizingService, filteringService: IgxFilteringService);
}
