import type { KeyValueCache, KeyValueCacheSetOptions } from 'apollo-server-caching'; interface BaseRedisClient { set: (key: string, value: string, option?: string, optionValue?: number) => Promise; flushdb: () => Promise; del: (key: string) => Promise; quit: () => Promise; } export interface RedisClient extends BaseRedisClient { mget: (...key: Array) => Promise>; } export interface RedisNoMgetClient extends BaseRedisClient { get: (key: string) => Promise; } export interface BaseRedisCacheOptions { client?: RedisClient; noMgetClient?: RedisNoMgetClient; } export declare class BaseRedisCache implements KeyValueCache { readonly client: BaseRedisClient; readonly defaultSetOptions: KeyValueCacheSetOptions; private loader; constructor(options: BaseRedisCacheOptions); set(key: string, value: string, options?: KeyValueCacheSetOptions): Promise; get(key: string): Promise; delete(key: string): Promise; flush(): Promise; close(): Promise; } export {}; //# sourceMappingURL=BaseRedisCache.d.ts.map