/** * Indicates the Json types, incldue `undefind` cause of * Sometimes we allow some typing property is optional. */ export type Json = undefined | null | boolean | number | string | Json[] | { [prop: string]: Json; }; export type FabricStorageGetStorageApi = (key: string) => Promise; export type FabricStorageInfoCallbackData = { /** * 当前 storage 中所有的 key */ keys: string[]; /** * 当前占用的空间大小, 单位 KB */ currentSize: number; /** * 限制的空间大小,单位 KB */ limitSize: number; }; export type FabricStorageGetStorageInfoApi = () => Promise; export type FabricStorageInfoSyncCallbackData = { /** * 当前 storage 中所有的 key */ keys: string[]; /** * 当前占用的空间大小, 单位 KB */ currentSize: number; /** * 限制的空间大小,单位 KB */ limitSize: number; }; export type FabricStorageGetStorageSyncInfoApi = () => FabricStorageInfoSyncCallbackData; export type FabricStorageGetStorageSyncApi = (key: string) => T; export type FabricStorageApi = { /** * 清理本地数据缓存 */ clearStorage: () => Promise; /** * 同步接口, 清理本地数据缓存 */ clearStorageSync: () => boolean; /** * 异步获取当前storage的相关信息 */ getStorageInfo: FabricStorageGetStorageInfoApi; /** * 同步接口, 获取当前storage的相关信息 */ getStorageInfoSync: FabricStorageGetStorageSyncInfoApi; /** * 从本地缓存中异步获取指定 key 的内容 */ getStorage: FabricStorageGetStorageApi; /** * 同步接口, 从本地缓存中同步获取指定 key 的内容 */ getStorageSync: FabricStorageGetStorageSyncApi; /** * 从本地缓存中移除指定 key。 */ removeStorage: (key: string) => Promise; /** * 同步接口, 从本地缓存中移除指定 key。 */ removeStorageSync: (key: string) => boolean; /** * 将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。 */ setStorage: (key: string, data: Json) => Promise; /** * 同步接口, 将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。 */ setStorageSync: (key: string, data: Json) => boolean; }; export declare const fabricStorage: FabricStorageApi; export {};