import { AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, NgZone, OnInit } from '@angular/core';
import { SortingDirection } from '../data-operations/sorting-expression.interface';
import { RestrictDrag } from '../directives/dragdrop/dragdrop.directive';
import { IgxGridAPIService } from './api.service';
import { IgxColumnComponent } from './column.component';
import { IgxColumnMovingService } from './grid.common';
export declare class IgxGridHeaderComponent implements OnInit, DoCheck, AfterViewInit {
    gridAPI: IgxGridAPIService;
    cdr: ChangeDetectorRef;
    elementRef: ElementRef;
    zone: NgZone;
    private cms;
    column: IgxColumnComponent;
    gridID: string;
    readonly styleClasses: string;
    readonly width: string;
    readonly height: number;
    readonly ascending: boolean;
    readonly descending: boolean;
    readonly sortingIcon: string;
    readonly columnType: boolean;
    readonly sorted: boolean;
    readonly dragged: boolean;
    readonly zIndex: number;
    hostRole: string;
    tabindex: number;
    readonly headerID: string;
    resizeArea: ElementRef;
    resizeCursor: any;
    showResizer: boolean;
    resizerHeight: any;
    dragDirection: RestrictDrag;
    resizeEndTimeout: number;
    protected sortDirection: SortingDirection;
    private _startResizePos;
    private _pinnedMaxWidth;
    constructor(gridAPI: IgxGridAPIService, cdr: ChangeDetectorRef, elementRef: ElementRef, zone: NgZone, cms: IgxColumnMovingService);
    ngOnInit(): void;
    ngDoCheck(): void;
    ngAfterViewInit(): void;
    onClick(event: any): void;
    readonly restrictResizeMin: number;
    readonly restrictResizeMax: number;
    readonly grid: any;
    readonly isPinned: boolean;
    readonly isLastPinned: boolean;
    protected getSortDirection(): void;
    onResizeAreaMouseOver(): void;
    onResizeAreaMouseDown(event: any): void;
    onResizeAreaDblClick(): void;
    onResize(event: any): void;
}
