@types/koa-bodyparser
Version:
TypeScript definitions for koa-bodyparser
82 lines (64 loc) • 2.08 kB
TypeScript
/* =================== USAGE ===================
import bodyParser = require("koa-bodyparser");
var Koa = require('koa');
var app = new Koa();
app.use(bodyParser());
=============================================== */
import Koa = require("koa");
declare module "koa" {
interface Request {
body?: unknown;
rawBody: string;
}
}
declare function bodyParser(opts?: bodyParser.Options): Koa.Middleware;
declare namespace bodyParser {
interface Options {
/**
* parser will only parse when request type hits enableTypes, default is ['json', 'form'].
*/
enableTypes?: string[] | undefined;
/**
* requested encoding. Default is utf-8 by co-body
*/
encoding?: string | undefined;
/**
* limit of the urlencoded body. If the body ends up being larger than this limit
* a 413 error code is returned. Default is 56kb
*/
formLimit?: string | undefined;
/**
* limit of the json body. Default is 1mb
*/
jsonLimit?: string | undefined;
/**
* limit of the text body. Default is 1mb.
*/
textLimit?: string | undefined;
/**
* limit of the xml body. Default is 1mb.
*/
xmlLimit?: string | undefined;
/**
* when set to true, JSON parser will only accept arrays and objects. Default is true
*/
strict?: boolean | undefined;
/**
* custom json request detect function. Default is null
*/
detectJSON?: ((ctx: Koa.Context) => boolean) | undefined;
/**
* support extend types
*/
extendTypes?: {
json?: string[] | string | undefined;
form?: string[] | string | undefined;
text?: string[] | string | undefined;
} | undefined;
/**
* support custom error handle
*/
onerror?: ((err: Error, ctx: Koa.Context) => void) | undefined;
}
}
export = bodyParser;