/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { ElementRef, NgZone, Renderer2 } from '@angular/core';
import * as i0 from "@angular/core";
/**
* Provides keyboard navigation support for TreeList column menu items.
* Use this directive to manage focus and tab order for custom column menu items ([see example](slug:columnmenu_treelist#customizing-the-content)).
*
* @example
* ```html
*
*
*
*
* ```
* @remarks
* Applied to:
* {@link ColumnMenuChooserComponent},
* {@link ColumnMenuFilterComponent},
* {@link ColumnMenuSortComponent},
* {@link ColumnMenuLockComponent},
* {@link ColumnMenuComponent},
* {@link ColumnMenuItemComponent},
* {@link ColumnMenuAutoSizeAllColumnsComponent},
* {@link ColumnMenuAutoSizeColumnComponent}.
*/
export declare class ColumnMenuItemDirective {
hostElement: ElementRef;
private renderer;
private ngZone;
/**
* Provides a reference to the TreeList column menu item. Required for built-in keyboard navigation.
*/
menuItemComponent: any;
firstFocusableElement: HTMLElement;
lastFocusableElement: HTMLElement;
/**
* @hidden
*/
set isFirst(value: boolean);
/**
* @hidden
*/
get isFirst(): boolean;
/**
* @hidden
*/
set isLast(value: boolean);
/**
* @hidden
*/
get isLast(): boolean;
private _isFirst;
private _isLast;
private columnMenuItems;
private subs;
constructor(hostElement: ElementRef, renderer: Renderer2, ngZone: NgZone);
ngAfterViewInit(): void;
ngOnDestroy(): void;
private onTab;
private getLastColumnMenuItem;
private isExpandableItem;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}