/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { ChangeDetectorRef, ElementRef, NgZone, Renderer2 } from '@angular/core';
import { ContextService } from '../common/provider.service';
import * as i0 from "@angular/core";
/**
* Represents a directive that manages keyboard navigation for a column menu item ([see example](slug:columnmenu_grid#customizing-the-content)).
*
* @example
* ```html
*
*
*
* ```
* @remarks
* Applied to:
* {@link ColumnMenuChooserComponent},
* {@link ColumnMenuFilterComponent},
* {@link ColumnMenuSortComponent},
* {@link ColumnMenuLockComponent},
* {@link ColumnMenuStickyComponent},
* {@link ColumnMenuComponent},
* {@link ColumnMenuItemComponent},
* {@link ColumnMenuPositionComponent},
* {@link ColumnMenuAutoSizeAllColumnsComponent},
* {@link ColumnMenuAutoSizeColumnComponent}.
*/
export declare class ColumnMenuItemDirective {
hostElement: ElementRef;
private renderer;
private ngZone;
private cdr;
private ctx;
/**
* Reference to the Grid column menu item. Required when you want to include the item in the built-in keyboard navigation.
*/
menuItemComponent: any;
/**
* Holds the first focusable element.
*/
firstFocusableElement: HTMLElement;
/**
* Holds the last focusable element.
*/
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, cdr: ChangeDetectorRef, ctx: ContextService);
ngAfterViewInit(): void;
ngOnDestroy(): void;
private onTab;
private getLastColumnMenuItem;
private isExpandableItem;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}