import { NgZone, AfterViewInit, OnDestroy, EventEmitter, ElementRef } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { IEntityDataService, IEmptyConstruct, IFieldFilter } from './../interfaces/index'; export declare const DROPDOWNJ_VALUE_ACCESSOR: any; export declare class DropdownJqueryControl implements ControlValueAccessor, AfterViewInit, OnDestroy { private elRef; private dataSource; private ngZone; /** Entity data source Type */ entityType: IEmptyConstruct; /** Additional filters */ additionalFilters: IFieldFilter[]; /** The placeholder property */ placeholder: string; /** The value property */ valueProperty: string; /** The display property */ displayProperty: string; /** The sort property */ sortProperty: string; /** The sort direction */ sortDirection: string; /** The disabled property */ disabled: boolean; /***/ isHighlight: boolean; /** The class of icon property */ iconClass: string; /** The change event emit property */ changeEvent: EventEmitter; /** The selected event emit property */ selected: EventEmitter; onTouched: Function; /** The value of dropdown component */ valueID: string; /** The control id number*/ controlID: number; /** The data item list of dropdown*/ availableItems: Array<{ value: string; name: string; }>; /** The data entity list of dropdown*/ availableEntities: Array; /** The control id number*/ selectedItem: any; /** The global control id number (will be increased 1 when it has the constructor)*/ static staticID: number; /** * Represents a Dropdown component. * @constructor * @param cd NgControl * @param elRef ElementRef * @param dataSource IEntityDataService * @param ngZone NgZone */ constructor(elRef: ElementRef, dataSource: IEntityDataService, ngZone: NgZone); /** * Implements method(registerOnChange) of interface ControlValueAccessor * @param fn */ registerOnChange(fn: (_: string) => void): void; /** * Implements method(registerOnTouched) of interface ControlValueAccessor * @param fn */ registerOnTouched(fn: () => void): void; /** * Implements method(writeValue) of interface ControlValueAccessor * @param valueID The write value */ writeValue(valueID: string): void; private subscription; ngOnDestroy(): void; /** * Implements method(ngAfterViewInit) of interface AfterViewInit */ ngAfterViewInit(): void; /** * Set value for dropdown component * @param newValue String */ setValue(newValue: string): void; /** * Get current value of component */ getValue(): string; /** * Reload dropdown, input parameter to update data inside dropdown * @param updateFilters IFieldFilter[] */ reLoadFilters(updateFilters: IFieldFilter[]): void; }