import { AfterViewInit, ElementRef, EventEmitter } from '@angular/core';
import { Router } from '@angular/router';
import { StHeaderMenuOption, StHeaderSelection } from './st-header.model';
import { StWindowRefService } from '../utils/window-service';
/**
 * @description {Component} [Header]
 *
 * The header component is a main component of an application.
 * This component must be on top and scroll with page, when scroll is in a calculated position,
 * the header shrinks and fix to top.
 *
 * @model
 *
 *   [Header menu options] {./st-header.model.ts#StHeaderMenuOption}
 *   [Submenu options] {./st-header.model.ts#StHeaderSubMenuOption}
 *
 * @example
 *
 * {html}
 *
 * ```
 * <st-header [menu]="headerMenuSchema" id="header">
 *     <div class="sth-header-logo">
 *        <!-- Logo as svg, image, etc. -->
 *     </div>
 *     <div class="sth-header-user-menu">
 *        <!-- Right header menu, with user menu, notifications, etc -->
 *     </div>
 *
 *  </st-header>
 * ```
 */
export declare class StHeaderComponent implements AfterViewInit {
    private _router;
    private _windowServiceRef;
    private _el;
    /** @Input {StHeaderMenuOption[]} [menu] Array with menu option to show */
    menu: StHeaderMenuOption[];
    /** @Input {StHeaderMenuOption[]} [menu] Array with menu option to show */
    navigateByDefault: boolean;
    /** @Output {string} [selectMenu] Notify any menu option selection */
    selectMenu: EventEmitter<string>;
    headerDivElement: ElementRef;
    headerFixPart: ElementRef;
    userMenuContainer: ElementRef;
    showMenuNames: boolean;
    private _headerSize;
    constructor(_router: Router, _windowServiceRef: StWindowRefService, _el: ElementRef);
    ngAfterViewInit(): void;
    onResize(): void;
    readonly id: string;
    onSelectMenu(selected: StHeaderSelection): void;
    readonly menuContainerId: string;
    readonly userMenuElementWidth: number;
    private checkMenuLabelVisibility;
}
