import type { DatabaseContainer } from '../../database/DatabaseContainer';
import type { Redis } from 'ioredis';
import type { SecurityProviderOptions } from '../SecurityProviderOptions';
import type { SessionStoreAdapter } from '../../types/interfaces';
export declare class RedisSessionStoreAdapter implements SessionStoreAdapter {
    protected readonly redisClient: Redis;
    protected readonly prefix: string;
    protected readonly expire: number;
    protected readonly keepTTL: boolean;
    constructor(databaseContainer: DatabaseContainer, providerOptions: SecurityProviderOptions);
    create(sessionId: string): Promise<void>;
    load(sessionId: string): Promise<Record<string, unknown>>;
    persist(sessionId: string, data: Record<string, unknown>): Promise<void>;
    remove(sessionId: string): Promise<void>;
    has(sessionId: string): Promise<boolean>;
    private getPrefixedSessionId;
}
