import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, PipeTransform, Renderer2 } from '@angular/core'; import { Router } from '@angular/router'; import { MenuElement } from './menu-element'; import { BzMenuService } from './menu.service'; import { Icons } from './menu.interface'; import { SafeAny, StringBoolean } from '../../utilities/type/type'; export declare class BzMenuComponent implements AfterViewInit { private _router; private _elRef; private _menuService; private _renderer2; private _cd; authorizedMenuElement: MenuElement[]; menuElement: MenuElement[]; PADDING_LEFT: number; activeId: string | undefined; activeElement: MenuElement | undefined; noIconValue: boolean; private _subscriptionArray; private _parentList; private _autoCollapseValue; private _expandedItems; private _noCollapsed; private _privileges; set menuElements(value: MenuElement[]); set privileges(value: string[]); set autoCollapse(value: StringBoolean); set expandedItems(value: StringBoolean); set noCollapsed(value: StringBoolean); set noIcon(value: StringBoolean); icons: Icons; onItemChange: EventEmitter; onItemClick: EventEmitter; /** * @method constructor */ constructor(_router: Router, _elRef: ElementRef, _menuService: BzMenuService, _renderer2: Renderer2, _cd: ChangeDetectorRef); /** * @method ngAfterViewInit */ ngAfterViewInit(): void; /** * Set menu element. * * @author Federico Gambardella */ private _setMenuElements; /** * Get element and set active class on it. * * @author Federico Gambardella * @param id */ private _getElementAndSetActiveClass; /** * Get active element of menu by id store in session. * * @author Federico Gambardella * @param activeElementId */ private _getActiveElmentbyId; /** * Open active element and its paraents at start. * * @author Federico Gambardella * @param id */ private _openActiveElementMenu; /** * Check if a menuElement is authorized * * @param menuElement */ private _isMenuElementAuthorized; /** * Return an array of authorized elements from a given array of menuElement * * @author Federico Gambardella * @param elements */ private _getAuthorizedElements; /** * Set padding left if it is a child. * * @author Federico Gambardella * @param authorizedMenuElement * @param parent * @param elementId * @returns */ setPaddingLeftChild(authorizedMenuElement: MenuElement, parent: MenuElement, elementId: number): SafeAny; /** * Set Padding Left for the menu item. * * @author Federico Gambardella * @param element */ setPaddingLeft(element: MenuElement): string | undefined; /** * Check menuElement has a path. * * @author Federico Gambardella * @param element */ toggleItemOrNavigate(element: MenuElement): void; /** * Close all menu item except the clicked one. * * @author Federico Gambardella * @param {MenuElement} element */ private _closeItemsNoClickedOne; /** * Open all menu items. * * @author Federico Gambardella * @param items */ private _openAllMenuItem; /** * Update authorized element. * * @author Federico Gambardella * @param {MenuElement[]} value */ private _updateAuthorizedElement; /** * Manage active menu element. * * @author Federico Gambardella * @param element */ private _manageActiveElement; /** * Collapse parent and all his children. * * @author Federico Gambardella * @param htmlElement */ private _collapse; /** * Collapse Item if it was the active item or its parent * at start. * * @author Federico Gambardella * @param itemElements * @param arrayId */ private _collapseItemAtStart; /** * Set active class on element. * * @author Federico Gambardella * @param htmlElement */ private _setActiveClassOnElement; /** * Get collapse icons. * * @author Federico Gambardella * @param element */ getCollapseIcon(element: MenuElement): string; /** * Collapse all children. * * @author Federico Gambardella * @param elements */ private _forceCollapse; /** * Set active class on route change. * * @author Federico Gambardella * @return {void} */ private _setActiveClassOnRouteChange; /** * Set active menu item. * * @author Federico Gambardella * @return {void} */ private _setActiveMenuItem; /** * Set active class. * * @author Federico Gambardella * @param {string} newRoute * @param {MenuElement} listArray * @param {ActiveObj} activeObj * @return {void} */ private _setActiveClass; /** * Set active condition. * * @author Federico Gambardella * @param {MenuElement} item * @param {string} newRoute */ private _setActiveCondition; /** * Store id of element of menu active in sessionStorage. * * @author Federico Gambardella * @param activeId */ private _storeActiveIdInSessionStorage; /** * @method ngOnDestroy */ ngOnDestroy(): void; } export declare class ResolveMenuIcon implements PipeTransform { transform(value: any, noIcon: boolean): string; /** * Resolve menu Icon. * * @author Federico Gambardella * @param object */ private _resolveMenuIcon; } export declare class ToggleMenuItem implements PipeTransform { transform(value: any): string; /** * Toggle accordion * * @author Federico Gambardella * @param element */ private _toggle; } export declare class HasChildrenMenuElement implements PipeTransform { private menuService; constructor(menuService: BzMenuService); transform(value: any): boolean; }