import { AsyncCookieInterface, GetFromPatternOptions, RemoveFromPatternOptions, SetItemWithTTLParams } from "./common.cjs"; //#region src/@types/encrypt-storage-web-api.d.ts interface EncryptStorageCryptoWebApiInterface { /** * `setItem` - Is the function to be set `safeItem` in `selected storage` * @param {string} key - Is the key of `data` in `selected storage`. * @param {any} value - Value to be `encrypted`, the same being a `string` or `object`. * @return {void} `void` * @example * await encryptStorage.setItem('any_key', {key: 'value', another_key: 2}); * await encryptStorage.setItem('any_key', 'any value'); */ setItem(key: string, value: any, doNotEncrypt?: boolean): Promise; /** * `setItemWithTTL` - Is the function to set an `safeItem` with `ttl` in `selected storage` * @param {SetItemWithTTLParams} params - Is de `params` of function. * @return {Promise} `Promise` * @example * await encryptStorage.setItemWithTTL({ * key: 'any_key', * value: { key: 'value', another_key: 2 }, * ttl: 60, // in seconds or Date * }); */ setItemWithTTL?: (params: SetItemWithTTLParams) => Promise; /** * `setMultipeItems` - Is the function to be set `safeItem` in `selected storage` * @param {[string, any][]} param - . * @param {any} value - It's an `array` of `tuples` to be set at once... * @return {Promise} `Promise` * @example * await encryptStorage.setItem(['any_key', {key: 'value', another_key: 2}]); * await encryptStorage.setItem(['any_key', 'any value']); */ setMultipleItems(param: [string, any][], doNotEncrypt?: boolean): Promise; /** * `hash` - Is the function to be `hash` value width SHA256 encryptation * @param {any} value - Value to be `hashed`, the same being a `string`. * @return {Promise} `hashed Promise` * @example * await encryptStorage.hash('any_string'); */ hash(value: string): Promise; /** * `getItem` - Is the function to be get `safeItem` in `selected storage` * @param {string} key - Is the key of `data` in `selected storage`. * @return {Promise} - Returns a formatted value when the same is an object or string when not. * Returns `Promise` when value not exists. * @example * await encryptStorage.getItem('any_key'); -> `{key: 'value', another_key: 2}` * await encryptStorage.getItem('any_key'); -> `'any value'` */ getItem(key: string, doNotDecrypt?: boolean): Promise; /** * `getMulpleItems` - Is the function to be get `safeItems` in `selected storage` * @param {string[]} keys - Is the keys of `data` in `selected storage`. * @return {Promise | undefined>} - Returns a formatted value when the same is an object or string when not. * Returns `undefined` when value not exists. * @example * await encryptStorage.getMultipleItems(['any_key']); -> `{any_key: {key: 'value', another_key: 2}}` * await encryptStorage.getMultipleItems(['any_key']); -> `{any_key: 'any value'}` */ getMultipleItems(keys: string[], doNotDecrypt?: boolean): Promise | undefined>; /** * `removeItem` - Is the function to be remove `safeItem` in `selected storage` * @param {string} key - Is the key of `data` in `selected storage`. * @return {Promise} `Promise`. * @example * encryptStorage.removeItem('any_key'); */ removeItem(key: string): void; /** * `removeMultipleItems` - Is the function to be remove `safeItems` in `selected storage` * @param {string[]} keys - Is the keys of `data` in `selected storage`. * @return {void} `void`. * @example * encryptStorage.removeMultipleItems(['any_key_1'm 'any_key_2']); */ removeMultipleItems(keys: string[]): void; /** * `getItemFromPattern` - Is the function to be get `safeItem` in `selected storage` from `pattern` based * @param {string} pattern - Is the pattern existent in keys of `selected storage`. * @return {Promise | undefined>} * Returns `Promise | undefined>`. * @example * // itemKey = '12345678:user' * // another itemKey = '12345678:item' * await encryptStorage.getItemFromPattern('12345678'); // -> {'12345678:user': 'value', '12345678:item': 'otherValue'} */ getItemFromPattern(pattern: string, options?: GetFromPatternOptions): Promise | undefined>; /** * `removeItemFromPattern` - Is the function to be remove `safeItem` in `selected storage` from `pattern` based * @param {string} pattern - Is the pattern existent in keys of `selected storage`. * @return {void} * Returns `void`. * @example * // itemKey = '12345678:user' * // another itemKey = '12345678:item' * encryptStorage.removeItem('12345678'); // -> item removed from `selected storage` */ removeItemFromPattern(pattern: string, options?: RemoveFromPatternOptions): void; /** * `clear` - Clear all selected storage * @return {void} `void` * @example * encryptStorage.clear(); */ clear(): void; /** * `key` - Return a `key` in selected storage index or `null` * @param {number} index - Index of `key` in `selected storage` * @returns {string | null} `string | null` * @example * await encryptStorage.key(0); // -> 'any_key' */ key(index: number): string | null; /** * `encryptValue` - Is the function to be `encrypt` any value and return encrypted value * @param {string} value - A `value|object|array` to be encrypted. * @return {Promise} `Promise` * @example * await encryptStorage.encryptString('any_string'); // -> 'encrypted value' */ encryptValue(value: any): Promise; /** * `decryptString` - Is the function to be `decrypt` any value encrypted by `encryptValue` and return decrypted value * @param {string} value - A `value|object|array` to be decrypted. * @return {Promise} `Promise` * Returns `string`. * @example * await encryptStorage.decryptString('any_value'); // -> '{value: "decrypted value"}' */ decryptValue(value: string): Promise; cookie: AsyncCookieInterface; } //#endregion export { EncryptStorageCryptoWebApiInterface }; //# sourceMappingURL=encrypt-storage-web-api.d.cts.map