import { Redis } from 'ioredis'; import type { Finalizable, Initializable, KeyValueStorage } from '@solid/community-server'; export interface RedisKeyValueStorageOptions { client: string; username?: string; password?: string; database?: number; namespace?: string; tls?: boolean; scanCount?: number; } export declare class RedisKeyValueStorage implements KeyValueStorage, Initializable, Finalizable { protected readonly logger: import("global-logger-factory").Logger; private readonly client; private readonly prefix; private readonly scanCount; private shuttingDown; constructor(options: RedisKeyValueStorageOptions); initialize(): Promise; finalize(): Promise; has(key: string): Promise; get(key: string): Promise; set(key: string, value: T): Promise; delete(key: string): Promise; entries(): AsyncIterableIterator<[string, T]>; protected createClient(options: RedisKeyValueStorageOptions): Redis; protected toStorageKey(key: string): string; protected fromStorageKey(storageKey: string): string; protected parse(raw: string): T | undefined; protected getTtl(value: T): number; }