UNPKG

@shopify/shopify-app-session-storage-redis

Version:
34 lines 1.56 kB
import { RedisClientOptions, createClient } from 'redis'; import { Session } from '@shopify/shopify-api'; import { SessionStorage, SessionStorageMigratorOptions } from '@shopify/shopify-app-session-storage'; type RedisClient = ReturnType<typeof createClient>; declare enum ShopifyStorageOption { sessionKeyPrefix = "sessionKeyPrefix", migratorOptions = "migratorOptions", onError = "onError" } export interface RedisSessionStorageOptions extends RedisClientOptions { [ShopifyStorageOption.sessionKeyPrefix]: string; [ShopifyStorageOption.migratorOptions]?: SessionStorageMigratorOptions; [ShopifyStorageOption.onError]?: (...args: any[]) => void; } export declare class RedisSessionStorage implements SessionStorage { static withCredentials(host: string, db: number, username: string, password: string, opts: Partial<RedisSessionStorageOptions>): RedisSessionStorage; readonly ready: Promise<void>; private internalInit; private options; private client; private migrator; constructor(urlOrClient: URL | string | RedisClient, opts?: Partial<RedisSessionStorageOptions>); storeSession(session: Session): Promise<boolean>; loadSession(id: string): Promise<Session | undefined>; deleteSession(id: string): Promise<boolean>; deleteSessions(ids: string[]): Promise<boolean>; findSessionsByShop(shop: string): Promise<Session[]>; disconnect(): Promise<void>; private addKeyToShopList; private removeKeyFromShopList; private init; } export {}; //# sourceMappingURL=redis.d.ts.map