@fangcha/backend-kit
Version:
Backend Kit.
36 lines (30 loc) • 974 B
text/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?: {}
}