import { PktElementWithSlot } from '../../base-elements/element-with-slot';
import { PropertyValues, TemplateResult } from 'lit';
import { User, Representing, UserMenuItem, THeaderMenu, TLogOutButtonPlacement, THeaderPosition, THeaderScrollBehavior, TSlotMenuVariant, IPktHeader, Booleanish } from './types';
export declare class PktHeaderService extends PktElementWithSlot<IPktHeader> implements IPktHeader {
    serviceName?: string;
    serviceLink?: string;
    logoLink?: string;
    searchPlaceholder: string;
    searchValue: string;
    mobileBreakpoint: number;
    tabletBreakpoint: number;
    openedMenu: THeaderMenu;
    logOutButtonPlacement: TLogOutButtonPlacement;
    position: THeaderPosition;
    scrollBehavior: THeaderScrollBehavior;
    slotMenuVariant: TSlotMenuVariant;
    slotMenuText: string;
    hideLogo: Booleanish;
    compact: Booleanish;
    showSearch: Booleanish;
    canChangeRepresentation: Booleanish;
    hasLogOut: Booleanish;
    user?: User;
    userMenu?: UserMenuItem[];
    representing?: Representing;
    private isMobile;
    private isTablet;
    private openMenu;
    private isHidden;
    private componentWidth;
    private alignSlotRight;
    private alignSearchRight;
    private headerRef;
    private userContainerRef;
    private slotContainerRef;
    private searchContainerRef;
    private slotContentRef;
    private searchMenuRef;
    private resizeObserver?;
    private lastScrollPosition;
    private savedScrollY;
    private lastFocusedElement;
    private shouldRestoreFocus;
    connectedCallback(): void;
    disconnectedCallback(): void;
    firstUpdated(): void;
    updated(changedProperties: PropertyValues): void;
    private setupResizeObserver;
    private updateIsMobile;
    private updateIsTablet;
    private updateScrollLock;
    private lockScroll;
    private unlockScroll;
    private setupScrollListener;
    private handleScroll;
    private handleClickOutside;
    private handleFocusOut;
    private handleEscapeKey;
    private restoreFocus;
    private checkDropdownAlignment;
    private handleMenuToggle;
    private handleLogoClick;
    private handleServiceClick;
    private handleLogout;
    private handleSearch;
    private handleSearchChange;
    private handleSearchInputChange;
    private handleSearchKeyDown;
    private get formattedLastLoggedIn();
    private get isFixed();
    private get shouldHideOnScroll();
    private get showLogoutInHeader();
    private get showLogoutInUserMenu();
    private renderLogo;
    private renderServiceName;
    private renderSlotContainer;
    private renderSearch;
    private renderUserButton;
    private renderHeader;
    render(): TemplateResult<1>;
}
declare global {
    interface HTMLElementTagNameMap {
        'pkt-header-service': PktHeaderService;
    }
}
