@devcycle/js-client-sdk
Version:
The Javascript Client SDK for DevCycle
23 lines (22 loc) • 976 B
TypeScript
import { BucketedUserConfig, DVCLogger } from '@devcycle/types';
import { DVCStorage } from './types';
import { DVCPopulatedUser } from './User';
export declare class CacheStore {
store: DVCStorage;
logger: DVCLogger;
constructor(storage: DVCStorage, logger: DVCLogger);
private getConfigKey;
private getConfigUserIdKey;
private getConfigFetchDateKey;
private loadConfigUserId;
private loadConfigFetchDate;
saveConfig(data: BucketedUserConfig, user: DVCPopulatedUser, dateFetched: number): Promise<void>;
private isBucketedUserConfig;
loadConfig(user: DVCPopulatedUser, configCacheTTL?: number): Promise<BucketedUserConfig | null>;
saveUser(user: DVCPopulatedUser): Promise<void>;
loadUser(): Promise<DVCPopulatedUser | undefined>;
saveAnonUserId(userId: string): Promise<void>;
loadAnonUserId(): Promise<string | undefined>;
removeAnonUserId(): Promise<void>;
}
export default CacheStore;