import { EventEmitter, OnDestroy, TemplateRef } from '@angular/core';
import { OverlayTrigger } from '../tooltip/index';
import { HierarchyBarIconContext } from './interfaces/hierarchy-bar-node-icon-context.interface';
import { HierarchyBarNode } from './interfaces/hierarchy-bar-node.interface';
import { HierarchyBarMode, IHierachyBarComponent } from './interfaces/hierarchy-bar.interface';
import * as i0 from "@angular/core";
export declare class HierarchyBarComponent implements IHierachyBarComponent, OnDestroy {
    private readonly _hierarchyBar;
    /** Define which presentational mode we should display */
    mode: HierarchyBarMode;
    /** hierarchy bar as being readonly - default false */
    readonly: boolean;
    /** Define the root node of the hierarchy bar */
    set root(node: HierarchyBarNode);
    /** Define the selected node in the hierarchy bar */
    set selected(node: HierarchyBarNode);
    /** Provide a custom loading indicator */
    set loadingIndicator(loadingIndicator: TemplateRef<void>);
    /** Provide a custom overflow template */
    set overflowTemplate(overflowTemplate: TemplateRef<void>);
    /** Define the events that show the popover when interacting with the arrows */
    set popoverShowTriggers(popoverShowTriggers: OverlayTrigger[]);
    /** Define the events that hide the popover when interacting with the arrows */
    set popoverHideTriggers(popoverHideTriggers: OverlayTrigger[]);
    /** Define the aria label for the show siblings popover button */
    set showSiblingsAriaLabel(label: string);
    /** Emit when the selected node changes */
    selectedChange: EventEmitter<HierarchyBarNode>;
    /** Allow a custom icon to be specified */
    set icon(icon: TemplateRef<HierarchyBarIconContext>);
    /** Unsubscribe from all subscriptions when component is destroyed */
    private readonly _onDestroy;
    constructor();
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<HierarchyBarComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<HierarchyBarComponent, "ux-hierarchy-bar", never, { "mode": { "alias": "mode"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "root": { "alias": "root"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "loadingIndicator": { "alias": "loadingIndicator"; "required": false; }; "overflowTemplate": { "alias": "overflowTemplate"; "required": false; }; "popoverShowTriggers": { "alias": "popoverShowTriggers"; "required": false; }; "popoverHideTriggers": { "alias": "popoverHideTriggers"; "required": false; }; "showSiblingsAriaLabel": { "alias": "showSiblingsAriaLabel"; "required": false; }; }, { "selectedChange": "selectedChange"; }, ["icon"], ["[uxHierarchyBarLeftAddon]", "[uxHierarchyBarTrailingAddon]", "[uxHierarchyBarRightAddon]"], false, never>;
}
