import { EventEmitter, OnInit, OnChanges, ElementRef } from '@angular/core';
import { GlobalRef } from './windowRef.service';
import { AutoCompleteSearchService } from './auto-complete.service';
export interface Settings {
    geoPredictionServerUrl?: string;
    geoLatLangServiceUrl?: string;
    geoLocDetailServerUrl?: string;
    geoCountryRestriction?: any;
    geoTypes?: any;
    geoLocation?: any;
    geoRadius?: number;
    serverResponseListHierarchy?: any;
    serverResponseatLangHierarchy?: any;
    serverResponseDetailHierarchy?: any;
    resOnSearchButtonClickOnly?: boolean;
    useGoogleGeoApi?: boolean;
    inputPlaceholderText?: string;
    inputString?: string;
    showSearchButton?: boolean;
    showRecentSearch?: boolean;
    showCurrentLocation?: boolean;
    recentStorageName?: string;
    noOfRecentSearchSave?: number;
    currentLocIconUrl?: string;
    searchIconUrl?: string;
    locationIconUrl?: string;
}
export declare class AutoCompleteComponent implements OnInit, OnChanges {
    private platformId;
    private _elmRef;
    private _global;
    private _autoCompleteSearchService;
    userSettings: Settings;
    componentCallback: EventEmitter<any>;
    locationInput: string;
    gettingCurrentLocationFlag: boolean;
    dropdownOpen: boolean;
    recentDropdownOpen: boolean;
    queryItems: any;
    isSettingsError: boolean;
    settingsErrorMsg: string;
    settings: Settings;
    private moduleinit;
    private selectedDataIndex;
    private recentSearchData;
    private userSelectedOption;
    private defaultSettings;
    constructor(platformId: Object, _elmRef: ElementRef, _global: GlobalRef, _autoCompleteSearchService: AutoCompleteSearchService);
    ngOnInit(): any;
    ngOnChanges(): any;
    searchinputClickCallback(event: any): any;
    searchinputCallback(event: any): any;
    activeListNode(index: number): any;
    selectedListNode(index: number): any;
    closeAutocomplete(event: any): any;
    userQuerySubmit(selectedOption?: any): any;
    currentLocationSelected(): any;
    private moduleInit();
    private processSearchQuery();
    private setUserSettings();
    private getListQuery(value);
    private extractServerList(arrayList, data);
    private updateListItem(listData);
    private showRecentSearch();
    private navigateInList(keyCode);
    private getCurrentLocationInfo(latlng);
    private getPlaceLocationInfo(selectedData);
    private setRecentLocation(data);
    private getRecentLocations();
}
