import { AfterViewInit, ChangeDetectorRef, ElementRef, OnChanges, OnDestroy, OnInit, QueryList, SimpleChanges } from '@angular/core';
import { Subscription } from 'rxjs';
import { PoLanguageService } from '../../services';
import { PoMenuComponent, PoMenuGlobalService, PoMenuHeaderTemplateDirective } from '../po-menu';
import { PoHeaderActions } from './interfaces/po-header-actions.interface';
import { PoHeaderBaseComponent } from './po-header-base.component';
import { PoHeaderMenuItemComponent } from './po-header-menu-item/po-header-menu-item.component';
/**
* @docsExtends PoHeaderBaseComponent
*
* @example
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
export declare class PoHeaderComponent extends PoHeaderBaseComponent implements AfterViewInit, OnChanges, OnInit, OnDestroy {
private readonly cd;
private readonly elRef;
private readonly menuGlobalService;
afterViewInitWascalled: boolean;
showMenu: boolean;
visibleMenuItems: Array;
overflowItems: Array;
showOverflow: boolean;
resizeSubscription: Subscription;
private menusSubscription;
private applicationMenuSubscription;
private menuIdSubscription;
private menuonChangesSubscription;
private removedMenuSubscription;
previousMenuComponentId: any;
private resizeSub;
menuExternal: any[];
existMenuExternal: boolean;
applicationMenu: PoMenuComponent;
private readonly id;
private currentWidth;
private previousMenusItems;
buttonFirstAction: ElementRef;
buttonFirstActionRef: ElementRef;
navElement: ElementRef;
menuWrapperBrand: ElementRef;
menuWrapperTools: ElementRef;
overflowButton: ElementRef;
overflowButtonComponentEl: PoHeaderMenuItemComponent;
menuSubItems: QueryList>;
menuHeaderTemplate: PoMenuHeaderTemplateDirective;
set menuComponent(menu: PoMenuComponent);
constructor(cd: ChangeDetectorRef, elRef: ElementRef, menuGlobalService: PoMenuGlobalService, poLanguageService: PoLanguageService);
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
toggleOverflowDropdown(): void;
updateMenu(): void;
updateButtonMore(): void;
onClickMenu(): void;
onCloseMenu(): void;
handleSmallSreen(): void;
handleLargeSreen(): void;
private combineItems;
private combineItemsExternal;
onSelected({ item, focus }: {
item: PoHeaderActions;
focus: boolean;
}): void;
}