prefer-storage
Version:
1. key: 键名不唯一 2. value: 只能存储string类型 3. time: 没有过期时间 4. handle data: 不能对数据统一处理
48 lines (47 loc) • 1.27 kB
TypeScript
export type IType = 'boolean' | 'object' | 'array' | 'number' | 'any' | 'string' | 'map' | 'set' | 'date';
export interface IProjectOption<T> {
name: string;
expire?: number;
idbVersion?: number;
idbStoreOption?: IDBObjectStoreParameters;
idCreateIndexs?: string[];
beforeGet?: (val: {
v: any;
_isDue: boolean;
_key: string;
_pathname: string;
}) => Promise<any>;
beforeSet?: (val: {
value: any;
type: string;
time: string;
pathname: string;
}) => Promise<any>;
afterSet?: (res: any) => Promise<any>;
idBeforeGet?: (val: {
v: any;
_isDue: boolean;
_pathname: string;
}) => Promise<any>;
idBeforeSet?: (val: {
value: any;
time: string;
pathname: string;
}) => Promise<any>;
idAfterSet?: (res: any) => Promise<any>;
keys: T[];
[key: string]: any;
}
export interface IStrategyFn<T> {
read: (raw: string) => T;
writeIn: (value: T) => string;
}
export interface IStoreParameter {
objectStoreName: string;
idCreateIndexs?: string[];
storeOption?: IDBObjectStoreParameters;
}
export declare const enum TransactionMode {
ReadOnly = "readonly",
ReadWrite = "readwrite"
}