import { SearchInputType } from './category/search-input-type'; import { FormControl } from '@angular/forms'; import { Observable } from 'rxjs'; import { SearchAutocompleteOption } from './category/search-autocomplete-option'; /** * Represents a search category configuration input. * * Should handle all the logic related to autocomplete search configuration inputs. * If this class has its `type` set to `OPERATOR` it works mostly as a placeholder object, because the * operator and operand selection logic is handled by the {@link Category} class. * This behavior might be changed in future releases. */ export declare class ConfigurationInput { type: SearchInputType.AUTOCOMPLETE | SearchInputType.OPERATOR; label: string; displayBold: boolean; protected _autocompleteOptions: Map>; protected _formControl: FormControl; protected _filteredOptions$: Observable>>; /** * @param type the type of the configuration input * @param label the translation path for the label of the input * @param displayBold whether the configuration input should be displayed in bold after selection or not * @param _autocompleteOptions the autocomplete options that are available in this configuration input * @param filterOptions a method that receives the keys of the available options and should return * the appropriately filtered autocomplete options */ constructor(type: SearchInputType.AUTOCOMPLETE | SearchInputType.OPERATOR, label: string, displayBold: boolean, _autocompleteOptions: Map>, filterOptions: (optionKeys: Array, newValue: string) => Array>); get formControl(): FormControl; get isOptionSelected(): boolean; get selectedOptionTranslatePath(): string; get filteredOptions$(): Observable>>; /** * Value changes of the encapsulated `FormControl` object */ valueChanges$(): Observable; clear(): void; }