UNPKG

howsmydriving-utils

Version:

Utilities used by howsmydriving package any howsmydriving-[region] plug-in modules.

26 lines (25 loc) 1.39 kB
import { ICitation } from './icitation'; import { ICollision, ICollisionHistory } from './icollision'; import { IStateStore } from './istatestore'; export interface IRegion { readonly name: string; state_store: IStateStore; GetCitationsByPlate: (plate: string, state: string) => Promise<Array<ICitation>>; ProcessCitationsForRequest: (citations: ICitation[], query_count: number) => Array<string>; ProcessCollisions: (collisions: Array<ICollision>) => Promise<Array<string>>; GetRecentCollisions: () => Promise<Array<ICollision>>; GetCollisionHistory: (start_year: number, end_year: number) => Promise<ICollisionHistory>; } export declare abstract class RegionFactory { abstract createRegion(state_store: IStateStore): Promise<Region>; } export declare abstract class Region implements IRegion { constructor(name: string, state_store: IStateStore); readonly name: string; state_store: IStateStore; abstract GetCitationsByPlate(plate: string, state: string): Promise<Array<ICitation>>; abstract ProcessCitationsForRequest(citations: ICitation[], query_count: number): Array<string>; abstract ProcessCollisions(collisions: Array<ICollision>): Promise<Array<string>>; abstract GetRecentCollisions(): Promise<Array<ICollision>>; abstract GetCollisionHistory(start_year: number, end_year: number): Promise<ICollisionHistory>; }