/**
 * @packageDocumentation
 * @module common-layout
 */
import { NavItemConfig } from '@alauda/ui';
import { OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { Observable } from 'rxjs';
import { K8sPermissionService } from '../../permission/public-api';
import { ProductEntry, ProductEntryName } from '../context.service';
import { CommonLayoutStoreService } from '../store.service';
interface PlatformCenterNav extends NavItemConfig {
    allowed?: boolean;
    description: string;
}
export declare class ProductSelectComponent implements OnInit {
    private readonly store;
    private readonly idTokenKey;
    private readonly router;
    private readonly k8sPermission;
    platformPath: string;
    current?: ProductEntryName;
    productIconMap: Record<string, {
        default: string;
        actived: string;
    }>;
    portalMenu: {
        name: string;
        displayName: string;
        url: string;
    };
    products$: Observable<ProductEntry[]>;
    platformMenus$: Observable<PlatformCenterNav[]>;
    disabled$: Observable<boolean>;
    isPortal: boolean;
    constructor(store: CommonLayoutStoreService, idTokenKey: string, router: Router, k8sPermission: K8sPermissionService);
    ngOnInit(): void;
    jump(entrypoint: string, ssoEnabled: boolean): void;
    navigateToPortal(event: MouseEvent): void;
    navigateToProduct(item: ProductEntry, event: MouseEvent): void;
    trackFn: (_: number, item: ProductEntry) => string;
    hasPermission(menus: PlatformCenterNav[]): boolean;
    isPlatformActive: (item: NavItemConfig) => boolean;
    navigateToPlatform(href: string, event: MouseEvent): void;
    isProductActived(item: ProductEntry, current: ProductEntryName): boolean;
}
export {};
