UNPKG

connect-redis

Version:

Redis session store for Connect

46 lines (40 loc) 1.45 kB
import { RedisClientType } from 'redis'; import { RedisClusterType } from 'redis'; import { SessionData } from 'express-session'; import { Store } from 'express-session'; declare type Callback = (_err?: unknown, _data?: any) => any; export declare class RedisStore extends Store { client: RedisClientType | RedisClusterType; prefix: string; scanCount: number; serializer: Serializer; ttl: number | ((sess: SessionData) => number); disableTTL: boolean; disableTouch: boolean; constructor(opts: RedisStoreOptions); get(sid: string, cb?: Callback): Promise<any>; set(sid: string, sess: SessionData, cb?: Callback): Promise<any>; touch(sid: string, sess: SessionData, cb?: Callback): Promise<any>; destroy(sid: string, cb?: Callback): Promise<any>; clear(cb?: Callback): Promise<any>; length(cb?: Callback): Promise<any>; ids(cb?: Callback): Promise<any>; all(cb?: Callback): Promise<any>; private getTTL; private getAllKeys; private scanIterator; } declare interface RedisStoreOptions { client: any; prefix?: string; scanCount?: number; serializer?: Serializer; ttl?: number | ((sess: SessionData) => number); disableTTL?: boolean; disableTouch?: boolean; } declare interface Serializer { parse(s: string): SessionData | Promise<SessionData>; stringify(s: SessionData): string; } export { }