import { Column, ColumnModel, EventHandler, InitModelOf, ItemFocusEvent, MenuBar, PropertyChangeEvent, Rectangle, SomeRequired, TabbableCoordinator, Table, TableColumnMovedEvent, TableColumnResizedEvent, TableFilterAddedEvent, TableFilterRemovedEvent, TableHeaderEventMap, TableHeaderMenu, TableHeaderModel, Widget } from '../index'; export declare class TableHeader extends Widget implements TableHeaderModel { model: TableHeaderModel; initModel: SomeRequired; eventMap: TableHeaderEventMap; self: TableHeader; headerMenusEnabled: boolean; table: Table; dragging: boolean; columnMoved: boolean; menuBar: MenuBar; tableHeaderMenu: TableHeaderMenu; tabbableCoordinator: TabbableCoordinator; $menuBarContainer: JQuery; $filler: JQuery; protected _tableDataScrollHandler: () => void; protected _tableAddFilterRemovedHandler: EventHandler; protected _tableColumnResizedHandler: EventHandler; protected _tableColumnMovedHandler: EventHandler; protected _renderedColumns: Column[]; protected _$window: JQuery; protected _$body: JQuery; protected _fixTimeout: number; constructor(); protected _init(options: InitModelOf): void; protected _render(): void; protected _remove(): void; rerenderColumns(): void; protected _renderColumns(): void; protected _updateTabbableItems(): void; protected _renderColumn(column: Column, index: number): void; protected _removeColumns(): void; protected _removeColumn(column: Column): void; resizeHeaderItem(column: Column): void; /** * Resizes all header items to theirs desired widths. */ resizeHeaderItems(): void; protected _reconcileScrollPos(): void; protected _arrangeHeaderItems($headers: JQuery): void; protected _installHeaderItemTooltip(column: Column): void; protected _installHeaderItemTooltips(): void; protected _uninstallHeaderItemTooltip(column: Column): void; protected _uninstallHeaderItemTooltips(): void; protected _headerItemTooltipText($col: JQuery): string; protected _textInView($text: JQuery): boolean; /** * @returns the part of the header item that is visible in the current viewport of the table so the tooltip won't point to an invisible part of the header item */ protected _headerItemTooltipOrigin($col: JQuery): Rectangle; protected _offsetBoundsWithoutMenuBar(): Rectangle; protected _headerItemTooltipHtmlEnabled($col: JQuery): boolean; setHeaderMenusEnabled(headerMenusEnabled: boolean): void; protected _renderHeaderMenusEnabled(): void; openHeaderMenu(column: Column): void; closeHeaderMenu(): void; findHeaderItems(): JQuery; /** * Updates the column headers visualization of the text, sorting and styling state * @param oldColumnState only necessary when the css class was updated */ updateHeader(column: Column, oldColumnState?: ColumnModel): void; protected _decorateHeader(column: Column, oldColumnState?: ColumnModel): void; protected _renderColumnCssClass(column: Column, oldColumnState?: ColumnModel): void; protected _renderColumnText(column: Column): void; protected _renderColumnTooltipText(column: Column): void; protected _renderColumnIconId(column: Column): void; protected _renderColumnHorizontalAlignment(column: Column): void; protected _updateColumnIconAndTextStyle(column: Column): void; protected _renderColumnLegacyStyle(column: Column): void; protected _renderColumnHeaderMenuEnabled(column: Column): void; protected _renderColumnState(column: Column): void; /** * Makes sure state is fully visible by adjusting width (happens if column.minWidth is < DEFAULT_MIN_WIDTH) */ protected _adjustColumnMinWidth(column: Column & { __minWidthWithoutState?: number; __widthWithoutState?: number; }): void; updateMenuBar(): void; protected _onTableColumnResized(event: TableColumnResizedEvent): void; onSortingChanged(): void; protected _onTableColumnMoved(event: TableColumnMovedEvent): void; protected _visibleColumns(): Column[]; protected _lastVisibleColumn(): Column; onOrderChanged(oldColumnOrder: Column[]): void; /** * Header menus are enabled when property is enabled on the header itself and on the column too. */ protected _isHeaderMenuEnabled(column: Column): boolean; protected _onHeaderItemClick(event: JQuery.ClickEvent): void; protected _onHeaderItemKeyDown(event: JQuery.KeyDownEvent): void; protected _doHeaderItemAction($headerItem: JQuery, toggleSort?: boolean, multiSort?: boolean): void; protected _onHeaderItemMouseDown(event: JQuery.MouseDownEvent): void; protected _onSeparatorDblclick(event: JQuery.DoubleClickEvent): void; protected _onSeparatorMouseDown(event: JQuery.MouseDownEvent): void; protected _onTableDataScroll(): void; protected _onMenuBarPropertyChange(event: PropertyChangeEvent): void; protected _onTableAddFilterRemoved(event: TableFilterAddedEvent | TableFilterRemovedEvent): void; protected _onTabbableItemFocus(event: ItemFocusEvent): void; protected _scrollToHeaderItem($item: JQuery): void; } //# sourceMappingURL=TableHeader.d.ts.map