browser-storage-utilities
Version:
A front-end library that provides utility methods to facilitate CRUD operations to data stored in the browser, and more.
127 lines (126 loc) • 2.89 kB
TypeScript
import { IStorageSettings } from './interfaces/storage-settings';
import { StorageTypes } from './enums/storage-types';
import { StorageBase } from './base/storage-base';
import { Observable } from 'rxjs';
import { IStorageNotifier } from './interfaces/storage-typings';
import { StorageItem } from './models/storage-item';
import { IStorageGeneralOperations, IStorageCollectionOperations } from './interfaces/storage-operations';
/**
* Provides base functionality for StorageUtilities.
*/
declare class StorageUtilitiesBase<T> extends StorageBase<T> implements IStorageGeneralOperations<T>, IStorageCollectionOperations<T> {
defaultSettings: IStorageSettings;
constructor(settings: IStorageSettings);
/**
*
* @param settings
*/
setCustomSettings(settings: IStorageSettings): void;
/**
*
*/
resetSettings(): void;
/**
*
* @param key
* @param item
* @param expiry
* @param type
*/
addItem(key: string, item: T, expiry?: number, type?: StorageTypes): void;
/**
*
* @param key
* @param type
*/
getItem(key: string, type?: StorageTypes): T;
/**
*
* @param key
* @param type
*/
removeItem(key: string, type?: StorageTypes): void;
/**
*
* @param keys
* @param type
*/
removeItems(keys: string[], type?: StorageTypes): void;
/**
*
* @param key
* @param propName
* @param newValue
* @param type
*/
updateItemProp(key: string, propName: string, newValue: any, type?: StorageTypes): T;
/**
*
* @param key
* @param propName
* @param type
*/
removeItemProp(key: string, propName: string, type?: StorageTypes): T;
/**
*
* @param type
*/
clearAll(type?: StorageTypes): void;
/**
*
*/
getStateObservable(): Observable<IStorageNotifier<T>>;
/**
*
* @param type
*/
getItems(type?: StorageTypes): StorageItem<T>[];
/**
*
* @param type
*/
getValues(type?: StorageTypes): T[];
/**
*
* @param type
*/
getKeys(type?: StorageTypes): string[];
/**
*
* @param key
* @param id
*/
findOne(key: string, id: string): T;
/**
*
* @param key
*/
findAll(key: string): T[];
/**
*
* @param key
* @param item
*/
addOne(key: string, item: T): void;
/**
*
* @param key
* @param items
*/
addAll(key: string, items: T[]): void;
/**
*
* @param key
* @param id
*/
removeOne(key: string, id: string): void;
/**
*
* @param key
*/
reset(key: string): void;
private _parsedJSON;
}
export declare const defaultSettings: IStorageSettings;
declare const _default: StorageUtilitiesBase<unknown>;
export default _default;