@averjs/session
Version:
session support for averjs
32 lines (25 loc) • 1.15 kB
TypeScript
import ConnectRedis from 'connect-redis';
import { PluginFunction } from '@averjs/core';
import Redis from 'ioredis';
import { RedisStore } from 'connect-redis';
import { RedisStoreOptions } from 'connect-redis';
import session from 'express-session';
import { SessionOptions } from 'express-session';
export declare function createRedisStore(ttl: number, config?: RedisStoreOptions): ConnectRedis.RedisStore | undefined;
export declare function mergeExpressSessionConfig(isProd: boolean, ttl: number, expressSessionConfig?: SessionOptions, store?: RedisStore): session.SessionOptions;
export declare function mergeRedisStoreConfig(ttl: number, client: InstanceType<typeof Redis>, redisStoreConfig?: RedisStoreOptions): ConnectRedis.RedisStoreOptions;
declare const plugin: PluginFunction;
export default plugin;
export declare interface SessionPluginOptions {
redisStoreConfig?: RedisStoreOptions;
expressSessionConfig?: SessionOptions;
ttl?: number;
}
export { }
declare namespace NodeJS {
export interface ProcessEnv {
REDIS_PORT: string;
REDIS_HOST: string;
REDIS_PASSWORD: string;
}
}