/** * Возвращает объект, содержащий методы для работы * с localStorage:
* — если localStorage поддерживается, то этот объект — обертка,
* — если нет, то этот объект — полифил
* * Методы те же, что и у нативного localStorage, за исключением * свойства `length` — вместо него используйте метод `getLength()` * * @see {@link bloko/common/storage/Wrapper} (Обертка) * @see {@link bloko/common/storage/Polyfill} (Полифил) * * @type {Object} * @exports bloko/common/storage/LocalStorageWrapper */ interface LocalStorageWrapper { /** * Возвращает имя i-го ключа в (local|session)Storage * @param {Number} index Порядковый номер ключа * @returns {String|Null} Имя ключа или null в случае отсутствия такового или ошибки * * @member * @method */ key: (index: number) => string | null; /** * Возвращает значение по ключу * @param {String} key Имя ключа * @returns {String|Null} Значение * * @member * @method */ getItem: (key: string) => string | null; /** * Добавляет ключ в storage или обновляет его значение, если такой уже существует * @param {String} key Имя ключа * @param {String} value Значение * * @member * @method */ setItem: (key: string, value: string) => void; /** * Удаляет ключ из (local|session)Storage * @param {String} key Имя ключа * * @member * @method */ removeItem: (key: string) => void; /** * Удаляет все ключи из (local|session)Storage * * @member * @method */ clear: () => void; /** * Возвращает число ключей в (local|session)Storage * @returns {Number} * * @member * @method */ getLength: () => number; } declare const localStorageWrapper: LocalStorageWrapper; export default localStorageWrapper;