import { ElementRef, EventEmitter, TemplateRef } from '@angular/core';
import { KeyboardSupportItemInterface } from '@fundamental-ngx/cdk/utils';
import { PopoverComponent } from '@fundamental-ngx/core/popover';
import { Subject } from 'rxjs';
import * as i0 from "@angular/core";
export declare class UserMenuListItemComponent implements KeyboardSupportItemInterface {
    /** Event emitter for keyDown event */
    keyDown: EventEmitter<KeyboardEvent>;
    /** Event emitter for isOpenChange event that controls the submenu popover body */
    readonly isOpenChange: EventEmitter<boolean>;
    /** Event emitter for showSubmenu event */
    showSubmenu: EventEmitter<TemplateRef<any> | null>;
    /** Event emitter for updateTitle event */
    updateTitle: EventEmitter<string | null>;
    /** Unique id for the menu list item. Default is provided. */
    uniqueId: import("@angular/core").InputSignal<string>;
    /** Icon name for the menu list item (optional) */
    icon: import("@angular/core").InputSignal<string | undefined>;
    /** Required text for the menu list item */
    text: import("@angular/core").InputSignal<string>;
    /** Unique id for the title. Default is provided. */
    textId: import("@angular/core").InputSignal<string>;
    /** Whether the item has a submenu */
    hasSubmenu: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
    /** Template ref for user menu list item submenu */
    submenu: import("@angular/core").InputSignal<TemplateRef<any> | null>;
    /** Whether the item is selected */
    selected: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
    /** Whether the item's submenu is open */
    isOpen: import("@angular/core").WritableSignal<boolean>;
    /** Whether the item is in mobile mode */
    mobile: import("@angular/core").WritableSignal<boolean>;
    /** Reference to the popover */
    popover: import("@angular/core").Signal<PopoverComponent | undefined>;
    /** @hidden */
    readonly focused: Subject<UserMenuListItemComponent>;
    /** Item's tabindex */
    readonly _tabIndex$: import("@angular/core").WritableSignal<number | null>;
    /** @hidden */
    readonly _elementRef: ElementRef<any>;
    /** @hidden */
    private readonly _destroyRef;
    /** @hidden */
    private readonly _zone;
    /** @hidden */
    private _changeDetectionRef;
    /** @hidden */
    focusHandler(): void;
    /** Handles submenu selection in mobile mode */
    onShowDetailsView(): void;
    /** @hidden Support for KeyboardSupportItemInterface */
    click(): void;
    /** @hidden */
    focus(): void;
    /** @hidden */
    isOpenChangeHandle(isOpen: boolean, popover: PopoverComponent): void;
    /** @hidden */
    private _onZoneStable;
    static ɵfac: i0.ɵɵFactoryDeclaration<UserMenuListItemComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<UserMenuListItemComponent, "[fd-user-menu-list-item]", never, { "uniqueId": { "alias": "uniqueId"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": true; "isSignal": true; }; "textId": { "alias": "textId"; "required": false; "isSignal": true; }; "hasSubmenu": { "alias": "hasSubmenu"; "required": false; "isSignal": true; }; "submenu": { "alias": "submenu"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; }, { "keyDown": "keyDown"; "isOpenChange": "isOpenChange"; "showSubmenu": "showSubmenu"; "updateTitle": "updateTitle"; }, never, never, true, never>;
}
