Class RestRequest<Authorization, Params, Body, Responses, DefaultErrorFormat>
Type Parameters
- Params extends object = DefaultRestParams
- Body = unknown
- Responses extends RestResponsesBase = DefaultRestResponses
- DefaultErrorFormat extends object = RestDefaultErrorBody
Index
Constructors
Properties
Methods
Constructors
constructor
- new RestRequest<
Authorization = unknown,
Params extends object = DefaultRestParams,
Body = unknown,
Responses extends RestResponsesBase = DefaultRestResponses,
DefaultErrorFormat extends object = RestDefaultErrorBody,
>(
webRequest: WebRequest,
path: string,
route: string,
params: Params,
body: Body,
): RestRequest<Authorization, Params, Body, Responses, DefaultErrorFormat>Type Parameters
- Params extends object = DefaultRestParams
- Body = unknown
- Responses extends RestResponsesBase = DefaultRestResponses
- DefaultErrorFormat extends object = RestDefaultErrorBody
Parameters
- webRequest: WebRequest
- path: string
- route: string
- params: Params
- body: Body
Returns RestRequest<Authorization, Params, Body, Responses, DefaultErrorFormat>
Properties
authorization
Readonly
body
Readonly
params
Readonly
path
path: string
Readonly
route
route: string
Readonly
web Request
Methods
create Error Response
- createErrorResponse<Status extends HTTPErrorCode, ResponseBody extends object>(
status: Status,
jsonbody: ResponseBody extends { status?: number }
? Simplify<
Partial<
Pick<
ResponseBody<ResponseBody> & DisallowExtraPropsRecursive<
ResponseBody<ResponseBody>,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status" & (
| keyof ResponseBody<ResponseBody>
| keyof DisallowExtraPropsRecursive<
ResponseBody<ResponseBody>,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>
),
>,
> & Omit<
ResponseBody<ResponseBody> & DisallowExtraPropsRecursive<
ResponseBody<ResponseBody>,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status",
>,
>
: {
"[error]": "Cannot use this function, the error schema doesn't contain a 'status' property";
},
options?: { headers?: Record<string, string> },
): WebResponseType Parameters
- Status extends HTTPErrorCode
- ResponseBody extends object
Parameters
- status: Status
Status code to return
- jsonbody: ResponseBody extends { status?: number }
? Simplify<
Partial<
Pick<
ResponseBody<ResponseBody> & DisallowExtraPropsRecursive<
ResponseBody<ResponseBody>,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status" & (
| keyof ResponseBody<ResponseBody>
| keyof DisallowExtraPropsRecursive<
ResponseBody<ResponseBody>,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>
),
>,
> & Omit<
ResponseBody<ResponseBody> & DisallowExtraPropsRecursive<
ResponseBody<ResponseBody>,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status",
>,
>
: {
"[error]": "Cannot use this function, the error schema doesn't contain a 'status' property";
}The JSON body to return
Optional
options: { headers?: Record<string, string> }Optional statuscode and headers
Returns WebResponse
createJSONResponse
- createJSONResponse<Status extends HTTPSuccessCode, ResponseBody extends any>(
status: Status,
jsonbody: ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
options?: { headers?: Record<string, string> },
): WebResponseCreate a webresponse for a successfull response, returning a JSON body
Type Parameters
- Status extends HTTPSuccessCode
- ResponseBody extends any
Parameters
- status: Status
Status code to return
- jsonbody: ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>The JSON body to return
Optional
options: { headers?: Record<string, string> }Optional statuscode and headers
Returns WebResponse
create Raw Response
- createRawResponse<Status extends HTTPErrorCode | HTTPSuccessCode>(
status: Status,
body: string | Blob | ReadableStream<Uint8Array<ArrayBufferLike>>,
options?: { headers?: Record<string, string> },
): WebResponseCreate a webresponse for a successfull response, returning a raw file
Type Parameters
- Status extends HTTPErrorCode | HTTPSuccessCode
Inferred type of the status code, used for typing purposes
Parameters
- status: Status
Status code to return
- body: string | Blob | ReadableStream<Uint8Array<ArrayBufferLike>>
The body of the response to return
Optional
options: { headers?: Record<string, string> }Optional statuscode and headers
Returns WebResponse
- Status extends HTTPErrorCode | HTTPSuccessCode
Create a webresponse for an error response, returning a JSON body. Only allowed when the return body can contain a 'status' property.