/**
* Geocoding input directive
* Provides auto-complete and real-time geocoding for input fields
*/
import { ElementRef, EventEmitter, OnInit, OnDestroy } from '@angular/core';
import { OpenCageService } from '../services/opencage.service';
import { GeocodingResult, ForwardGeocodingOptions } from '../models/opencage-types';
import { OpenCageError } from '../models/opencage-error';
import * as i0 from "@angular/core";
/**
* Geocoding input directive
*
* Usage:
*
*/
export declare class GeocodeInputDirective implements OnInit, OnDestroy {
private elementRef;
private geocodeService;
debounceTime: number;
minLength: number;
maxLength: number;
limit: number;
options: ForwardGeocodingOptions;
autoSelect: boolean;
clearOnEmpty: boolean;
geocodeResults: EventEmitter;
geocodeError: EventEmitter;
geocodeLoading: EventEmitter;
geocodeSelected: EventEmitter;
autocomplete: string;
cssClass: boolean;
loading: boolean;
hasError: boolean;
private destroy$;
private currentQuery;
constructor(elementRef: ElementRef, geocodeService: OpenCageService);
ngOnInit(): void;
ngOnDestroy(): void;
onInput(event: Event): void;
onKeyDown(event: KeyboardEvent): void;
onBlur(): void;
/**
* Setup the geocoding stream
*/
private setupGeocodingStream;
/**
* Handle geocoding results
*/
private handleResults;
/**
* Handle geocoding errors
*/
private handleError;
/**
* Set loading state
*/
private setLoading;
/**
* Select a geocoding result
*/
selectResult(result: GeocodingResult): void;
/**
* Clear results
*/
clearResults(): void;
/**
* Get current input value
*/
getValue(): string;
/**
* Set input value
*/
setValue(value: string): void;
/**
* Focus the input
*/
focus(): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵdir: i0.ɵɵDirectiveDeclaration;
}