import { AfterViewInit, OnInit, ElementRef, EventEmitter, TemplateRef } from '@angular/core';
import { MatAutocomplete, FloatLabelType } from '@angular/material';
import { AutocompleteService } from './autocomplete.service';
import { HttpParams } from '@angular/common/http';
import { ControlValueAccessor, FormControl } from '@angular/forms';
export declare class AutocompleteComponent implements AfterViewInit, OnInit, ControlValueAccessor {
/**
* How to use this component:
*
*
*/
source: AutocompleteService | any[];
name: string;
placeholder: string;
floatLabel: FloatLabelType;
formControl?: FormControl;
doPrefetch: boolean;
displayItem?: string;
hasSearchButton: boolean;
hasProgressBar: boolean;
minChars: number;
clearAfterSearch: boolean;
showAddNew: boolean;
addNewText: string;
isFocused: boolean;
validationErrors: string[];
serviceParams?: HttpParams;
displayItemFn?: (item: any) => string;
displayTemplate?: TemplateRef;
transformResult: any;
modelChange: EventEmitter;
optionSelected: EventEmitter<{}>;
createNew: EventEmitter<{}>;
autocompleteInput: ElementRef;
autocomplete: MatAutocomplete;
selectedOption: any;
query: string;
autocompleteList: any[] | null;
request: boolean;
noSuggestions: boolean;
requestsInQueue: number;
private storedItems?;
private service?;
private returnType;
constructor();
ngOnInit(): void;
ngAfterViewInit(): void;
prefetch(): void;
search(): void;
fetch(force?: boolean): void;
filterStoredItems(force?: boolean): void;
autocompleteSelected($event: any): void;
autocompleteDisplayFn(): (item: any) => any;
onKey($event: KeyboardEvent): void;
onKeyCallback(): void;
onBlur($event: MouseEvent): void;
onFocus($event: any): void;
viewItem(item: any): any;
clearValue(): void;
readonly doSearchViaService: boolean;
onCreateNew(): void;
private isQueryEmpty(query);
private isAutocompleteService(object);
private saveReturnType(items);
writeValue(val: any): void;
onChange: any;
onTouched: any;
registerOnChange(fn: any): void;
registerOnTouched(fn: any): void;
setDisabledState?(isDisabled: boolean): void;
}