import { Citation, ICitation, ICollision, IRegion, Region, RegionFactory, IStateStore } from 'howsmydriving-utils';
import { SeattleCollision } from './seattleCollision';
import { ISeattleVehicle } from './seattleVehicle';
export declare const __REGION_NAME__: string;
export interface ISeattleRegion extends IRegion {
    shouldTweet(collision: ICollision): boolean;
}
export declare class SeattleRegion extends Region implements ISeattleRegion {
    constructor(state_store: IStateStore);
    readonly initialize_promise: Promise<Region>;
    collision_types: {
        fatality: {
            last_tweet_date: number;
            tweet_frequency_days: number;
        };
        'serious injury': {
            last_tweet_date: number;
            tweet_frequency_days: number;
        };
        injury: {
            last_tweet_date: number;
            tweet_frequency_days: number;
        };
    };
    InitializeCollisionInfo(): Promise<Region>;
    GetCitationsByPlate(plate: string, state: string): Promise<Array<ICitation>>;
    ProcessCitationsForRequest(citations: ICitation[], query_count: number): Array<string>;
    GetVehicleIDs(plate: string, state: string): Promise<ISeattleVehicle[]>;
    GetCitationsByVehicleNum(vehicleID: number, plate: string, state: string): Promise<Citation[]>;
    GetCasesByVehicleNum(vehicleID: number): Promise<any>;
    GetRecentCollisions(): Promise<Array<ICollision>>;
    ProcessCollisions(collisions: Array<ICollision>): Promise<Array<string>>;
    private getLastCollisionsWithCondition;
    processCollisionsForTweets(collisions: Array<ICollision>): Promise<Array<string>>;
    static getCollisionType(collision: ICollision): string;
    getTweetFromCollision(collision: SeattleCollision, collision_type: string, last_tweeted: number): string;
    shouldTweet(collision: ICollision): boolean;
}
declare let Factory: RegionFactory;
export { Factory as default };
export { Factory };
