import { EventEmitter } from '@angular/core';
import * as i0 from "@angular/core";
export interface SubMenuItem {
    id: number;
    name: string;
    toggle?: boolean;
    iconName?: string;
    subItems?: SubMenuItem[];
}
export interface MenuItem {
    id: number;
    name: string;
    toggle?: boolean;
    iconName?: string;
    subItems?: SubMenuItem[];
}
export declare class MenuComponent {
    menuItems: MenuItem[];
    closeOnOutsideClick: boolean;
    itemSelected: EventEmitter<SubMenuItem>;
    menuToggle: EventEmitter<boolean>;
    showMenuItems: boolean;
    navigatedHistory: SubMenuItem[];
    toggleMenu(): void;
    resetMenuState(): void;
    onDocumentClick(event: MouseEvent): void;
    expandItem(item: MenuItem): void;
    navigateToSubMenu(subItem: SubMenuItem): void;
    goBack(): void;
    selectSubItem(item: SubMenuItem): void;
    get currentNavigatedItem(): SubMenuItem | null;
    static ɵfac: i0.ɵɵFactoryDeclaration<MenuComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MenuComponent, "cfc-menu", never, { "menuItems": { "alias": "menuItems"; "required": false; }; "closeOnOutsideClick": { "alias": "closeOnOutsideClick"; "required": false; }; }, { "itemSelected": "itemSelected"; "menuToggle": "menuToggle"; }, never, never, false, never>;
}
