/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { EventEmitter, OnChanges, AfterViewInit, NgZone, ElementRef } from '@angular/core';
import { ColumnMenuItemContentTemplateDirective } from './column-menu-item-content-template.directive';
import { SVGIcon } from '@progress/kendo-svg-icons';
import { ColumnMenuService } from './column-menu.service';
import { ContextService } from '../common/provider.service';
import { AdaptiveGridService } from '../common/adaptiveness.service';
import { ColumnComponent } from '../columns/column.component';
import { SortDescriptor } from '@progress/kendo-data-query';
import * as i0 from "@angular/core";
/**
* Represents an item that you can place inside a
* [`ColumnMenuTemplate`]({% slug api_grid_columnmenutemplatedirective %}) directive.
*
* @example
* ```html
*
*
*
*
*
* ```
* @example
* ```html
*
*
* kendo-grid-columnmenu-item text="Fit column">
*
*
* ```
*/
export declare class ColumnMenuItemComponent implements AfterViewInit, OnChanges {
private ngZone;
ctx: ContextService;
adaptiveGridService: AdaptiveGridService;
element: ElementRef;
/**
* @hidden
*/
sortAscSmallIcon: SVGIcon;
/**
* @hidden
*/
sortDescSmallIcon: SVGIcon;
/**
* Fires when the item is clicked.
*/
itemClick: EventEmitter;
/**
* Fires when the content expands.
*/
expand: EventEmitter;
/**
* Fires when the content collapses.
*/
collapse: EventEmitter;
/**
* Specifies the name of the font icon to render within the item.
*/
icon: string;
/**
* Specifies the SVG icon to render within the item.
*/
svgIcon: SVGIcon;
/**
* @hidden
*/
indicatorIcon: boolean;
/**
* Specifies the item text.
*/
text: string;
/**
* Specifies if the item is selected.
*/
selected: boolean;
/**
* Specifies if the item is disabled.
*/
disabled: boolean;
/**
* Specifies if the item is expanded.
*/
expanded: boolean;
/**
* @hidden
*/
focused: boolean;
/**
* Represents the [ColumnMenuService]({% slug api_grid_columnmenuservice %}) class.
* Required to include the item in the column menu keyboard navigation sequence.
*/
service: ColumnMenuService;
/**
* @hidden
*/
column: ColumnComponent;
contentTemplate: ColumnMenuItemContentTemplateDirective;
contentState: string;
contentId: string;
chevronUpIcon: SVGIcon;
chevronDownIcon: SVGIcon;
chevronRightIcon: SVGIcon;
filterIcon: SVGIcon;
/**
* @hidden
*/
get hasFilters(): boolean;
get expandedIcon(): string;
get expandedSvgIcon(): SVGIcon;
constructor(ngZone: NgZone, ctx: ContextService, adaptiveGridService: AdaptiveGridService, element: ElementRef);
ngAfterViewInit(): void;
ngOnChanges(changes: any): void;
/**
* @hidden
*/
sortDescriptor(field: string): SortDescriptor;
/**
* @hidden
*/
showSortNumbering(column: ColumnComponent): boolean;
/**
* @hidden
*/
sortOrder(field: string): number;
/**
* @hidden
*/
onClick(e: any): void;
private updateContentState;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}