import { BrowserStorage } from "./browserStorage";
export interface LocationData {
    locationId?: string;
    address: {
        coordinates?: {
            latitude: number;
            longitude: number;
        };
        description?: string;
        country?: string;
        state?: string;
        city?: string;
        postalCode?: string;
        county?: string | undefined;
        street?: string | undefined;
        houseNumber?: string | undefined;
    };
}
/**
 * Util class to handle storage of commute suggestion history storage
 */
declare class CommuteHistory {
    protected storageLocation: string;
    protected storage: BrowserStorage;
    protected history: LocationData[];
    constructor();
    /**
     * Pushes the new suggestion to the top of the array. If it's a
     * duplicate (based on the locationId), it will remove the duplicate(s)
     *
     * @param suggestion Address suggestion object including locationId and address object
     */
    push(suggestion: LocationData): void;
    /**
     * Indicates whether there are suggestions saved in history
     *
     * @returns boolean
     */
    hasSuggestionHistory(): boolean;
    /**
     * Returns the array of address suggestions from local storage
     *
     * @returns Array of address suggestions (only locationId and address object)
     */
    getSuggestionHistory(): LocationData[];
    protected removeDuplicateEntries(suggestion: LocationData): LocationData[];
}
export declare const commuteHistory: CommuteHistory;
export {};
//# sourceMappingURL=commuteHistory.d.ts.map