@xpresser/params-loader
Version:
Xpresser's url params to state Loader.
26 lines (25 loc) • 636 B
TypeScript
/**
* Load Param Middleware Generator.
* @param param
*/
import { Http, Controller } from "xpresser/types/http";
/**
* Param type definition.
*/
declare type Param = {
notFound?: (http: Http, value: any) => any;
load?: (value: any, http: Http) => any;
as?: string;
addToBoot?: boolean;
loadError?: (http: Http, error: Error) => any;
};
/**
* Params type definition.
*/
declare type Params = Record<string, Param>;
/**
* Generate Middleware from defined params.
* @param params
*/
export declare function ParamsMiddleware<T extends Params>(params: T): Record<keyof T, Controller.MethodWithHttp>;
export {};