import { EventEmitter, AfterViewInit, OnDestroy, ElementRef, OnChanges, SimpleChanges } from '@angular/core'; import * as i0 from "@angular/core"; export declare class ElementListComponent implements AfterViewInit, OnDestroy, OnChanges { scrollContainer?: ElementRef; /** Array of items to display */ items: any[]; /** Key to access the title property from each item (default: 'title') */ titleKey: string; /** Key to access the selector property from each item (default: 'selector') */ selectorKey: string; /** Key to access the labels array from each item (default: 'labels') */ labelsKey: string; /** Key on each item for the screen name object (e.g. 'screenNameObj'); its 'name' property is shown below the selector */ screenNameObjectKey: string; /** Maximum height for the scrollable container (default: '200px') */ maxHeight: string; /** Currently selected item to highlight in the list (same reference or matching id/title+selector) */ selectedItem: any; /** Whether more items can be loaded */ hasMore: boolean; /** Emitted when an item is clicked */ itemClick: EventEmitter; /** Emitted when user scrolls near the bottom and more items should be loaded */ loadMore: EventEmitter; private scrollObserver?; /** Skip the first intersection callback (fires immediately when observe() is called) to prevent duplicate API calls on load */ private skipNextIntersection; /** * Get the value from an item using the specified key */ getItemValue(item: any, key: string): any; /** * Get screen name from item (screenNameObj.name or screenName string) for display below selector */ getScreenName(item: any): string | null; /** * Handle item click */ onItemClick(item: any): void; /** * Whether the given item is the selected one (for highlighting). */ isSelected(item: any): boolean; ngAfterViewInit(): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; private setupScrollObserver; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }