import { OnModuleInit, OnModuleDestroy } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import Redis from 'ioredis';
export declare class RedisService implements OnModuleInit, OnModuleDestroy {
    private readonly configService;
    private readonly logger;
    client: Redis;
    constructor(configService: ConfigService);
    onModuleInit(): Promise<void>;
    onModuleDestroy(): Promise<void>;
    get(key: string): Promise<string | null>;
    set(key: string, value: string, ttlSeconds?: number): Promise<void>;
    del(key: string): Promise<void>;
    exists(key: string): Promise<boolean>;
    setPresence(userId: string, status: string, ttl?: number): Promise<void>;
    getPresence(userId: string): Promise<string | null>;
    setTyping(channelId: string, userId: string): Promise<void>;
    getTyping(channelId: string): Promise<string[]>;
}
export declare class RedisModule {
}
