Repository URL to install this package:
|
Version:
0.0.6 ▾
|
import { CompatibleLogger } from './typings';
/**
* @see https://github.com/apollographql/apollo-server/blob/master/packages/apollo-server-caching/src/InMemoryLRUCache.ts
* @tutorial https://github.com/apollographql/apollo-server/tree/master/packages/apollo-server-caching
*
* @see (related) https://github.com/apollographql/apollo-server/blob/master/packages/apollo-datasource-rest/src/__tests__/RESTDataSource.test.ts
* @see (related) https://github.com/apollographql/apollo-server/blob/master/packages/apollo-datasource-rest/src/HTTPCache.ts
*/
export interface KeyValueCacheType {
delete(key: string, options: {
ttl?: number;
}): Promise<void | undefined>;
get(key: string): Promise<string | undefined>;
set(key: string, value: string, options?: {
ttl?: number;
}): Promise<void>;
}
export declare class KeyValueCache implements KeyValueCacheType {
store: Map<string, string>;
logger: CompatibleLogger;
constructor(logger?: CompatibleLogger);
get(key: string): Promise<string | undefined>;
set(key: string, value: string, options?: {
ttl?: number;
}): Promise<void>;
delete(key: string, options?: {
ttl?: number;
}): Promise<void>;
clear(): Promise<void>;
}