import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
import { WindowService } from '@ironsource/fusion-ui/services/window';
import { NavigationMenuComponent, PrimaryMenuItem } from '@ironsource/fusion-ui/components/navigation-menu/v4';
import { LayoutUser } from '@ironsource/fusion-ui/entities';
import { HeaderContent, LayoutConfiguration, TeleportWrapperElement } from './layout.entities';
import { MenuItem } from '@ironsource/fusion-ui/components/menu/common/base';
import { Router } from '@angular/router';
import * as i0 from "@angular/core";
export declare class LayoutComponent implements OnInit, OnDestroy {
    private windowRef;
    private router;
    set configuration(value: LayoutConfiguration);
    set headerContent(value: HeaderContent);
    get headerContent(): HeaderContent;
    set teleportElements(value: TeleportWrapperElement[]);
    get teleportElements(): TeleportWrapperElement[];
    pageBackButtonClicked: EventEmitter<MouseEvent>;
    menuItemClick: EventEmitter<MenuItem>;
    /** @internal
     * Used in additional from selected menu item by route
     * */
    menuItemSelectedByRoute: EventEmitter<MenuItem>;
    navigationMenu: NavigationMenuComponent;
    /** @internal */
    navigationMenu$: BehaviorSubject<PrimaryMenuItem[]>;
    /** @internal */
    layoutUser: LayoutUser;
    private onDestroy$;
    private isMenuToggled;
    private _headerContent;
    private _teleportElements;
    constructor(windowRef: WindowService, router: Router);
    ngOnInit(): void;
    ngOnDestroy(): void;
    private initNavigationEvents;
    private isActiveMenuItem;
    private checkBySubRoutes;
    private toggleMenu;
    private setSelectedMenuByPath;
    static ɵfac: i0.ɵɵFactoryDeclaration<LayoutComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<LayoutComponent, "fusion-layout", never, { "configuration": { "alias": "configuration"; "required": false; }; "headerContent": { "alias": "headerContent"; "required": false; }; "teleportElements": { "alias": "teleportElements"; "required": false; }; }, { "pageBackButtonClicked": "pageBackButtonClicked"; "menuItemClick": "menuItemClick"; "menuItemSelectedByRoute": "menuItemSelectedByRoute"; }, never, ["*"], true, never>;
}
