1 | import * as IORedis from 'ioredis';
|
2 | import { Session, DatabaseInterfaceSessions, ConnectionInformations } from '@accounts/types';
|
3 | import { AccountsRedisOptions } from './types';
|
4 | export declare class RedisSessions implements DatabaseInterfaceSessions {
|
5 | private options;
|
6 | private db;
|
7 | constructor(db: IORedis.Redis, options?: AccountsRedisOptions);
|
8 | createSession(userId: string, token: string, connection?: ConnectionInformations, extraData?: object): Promise<string>;
|
9 | updateSession(sessionId: string, connection: ConnectionInformations): Promise<void>;
|
10 | invalidateSession(sessionId: string): Promise<void>;
|
11 | invalidateAllSessions(userId: string): Promise<void>;
|
12 | findSessionByToken(token: string): Promise<Session | null>;
|
13 | findSessionById(sessionId: string): Promise<Session | null>;
|
14 | /**
|
15 | * We need to format the session to have an object the server can understand.
|
16 | */
|
17 | private formatSession;
|
18 | }
|