supertokens-node
Version:
NodeJS driver for SuperTokens core
38 lines (37 loc) • 1.88 kB
TypeScript
// @ts-nocheck
import type { CollectingResponse, PreParsedRequest } from "./framework/custom";
import { SessionContainer, VerifySessionOptions } from "./recipe/session";
import { JWTPayload } from "jose";
type PartialNextRequest = {
method: string;
url: string;
headers: Headers;
formData: () => any;
json: () => any;
cookies: {
getAll: () => {
name: string;
value: string;
}[];
};
};
export default class NextJS {
static superTokensNextWrapper<T>(middleware: (next: (middlewareError?: any) => void) => Promise<T>, request: any, response: any): Promise<T>;
static getAppDirRequestHandler(): (req: Request) => Promise<Response>;
static getSSRSession(cookies: Array<{
name: string;
value: string;
}>): Promise<{
accessTokenPayload: JWTPayload | undefined;
hasToken: boolean;
error: Error | undefined;
}>;
static withSession<NextRequest extends PartialNextRequest, NextResponse extends Response>(req: NextRequest, handler: (error: Error | undefined, session: SessionContainer | undefined) => Promise<NextResponse>, options?: VerifySessionOptions, userContext?: Record<string, any>): Promise<NextResponse>;
static withPreParsedRequestResponse<NextRequest extends PartialNextRequest, NextResponse extends Response>(req: NextRequest, handler: (baseRequest: PreParsedRequest, baseResponse: CollectingResponse) => Promise<NextResponse>): Promise<NextResponse>;
}
export declare let superTokensNextWrapper: typeof NextJS.superTokensNextWrapper;
export declare let getAppDirRequestHandler: typeof NextJS.getAppDirRequestHandler;
export declare let getSSRSession: typeof NextJS.getSSRSession;
export declare let withSession: typeof NextJS.withSession;
export declare let withPreParsedRequestResponse: typeof NextJS.withPreParsedRequestResponse;
export {};