import { type WebStorage } from './storage.js';
export declare const STORE_KEY: string;
export declare const MAX_NUMBER_OF_HISTORY_ELEMENTS: number;
export declare const MIN_THRESHOLD_FOR_DUPLICATE_VALUE: number;
export declare const MAX_VALUE_SIZE = 75;
export declare class HistoryStore {
    private static instance;
    static getInstance(store?: WebStorage): HistoryStore;
    private store;
    private constructor();
    /**
     * @deprecated Synchronous method is deprecated, use addElementAsync instead. This method will NOT work with react-native.
     */
    addElement(elem: HistoryElement): void;
    addElementAsync(elem: HistoryElement): Promise<void>;
    /**
     * @deprecated Synchronous method is deprecated, use getHistoryAsync instead. This method will NOT work with react-native.
     */
    getHistory(): HistoryElement[];
    getHistoryAsync(): Promise<HistoryElement[]>;
    private getHistoryWithInternalTime;
    private getHistoryWithInternalTimeAsync;
    setHistory(history: HistoryElement[]): void;
    clear(): void;
    getMostRecentElement(): HistoryElement | null;
    private cropQueryElement;
    private isValidEntry;
    private stripInternalTime;
    private stripEmptyQuery;
    private stripEmptyQueries;
}
export interface HistoryElement {
    name: string;
    value?: string;
    time: string;
    internalTime?: number;
}
export interface HistoryViewElement extends HistoryElement {
    title?: string;
}
export default HistoryStore;
