import { ChangeDetectorRef, EventEmitter, OnDestroy, OnInit, Renderer2 } from '@angular/core';
import { Router } from '@angular/router';
import { WindowService } from '@ironsource/fusion-ui/services/window';
import { MenuItem, MenuItemAdditionalData, MenuService } from '@ironsource/fusion-ui/components/menu/common/base';
import * as i0 from "@angular/core";
export declare class MenuListComponent implements OnDestroy, OnInit {
    private changeDetectorRef;
    private menuService;
    private router;
    private renderer;
    private windowService;
    menuItems: MenuItem[];
    menuAdditionalItemClicked: EventEmitter<MenuItemAdditionalData>;
    menuItemClicked: EventEmitter<MenuItem>;
    routeChanged: EventEmitter<void>;
    private currItemLi;
    private lastItemLi;
    private changeMenuSelectedItem;
    private lastSelectedItem;
    private leaveMenuTimeout;
    private onDestroy$;
    constructor(changeDetectorRef: ChangeDetectorRef, menuService: MenuService, router: Router, renderer: Renderer2, windowService: WindowService);
    ngOnInit(): void;
    initNativeStateChangeEvent(window: Window): void;
    selectItem(item: MenuItem, itemLi: HTMLElement): void;
    additionalItemClick(event: any, item: MenuItemAdditionalData): void;
    isSelected(item: MenuItem): boolean;
    isOpened(item: MenuItem): boolean;
    /**
     * When clicking a parent element on the main menu, this function is triggered and checks if it needs to open/close any item
     */
    itemClicked(itemLi: HTMLElement): void;
    /**
     * If the menu was closed but no other item was clicked, this function assigns the last item as the open one
     */
    reopenClosedMenuItem(): void;
    mouseOverMenu(): void;
    mouseEnterMenu(): void;
    redirectToPage(path: string, options?: any): Promise<boolean>;
    ngOnDestroy(): void;
    onWindowNavigationSync(event: CustomEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<MenuListComponent, [null, null, { optional: true; }, null, null]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MenuListComponent, "fusion-menu-list", never, { "menuItems": { "alias": "menuItems"; "required": false; }; }, { "menuAdditionalItemClicked": "menuAdditionalItemClicked"; "menuItemClicked": "menuItemClicked"; "routeChanged": "routeChanged"; }, never, never, false, never>;
}
