import { EventEmitter } from '../../../stencil-public-runtime';
import { FetchHelper } from '../../../globals/FetchHelper';
import { LanguageSelector, LanguageSelectorItem, LoginDialog, MenuItem, MenuSiteDefinition, PromotedMenuItem, SiteHeaderI18N, SiteHeaderSearch, SiteSelector } from './pn-marketweb-siteheader-types';
/**
 * @slot topleft - Text
 * @slot logo - Text
 * @slot toprightstart - Text
 * @slot toprightend - Text
 * @slot siteheader-menu-top-button - Text
 * @slot menu-footer-cta - Text
 * @slot header-bottom-button - Text
 */
export declare class PnMarketwebSiteheader {
    hostElement: Element;
    endpointPath: string;
    /** Specifies which market we want to show (se,dk,fi,no,com) */
    market: string;
    /** Specifies which language we want to show (sv,da,fi,no,en) */
    language: string;
    /** Specifies the current site id (guid) */
    siteid: string;
    /** Specifies which environment we're fetching data from. (production, preproduction, integration, localhost) */
    environment: string;
    /** Access token passed from backend */
    userToken: string;
    /** User Fullname */
    userFullname: string;
    /** User Logged in state from the backend */
    userLoggedin: boolean;
    /** Specifies which endpoint domain we should load from */
    endpoint: string;
    /** Hides the site selector if set to true*/
    hideSiteSelector: boolean;
    /** Hides the "home" menu item in the navigation if set to true*/
    hideHomeMenuItem: boolean;
    /** Hides the language selector if set to true*/
    hideLanguageSelector: boolean;
    /** Hides the search form if set to true*/
    hideSearch: boolean;
    /** Hides the login if set to true*/
    hideLogin: boolean;
    /** If this is selected we will show the new profile selection dropdown instead of the login version */
    showProfileSelection: boolean;
    /** if this is selected we will show the unified-login button aswell as a new look for dropdown menu */
    showUnifiedLogin: boolean;
    /** Adjusts the menus URLs */
    siteDomainInUrls: boolean;
    /** Autocomplete endpoint */
    AutocompleteEndpoint: string;
    /** Forward session to backend */
    sessionForward: boolean;
    /** If the component should use cached requests */
    cache: boolean;
    /** Header search placeholder */
    searchPlaceholder: string;
    /** Event based only language switch */
    spaMode: boolean;
    /** Continiously check if a user is logged in **/
    checkUserLoggedInStateInterval: number;
    useMarketwebLogin: boolean;
    pageId?: string;
    i18n: SiteHeaderI18N;
    gotData: boolean;
    fetchingData: boolean;
    homePageLink: string;
    menuItems: MenuItem[];
    siteDefinition: MenuSiteDefinition;
    search: SiteHeaderSearch;
    siteSelector: SiteSelector;
    languageSelector: LanguageSelector;
    languageOptions: LanguageSelectorItem[];
    loginDialog: LoginDialog;
    minimizeSearch: boolean;
    loggedIn: boolean;
    fetchHelper: FetchHelper;
    changeLanguage: EventEmitter;
    changeMarket: EventEmitter;
    componentWillLoad(): void;
    setInitialValues(href?: string): Promise<void>;
    init(): Promise<void>;
    setTranslations(): void;
    onLanguageSelectorChange(e: any): void;
    onLanguageChange(): void;
    onMarketChange(): void;
    fetchData(): Promise<void>;
    getLanguageVersionUrl(item: LanguageSelectorItem): string;
    setStateFromData(data: any): Promise<void>;
    adjustMenuItemUrls(item: MenuItem): MenuItem;
    adjustHref(href: string): string;
    removeDoubleLanguage(url: string): string;
    setLanguageOptions(): void;
    spaModeAdjustments(): Promise<void>;
    onLoginStateChange(e: any): void;
    promotedItemId(item: PromotedMenuItem): string;
    handleResize(): void;
    checkMenuOverflow(): void;
    adjustSiteSelectorUrl(href: string): any;
    private getFallbackValue;
    render(): any;
}
