mirror of
https://github.com/yml2213/javascript.git
synced 2026-10-26 03:19:43 +08:00
22 lines
1.1 KiB
TypeScript
22 lines
1.1 KiB
TypeScript
import * as IORedis from 'ioredis';
|
|
import { Message } from './CQHelper';
|
|
import { RequestIdentity } from './Command';
|
|
export declare type HistoryMessage = Record<string, Array<Message[]>>;
|
|
export interface SessionData extends RequestIdentity {
|
|
className: string;
|
|
sessionName: string;
|
|
historyMessage: HistoryMessage;
|
|
}
|
|
export declare class Session {
|
|
private static readonly debug;
|
|
private readonly redis;
|
|
constructor(port?: number, host?: string, options?: IORedis.RedisOptions);
|
|
constructor(host?: string, options?: IORedis.RedisOptions);
|
|
constructor(options?: IORedis.RedisOptions);
|
|
private static genSessionKey;
|
|
getSession(params: RequestIdentity): Promise<SessionData | null>;
|
|
setSession(params: RequestIdentity, data: Omit<SessionData, 'sessionName' | keyof RequestIdentity>, sessionName: SessionData['sessionName'], expireSeconds?: number): Promise<void>;
|
|
updateSession<T extends keyof SessionData>(params: RequestIdentity, hashKey: T, val: SessionData[T]): Promise<void>;
|
|
removeSession(params: RequestIdentity): Promise<void>;
|
|
}
|