gcba-normalizador-typescript
Version:
Normalizador de direcciones para el AMBA
68 lines (67 loc) • 2.42 kB
TypeScript
import type { Calle } from './types';
import type { CalleInexistenteException, CalleInexistenteAEsaAlturaException, CalleSinAlturasException, CruceInexistenteException, ErrorResponse, TipoExcepcion } from './types/exceptions';
/**
* Clase base para todas las excepciones del normalizador
*/
declare abstract class BaseExceptionClass implements Error {
readonly name: string;
readonly id: TipoExcepcion;
readonly message: string;
constructor(id: TipoExcepcion, message: string);
abstract getError(): ErrorResponse;
toString(): string;
}
/**
* Excepción lanzada cuando una calle no existe
*/
export declare class ErrorCalleInexistente extends BaseExceptionClass implements CalleInexistenteException {
private readonly nombreCalle;
constructor(nombreCalle: string);
getNombreCalle(): string;
getError(): ErrorResponse;
}
/**
* Excepción lanzada cuando hay un error al cargar el callejero
*/
export declare class ErrorEnCargaDelCallejero extends BaseExceptionClass {
constructor();
getError(): ErrorResponse;
}
/**
* Excepción lanzada cuando una calle no existe a una altura específica
*/
export declare class ErrorCalleInexistenteAEsaAltura extends BaseExceptionClass implements CalleInexistenteAEsaAlturaException {
private readonly calle;
private readonly matchings;
private readonly altura;
constructor(calle: string, matchings: Calle[], altura: number);
getCalle(): string;
getMatchings(): Calle[];
getAltura(): number;
getError(): ErrorResponse;
}
/**
* Excepción lanzada cuando una calle no tiene alturas
*/
export declare class ErrorCalleSinAlturas extends BaseExceptionClass implements CalleSinAlturasException {
private readonly nombreCalle;
constructor(nombreCalle: string);
getNombreCalle(): string;
getError(): ErrorResponse;
}
/**
* Excepción lanzada cuando un cruce de calles no existe
*/
export declare class ErrorCruceInexistente extends BaseExceptionClass implements CruceInexistenteException {
private readonly calle1;
private readonly matchingsCalle1;
private readonly calle2;
private readonly matchingsCalle2;
constructor(calle1: string, matchingsCalle1: Calle[], calle2: string, matchingsCalle2: Calle[]);
getCalle1(): string;
getCalle2(): string;
getMatchingsCalle1(): Calle[];
getMatchingsCalle2(): Calle[];
getError(): ErrorResponse;
}
export {};