import { OnInit, OnDestroy, EventEmitter } from '@angular/core'; import { FormControl } from '@angular/forms'; import { ApiVisa } from 'blg-akaun-ts-lib'; import { ReplaySubject } from 'rxjs'; import { SubSink } from 'subsink2'; import { IDropDownOptions } from '../models/drop-down-option.model'; export declare abstract class DropDownComponent implements OnInit, OnDestroy { apiVisa: ApiVisa; required: boolean; label: string; entity: FormControl; entityChange: EventEmitter; entitySelected: EventEmitter; protected subs: SubSink; options: IDropDownOptions; serverSideFiltering: FormControl; serverSideSearching: boolean; filteredOptions$: ReplaySubject; entityList: T[]; selectedEntity: T; constructor(); ngOnInit(): void; /** * Server-side typeahead for the drop-down. * * Replaces the SubQueryService round-trip (raw SELECT -> list of guids -> one * getByCriteria per guid) with a single criteria-based getByCriteria. The * concrete options object supplies the criteria via `searchCriteria`, which * carries both the keyword and whatever scoping the old SELECT's WHERE clause * had. */ searchEntity(searchText: string): import("rxjs").Observable; onSelect(entityGuid: string): void; valueSelector(option: T): any; ngOnDestroy(): void; }