import { RedisClientType } from 'redis'; interface RedisConfig { url: string; } declare class RedisDatabase { private static instance; private client; private isConnecting; private isConnected; private initializationAttempted; private redisUrl; private constructor(); static getInstance(): RedisDatabase; initialize(config: RedisConfig): Promise; getClient(): RedisClientType | null; private connect; disconnect(): Promise; isClientConnected(): boolean; safeExecute(operation: (client: RedisClientType) => Promise): Promise; getStatus(): { isConnected: boolean; isConnecting: boolean; initializationAttempted: boolean; }; } declare const redisBase: RedisDatabase; export { type RedisConfig, redisBase };