import { IStoreManagerOptions } from '../interfaces/store/store-manager-options.interface';
import { IStoreOptions } from '../interfaces/store/store-options.interface';
import { IStoreValue } from '../interfaces/store/store-value.interface';
import { IStore } from '../interfaces/store/store.interface';
export declare class StoreManager<T extends IStoreValue> {
    private registeredStores;
    private stores;
    private options;
    initialize(options?: IStoreManagerOptions): void;
    flush(): void;
    close(): void;
    getStore(name: string): IStore<T>;
    has(name: string): boolean;
    getRegisteredStore(type: string): {
        new (options: IStoreOptions): IStore<T>;
    };
    isRegistered(type: string): boolean;
    registerStore(type: string, store: {
        new (options: IStoreOptions): IStore<T>;
    }): void;
    create(name: string): void;
}
export declare const StoresManager: StoreManager<any>;
