UNPKG

simple-next-csrf

Version:

This project aims to add Cross-Site Request Forgery (CSRF) protection to a Next.js application that does have server-side props support.

21 lines (20 loc) 815 B
import { IOptions } from "cookies"; import { GetServerSideProps, NextApiHandler } from "next"; export type TcsrfEnjector = (getServerSideProps: GetServerSideProps) => GetServerSideProps; export type TcsrfValidator = (handler: NextApiHandler) => NextApiHandler; export type ReturnTypeOfSimpleNextCSRF = { csrfValidator: TcsrfValidator; csrfEnjector: TcsrfEnjector; }; export type TMethods = "GET" | "HEAD" | "OPTIONS" | "POST" | "PUT" | "DELETE" | "PATCH" | "CONNECT"; export type ArgsOfSimpleNextCSRF = { cookieOptions?: IOptions; secret: string; secureMethods?: TMethods[]; }; export type ArgsOfConfigureMiddleware = { cookieOptions?: IOptions; secret: string; secureMethods?: TMethods[]; }; export type TsimpleNextCSRF = (args: ArgsOfSimpleNextCSRF) => ReturnTypeOfSimpleNextCSRF;