@fangcha/backend-kit
Version:
Backend Kit.
31 lines (30 loc) • 1.03 kB
TypeScript
import * as Koa from 'koa';
import { WriteLogMiddlewareBuilder } from '@fangcha/logger/lib/koa';
import { BasicAuthProtocol, JWTProtocol, RouterApp } from '@fangcha/router';
import { FangchaSession } from '@fangcha/session';
export interface RouterSdkOptions {
baseURL: string;
backendPort: number;
routerApp?: RouterApp;
/**
* @default FangchaSession
*/
Session?: typeof FangchaSession;
/**
* @default execute ctx.session.auth()
*/
handleAuth?: (ctx: Koa.Context) => Promise<void>;
onRequestError?: (err: Error, ctx: Koa.Context) => void;
customWriteLogMiddlewareBuilder?: WriteLogMiddlewareBuilder;
onKoaAppLaunched?: () => void;
serverTimeout?: number;
/**
* @description If using jwtProtocol, Session default will be FangchaAdminSession
*/
jwtProtocol?: JWTProtocol;
/**
* @description If using basicAuthProtocol, Session default will be FangchaOpenSession
*/
basicAuthProtocol?: BasicAuthProtocol;
bodyParserOptions?: {};
}