import { AfterViewInit, EventEmitter, OnInit, OnDestroy } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { NgSelectComponent } from '@ng-select/ng-select'; import { BehaviorSubject } from 'rxjs'; import { Subscription } from 'rxjs'; import { SelectField } from '../fields'; import { BaseDynamicFieldComponent } from './../field-components/base-dynamic-field.component'; /** * Component to generate a form select field that can be settable to single-selection, multi-selection, and typeahead(autocomplete) * * :editing: Flag to control component state * :form: FormGroup containing the field * :field: Intance of field configurations */ export declare class SelectFieldComponent extends BaseDynamicFieldComponent implements ControlValueAccessor, OnInit, AfterViewInit, OnDestroy { select: NgSelectComponent; viewModel: BehaviorSubject; subs: Subscription; optionValues: any[]; optionLabel: string; typeahead: EventEmitter; parsedAddNewOption: boolean | ((term: string) => any | Promise); searchHandlersValue: any; _onChange: any; _onTouched: any; ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; writeValue(obj: any): void; forceSearch(): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; setDisabledState?(isDisabled: boolean): void; readonly formattedValue: string; private updateOptionLabel; private getTypeaheadWithDistinctAndDebounce; /** * Prepare addTag to be passed to ng-select. If addTag is a callback that returns an observable, transform it in a Promise * * Note: ng-select only suport calbacks that return Promise. This method add support for callbacks that returns observables. */ private prepareAddTag; private config; }