import { TranslateService } from '@ngx-translate/core';
import { Observable } from 'rxjs';
import { QdServiceNavigationAttributeMapping, QdShellServiceNavigationConfig, QdShellServiceNavigationLanguage, QdShellServiceNavigationMappedAttributes } from '../model/shell-service-navigation-config.interface';
import { QdShellEportalLanguageService } from './eportal-language.service';
import * as i0 from "@angular/core";
export declare const DEFAULT_LANGUAGE_LIST: QdShellServiceNavigationLanguage[];
/**
 * Service for mapping the `serviceNavigation` property as part of the shell configuration to the Oblique Service Navigation Web Component,
 * including translations, attributes, links, and more.
 *
 * Current API status: February 18, 2025
 * ```html
 * <ob-service-navigation-web-component
 *     environment="TEST"
 *     language-list="en,fr"
 *     default-language="en"
 *     info-contact='{"tel":"+41 026 402 13 38"}'
 *     info-links='[{"fr":"Lien de contact","en":"Contact link","links":{"fr":"https://fr.contact.com","en":"https://en.contact.com"}}]'
 *     profile-links='[{"fr":"Lien de profile 1","en":"Profile link 1","links":{"fr":"https://fr.profile.com","en":"https://en.profile.com"}},{"fr":"Lien de profile 2","en":"Profile link 2","link":"https://profile.com"}]'
 *     display-languages="true"
 *     display-message="true"
 *     display-info="true"
 *     pams-app-id="21"
 *     display-applications="true"
 *     display-profile="true"
 *     handle-logout="true"
 *     display-authentication="true"
 *     custom-buttons='[{"obliqueIconName":"smile", "badge":"1"},{"obliqueIconName":"calendar"}]'
 * />
 * ```
 */
export declare class QdShellServiceNavigationService {
    private translateService;
    private eportalLanguageService;
    config: QdShellServiceNavigationConfig;
    private _translations;
    private get languageList();
    readonly attributeMapping: QdServiceNavigationAttributeMapping;
    constructor(translateService: TranslateService, eportalLanguageService: QdShellEportalLanguageService);
    getMappedAttributes$(): Observable<QdShellServiceNavigationMappedAttributes>;
    private swapCurrentLangToTheEndOfLanguageList;
    private get currentLang();
    private mapAttributes;
    private getMappedAttribute;
    private getMappedContactInfoAttribute;
    private getMappedLinkObjects;
    private getMappedLinkTexts;
    private getMappedHref;
    private getMappedHrefs;
    private getBadge;
    private getObliqueIconName;
    private getIsVisibleInMobile;
    private getIconLink;
    private getChildLinks;
    private getDefaultAttribute;
    static ɵfac: i0.ɵɵFactoryDeclaration<QdShellServiceNavigationService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<QdShellServiceNavigationService>;
}
//# sourceMappingURL=service-navigation.service.d.ts.map