import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnInit, QueryList, SimpleChanges } from "@angular/core";
import { MatIconRegistry } from "@angular/material/icon";
import { DomSanitizer } from "@angular/platform-browser";
import { Subject } from "rxjs";
import { TranslateLibraryService } from "../../services/translation-registry.service";
import { ItemIconType } from "../related/common/item-icon-type.enum";
import { QMSBreadcrumbItemDirective } from "./breadcrumb-item.directive";
import { BreadcrumbType } from "./enum/breadcrumb-type";
import { BreadcrumbNode } from "./model/breadcrumb-node.model";
import * as i0 from "@angular/core";
export declare class QMSBreadcrumb implements OnInit, AfterViewInit {
    private ele;
    private iconRegistry;
    private cdRef;
    private sanitizer;
    trans: TranslateLibraryService;
    nodes: BreadcrumbNode[];
    type: BreadcrumbType.normal | BreadcrumbType.table | BreadcrumbType.mobile;
    maxLine: number;
    numDisplayItem: number;
    onlyItem: boolean;
    disabledLastItem: boolean;
    onItemClick: EventEmitter<any>;
    breadCrumbNodes: QueryList<QMSBreadcrumbItemDirective>;
    isOverflow: boolean;
    dropdownNodes: BreadcrumbNode[];
    homeNode: BreadcrumbNode;
    previousNode: BreadcrumbNode;
    itemNodes: BreadcrumbNode[];
    sideNavNodes: BreadcrumbNode[];
    itemSpace: number;
    itemIconType: any;
    isMobileType: boolean;
    LANG: any;
    ngUnsubscribe: Subject<void>;
    constructor(ele: ElementRef, iconRegistry: MatIconRegistry, cdRef: ChangeDetectorRef, sanitizer: DomSanitizer, trans: TranslateLibraryService);
    ngOnChanges(changes: SimpleChanges): void;
    ngOnInit(): void;
    ngOnDestroy(): void;
    ngAfterViewInit(): void;
    checkOverflow(width: number): void;
    initBreadCrumb(): void;
    buildBreadcrumb(): void;
    getItemIconType(treeConfig: BreadcrumbNode): ItemIconType;
    getImagePath(node: BreadcrumbNode): string;
    onKeyPressed(event: any): void;
    onItemSelect(item: BreadcrumbNode, isLastItem?: boolean): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<QMSBreadcrumb, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<QMSBreadcrumb, "qms-breadcrumb", never, { "nodes": { "alias": "nodes"; "required": false; }; "type": { "alias": "type"; "required": false; }; "maxLine": { "alias": "maxLine"; "required": false; }; "numDisplayItem": { "alias": "numDisplayItem"; "required": false; }; "onlyItem": { "alias": "onlyItem"; "required": false; }; "disabledLastItem": { "alias": "disabledLastItem"; "required": false; }; }, { "onItemClick": "onItemClick"; }, never, never, false, never>;
}
