import { IStore } from "./../../constants";
/**
 * @author - manojgetwealthy
 * Simple state management with session storage
 */
declare abstract class BaseSessionStore<T> {
    protected _storeType: Storage | undefined;
    protected _sessionData: T & IStore;
    protected _name: string;
    protected _createdAt: Date;
    protected _updatedAt: Date;
    isReady: boolean;
    constructor(_name?: string, _storeType?: Storage);
    init(deps?: any): void;
    protected getData(dataKey: keyof T): (T & IStore)[keyof T];
    protected setData(dataKey: keyof T, value: any): void;
    protected _cleanup(): void;
    destroy(): void;
    remove(): void;
}
export default BaseSessionStore;
