/**-----------------------------------------------------------------------------------------
* 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, AfterViewChecked, NgZone, Renderer2, TemplateRef, ViewContainerRef } from '@angular/core';
import { LocalizationService } from '@progress/kendo-angular-l10n';
import { ItemsService } from './services/items.service';
import { ActionsService } from './services/actions.service';
import { NavigationService } from './services/navigation.service';
import { HoverService } from './services/hover.service';
import { MenuEvent } from './menu-event';
import { MenuSelectEvent } from './menu-select-event';
import { ContextMenuService } from './context-menu/context-menu.service';
import { MenuBase } from './menu-base';
import * as i0 from "@angular/core";
/**
* Represents the [Kendo UI Menu component for Angular]({% slug overview_menu %}).
*
* @example
* ```ts
* _@Component({
* selector: 'my-app',
* template: `
*
*
* `
* })
* class AppComponent {
* public items: any[] = [{ text: 'item1', items: [{ text: 'item1.1' }] }, { text: 'item2', disabled: true }];
* }
* ```
*
* @remarks
* Supported children components are: {@link MenuItemComponent}.
*/
export declare class MenuComponent extends MenuBase implements OnChanges, AfterViewChecked {
private itemsService;
private hover;
private actions;
private navigation;
private localization;
private ngZone;
private renderer;
private contextService?;
/**
* Defines the container to which the popups will be appended.
*/
appendTo: ViewContainerRef;
/**
* @hidden
*/
menuItemTemplate: TemplateRef;
/**
* @hidden
*/
ariaRole: string;
/**
* @hidden
*/
menuItemLinkTemplate: TemplateRef;
/**
* Fires when a Menu item is selected ([see example](slug:events_menu)).
*/
select: EventEmitter;
/**
* Fires when a Menu item is opened ([see example](slug:events_menu)).
*/
open: EventEmitter;
/**
* Fires when a Menu item is closed ([see example](slug:events_menu)).
*/
close: EventEmitter;
/**
* @hidden
*/
get ariaOrientation(): string;
/**
* @hidden
*/
get isContextMenu(): boolean;
get direction(): boolean;
get rtl(): boolean;
/**
* @hidden
*/
get menuClasses(): string;
private closeClickSubscription;
private contextKeyDownSubscription;
constructor(itemsService: ItemsService, hover: HoverService, actions: ActionsService, navigation: NavigationService, localization: LocalizationService, ngZone: NgZone, renderer: Renderer2, contextService?: ContextMenuService);
/**
* Opens or closes the specified Menu items.
*
* @param open - A Boolean value which indicates if the items will be opened or closed.
* @param indices - One or more values which represent the hierarchical indices of the items that will be opened or closed.
*/
toggle(open: boolean, ...indices: string[]): void;
/**
* @hidden
*/
focus(index?: string): void;
ngOnChanges(changes: any): void;
ngAfterViewChecked(): void;
ngOnDestroy(): void;
private attachCloseClick;
private unsubscribeClick;
private contextKeyDown;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}