import { AfterViewInit, DestroyRef, EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core'; import { ControlValueAccessor, NgControl } from '@angular/forms'; import { NgSelectComponent } from '@ng-select/ng-select'; import { Subject } from 'rxjs'; import EcabsElementBaseComponent from '../base/element-base'; import { SelectOption } from '../base/models/select.models'; import * as i0 from "@angular/core"; export declare class EcabsSelectV2Component extends EcabsElementBaseComponent implements AfterViewInit, ControlValueAccessor, OnChanges, OnInit { readonly ngControl: NgControl; private readonly destroyRef; ngSelect: NgSelectComponent; appearance: 'underline' | 'outline'; appendTo: string; items: SelectOption[]; bindLabel: string; bindValue: string; editableSearchTerm: boolean; searchable: boolean; clearable: boolean; multiple: boolean; notFoundText: string; hideSelected: boolean; clearOnBackspace: boolean; clearSearchOnAdd: boolean; trackByFn: ((item: SelectOption) => T | undefined) | undefined; minLength: number; searchPlaceholder: string; typeahead: Subject; closeOnSelect: boolean; clearAllText: string; selectAllLabel: string; otherLabel: string; othersLabel: string; readonly selectionChange: EventEmitter | SelectOption[]>; val: T; isOpen: boolean; groupByKey: string; selectedMulti: SelectOption[]; itemsList: SelectOption[]; isTypeAhead: boolean; get value(): T; set value(val: T); constructor(ngControl: NgControl, destroyRef: DestroyRef); ngOnInit(): void; ngAfterViewInit(): void; ngOnChanges(changes: SimpleChanges): void; writeValue(value: T): void; registerOnChange(fn: (value: T) => void): void; registerOnTouched(fn: () => void): void; private onChange; private onTouched; onBlur(): void; selectAllFn(items: SelectOption[]): SelectOption[]; private refreshMultipleItems; changed($event: SelectOption | SelectOption[]): void; protected initTrackBy(): void; static ɵfac: i0.ɵɵFactoryDeclaration, [{ optional: true; self: true; }, null]>; static ɵcmp: i0.ɵɵComponentDeclaration, "ecabs-select-v2", never, { "appearance": { "alias": "appearance"; "required": false; }; "appendTo": { "alias": "appendTo"; "required": false; }; "items": { "alias": "items"; "required": false; }; "bindLabel": { "alias": "bindLabel"; "required": false; }; "bindValue": { "alias": "bindValue"; "required": false; }; "editableSearchTerm": { "alias": "editableSearchTerm"; "required": false; }; "searchable": { "alias": "searchable"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "notFoundText": { "alias": "notFoundText"; "required": false; }; "hideSelected": { "alias": "hideSelected"; "required": false; }; "clearOnBackspace": { "alias": "clearOnBackspace"; "required": false; }; "clearSearchOnAdd": { "alias": "clearSearchOnAdd"; "required": false; }; "trackByFn": { "alias": "trackByFn"; "required": false; }; "minLength": { "alias": "minLength"; "required": false; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; "typeahead": { "alias": "typeahead"; "required": false; }; "closeOnSelect": { "alias": "closeOnSelect"; "required": false; }; "clearAllText": { "alias": "clearAllText"; "required": false; }; "selectAllLabel": { "alias": "selectAllLabel"; "required": false; }; "otherLabel": { "alias": "otherLabel"; "required": false; }; "othersLabel": { "alias": "othersLabel"; "required": false; }; }, { "selectionChange": "selectionChange"; }, never, never, false, never>; }