UNPKG

autocompleter-typescript-gcba

Version:

Autocompleter para direcciones y lugares de la Ciudad de Buenos Aires

76 lines (75 loc) 3 kB
import { SuggesterStatus } from '../types'; interface SuggesterOptions { ignorarTextoSobrante: any; searchOptions: any; afterAbort: (suggesterName: string) => void; afterRetry: (suggesterName: string) => void; afterServerRequest: (suggesterName: string) => void; afterServerResponse: (suggesterName: string) => void; debug: boolean; serverTimeout: number; maxRetries: number; maxSuggestions: number; inputPause: number; minTextLength: number; } interface Suggestion { [key: string]: any; } type SuggestionCallback = (suggestions: Suggestion[]) => void; export declare class MethodNotImplemented extends Error { constructor(); } export declare class GeoCodingTypeError extends Error { constructor(); } export declare abstract class Suggester { name: string; options: SuggesterOptions; status: SuggesterStatus; inputTimer: NodeJS.Timeout | undefined; suggestionsPromises: Map<Suggestion, Promise<any>[]>; constructor(name: string, options?: Partial<SuggesterOptions>); /** * Retorna un array de promises del suggestion recibido como parámetro * @param suggestion uno de los objetos retornado por getSuggestions */ static getSuggestionPromises(suggestion: Suggestion): Promise<any>[]; /** * Agrega una promesa a las sugerencias * @param suggestion La sugerencia a la que se le agrega la promesa * @param promise La promesa a agregar */ addSuggestionPromise(suggestion: Suggestion, promise: Promise<any>): void; /** * Dado un string, realiza una búsqueda de sugerencias y llama al callback con las * opciones encontradas. * En algunos casos los objetos retornados tienen data incompleta que serán cargadas con posterioridad * Si se desea esperar por esta carga puede hacer un Promise.all del array retornado por getSuggestionPromises * @param text Texto de input * @param callback Función que es llamada con la lista de sugerencias * @param maxSuggestions (opcional) Máximo número de sugerencias a devolver */ abstract getSuggestions(text: string, callback: SuggestionCallback, maxSuggestions?: number): void; /** * Permite abortar la última consulta realizada */ abstract abort(): void; /** * Actualiza la configuración del componente a partir de un objeto con overrides para las * opciones disponibles * @param options Objeto conteniendo overrides para las opciones disponibles */ setOptions(options: Partial<SuggesterOptions>): void; /** * Devuelve las opciones actualmente vigentes para el componente. * @returns Objeto conteniendo las opciones actualmente vigentes para el componente. */ getOptions(): SuggesterOptions; /** * Indica si el componente está listo para realizar sugerencias * @returns Verdadero si el componente se encuentra listo para responder sugerencias */ abstract ready(): boolean; } export {};