import { FocusMonitor, FocusOrigin } from '@angular/cdk/a11y'; import { AfterViewInit, ElementRef, OnDestroy } from '@angular/core'; import { IFocusableOption } from '@koobiq/cdk/a11y'; import { KbqComponentColors, KbqTitleTextRef } from '@koobiq/components/core'; import { KbqIcon } from '@koobiq/components/icon'; import { Subject } from 'rxjs'; import { KbqDropdownPanel } from './dropdown.types'; import * as i0 from "@angular/core"; /** * This directive is intended to be used inside an kbq-dropdown tag. * It exists mostly to set the role attribute. */ export declare class KbqDropdownItem implements KbqTitleTextRef, IFocusableOption, AfterViewInit, OnDestroy { private elementRef; private focusMonitor; parentDropdownPanel?: KbqDropdownPanel | undefined; textElement: ElementRef; icon: KbqIcon; get disabled(): boolean; set disabled(value: boolean); private _disabled; /** Stream that emits when the dropdown item is hovered. */ readonly hovered: Subject; /** Stream that emits when the menu item is focused. */ readonly focused: Subject; /** Whether the dropdown item is highlighted. */ highlighted: boolean; /** Whether the dropdown item acts as a trigger for a nested dropdown. */ isNested: boolean; /** @docs-private */ protected readonly componentColors: typeof KbqComponentColors; constructor(elementRef: ElementRef, focusMonitor: FocusMonitor, parentDropdownPanel?: KbqDropdownPanel | undefined); ngAfterViewInit(): void; ngOnDestroy(): void; resetStyles(): void; /** Focuses the dropdown item. */ focus(origin?: FocusOrigin, options?: FocusOptions): void; /** Returns the host DOM element. */ getHostElement(): HTMLElement; /** Used to set the `tabindex`. */ getTabIndex(): string; /** Prevents the default element actions if it is disabled. */ checkDisabled(event: Event): void; /** Emits to the hover stream. */ handleMouseEnter(): void; /** Gets the label to be used when determining whether the option should be focused. */ getLabel(): string; haltDisabledEvents(event: Event): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_disabled: unknown; }