import { FocusableOption } from '@angular/cdk/a11y';
import { AfterContentInit, AfterViewInit, ElementRef, QueryList } from '@angular/core';
import { RtlService } from '@fundamental-ngx/cdk/utils';
import { IconComponent } from '@fundamental-ngx/core/icon';
import { Subject } from 'rxjs';
import { ListNavigationItemArrowDirective } from '../directives/list-navigation-item-arrow.directive';
import { ListNavigationItemTextDirective } from '../directives/list-navigation-item-text.directive';
import { ListComponentInterface } from '../list-component.interface';
import * as i0 from "@angular/core";
export declare class ListNavigationItemComponent implements AfterContentInit, AfterViewInit, FocusableOption {
    private _elementRef;
    private _rtlService;
    /** Whether or not the list item is expanded. */
    expanded: boolean;
    /** Whether or not this list item is indicated for navigation. */
    indicated: boolean;
    /** @hidden */
    _navigationItemClass: boolean;
    /** @hidden */
    _isExpandable: boolean;
    /** @hidden */
    _tabIndex: any;
    /** @hidden */
    _ariaLevel: number;
    /** @hidden */
    _listComponent: ListComponentInterface;
    /** @hidden */
    _listNavigationItemArrow: ListNavigationItemArrowDirective;
    /** @hidden */
    _iconComponent: IconComponent;
    /** @hidden */
    _text: ListNavigationItemTextDirective;
    /** @hidden */
    _childItems: QueryList<ListNavigationItemComponent>;
    /** @hidden */
    private get _ariaExpanded();
    /** @hidden */
    _condensed: import("@angular/core").WritableSignal<boolean>;
    /** @hidden */
    _expanded: boolean;
    /** @hidden */
    _innerText: string;
    /** @hidden */
    readonly _focused$: Subject<boolean>;
    /** @hidden */
    readonly _clicked$: Subject<MouseEvent>;
    /**
     * @hidden
     * false if list-item is within unexpanded list (not visible to user until list expanded). default is true
     */
    _isItemVisible: boolean;
    /** @hidden handles rtl service */
    private readonly _rtl$;
    /** @hidden */
    private readonly _renderer2;
    /** @hidden */
    constructor(_elementRef: ElementRef, _rtlService: RtlService);
    /** @hidden */
    onItemClick(event: MouseEvent): void;
    /** @hidden */
    keyDownHandler(event: KeyboardEvent): void;
    /** @hidden */
    protected onFocus(event: FocusEvent): void;
    /** @hidden */
    ngAfterContentInit(): void;
    /** @hidden */
    ngAfterViewInit(): void;
    /** @hidden
     * set the _isItemVisible of sublist items to true if this(containing) list is expanded.
     */
    _setIsItemVisible(value: boolean): void;
    /** @hidden */
    _childIndicatedAndCollapsed(): boolean;
    /** support for FocusKeyManager for arrow key navigation */
    focus(): void;
    /** support for FocusKeyManager for arrow key navigation */
    click(): void;
    /** @hidden */
    private _handleExpandedChanges;
    static ɵfac: i0.ɵɵFactoryDeclaration<ListNavigationItemComponent, [null, { optional: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ListNavigationItemComponent, "[fd-list-navigation-item], [fdListNavigaitonItem]", never, { "expanded": { "alias": "expanded"; "required": false; }; "indicated": { "alias": "indicated"; "required": false; }; }, {}, ["_listComponent", "_listNavigationItemArrow", "_iconComponent", "_text", "_childItems"], ["*", "[fd-list]"], true, never>;
}
