supertokens-node
Version:
NodeJS driver for SuperTokens core
37 lines (36 loc) • 2.35 kB
TypeScript
import OriginalSessionRecipe from "../sessionRecipe";
import * as express from "express";
import { TypeFaunaDBInput, VerifySessionOptions } from "./types";
import STError from "../error";
import * as faunadb from "faunadb";
import Session from "./sessionClass";
import RecipeModule from "../../../recipeModule";
import { NormalisedAppinfo, RecipeListFunction, HTTPMethod } from "../../../types";
import OriginalSessionClass from "../sessionClass";
import NormalisedURLPath from "../../../normalisedURLPath";
export default class SessionRecipe extends RecipeModule {
private static instance;
parentRecipe: OriginalSessionRecipe;
config: {
accessFaunadbTokenFromFrontend: boolean;
userCollectionName: string;
};
superCreateNewSession: (res: express.Response, userId: string, jwtPayload?: any, sessionData?: any) => Promise<OriginalSessionClass>;
superGetSession: (req: express.Request, res: express.Response, options?: VerifySessionOptions | boolean) => Promise<OriginalSessionClass | undefined>;
superRefreshSession: (req: express.Request, res: express.Response) => Promise<OriginalSessionClass>;
q: typeof faunadb.query;
faunaDBClient: faunadb.Client;
constructor(recipeId: string, appInfo: NormalisedAppinfo, isInServerlessEnv: boolean, config: TypeFaunaDBInput);
static getInstanceOrThrowError(): SessionRecipe;
static init(config: TypeFaunaDBInput): RecipeListFunction;
static reset(): void;
getAPIsHandled: () => import("../../../types").APIHandled[];
handleAPIRequest: (id: string, req: express.Request, res: express.Response, next: express.NextFunction, path: NormalisedURLPath, method: HTTPMethod) => Promise<void>;
handleError: (err: STError, request: express.Request, response: express.Response, next: express.NextFunction) => void;
getAllCORSHeaders: () => string[];
isErrorFromThisOrChildRecipeBasedOnInstance: (err: any) => err is STError;
getFDAT: (session: Session) => Promise<any>;
createNewSession: (res: express.Response, userId: string, jwtPayload?: any, sessionData?: any) => Promise<Session>;
getSession: (req: express.Request, res: express.Response, options?: boolean | VerifySessionOptions | undefined) => Promise<Session | undefined>;
refreshSession: (req: express.Request, res: express.Response) => Promise<Session>;
}